Difference between revisions of "DOSBox"

From Emulation General Wiki
Jump to navigation Jump to search
(DOSBox-X: Added features section for DOSBox-X.)
(Notable active forks)
 
(82 intermediate revisions by 27 users not shown)
Line 2: Line 2:
 
|title = DOSBox
 
|title = DOSBox
 
|logo = DOSBox.png
 
|logo = DOSBox.png
|logowidth = 265
+
|logowidth = 120
|version = 0.74-3
+
|version = {{Version|DOSBox}}
|active = Yes
+
|active = No
 
|fate =  
 
|fate =  
|platform = Windows, Linux, FreeBSD and more
+
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on BSD|FreeBSD]]<br/>[[Emulators on OS/2|OS/2]] and more
|target = [[Intel CPUs|286 and 386]]
+
|target = [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#Intel_CPU.27s|286 and 386]]
 
|prog-lang = C++
 
|prog-lang = C++
|developer = [http://www.dosbox.com/crew.php DOSBox Crew]
+
|developer = [https://www.dosbox.com/crew.php DOSBox Crew]
|website = [http://www.dosbox.com DOSBox.com]
+
|website = [https://www.dosbox.com DOSBox.com]
 +
|license = GNU GPLv2
 +
|support = [https://btc.com/1BwXUekP4sFiR7kcqBxWrCYXU8ZAWQRbFK Bitcoin]<br/>[https://www.paypal.com/donate/?item_name=Donation+to+DOSBox+DOS+Emulator&cmd=_donations&business=qbix79%40users.sourceforge.net PayPal ([email protected])]<br/>[https://www.paypal.com/webapps/shoppingcart?flowlogging_id=f9259906fd9cd&mfid=1694152320123_f9259906fd9cd#/checkout/openButton PayPal ([email protected])]<br/>[https://paypal.com/donate?hosted_button_id=RK4BA9ERN5AWL PayPal (Peter Veenstra)]
 
|source = [http://source.dosbox.com/dosboxsvn.tgz tgz]
 
|source = [http://source.dosbox.com/dosboxsvn.tgz tgz]
|license = GNU GPLv2
 
 
}}
 
}}
'''DOSBox''' is an open-source, [[High/Low level emulation|high-level]] [[Intel CPUs|286 and 386 emulator]] written in C++.
+
 
 +
'''DOSBox''' is a free and open-source, [[High/Low level emulation|high-level]] [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#Intel_CPU.27s|286 and 386 emulator]] written in C++.
  
 
==Downloads==
 
==Downloads==
Line 20: Line 22:
 
|-
 
|-
 
|align=center|{{Icon|Win|Lin|Mac}}
 
|align=center|{{Icon|Win|Lin|Mac}}
|'''[http://www.dosbox.com/wiki/SVN_Builds#List_of_SVN_Builds Latest Dev Builds]'''
+
|'''[https://www.dosbox.com/wiki/SVN_Builds#List_of_SVN_Builds Latest Dev Builds]'''
 +
|-
 +
|align=center|{{Icon|Win|Lin|Mac|BSD|RiscOS|OS2}}
 +
|'''[https://www.dosbox.com/download.php?main=1 Latest Stable Builds]'''
 
|-
 
|-
|align=center|{{Icon|Win|Lin|Mac|Sol|RiscOS|OS2|BeOS}}
+
|align=center|{{Icon|Pyra-big}}
|'''[http://www.dosbox.com/download.php?main=1 Latest Stable Builds]'''
+
|'''[https://pyra-handheld.com/repo/apps/23 Pyra build]'''
 
|}
 
|}
 +
'''Note: These versions are years out-of-date and missing countless features and bug fixes. [[DOSBox#Forks|DOSBox forks]] are better choice for almost all users.'''
  
==Features==
+
==Overview==
 
DOSBox is capable of emulating many older computer games that are otherwise very difficult if not impossible to play on modern operating systems and hardware. It has very high compatibility, as it can be configured to emulate the environment of many machines, with support for various display modes, including CGA, EGA, Hercules, Tandy, and VGA. With some work, it is even possible to install and load old Windows operating systems, such as Windows 3.11 and Windows 95, thus potentially being able to play games made for those platforms.
 
DOSBox is capable of emulating many older computer games that are otherwise very difficult if not impossible to play on modern operating systems and hardware. It has very high compatibility, as it can be configured to emulate the environment of many machines, with support for various display modes, including CGA, EGA, Hercules, Tandy, and VGA. With some work, it is even possible to install and load old Windows operating systems, such as Windows 3.11 and Windows 95, thus potentially being able to play games made for those platforms.
  
==Frontends==
+
===Frontends===
===[http://www.launchbox-app.com/ LaunchBox]===
+
Because DOSBox doesn't have a GUI, projects were made to fulfill that role.
*Portable Box-Art-Based Games Database and Launcher for DOSBox, Emulators, and PC Games
 
  
===[http://ykhwong.x-y.net/ DOSBox SVN Daum]===
+
{{Main|Frontends#DOSBox}}
*This is an enhanced build of DOSBox by ykhwong, with support for Direct3D and HLSL shaders, Glide, ethernet, and many other features not found in the official version. Unlike vanilla DOSBox, it has a menu for on-the-fly configuration. Has not been updated in years, however. According to the [http://www.dosbox.com/wiki/SVN_Builds#Enhanced_SVN_builds DOSBox wiki]: "The last version broke this build in various places and uses out of date and not fully working changes of the DOSBox-X branch. It is no longer recommended to use it."
 
  
===[http://dfendreloaded.sourceforge.net/ D-Fend Reloaded]===
+
==See Also==
*A great frontend which allows custom per-game configurations to cut back on fiddling with settings just to run specific games well. It also lets you use your own build of DOSBox instead of the one it comes with, so it can be used in conjunction with DOSBox SVN Daum.
+
* [[Dosbox Compatibility List]] - Small list of very old emulator builds with flaky compatibility in DOSBox.
 +
* [[DOSBox Wii Compatibility]]
  
===[http://members.quicknet.nl/blankendaalr/dbgl/ DOSBox Game Launcher]===
+
==Forks==
*A frontend based on Java, and has a UI inspired by the original D-Fend
+
DOSBox has many forks over the years. This section attempts to list the most notable ones. [http://www.dosbox.com/wiki/SVN_Builds#Enhanced_SVN_builds DOSBox's official wiki] also has a partial list of DOSBox forks. Even more forks are listed in the [https://github.com/dosbox-staging/dosbox-staging/wiki/DOSBox-forks DOSBox forks page] of DOSBox Staging's GitHub wiki.
  
==Versions==
+
===Notable active forks===
===[https://dosbox-staging.github.io/ dosbox-staging]===
 
dosbox-staging is a fork that "attempts to revitalize DOSBox's development process". This WIP fork's existence ain't to rewrite the emulator from scratch, but to continue updating it and improve it with bugfixes and new features where vanilla DOSBox currently can't. Indirectly speaking, it's sort off a "fork to end all forks."
 
  
===9xbox===
+
<div style="display: flex; flex-flow: row wrap; justify-content: space-between;">
There has been some interest in creating a version of DOSBox that incorporates compatibility with Windows 95/98/ME. As of 02/09/13, it has not passed the theoretical stage and no work has been done.
+
<div style="flex: 1 0 240px; margin: 0.5em;">
 +
<font size="3"><b>The following forks are standalone emulators:</b></font>
  
http://win9xbox.sourceforge.net/
+
{{Infobox emulator
 +
|title = DOSBox-X
 +
|screenshot = DOSBox-X-screenshot-sdl2.png
 +
|screenshotwidth = 250px
 +
|screenshotcaption = The SDL2 UI on Windows 10. DOSBox-X also has versions for SDL1 and MinGW in the installer.
 +
|developer = Jonathan Campbell (maintainer)<br/>Wengier, and others
 +
|version = {{Version|DOSBox-X}}
 +
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on DOS|DOS]]
 +
|target = [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|x86 CPUs]]<br/>[[NEC PC-9800 series|NEC PC-98]]
 +
|active = Yes
 +
|website = [https://dosbox-x.com dosbox-x.com]
 +
|license = GNU GPLv2
 +
|source = [https://github.com/joncampbell123/dosbox-x GitHub]
 +
}}
 +
 
 +
{{Infobox emulator
 +
|title = DOSBox Staging
 +
|screenshot = DOSBox Staging intro.png
 +
|screenshotwidth = 250px
 +
|screenshotcaption = DOSBox staging intro screen.
 +
|developer = kcgen (maintainer) and others
 +
|version = {{Version|DOSBox Staging}}
 +
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Linux|Linux]]
 +
|target = [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|x86 CPUs]]
 +
|active = Yes
 +
|website = [https://dosbox-staging.github.io/ dosbox-staging.github.io]
 +
|license = GNU GPLv2
 +
|support = [https://github.com/sponsors/dosbox-staging GitHub Sponsor]<br/>[https://opencollective.com/dosbox-staging Open Collective]
 +
|source = [https://github.com/dosbox-staging/dosbox-staging GitHub]
 +
}}
 +
</div>
  
===DOSBox-X===
+
<div style="display: flex; flex-flow: row wrap; justify-content: space-between;">
DOSBox-X is a fork of the original DOSBox project, as well as an HLE PC emulator. It does what DOSBox does, but goes further, with a focus on accurate emulation of pre-2000 PC hardware and includes many more ways to tweak and configure the DOS virtual machine. The aim is for DOSBox-X to be a complete emulation package that covers all pre-2000 DOS and Windows 9x based hardware needs, including peripherals, motherboards, CPUs, and all manner of hardware that was made for PC hardware of that time. The emulator should in the future have full support and acceleration of Windows 3.x, 95, 98 and ME and software that was written for those versions of Windows.
+
<div style="flex: 1 0 240px; margin: 0.5em;">
 +
<font size="3"><b>The following forks are cores for [[libretro]]:</b></font>
  
:http://dosbox-x.com/
+
{{Infobox emulator
:https://github.com/joncampbell123/dosbox-x
+
|title = DOSBox Pure
:[http://dosbox-x.com/doxygen/html/index.html Documentation]
+
|screenshot = DOSBox Pure start menu.png
 +
|screenshotwidth = 250px
 +
|screenshotcaption = DOSBox Pure start menu.
 +
|developer = Bernhard Schelling (maintainer) and others
 +
|version = {{Version|DOSBox Pure}}
 +
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Raspberry Pi|Raspberry Pi]]<br/>[[Emulators on Android|Android]]<br/>[[Emulators on 3DS|3DS]]<br/>[[Emulators on GameCube|GameCube]]<br/>[[Emulators on Wii|Wii]]<br/>[[Emulators on Wii U|Wii U]]<br/>[[Emulators on Switch|Switch]]<br/>[[Emulators on PS2|PS2]]<br/>[[Emulators on PSP|PSP]]<br/>[[Emulators on Vita|Vita]]
 +
|target = [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|x86 CPUs]]
 +
|active = Yes
 +
|website = [https://github.com/schellingb/dosbox-pure Site]
 +
|license = GNU GPLv2
 +
|support = [https://ko-fi.com/schelling Ko-fi]<br/>[http://paypal.com/donate?hosted_button_id=3WX4KRRTHN6EL PayPal]<br/>[https://schelling.itch.io/gamepad-phoenix/purchase Gamepad Phoenix]
 +
|source = [https://github.com/schellingb/dosbox-pure GitHub]
 +
}}
  
====Systems====
+
{{Infobox emulator
DOSBox-X aims to maintain the code to emulate the '''[[Intel CPUs|IBM PC/XT/AT]], Tandy, PCjr''', and '''[[PC-98 emulators|NEC PC-98]]'''. It does not plan to emulate any other MS-DOS system and, in the main author's (Jon Campbell) words, only the aforementioned systems will be considered for development in DOSBox-X. This restriction prevents stretching of the codebase to an unmanageable level and helps keep the code base organized.
+
|title = DOSBox-core
:'''However''', the author has stated that other coders are strongly encouraged to fork out the main DOSBox-X project so they can work to develop MS-DOS emulation on any other platform or emulate other unique MS-DOS based system(s). He has provided stubs to enable '''[[FM Towns emulators|FM-Towns]]''' emulation in such a branch for any interested programmers.
+
|screenshot = DOSBox-core MIDI on VSTi.jpg
 +
|screenshotwidth = 250px
 +
|screenshotcaption = DOSBox-core running Ultima 8 with a standalone MIDI synthesizer (Roland's Sound Canvas emulator VSTi plugin "Sound Canvas VA") which is run using a VSTi host "Falcosoft Midi Player" (runs on Linux via [[Wine]] here).
 +
|developer = Nikos Chantziaras (maintainer) and others
 +
|version = {{Version|DOSBox-core}}
 +
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Android|Android]]
 +
|target = [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|x86 CPUs]]
 +
|active = Yes
 +
|website = [https://github.com/realnc/dosbox-core Site]
 +
|license = GNU GPLv2
 +
|source = [https://github.com/realnc/dosbox-core GitHub]
 +
}}
 +
</div>
  
====Features====
+
<div style="display: flex; flex-flow: row wrap; justify-content: space-between;">
It has a lot of added features that does not exist in DOSBox or other forks. Just to name a few of its unique features: support for GUI menu bar & config tool, save and load state, better compatibility with DOS applications, more DOS commands, Pentium MMX & Pro, printer output, long filename and FAT32 disk images, Windows clipboard copy & paste, 3dfx Glide & Voodoo chips, cue sheets with FLAC/Opus/Vorbis/MP3 CD-DA tracks, FluidSynth, NE2000 Ethernet, V-Sync, and many more.<ref name="Reddit_1">{{cite web|url=https://www.reddit.com/r/emulation/comments/hl8txx/dosboxx_0833_released_with_allinone_windows/ |title=DOSBox-X 0.83.3 released (with all-in-one Windows installer) |publisher=Reddit |accessdate=2020-06-07|date=2020-Jul-05}}</ref>
+
<div style="flex: 1 0 240px; margin: 0.5em;">
  
===[http://www.columbia.edu/~em36/win31dosbox.html Win31DOSBox]===
+
===Some notable dead forks===
Win31DOSBox is a fork of DOSBox that aims to be an easy method of playing Windows 3.xx games on your computer. It has an easy setup program and has the ability to print from Windows 3.11. (Might need some tweaking.)
+
{{Infobox emulator
 +
|title = DOSBox ECE
 +
|screenshot = DOSBox ECE game directory.png
 +
|screenshotwidth = 250px
 +
|screenshotcaption = DOSBox ECE game directory screenshot.
 +
|developer = YesterPlay (maintainer) and others
 +
|version = {{Version|DOSBox ECE}}
 +
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]
 +
|target = [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|x86 CPUs]]
 +
|active = No
 +
|website = [https://yesterplay.net/dosboxece/ yesterplay.net/dosboxece]
 +
|license = GNU GPLv2
 +
|source = [https://yesterplay.net/dosboxece/ yesterplay.net/dosboxece]
 +
}}
  
To get started with Win31DOSBox you first need a copy of either Windows 3.11 or WfW (Windows for Workgroups) 3.11 (IMG, CD, or MSDN download) and once you have that you need to put either the 6 (Windows 3.11) or 9 (WfW 3.11) IMG files if you are using those, the ISO file which is only for WfW 3.11, or the MSDN self-extracting .exe.
+
;[http://web.archive.org/web/20161230025119/http://home.arcor.de/h-a-l-9000/ DOSBox Mega Build]
 +
:Was an enhanced build of DOSBox focused on serial/networking support. Contains the NE2000 patch, parallel port passthrough, virtual printer, OPL passthrough, and others. However, it hasn't been updated in years, and most of what it added was covered by the actively maintained [[#Notable active forks|DOSBox-X]] fork.
  
After that, you then can run InstallWin31DOSBox.exe which will automatically install Windows for you. Once Windows is installed, check that everything works and then install Video for Windows and Quicktime which is located in the Video folder in Program Manager. It is also recommended to install WinG and Win32s aswell.
+
;[http://ykhwong.x-y.net DOSBox SVN Daum]
 +
:Was an enhanced build of DOSBox by ykhwong, with support for Direct3D and HLSL shaders, Glide, Ethernet, virtual printer, and a built-in UI. However, it hasn't been updated in years, and most of what it added was covered by the actively maintained [[#Notable active forks|DOSBox-X]] fork.
  
To get software onto the system there are multiple ways. For folders and files, you can drag them into the C-DRIVE folder. If you have a physical CD you can just insert it into your CD drive. If it's a CD image you need to mount it using a software like Virtual CloneDrive. If it's a floppy disk image you need to drag the respective images over the Extract to A-Drive Folder.exe program which will extract them to the A-DRIVE folder.
+
</div>
  
 
[[Category:Emulators]]
 
[[Category:Emulators]]
 +
[[Category:Computer emulators]]
 
[[Category:Windows emulation software‏‎]]
 
[[Category:Windows emulation software‏‎]]
 
[[Category:Linux emulation software]]
 
[[Category:Linux emulation software]]
 
[[Category:macOS emulation software]]
 
[[Category:macOS emulation software]]
 +
[[Category:BSD emulation software]]
 +
[[Category:OS/2 emulation software]]

Latest revision as of 19:15, 25 March 2024

DOSBox
DOSBox.png
Developer(s) DOSBox Crew
Latest version 0.74-3 [+]
Active No
Platform(s) Windows
Linux
macOS
FreeBSD
OS/2 and more
Emulates 286 and 386
Website DOSBox.com
Support ($) Bitcoin
PayPal ([email protected])
PayPal ([email protected])
PayPal (Peter Veenstra)
Programmed in C++
License GNU GPLv2
Source code tgz

DOSBox is a free and open-source, high-level 286 and 386 emulator written in C++.

Downloads[edit]

Windows Linux macOS Latest Dev Builds
Windows Linux macOS FreeBSD RiscOS OS/2 Latest Stable Builds
Dragonbox Pyra Pyra build

Note: These versions are years out-of-date and missing countless features and bug fixes. DOSBox forks are better choice for almost all users.

Overview[edit]

DOSBox is capable of emulating many older computer games that are otherwise very difficult if not impossible to play on modern operating systems and hardware. It has very high compatibility, as it can be configured to emulate the environment of many machines, with support for various display modes, including CGA, EGA, Hercules, Tandy, and VGA. With some work, it is even possible to install and load old Windows operating systems, such as Windows 3.11 and Windows 95, thus potentially being able to play games made for those platforms.

Frontends[edit]

Because DOSBox doesn't have a GUI, projects were made to fulfill that role.

Main article: Frontends#DOSBox

See Also[edit]

Forks[edit]

DOSBox has many forks over the years. This section attempts to list the most notable ones. DOSBox's official wiki also has a partial list of DOSBox forks. Even more forks are listed in the DOSBox forks page of DOSBox Staging's GitHub wiki.

Notable active forks[edit]

The following forks are standalone emulators:

DOSBox-X
DOSBox-X-screenshot-sdl2.png
The SDL2 UI on Windows 10. DOSBox-X also has versions for SDL1 and MinGW in the installer.
Developer(s) Jonathan Campbell (maintainer)
Wengier, and others
Latest version 2024.03.01 [+]
Active Yes
Platform(s) Windows
macOS
Linux
DOS
Emulates x86 CPUs
NEC PC-98
Website dosbox-x.com
License GNU GPLv2
Source code GitHub
DOSBox Staging
DOSBox Staging intro.png
DOSBox staging intro screen.
Developer(s) kcgen (maintainer) and others
Latest version 0.81.0 [+]
Active Yes
Platform(s) Windows
macOS
Linux
Emulates x86 CPUs
Website dosbox-staging.github.io
Support ($) GitHub Sponsor
Open Collective
License GNU GPLv2
Source code GitHub

The following forks are cores for libretro:

DOSBox Pure
DOSBox Pure start menu.png
DOSBox Pure start menu.
Developer(s) Bernhard Schelling (maintainer) and others
Latest version 0.9.9 [+]
Active Yes
Platform(s) Windows
Linux
macOS
Raspberry Pi
Android
3DS
GameCube
Wii
Wii U
Switch
PS2
PSP
Vita
Emulates x86 CPUs
Website Site
Support ($) Ko-fi
PayPal
Gamepad Phoenix
License GNU GPLv2
Source code GitHub
DOSBox-core
DOSBox-core MIDI on VSTi.jpg
DOSBox-core running Ultima 8 with a standalone MIDI synthesizer (Roland's Sound Canvas emulator VSTi plugin "Sound Canvas VA") which is run using a VSTi host "Falcosoft Midi Player" (runs on Linux via Wine here).
Developer(s) Nikos Chantziaras (maintainer) and others
Latest version git [+]
Active Yes
Platform(s) Windows
Linux
macOS
Android
Emulates x86 CPUs
Website Site
License GNU GPLv2
Source code GitHub

Some notable dead forks[edit]

DOSBox ECE
DOSBox ECE game directory.png
DOSBox ECE game directory screenshot.
Developer(s) YesterPlay (maintainer) and others
Latest version r4482 [+]
Active No
Platform(s) Windows
Linux
Emulates x86 CPUs
Website yesterplay.net/dosboxece
License GNU GPLv2
Source code yesterplay.net/dosboxece
DOSBox Mega Build
Was an enhanced build of DOSBox focused on serial/networking support. Contains the NE2000 patch, parallel port passthrough, virtual printer, OPL passthrough, and others. However, it hasn't been updated in years, and most of what it added was covered by the actively maintained DOSBox-X fork.
DOSBox SVN Daum
Was an enhanced build of DOSBox by ykhwong, with support for Direct3D and HLSL shaders, Glide, Ethernet, virtual printer, and a built-in UI. However, it hasn't been updated in years, and most of what it added was covered by the actively maintained DOSBox-X fork.