Computer >> Máy Tính >  >> Phần mềm >> Máy ảo

Bạn có muốn chạy lại các ứng dụng DOS không?

Bạn có muốn chơi những game hay như Warcraft, Wolfenstien, Doom 2, X-Wing và những game khác không? Bạn có muốn trải nghiệm vẻ đẹp 256 màu của phần mềm 16-bit không? Nghe hay nhỉ?

Tôi đã quyết định nhìn lại các hệ điều hành cũ hơn vào khoảng thời gian Windows XP SP2 được phát hành. Sau khi cập nhật trên một trong các máy Windows của mình, tôi chợt nhận ra rằng mình không thể chơi trò chơi yêu thích của mình nữa, Caesar III. Và sau đó, sau khi thử cài đặt lại Transport Tycoon Deluxe (như một sự bù đắp cho việc đã mất Caesar), tôi đã rất ngạc nhiên khi phát hiện ra trò chơi nhỏ vui nhộn này sẽ không chạy trên Windows XP. Mặc dù tôi đã không chơi TTD kể từ thời Windows 98, và việc đột ngột mất đi hai trong số những trò chơi hay hơn của tôi đã khiến tôi phải xem xét nội tâm sâu sắc.

Giới thiệu

Không có gì tôi sẽ làm giúp đỡ. Chạy các ứng dụng ở các chế độ khác trong Windows XP không hoạt động. Việc sử dụng nhiều bản vá khác nhau, được thiết kế đặc biệt để giải quyết các loại vấn đề này cũng không. Sau đó, tôi tình cờ biết đến một sản phẩm tuyệt vời có tên là VMware Player. VMware Player là một phần mềm ảo hóa cho phép bạn chạy nhiều hệ điều hành dựa trên PC như một ứng dụng trong hệ điều hành hiện tại của bạn. Âm thanh tuyệt vời. Bạn có thể đọc thêm về VMware Player trong bài viết có tên VMware Player - người bạn tuyệt vời.

Tôi tải xuống và cài đặt VMware Player và bắt đầu cài đặt các hệ điều hành cũ hơn mà tôi có, với hy vọng khôi phục khả năng chơi các trò chơi cũ. May mắn đến với tôi hai lần. Tôi đã có thể cài đặt thành công Windows XP Home SP1 dưới dạng máy ảo trên một trong các máy chủ Windows XP Pro SP2 của mình. Và bên trong hệ điều hành khách, tôi đã cài đặt Caesar III và chơi lại nó. Đúng! Và sau đó, tôi bắt gặp Open TTD, bản sao mã nguồn mở của Transport Tycoon Deluxe, cho phép tôi chơi trò chơi tuyệt vời này ngay trong Windows XP SP2.

Bạn có thể muốn đọc về cách cài đặt Windows XP nói chung và với tư cách là một hệ điều hành khách bên trong VMware Player nói riêng. Bạn có thể đọc chi tiết về thành công của tôi với Caesar III. Bạn cũng có thể đọc bài đánh giá trò chơi của tôi. Bạn có thể đọc về Open TTD cách cài đặt và chơi cũng như bài đánh giá riêng về trò chơi. Và sau đó tôi đã táo bạo. Caesar III là một trò chơi được phát hành vào khoảng năm 1998. Transport Tycoon Deluxe ra đời từ năm 1994. Còn việc quay ngược thời gian xa hơn nữa thì sao? Làm thế nào về DOS?

Cách cài đặt DOS

Nếu bạn không biết DOS là gì hoặc không quan tâm đến nó, bạn có thể ngừng đọc ngay bây giờ. MS-DOS là một trong những hệ điều hành máy tính để bàn phổ biến hơn trong những năm 80 và đầu những năm 90. Hiện tại nó không còn được hỗ trợ trong một thời gian khá dài và việc có được một bản sao của nó có lẽ sẽ khá khó khăn. Nhưng điều đó không nên làm bạn lo lắng. Thay vào đó, có FreeDOS, một "hệ điều hành tương thích 100% MS-DOS" (trích dẫn từ trang web).

Tôi quyết định dùng thử FreeDOS làm nền tảng DOS của mình. Và vì tôi không đủ khả năng khởi động kép FreeDOS trên bất kỳ máy nào của mình, nên tôi đã chọn dùng thử trong VMware Player, giải pháp rẻ nhất, nhanh nhất và hợp lý nhất. Bằng cách này, tôi có thể dễ dàng gỡ lỗi trong quá trình thực hiện mà không có bất kỳ thay đổi vĩnh viễn nào hoặc thậm chí gây hư hại cho hệ thống. Bạn nên theo dõi bài viết Linux From Scratch của tôi để tìm hiểu cách:
  1. Cài đặt và sử dụng VMware Player và QEMU.
  2. Tạo tệp cấu hình máy ảo .vmx.
  3. Định cấu hình tệp .vmx để khởi động từ đĩa CD ảo (.iso đã gắn).
  4. Tạo đĩa cứng ảo.
Tuy nhiên, tôi sẽ giải thích một số điều cơ bản mà tôi đã làm để tạo môi trường DOS của mình.
  1. Tôi đã tải xuống FreeDOS .iso có khả năng khởi động.
  2. Tôi đã tạo tệp cấu hình .vmx sau (bên dưới); bạn có thể sao chép nó và sử dụng nó như của riêng bạn. Chỉ cần đảm bảo rằng bạn lưu nó dưới dạng tệp Tất cả các loại thay vì tệp .txt (trong bất kỳ trình soạn thảo văn bản nào, ví dụ:Notepad).

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

guestOS ="khác"

displayName ="FreeDOS"

sốvcpus ="1"

kích thước ghi nhớ ="64"
MemAllowAutoScaleDown ="SAI"
MemTrimRate ="-1"

uuid.action ="tạo"

tools.remindInstall ="TRUE"

gợi ý.hideAll ="TRUE"

tools.syncTime ="TRUE"

usb.hiện tại ="TRUE"
usb.generic.autoconnect ="SAI"

serial0.present ="SAI"

serial1.hiện tại ="SAI"

song song0.hiện tại ="SAI"

# Cài đặt âm thanh
sound.present ="TRUE"
sound.virtualdev ="sb16"

ghi nhật ký ="TRUE"
log.fileName ="FreeDOS.log"
log.append ="TRUE"
log.keepOld ="1"

cô lập.tools.hgfs.disable ="SAI"
cô lập.tools.dnd.disable ="TRUE"
cô lập.tools.copy.enable ="TRUE"
cô lập.tools.paste.enabled ="TRUE"

ethernet0.hiện tại ="TRUE"
ethernet0.virtualDev ="vlance"
ethernet0.connectionType ="nat"
ethernet0.addressType ="đã tạo"
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 ="tự động phát hiện"
ide1:0.autodetect ="TRUE"

ý tưởng1:1.hiện tại ="TRUE"
ide1:1.fileName ="fdbootcd.iso"
ide1:1.deviceType ="cdrom-image"
ide1:1.mode ="liên tục"
ide1:1.startConnected ="SAI"

ide0:0.present ="TRUE"
ide0:0.fileName ="freedos.vmdk"
ide0:0.mode ="liên tục"
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"

Một trang web tuyệt vời có thể giúp bạn tạo các tệp cấu hình máy ảo là EasyVMX!. Trang web cung cấp một giao diện tương tác để tạo các tệp cấu hình .vmx, sau đó có thể tải xuống và sử dụng các tệp này. Sau đó, tôi đã sử dụng QEMU để tạo đĩa cứng ảo của mình; Tôi đã tạo một đĩa nhỏ 500Mb bằng cách nhập lệnh sau vào thư mục QEMU (dòng lệnh):

qemu-img.exe tạo -f vmdk freedos.vmdk 500M

Sau đó, với tất cả các tệp được nhóm trong một thư mục, tôi khởi động VMware Player, khởi động đĩa CD (.iso) và cài đặt FreeDOS. Việc cài đặt khá đơn giản. Tôi sẽ không đi vào chi tiết, tuy nhiên, nếu tôi tình cờ nhận được nhiều email (> 2) yêu cầu hướng dẫn chi tiết từng bước, tôi có thể cân nhắc bổ sung sau. Nhưng một lần nữa, nó rất đơn giản, chỉ cần làm theo hướng dẫn trên màn hình.

Một trong những điều kỳ diệu mà tôi khám phá ra về FreeDOS là hỗ trợ CD-ROM. Tôi khá nhiệt tình, bởi vì tôi không cảm thấy hứng thú với việc làm việc với đĩa mềm. Vì vậy, tôi đợi quá trình cài đặt hoàn tất. Tôi đã khởi động lại. Và sau đó, tôi đã được đưa ra một số lựa chọn. Tất nhiên, tôi quyết định chọn tùy chọn 1, với tất cả trình điều khiển và hầu hết bộ nhớ.

Nó không hoạt động. Hầu hết các trình điều khiển không khởi động được. Tôi không có trí nhớ cao. Tôi không có chuột. Tôi không có đĩa CD-ROM. Hừm. Tôi đã dành 2-3 ngày tiếp theo để cố gắng tìm ra lý do tại sao mọi thứ không diễn ra bình thường. Cuối cùng, tôi nhận ra một số điểm đáng ngạc nhiên:

  1. Đường dẫn đến một số tệp nhất định và tên của chúng không chính xác (trong tệp fdauto.bat).
  2. Trình điều khiển CD-ROM bị lỗi (trong tệp fdconfig.sys).

Sửa đổi tập tin hệ thống

Chà, không biến bài viết này thành một câu chuyện về thử và sai, mô tả từng bước tôi đã làm, tôi đã giải quyết được tất cả các vấn đề. Tôi đã thay đổi các tệp fdconfig.sys và fdauto.bat ban đầu để tải trình điều khiển đang hoạt động và thực thi đúng đường dẫn và tên tệp. Tôi đã thay thế trình điều khiển CD-ROM được cung cấp cùng với FreeDOS bằng trình điều khiển aoatapi.sys đang hoạt động. Và cuối cùng, tôi đã cài đặt dosidle.exe để giữ cho CPU không hoạt động hết công suất liên tục (đó là cách hoạt động của DOS).

Bởi vì tôi không biết về các vấn đề pháp lý liên quan đến aoatapi.sys và dosidle.exe, tôi chắc chắn sẽ không lưu trữ chúng hoặc liên kết trực tiếp đến bất kỳ nguồn nào có sẵn trên Internet. Tôi cũng không thể đảm bảo chất lượng của những nguồn này.

Do đó, lời khuyên tốt nhất mà tôi có thể cung cấp cho bạn là tìm kiếm aoatapi.sys và dosidle.exe bằng các công cụ tìm kiếm. Tôi đã quản lý để tìm các bản sao đáng tin cậy trong vòng vài phút. Bạn có thể thử tìm kiếm aoatapi.sys trên Google tại đây và dosidle.exe tại đây. Bạn được thoải mái lựa chọn hoặc sử dụng các công cụ tìm kiếm và từ ngữ của riêng mình.

Điều đầu tiên tôi làm là sao chép hai tệp vào đĩa mềm rồi sao chép chúng vào đĩa cứng của máy ảo. Tôi đã chạy dosidle.exe và CPU của tôi hoạt động bình thường trở lại. Bên dưới, bạn có thể tìm thấy fdconfig.sys và fdauto.bat đã sửa đổi của tôi.

fdconfig.sys

CÔNG TẮC =/F/N
QUỐC GIA=001,858,C:\FREEDOS\BIN\COUNTRY.SYS
SET LANG=EN
CUỐI CÙNG=Z
BỘ ĐỆM=20
TỆP =40
DO =CAO, UMB
DOSDATA=UMB
ĐẶT DIRCMD=/OGN /4
MENUCOLOR=7,0
MENUDEFAULT=1,5
MENU 1 - Tải FreeDOS, với RAM trống tối đa, sử dụng EMM386
MENU 2 - Tải FreeDOS, bao gồm trình điều khiển bộ nhớ HIMEM XMS
MENU 3 - Tải FreeDOS không cần trình điều khiển

12?DEVICE=C:\FREEDOS\BIN\HIMEM.EXE
1?DEVICE=C:\FREEDOS\BIN\EMM386.EXE NOEMS X=KIỂM TRA VDS

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

fdauto.bat

@echo tắt
lời nhắc $p$g
đường dẫn C:\FREEDOS\BIN;C:\BATCHES
đặt HELPPATH=C:\FREEDOS\HELP
đặt LANG=US
đặt NLSPATH=C:\FREEDOS\NLS

NẾU không phải "%CONFIG%"=="1" goto noperuse
rem echo Tải trình điều khiển cuộn PERUSE?
rem lh c:\bin\peruse.exe
rem echo PERUSE đã tải
:noperuse

NẾU "%CONFIG%"=="3" chuyển sang nomouse
lh c:\freedos\bin\ctmouse.exe /3 /V
:nomouse

nếu không tồn tại CDRCACH$ goto normalcd
echo Đang kích hoạt ổ đĩa CD-ROM được lưu trong bộ nhớ cache ngay bây giờ.
rem lh c:\freedos\bin\shsucdx.exe /D:CDRCACH$,N
lh c:\freedos\bin\shsucdx.com /D:CDRCACH$,N
goto nomorecd
rem goto ở trên để tránh tải SHSUCDX kép.
:nomorecd
rem nếu không tồn tại CDROM001 goto nomorecd
nếu không tồn tại fdcd0001 goto nomorecd
echo Đang kích hoạt ổ đĩa CD-ROM không được lưu trong bộ nhớ cache ngay bây giờ.
rem lh c:\freedos\bin\shsucdx.exe /D:CDROM001,N
lh c:\freedos\bin\shsucdx.com /D:FDCD0001,N

:nomorecd

tiếng vang.

NẾU "%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 Nội dung môi trường là:
rem vang. hiển thị một dòng trống ...
NẾU "%CONFIG%"=="3" tiếng vang.
IF "%CONFIG%"=="3" echo goto nopause

tiếng vang.

echo Chào mừng đến với FreeDOS. Nhấn enter để tiếp tục và xem môi trường:
tạm dừng lại
rem:tạm dừng
bộ

echo FreeDOS hiện đang phục vụ bạn :-)
tiếng vang.

CLS

C:\DOSIDLE.EXE

lh c:\freedos\bin\mouse.exe

Sao chép và dán văn bản vào trình soạn thảo văn bản, lưu tệp (tôi đề xuất phần mở rộng .bak, loại Tất cả các loại), đặt chúng vào đĩa mềm và sao chép chúng vào đĩa cứng của máy ảo của bạn. Sao lưu fdconfig.sys và fdauto.bat ban đầu và đổi tên .bak mới tạo thành .bat và .sys tương ứng. Please bear in mind:

  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. Khởi động lại. 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. Basically, that's it. You have a working DOS now.

Kết luận

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.

Chúc mừng.