Computer >> 컴퓨터 >  >> 소프트웨어 >> 가상 기기

DOS 응용 프로그램을 다시 실행하시겠습니까?

Warcraft, Wolfenstien, Doom 2, X-Wing 등과 같은 좋은 올레 게임을 하고 싶습니까? 16비트 소프트웨어의 256색 아름다움을 경험하고 싶습니까? 좋은데?

Windows XP SP2가 출시되었을 때 이전 운영 체제를 되돌아보기로 했습니다. 내 Windows 컴퓨터 중 하나를 업데이트한 후 갑자기 제가 가장 좋아하는 게임인 Caesar III를 더 이상 플레이할 수 없다는 것을 깨달았습니다. 그런 다음 Transport Tycoon Deluxe를 다시 한 번 설치하려고 시도한 후(Caesar를 잃은 것에 대한 보상으로) 이 재미있는 작은 게임이 Windows XP에서 실행되지 않는다는 사실에 불쾌하고 놀랐습니다. Windows 98 시절 이후로 TTD를 플레이한 적이 없는데도 더 좋은 게임 두 개가 갑자기 손실되면서 깊은 성찰을 하게 되었습니다.

소개

내가 할 수 있는 일은 아무것도 없었습니다. Windows XP에서 다른 모드로 응용 프로그램을 실행해도 작동하지 않았습니다. 이러한 종류의 문제를 해결하기 위해 특별히 고안된 다양한 패치도 사용하지 않았습니다. 그러던 중 VMware Player라는 훌륭한 제품을 우연히 발견했습니다. VMware Player는 다양한 PC 기반 운영 체제를 기존 OS 내에서 응용 프로그램으로 실행할 수 있게 해주는 가상화 소프트웨어입니다. 좋은데. VMware Player - 좋은 친구라는 기사에서 VMware Player에 대한 자세한 내용을 읽을 수 있습니다.

VMware Player를 다운로드하여 설치하고 이전 게임을 할 수 있는 기능을 복원하기를 희망하면서 이전 운영 체제를 설치하기 시작했습니다. 행운이 두 번이나 찾아왔습니다. Windows XP Pro SP2 호스트 중 하나에 Windows XP Home SP1을 가상 머신으로 성공적으로 설치할 수 있었습니다. 그리고 게스트 OS 내부에서 간신히 Caesar III를 설치하고 다시 플레이할 수 있었습니다. 예! 그러던 중 Transport Tycoon Deluxe의 오픈 소스 클론인 Open TTD를 발견하게 되었고, 이를 통해 Windows XP SP2에서 기본적으로 이 멋진 게임을 플레이할 수 있었습니다.

일반적으로 Windows XP를 설치하는 방법과 특히 VMware Player 내부의 게스트 OS로 설치하는 방법에 대해 읽고 싶을 수 있습니다. Caesar III의 성공에 대해 자세히 읽을 수 있습니다. 내 게임 리뷰를 읽을 수도 있습니다. Open TTD 설치 및 플레이 방법과 별도의 게임 리뷰를 읽을 수 있습니다. 그리고 대담해졌습니다. Caesar III는 1998년경에 출시된 게임입니다. Transport Tycoon Deluxe의 역사는 1994년으로 거슬러 올라갑니다. DOS는 어떻습니까?

DOS 설치 방법

DOS가 무엇인지 모르거나 관심이 없다면 지금 당장 읽기를 중단해도 됩니다. MS-DOS는 80년대와 90년대 초반에 가장 인기 있는 데스크톱 운영 체제 중 하나였습니다. 이제는 꽤 오랫동안 지원되지 않으며 사본을 얻는 것은 아마도 매우 어려울 것입니다. 그러나 그것은 당신을 걱정해서는 안됩니다. 대신 "100% MS-DOS 호환 OS"인 FreeDOS가 있습니다(사이트에서 인용).

FreeDOS를 내 DOS 플랫폼으로 사용하기로 결정했습니다. 그리고 내 컴퓨터에서 FreeDOS를 이중 부팅할 여유가 없었기 때문에 가장 저렴하고 빠르며 가장 합리적인 솔루션인 VMware Player에서 사용해 보기로 했습니다. 이렇게 하면 영구적인 변경이나 시스템 손상 없이 도중에 오류를 쉽게 디버깅할 수 있습니다. 다음 방법을 배우려면 내 Linux From Scratch 기사를 따라야 합니다.
  1. VMware Player 및 QEMU를 설치하고 사용합니다.
  2. .vmx 가상 머신 구성 파일을 생성합니다.
  3. 가상 CD(마운트된 .iso)에서 부팅하도록 .vmx 파일을 구성합니다.
  4. 가상 하드 디스크를 만듭니다.
그럼에도 불구하고 DOS 환경을 만들기 위해 수행한 몇 가지 기본 사항을 자세히 설명하겠습니다.
  1. 부팅 가능한 FreeDOS .iso를 다운로드했습니다.
  2. 다음 .vmx 구성 파일을 생성했습니다(아래). 당신은 그것을 복사하여 자신의 것으로 사용할 수 있습니다. 메모장과 같은 텍스트 편집기에서 .txt 파일이 아닌 모든 유형 파일로 저장해야 합니다.

config.version ="8"
virtualHW.version ="3"

게스트 OS ="기타"

displayName ="프리도스"

numvcpus ="1"

멤사이즈 ="64"
MemAllowAutoScaleDown ="거짓"
MemTrimRate ="-1"

uuid.action ="만들기"

tools.remindInstall ="참"

힌트.hideAll ="참"

tools.syncTime ="참"

usb.present ="참"
usb.generic.autoconnect ="거짓"

serial0.present ="거짓"

serial1.present ="거짓"

parallel0.present ="거짓"

# 사운드 설정
sound.present ="참"
sound.virtualdev ="sb16"

로깅 ="참"
log.fileName ="FreeDOS.log"
log.append ="참"
log.keepOld ="1"

isolation.tools.hgfs.disable ="거짓"
isolation.tools.dnd.disable ="참"
isolation.tools.copy.enable ="참"
isolation.tools.paste.enabled ="참"

ethernet0.present ="참"
ethernet0.virtualDev ="vlance"
ethernet0.connectionType ="nat"
ethernet0.addressType ="생성됨"
ethernet0.generatedAddress ="00:0c:29:80:9c:48"
ethernet0.generatedAddressOffset ="0"

floppy0.present ="참"
floppy0.startConnected ="참"
floppy0.autodetect ="참"

ide1:0.present ="참"
ide1:0.deviceType ="cdrom-raw"
ide1:0.startConnected ="참"
ide1:0.fileName ="자동 감지"
ide1:0.autodetect ="참"

ide1:1.present ="참"
ide1:1.fileName ="fdbootcd.iso"
ide1:1.deviceType ="cdrom-이미지"
ide1:1.mode ="영구"
ide1:1.startConnected ="거짓"

ide0:0.present ="참"
ide0:0.fileName ="freedos.vmdk"
ide0:0.mode ="영구"
ide0:0.startConnected ="참"
ide0:0.writeThrough ="참"

ide0:0.redo =""
uuid.location ="56 4d 2e 31 1d 13 5d 4f-0d a6 5c b7 54 80 9c 48"
uuid.bios ="56 4d 2e 31 1d 13 5d 4f-0d a6 5c b7 54 80 9c 48"

가상 머신 구성 파일 생성에 도움이 되는 훌륭한 사이트는 EasyVMX!입니다. 이 사이트는 다운로드하여 사용할 수 있는 .vmx 구성 파일 생성을 위한 대화형 인터페이스를 제공합니다. 그런 다음 QEMU를 사용하여 가상 하드 디스크를 만들었습니다. QEMU 디렉터리(명령줄)에 다음 명령을 입력하여 작은 500Mb 디스크를 만들었습니다.

qemu-img.exe 만들기 -f vmdk freedos.vmdk 500M

그런 다음 모든 파일을 하나의 폴더에 그룹화하여 VMware Player를 시작하고 CD(.iso)로 부팅한 다음 FreeDOS를 설치했습니다. 설치는 다소 간단합니다. 자세히 설명하지는 않겠지만 자세한 단계별 가이드를 요청하는 이메일(> 2)을 많이 받는 경우 나중에 추가하는 것을 고려할 수 있습니다. 하지만 다시 말하지만 매우 간단합니다. 화면의 지시를 따르기만 하면 됩니다.

FreeDOS에서 발견한 경이로움 중 하나는 CD-ROM 지원이었습니다. 나는 플로피 디스크로 작업하는 데 관심이 없었기 때문에 다소 열정적이었습니다. 그래서 설치가 완료되기를 기다렸습니다. 재부팅했습니다. 그리고 나서 여러 선택지가 제시되었습니다. 물론 저는 모든 드라이버와 대부분의 메모리를 포함하는 옵션 1을 선택하기로 결정했습니다.

그것은 작동하지 않았다. 대부분의 드라이버가 시작하지 못했습니다. 나는 높은 메모리가 없었습니다. 마우스가 없었습니다. CD-ROM이 없었습니다. 흠. 2~3일 동안 일이 제대로 풀리지 않는 이유를 알아내려고 노력했습니다. 결국 몇 가지 놀라운 점을 깨닫게 되었습니다.

  1. 특정 파일의 경로와 해당 이름이 올바르지 않습니다(fdauto.bat 파일에서).
  2. CD-ROM 드라이버가 잘못되었습니다(fdconfig.sys 파일에서).

시스템 파일 수정

글쎄, 이 기사를 시행 착오의 이야기로 바꾸지 않고 내가 한 모든 단계를 설명하면서 모든 문제를 해결할 수 있었습니다. 원래 fdconfig.sys 및 fdauto.bat 파일을 변경하여 작동 중인 드라이버를 로드하고 올바른 경로와 파일 이름을 실행했습니다. FreeDOS와 함께 제공된 CD-ROM 드라이버를 작동하는 aoatapi.sys 드라이버로 교체했습니다. 그리고 마지막으로 dosidle.exe를 설치하여 CPU가 쉬지 않고 풀 스로틀로 작동하지 않도록 했습니다(DOS가 작동하는 방식입니다).

나는 aoatapi.sys 및 dosidle.exe와 관련된 법적 문제를 알지 못하기 때문에 이를 호스팅하거나 인터넷에서 사용할 수 있는 소스에 직접 링크하지 않을 것입니다. 또한 이러한 소스의 품질을 보장할 수 없습니다.

따라서 제가 드릴 수 있는 최선의 조언은 검색 엔진을 사용하여 aoatapi.sys 및 dosidle.exe를 검색하는 것입니다. 몇 분 안에 신뢰할 수 있는 사본을 찾을 수 있었습니다. 여기에서 aoatapi.sys 및 여기에서 dosidle.exe에 대한 Google 검색을 시도할 수 있습니다. 자신의 선택이나 검색 엔진 및 단어에 오신 것을 환영합니다.

가장 먼저 한 일은 두 파일을 플로피 디스크에 복사한 다음 가상 머신의 하드 디스크에 복사하는 것이었습니다. dosidle.exe를 실행하고 CPU가 다시 정상적으로 호흡하도록 했습니다. 아래에서 수정된 fdconfig.sys 및 fdauto.bat를 찾을 수 있습니다.

fdconfig.sys

스위치=/F/N
국가=001,858,C:\FREEDOS\BIN\국가.SYS
LANG=EN 설정
마지막 드라이브=Z
버퍼=20
파일=40
DOS=높음, 음량
DOSDATA=UMB
설정 DIRCMD=/OGN /4
메뉴컬러=7,0
MENUDEFAULT=1,5
MENU 1 - EMM386을 사용하여 최대 RAM 여유 공간으로 FreeDOS 로드
MENU 2 - HIMEM XMS 메모리 드라이버를 포함한 FreeDOS 로드
MENU 3 - 드라이버 없이 FreeDOS 로드

12?장치=C:\FREEDOS\BIN\HIMEM.EXE
1?DEVICE=C:\FREEDOS\BIN\EMM386.EXE NOEMS X=TEST VDS

REM 1?DEVICEHIGH=C:\FREEDOS\BIN\ATAPICDD.SYS /D:FDCD0001
1?DEVICEHIGH=C:\AOATAPI.SYS /D:FDCD0001

fdauto.bat

@에코 끄기
프롬프트 $p$g
경로 C:\FREEDOS\BIN;C:\BATCHES
HELPPATH=C:\FREEDOS\HELP 설정
LANG=US로 설정
NLSPATH=C:\FREEDOS\NLS 설정

IF not "%CONFIG%"=="1" goto noperuse
rem echo PERUSE 스크롤링 드라이버를 로드하시겠습니까?
렘 lh c:\bin\peruse.exe
rem echo PERUSE 로드됨
:사용하지 않음

IF "%CONFIG%"=="3" nomouse로 이동
lh c:\freedos\bin\ctmouse.exe /3 /V
:nomouse

존재하지 않는 경우 CDRCACH$ goto normalcd
echo 캐시된 CD-ROM 드라이브를 지금 활성화하는 중입니다.
렘 lh c:\freedos\bin\shsucdx.exe /D:CDRCACH$,N
lh c:\freedos\bin\shsucdx.com /D:CDRCACH$,N
고토 nomorecd
위의 goto rem은 이중 SHSUCDX 로딩을 방지합니다.
:nomorecd
존재하지 않는 경우 rem CDROM001 goto nomorecd
존재하지 않는 경우 fdcd0001 goto nomorecd
echo 캐시되지 않은 CD-ROM 드라이브를 지금 활성화하는 중입니다.
렘 lh c:\freedos\bin\shsucdx.exe /D:CDROM001,N
lh c:\freedos\bin\shsucdx.com /D:FDCD0001,N

:nomorecd

에코.

IF "%CONFIG%"=="3" noshare로 이동
렘 LH c:\freedos\bin\share.exe /L:20 /F:2048
lh c:\freedos\bin\share.com /L:20 /F:2048
:noshare

IF "%CONFIG%"=="3" echo 환경 내용은 다음과 같습니다.
렘 에코. 빈 줄을 표시합니다...
IF "%CONFIG%"=="3" 에코.
IF "%CONFIG%"=="3" echo goto nopause

에코.

echo FreeDOS에 오신 것을 환영합니다. Enter 키를 눌러 계속 진행하고 환경을 확인합니다.
렘 일시 중지
렘 :nopause
세트

echo FreeDOS가 이제 서비스 중입니다 :-)
에코.

CLS

C:\DOSIDLE.EXE

lh c:\freedos\bin\mouse.exe

텍스트를 복사하여 텍스트 편집기에 붙여넣고, 파일을 저장하고(.bak 확장자, 모든 유형 유형 권장), 플로피에 놓고 가상 머신의 하드 디스크에 복사합니다. 원본 fdconfig.sys 및 fdauto.bat를 백업하고 새로 만든 .bak의 이름을 각각 .bat 및 .sys로 바꿉니다. 다음 사항에 유의하십시오.

  1. I installed FreeDOS under C:\FREEDOS.
  2. I placed the aoatapi.sys and dosidle.exe in the root directory, i.e. C:\.
  3. Your country and language settings may differ.
  4. I left the existing non-functional command lines, I only commented them so they would not run. For instance, I left the PERUSE and mouse lines, although when active they would not execute properly - the PERUSE driver could not be found and the mouse would not work - however commented they have no impact. This is also true for CD-ROM, share etc.
  5. I left the original assignment of letters to CD-ROM drivers beginning at N (N:, O:etc.), however you can change this to anything you like, provided there are no conflicts.
Make necessary changes to file paths (if needed) in the fdconfig.sys and fdauto.bat to reflect your installation choices. Reboot. Luckily, your OS will work smoothly now.

Your OS environment should look like the image below, you should have a mouse available (test it by typing edit fdauto.bat, for instance; you should be able to see a mouse cursor), and you should have at least one CD-ROM driver available, if you used my .vmx conf file. Likewise, dosidle.exe should work, too. 기본적으로 그게 다입니다. You have a working DOS now.

결론

In one of the next articles, I will write about my success (or lack thereof) at running the good ole games that built and shaped our character(s) in the early 90s. I'm aware that old games uses to query the serial and parallel ports (COM1, LPT1). To the best of my knowledge, some modern Windows OSes do not quite like that. I have observed this phenomenon with VMware Player, too. It's possible that the denied access to hardware, which is the main reason most of these games no longer run, could still impact the ability to play them. Nevertheless, I'll give it a try.

I have also heard that much like Open TTD, various projects exist, which have enabled the contemporary PC user to experience games like Doom and Duke Nukem 3D in modern operating systems. I will check these hopefully true rumors and keep you updated. On the other hand, if you have any news or suggestions for me, please email me. I will post them with due credits.

You will find the updates in my Reviving old games section, which also covers Caesar III and Open TTD. You can also read my reviews and view screenshots of these fine games in the separate Computer games category.

건배.