LinuxCommandLibrary

dosbox

Emulate MS-DOS environment

TLDR

Start DOSBox with default settings

$ dosbox
copy

Run a DOS executable located at a specific path
$ dosbox [path/to/executable.exe]
copy

Mount a folder as C: and run an executable
$ dosbox [path/to/executable.exe] -c "MOUNT C [path/to/folder]"
copy

Start DOSBox in fullscreen mode
$ dosbox -fullscreen
copy

Exit DOSBox automatically after running a program
$ dosbox [path/to/executable.exe] -exit
copy

SYNOPSIS

dosbox [-fullscreen] [-conf configfile] [-lang lang] [-nogui] [file]

PARAMETERS

-exit
    Exit DOSBox after DOS program terminates.

-fullscreen
    Start in fullscreen; toggle with Alt-Enter.

-lang <languagecode>
    Load specified language file (e.g., <en>).

-machine <svga_s3|svga_et4000|svga_paradise|svga_sip|pcjr|cga|hercules|tandy>
    Set machine type emulation.

-noconsole
    Start without console window (Windows-specific).

-noautoexec
    Skip [autoexec] section in config file.

-nogui
    Disable graphical user interface.

-scaler <normal|hqnn|hqnn3x|hqnn4x|hq4xs|hq4xS|hq4xSHQ|hq4xSHQ|hq3x|hq3xS|hq3xSHQ|hq3xSHQ3x|hq2x|hq2xS|hq2xSHQ|hq2xSHQ2x|2xsai|super2xsai|supereagle|tv2x|tv3x|rgb2x|rgb3x|scan2x|scan3x>
    Apply graphics scaler.

-conf <configfile>
    Use alternate configuration file.

-userconf
    Generate/use user-specific config file.

-printlog <logfile>
    Write debug output to file.

-set <name value>
    Override config setting (e.g., -set cycles=20000).

-eraseconf
    Delete configuration file.

DESCRIPTION

DOSBox emulates an IBM PC-compatible computer running MS-DOS, enabling execution of old DOS applications and games on modern Linux systems.

It provides a complete DOS environment with features like 286/386 CPU emulation, XMS/EMS memory support, floppy/HDD/CD-ROM emulation, joystick/gamepad support, and customizable scalers/filters for graphics. On Linux, DOSBox uses SDL for cross-platform compatibility, supporting windowed/fullscreen modes and MIDI sound via ALSA/Timidity.

Typical workflow: launch DOSBox, use the MOUNT command to map host directories to virtual drives (e.g., MOUNT C ~/dosgames), then run executables like game.exe. Highly configurable via dosbox.conf, with options for cycles, frameskip, and mixer settings. Ideal for 80s/90s software, though performance varies; modern forks like DOSBox-X offer enhancements.

Installed via apt install dosbox or similar; man page details full usage.

CAVEATS

Performance may be slow for CPU-intensive apps; adjust cycles in config.
Sound/MIDI requires setup (e.g., Timidity daemon).
Linux: Needs SDL2; fullscreen may conflict with compositing.
No native Wayland support in older versions.

MOUNTING DRIVES

Inside DOSBox: MOUNT C ~/dosgames maps directory to C: drive.
IMGMOUNT A mydisk.img -t floppy for images.

CONFIG LOCATIONS

Linux: ~/.dosbox/dosbox-0.74-3.conf or /etc/dosbox.conf.
Edit for CPU cycles, mixer, screen modes.

KEY MAPPINGS

Default: Ctrl-F11/F12 for cycles adjust; Alt-Pause pauses emulation.
Customizable in [sdl] or [dosbox] config sections.

HISTORY

DOSBox project began in 2002 by Sander Buskens and others for cross-platform DOS emulation. Stable release 0.74-3 (2020) added ARM support and fixes. Maintained by DOSBox Team; forks like DOSBox-X, DOSBox Staging enhance features for modern hardware.

SEE ALSO

wine(1), qemu(1), dosemu(1), scummvm(1)

Copied to clipboard