DOSBox是一款自由開源的模擬器,用於執行適用於MS-DOS相容作業系統的軟件(主要是電子遊戲)。它的最初版本於2002年發佈。

Quick Facts 原作者, 開發者 ...
DOSBox
執行在Windows Vista下的DOSBox
原作者Peter Veenstra, Sjoerd van der Berg, wd, h-a-l-9000
開發者DOSBox團隊
首次發佈2002年7月22日,​22年前​(2002-07-22[1][2]
目前版本
  • 0.74-3(2019年6月26日;穩定版本)[3]
編輯維基數據連結
原始碼庫 編輯維基數據連結
程式語言C, C++
作業系統AROS, AmigaOS 4, Amiga, Android, BeOS, FreeBSD, GNU/Linux, Mac OS X, MorphOS, OS/2, RISC OS, Solaris 10, Windows
語言英文(但支援替用鍵盤)
類型模擬器
許可協定GNU通用公眾授權條款
網站www.dosbox.com
Close

DOSBox支援許多IBM PC相容的顯示卡音效卡,為原生的DOS程式提供執行環境,使這些程式可以正常執行於大多數現代電腦上的不同作業系統。DOSBox主要以C++編寫,是以GNU通用公眾授權條款許可發佈的自由軟件

DOSBox所執行的MS-DOS軟件通常不能在現代電腦上直接執行,它們通常與現代的主流硬件和作業系統不相容。DOSBox在模擬MS-DOS同時,還增加了一些可用特性,包括虛擬磁碟、對等網絡、對模擬畫面截圖和錄影。有些非官方的DOSBox變體,如DOSBox SVN Daum和DOSBox-X提供了更多的功能,比如即時存檔、長檔名、中日韓語言支援等[4]。有些遊戲開發商重新發行早期的DOS遊戲時,也會使用DOSBox,使其可以在現代電腦上執行。

開發背景

Windows NT 3.1之前,面向消費者的Windows版本基於MS-DOS執行。Windows 3.x直接執行在MS-DOS之上,而Windows 9x系列系統也基於MS-DOS[5]。在這些版本的Windows中,DOS應用程式可以直接執行。然而,Windows NT系列作業系統並非基於DOS。該系列的其中一個成員Windows XP於2001年10月25日首次亮相,成為了首個面向消費者的不使用DOS的Windows版本。儘管Windows XP可以通過命令提示符程式模擬DOS,但它無法執行許多DOS應用程式。這是因為這些程式只能在真實模式下執行並直接訪問電腦的硬件,但Windows XP的保護模式出於安全考慮阻止了這樣的直接訪問[6][7]。MS-DOS的支援已於2001年底結束[8],並且對最後一個基於DOS的Windows系統的支援也將於2006年7月11日結束[9]

DOSBox的開發始於Windows 2000的發佈。Windows 2000是一個Windows NT系列的作業系統[10],當時DOSBox的兩位創始人[11]彼得·文斯特拉(荷蘭語:Peter Veenstra)和舍爾德·范德伯格(荷蘭語:Sjoerd van der Berg)發現Windows 2000已經放棄了對大部分DOS軟件的支援。兩人當時就已想到這一問題的解決方法。該專案最初上載到了SourceForge並於2002年7月22日首先發佈beta測試

特性

DOSBox是一個命令列程式,有兩種設置方式,一是直接在命令列下輸入設置參數,或是編輯組態文字檔更改系統設置。為了使用方便,用戶社群也開發出一些圖像化的前端介面[12]

  • DOSBox是一個完整的電腦的模擬,並不只是一個相容層,如DOSEMU,也不依賴386處理器虛擬化能力的Windows與OS/2 VDM作業系統,不需要x86中央處理器或者任何DOS版本以執行,並且能執行真實模式保護模式的程式。
  • 動態CPU內核:具備i386指令集合的系統,能利用動態指令轉換。此模式比解譯指令的模式要快,但是不完全準確。
  • 圖形模擬:除文字模式外,還支援HerculesCGATandyEGAVGAVESA圖形模式,與完整的S3 Trio 64顯示卡模擬。
  • 音頻模擬:支援對AdLibGravis UltrasoundPC speakerTandyCreative Music System/GameBlasterSound Blaster 1.x/2.0/Pro/16MPU-401,與Disney Sound Source的模擬。
  • 網絡模擬:數據機模擬與IPXTCP/IPUDP/IP,允許使用現代網絡,玩DOS網絡遊戲。Win32和Linux下支援直接讀寫序列埠。
  • 外殼:包含一個內嵌DOS命令直譯器。支援大多安裝批次檔使用的指令,但不支援許多晚期MS-DOS版本的進階指令。

問題

DOSBox跟大多的模擬器一樣需要比原電腦系統更強大的處理能力,尤其是處理器的運算能力。用戶需要根據模擬系統執行的程式需要決定給予必要的計算能力。使用DOS/4GW等開放原始碼的保護模式擴充程式DOS32a頁面存檔備份,存於互聯網檔案館)有時能減小問題。但是,因為該模擬器使用虛擬化方式,保護模式下的DOS程式,包括大多1995年之後的遊戲,可能不如在VMware或者Virtual PC執行上有效。

DOSBox與中文系統的配合存在一些問題,早期的0.58版本支援倚天、國喬等DOS中文系統,但之後的版本卻出現花屏亂碼的情況。不過DOSBox-X分支為了解決中文支援問題在簡體和繁體中文頁碼下內建中文功能,包括支援中文路徑、中文顯示、中文輸入、中文列印等,可以直接執行中文DOS程式而不一定要載入外掛中文系統。

DOSBox似乎不支援在程式運行期間對軟碟映像檔進行替換,這在某些以多個軟碟映像檔形式存在的安裝程式中會構成問題。

前端

DOSBox的組態儲存為純文字文件。不熟悉此組態法的用戶可以利用圖形介面的前端。前端也有別的好處,例如遊戲收集排序功能。

參考文獻

外部連結

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.