Customize the Windows 98 boot process by editing the MSDOS.SYS file

Learn to edit the MSDOS.SYS file to customize the Windows 98 boot process

If you’ve ever pressed [F8] during the initial portion of the Windows 98 boot up process, you’ve seen a menu that offers several choices as to the way Windows 98 boots. However, this menu offers only a portion of the options that are actually available. In this Daily Drill Down, I’ll explain how you can edit the MSDOS.SYS file to customize the Windows 98 boot process.

Why edit the MSDOS.SYS file
Making some relatively simple changes to the MSDOS.SYS file allows you to control various aspects of the boot process. For example, you can force Windows 98 to display the boot menu and hide the Windows 98 splash screen so that you can see what’s going on in the background. Even if none of the options that I present appeal to you, reading this Daily Drill Down and understanding how MSDOS.SYS works will give you a much greater understanding of the Windows 98 boot process.

Removing the file’s attributes
By default, the MSDOS.SYS file is heavily protected. Microsoft has created the file in such a way that it’s read-only and hidden. It’s also flagged as a system file. Therefore, you must remove these qualities before you can edit the file. To do so, open an MS-DOS prompt window and type the following sequence of commands:

These commands remove the attributes that we discussed from the MSDOS.SYS file, create a backup copy of the MSDOS.SYS file called MSDOS.ORG, and make the MSDOS.ORG file read-only so that no changes are accidentally made to it.
Although editing MSDOS.SYS is simple, you can royally screw up the boot process if you make a mistake or use an option that you don’t understand. That’s why it’s always good to have a backup of the original file. If you make a devastating mistake, boot your computer from an MS-DOS boot disk such as the Windows 98 emergency repair disk, and run the following commands:C:
COPY C:\MSDOS.ORG MSDOS.SYSOnce you’ve run these commands, the original MSDOS.SYS will be restored and Windows will boot normally. Keep in mind that because we restored the backup copy, the MSDOS.SYS file is now read-only. That means that if you decide to take another crack at editing it, you’ll have to use the first procedure that we described to remove the file’s attributes again. After the restore, the MSDOS.ORG file will still exist, so there’s no need to create a new one.Tipend
Once you make the MSDOS.SYS file editable, you can open it with either Notepad or with the MS-DOS Editor. Your file will look like the one shown in Figure A.

Figure A
The MSDOS.SYS file is a simple text file.

As you can see in the figure, the MSDOS.SYS file is nothing more than a simple text file that you can edit. The file is divided into three sections: the Paths section, the Options section, and the comment section. We’ll discuss all of the options that are available in these sections, including the ones that aren’t set by default.

The Paths section
The Paths section contains information about locations of various files within the operating system. Unless you have a compelling reason to make changes, I recommend leaving the Paths section alone. The following options are available in the Paths section:

The HostWinBootDrv=command specifies the root location of the boot drive. By default this value points to C:.

As you may recall, when you installed Windows 98, there was an option to create a backup of your previous operating system. The previous operating system was compressed and stored in a massive file named WIN98UNDO.DAT. A corresponding file called WIN98UNDO.INI provides instructions for decompressing this file. The UninstallDir value points to the location of these files. By default, the location is C:.

The WinBootDir= command specifies the location of the directory that contains the Windows 98 operating system. By default, this value points to C:\WINDOWS.

The Options section
Before you can truly understand and appreciate the Options section, you have to understand the Boot menu. Many of the commands under the Options section directly relate to the Boot menu. Upon booting your computer, you’ve probably noticed a message that quickly flashes by that says Starting Windows 98. When that message is displayed, you have two seconds, by default, to press [F8]. Upon pressing [F8], you’ll see a menu with several choices relating to the way that Windows 98 boots. Below is a brief listing of the menu choices and their functions. Not every computer will offer all of these choices.
  • Normal: Loads Windows 98 in the usual manner.
  • Logged (\BOOTLOG.TXT): Loads Windows 98 normally, but creates a log file outlining the boot process.
  • Safe Mode: Loads Windows 98 with a minimal set of drivers. Safe mode is used for diagnostic purposes and to remove bad drivers.
  • Safe Mode With Networking Support: Boots to safe mode, but also loads Network drivers so that you can access the network while in diagnostic mode.
  • Command Prompt Only: Starts the computer in MS-DOS mode.
  • Safe Mode Command Prompt Only: Boots the computer into MS-DOS mode, but doesn’t execute the CONFIG.SYS or AUTOEXEC.BAT files.
  • Boot From Your Previous Version Of MS-DOS: Allows you to boot from MS-DOS 5 or MS-DOS 6 if it was previously installed on your system.

Now that you know a little something about the Boot menu, we’ll discuss the commands available in the Options section.

The AutoScan= command refers to whether Windows runs ScanDisk after a bad shutdown. A value of 0 tells Windows to never run ScanDisk (not recommended). A value of 1 makes Windows ask you whether to run ScanDisk. Finally, a value of 2 forces ScanDisk to automatically run, but prompt you before fixing errors. The Windows default value is 1.

By default, you have two seconds to press [F8] when you see the Starting Windows 98 message. The BootDelay command allows you to change the number of seconds to a larger or smaller number.

The default value of the BootSafe= command is 0. However, changing this command to 1 will force your computer to always boot into safe mode.

By default, the BootGUI= command is set to a value of 1. Changing this value to 0 will cause Windows to not load the graphical user interface.

If you find it disturbing that a user could press [F8] and access the Boot Menu, you’ll like the BootKeys= command. By default, this command is set to 1, but changing the value to zero disables the use of the [F4], [F5], [F6], and [F8] keys during boot up.

The BootMenu= command is set to 0 by default (even though it isn’t actually displayed in the MSDOS.SYS file). Adding the command BootMenu=1 to the MSDOS.SYS file causes Windows to display the Boot Menu every time you boot the computer, without having to press [F8]. By default, the Normal option is selected. Windows will automatically boot the computer in normal mode if you don’t make a menu selection within 30 seconds.

If you enable the BootMenu=1 setting, you can use the BootDefault to change the option that’s automatically loaded if you don’t make a choice. By default, a value of 1 is used to boot to normal mode. However, you can use the number of any menu choice, to force Windows 98 to boot to that menu option if a choice isn’t made within the amount of time allowed.

When you use the BootMenu=1 option, you have 30 seconds to make a choice before the default choice would be automatically executed. The BootMenuDelay= option allows you to change the number of seconds to meet your needs.

If you installed Windows 98 on top of an older version of MS-DOS, that version may still exist. By default, Windows sets the BootMulti command to 0 to prevent you from accessing that version. However, setting this option to 1 allows you to press [F4] to boot to your older version of MS-DOS. A corresponding option is also added to the Boot menu.

By default, the BootWarn= option is set to 1. This means that when there’s a boot failure, Windows 98 will warn you and offer you the chance to boot to safe mode. Setting this value to 0 will remove the warning and disable safe mode. I don’t recommend changing this option.

By default, when you have an older version of MS-DOS loaded on your computer, Windows 98 is the default operating system and the BootWin command is set to 1. Setting this value to 0 makes MS-DOS the default operating system.

By default, double buffering is disabled and the DoubleBuffer= command is set to 0. However, if you have a SCSI controller that requires double buffering, you can set this value to 1 for conditional double buffering or to 2 for unconditional double buffering.

As a normal part of the boot process, Windows 98 loads the Drvspace.bin file and the DRVSPACE.BIN= command is set to 1. Although I don’t recommend it, you can disable the loading of Drvspace.bin by changing this value to 0.

It’s really no big secret that Windows 98 actually rides on top of its own version of MS-DOS. As with any other MS-DOS version, making the most of the first 640 KB of memory is crucial. Normally, Windows 98 tries to load and Drvspace.bin in upper memory above the conventional memory to make extra room in the conventional memory for other files. To do so, Microsoft sets the LoadTop= command to 1. If you’re having compatibility problems and Windows doesn’t boot correctly, you might try setting this value to 0 to force these files to load in conventional memory.

When you boot Windows 98, you’re probably used to seeing the Windows 98 logo while you wait for everything to load. The LOGO= command is set to 1 to cause Windows to display this logo. However, if you’re the curious type and want to see what’s going on behind the scenes, try setting this value to 0 to remove the logo.

If your computer is on a network, add the command Network=1 to the MSDOS.SYS file. By doing so, you’ll add the Safe Mode With Networking Support command to the Boot Menu.

The comment section
At first glance, the comment section may seem useless since it’s nothing more than a bunch of Xs. However, these seemingly unimportant Xs are crucial. If the MSDOS.SYS file is less than 1,024 bytes in size, some software, such as most anti virus programs, will freak out. If you want your computer to continue to function, don’t delete anything from the comment section.

In this Daily Drill Down, I’ve explained how you can edit the MSDOS.SYS in order to gain control over the Windows 98 boot process. As I did, I explained the process behind removing the attributes that make the MSDOS.SYS file a hidden read-only system file. I then went on to explain the various sections of the file and the options within those sections.

Brien M. Posey is an MCSE and works as a freelance technical writer and as a network engineer for the Department of Defense. If you’d like to contact Brien, send him an e-mail. (Because of the large volume of e-mail he receives, it's impossible for him to respond to every message. However, he does read them all.)

The authors and editors have taken care in preparation of the content contained herein, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for any damages. Always have a verified backup before making any changes.

Editor's Picks

Free Newsletters, In your Inbox