Jump to content

CPU88+ (CONFIG.SYS directive)

From Alfawiki
Adapted from the English Wikipedia article CPU88+ (CONFIG.SYS directive), available under CC BY-SA 4.0Updated 9 August 20253 sources
CONFIG.SYS
Company typeConfiguration file
IndustryComputer software
Founded1983
ProductsSystem configuration for DOS and OS/2 operating systems

CONFIG.SYS serves as the central configuration file for the DOS and OS/2 operating system families. This file is a plain ASCII text document containing setup instructions accessible to users, which are interpreted by the operating system's DOS BIOS during the startup process. The CONFIG.SYS file was first introduced with DOS version 2.0.

Usage

The directives within CONFIG.SYS are used to configure DOS for hardware devices, software applications, and memory management utilities. Once CONFIG.SYS has been processed, DOS proceeds to load the command interpreter specified by the SHELL statement, defaulting to COMMAND.COM if none is specified. This interpreter then executes commands from AUTOEXEC.BAT.

Typically, CONFIG.SYS contains configuration lines in the form of name=value, which set adjustable parameters or load device drivers and terminate-and-stay-resident (TSR) programs. This file is located in the root directory of the system's boot drive.

Certain DOS variants check for alternative configuration filenames that take precedence over CONFIG.SYS:

Concurrent DOS 386, Concurrent DOS XM, Multiuser DOS, System Manager, and REAL/32 utilize CCONFIG.SYS or CCONFIG.INI (in Multiuser DOS), and MCONFIG.SYS (in REAL/32). They store supplementary settings within a binary file named CCONFIG.BIN, which is generally modified using CONFIG.EXE.

From DR DOS 3.31 onward—including PalmDOS 1.0, Novell DOS 7, OpenDOS 7.01, and DR-DOS versions 7.02 and later—DCONFIG.SYS takes priority over CONFIG.SYS. This arrangement supports disk compression implementations and multi-boot setups. Additionally, OpenDOS and DR-DOS recognize alternative filenames such as ODCONFIG.SYS and DRCONFIG.SYS.

Starting with DR-DOS 6.0, users can alter default system file extensions using SYS /DR:ext, allowing multiple system file collections to coexist and be selected via boot loaders like LOADER. The SHELL directive can specify alternative AUTOEXEC.BAT files through the /P[:filename.ext] parameter, and COMMAND.COM accepts extensions other than .BAT—capabilities also supported by 4DOS.

In DR-DOS, the CHAIN=filespec command enables continuation of processing additional configuration files, optionally targeting specific labels for selective execution.

From version 7.03 onward, DR-DOS introduced SYS /A, which copies both CONFIG.SYS and AUTOEXEC.BAT alongside other system files.

FreeDOS employs FDCONFIG.SYS; RxDOS uses RXCONFIG.SYS; and PTS-DOS relies on CONFIG.PTS.

Although based on DOS, Windows 95 and Windows 98 include CONFIG.SYS and AUTOEXEC.BAT on their boot drives but typically leave these files empty. In contrast, Windows Me does not parse CONFIG.SYS during startup; instead, it loads environment variables directly from the Windows Registry.

In the case of FlexOS, CONFIG.SYS is a binary configuration file that specifies resource managers and device drivers loaded at boot time.

Example

A sample CONFIG.SYS 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>

:;*?!

Defines labels within CONFIG.SYS that serve as jump points for directives such as , , , and .
Functions similarly to , also utilized for inline comments following other directives. (Under MS-DOS/PC DOS, inline comments enclosed in double quotes are not ignored.)
Introduces inline comments alongside the ; directive.
Prompts a Yes/No confirmation before executing subsequent CONFIG.SYS commands.[1] (FreeDOS does not support optional messages but allows conditional execution with boot menus.) DOS version 6.0 and later offer a comparable feature by appending after commands (e.g., ).
Forces unconditional execution of the next directive.

ATemplate:NbndC

Determines whether programs may be terminated upon encountering errors.
Sets drives to record file access timestamps within FAT directory entries.
Enables conditional execution specifically on AT-compatible systems.
Acts as a boot management utility.
Adjusts the verbosity level of error messages.
Alters the default serial port driver for the AUX device, switching from COM1 through COM4.
Prevents character devices from being accessible outside the phantom \DEV directory.
Loads the fundamental device driver into system memory.
Produces a brief beep sound even if audible alerts are disabled.
Specifies which operating system to boot next.
Enables or disables extended Ctrl-C interrupt checking.
Defines the quantity of disk buffers to allocate.
Similar to BUFFERS but loads buffers into High Memory Area (HMA) or Upper Memory Blocks (UMB).
, CACHETTL, CACHEFLUSH (Embedded DOS 6-XL only)
Manage cache block allocation and the timing of cache flushing.
Executes programs listed in CONFIG.SYS in the foreground, pausing further processing until completion.
Sets the Caps Lock state on the keyboard.
, CDDBUFFERS (PTS-DOS only)
Configures CD-ROM driver buffer settings.
Continues processing CONFIG.SYS from a new file or label reference.
, CLS, CODEPAGE (various OS-specific)
Manage system clock settings, clear screen functions, and OEM codepage configurations.
, COLOR, COMAREA (PTS-DOS only)
Configure CMOS RAM addresses, boot menu color schemes, and DMA buffer settings.
, COM2, COM3, COM4 (DR-DOS 7.02+)
Define count, logical sequence, I/O addresses, and timeouts for COM ports.
, COMMENTS (DOS 4.0+)
Redefine characters used for inline comments or ignore subsequent lines.
, CPOS, CPSW
Enable internationalization support, set cursor positions for menus, and switch codepages depending on OS variant.
CPU-related directives (PTS-DOS only)
Conditional execution directives based on CPU models and speeds such as CPU88, CPU386+, CPU486+, etc.

DTemplate:NbndF

Configures relocation parameters for drive descriptor tables in memory.
Defines memory segment addresses used for multi-sector disk data deblocking operations.
Activates internal debugger support functionality.
Functions as a boot management utility.
Loads device drivers into conventional memory space.
Loads device drivers into upper memory areas (equivalent to in DRDOS 5.0).
Sets country-specific and codepage information for keyboard, screen, and printer devices.
Adjusts sizes of cache memory allocations.
Specifies floppy disk compatibility modes for drives.
Determines display font settings used by the system.
Controls loading of DOS into high memory and/or utilization of upper memory blocks.
Loads DOS internal tables such as BUFFERS, FCBS, FILES, LASTDRIVE, STACKS into upper memory space.
Specifies an alternative search path for DOS files.
Defines search paths used for locating data files.
Specifies physical parameters of disk drives connected to the system.
Sets configuration parameters for unrecognized or unknown drives.
Refer to for further details.
Enables PDUMP.nnn error logging and designates target drive for logs.
Outputs a message directly on the display screen.
Displays messages containing ANSI escape sequences for formatting purposes.
Determines whether additional validation checks occur when launching programs.
Specifies an expected error or return code value for processes.
Controls the A20 line gate state when programs start execution.
Terminates CONFIG.SYS processing prematurely except for SWITCHES and SHELL commands which continue processing.
Sets the size of hash tables used to accelerate file open operations—differs from MS-DOS/PC DOS FASTOPEN driver behavior.
Defines how many File Control Blocks can be cached simultaneously (shares buffer space with FILES under DR-DOS).
Similar to FCBS but loads these control blocks into upper memory areas.
Functions as a boot manager utility component.
Specifies maximum number of files that can be opened concurrently by the system.
Similar to FILES but loads file handles into upper memory regions instead of conventional memory.
Facilitates execution of specified CONFIG.SYS subsections via inclusion directives (see IGNORE).

GTemplate:NbndI

Waits for a key press or timeout, setting the error level to the ASCII value of the key or 1024 if timed out.
Resumes CONFIG.SYS processing at the indicated label.
Continues nested CONFIG.SYS processing at a specified label, then returns to the prior location.
Refer to , , or for additional information.
Consult for further details.
See for more context.
See or for related commands.
See or for related usage.
Refer to for supplementary details.
Loads a TSR program into memory after relocating the DOS data segment. Compare with INSTCDEX.
Refer to , , or for additional instructions.
See for further explanation.
Consult or for related topics.
Activates and configures the console and command line history buffer, including advanced pattern search capabilities.
Defines the address of the HMA segment.
Sets parameters for the HLT power-saving mode.
Enables scanning of boot sector viruses.
Loads installable file system drivers.
Prevents execution of designated CONFIG.SYS subsections.
Permits specified applications to operate at ring 2, allowing direct hardware I/O access.
Incorporates directives from another menu block (emulated through GOSUB/RETURN in DR-DOS).
Sets the status of the keyboard Insert mode.
Loads a TSR program into memory.
Loads a TSR program into upper memory (equivalent to HIINSTALL in DR DOS 5.0).
Loads a TSR program following relocation of the DOS data segment. Compare with INSTCDEX.
Adjusts PIC interrupt priorities, assigning highest priority to a specified interrupt number.

KTemplate:NbndM

Defines the keyboard layout configuration.
Specifies the relocated keyboard buffer address.
Sets the maximum number of accessible drives.
Functions like LASTDRIVE but loads the Current Directory Structure (CDS) into upper memory.
Establishes search paths for DLL files.
Handles compatibility settings for legacy software.
Configures the number of allowable file locks.
Manages boot logo display settings with PTS-DOS boot manager integration.
Configures count, sequence, I/O address, and timeout parameters for the LPT1 device.
Applies similar settings as LPT1 for the LPT2 device.
Applies equivalent configuration as LPT1 for LPT3 device.
Enables and configures LPT4 device similarly to others.
Sets delay time before increasing process priority levels.
Specifies strategy for memory allocation management.
Defines default method used by DOS for memory allocation.
Establishes menu option definitions.
Sets menu color schemes (can be emulated using ECHO under DR-DOS).
Specifies default menu block (emulatable via TIMEOUT and SWITCH under DR-DOS).
Defines individual menu blocks (can be emulated through ECHO and SWITCH in DR-DOS).
Enables or disables multitrack disk operation functionality.
Continues CONFIG.SYS processing from a new file, optionally loading a device driver and setting the %NEWFILE% environment variable.

NTemplate:NbndQ

Determines default No () response in Yes/No/Resume prompts.
Sets keyboard [[Num Lock|Template:Keypress]] state to on or off.
Allows conditional execution based on previous error code, such as .
Similar to and , displays text and waits for user key press confirmation.
Requires user acknowledgment of errors encountered in CONFIG.SYS processing.
Configures buffer size parameters for LPT ports.
Enables conditional execution specifically on PC-compatible systems.
Defines parameters for priority scheduling management.
Sets priority level 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 hardware platforms.
Enables conditional execution on IBM PS/2-compatible hardware platforms.
; Mutes output directed to STDOUT display.

RTemplate:NbndT

Activates automatic system reboot upon encountering errors.
Permits inclusion of comments within CONFIG.SYS files.
Allocates drive letters to local block device drivers.
Sets the default character returned by Resume () queries.
Enables returning from nested CONFIG.SYS processing to the previous GOSUB or SWITCH point, with optional return code support.
Defines the size of real mode memory available.
Allows simultaneous loading of programs in CONFIG.SYS, functioning similarly to CALL or INSTALL commands in DOS.
Determines whether the first character of deleted files is saved in the FAT reserved area.
Specifies video mode for FreeDOS or screen access methods used by PTS-DOS.
Controls the keyboard Scroll Lock state, turning it on or off.
Establishes environment variables.
Loads the command interpreter shell.
Similar to SHELL but includes a SIZE parameter to pre-allocate COMMAND.COM in HMA or UMBs, minimizing fragmentation.
Defines keyboard modifier key states such as Shift Lock, Num Lock, Scroll Lock, and Insert mode.
Specifies whether files close when pressing Ctrl+Alt+Del.
Determines if POST (Power-On Self-Test) is bypassed during reboot.
Sets the number of stacks allocated for hardware interrupts.
Functions like STACKS but loads buffers into upper memory areas.
Configures boot manager settings.
Defines submenu blocks (emulated under DR-DOS).
Redirects error logs to a drive instead of displaying popup messages.
Sets the path for swap file storage.
Allows conditional continuation of nested CONFIG.SYS processing based on key presses, supporting RETURN functionality.
Establishes the default system switch character ('/' or '-').
Specifies special configuration options.
Provides an alternative name for the DOS boot file.
Configures memory locations for DOS components.
Supports loading the system from an alternate disk area.
Defines the size of the system memory pool available for dynamic allocation.
Enables loading DOS data and code into Upper Memory Blocks (UMBs).
Specifies how many concurrent threads the system scheduler can handle.
Sets timeout durations for CONFIG.SYS single-stepping, SWITCH, GETKEY commands, and default query responses. Only timeout supported by PTS-DOS.[2]
(OS/2)
Adjusts minimum and maximum scheduler time slices.
(PTS-DOS)
Defines temporary file extensions used by the system.
(DR-DOS 7.02+, PTS-DOS, OS/2)
Globally or locally enables/disables single-step execution of CONFIG.SYS and AUTOEXEC.BAT with varying OS behaviors.[3]
(OS/2)
Sets TRACE log buffer size.
(OS/2 3.0+)
Records detailed error diagnostics.

UTemplate:NbndZ

Configures DOS to designate a specific segment as UMB memory area.
Sets parameters for the UMB memory server.
Specifies address ranges allocated for UMB RAM usage.
Enables or disables verification of disk write operations.
Defines which DOS version is reported to applications.
Manages VGA display status settings.
Indicates current video mode configuration.
Determines whether virtual DMA functionality is permitted.
Enables deactivation of processor Virtual Mode Extensions if required.
Configures VxD driver parameters for Windows environments.
Sets up system support features for Windows operation.
Controls relocation of Extended BIOS Data Area (XBDA).
Allows conditional execution tailored to XT-compatible machines.
Manages built-in support for Year 2000 compliance.
Sets default affirmative response character in prompt dialogs.
Configures tracking behavior for file deletions.

Issues

Although the operating system can initiate without CONFIG.SYS or AUTOEXEC.BAT, these files are crucial for tailoring the OS and fulfilling software dependencies. When these files become damaged or corrupted, troubleshooting becomes necessary.

If the SHELL directive is missing or corrupted in CONFIG.SYS, DOS attempts to locate COMMAND.COM in the root directory of the boot drive. In older DOS versions, the absence of COMMAND.COM prevents startup, whereas MS-DOS 6.0, PC DOS 6.1, and Novell DOS 7 and later versions will prompt the user to specify a command processor path. This prompt also appears if the primary shell terminates unexpectedly or exits intentionally, enabling a limited shell replacement during runtime without requiring a reboot.

Due to incompatibilities between MS-DOS 7.0+ COMMAND.COM and DR-DOS, versions 7.02 and above of DR-DOS prevent bypassing SHELL directives when operating in skip, trace, or step modes. Some newer releases introduced options to re-invoke the shell if invalid SHELL parameters are encountered. When skipping CONFIG.SYS and no valid shell is found, users receive a prompt requesting a shell filename before COMMAND.COM loads.

Under MS-DOS/PC DOS, CONFIG.SYS file sizes are restricted to a few kilobytes (up to 64 KB in later editions), whereas DR-DOS imposes no inherent size limit beyond file system constraints. MS-DOS processes CONFIG.SYS by compiling it into tokenized memory before executing directives sequentially. Conversely, DR-DOS parses directives line-by-line, granting finer control over the loading sequence of drivers and TSRs through DEVICE and INSTALL commands. This approach facilitates resolving conflicts during loading and supports conditional execution based on hardware detection or user input.

For MS-DOS/PC DOS versions 2.0 through 4.01, the SHELL directive was limited to 31 characters; this limit increased to 128 characters in subsequent versions. DR-DOS allows up to 255 characters for this directive. Notably, CONFIG.SYS directives do not support long filenames.

Dual booting DOS and Windows 9x

When Windows 95 is installed over an existing DOS or Windows environment, the original CONFIG.SYS and AUTOEXEC.BAT files are renamed to CONFIG.DOS and AUTOEXEC.DOS respectively. This renaming facilitates dual-booting between Windows 9x and DOS by temporarily restoring these files as CONFIG.SYS and AUTOEXEC.BAT when booting into DOS mode. Additionally, backup copies of the Windows 95 configuration files are saved as CONFIG.W40 and AUTOEXEC.W40.

In systems where Caldera DR-DOS 7.02 or 7.03 coexist with Windows 95, the Windows CONFIG.SYS and AUTOEXEC.BAT remain intact without renaming. Instead, DR-DOS employs startup files named DCONFIG.SYS and AUTODOS7.BAT.

OS/2 / Windows NT

OS/2 relies heavily on CONFIG.SYS for driver configuration and environment setup prior to launching its graphical interface.

Within the OS/2 subsystem of Windows NT, what OS/2 applications perceive as CONFIG.SYS is actually stored within the Windows registry rather than as a traditional file.

There exist numerous 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

External links

  • Information on AUTOEXEC.BAT and CONFIG.SYS provided by Computer Hope
  • Overview of Windows 98 / MS-DOS 7.10 CONFIG.SYS commands (archived)
  • Caldera's CONFIG.SYS Command Reference (archived) – Summary of DR-DOS 7 CONFIG.SYS commands
  • Guide to FreeDOS CONFIG.SYS commands
  • PTS-DOS 2000 Pro User Guide featuring CONFIG.SYS commands (archived)
  • Unofficial German-language PTS-DOS FAQ (PTS/FAQD) with extended CONFIG.SYS command details
  1. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named Paul_2000_CONFIG
  2. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named Paul_1997_OD-A3
  3. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named Paul_2004_YESCHAR