DOS¶
DOSBox Staging doesn’t just run old programs — it emulates the MS-DOS operating environment underneath them. Games talk to this emulated DOS directly: they check its version number and rely on quirks of how its shell behaves. When an old game misbehaves, one possible reason is that the emulated DOS doesn’t match what the game expects. These settings let you close that gap.
DOS version and compatibility¶
The ver setting controls which DOS version is reported to programs.
The default 5.0 is the most widely compatible. Some older games require
3.3, while a few late-era programs need 6.22 or 7.1. If you need to
report a different version to just one program without changing the global
setting, use setver_table_file with SETVER.EXE.
Setting the DOS version to 7.0 or above also turns on environment variable
expansion in the shell by default (see
expand_shell_variable).
The file_locking setting emulates SHARE.EXE file
locking, which some Windows 3.1 applications need to work properly. It’s on
automatically when Windows 3.1 is running. If a DOS game crashes with file
locking on, try setting it to off.
Shell behaviour¶
The shell supports persistent
command history, stored
via shell_history_file; set that to empty to turn
history off. expand_shell_variable controls
whether things like %PATH% get expanded in commands, and
shell_config_shortcuts lets you type sbtype
sb16 instead of config -set sbtype sb16.
Automount¶
automount turns automatic drive mounting on or off. For how
automounting actually works — the drives/ folder structure, mount-config
files, and so on — see
Automounting.
Regional settings¶
For language, country, keyboard layout, and code page settings, see the dedicated Localisation chapter.
Configuration settings¶
Shell & version¶
You can set the DOS parameters in the [dos] configuration section.
ver¶
- Set DOS version in
MAJOR.MINORformat (5.0by default). A single number is treated as the major version. Common settings are3.3,5.0,6.22, and7.1.
expand_shell_variable¶
-
Enable expanding environment variables such as
%PATH%in the DOS command shell. FreeDOS and MS-DOS 7.0+COMMAND.COMsupport this behaviour.Possible values:
autodefault – Enabled if DOS version is 7.0 or above.on– Enable expansion of environment variables.off– Disable expansion of environment variables.
file_locking¶
-
Enable file locking via emulating
SHARE.EXE. This is required for some Windows 3.1 applications to work properly. It generally does not cause problems for DOS games except in rare cases (e.g., Astral Blur demo). If you experience crashes related to file permissions, you can try disabling this.Possible values:
autodefault – Enable file locking only when Windows 3.1 is running.on– Always enable file locking.off– Always disable file locking.
setver_table_file¶
- File containing the list of applications and assigned DOS versions, in a
tab-separated format, used by
SETVER.EXEas a persistent storage (empty by default).
shell_history_file¶
- File containing persistent command line history (
shell_history.txtby default). Setting it to empty disables persistent shell history.
Startup & shell shortcuts¶
You can set these parameters in the [dosbox] configuration section.
autoexec_section¶
-
How autoexec sections are handled from multiple config files.
Possible values:
joindefault – Combine them into one big section.overwrite– Use the last one encountered, like other config settings.
automount¶
-
Mount
drives/[c]folders as drives on startup, where[c]is a lower-case drive letter fromatoy. Thedrivesfolder can be provided relative to the current folder or via built-in resources. Mount settings can be optionally provided using a[c].conffile alongside the drive’s folder.Possible values:
ondefault,off
startup_verbosity¶
-
Controls verbosity prior to displaying the program.
Possible values:
autodefault –lowif exec or dir is passed, otherwisehigh.high– Show welcome banner and early stdout.low– Show early stdout only.quiet– Don’t show welcome banner or early stdout.
shell_config_shortcuts¶
-
Allow shortcuts for simpler configuration management. E.g., instead of
config -set sbtype sb16, it is enough to executesbtype sb16, and instead ofconfig -get sbtype, you can just execute thesbtypecommand.Possible values:
ondefault,off
allow_write_protected_files¶
-
Many games open all their files with writable permissions; even files that they never modify. This setting lets you write-protect those files while still allowing the game to read them. A second use-case: if you’re using a copy-on-write or network-based filesystem, this setting avoids triggering write operations for these write-protected files.
Possible values:
ondefault,off
mcb_fault_strategy¶
-
How software-corrupted memory chain blocks should be handled.
Possible values:
repairdefault – Repair (and report) faults using adjacent blocks.report– Report faults but otherwise proceed as-is.allow– Allow faults to go unreported (hardware behaviour).deny– Quit (and report) when faults are detected.