The Windows Sources Guide to Setting Up Windows by Herb Chong Table of Contents Introduction Windows 3.1 uses two initialization files to define your Windows environment and system hardware -- WIN.INI and SYSTEM.INI. In addition to getting Windows set up the way it should be, some Windows applications use the settings in these two files to configure themselves to your system and your preferences. Other Windows programs also create their own INI files; the Windows Program Manager creates and uses a file called PROGMAN.INI. The initialization files for Windows itself have these purposes: WIN.INI - configures the Windows environment to your preferences SYSTEM.INI - configures Windows to your system's hardware This guide describes the more important settings in each of these two files, what they do, why you might want to change them, and their default and recommended settings. Most of the settings described are ones that you most likely will want to verify or change for your system. Format of INI Files Each Windows INI file contains several sections of related settings. Each section looks like the following: [section name] keyname=value In this example, [section name] is the name of a section. Windows requires the enclosing brackets ([]) and the opening bracket must be in the first column of the line in the INI file. Each section contains zero or more keyname=value settings. A keyname is the name of a setting. It can consist of any combination of letters, digits, and blank spaces. Windows allows certain special characters too, but uses very few in its settings. The keyname ends with an equal sign (=). Each value can be an integer, a string, or a quoted string. You can include comments in INI files. Each comment line begins with a semicolon (;). Although not as useful in WIN.INI, comments can help remind you what each of the many devices drivers in SYSTEM.INI mean. The total size of any INI file cannot be greater than 64KB. If you add too many comments or don't clean out INI file settings after removing Windows applications, you can exceed this limit. When the file size exceeds the limit, Windows and Windows applications can behave unpredictably. If a section appearing in WIN.INI or SYSTEM.INI is not described here, then it is an application or device driver created section. You must consult the documentation for the application or device driver to find the settings and what they do. Hint: Blank lines are also ignored by Windows when it reads INI files. You can insert blank lines between sections to make your INI files more readable. Reading the Setting Descriptions Each setting is laid out as in the following example: SettingName= Purpose: This paragraph describes the function of the setting. Default Value: This is Windows' built in value for this setting. Recommended Value: This optional paragraph describes appropriate values for the setting and under what circumstances you may want to change it. Change by: This paragraph describes the recommended way to change the value of this setting. Notes: This optional paragraph describes other things that may be important about the setting and the possible consequences of using an incorrect value. The shows whether the value should be a number, a letter, a range of numbers, or something else. Changing the INI files Control Panel changes many settings in WIN.INI. If it handles the setting you want to modify, using it is safest. Most settings changeable from Control Panel take effect immediately. You can also load the INI file into Notepad or some other text editing application and manually modify the settings. Changes made this way will not take effect until you force Windows to reread the INI file. Usually this means exiting and restarting Windows. The Windows Setup application modifies many settings in SYSTEM.INI. Changing video, mouse, keyboard or network drivers usually requires several simultaneous setting changes. Unless you are comfortable with making changes yourself, it is safer to use Windows setup for these settings. Most of the settings described here are ones that are not handled by Setup and must be modified using Notepad. Hint: In the \WINDOWS\SYSTEM directory, there is a program called SYSEDIT.EXE. It is the Windows System Configuration Editor. You should install this program into Program Manager. It makes making changes to the various configuration files on your system easier to do. When you launch it, it loads your CONFIG.SYS, AUTOEXEC.BAT, SYSTEM.INI, and WIN.INI files into separate Notepad-like edit windows. You can then change whichever files you need to and save them from it instead of using Notepad on each file separately. WIN.INI The WIN.INI file controls most of the environment that you see when you work in Windows. These include how Windows looks and gives feedback to you, how Windows applications act when you perform certain actions, and printer device connections. General Windows 3.1 Configuration The [windows] and [extensions] sections define to Windows how parts of the interface work and the associations of documents to applications. The [windows] section is the oldest configuration section in the Windows operating environment. This means that diverse settings exist in it because no better home was available. [windows] The [windows] section contains settings that control the basic appearance of the Windows environment and how Windows treats documents. That the section is a potpourri of settings is mostly historical. Before Windows 3.0, WIN.INI controlled almost all aspects of the Windows environment. With Windows 3.1, the remaining settings that have no other home appear here. BorderWidth= Purpose: Sets the width of the borders around all the resizable windows on your desktop. Default Value: 3 Recommended Value: For standard VGA and lower resolutions, use the default of 3. For 800x600 or higher resolution displays, try 5 or higher. Increase as necessary for higher resolutions to make a comfortably-sized border you can click on to resize windows. The allowed range of values is 1 to 49. Change by: Choose the Desktop icon from Control Panel. CoolSwitch=<0 or 1> Purpose: Turns fast task switching on or off. When off, ALT+TAB brings up the entire application window of the next task to show what is next. When this setting is 1, only a bar appears with the window title and icon of the next application. Default Value: 1 Recommended Value: It is much faster to switch between applications using ALT+TAB if CoolSwitch is on. Set the value to 1. When 0 is set, switching tasks causes the next task to redraw all of its windows. For most applications, this is not too slow, but for drawing or CAD applications, it may take several minutes. Usually, the window title is enough to decide whether the next application is the one you want. Change by: Under the Desktop icon in Control Panel, select or clear the Fast ALT+TAB Switching checkbox. DoubleClickHeight= Purpose: Specifies the height in pixels that the mouse pointer can move between clicks in a double-click. If the mouse pointer moves more than this amount vertically between clicks, the two clicks get treated as separate single clicks. Default Value: 4 Recommended Value: If you are running a very high resolution screen driver or you have your mouse set to very high sensitivity, increasing this value may help you double click more consistently. Change by: Use Notepad or SysEdit to edit the WIN.INI file. Notes: Micorsoft documents that if you enter an odd number, Windows rounds it up to the next even number. DoubleClickSpeed= Purpose: Sets how long between clicks on the mouse button before two clicks become separate single clicks. Default Value: 452 Recommended Value: Use the Control Panel's Mouse icon to change the value until you are comfortable with double-clicking. The value which is appropriate for you is highly personal. Experiment. Change by: Choose the Mouse icon from Control Panel. DoubleClickWidth= Purpose: Specifies the width in pixels that the mouse pointer can move between clicks in a double-click. If the mouse pointer moves more than this amount horizontally between clicks, the two clicks get treated as separate single clicks. Default Value: 4 Recommended Value: If you are running a very high resolution screen driver or you have your mouse set to very high sensitivity, increasing this value may help you double click more consistently. Change by: Use Notepad or SysEdit to edit the WIN.INI file. Notes: Microsoft documents that if you enter an odd number, Windows rounds it up to the next even number. Load= Purpose: Specifies one or more programs that will run minimized when Windows starts. Default Value: None Recommended Value: This value lists one or more application program names or documents that are associated with an application, each separated by a space. If the programs or documents are not in your path, then you must specify the complete path. Unless you have a specific requirement to have these programs or documents load before Program Manager completes initialization, add the application to the Startup Group of Program Manager instead. Then select the Minimize on Use checkbox in the Properties dialog box for the icon. Change by: Use Notepad or SysEdit to edit the WIN.INI file. Programs= Purpose: Defines to Windows the extensions that it should regard as applications. You must list the extensions without the preceding periods. Default Value: com exe bat pif Recommended Value: Ensure that the default values are specified. Change by: Use Notepad or SysEdit to edit the WIN.INI file. Notes: Upgrading from older versions of Windows sometimes left the PIF extension off. When this happens, it prevents you from running DOS applications via their PIF file. Run= Purpose: Specifies one or more programs that will run when Windows starts. The programs will start but will not appear as icons initially. Default Value: None Recommended Value: This value is a list of one or more application program names or documents that are associated with an application, each separated by a space. If the programs or documents are not in your path, then you must specify the complete path. Unless you have a specific requirement to have these programs or documents load before Program Manager completes initialization, add the application to the Startup Group of Program Manager instead. Change by: Use Notepad or SysEdit to edit the WIN.INI file. ScreenSaveActive=<0 or 1> Purpose: Determines whether or not the Windows screen saver displays if you leave your system unattended. Default Value: 0 Recommended Value: If you are using only the Windows supplied screen savers, use 1. When you use another Windows screen saver and it does not have an interface to the Windows screen saver modules, use 0. If your Windows screen saver has an interface to the Windows one, decide how you want to start your separate screen saver. Screen savers are nowhere near as important as they used to be with CGA and EGA monitors. VGA monitors are much more resistant to burnin than the older types. Nonetheless, you usually want to have a screen saver because burnin can still occur. Also screen savers provide some amount of security if you must leave your system unattended where someone else can sit in your place. Change by: Choose the Desktop icon from Control Panel. ScreenSaveTimeOut= Purpose: Sets how long that Windows must be idle before the screen saver starts. Default Value: 120 Recommended Value: The default is usually much too short. Just sitting and reading something on your screen may take long enough to have the screen saver start. For most people, a more appropriate value lies between 300 and 600 seconds. Change by: Choose the Desktop icon from Control Panel. Spooler= Purpose: Enables or disables sending printer output through Print Manager. Default Value: Yes Recommended Value: Disabling Print Manager gives the shortest total time from beginning to print until the finished document appears, but you cannot use or switch to another Windows application until the printing finishes. With Print Manager enabled, you regain control of your application more quickly, but it takes longer from when you began printing until the output completes. The advantage is that you can do other work on your computer while the file prints. Unless you need the fastest print speed, leave Print Manager enabled. Change by: Choose the Printers icon from Control Panel and enable or disable the Use Print Manager checkbox. [extensions] The [extensions] section controls the association of document file extensions to applications. Although Windows 3.1 still uses this section, newer applications use the Object Linking and Embedding (OLE ) registration database to associate file extensions with applications. The OLE registration database has precedence over the [extensions] section of WIN.INI. If the same extension appears in both the [extensions] section of WIN.INI and the OLE database, the OLE database information overrides. = Purpose: Associates file extensions that identify a document with the command line needed to read the document when you choose a file that has the associated extension. Recommended Value: The keyname is a standard DOS file extension of one to three characters. The value is an ordinary DOS command line. A typical entry in this section might be pcx=pbrush.exe ^.pcx You will want to edit or add settings in this section if you change or add extensions of documents. For instance, suppose all your Word for Windows document files have the WRD extension instead of the standard DOC extension. You have to change the association here before double-clicking on a WRD file in File Manager automatically launches Word for Windows with the document loaded. Change by: Choose Associate from the File menu in File Manager. [mci extensions] The [mci extensions] section of WIN.INI works like the [extensions] section except that the extensions listed here are used only by the Windows Multimedia high level Media Control Interface devices. You should never have to modify the settings in this section. [embedding] The [embedding] section lists the association between objects and servers used by OLE. Each entry lists the object name, description, the program file of the executable file used to create and edit the object, and the format of the object. Windows uses this section of WIN.INI only as a backup to the OLE registration database (REG.DAT) should it become corrupted. Hint: You should never modify this section by directly editing it. Instead, use the Registration Info Editor (REGEDIT.EXE) to modify the contents. [programs] The [programs] section lists the additional paths used by Windows to search for program files when you try to open a document file that has an association in the OLE registration database but File Manager or Program Manager can't find the program file. This can happen if you install an OLE-aware server application and then you move it to another directory without de-installing it first. The settings in this section allow you to tell Windows where the application now resides. Hint: Although this section can fix problems of moved applications, you are better off to learn how to use the OLE Registration Info Editor. Use it to modify the registration database to point to the new location of the applications or to remove and reinstall them. All the parts of Windows that track where things are then remain up to date. Appearance and Sounds An advantage of the Windows environment is that all its applications have similar look and feel. This extends to the desktop itself and its appearance. The [desktop] and [fonts] sections manage the desktop appearance. The [fonts] section also manages the typeface used for system functions such as menus and window titles. [desktop] The [desktop] section controls the Windows desktop appearance and the positioning of windows and icons on the screen. Control Panel changes most settings through the Desktop icon, but there are several useful ones that are not in Control Panel. IconSpacing= Purpose: Specifies the number of pixels that will appear horizontally between icons. Default Value: 77 Recommended Value: The default is appropriate for VGA screens, but is too crowded for higher screen resolutions. A value of 96 is more appropriate for 800x600 resolution, and 120 for 1024x768. Setting this value very high for long icon titles is not important anymore since in Windows 3.1, icon titles can wrap onto more than one line of text. See IconTitleWrap for more information. Change by: Choose the Desktop icon from Control Panel. IconTitleFaceName= Purpose: Specifies the font used for displaying icon titles. Default Value: MS Sans Serif Recommended Value: Use the default value. If you really want to change this setting, choosing a bitmapped typeface such as MS Serif will have faster screen updates than using a TrueType or other scaleable typeface. On a VGA or a very large display, you might want to try Small Fonts if your eyes are good, as its largest size is 7 points. Change by: Use Notepad or SysEdit to edit the WIN.INI file. IconTitleSize= Purpose: Specifies the size of the font used to be used for displaying icon titles. Default Value: 8 Recommended Value: For VGA displays, use the default value. For higher resolution displays, you may want to try a smaller size, depending on the size and quality of your monitor. Change by: Use Notepad or SysEdit to edit the WIN.INI file. IconTitleStyle=<0 or 1> Purpose: Specifies whether the icon titles are bold or not. Default Value: 0 Recommended Value: Use the default unless you have a large monitor running at high resolution and use a small title size, or you are using a typeface which is normally very light. Change by: Use Notepad or SysEdit to edit the WIN.INI file. IconTitleWrap=<0 or 1> Purpose: Specifies whether the icon titles are wrapped onto more than one line if they are too long. Default Value: 1 Recommended Value: Use the default value unless you have IconSpacing set to a very high value and have a high resolution display adapter with a large monitor. Change by: Choose the Desktop icon from Control Panel. Notes: When IconTitleWrap is set to 1, Microsoft documents that icon vertical spacing is increased by 3 lines. It is not clear whether the 3 lines assumes some IconTitleSize setting or the actual height of the current icon title typeface. [intl] The [intl] section controls the appearance of dates, times, currency amounts and other items that change depending on the country you are in. All of the settings in this section are changed by choosing the International icon from Control Panel. [Windows Help] The [Windows Help] section controls the appearance of the Windows 3.1 Help window and the text that appears in it. The important settings are the ones that control text color. Depending on your display adapter, monitor, and screen device driver, special Help text displayed using the Microsoft defaults can be hard to distinguish from each other or regular text with the default colors. Each of the color values are integers from 0 to 255. Windows and the screen device driver convert the RGB triple into the nearest available color and uses it. For example, pure red is 255 0 0. JumpColor= Purpose: Sets the color of text that, when chosen, leads to a new panel of help information. Change by: Use Notepad or SysEdit to edit the WIN.INI file. PopupColor= Purpose: Sets the color of text that, when chosen, displays a popup panel. Change by: Use Notepad or SysEdit to edit the WIN.INI file. MacroColor= Purpose: Sets the color of text that, when chosen, runs a Help macro. Change by: Use Notepad or SysEdit to edit the WIN.INI file. IFJumpColor= Purpose: Sets the color of text that, when chosen, leads to a new panel of help information located in a different help file. Change by: Use Notepad or SysEdit to edit the WIN.INI file. IFPopupColor= Purpose: Sets the color of text that, when chosen, displays a popup panel in a different help file. Change by: Use Notepad or SysEdit to edit the WIN.INI file. [sounds] The [sounds] section lists the sound files associated with Windows system events. You should never need to edit this section of WIN.INI directly. Instead, choose the Sounds icon from Control Panel to modify them. You must have a device driver installed that can play WAV format sound files before you can hear sounds from system events. [color] The [color] section holds the color definitions for the standard elements of the Windows user interface. You should never need to edit this section of WIN.INI directly. Instead, choose the Colors icon from Control Panel to make changes. It's more convenient, as you see the effects of changes immediately. Fonts There are three types of typefaces directly recognized by the Windows operating environment: bitmapped, vector, and TrueType. If you have a third -party typeface scaling program installed, such as Adobe Type Manager (ATM), that program simulates to Windows bitmapped fonts of the necessary characteristics. TrueType is new in Windows 3.1. Before this version, bitmapped and vector fonts were the only type available. The bitmapped and vector font files have FON as their file extension. TrueType typeface files have TTF as their file extension, but what appears in your WIN.INI are files with the FOT extension. This is a TrueType font resource file. It contains some information about the typeface and the location of the TTF typeface file itself. The FOT file is created by Windows when you install new TrueType TTF files using Control Panel. Note: Microsoft persists in using the name fonts for just about everything to do with typefaces despite their terminology being wrong. What Microsoft calls a font is really a typeface. The two are not identical. Typefaces are organized into typeface families. A typeface family is a collection of typefaces designed with similar style. It can have a progression of design weights from light to dark and can possibly have condensed, expanded, and ornamental variations. A typeface is a single style variation of a typeface family. There can be as few as two typefaces in a typeface family. A font is a single typeface at a single size. Arial is a typeface family. Arial Narrow Italic and Arial Bold are different typefaces. Twelve point Arial Regular is a font. [fonts] The [fonts] section identifies to Windows the typefaces available on your system and the location of the font resource file describing them. It can contain zero or more occurrences of the following setting. = Purpose: Identifies the name of a font and the location of the font resource file describing it. Change by: Choose the Fonts icon from Control Panel. Notes: If the font resource file name has no path, the file is assumed to be in your \WINDOWS\SYSTEM directory. [FontSubstitutes] This section of WIN.INI is supplied to provide compatibility for Windows 3.0 applications running in Windows 3.1. Microsoft chose to change the names of two system typefaces and needed to provide a mechanism to enable these older applications to run and produce an appearance with no surprises. By judicious use of the entries in this section, you can remap typefaces used by older Windows applications to TrueType ones. = Purpose: Specifies the typeface to be used by Windows if the one you or your application specifies is not found on the system. Default Value: Helv=MS Sans Serif Tms Rmn=MS Serif Times=Times New Roman Helvetica=Arial Change by: Use Notepad or SysEdit to edit the WIN.INI file. Notes: The substitution happens only if the typeface you specify is not on your system but it is listed as a setting name in the [FontSubstitutes] section. If the requested typeface is not listed here, Windows will use other means to come up with what it will use to display your text. [TrueType] The [TrueType] section of WIN.INI describes the settings that control how TrueType works on your system. OutlineThreshold= Purpose: Controls the threshold at which Windows will render TrueType typefaces as outlines instead of bitmapped fonts. Default Value: 256 Recommended Value: If you are very low on memory but need to use many large typefaces simultaneously, then decreasing this value to about 50 will conserve memory. Doing so will slow down your system. Microsoft says not to specify a value over 300. Apparently, doing so can cause system crashes. Change by: Use Notepad or SysEdit to edit the WIN.INI file. Notes: An em space is the approximate width of an upper case M in the typeface you are using. If the size of an em space is larger than the number of pixels specified, the TrueType rendering engine will always regenerate the bitmaps when needed. Otherwise, it saves the bitmaps and reuses them to improve screen update speed. This setting is apparently used for both printer and screen fonts. At 256 pixels per em for a 1024x768 display translates into a width of just over 2 inches. For many typefaces, a 96-point font will reach the threshold. On a printer at 300 dpi, the threshold is about 36 points for common typefaces. Printing, Ports, and Network The [ports], [PrinterPorts], and [devices] sections describe the printers installed in Windows and the ports available. The [devices] section is a remnant of Windows 2.11 carried forth for compatibility. [ports] The [ports] section lists all the ports and files that can be used by the printer devices you have configured on your system. For serial ports, it also defines default communications parameters. This section can contain at most 10 settings. Any more than that number are ignored. The usual settings in the section are: COMx:, EPT:, LPTx.DOS, and FILE:. If you do not have an IBM PagePrinter with its proprietary EPT port, you can delete the EPT entry. Similarly, if you are not on a network and do not have LPT2: or LPT3: ports, you can delete those entries and the corresponding LPTx.DOS ones, too. Normally, Windows manages the printer ports directly and will read and write to the registers as needed to send output to your printer. If you have a special DOS TSR program or network connection that requires that software control the printer port, you should connect your printer to the correct LPTx.DOS port. Windows will write to LPTx.DOS which DOS then redirects to the proper program to handle the port. The only time you should need to make a change to this section other than to delete entries is to add a setting to name a specific file that you want to direct your printer output. This usually will be because you do not want to use the special FILE: port that Windows recognizes to print to a file but to always print to a specific file. The contents of this file will be overwritten every time you print to its port. Unlike normal printer ports, a file port name has no colon in it. For example: DOCUMENT.EPS= is a valid file port name entry. [PrinterPorts] The [PrinterPorts] section lists the printers that are defined to Windows and their current port assignment and time-out values. No changes should be made to this section except through Control Panel. [devices] The entries in the [devices] section should be kept identical to the ones in the [PrinterPorts] section except that there are no time-out values. If you make any changes to your printer configurations using Control Panel, it will rewrite the [devices] section to be compatible with the [PrinterPorts] section. [network] The [network] section of WIN.INI contains network settings and previous network connections. If you install Windows with a network device driver, you have the option to have network connections restored so that they are the same as they were when you last exited Windows. Normally, you should never have to modify this section as Windows maintains it for you automatically. SYSTEM.INI The SYSTEM.INI file contains global system information that Windows uses when it starts. With many settings, incorrect values can cause Windows to lock up at startup or immediately return to the DOS prompt. Sometimes, Windows will start and run, but then crash mysteriously. Be very careful about modifying any parts of SYSTEM.INI and always have a backup of the file to restore from. Windows Configuration The sections described here control how Windows operates with your hardware. Settings here affect how Windows and Windows applications work. [boot] The [boot] section contains a list of device drivers and Windows modules that are used to configure Windows each time you start it. There are very few reasons for you to modify the contents of this section. Most of the settings are changed by the Windows Setup program. If you need to modify the settings not controlled by Setup, you should refer to the Windows Resource Kit or other similar reference documentation before making changes. Except for the CachedFileHandles setting, all other settings are required and have no defaults. Removing any of the settings will usually result in Windows not starting. CachedFileHandles= Purpose: Specifies the number of file handles Windows will use to keep track of the most recently used executable (EXE) and dynamic link library (DLL) files that can remain open. Windows keeps these files open so that they can be accessed more quickly. Default Value: 12 Recommended Value: Use the default. Valid values are from 3 to 12. Some networks restrict the number of files that can be open on a single server simultaneously. If you have trouble running Windows or Windows applications from a server, lowering this setting sometimes lets it work. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Shell= Purpose: Specifies the Windows program to be run when you start Windows. Default Value: Windows Setup installs PROGMAN.EXE, but Windows itself has no default. Recommended Value: Alternate Windows program shells such as Norton Desktop for Windows will install themselves as the Windows shell if you choose to do so. They will set the name of their executable file as the value of this setting. Sometimes, if that program crashes on startup, you may need to change the shell setting to get back to a usable Windows configuration. Not just any program can be used as your Windows shell. Certain Windows initialization functions are the responsibility of the shell program including executing the programs in the Load= and Run= settings in WIN.INI. Use a program here only if you know it is designed to be a Windows shell program. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Taskman.Exe= Purpose: Specifies the task switching program that will run when you press CTRL+ESC. Default Value: TASKMAN.EXE Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: If you are using a third-party task manager such as Metz Task Manager, you will find its program file name as the value of this setting. [boot description] The Windows Setup program uses the [boot description] section to describe the devices you can change when you run it. You should always use it to change the values of the settings in this section. If there is a mistake in this section, Windows Setup will not recognize your device drivers. When that happens, it much more complicated to install newer versions of Windows device drivers. [drivers] The [drivers] section contains a list of aliases assigned to Windows device drivers. This is how Windows device drivers that take parameters receive their parameters. The driver vendor should have provided documentation on what parameters their device drivers take and how to change them. Most installable device drivers are configured via the Drivers icon in Control Panel. [keyboard] The [keyboard] section provides information about the keyboard. The Windows Setup program should have set these values correctly and you should never need to manually modify this section. If you must change any, use the Setup program either from Windows or from DOS. [mci] The [mci] section lists the device drivers used by the Media Control Interface to play media files. Setup and Control Panel install these settings and drivers. You should never need to edit this section manually. Instead, use the Drivers icon from Control Panel to change or update a device driver listed here. [standard] The [standard] section controls how Windows runs in Standard mode. There should be no need to modify any of the settings in this section. [386Enh] The [386Enh] section controls how Windows runs in 386 Enhanced mode. With Windows 3.1 on a 386 or higher machine, there is seldom a need to run in any other mode. Because this mode offers many more possibilities for running applications, there are correspondingly more settings to look after. Using improper values for many of these settings will not crash Windows, but you may find that Windows runs very slowly or crashes frequently. 32BitDiskAccess=<0 or 1> Purpose: Enables or disables use of FastDisk, an Enhanced-mode-only disk device driver that can speed up access to your hard disk. Default Value: If it appears at all in SYSTEM.INI, then the default is 0. Recommended Value: If the setting is present, you should set it to 1. Otherwise, don't put it in yourself. Your drive controller hardware must be 100% compatible with a WD1003 disk controller before you can safely use 32-bit disk access. If the setting does not appear in your SYSTEM.INI, don't add it in and enable the setting without taking a full backup first. SCSI and ESDI drive controllers in general do not support 32-bit disk access and any attempt to use it will cause problems. Certain Ultrastor and Future Domain disk controllers are exceptions. Some portable computers with power management shut off the hard disk after a period of disk inactivity. Often Windows will allow you to turn on the 32BitDiskAccess setting. Be very cautious! The disk controllers often do not shut down so that the controller state is consistent. DOS applications still run because they go through the normal controller BIOS, but Windows with this setting enabled bypasses the BIOS with protected mode code of its own. This code may not restore controller state correctly before trying to access the disk. The result could be a scrambled hard disk. Change by: Choose the 386 Enhanced icon from Control Panel, choose the Virtual Memory button, and then the Change button in the dialog that appears next. At the bottom of the dialog box should appear the "Use 32-bit Disk Access" checkbox. Check it. If the checkbox does not appear, you should not use 32-bit disk access. COMxBase=
Purpose: Sets the port address for the named COM port. Default Value: The standard setting for COM1 is 03F8 and for COM2 is 02F8. There is no standard for COM3 and COM4. You must look up your settings in the manual of the adapter which supplies the COM3 and COM4 ports. A common setting for COM3 is 03E8 and COM4 is 02E8. Change by: Choose the Ports icon in Control Panel, choose a port, and then the Advanced Settings dialog. Notes: The settings get used by Standard and Enhanced modes despite these settings appearing in the [386Enh] section of SYSTEM.INI. COMBoostTime= Purpose: Specifies the amount of time, in milliseconds, to allow a virtual machine to process an interrupt on a serial port. Default Value: 2 Recommended Value: Use the default. If your communications application is losing characters during typing, you can try to increase this value. Doing so will slow down other applications. Increasing this value may also help with file transfers. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. COMxBuffer= Purpose: Specifies the amount of space to allocate for a buffer on the communications port. Default Value: 128 Recommended Value: Slower machines need fewer buffers, while higher modem speeds need more buffers. If you are not having problems with lost characters when using your communications program, use the default value. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: DOS communications applications from Windows may still have many file transfer errors no matter what values are used for this setting, because the data can get into the buffers only when the DOS virtual machine runs. This is a limitation of how Windows is designed. You may have to use a third-party communications port driver to get reliable file transfers with a high speed modem and DOS communications applications. If your system's I/O ports do not have 16550 UARTs, replacing them with ports that do will often help, but the results vary widely. COMxFIFO=<0 or 1> Purpose: Enables the FIFO buffer in a COM port's 16550 UART. If the COM port does not have a 16550 UART, this setting is ignored. Default Value: 1 Recommended Value: Always leave the buffer on by deleting these settings from SYSTEM.INI. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: Any value other than 1 turns the UART's buffer off. This is a bug in the communications port driver code. Microsoft did not fix this problem in Windows 3.1. The settings get used in Standard and Enhanced modes despite these settings appearing in the [386Enh] section of SYSTEM.INI. COMxIRQ= Purpose: Specifies which interrupt to be used for the COM port. Default Value: Depends on the machine, but generally IRQ 4 for COM1 and COM3 and IRQ 3 for COM2 and COM4. Recommended Value: Use the defaults unless your adapter documentation specifies otherwise. Change by: Choose the Ports icon in Control Panel, choose a port, and then the Advanced Settings dialog. The settings are used in Standard and Enhanced modes despite these settings appearing in the [386Enh] section of SYSTEM.INI. Notes: If you need to disable a COM port, use a value of -1 as the IRQ number. The settings get used in Standard and Enhanced modes despite these settings appearing in the [386Enh] section of SYSTEM.INI. DOSPromptExitInstruc=<0 or 1> Purpose: If enabled when you start the MS-DOS prompt, a message appears in the DOS window with instructions on how to exit and how to switch away from the MS-DOS prompt. Default Value: 1 Recommended Value: When you have been working with Windows for a while, you know how to exit and switch away, so use 0. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. EMMExclude= Purpose: Specifies a range of addresses that Windows will not scan to find unused address space. Default Value: None Recommended Value: If there are upper memory addresses that you want to reserve or that Windows cannot correctly detect as adapter ROM or adapter RAM, specify a range here. Valid ranges are between A000 and EFFF. An example is C000-C7FF. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: The procedure used by Windows to scan for adapter ROM or RAM can interfere with some adapters that use the same memory area. Windows rounds the lower value you specify down to the nearest multiple of 16KB and the upper value to the next higher multiple of 16KB. You can specify more than one range to exclude by using more than one EMMExclude setting. FileSysChange=<0 or1> Purpose: Specifies whether File Manager should receive notification messages any time a DOS application creates, deletes, or renames a file. Default Value: 0 Recommended Value: Use the default. File Manager uses the notification messages to update its file windows. While it does so, it can greatly slow other applications running on your system. If you must have File Manager up to date all the time as DOS applications manipulate files, then enable this setting. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Local= Purpose: Identifies DOS device drivers that are to appear in each DOS virtual machine. Default Value: None. Setup will set Local=CON by default. Recommended Value: Always have at least Local=CON in your SYSTEM.INI. If you are trying to use a mouse in a windowed DOS application, you may need to put Local=PC$MOUSE or Local=MS$MOUSE in your SYSTEM.INI along with Local=CON and other changes in SYSTEM.INI. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: If Local=CON is not in your SYSTEM.INI, it is possible that a DOS application writing to the screen will write to another screen instead. Another symptom is that when you type with a DOS application active, another windowed DOS application also receives the same keystrokes. The device name is case sensitive. It must match the name as used by the device driver to identify itself to DOS. Only certain device drivers will run separately in each DOS virtual machine. If you are not sure, don't use this setting. LocalReboot=<0 or 1> Purpose: Specifies whether Windows treats CTRL+ALT+DEL while an application is running as a request to shut down the application or to reboot the machine instead. Default Value: 1 Recommended Value: Use the default of 1. This allows you to use CTRL+ALT+DEL to shut down a hung Windows or DOS application without rebooting Windows and possibly losing all the data in other open applications. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. MaxPagingFileSize= Purpose: Specifies the largest size allowable of a temporary swapfile. Default Value: 50% of available disk space when Windows is started Recommended Value: Unless you have special requirements, use the Windows default. You should be using a permanent swapfile instead anyway as a temporary swapfile is slower than a permanent one. If you have lots of free disk space, say 100MB, and insist on using a temporary swapfile, then setting a maximum size of say 20MB will help prevent thrashing of your hard disk. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. MinTimeSlice= Purpose: Specifies the minimum amount of time a virtual machine is allowed to run before another virtual machine is run instead. Default Value: 20 Recommended Value: Using a smaller value will give smoother multitasking but can slow total Windows performance. Using a larger value will cause jerkier multitasking, but there is less Windows overhead. The default is appropriate for a 386 with a 16Mhz processor, but if you have a faster machine, you may want to decrease the value. For a 386/25, a value 5 of is workable. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. MinUserDiskSpace= Purpose: Specifies the minimum amount of hard disk space to leave when creating a temporary swapfile. Default Value: 2000 Recommended Value: Use the default. If you are using a temporary swapfile on a machine with a small hard disk, you may want to change this value so that your applications have enough room to create their data files. This setting is ignored when a permanent swapfile exists. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. PageOverCommit= Purpose: Controls the multiplier that the Windows Virtual Memory Manager uses to calculate the address space of the system. Default Value: 4 Recommended Value: Use the default unless you need to work with data that is much larger than your physical RAM. Setting the value higher will allow you to allocate a larger swapfile but incurs more overhead in managing it and causes more paging. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: The maximum linear address space allowed by Windows is found by taking the size of physical RAM rounded up to the next 4MB and then multiplying by this value. Paging=<0 or 1> Purpose: Enables the use of virtual memory and the permanent or temporary swapfile. Default Value: 1 Recommended Value: If you have less than 16MB of RAM, you usually need this to be on. If you have more than 8MB of RAM and usually run few Windows and DOS applications, you should consider turning Paging off. No swapfile is used and there is no overhead for managing Paging. If you have Paging=0, then you don't need to have space for any swapfile and Windows runs a little faster than with a swapfile. If you run out of RAM, though, then you can't use your hard disk to simulate more RAM to run more applications. Change by: Choose the 386 Enhanced icon from Control Panel and then the Virtual Memory button in the dialog box that appears. Choose Change in the new dialog box that appears and change the type of swapfile to None. PagingDrive= Purpose: Specifies where Windows will try to create a temporary swapfile. Default Value: The drive where SYSTEM.INI is. Recommended Value: Your fastest hard drive and never a RAM drive. Change by: Choose the 386 Enhanced icon from Control Panel and then the Virtual Memory button in the dialog box that appears. Choose Change in the new dialog box that appears and change the paging drive to a valid drive. Notes: Never page to a RAM drive. If you can afford the RAM for a RAM drive, then you can afford to use that memory for Windows or your disk cache instead. PagingFile= Purpose: Specifies the path and file name for the temporary swapfile. Default Value: \WINDOWS\WIN386.SWP Recommended Value: Delete the setting from your SYSTEM.INI and use the default. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. PermSwapDOSDrive= Purpose: Specifies where Windows will create the Enhanced mode permanent swapfile. If you are using a temporary swapfile, this setting is ignored. Default Value: None Recommended Value: Use your fastest hard disk drive. If you have more than one drive or partition on the drive, use the one with the most free space. Change by: Choose the 386 Enhanced icon from Control Panel, then the Virtual Memory button, and finally the Change button. Notes: The permanent swapfile cannot be on a device driven disk drive. For instance, Stacker drives cannot be used. If you use Stacker or another similar device driver to create drives, you must leave enough space on the physical drive for your permanent swapfile and allocate it there. If you do not leave enough space, then Windows in Enhanced mode must use a temporary swapfile, if you choose to use any. Windows will normally never use this setting as it will find the permanent swapfile through other means. However, if you somehow manage to get a corrupted permanent swapfile, you can delete it and Windows will recreate it the next time Windows starts in Enhanced mode. To delete the permanent swapfile from outside of Windows, you must delete two DOS files: SPART.PAR in your Windows directory, and 386SPART.PAR in the root directory of the drive containing the permanent swapfile. PermSwapSizeK= Purpose: Specifies the desired size of the permanent swapfile. Default Value: None Recommended Value: 4096 Change by: Choose the 386 Enhanced icon from Control Panel, then the Virtual Memory button, and finally the Change button. Notes: Unless you have a very good reason to choose a different size, use a 4MB permanent swapfile size. Adjust the size upwards if you consistently get Out of Memory messages from Windows, and adjust the size downwards if you never get them. If your system contains 16MB or more of RAM, you probably should think about disabling Paging. PerVMFiles= Purpose: Specifies the number of private file handles allocated to each virtual machine. Default Value: 10; 0 if SHARE is installed Recommended Value: Use the default value if your DOS application does not have enough file handles to run. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: The total number of file handles allocated by DOS before you start Windows plus the number of private file handles allocated cannot exceed 255. If SHARE is installed, this setting is ignored. VirtualHDIRQ=<0 or 1> Purpose: If enabled, Windows in enhanced mode can use its own code to handle hard disk interrupts instead of the ROM BIOS code in the hard disk controller. Default Value: 1 for AT-compatible computers Recommended Value: 1 if you have an AT-compatible with MFM, RLL, or IDE drives, 0 otherwise Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: ESDI and SCSI drives generally need to have all interaction with their hard disks go through the ROM BIOS routines on the adapter. If you are running ESDI or SCSI drives and experience an immediate lockup as you try to start Windows, setting VirtualHDIRQ=0 will generally correct the problem. WindowUpdateTime= Purpose: Specifies the minimum amount of time Windows allows between updates of a windowed DOS application. Default Value: 50 Recommended Value: Use the default. If you have a DOS application that puts out many characters at a time to the screen and the output is too jerky for your tastes, reducing this value will make the output smoother, but will slow other applications as Windows resources are devoted to the application more often. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. DOS Applications What Microsoft calls a non-Windows application, everyone else calls a DOS application. As an aside, Microsoft is going to get into trouble in Windows NT with this kind of terminology as a non-Windows application to NT can be a DOS or an OS/2 application. Most of the global settings that control DOS applications are found in the [NonWindowsApp] section of SYSTEM.INI. Most of the rest are in PIF files for the applications or in DOSAPP.INI, which is not described here. [NonWindowsApp] The [NonWindowsApp] section controls how DOS applications run and their performance. Several settings control the appearance of DOS applications when run in a Window. FontChangeEnable=<0 or 1> Purpose: Controls the ability to change the screen fonts of DOS applications running in a window. Default Value: 1 on systems that are using a Windows 3.1 screen grabber, and 0 on systems that are using a Windows 3.0 screen grabber Recommended Value: Use the default unless you must run a Windows 3.0 screen device driver and grabber with Windows 3.1 and must have a nonstandard font size for DOS applications running in a window. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: Using Windows 3.0 screen drivers with Windows 3.1 loses many features. Being able to change the screen font for DOS applications running in a Window is one of them. Try to find an up-to-date screen device driver. If you can't and decide to enable this setting anyway, you can start losing characters and Windows may place the cursor incorrectly. MouseInDOSBox=<0 or 1> Purpose: Specifies whether a DOS application that supports a mouse and is running in a window should see the mouse or not. Default Value: 1 if the DOS mouse driver supports use of the mouse in a windowed DOS application. Otherwise, the default is 0. Recommended Value: If you are using a Windows 3.0 screen grabber and want to use the mouse in a windowed DOS application, you can enable this setting. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: Upgrading to a Windows 3.1 screen device driver with a Windows 3.1 screen grabber is a safer way of getting mouse support in a windowed DOS application. There are several other things that may prevent a DOS application from seeing the mouse, even with this setting enabled. ScreenLines= Purpose: Specifies the number of screen lines that will be displayed when a DOS application starts. If the application changes screen modes, it can override this setting. Default Value: The number of screen lines set for DOS before you started Windows, usually 25. Recommended Value: If you have a high resolution screen monitor and you feel comfortable with 50 line displays when not running Windows, try 50 lines here to see if you can live with it. You may have to change the Windows screen font used for your DOS application so that the window is sized appropriately. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Notes: Microsoft's and most other documentation are wrong about the default value. SwapDisk= Purpose: Tells Windows where to swap DOS applications when running in Standard mode and when the TEMP environment variable is not set. Default Value: The root directory of your first hard disk, usually C:\. Recommended Value: You should set the TEMP DOS environment variable to the appropriate directory from your AUTOEXEC.BAT file and not modify this setting. Change by: Use Notepad or SysEdit to edit the SYSTEM.INI file. Important Settings Inde