Difference between revisions of "DOSBox"

From Emulation General Wiki
Jump to navigation Jump to search
(13 intermediate revisions by 9 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 = 0.74-3
 
|active = Yes
 
|active = Yes
 
|fate =  
 
|fate =  
|platform = Windows, Linux, FreeBSD and more
+
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>FreeBSD and more
 
|target = [[Intel CPUs|286 and 386]]
 
|target = [[Intel CPUs|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]
 
|source = [http://source.dosbox.com/dosboxsvn.tgz tgz]
 
|source = [http://source.dosbox.com/dosboxsvn.tgz tgz]
 
|license = GNU GPLv2
 
|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]] [[Intel CPUs|286 and 386 emulator]] written in C++.
  
 
==Downloads==
 
==Downloads==
Line 20: Line 21:
 
|-
 
|-
 
|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]'''
 
|}
 
|}
  
Line 32: Line 36:
 
Because DOSBox doesn't have a GUI, two projects were made to fulfill that role.
 
Because DOSBox doesn't have a GUI, two projects were made to fulfill that role.
  
;[http://dfendreloaded.sourceforge.net/ D-Fend Reloaded]
+
;[http://dfendreloaded.sourceforge.net D-Fend Reloaded]
 
: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.
 
: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]
+
;[https://dbgl.org DOSBox Game Launcher]
 
:Another frontend based on Java that is said to be inspired by the D-Fend's.
 
:Another frontend based on Java that is said to be inspired by the D-Fend's.
  
 
==Forks==
 
==Forks==
There are far more forks listed at [https://github.com/dosbox-staging/dosbox-staging/wiki/DOSBox-forks DOSBox Staging]'s GitHub wiki. Some have even been recognized by [http://www.dosbox.com/wiki/SVN_Builds#Enhanced_SVN_builds DOSBox's official 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;"
 
{| class="wikitable" style="text-align:center;"
Line 49: Line 53:
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
|-
!colspan="8"|PC / x86
+
! colspan="8"|PC / x86
 
|-
 
|-
|[https://dosbox-staging.github.io/ DOSBox Staging]
+
| DOSBox Staging
|align=left|{{Icon|Windows|Linux|macOS}}
+
| align=left|{{Icon|Windows|Linux|macOS}}
|[https://dosbox-staging.github.io/ {{DOSBoxStagingVer}}]
+
| [https://dosbox-staging.github.io {{DOSBoxStagingVer}}]
|{{✗}} ||{{✓}} ||{{✓}}
+
| {{✗}} ||{{✓}} ||{{✓}}
 
|-
 
|-
|[https://dosbox-x.com DOSBox-X]
+
| [https://dosbox-x.com/ DOSBox-X]
|align=left|{{Icon|Windows|Linux|macOS|DOS}}
+
| align=left|{{Icon|Windows|Linux|macOS|DOS}}
|[https://dosbox-x.com/ {{DOSBox-XVer}}]
+
| [https://dosbox-x.com {{DOSBox-XVer}}]
|{{✗}} ||{{✓}} ||{{✓}}
+
| {{✗}} ||{{✓}} ||{{✓}}
 
|-
 
|-
|DOSBox Pure
+
| [https://yesterplay.net/dosboxece/ DOSBox ECE]
|{{TBD}}
+
| align=left|{{Icon|Windows|Linux}}
|{{TBD}}
+
| [https://yesterplay.net/dosboxece/ SVN]
|{{}} ||{{✓}} ||{{TBD}}
+
| {{}} ||{{✓}} ||{{}}
 
|-
 
|-
|[http://www.columbia.edu/~em36/win31dosbox.html Win31DOSBox]
+
| DOSBox Pure
|align=left|{{Icon|Windows}}
+
| align=left|{{Icon|Windows|Linux|}}
|[http://www.columbia.edu/~em36/Win31DOSBox.zip 2018-12-02]
+
| [https://github.com/schellingb/dosbox-pure git]
|{{}} ||{{}} ||{{}}
+
| {{}} ||{{}} ||{{TBD}}
 
|}
 
|}
  
===Comparisons===
+
===Active forks===
 
 
 
{{Infobox emulator
 
{{Infobox emulator
 
|title = DOSBox-X
 
|title = DOSBox-X
Line 79: Line 82:
 
|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
+
|developer = Jonathan Campbell<br/>(Project 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 = [[Intel 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 88: Line 91:
 
|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 Windows 3.x and 9x (which it should be able to accelerate in the future, as well as running ME). The project also has its own [https://github.com/joncampbell123/dosbox-x/wiki wiki] which contains extensive documentation on DOSBox-X, and a summary of all the added features can be seen [https://github.com/joncampbell123/dosbox-x/wiki/DOSBox%E2%80%90X%E2%80%99s-Feature-Highlights here]. The wiki is also accessible from the [https://dosbox-x.com/wiki 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.
+
;[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]], AX, DOS/V, Tandy, PCjr, and [[NEC PC-9800 series|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.
 +
 
 +
;[https://dosbox-staging.github.io DOSBox Staging]:
 +
: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.
 +
 
 +
;[https://yesterplay.net/dosboxece/ DOSBox ECE]:
 +
: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.
 +
 
 +
;[https://github.com/schellingb/dosbox-pure DOSBox Pure]:
 +
: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.<ref name="DB-Pure_libretro">{{cite web|url=https://www.libretro.com/index.php/dosbox-pure-out-now-for-public-testing/ |title=DOSBox Pure – Out now for public testing |author='Psyraven' |website=libretro |publisher=WordPress |date=21 December 2020}}</ref>
 +
 
 +
===Others===
 +
;[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.
  
;[https://dosbox-staging.github.io/ DOSBox Staging]:
+
;[http://ykhwong.x-y.net DOSBox SVN Daum]
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.
+
: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.
  
 
;[http://www.columbia.edu/~em36/win31dosbox.html Win31DOSBox]:
 
;[http://www.columbia.edu/~em36/win31dosbox.html Win31DOSBox]:
Win31DOSBox aims to be an easy method of running Windows 3.x games through a DOSBox fork. 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.
+
: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.
+
: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.
+
: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.
  
===Others===
+
;[http://win9xbox.sourceforge.net 9xbox]
;[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.
 
: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.
;[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, 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|DOSBox-X]] fork.
 
<!--
 
 
==References==
 
==References==
 
{{Reflist}}
 
{{Reflist}}
-->
+
 
 +
 
 +
==See Also==
 +
* [[Dosbox Compatibility List]] (Small list of very old emulator builds with flaky compatibility in DOSBox)
 +
 
 
[[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]]

Revision as of 13:59, 13 May 2022

DOSBox
DOSBox.png
Developer(s) DOSBox Crew
Latest version 0.74-3
Active Yes
Platform(s) Windows
Linux
FreeBSD and more
Emulates 286 and 386
Website DOSBox.com
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

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

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.

Frontends

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

D-Fend Reloaded
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.
DOSBox Game Launcher
Another frontend based on Java that is said to be inspired by the D-Fend's.

Forks

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.

Name Platform(s) Latest Version Libretro Core Active Recommended
PC / x86
DOSBox Staging Windows Linux macOS 0.80.1
DOSBox-X Windows Linux macOS MS-DOS 2024.03.01
DOSBox ECE Windows Linux SVN
DOSBox Pure Windows Linux git TBD

Active forks

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
(Project maintainer)
Wengier, and others
Latest version 2024.03.01 [+]
Active Yes
Platform(s) Windows
macOS
Linux
DOS
Emulates Intel CPUs
NEC PC-98
Website dosbox-x.com
License GNU GPLv2
Source code GitHub
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 wiki which contains extensive documentation on DOSBox-X, and a summary of notable added features can be seen here. The project is also accessible from the GitHub website.
While DOSBox-X currently supports the IBM PC/XT/AT, AX, DOS/V, Tandy, PCjr, and 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 emulation in the event that other programmers want to add that functionality.
DOSBox Staging
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.
DOSBox ECE
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.
DOSBox Pure
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.[1]

Others

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.
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.
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

  1. 'Psyraven' (21 December 2020). DOSBox Pure – Out now for public testing. WordPress


See Also