LPT3 (CONFIG.SYS directive)
| Company type | Configuration file |
|---|---|
| Industry | Operating systems |
| Founded | 1983 |
| Products | System configuration for DOS and OS/2 |
CONFIG.SYS serves as the main configuration file for DOS and OS/2 operating systems. This plain text file, written in ASCII, holds setup instructions accessible to users, which the operating system's DOS BIOS interprets during the startup sequence. CONFIG.SYS was first introduced with DOS version 2.0.
Usage
The directives within CONFIG.SYS tailor DOS to manage devices, applications, and memory allocation. Once CONFIG.SYS has been processed, DOS initiates the command shell specified by the SHELL command; if none is defined, it defaults to COMMAND.COM, which then executes AUTOEXEC.BAT.
Typically, the file is composed of name=value pairs that define adjustable parameters or load components such as device drivers and terminate-and-stay-resident programs (TSRs). CONFIG.SYS is located in the root directory of the bootable drive.
The same filename is also utilized by (DCP), an MS-DOS variant developed by former East-German manufacturer VEB Robotron.
Certain DOS variants prioritize alternative configuration filenames over CONFIG.SYS:
- Advanced versions of Concurrent DOS 386, Concurrent DOS XM, Multiuser DOS, and REAL/32 employ CCONFIG.SYS or CCONFIG.INI instead. These store settings in a binary format named CCONFIG.BIN, commonly managed through CONFIG.EXE.
- In DR DOS 3.31, PalmDOS 1.0, Novell DOS 7, OpenDOS 7.01, and DR-DOS 7.02+, the filename DCONFIG.SYS supersedes CONFIG.SYS. This arrangement facilitates multi-boot configurations and disk compression scenarios where drive letters are reassigned after loading compression drivers.
- Additionally, OpenDOS 7.01 and DR-OpenDOS 7.02 support ODCONFIG.SYS; some editions of DR-DOS 7.02+ also detect DRCONFIG.SYS.
Starting with DR-DOS 6.0, enhanced capabilities include modifying default file extensions using SYS /DR:ext, enabling multiple concurrent system file sets controlled by boot loaders such as LOADER for Multiuser DOS and DR-DOS 7.x releases. The SHELL directive permits specifying alternative AUTOEXEC.BAT filenames and supports non-.BAT extensions—a feature also found in 4DOS.
The CHAIN=filespec command in DR-DOS allows continuation of configuration processing in another file that does not have to reside in the root folder; from version 7.02 onward, DR-DOS can jump to designated labels within these chained files.
From DR-DOS 7.03 onward, the command SYS /A enables copying CONFIG.SYS and AUTOEXEC.BAT alongside system files.
Other DOS variants use different filenames: FDCONFIG.SYS for FreeDOS, RXCONFIG.SYS for RxDOS version 7.24 and later, and CONFIG.PTS for PTS-DOS.
In DOS-based systems like Windows 95 and Windows 98, CONFIG.SYS and AUTOEXEC.BAT remain present in the root directory but are generally empty. Meanwhile, Windows Me does not process CONFIG.SYS during startup, opting instead to load environment settings from the registry.
For FlexOS, CONFIG.SYS is a binary configuration file that specifies resource managers and device drivers to be loaded at boot time.
Example
Sample CONFIG.SYS configuration for MS-DOS 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>
:;*?!
- Establishes labels within CONFIG.SYS to serve as jump destinations for , , , and commands.
- Functions similarly to , but additionally allows in-line comments after other directives. (In MS-DOS/PC DOS, comments enclosed in double quotes on the same line are not disregarded.)
- Used at the beginning of in-line comments together with the ; directive.
- Prompts a Yes/No confirmation before executing subsequent CONFIG.SYS commands.[1] (FreeDOS does not support custom messages but allows conditional execution via boot menus.) Starting with DOS 6.0, a comparable feature exists by appending after commands, such as or , also supported by DR DOS.
- Forces unconditional execution of the following CONFIG.SYS command.
ATemplate:NbndC
- Determines whether programs can be interrupted upon encountering errors.
- Defines which drives record file access timestamps in FAT file systems.
- Executes conditionally on AT-compatible hardware.
- Manages boot process selection.
- Controls the level of detail in error messages.
- Changes the default serial driver assigned to the AUX: device.
- Prevents character devices outside the virtual \DEV directory from being recognized.
- Loads a fundamental device driver into system memory.
- Produces a brief beep even if sound alerts are disabled.
- Indicates the next operating system to load during boot.
- Enables or disables extended Ctrl+C checking functionality.
- Sets the number of disk buffers allocated.
- Similar to BUFFERS but allocates buffers in HMA or UMB memory regions.
- Defines the maximum count of cache blocks reserved from system memory.
- Specifies how long unused cache blocks remain before returning to system memory.
- Sets maximum duration before dirty cache blocks are written back to disk.
- Loads executable programs specified in CONFIG.SYS and pauses further processing until they finish.
- Adjusts keyboard Caps Lock state on startup.
- Names the CD-ROM hardware driver to be used.
- Configures buffer count for CD-ROM data access.
- Continues processing CONFIG.SYS from another file or label location.
- Defines the type of system clock used by the OS.
- Clears the screen display during boot.
- Specifies OEM codepage settings for character encoding.
- Indicates CMOS RAM address for configuration data.
- Sets color schemes for boot menu interfaces.
- , COM2, COM3, COM4} (DR-DOS 7.02+)
- Configure quantity, logical sequence, I/O port addresses, and timeout values for serial COM ports.
- , BUFFER-related directives (PTS-DOS)
- Set parameters for DMA buffers and associated configurations.
- , COMMENTS (DOS 4.0+)
- Redefine inline comment characters or instruct ignoring subsequent lines depending on OS behavior.
- , CPOS, CPSW (various OS versions)
- Manage internationalization features including cursor positioning and codepage switching mechanisms.
- CPU-related directives (PTS-DOS and DR-DOS)
- Execute conditionally based on processor type (e.g., 8088, 8086, 286, 386).
DTemplate:NbndF
- Adjusts relocation settings for drive descriptor tables in memory.
- Determines memory segment limit up to which multi-sector disk data deblocking is permitted.
- Activates internal debugger support within DOS environment.
- Boot manager configuration command.
- Loads a device driver into conventional memory space.
- Loads a device driver into upper memory area (equivalent to in DRDOS 5.0).
- Sets country and codepage parameters affecting keyboard, screen, and printer devices.
- Defines sizes of cache memory used by DOS components.
- Configures compatibility mode for floppy disk drives.
- Specifies font settings for display output.
- Controls loading of DOS into high or upper memory areas (similar to under DRDOS 5.0).
- Loads DOS internal tables (such as , , etc.) into upper memory segments.
- Provides an alternative directory path for DOS system files.
- Sets search paths for locating data files during operation.
- Defines physical parameters for disk drives connected to the system.
- Establishes parameters for drives not natively recognized by DOS.
- Refer to .
- Enables error logging by specifying drive location for
PDUMP.nnnfiles generated after crashes or faults. - Outputs a message directly onto the display screen during boot or operation.
- Displays messages incorporating ANSI escape sequences for enhanced formatting control.
- Adds extra verification steps when launching programs to ensure stability or compliance.
- Assigns an assumed error or return code for commands executed afterward in CONFIG.SYS processing sequence.
- Sets state of A20 gate line when initiating program execution, affecting memory addressing modes.
- Terminates CONFIG.SYS processing prematurely except for certain exceptions among directives.
- Configures size of hash table used to accelerate file opening operations (different implementation than MS-DOS FASTOPEN driver).
- Defines number of File Control Blocks (FCBs) that can be cached simultaneously (shares buffer space with FILES under DR-DOS).
- Same as FCBS but loads FCBs into upper memory regions instead of conventional memory.
- Boot manager related setting controlling startup behavior.
- Specifies maximum number of files that may be open concurrently by applications and DOS itself.
- Similar to FILES but allocates file handles in upper memory areas rather than conventional RAM.
- Includes execution of additional CONFIG.SYS subsections identified by labels (see IGNORE directive).
GTemplate:NbndI
- Waits for a key press or timeout, then assigns the error level to the corresponding ASCII value (or 1024 if timed out).
- Resumes CONFIG.SYS processing at a designated label.
- Continues nested CONFIG.SYS execution at the specified label, then returns to the previous point.
- Refer to , , or for additional information.
- Consult for further details.
- See for more context.
- Refer to or for related commands.
- See or for supplementary information.
- Consult for further reference.
- Loads a TSR utility into memory following relocation of the DOS data segment. Compare with INSTCDEX.
- Refer to , , or for related utilities.
- See for additional guidance.
- Consult or for further instructions.
- Activates command line and console history buffers with enhanced pattern search capabilities.
- Defines the address of the High Memory Area (HMA) segment.
- Configures the HLT instruction energy-saving mode.
- Enables scanning of boot sector viruses.
- Loads installable file system drivers.
- Prevents execution of specified CONFIG.SYS subsections.
- Permits certain programs to execute at CPU ring 2, granting direct hardware I/O access.
- Includes directives from an alternate menu block (simulated via GOSUB/RETURN in DR-DOS).
- Sets the status of keyboard Insert mode.
- Installs a TSR application into memory.
- Loads TSR programs into upper memory areas (equivalent to HIINSTALL in DR DOS 5.0).
- Installs TSR utilities post DOS data segment relocation, similar to INSTALL.
- Adjusts PIC interrupt priorities to raise the priority level of specified IRQs.
KTemplate:NbndM
- Defines keyboard layout configuration.
- Specifies the relocated keyboard buffer address.
- Sets the maximum number of accessible drives.
- Functions like LASTDRIVE but additionally loads the Current Directory Structure (CDS) into upper memory.
- Determines DLL search directories.
- Manages compatibility with legacy software.
- Sets the number of file locks allowed.
- Configures boot logo display when using PTS-DOS boot manager.
- Defines parameters such as count, order, I/O address, and timeout for LPT1 device.
- Specifies count, order, I/O address, and timeout settings for LPT2 device.
- Details count, order, I/O address, and timeout for LPT3 device configurations.
- Enables and sets parameters for LPT4 device similarly to others.
- Determines wait duration before increasing process priority.
- Configures memory allocation policies.
- Sets default method for DOS memory allocation.
- Defines options available in system menus.
- Specifies menu color schemes (can be emulated using ECHO command in DR-DOS).
- Sets default menu block (emulatable via TIMEOUT and SWITCH commands in DR-DOS).
- Defines individual menu blocks (emulatable via ECHO and SWITCH commands in DR-DOS).
- Enables multitrack operations on disks.
- Continues processing CONFIG.SYS from a new file after loading a device driver and setting the %NEWFILE% environment variable.
NTemplate:NbndQ
- Defines the default "No" () character used in Yes/No/Resume prompts.
- Sets the state of keyboard [[Num Lock|Template:Keypress]]—either enabled or disabled.
- Allows conditional execution based on the last error code, e.g., .
- Displays a message and waits for user key press, similar to DR-DOS's and commands.
- Requires user acknowledgment of errors encountered during CONFIG.SYS processing.
- Configures buffer sizes for LPT ports.
- Enables conditional execution on PC-compatible systems.
- Sets scheduler priority levels.
- Assigns priority for disk I/O-related programs.
- Changes default printer device driver among LPT1 through LPT4 options.
- Controls whether DOS applications are permitted to run.
- Loads a user interface shell environment.
- Enables conditional execution on IBM PS/1-compatible machines.
- Enables conditional execution on IBM PS/2-compatible machines.
- Suppresses output display on STDOUT.
RTemplate:NbndT
- Activates automatic system reboot upon encountering errors.
- Adds annotations within CONFIG.SYS files.
- Allocates a drive letter, preventing it from being assigned to local block devices.
- Establishes the default Resume () character used in Yes/No/Resume prompts.
- Returns control from nested CONFIG.SYS processing to the preceding GOSUB or SWITCH command, optionally passing back a return code.
- Specifies the size of real mode memory.
- Enables simultaneous loading of programs within CONFIG.SYS, functioning similarly to INSTALL in DOS environments.
- Determines whether deleted files retain their initial character in the FAT reserved area.
- Sets the video display mode (FreeDOS) or screen access protocol (PTS-DOS).
- Toggles the keyboard Scroll Lock state on or off.
- Establishes environment variables.
- Loads the command interpreter shell.
- Functions like SHELL but allows pre-allocation of memory for relocating COMMAND.COM into HMA or UMBs, enhancing memory efficiency with third-party shells.
- Defines states for keyboard modifiers such as Shift Lock and Num Lock.
- Controls whether files are closed upon pressing Ctrl+Alt+Del.
- Skips the Power-On Self Test (POST) during reboot sequences.
- Sets the number of hardware interrupt stacks available.
- Specifies default stack size for newly created threads.
- Similar to STACKS but loads buffer memory into upper memory blocks (UMBs).
- Configuration for boot manager settings.
- Directive intended for internal system use.
- Manages behavior of the XMS A20 gate.
- Defines submenu blocks, which can be emulated under DR-DOS.
- Redirects error logs to a drive instead of displaying popup messages.
- Specifies the directory path for swap files.
- Enables conditional nested processing of CONFIG.SYS based on key input, with RETURN resuming from the previous point.
- Sets the system-wide default switch character, either '/' or '-'.
- Defines special options influencing system operation.
- Activates a fix addressing floating-point unit (FPU) rounding errors.
- Specifies an alternative filename for DOS boot files.
- Configures memory addresses allocated to DOS components.
- Loads system components from an alternate disk location.
- Defines dynamic allocation size for system memory pools.
- Loads DOS code and data into UMBs to optimize available memory usage.
- Sets the maximum number of concurrent threads managed by the system scheduler.
- Establishes timeouts for CONFIG.SYS commands and default responses in prompts and switches.
- Defines minimum and maximum time slices for scheduler multitasking efficiency.
- Specifies the file extension utilized for temporary files.
- Enables or disables single-step tracing during execution of CONFIG.SYS and AUTOEXEC.BAT scripts, with variations depending on OS implementation.
- Determines the size of the TRACE log buffer used for debugging purposes.
- Records detailed error information to assist in system diagnostics.
UTemplate:NbndZ
- Configures DOS to designate a specific segment as an upper memory block (UMB).
- Establishes the UMB server settings.
- Defines address ranges allocated for UMB RAM usage.
- Toggles disk write verification on or off.
- Specifies which DOS version is reported to running programs.
- Configures VGA display status parameters.
- Sets the active video mode currently in use.
- Enables virtual Direct Memory Access (DMA) capabilities.
- Controls activation of Virtual Mode Extensions (VME).
- Configures VxD drivers intended for Windows environments.
- Manages support settings for Windows systems.
- Handles relocation of the Extended BIOS Data Area (EBDA).
- Executes commands conditionally on XT-compatible hardware platforms.
- Configures built-in support addressing Year 2000 compatibility issues.
- Sets default character used as 'Yes' in prompt dialogs.
- Keeps track of driver deletions.
Issues
Although the system can start without CONFIG.SYS or AUTOEXEC.BAT, these files are crucial for comprehensive DOS customization and meeting software dependencies. Troubleshooting becomes necessary if these files are absent or corrupted.
In cases where CONFIG.SYS does not contain a SHELL directive or is damaged, DOS will attempt to locate COMMAND.COM in the root directory of the boot drive. Versions prior to 6.0 will fail to boot if this file is missing. Starting with MS-DOS 6.0, PC DOS 6.1, and Novell DOS 7 and later, users receive a prompt to specify the command processor's location, which also appears if the primary shell terminates unexpectedly. This feature allows for runtime replacement of the shell without requiring a reboot.
Due to compatibility issues between MS-DOS 7.x's COMMAND.COM and DR-DOS, versions 7.02 and above of DR-DOS limit the ability to bypass SHELL directives during skip, trace, or step operations. Certain key combinations can partially restore skip functionality to recover from invalid SHELL entries. If no valid SHELL is found while skipping CONFIG.SYS, users must manually input a shell filename before COMMAND.COM loads; pressing ENTER defaults to the standard shell.
The maximum size allowed for CONFIG.SYS differs depending on the operating system: MS-DOS and PC DOS impose limits ranging from a few kilobytes up to around 64 KB, whereas DR-DOS effectively places no practical size restriction beyond file system constraints. MS-DOS processes CONFIG.SYS by compiling it into a tokenized format that executes sequentially—loading device drivers before TSRs. In contrast, DR-DOS parses directives line-by-line, providing greater precision in controlling the order of driver and TSR loading through DEVICE and INSTALL commands. This approach facilitates resolving conflicts during loading and supports conditional logic based on hardware detection or user input.
DR-DOS’s INSTALL directive enables execution of non-resident programs integrated within the CONFIG.SYS processing sequence, enhancing customization options and simplifying debugging tasks.
Limits on SHELL command line length also vary: MS-DOS/PC DOS versions 2.0 through 4.01 restrict it to 31 characters; later releases extend this limit to 128 characters; DR-DOS permits up to 255 characters. It is important to note that CONFIG.SYS directives do not accept long file names.
Dual booting DOS and Windows 9x
When Windows 95 is installed over an existing DOS or Windows environment, it renames CONFIG.SYS and AUTOEXEC.BAT to CONFIG.DOS and AUTOEXEC.DOS respectively, enabling dual-boot functionality between Windows 9x and DOS. Upon booting into DOS mode, these files are temporarily restored under their original names. Additionally, Windows 95 system files are backed up as CONFIG.W40 and AUTOEXEC.W40.
In setups where Caldera DR-DOS versions 7.02 or 7.03 coexist with Windows 95, the Windows CONFIG.SYS and AUTOEXEC.BAT remain untouched. Instead, DR-DOS uses alternative startup files named DCONFIG.SYS and AUTODOS7.BAT.
OS/2 / Windows NT
OS/2 relies heavily on CONFIG.SYS for configuring system settings, loading drivers, and establishing environment variables before launching its graphical user interface.
Within the OS/2 subsystem of Windows NT, CONFIG.SYS is presented to OS/2 applications but is actually stored within the Windows registry rather than as a physical file.
There exists a variety of undocumented CONFIG.SYS directives specific to OS/2.
CONFIG.SYS continues to be utilized by OS/2 derivatives 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
- Detailed AUTOEXEC.BAT and CONFIG.SYS guidance at Computer Hope
- Overview of Windows 98 / MS-DOS 7.10 CONFIG.SYS parameters (archived)
- Caldera's CONFIG.SYS command guide (archived) – summary of DR-DOS 7 directives
- Explanation of FreeDOS CONFIG.SYS options
- PTS-DOS 2000 Pro user guide including CONFIG.SYS parameters (archived)
- German-language unofficial PTS-DOS FAQ with CONFIG.SYS details (archived)
- ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedPaul_2000_CONFIG