MS-DOS 6.22 CONFIG.SYS SWITCHES Directive Explained

The SWITCHES directive in MS-DOS 6.22 is a configuration command placed in the CONFIG.SYS file that modifies default operating system startup behaviors, bypass functions, and keyboard processing. This guide outlines the purpose of the SWITCHES command, details each available parameter (/F, /K, /N, and /W), and explains how these options alter system execution during the boot sequence.

The Purpose of the SWITCHES Directive

During boot, the MS-DOS kernel (IO.SYS/MSDOS.SYS) reads CONFIG.SYS to establish basic system parameters, load device drivers, and reserve memory. The SWITCHES statement instructs the operating system to suppress specific interactive boot options, manipulate hardware interaction, or support legacy environments.

The standard syntax is:

SWITCHES=[/F] [/K] [/N] [/W]

These parameters can be combined in a single line (for example, SWITCHES=/F /N).


Detailed Switch Parameters

1. /F — Eliminate Startup Delay

By default, MS-DOS 6.22 displays the message "Starting MS-DOS..." and pauses for approximately two seconds. This pause gives users a brief window to press F5 (for a clean boot) or F8 (for an interactive, step-by-step boot).

  • Behavior Modification: Specifying /F removes this two-second delay, accelerating the overall boot sequence.
  • Impact: While users can still press F5 or F8 if they time the keypress immediately after the BIOS POST completes, the standard pause is completely bypassed.

2. /K — Conventional Keyboard Emulation

Modern PCs in the MS-DOS era introduced enhanced 101/102-key keyboards, which transmit different scan codes for duplicated keys (such as arrow keys, dedicated navigation clusters, and the numeric keypad) compared to older 84-key keyboards.

  • Behavior Modification: The /K parameter forces an enhanced keyboard to function logically as an older, standard keyboard by altering how the BIOS keyboard buffer handles extended functions.
  • Impact: This resolves compatibility problems with older DOS applications and games that misinterpret or fail to recognize keystrokes sent by enhanced keyboards. Note that if ANSI.SYS is loaded later in CONFIG.SYS, the /K switch should also be appended to DEVICE=C:\DOS\ANSI.SYS /K for consistent behavior.

3. /N — Disable Clean and Interactive Boot Keys

MS-DOS 6.0 introduced the ability to bypass CONFIG.SYS and AUTOEXEC.BAT via F5 or to selectively confirm commands line-by-line via F8.

  • Behavior Modification: Adding /N prevents the operating system from recognizing the F5 and F8 keys during startup.
  • Impact: This secures dedicated workstations, point-of-sale terminals, or lab computers against users bypassing system-level drivers, network authentications, or security shells specified in startup files.

4. /W — Support Relocation of WINA20.386

When running Microsoft Windows 3.0 in 386 Enhanced Mode on MS-DOS 5.0 and later, Windows requires access to the WINA20.386 driver file to manage the High Memory Area (HMA). By default, Windows expects this file in the root directory (C:\).

  • Behavior Modification: The /W switch informs the operating system that WINA20.386 has been moved out of the root directory and into another location (such as C:\DOS).
  • Impact: It keeps the root directory tidy without breaking Windows 3.0 Enhanced Mode support, provided a corresponding device=drive:\path\wina20.386 line is also added to the [386Enh] section of the Windows SYSTEM.INI file. (This switch is unnecessary if running Windows 3.1 or later).

Summary of Use Cases

  • Public or Controlled Systems: Use SWITCHES=/N /F to lock down startup behavior, prevent user circumvention of startup scripts, and minimize visible boot time.
  • Legacy Software Compatibility: Use SWITCHES=/K when older business applications fail to register keypresses on standard AT or PS/2 keyboards.