BREAK (CONFIG.SYS directive)
| Company type | Configuration file |
|---|---|
| Industry | Computer software |
| Founded | 1983 |
| Headquarters | N/A |
| Products | Configuration file for DOS, OS/2, DR-DOS, FreeDOS, RxDOS, PTS-DOS, FlexOS |
CONFIG.SYS serves as the chief configuration file utilized by DOS and OS/2 operating systems. This plain text file, written in ASCII, holds setup commands accessible to users that the operating system's DOS BIOS interprets during the boot sequence. CONFIG.SYS was first introduced with DOS version 2.0.
Usage
The directives within CONFIG.SYS tailor DOS to accommodate hardware devices, software applications, and memory management utilities. Once CONFIG.SYS has been processed, DOS initiates the command interpreter specified on the SHELL line; if absent, it defaults to COMMAND.COM, which subsequently executes AUTOEXEC.BAT.
Typically, the file contains name=value pairs that define adjustable parameters or load components like device drivers and terminate-and-stay-resident programs (TSRs). In DOS environments, CONFIG.SYS is located in the root directory of the bootable drive.
Additionally, the filename CONFIG.SYS is employed by (DCP), a variant of MS-DOS developed by East-German manufacturer VEB Robotron.
Certain DOS distributions recognize alternative filenames that override CONFIG.SYS:
- Advanced iterations of Concurrent DOS 386, Concurrent DOS XM, Multiuser DOS, and REAL/32 utilize CCONFIG.SYS or CCONFIG.INI (specific to Multiuser DOS), while supplementary settings are stored in a binary file named CCONFIG.BIN, which is modifiable through CONFIG.EXE.
- Starting with DR DOS 3.31 and including versions like PalmDOS 1.0 and Novell DOS 7, DCONFIG.SYS supersedes CONFIG.SYS. Originally intended for disk compression utilities, it also supports multi-boot system arrangements.
- OpenDOS 7.01 and DR-OpenDOS 7.02 search for ODCONFIG.SYS; some DR-DOS releases from 7.02 onward check for DRCONFIG.SYS as well.
From DR-DOS 6.0 onwards, users can alter default configuration file extensions using SYS /DR:ext, allowing multiple sets of system files to coexist in a single root directory. These can be selected by boot loaders such as LOADER included with Multiuser DOS and DR-DOS 7.x. The SHELL command supports specifying alternate AUTOEXEC.BAT files via /P[:filename.ext]. Furthermore, the CHAIN=filespec directive permits continuation of processing from another configuration file, with optional jumps to specific labels supported in DR-DOS 7.02 and later versions.
Starting with DR-DOS 7.03, the command SYS /A copies both CONFIG.SYS and AUTOEXEC.BAT alongside system files during setup.
Other operating systems employ variant configuration filenames: FDCONFIG.SYS for FreeDOS, RXCONFIG.SYS for RxDOS, and CONFIG.PTS for PTS-DOS.
In the boot drives of both Windows 95 and Windows 98, CONFIG.SYS and AUTOEXEC.BAT files exist in the root directory but are generally left empty. Conversely, Windows Me does not process CONFIG.SYS at startup; instead, it retrieves environment variables directly from the Windows Registry.
Within the context of FlexOS, CONFIG.SYS is a binary-format file that specifies resource managers and device drivers loaded during system initialization.
Example
A sample CONFIG.SYS configuration for MS-DOS version 5: <syntaxhighlight lang="ini" line="1"> DOS=HIGH,UMB DEVICE=C:\DOS\HIMEM.SYS DEVICE=C:\DOS\EMM386.EXE RAM DEVICEHIGH=C:\DOS\ANSI.SYS FILES=30 SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P </syntaxhighlight>
:;*?!
- Defines jump targets within CONFIG.SYS for directives such as , , , and .
- Functions similarly to , but can also be used for inline comments following other directives in CONFIG.SYS. (Note: In MS-DOS/PC DOS, inline comments inside double quotes are not ignored.)
- Used at the start of inline comments alongside ;.
- Prompts a Yes/No confirmation with an optional message before executing subsequent directives in CONFIG.SYS. (FreeDOS lacks support for optional messages but allows conditional confirmations via boot menus.) (From DOS 6.0 onward, a comparable feature exists by appending a after the directive—also supported by DR DOS.)
- Forces unconditional execution of the next CONFIG.SYS command.
ATemplate:NbndC
- Determines whether programs may be terminated upon encountering errors.
- Sets which drives record file access timestamps within FAT file systems.
- Enables conditional command execution on AT-compatible computers.
- Manages the boot loader.
- Adjusts the level of detail in error message output.
- Alters the default internal serial driver assigned to the AUX device.
- Prevents character devices from being accessible outside the virtual \DEV directory.
- Loads a fundamental device driver into system memory.
- Produces a brief beep sound even if audible alerts are disabled.
- Designates the operating system to be loaded next.
- Enables or disables extended Ctrl+C interrupt checking.
- Defines the quantity of disk buffers allocated.
- Similar to BUFFERS but allocates buffers within HMA or UMB areas.
- Maximum number of cache blocks assigned from the system pool.
- Maximum duration before unused cache blocks are returned to the system pool.
- Maximum interval before dirty cache blocks are flushed to disk storage.
- Loads programs specified in CONFIG.SYS, pausing further processing until completion.
- Sets Caps Lock key status as either enabled or disabled.
- Identifies the hardware driver for CD-ROM devices.
- Specifies the number of buffers used for CD-ROM operations.
- Continues processing CONFIG.SYS from a new file or label reference.
- Defines the type of system clock in use.
- Clears the display screen.
- Specifies one or more OEM codepages.
- { { nobold | (PTS - DOS only) } }
- Indicates CMOS RAM address location.
- { { mono | 1 = COLOR } } { { nobold | (PTS - DOS only) } }
- Defines color settings for boot menu display.
- { { mono | 1 = COM1 } } { { nobold | (DR - DOS 7 .02 + ) } }
- Specifies count, sequence, I/O port address, and timeout for COM1 interface.
- { { mono | 1 = COM2 } } { { nobold | (DR - DOS 7 .02 + ) } }
- Specifies count, sequence, I/O port address, and timeout for COM2 interface.
- { { mono | 1 = COM3 } } { { nobold | (DR - DOS 7 .02 + ) } }
- Specifies count, sequence, I/O port address, and timeout for COM3 interface.
- { { mono | 1 = COM4 } } { { nobold | (DR - DOS 7 .02 + ) } }
- Specifies count, sequence, I/O port address, and timeout for COM4 interface.
- { { mono | 1 = COMAREA } } { { nobold | (PTS - DOS only) } }
- Indicates buffer allocation for DMA operations.
- { { mono | 1 = COMMENT } } { { nobold | (DOS 4 .0 + , RxDOS , ignored under DR - DOS 7 .02 + , Embedded DOS , PTS - DOS ) } }
- Redefines inline comment lead characters or causes subsequent line to be skipped.
- { { mono | 1 = COUNTRY } } { { nobold | (DOS 3 .0 , DOS Plus 2 .1 with FIDDLOAD , DR - DOS 3 .31 + , OS/2 , PTS - DOS ) } }
- Activates and configures internationalization support options.
- { { mono | 1 = CPOS } } { { nobold | (DR - DOS 6 .0 + ) } }
- Sets cursor position on screen for configuration menus.
- { { mono | 1 = CPSW } } { { nobold | (MS - DOS 4 .00 -4 .01 only , ignored under DR - DOS 7 .02 + )} }
- Supports codepage switching functionality.
- { { mono | 1 = CPU} }{ { nobold | (PTS - DOS only) }}
- Defines RAM refresh rate parameters.
- CPU88, CPU88+, CPU86, CPU86+, CPU286, CPU286+, CPU386, CPU386+, CPU486, CPU486+ directives control conditional execution based on CPU model or generation (support varies between PTS-DOS and DR-DOS).
DTemplate:NbndF
- Adjusts relocation settings for drive descriptor tables.
- Sets memory segment limit up to which multi-sector disk data deblocking is permitted.
- Activates internal debugger capabilities.
- Controls boot manager functions.
- Loads device drivers into memory space.
- Loads device drivers into upper memory blocks (equivalent to similar command in DRDOS 5.0).
- Configures country and codepage parameters for keyboard, screen, and printer devices.
- Defines sizes of cache memory allocations.
- Sets compatibility modes for floppy disk drives.
- Specifies font used by display device.
- Determines whether DOS loads into high memory or upper memory areas (similar to DRDOS 5.0 behavior).
- Loads DOS internal tables such as BUFFERS, FCBS, FILES, LASTDRIVE, STACKS into upper memory regions.
- Specifies an alternate directory path for locating DOS files.
- Defines search paths used for data file retrieval.
- Sets physical parameters for disk drives at hardware level.
- Establishes parameters applied to unrecognized disk drives.
- See .
- Enables error logging and designates drive location for PDUMP.nnn files containing error reports.
- Displays a textual message on the screen output device.
- Displays messages including ANSI escape sequences for enhanced formatting control.
- Adds extra verification checks when launching programs.
- Defines expected error or return codes from executed programs.
- Sets A20 line gate status during program startup phase.
- Terminates CONFIG.SYS processing prematurely except when SWITCHES and SHELL directives apply under certain conditions.
- Configures size of hash table used to accelerate file opening operations, differing from MS-DOS/PC DOS FASTOPEN driver implementation.
- Determines maximum number of cached File Control Blocks (FCBs) open simultaneously (shares buffer space with FILES directive under DR-DOS).
- Functions like FCBS but loads cached FCBs into upper memory areas instead of conventional memory space.
- Boot manager control command variant.
- Specifies total number of files allowed open concurrently by the system.
- Functions similarly to FILES but loads file handle tables into upper memory segments rather than conventional memory space.
- Allows execution of designated CONFIG.SYS subsections as referenced by IGNORE directive.
GTemplate:NbndI
- Awaits a key input or timeout, setting the error level to the ASCII value or 1024 if timed out.
- Resumes processing of CONFIG.SYS at the given label.
- Continues nested CONFIG.SYS processing at a label, with to return afterward.
- Refer to , , or for additional details.
- Consult for further information.
- See for related commands.
- Refer to or as applicable.
- See or for more context.
- Consult for relevant instructions.
- Loads a TSR program after relocating the DOS data segment; compare with INSTCDEX.
- Refer to , , or for related functionality.
- See for supplementary details.
- Consult or for additional context.
- Activates console and command line history buffer with advanced search capabilities.
- Defines the address of the HMA segment.
- Configures the HLT power-saving mode.
- Enables checking of boot sector viruses.
- Loads installable file system drivers.
- Excludes execution of certain CONFIG.SYS subsections.
- Permits specified programs to execute at ring 2, granting direct hardware I/O access.
- Incorporates directives from another menu block (can be emulated using GOSUB/RETURN in DR-DOS).
- Sets the keyboard Insert mode status.
- Installs a TSR program into memory.
- Installs TSR into upper memory area (equivalent to HIINSTALL in DR DOS 5.0).
- Loads a TSR after DOS data segment relocation; compare with INSTCDEX.
- Rotates PIC interrupt priorities to give precedence to a specified IRQ number.
KTemplate:NbndM
- Defines the keyboard layout configuration.
- Specifies the relocated address of the keyboard buffer.
- Sets the maximum number of accessible drives.
- Similar to LASTDRIVE but additionally loads Current Directory Structure into upper memory.
- Lists paths for DLL searches.
- Manages backward compatibility for legacy applications.
- Establishes the quantity of file locks allowed.
- Configures boot logo display when using PTS-DOS boot manager.
- Defines count, sequence, I/O address, and timeout settings for LPT1 device.
- Defines count, sequence, I/O address, and timeout settings for LPT2 device.
- Defines count, sequence, I/O address, and timeout settings for LPT3 device.
- Enables and sets parameters for LPT4 device operation.
- Determines delay before increasing process priority level.
- Configures memory allocation methods and policies.
- Specifies default strategy for DOS memory allocation.
- Defines options available in menus.
- Sets color schemes for menus (can be emulated in DR-DOS).
- Selects default menu block (emulatable in DR-DOS).
- Defines individual menu blocks (emulatable in DR-DOS).
- Enables support for multitrack disk operations.
- Continues CONFIG.SYS processing from a new file after driver loading and setting %NEWFILE% environment variable.
NTemplate:NbndQ
- Sets default "No" character used in Yes/No/Resume prompts.
- Specifies status of keyboard [[Num Lock|Template:Keypress]] key at startup.
- Enables conditional execution based on previous error code, e.g., .
- Displays a message and waits for keypress, similar to DR-DOS's and .
- Requires user confirmation upon errors in CONFIG.SYS processing.
- Configures buffer size settings for LPT ports.
- Enables conditional execution on PC-compatible systems.
- Sets process scheduling priority level.
- Adjusts priority specifically for disk I/O operations programs.
- Changes default printer device driver assignment (between LPT1, LPT3, or LPT4).
- Determines whether DOS programs are permitted to run.
- Loads user interface shell environment.
- Conditional execution on IBM PS/1-compatible hardware platforms.
- Conditional execution on IBM PS/2-compatible hardware platforms.
- Suppresses output directed to STDOUT.
RTemplate:NbndT
- Activates automatic system reboot upon encountering errors.
- Permits inclusion of comments within CONFIG.SYS.
- Allocates a drive letter reserved for local block device drivers.
- Establishes the default character for Resume () prompts.
- Returns control from nested CONFIG.SYS processing to the original GOSUB or SWITCH location, optionally providing a return code.
- Specifies the size of real mode memory.
- Allows programs in CONFIG.SYS to load concurrently in the background, functioning similarly to CALL or INSTALL commands under DOS.
- Indicates that the first character of deleted files should be stored in the reserved FAT area.
- Sets video display mode under FreeDOS or determines screen access methods for PTS-DOS.
- Configures the status of the keyboard Scroll Lock key.
- Assigns environment variables.
- Loads the command interpreter shell.
- Functions like SHELL but includes a size parameter for pre-allocating COMMAND.COM within HMA or UMBs, optimizing memory use with third-party shells.
- Defines keyboard modifier states such as Shift Lock, Num Lock, Scroll Lock, and Insert mode.
- Determines whether files close during Ctrl+Alt+Del reboot sequences.
- Skips the Power-On Self-Test (POST) during rebooting.
- , STACKSIZE, STACKSHIGH
- Manage hardware interrupt stack sizes and memory allocation across different DOS versions, with applicability specified per system.
- , SYSBOOT, SYSGEN, SYSLOAD, SYSTOUMB
- PTS-DOS commands that handle boot configurations, system memory layouts, and loading locations to enhance performance.
- , SWITCH, SWITCHAR
- Commands that enable conditional processing within CONFIG.SYS and define switch characters (such as '/' or '-') across various DOS versions.
- , SWAPPATH
- OS/2 directives that specify locations for error logs and swap file paths to improve system stability.
- , TIMESLICE
- Adjust timeouts for CONFIG.SYS processing and scheduler time slices in DR DOS, PTS-DOS, and OS/2 environments.
- , TRACE, TRACEBUF
- Control temporary file extensions and enable detailed tracing of CONFIG.SYS execution with adjustable buffer sizes on multiple platforms.
- , THREADS
- OS/2 settings that control error logging detail and specify concurrent thread counts to optimize multitasking efficiency.
UTemplate:NbndZ
- Assigns a designated segment for use as an Upper Memory Block (UMB) in DOS.
- Configures the UMB server functionality.
- Defines address ranges allocated as UMB RAM.
- Toggles disk write verification on or off.
- Specifies the DOS version reported to applications.
- Manages VGA display status settings.
- Sets the current video mode similarly to FreeDOS's SCREEN command.
- Enables virtual DMA capabilities.
- Controls processor Virtual Mode Extensions (VME).
- Configures VxD driver parameters for Windows environments.
- Sets up Windows system support options.
- Adjusts relocation of the Extended BIOS Data Area (EBDA).
- Enables conditional execution on XT-compatible hardware.
- Configures built-in Year 2000 (Y2K) compliance support.
- Sets the default character used for Yes responses in prompts.
- Controls tracking of file deletions.
Issues
Although the system can start without CONFIG.SYS or AUTOEXEC.BAT files, these are critical for comprehensive operating system customization and meeting software requirements. Any corruption or damage necessitates troubleshooting.
If a SHELL directive is absent from CONFIG.SYS—or if CONFIG.SYS itself is missing or damaged—DOS attempts to locate COMMAND.COM in the root directory of the boot drive. Earlier DOS iterations will fail to boot without this file, whereas MS-DOS 6.0/PC DOS 6.1 and Novell DOS 7+ provide prompts requesting a command interpreter path, enabling limited runtime shell substitution.
Due to incompatibilities between MS-DOS 7+ COMMAND.COM and DR-DOS, versions of DR-DOS from 7.02 onward enforce SHELL directives when running in skip or trace modes to prevent conflicts in dual-boot setups. Users are prompted to specify a valid shell if none is found during CONFIG.SYS skipping.
The size of CONFIG.SYS is restricted to several kilobytes in MS-DOS/PC DOS (up to 64 KB in newer versions), while DR-DOS imposes no such limit by processing directives line-by-line. This allows precise management of driver and TSR loading sequences, facilitating conflict resolution as well as integration of debuggers or temporary utilities via INSTALL.
In MS-DOS/PC DOS versions from 2.0 through 4.01, the maximum length of a SHELL command line is limited to 31 characters. Later releases increase this limit to 128 characters, while DR-DOS permits up to 255 characters. Notably, CONFIG.SYS directives do not support long filenames.
Dual Booting with DOS and Windows 9x
When Windows 95 is installed over a pre-existing DOS or Windows environment, the system renames CONFIG.SYS and AUTOEXEC.BAT to CONFIG.DOS and AUTOEXEC.DOS, enabling dual boot functionality. During a DOS startup, these renamed files are temporarily switched back to CONFIG.SYS and AUTOEXEC.BAT. Backup copies of Windows 95 configuration files are saved as CONFIG.W40 and AUTOEXEC.W40.
In setups where Caldera DR-DOS versions 7.02 or 7.03 coexist with Windows 95, the original Windows CONFIG.SYS and AUTOEXEC.BAT remain intact. Instead, DR-DOS employs DCONFIG.SYS and AUTODOS7.BAT for its boot-time configurations.
OS/2 and Windows NT
OS/2 relies heavily on CONFIG.SYS to set up drivers and environment variables before launching its graphical user interface.
Within the OS/2 environment provided by Windows NT, the settings traditionally stored in CONFIG.SYS files are instead maintained within the system registry.
OS/2 includes several undocumented CONFIG.SYS commands, highlighting its intricate system configuration requirements.
The use of CONFIG.SYS continues to be essential in OS/2-based systems such as eComStation and ArcaOS.
See also
- IBMBIO.COM / IO.SYS
- IBMDOS.COM / MSDOS.SYS
- CONFIG (environment variable)
- AUTOEXEC.BAT
- COMMAND.COM
- List of DOS commands
External links
- Information on AUTOEXEC.BAT and CONFIG.SYS at Computer Hope
- Overview of Windows 98 / MS-DOS 7.10 CONFIG.SYS directives (archived)
- Caldera's CONFIG.SYS Command Reference (archived) – details on DR-DOS 7 commands
- FreeDOS CONFIG.SYS directives explained
- PTS-DOS 2000 Pro User Guide including CONFIG.SYS instructions (archived)
- Unofficial German FAQ for PTS-DOS covering CONFIG.SYS directives (archived)