Difference between revisions of "DOSBox"

From Emulation General Wiki
Jump to navigation Jump to search
m (Cleaning)
(Notable active forks)
 
(68 intermediate revisions by 21 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 21: 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.'''
  
 
==Overview==
 
==Overview==
Line 31: Line 36:
  
 
===Frontends===
 
===Frontends===
Because DOSBox doesn't have a GUI, two projects were made to fulfill that role.
+
Because DOSBox doesn't have a GUI, projects were made to fulfill that role.
  
;[http://dfendreloaded.sourceforge.net D-Fend Reloaded]
+
{{Main|Frontends#DOSBox}}
: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 with forks as well.
 
  
;[https://dbgl.org DOSBox Game Launcher]
+
==See Also==
:Another frontend based on Java that is said to be inspired by the D-Fend's.
+
* [[Dosbox Compatibility List]] - Small list of very old emulator builds with flaky compatibility in DOSBox.
 +
* [[DOSBox Wii Compatibility]]
  
 
==Forks==
 
==Forks==
 
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.
 
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.
  
{| class="wikitable" style="text-align:center;"
+
===Notable active forks===
! scope="col"|Name
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|[[libretro|Libretro Core]]
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
!colspan="8"|PC / x86
 
|-
 
|[https://dosbox-staging.github.io DOSBox Staging]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://dosbox-staging.github.io {{DOSBoxStagingVer}}]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|-
 
|[https://dosbox-x.com DOSBox-X]
 
|align=left|{{Icon|Windows|Linux|macOS|DOS}}
 
|[https://dosbox-x.com {{DOSBox-XVer}}]
 
|{{✗}} ||{{✓}} ||{{✓}}
 
|-
 
|[https://dosboxece.yesterplay.net DOSBox ECE]
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://dosboxece.yesterplay.net SVN]
 
|{{✗}} ||{{✓}} ||{{✗}}
 
|-
 
|[https://github.com/schellingb/dosbox-pure DOSBox Pure]
 
|align=left|{{Icon|Windows|Linux|}}
 
|[https://github.com/schellingb/dosbox-pure git]
 
|{{✓}} ||{{✓}} ||{{TBD}}
 
|}
 
  
===Active forks===
+
<div style="display: flex; flex-flow: row wrap; justify-content: space-between;">
 +
<div style="flex: 1 0 240px; margin: 0.5em;">
 +
<font size="3"><b>The following forks are standalone emulators:</b></font>
  
 
{{Infobox emulator
 
{{Infobox emulator
Line 80: Line 58:
 
|screenshotwidth = 250px
 
|screenshotwidth = 250px
 
|screenshotcaption = The SDL2 UI on Windows 10. DOSBox-X also has versions for SDL1 and MinGW in the installer.
 
|screenshotcaption = The SDL2 UI on Windows 10. DOSBox-X also has versions for SDL1 and MinGW in the installer.
|developer = Jonathan Campbell<br/>(Project maintainer)<br/>Wengier, and others
+
|developer = Jonathan Campbell (maintainer)<br/>Wengier, and others
 
|version = {{Version|DOSBox-X}}
 
|version = {{Version|DOSBox-X}}
|platform = Windows, macOS, Linux, DOS
+
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on DOS|DOS]]
|target = [[Intel CPUs]]<br/>[[PC-98 emulators|NEC PC-98]]
+
|target = [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|x86 CPUs]]<br/>[[NEC PC-9800 series|NEC PC-98]]
 
|active = Yes
 
|active = Yes
 
|website = [https://dosbox-x.com dosbox-x.com]
 
|website = [https://dosbox-x.com dosbox-x.com]
Line 89: Line 67:
 
|source = [https://github.com/joncampbell123/dosbox-x GitHub]
 
|source = [https://github.com/joncampbell123/dosbox-x GitHub]
 
}}
 
}}
;[https://dosbox-x.com DOSBox-X]:
 
DOSBox-X is vastly different from other DOSBox forks in that it aims to be a complete DOS emulation package. It features more flexibility by way of config options and an accompanying frontend to customize the DOS VM further, and beyond games it also supports standard software for DOS, as well as DOS-based Windows including Windows 3.x and 9x/ME (which it should be able to accelerate in the future). The project also has its own [https://dosbox-x.com/wiki wiki] which contains extensive documentation on DOSBox-X, and a summary of notable added features can be seen [https://dosbox-x.com/wiki/DOSBox%E2%80%90X’s-Feature-Highlights here]. The project is also accessible from the [https://github.com/joncampbell123/dosbox-x GitHub website].
 
  
While DOSBox-X currently supports the [[Intel CPUs|IBM PC/XT/AT]], Tandy, PCjr, and [[PC-98 emulators|NEC PC-98]] the maintainer, Jonathan Campbell, does not plan to add any other MS-DOS system. This limitation is mainly done to prevent bloating of the codebase, keeping it at a manageable level for himself while also staying organized. However, the codebase does contain stubbed source files for [[FM Towns emulators|FM Towns]] emulation in the event that other programmers want to add that functionality.
+
{{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>
 +
 
 +
<div style="display: flex; flex-flow: row wrap; justify-content: space-between;">
 +
<div style="flex: 1 0 240px; margin: 0.5em;">
 +
<font size="3"><b>The following forks are cores for [[libretro]]:</b></font>
  
;[https://dosbox-staging.github.io DOSBox Staging]:
+
{{Infobox emulator
DOSBox Staging attempts to "revitalize DOSBox's development process". It bills itself as a "fork to end all forks" but, unlike DOSBox-X, still focuses on DOS games for the most part.
+
|title = DOSBox Pure
 +
|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]
 +
}}
  
;[https://dosbox-staging.github.io DOSBox ECE]:
+
{{Infobox emulator
DOSBox ECE is a DOSBox fork that is based on DOSBox SVN commits but with some additional patches such as MT32, FluidSynth and Voodoo/Glide support.
+
|title = DOSBox-core
 +
|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>
  
;[https://github.com/schellingb/dosbox-pure DOSBox Pure]:
+
<div style="display: flex; flex-flow: row wrap; justify-content: space-between;">
DOSBox Pure is a new DOSBox fork specifically built for RetroArch/Libretro. According to its project description it aims for simplicity and ease of use.
+
<div style="flex: 1 0 240px; margin: 0.5em;">
  
===Others===
+
===Some notable dead forks===
 +
{{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]
 +
}}
  
;[http://home.arcor.de/h-a-l-9000 DOSBox Mega Build]
+
;[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 [[#Active forks |DOSBox-X]] fork.
+
: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.
  
 
;[http://ykhwong.x-y.net DOSBox SVN Daum]
 
;[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 [[#Active forks |DOSBox-X]] fork.
+
: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.
 
 
;[http://www.columbia.edu/~em36/win31dosbox.html Win31DOSBox]:
 
:Win31DOSBox aims to be an easy method of running Windows 3.x games through a customized version of DOSBox-X or DOSBox SVN. Among its many features, it adds an easy setup program and the ability to print from Windows 3.11. The maintainer of Win31DOSBox has since recommended using [[WineVDM]] instead.
 
 
 
:To get started, you first need a copy of either Windows 3.11 or WfW (Windows for Workgroups) 3.11. Once you have that, you need to put in either the 6 (Windows 3.11) or 9 (WfW 3.11) floppy images, or the ISO file, or the MSDN self-extracting .exe. After that, running InstallWin31DOSBox.exe which will automatically install Windows 3.x for you. Once it's finished, 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 as well.
 
  
:There are multiple ways to get software onto the system. 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>
  
;[http://win9xbox.sourceforge.net 9xbox]
 
:There was some interest in creating a version of DOSBox that would improve compatibility with Windows 95/98/ME. However, it never passed the theoretical stage.
 
<!--
 
==References==
 
{{Reflist}}
 
-->
 
 
[[Category:Emulators]]
 
[[Category:Emulators]]
[[Category:Computers' 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.