[ Go to October 1997 Table of Contents ]

You don't have to limit yourself to one Windows operating system ... Install Them All

-- by Lou Grinzo

When it's time to upgrade a Windows system, there are essentially two types of users: those who dive in and replace their configuration with Redmond's latest and greatest CD (even if it's beta), and those who almost never upgrade for fear of turning their finely tweaked Windows installations into unusable wrecks. This article is for both groups. We'll show you how easily you can install, remove and run a virtual museum of Windows versions on the same system, without resorting to extra disk partitions or third-party software.

Why bother? A multi-boot configuration is a safe way to test drive a particular release of Windows before you commit to it. And once you've developed confidence in your new OS, it's easy to remove the old one, as we'll show you. There are other reasons to install more than one OS on your system. For one, you may not be able to convert full time to Windows NT because it lacks a device driver or it won't run some application you need. In that case, keep your old copy of Windows 95 (or even Windows 3.1x) around to support that one critical task. A multi-boot system can also serve as a test platform for trying out new software under different operating systems. Even though Microsoft makes a considerable effort to keep its Windows offerings compatible, things aren't perfect in this regard.

The Forked Road Ahead

We'll start at the dawn of the modern Windows era, with a hard drive containing DOS 6.x and Windows 3.1x, and add Windows 95 and Windows NT versions 3.51 and 4.0. With this configuration you can boot into any operating system from DOS to Windows NT, and they'll all share the same disk partition and files. We'll also cover Windows 98 and Windows NT 5.0. The information on these new releases is based on limited experience with Beta 1 of Windows 98 and conversations with Microsoft, so the final products will likely differ slightly in this area. Where details are the same for Windows 95 and Windows 98, we'll refer to them as Windows 9x.

The basic pattern is the same for any new copy of Windows: You install Windows and vendor-supplied drivers, then you install (or reinstall) your applications. Finally you adjust the numerous minor settings to reflect your preferences, such as the keyboard repeat rate, mouse characteristics and so on. If you'll be using a particular Windows installation only sparingly, you can often skip some of these steps. For instance, Windows 95 recognizes the ATI Graphics Xpression card in our test system as being a Mach64 board and installs basic support for it. ATI's driver disk, on the other hand, would add property pages to Control Panel's Display applet that provide greater control over the board, but they're not absolutely necessary.

One thing we won't discuss here is how to create and boot from multiple disk partitions using programs such as PowerQuest's PartitionMagic or V Communications' System Commander (see "FAT32: The Big Deal About Big Disks," Features, August). This is a valid way to build a multi-boot system that will give you even more power and options than the single-partition approach, but it's also slightly riskier; if you make a mistake, you're one or two keystrokes away from disaster. For instance, you could mark a partition the wrong way, or even format or nuke the wrong partition.

Many business users still run Win3.1x, and if you're one of them, you're probably feeling more pressure than ever to upgrade to Win9x or NT. If you're unsure which road to take, you'll likely want to experiment with both. We'll look at Win9x first.

Installing Win95 or Win98 without disturbing an existing Win3.1x configuration is easy. But before you even insert the CD, create a bootable DOS 6.x diskette. Format the diskette using the /S option, which will create a bootable diskette; copy the DOS SYS.COM file to it as well. You'll need this diskette later if you want to remove Windows 9x from your system.

To install Windows 9x, run Setup, select the Custom installation option and tell the program to install into a new directory so you don't overwrite your current copy of Win3.1x. After installation, your system will boot directly into Win9x, as expected. To boot your prior DOS/Windows installation with Win95, press F4 when the "Starting Windows 95 ..." message appears. Win98 will likely use a different mechanism; you'll have to press the Ctrl key before Win98 starts, typically during your system's initial POST (power-on self-test) process. This will make Windows display a boot menu that includes an entry for MS-DOS.

To remove Win3.1x from this configuration, boot Win9x and delete the entire Win3.1x directory tree. Be careful not to lose anything valuable in this step, such as programs or drivers stored in subdirectories under the Win3.1x Main directory. Your root directory may also contain a hidden Win3.1x permanent swap file named 386SPART.PAR. Delete this, too. Also, delete COMMAND.DOS, IO.DOS and MSDOS.SYS from the root directory.

To keep Win3.1x and remove Win9x, shut down your system and boot from the DOS diskette you made earlier. Then use the command SYS C: to transfer DOS 6.x from the diskette to your hard drive. Your hard drive will be a DOS/Win3.1x system once again. Now you can remove the diskette from the A: drive and reboot, then use Win3.1x's File Manager to delete the Win9x and Program Files directories. You'll also want to delete the files Win9x added to your root directory, including: BOOTLOG.PRV, BOOTLOG.TXT,COMMAND.W40, AUTOEXEC.W40, CONFIG.W40,MSDOS.W40, MSDOS.xxx, NETLOG.TXT, SETUPLOG.TXT, SUHDLOG.TXT and SYSTEM.1ST. If you manually set the Win9x swap file size (something that's normally not recommended), the swap file is C:/WIN386.

SWP, which you can also delete. If you let Windows manage your swap file, it was stored in your Windows directory, and you deleted it along with everything else in that directory.

Will you be able to install both Win95 and Win98 on the same hard drive partition and multi-boot between them? We weren't able to test this with Beta 1 of Win98, but Microsoft said it will work in the shipping version. This means you'll be able to boot directly into Win98 or press the Ctrl key to boot into Win95, and from there use the F4 key to boot into DOS 6.x and Win3.1x.

Windows NT: Heavy Lifting

The next step up the Windows hierarchy is a big one: adding NT. We'll start with NT 3.51, but you'd use the same procedure for NT 4.0.

NT differs from its siblings in a very interesting way: It automatically displays a boot menu when you start your system. You use this menu to select from the installed versions of NT or your prior OS, which in our example is Win9x. The easiest way to install NT and make sure Win9x has an entry on the boot menu is to install NT from a DOS box within Win9x. To open a DOS box, run the file COMMAND.COM in your main Win9x directory. This will create either a full-screen or windowed DOS session. At this command line, switch to the I386 directory on the NT CD and enter the command winnt /b /w. Then you won't have to format three boot and install diskettes, which the NT installation process would otherwise force you to do.

As with Win9x, you should use the custom installation for NT, and you must specify a new directory for the operating system files. You may find NT isn't quite as friendly as Win9x when it comes to detecting hardware. On our test system, NT froze when we tried to detect our network adapter, and we had to restart.

Adding NT 4.0 to your burgeoning system is an almost identical process to the NT 3.51 installation. Boot NT 3.51 and use File Manager to run the WINNT32.EXE program from the I386 directory on the NT 4.0 CD. Unlike the WINNT.EXE command-line program you used to install NT 3.51, this program is a windowed application. It will install NT 4.0, which, once again, has to go into a new directory. The installation program's first screen has an Options button that displays a dialog. This dialog lets you control whether the installation creates a set of three boot floppies or uses a set from a prior run of the setup program. Because this is your first time through this program, you'll have to let it create the three disks and then boot from them to continue the installation.

If you have only one version of NT on your system, remove it the same way you removed Win9x: Use the SYS command from a bootable diskette to make your system boot to the prior OS. Using the setup we have at this point, this requires using Explorer under Win9x to format a diskette and transfer the system files to this diskette. You'll also need SYS.COM from the Command subdirectory under the main Win9x directory. This diskette is just the DOS 7.0 version of the DOS boot diskette we used earlier to remove Win9x. As before, boot the system from this diskette, use the command SYS C: and restart. It will boot Win9x, which you can then use to delete the main NT directory. Other files in the root you should delete are NTDETECT.COM, NTLDR and BOOT.INI. You'll also likely find a large file in the root named PAGEFILE. SYS, which is the NT swap file. Delete these four files only if you've removed the only copy of NT from your system.

Removing one of several copies of NT is even easier. Just start an OS other than the one you're deleting; edit the BOOT.INI file in the root of your C: drive, deleting all lines that refer to the version of NT you're removing; then save the file. Then delete the directory that contains that version of NT, and you're done.

At this point, our multi-boot configuration truly deserves its name, but the story gets even better. Microsoft confirms NT 5.0 will install onto the boot menu alongside the older versions, which means you can easily add a third copy of NT to your configuration. Microsoft also says you'll be able to have both Win95 and Win98 in this configuration. In this scenario, you start your system and see a menu that lists three versions of NT (3.51, 4.0 and 5.0), plus a Microsoft Windows entry for Win98. You can select one of the NT versions or choose the last entry to start Win98. If you choose Win98, you can use the Ctrl key to start Win95 instead. And you can then use F4 to skip Win95 and start DOS or Win3.1x. This gives you DOS, Win3.1x, Win95, Win98 and three versions of NT, all multi-bootable from, and sharing, the same disk partition.

Contributing editor Lou Grinzo is president of Lou Grinzo Technologies, a computer consulting and contract programming firm, and author of Zen of Windows 95 Programming (Coriolis Group, 1995). Contact Lou care of the editor at the addresses on page 20.

The (Re)Movable OS

Multi-booting is fine, but there must be a way to run different versions of Windows without changing your current system configuration. There is, but you'll have to make an investment in hardware: Outfit your system with a swappable boot drive. One way to do this is to replace your C: drive with a removable-media hard drive. Another is to use off-the-shelf hard drives and special mounting hardware to turn them into removable-media drives.

Removable-media drives are simple to install, particularly the EIDE versions, and they work well with DOS and Windows. But if you plan to experiment with several Windows versions for only a short time, they can be pricey in the long run. And some setup programs don't work properly with removable-media drives, because they mistake them for diskette drives and refuse to install on them no matter how much free space they have. Two products with this problem are Microsoft's Office 95 and Office 97. Microsoft hasn't yet provided a workable solution, so before you use a removable-media drive as your boot drive, make sure it's supported by all critical software.

You can avoid these problems by mounting standard hard drives in removable trays. These trays come in two pieces: a bay that mounts inside the computer instead of a standard 5.25-inch half-height drive, and a drawer for the hard drive that plugs into the bay. Because the disk is just a standard C: drive, there are no software problems. And if you decide to stop using the drives this way, you can remove them from the trays and permanently mount them in a system, thereby preserving most of your investment.

Either of these techniques provides you with the ultimate form of insurance against errors, because your old Windows configuration, applications and data aren't even in the system when you're playing Doctor Frankenstein.

Seven-Step Sanity Program

These seven steps will help you preserve your data-and your mental health-when configuring for multi-booting.

1. Have a game plan. Don't touch your system until you've done your homework and detailed your system strategy. Decide which operating systems you'll run, both now and in the near future, which applications and hardware devices you'll use from each environment, and which document files you'll need to share. This will tell you how many disk partitions of which sizes and file systems you'll need (see sidebar "File Styles"), as well as which device drivers are necessary for each environment.

2. Make sure you can get there from here. Verify that you have all necessary device drivers before you install a new operating system, and that they're really usable. This can be a problem with Windows NT, because of its smaller set of available drivers. Check the Windows NT Hardware Compatibility List (available at Microsoft's FTP site, ftp.microsoft.com, in the directory \BUSSYS\WINNT\WINNT-DOCS\HCL), as well as the device manufacturers' online information, to ensure your hardware is supported.

3. Back up everything you care about. Back up all critical data before you perform any major surgery on your computer. This includes installing or removing an operating system, and changing or formatting disk partitions. And make sure you can restore your backed-up files from all relevant operating systems; there are few things worse than finding you have to rebuild a working system just to read your backup media.

4. Vive la DOS. If you'll have any FAT16 disk partitions in your system, keep a DOS 6.x boot diskette and reference book handy. In case of emergency, you can boot the system and gain access to the FAT16 partitions. At the very least, you'll want copies of all relevant device drivers and tools on the disk, plus ATTRIB.EXE, FORMAT.COM, FDISK.EXE, CHKDSK.EXE or SCANDISK.EXE, whatever DRVSPACE or DSKSPACE compression files your system needs, and a basic text editor.

5. Reinstall applications from within each version of Windows. Don't try to save minutes by reusing the application installation from multiple versions of Windows. In most cases it simply won't work, especially if you try to share 32-bit programs between Win9x and NT. Nearly all current applications burrow very deeply into your system; they replace or add DLLs, create and change Registry entries and INI files, and some even create new subdirectories in your main Windows directory. By reinstalling from each Windows version, you force the setup program to make these changes within each version. Make sure that you reinstall into the same directory each time, so you'll have only one copy of each application on the system, and that you use the same options.

6. Keep good notes. When you're in the throes of a system upgrade, the last thing you want to do is slow down and take notes. Yet it can save considerable time and frustration if things go wrong and you have to repeat some step or seek technical help. You don't have to write War and Peace; just jot down enough information to retrace your steps, including all options you select and which prompts the system displays. Once everything's running perfectly, summarize your notes.

7. When all else fails ... try, try again. Weird application and Windows problems often disappear if you shut down and restart the program or reboot Windows. And if that doesn't help, you can sometimes "magically" fix the problem by reinstalling the application or Windows.

Windows Magazine, October 1997, page 232.

[ Go to October 1997 Table of Contents ]