Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> เครื่องเสมือน

Reboot Classic DOS Games: รัน Warcraft, Doom 2 และอื่นๆ บน PC สมัยใหม่

อยากเล่น Good Ole Games: Warcraft, Wolfenstein, Doom 2, X-Wing? อยากสัมผัส 256-color Beauty ของ 16-bit Software? ดูดีแล้ว

ผมมองย้อนกลับ Older OSs เมื่อ Windows XP SP2 Released หลัง Update Windows Machine หนึ่ง ผม突發發現: ไม่เล่น Caesar III (Favorite Game) ได้แล้ว ลอง Install Transport Tycoon Deluxe 补偿 發現也不跑บน XP 即使ผมไม่เล่น TTD ตั้งแต่ Windows 98 สุดท้ายสูญเสีย 2 เกมส์ดี ทำให้ Introspect Profoundly

บทนำ

อะไรก็ทำไม่ได้ Run Apps Compatibility Modes XP ไม่ Work Patches 專門แก้ปัญหาเหล่านี้ ไม่ Work 然後發現 VMware Player Virtualization Software รัน PC-based OSs 作為 Application 在 Existing OS 很棒 閱讀更多: VMware Player - a great friend

Download Install VMware Player 開始 Install Older OSs 希望 Restore Old Games Ability Luck Struck Twice: 成功 Install Windows XP Home SP1 as VM on Windows XP Pro SP2 Host 在 Guest OS 安裝 Caesar III 玩又一次 Yes! 然後發現 Open TTD (Open-source Clone Transport Tycoon Deluxe) 玩 Natively 在 XP SP2

閱讀: Install Windows XP General/Guest in VMware Player, Caesar III Success Detail, Game Review, Open TTD Install/Play + Review 然後 Bold 起來 Caesar III ~1998 TTD ~1994 更早呢? DOS?

如何安裝 DOS

不知道 DOS 是什麼/不在乎 停止閱讀 MS-DOS = Popular Desktop OS 80s/Early 90s 不再 Supported 取得 Copy 難 但別擔心: FreeDOS = "100% MS-DOS Compatible OS" (Quote from Site)

決定試 FreeDOS 作為 DOS Platform 不負擔 Dual-boot FreeDOS 選 VMware Player (Cheapest/Fastest/Sensible) Debug Errors 容易 無 Permanent Changes/Damages Follow Linux From Scratch Article 學習:

  1. Install/Use VMware Player 和 QEMU
  2. Create .vmx VM Config File
  3. Config .vmx Boot from Virtual CD (Mounted .iso)
  4. Create Virtual Hard Disk

但會 Elaborate Basics 做 DOS Environment

  1. Download Bootable FreeDOS .iso
  2. Create .vmx Config File (Below) Copy 當 Own Save as All Types File 不是 .txt (Notepad 等)
config.version = "8"
virtualHW.version = "3"

guestOS = "other"

displayName = "FreeDOS"

numvcpus = "1"

memsize = "64"
MemAllowAutoScaleDown = "FALSE"
MemTrimRate = "-1"

uuid.action = "create"

tools.remindInstall = "TRUE"

hints.hideAll = "TRUE"

tools.syncTime = "TRUE"

usb.present = "TRUE"
usb.generic.autoconnect = "FALSE"

serial0.present = "FALSE"
serial1.present = "FALSE"
parallel0.present = "FALSE"

# Sound settings
sound.present = "TRUE"
sound.virtualdev = "sb16"

logging = "TRUE"
log.fileName = "FreeDOS.log"
log.append = "TRUE"
log.keepOld = "1"

isolation.tools.hgfs.disable = "FALSE"
isolation.tools.dnd.disable = "TRUE"
isolation.tools.copy.enable = "TRUE"
isolation.tools.paste.enabled = "TRUE"

ethernet0.present = "TRUE"
ethernet0.virtualDev = "vlance"
ethernet0.connectionType = "nat"
ethernet0.addressType = "generated"
ethernet0.generatedAddress = "00:0c:29:80:9c:48"
ethernet0.generatedAddressOffset = "0"

floppy0.present = "TRUE"
floppy0.startConnected = "TRUE"
floppy0.autodetect = "TRUE"

ide1:0.present = "TRUE"
ide1:0.deviceType = "cdrom-raw"
ide1:0.startConnected = "TRUE"
ide1:0.fileName = "auto detect"
ide1:0.autodetect = "TRUE"

ide1:1.present = "TRUE"
ide1:1.fileName = "fdbootcd.iso"
ide1:1.deviceType = "cdrom-image"
ide1:1.mode = "persistent"
ide1:1.startConnected = "FALSE"

ide0:0.present = "TRUE"
ide0:0.fileName = "freedos.vmdk"
ide0:0.mode = "persistent"
ide0:0.startConnected = "TRUE"
ide0:0.writeThrough = "TRUE"

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"

Great Site 建立 .vmx: EasyVMX! Interactive Interface 建立 .vmx Download Use 然後用 QEMU Create Virtual Hard Disk Small 500MB Disk Command 在 QEMU Directory:

qemu-img.exe create -f vmdk freedos.vmdk 500M

所有 Files Grouped One Folder Start VMware Player Boot off CD (.iso) Install FreeDOS Installation Straightforward 不 Detail 如果 Emails >2 問 Detailed Guide 可能加後 但很簡單 Follow Screen Instructions

Marvel 發現 FreeDOS: CD-ROM Support 熱情 因為不想 Floppy Disks 等 Install Complete Reboot Presented Choices 選 Option 1: All Drivers Most Memory

Reboot Classic DOS Games: รัน Warcraft, Doom 2 และอื่นๆ บน PC สมัยใหม่

不 Work 大多數 Drivers Failed 沒 High Memory 沒 Mouse 沒 CD-ROM Hmmm 花 2-3 Days Debug 最終 Realize Startling Points:

  1. Paths/Filenames 不正確 (在 fdauto.bat)
  2. CD-ROM Driver 壞 (在 fdconfig.sys)

修改 System Files

不變 Saga Trial/Error 描述每步 解決所有問題 修改 fdconfig.sys 和 fdauto.bat 載入 Working Drivers 和 Correct Paths/Filenames 替換 FreeDOS CD-ROM Driver ด้วย Working aoatapi.sys 安裝 dosidle.exe เก็บ CPU ไม่ Full Throttle Non-stop (DOS Way)

不清楚 Legal Issues aoatapi.sys 和 dosidle.exe 不 Host/Direct-link Sources 不 Guarantee Quality Sources

Best Advice: Search aoatapi.sys 和 dosidle.exe 用 Search Engines 找到 Reliable Copies 幾分鐘 Google search aoatapi.sys 和 dosidle.exe 歡迎 Own Choice/Search Engines/Words

First: Copy 2 Files 到 Floppy 然後 Copy 到 VM Hard Disk Execute dosidle.exe CPU Normal Below: Modified fdconfig.sys 和 fdauto.bat

fdconfig.sys

SWITCHES=/F/N
COUNTRY=001,858,C:\FREEDOS\BIN\COUNTRY.SYS
SET LANG=EN
LASTDRIVE=Z
BUFFERS=20
FILES=40
DOS=HIGH,UMB
DOSDATA=UMB
SET DIRCMD=/OGN /4
MENUCOLOR=7,0
MENUDEFAULT=1,5
MENU 1 - Load FreeDOS, with maximum RAM free, using EMM386
MENU 2 - Load FreeDOS, including HIMEM XMS-memory driver
MENU 3 - Load FreeDOS without drivers

12?DEVICE=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

@echo off
prompt $p$g
path C:\FREEDOS\BIN;C:\BATCHES
set HELPPATH=C:\FREEDOS\HELP
set LANG=US
set NLSPATH=C:\FREEDOS\NLS

IF not "%CONFIG%"=="1" goto noperuse
rem echo Load PERUSE scrolling driver?
rem lh c:\bin\peruse.exe
rem echo PERUSE loaded
:noperuse

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

if not exist CDRCACH$ goto normalcd
echo Activating cached CD-ROM drive now.
rem lh c:\freedos\bin\shsucdx.exe /D:CDRCACH$,N
lh c:\freedos\bin\shsucdx.com /D:CDRCACH$,N
goto nomorecd
rem the above goto avoids double SHSUCDX loading.
:nomorecd
rem if not exist CDROM001 goto nomorecd
if not exist fdcd0001 goto nomorecd
echo Activating uncached CD-ROM drive now.
rem lh c:\freedos\bin\shsucdx.exe /D:CDROM001,N
lh c:\freedos\bin\shsucdx.com /D:FDCD0001,N

:nomorecd

echo.

IF "%CONFIG%"=="3" goto noshare
rem 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 The environment contents are:
rem echo. displays an empty line...
IF "%CONFIG%"=="3" echo.
IF "%CONFIG%"=="3" echo goto nopause

echo.

echo Welcome to FreeDOS. Press enter to go on and see environment:
rem pause
rem :nopause
set

echo FreeDOS is now at your service :-)
echo.

CLS

C:\DOSIDLE.EXE

lh c:\freedos\bin\mouse.exe

Copy/Paste Text Editor Save Files (.bak Extension All Types) 放 Floppy Copy 到 VM Hard Disk Backup Original fdconfig.sys/fdauto.bat Rename .bak -> .bat/.sys 記住:

  1. Install FreeDOS Under C:\FREEDOS
  2. aoatapi.sys 和 dosidle.exe 在 Root C:\
  3. Country/Language Settings 可能不同
  4. 留 Non-functional Lines Commented 不 Run 如 PERUSE/Mouse Lines 雖 Active 不 Execute Properly (PERUSE Driver Not Found, Mouse 不 Work) Commented No Impact CD-ROM, Share 等同理
  5. Original CD-ROM Drive Letters 從 N (N:, O: 等) 可改 只要 No Conflicts

必要時 Modify File Paths 在 fdconfig.sys/fdauto.bat 反映 Installation Choices Reboot Luckily OS Work Smoothly Now

OS Environment 應如圖: 有 Mouse (Test: Type edit fdauto.bat 見 Cursor) 至少 1 CD-ROM Driver (用我的 .vmx) dosidle.exe Works 基本上就是這樣 Working DOS Now

Reboot Classic DOS Games: รัน Warcraft, Doom 2 และอื่นๆ บน PC สมัยใหม่

สรุป

บทความหน้า: Success/Lack Thereof 運行 Good Ole Games 建立 Character 早期 90s 知道 Old Games Query Serial/Parallel Ports (COM1, LPT1) Modern Windows OSes 不 Like Observed 在 VMware Player 可能 Denied Hardware Access (Main Reason Games 不跑) 仍 Impact Ability 但我會試

聽說像 Open TTD 專案 Enables Contemporary PC User Experience Doom, Duke Nukem 3D 在 Modern OSs 會 Check Rumors Keep Updated 如果有 News/Suggestions Email Me Post with Credits

Updates 在 Reviving Old Games Section (Caesar III, Open TTD) 讀 Reviews/View Screenshots 在 Computer Games Category

Cheers.