[kerncfg]

*** Kernel configuration (CONFIG.SYS) ***

The SvarDOS (EDR) kernel is configured through the CONFIG.SYS file using specialized keywords. Conventions: Keywords may include [HIGH] or [HI] (write them without brackets!), which both indicate they will prioritize allocating High Memory (HMA) as storage, which saves valuable Conventional memory whenever possible. Example: FILES, HIFILES, and FILESHIGH. Of these three, the first one is the only one that exclusively uses precious Conventional memory. A LABEL, is a location in the CONFIG.SYS which is marked by the user, with a two dots character followed by a unique string, like for example, ":ENDING" (without double quotes). It is a reference used for GOTO, GOSUB and SWITCH jumps when executing keywords. The use of "n", "nn" and "nnn" (without double quotes) indicates a numeric value the user must define. Here is a list of possible settings: [COMMON] This keyword does not perform any action. It was designed for compatibility with MS-DOS 6.x. This is the only keyword that should be written with brackets. COUNTRY=[country number],[code page],[country.sys file location] Country specific conventions to display times, dates, currency, character sort order, forbidden characters, mathematical separators, etc.. For further details and country codes consult the Country Addendum SHELL[HIGH]=\COMMAND.COM /E:512 /P Points to the location of the SHELL (command interpreter) to be used. An increased environment (/E value) prevents aborted programs, but consumes more memory. The /P switch makes the shell permanent, so that you cannot EXIT it. More SHELL switches may be available and can be queried at the command-line by entering COMMAND /? [HI]LASTDRIVE or LASTDRIVE[HIGH]=X: Sets the last logical drive-letter to letter x. This is done to reserve at least two drive letters (Y: and Z:) for some vintage external drives which specifically fail if there are none available. BREAK=ON/OFF Enables stopping execution by pressing <Ctrl> + <C> on your keyboard. BUFFERS[HIGH]=nn Built-in system-wide cache. For all types of drives. It also sets the secondary read-ahead cache size. [HI]FCBS=nn If a program tries to open more than certain amount of files by using file control blocks (FCB), EDR-DOS might close the files that were opened earlier. Most newer programs do not require FCBs. However, some older programs might require you to set them. This is a legacy feature, now replaced by the FILES handle method as seen in the next CONFIG.SYS entry below. It only remains here for backwards compatibility purposes. Value set by default to safely run old programs should be 10,4. FILES[HIGH] or [HI]FILES=nn Specifies the number of files that EDR-DOS can access at one time. [HI]STACKS=nn Prevents stack overflow errors from happening upon receiving a hardware interrupt. Multitasking and networking environments are often sensitive to this value being low. Stacks consume memory. If you find instability on your system try by exchanging the below value with "0,0", "9,128", "9,256" or "48,256". Always perform a cold reboot after you make a change. FASTOPEN=nnn Tracks the location of files on hard disk in memory for fast access. Valid values are in the range of 128 through 32768. Each file tracked requires 2 bytes of memory. GETKEY Waits for a keystroke and then sets the error level to the value of the corresponding ASCII code of the key (0..255). For example, to set the errorlevel to 1, one does not have to press <1> (has scan/ASCII code 0231h and thus 31h = 49), but rather make an <Alt>-NumPad entry, here for example <Alt>=<Alt>+<NumPad1>. This option makes it possible to react differently to any key (for which the keyboard driver generates a character) (i.e. the levels with <Shift> and <AltGr> are generally supported). DRIVPARM= Modifies the features of a disk drive already recognized by DOS. /D:n Single digit that corresponds to the selected logical drive /C Specifies that the drive detects when a disk is changed. /F:n 0 160/180 KB or 320/360 KB 1 1.2 MB 2 720 KB (the default) 5 Hard disk 6 Tape 7 1.44 MB 8 Read/write optical disk 9 2.88 MB /H:nn Specifies the max. number of drive heads (from 1 up to 99) /I Specifies a 3.5-inch diskette drive when your computer does not support one. /N Specifies that the drive is permanent media. /S:nn Specifies the number of sector supported by the drive (from 1 up to 99) /T:nn Specifies the number of tracks supported by the drive. HISTORY=ON|OFF,nnn,ON|OFF,ON|OFF,ON|OFF [Active],[Buffer],[Insert],[Search],[Match] [Active] Enables or disables HISTORY features (ON or OFF). [Buffer] Sets the storage buffer size (between 128 and 4096 bytes). [Insert] Sets ON or OFF, character insertion in front of the cursor. [Search] Sets ON or OFF, the display of the most-recently-entered command that matches the current one by pressing <Ctrl> + <R>. [Match] Sets ON or OFF, recalling the most-recently-entered command that matches each character you type, by pressing <Ctrl> + <_>. [HI]INSTALL or INSTALL[HIGH]=program options Loads a program automatically from CONFIG.SYS when you start DOS. You can specify options to pass to the specified program [HI]INSTALLLAST=cmdstring Works like [HI]INSTALL, but loads program after the DOS data segment relocation. It is effectively, the last INSTALL of them all to be ran. DOSDATA=UMB DOSDATA=LOW|UMB Moves main DOS data segment to upper memory. DDSCS=HIGH,UMB DDSCS=UMB|HIGH|HIGH,UMB Moves drive descriptor tables (DDSCS) to upper or high memory. XBDA=LOW,UMB XBDA=LOW|UMB|LOW,UMB Relocates extended BIOS data area (XBDA) to low base or upper memory if the memory manager has not already done this. DEBLOCK=[nnnn|ON|OFF] Value 0000 disables multitracking, which is the same as OFF switch. Value FFFF enables multitracking, which is the same as the ON switch. This was added for MS-DOS 4.0x+ compatibility. DOS=HIGH,UMB Specifies that EDR-DOS should maintain a link to the upper memory area, load part of itself into the high memory area (HMA) and take advantage of upper memory blocks (UMB) if they are available. This keyword replaces the old HIDOS=ON/OFF. SET [name[=string]] Adds environment variables to the command processor's master environment. Very useful to communicate to the AUTOEXEC.BAT which multi-configuration option was selected in the CONFIG.SYS, between other things. SWITCHES= Specifies special options in DOS. /F Skips the two seconds delay after starting DOS /N Prevents the user from using the F5 or F8 key to bypass startup files. DEVICE[HIGH]=filename Loads a device driver. REM or ; or :: A line in the CONFIG.SYS begining with either of these three characters sets, will not be executed and can be used to add comments or to disable some keyword. CHAIN=filename Diverts execution of CONFIG.SYS keywords to another file only if it exists at the specified location. GOTO LABEL Jumps execution to a CONFIG.SYS LABEL. GOSUB LABEL Jumps execution to a CONFIG.SYS LABEL subroutine that ends in a RETURN keyword. It is very useful to save space by avoiding repeating over and over again the same group of keywords or to prevent a difficult to follow CONFIG.SYS structure flow. RETURN [errorlevel from 0 to 65535] Jumps back to continue executing the CONFIG.SYS immediately after the GOSUB or SWITCH keyword which called this subroutine. It is possible to specify an optional errorlevel, which is considered as the return value of the subroutine block. If no value is specified, the errorlevel is set to 0. CLS Clears the screen contents and moves the cursor to the begining of the first line. CPOS=row,col Sets cursor position to specified row and column number of the current text mode screen. COLOUR=[fg][,[bg][,bc]] Sets Foreground/Background/Border Colour. Number Colour 0 Black 1 Blue 2 Green 3 Cyan 4 Red 5 Magenta 6 Brown 7 Gray / Grey 8 DarkGray / DarkGrey 9 LightBlue 10 LightGreen 11 LightCyan 12 LightRed 13 LightMagenta 14 Yellow 15 White TIMEOUT=n Sets the waiting interval (in seconds) to automatically jump CONFIG.SYS execution to the first LABEL the SWITCH keyword has enumerated. SWITCH MENU1, MENU2 Enumerates the different user selectable multi-configuration options as LABELS. ONERROR On matching errorlevel (from 0 to 65535) condition executes the remaining part of the line. Conditions may be =|>|<|<>|>=|<=|=>|=<|== One example to better illustrate its usage: ONERROR =< 1 GOTO FAILURE ? Optional command execution that requires user keyboard confirmation. To activate it, prepend it to the required keyword. Example: ?DEVICE=DRMOUSE.COM ECHO string Displays its arguments. Note that "ECHO" (without double quotes and without any argument) will display an empty line. Further neat tricks can be accomplished with an active ANSI console driver and its escape codes. EXIT Defines the end of CONFIG.SYS execution. ERROR=n Sets errorlevel (return code) from 0 to 65535. YESCHAR= Allows to give a different character for the Yes-Char (necessary to better cope with the questioning in foreign countries, especially prior to any keyboard driver loaded). NUMLOCK=ON/OFF Defines the status of the NumLock numeric pad key. On old PCs the (PC) keyboard LEDs might not reflect the actual status, but still may work anyway. VERSION=n.nn[,n.nn] Sets the DOS version (Int 21h/AH=30h) and optionally the true DOS version (Int 21h/AX=3306h) to be reported to programs. ______________________________________________________________________________ Author: Ignacio Gully | Last edit: 2025-09-12