======================================================================
= DOSBox =
======================================================================
Introduction
======================================================================
DOSBox is a free and open-source MS-DOS emulator. It supports running
programs primarily video games that are otherwise inaccessible since
hardware for running a compatible disk operating system (DOS) is
obsolete and generally unavailable today. It was first released in
2002, when DOS technology was becoming obsolete. Its adoption for
running DOS games is relatively widespread; partially driven by its
use in commercial re-releases of games.
Development
======================================================================
Before Windows XP, consumer-oriented versions of Windows were based on
MS-DOS. Windows 3.0 and its updates were operating environments that
ran on top of MS-DOS, and the Windows 9x series consisted of operating
systems that were still based on MS-DOS. These versions of Windows
could run DOS applications. Conversely, the Windows NT operating
systems were not based on DOS. A member of the series, Windows XP,
debuted on October 25, 2001; this version of Windows became the first
consumer-oriented version of Windows to not use DOS. Although Windows
XP could emulate DOS, it could not run many of its applications as
they ran only in real mode to directly access the computer's hardware,
and Windows XP's protected mode prevented such direct access for
security reasons. MS-DOS continued to receive support until the end of
2001, and all support for any DOS-based Windows operating system ended
on July 11, 2006.
The development of DOSBox began around the launch of Windows 2000--a
Windows NT system--when its creators, Dutch programmers Peter Veenstra
and Sjoerd van der Berg, discovered that the operating system had
dropped much of its support for DOS software. The two knew of
solutions at the time, but they could not run the applications in
windowed mode or scale the graphics. The project was first uploaded to
SourceForge and released for beta testing on July 22, 2002.
Features
======================================================================
DOSBox is a command-line program, configured either by a set of
command-line arguments or by editing a plain text configuration file.
For ease of use, several graphical front ends have been developed by
the user community.
While the DOSBox project hopes that one day the emulator will run all
programs ever made for the PC, the goal is not yet reached, and as of
the latest version the primary focus has been on DOS gaming. The basic
version does not support long filenames, most versions of DOS do not
support them, and filenames must follow the 8.3 name.extension
pattern: a maximum of 8 characters for the name and up to 3 characters
for the extension. Otherwise, filenames will be altered to fit the
pattern.
There are versions available on the DOSBox website that support long
filenames, at the cost of possible incompatibility with some older
programs.
The focus of the vanilla version is on gaming, and features such as
support for Ctrl-Break may be missing. Some of the alternative
versions support features not present in the vanilla version such as
APM power off, direct parallel port passthrough for printing, and
support for East Asian characters.
Because DOSBox accesses the host computer's file system, there thus is
a risk of DOS malware exploiting the emulator's security
vulnerabilities and causing damage to the host machine, although these
vulnerabilities continue to be patched with new DOSBox updates.
Users can also capture screenshots and record videos of DOS sessions,
although a codec is required to play the videos. It is also possible
to record OPL sound card and MIDI commands, as well as save sound
output on a WAV file. Keyboard keys and the buttons of a game
controller can be mapped to other keys and combinations thereof.
OS emulation
==============
DOSBox is a full-system emulator that provides BIOS interrupts and
contains its own internal DOS-like shell. This means that it can be
used without owning a license to any real DOS operating system. Most
commands that are found in COMMAND.COM are supported, but many of the
more advanced commands found in the latest MS-DOS versions are not. In
addition to its internal shell, it also supports running image files
of games and software originally intended to start without any
operating system. Besides emulating DOS, users can also run Windows
3.0 and applications designed for it, as well as versions of Windows
within the Windows 9x family.
When the DOSBox application is opened, it automatically mounts to a
virtual, permanent Z: drive that stores DOSBox commands and utilities.
The reasons for the virtual drive are related to security, but the
user can mount a different drive letter in the emulator to a
directory, image file, floppy disk drive, or CD-ROM drive on the host
to access its data. A configuration file and its AUTOEXEC section can
be used to respectively configure DOSBox settings and execute DOS
commands at startup.
Hardware emulation
====================
DOSBox is capable of running DOS programs that require the CPU to be
in real mode or protected mode. Since DOSBox can emulate its CPU by
interpretation, the environment it emulates is completely independent
of the host CPU. On systems which provide the x86, ARM, or other RISC
instruction sets, however, DOSBox can use dynamic instruction
translation to accelerate execution. The emulated CPU speed of DOSBox
is also manually adjustable by the user to accommodate the speed of
the systems for which DOS programs were originally written.
DOSBox uses the Simple DirectMedia Layer external library to handle
graphics, audio, and input devices. Graphically, it can use the
DirectDraw or OpenGL APIs, and can also use bilinear interpolation and
scale graphics for computers with modern displays. Graphical emulation
includes text mode, Hercules, CGA, EGA, VGA, VESA, S3 Trio 64, and
Tandy. Sound emulation includes the PC speaker, AdLib, Gravis
Ultrasound, Sound Blaster, Disney Sound Source, Tandy, and MPU-401.
However, because DOSBox does not come packaged with Gravis Ultrasound
drivers, they need to be installed separately for full support.
DOSBox can simulate serial null modems using the TCP/IP protocol and
IPX network tunneling, which allows for DOS multiplayer games using
one of them to be played over local area networks or the Internet. It
can also simulate the PC joystick port, with limited options being to
emulate one joystick with four axes and four buttons; one gamepad with
two axes and six buttons; two joysticks each with two axes and two
buttons; a Thrustmaster Flight Control System joystick that has three
axes, four buttons, and a hat switch; and a CH Flightstick with four
axes, six buttons that can be pressed only one at a time, and a hat
switch. Newer joysticks and gamepads will need to use one of these
configurations to function.
Reception
======================================================================
DOSBox has become the 'de facto' standard for running DOS games.
'Rock, Paper, Shotgun' positively remarked on the project's continual
reception of updates, its influence on PC gaming, and some front ends
designed to facilitate using it. Freelance writer Michael Reed lauded
the quality of scaled graphics and the project's overall focus on
compatibility and accurate emulation, but criticized the lack of both
save states and user-friendly control over the emulator during
runtime, even with the front ends available at the time of his review.
DOSBox was named SourceForge's Project of the Month in May 2009 and
again in January 2013, making it the first project in the website's
history to receive two Project of the Month awards. On the SourceForge
website, it reached 10 million downloads on July 21, 2008, and was
downloaded more than 25 million times as of October 2015.
Usage
======================================================================
Since January 2011, the developers of the Wine compatibility layer
have integrated DOSBox into Wine to facilitate running DOS programs
that are not supported natively by the Wine Virtual DOS machine.
Since January 2015, the Internet Archive has added thousands of DOS
games to its software library. , the DOS library contained 6,934
games. The collection is provided for "scholarship and research
purposes only".
Forks
=======
* Em-DOSBox uses Emscripten to convert the emulator's C++ code to
JavaScript, making the games playable in a web browser.
* DOSBox-X aims to be compatible with all pre-2000 DOS and Windows 9x
based hardware scenarios.
* DOSBox Staging aims to be a modern continuation of DOSBox; with
modern coding practices and advanced features.
* DOSBox Pure is a libretro core that implements DOSBox, with some
additional features such as state saving and rewind.
* jDOSBox is a pure Java x86 emulator based on DOSBox. It was created
to run all DOS games as well as DOSBox, but in the browser (before
Java applets were discontinued). In addition, it will boot up Windows
95/98, Windows NT 4.0, Windows XP, ReactOS and some flavors of Linux
such as DSL.
Commercial
============
DOSBox has also been both the most used DOS emulator and, because of
the straightforward process of making the games work on modern
computers, the most popular emulation software for developers
re-releasing legacy versions of their games. id Software has used
DOSBox to re-release vintage games such as 'Wolfenstein 3D' and
'Commander Keen' on Valve's Steam. In the process, it was reported
they violated the program's license, the GNU GPL, by not packaging the
license text; the breach, which was reported as an oversight, was
promptly resolved. Activision Blizzard has also used it to re-release
Sierra Entertainment's DOS games. LucasArts used it to rerelease 'Star
Wars: Dark Forces' and 'Star Wars: TIE Fighter' for modern machines on
Steam and GOG.com. 2K Games producer Jason Bergman stated the company
used DOSBox for Steam rereleases of certain installments of the 'XCOM'
series. Bethesda Softworks has recommended DOSBox and provided a link
to the DOSBox website on the downloads page for 'The Elder Scrolls:
Arena' and 'The Elder Scrolls II: Daggerfall'. It also included DOSBox
with both games in 'The Elder Scrolls Anthology' release.
Electronic Arts' Origin client uses DOSBox for the platform's DOS
games, including Electronic Arts titles such as 'Syndicate' and
'SimCity 2000'.
License
=========
All content on Gopherpedia comes from Wikipedia, and is licensed under CC-BY-SA
License URL:
http://creativecommons.org/licenses/by-sa/3.0/
Original Article:
http://en.wikipedia.org/wiki/DOSBox