Jump to content

DOSBox

From Alfawiki
DOSBox
Company typeOpen-source software
IndustrySoftware, Emulation
Founded2002; 24 years ago (2002)
FounderPeter Veenstra, Sjoerd van der Berg
Area served
Worldwide
ProductsMS-DOS emulator
OwnerOpen-source community
Websitewww.dosbox.com

DOSBox is an open-source and freely available MS-DOS emulator created to execute software—mainly video games—that depend on DOS, whose original hardware platforms are now outdated. Initially launched in 2002 during the waning period of DOS technology, DOSBox has become widely used, especially in commercial re-releases of vintage games.

Development

Prior to Windows XP, consumer editions of Windows were built upon MS-DOS. Versions such as Windows 3.0 and its subsequent updates operated as operating environments running atop MS-DOS, while the Windows 9x lineup remained fundamentally DOS-based, allowing execution of DOS programs. Conversely, the Windows NT series did not rely on DOS. Released on October 25, 2001, Windows XP was the first consumer Windows edition to exclude DOS entirely. Although Windows XP featured DOS emulation, many applications requiring direct hardware interaction in real mode were incompatible due to XP’s protected mode, introduced to enhance system security. Official MS-DOS support persisted until late 2001, with all support for DOS-based Windows editions discontinued on July 11, 2006.

The inception of DOSBox development coincided with the release of Windows 2000, a member of the Windows NT family. Dutch developers Peter Veenstra and Sjoerd van der Berg identified a decline in DOS software compatibility. Existing solutions lacked features such as windowed operation or scalable graphics for DOS programs. They released DOSBox as a beta version on SourceForge on July 22, 2002.

Features

DOSBox operates as a command-line application, configurable through command-line parameters or a straightforward text-based configuration file. To enhance user accessibility, multiple graphical front ends have been created by the community.

Although the project aims to support all PC applications, its primary emphasis is on running DOS games. The standard version does not accommodate long filenames; instead, it requires filenames to conform to the 8.3 format (up to eight characters for the name and three for the extension). While versions supporting long filenames exist, they may introduce compatibility issues with legacy software. The standard release prioritizes gaming functionality and may omit features like Ctrl-Break handling. Alternative builds provide extended capabilities, including Advanced Power Management (APM) shutdown, direct parallel port passthrough for printing tasks, and support for East Asian character sets.

Because DOSBox interacts directly with the host operating system’s file structure, there is a potential vulnerability to DOS-based malware; however, these risks are mitigated through consistent updates and patches.

Users can capture screenshots and record videos of their DOS sessions (video playback requires an appropriate codec). Additionally, it supports recording audio from Yamaha OPL sound cards and MIDI instructions, with options to save sound output as WAV files. Keyboard keys and gamepad buttons can be reassigned to different keys or combinations to improve control flexibility.

OS emulation

As a comprehensive system emulator, DOSBox provides BIOS interrupt services alongside its own internal DOS-like command shell, enabling operation without needing an actual DOS license. It supports most COMMAND.COM commands but does not include some advanced commands introduced in later MS-DOS releases. Beyond its built-in shell, DOSBox can execute software image files designed to boot independently of an operating system. It also emulates environments suitable for running Windows 3.0 and associated applications, as well as Windows versions within the Windows 9x series.

Upon startup, DOSBox automatically mounts a virtual and persistent Z: drive that contains its internal commands and utilities; this design primarily serves security purposes. Users have the ability to mount additional drives—such as directories from the host system, disk image files, floppy disks, or CD-ROMs—to access external data. Configuration files featuring an AUTOEXEC section allow for customized settings and automatic command execution during launch.

Hardware emulation

DOSBox executes DOS applications requiring either real or protected CPU modes by interpreting the processor instructions, thereby remaining independent from the host system's CPU architecture. On platforms such as x86, ARM, or other RISC-based CPUs, it can employ dynamic binary translation to enhance execution speed. Users have the option to manually fine-tune the emulated CPU frequency to replicate the performance characteristics of original hardware.

For handling graphics, audio, and input devices, DOSBox utilizes the Simple DirectMedia Layer (SDL) library. It supports rendering through DirectDraw and OpenGL interfaces and can apply bilinear filtering and scaling techniques to optimize visuals for modern screens. The graphical emulation encompasses various display adapters including text mode, Hercules, CGA, EGA, VGA, VESA, S3 Trio 64, and Tandy graphics cards. Audio emulation covers PC speaker sounds, AdLib, Gravis Ultrasound (which requires separate driver installation), Sound Blaster series, Disney Sound Source, Tandy sound system, and MPU-401 MIDI interface.

Networking capabilities in DOSBox include emulation of serial null modem connections over TCP/IP as well as IPX protocol tunneling, allowing multiplayer gameplay across local networks or the internet. It also simulates PC joystick ports with configurable support for a variety of joystick and gamepad models such as the Thrustmaster Flight Control System and CH Flightstick devices. Compatibility with newer controllers depends on adherence to these predefined configuration profiles.

Reception

DOSBox has established itself as the de facto emulator for running DOS-era games. Rock, Paper, Shotgun commended its continuous development updates, significant impact on PC gaming preservation, and the availability of user-friendly graphical interfaces. Writer Michael Reed praised its high-quality graphics scaling and strong emphasis on compatibility but pointed out limitations including the lack of save state functionality and restricted runtime control despite third-party front-end solutions. DOSBox earned the distinction of SourceForge's Project of the Month twice—in May 2009 and again in January 2013—making it the first project to receive this honor twice. By July 2008, it had surpassed 10 million downloads on SourceForge and exceeded 25 million downloads by October 2015.

Usage

Starting in January 2011, developers of Wine incorporated DOSBox to handle DOS applications that Wine's native Virtual DOS Machine could not support. From January 2015 onward, the Internet Archive began adding thousands of DOS games to its digital software collection, which contained 6,934 titles as of October 2019. This archive is made available solely for educational and research use.

Forks

  • Em-DOSBox employs Emscripten to transpile DOSBox’s C++ source code into JavaScript, enabling MS-DOS games to run natively within web browsers.
  • DOSBox-X targets extensive compatibility with all DOS and Windows 9x hardware configurations predating the year 2000.
  • DOSBox Staging emphasizes modernizing the codebase with improved programming practices alongside additional features.
  • DOSBox Pure is a version designed as a libretro core that adds functionalities such as save states and rewind capability.
  • jDOSBox is a pure Java x86 emulator derived from DOSBox intended to run DOS games and boot various Windows versions and some Linux distributions inside browsers (prior to Java applet deprecation).

Commercial

As the most prevalent DOS emulator available today, DOSBox is frequently utilized by developers reissuing classic games on contemporary platforms. id Software leveraged DOSBox to bring back titles like Wolfenstein 3D and Commander Keen on Steam; a brief licensing issue under GNU GPL was swiftly addressed. Activision Blizzard used it for Sierra Entertainment’s legacy DOS catalog, while LucasArts adopted it for Steam and GOG.com releases of Star Wars: Dark Forces and Star Wars: TIE Fighter. Producer Jason Bergman from 2K Games confirmed that Steam rereleases of the XCOM series also utilize DOSBox. Bethesda Softworks recommended using DOSBox for running The Elder Scrolls: Arena and The Elder Scrolls II: Daggerfall, bundling it within The Elder Scrolls Anthology collection.

Electronic Arts' Origin platform integrates DOSBox for its lineup of DOS titles including classics like Syndicate and SimCity 2000.

See also

Sources

External links