Caveat: these instructions don't cover multiple partition, FAT/HPFS, or partition sizing issues. Feel free to email me if you're having trouble with those and I'll try and help.



Booting With the Enemy
Making Windows 3.1, '95 and OS/2 Coexist



"Windows has detected a Boot Manager partition on your hard disk. If you setup Windows you will not be able to use Boot Manager"

Famous last words from the Windows 95 install program



Switching operating systems should be as easy as making a choice from a menu when you switch the computer on. Unfortunately, it's often not, especially where Windows 95 is concerned. Microsoft has gone out of their way to make it difficult for you to keep either your old Windows around, or to use '95 with OS/2.

This document is about loading Windows '95 on your computer without loosing your ability to run Windows 3.1 or OS/2 as well. I need this capability because I continue to support software written to run exclusively on both of these platforms, while working on new software which requires '95. And because I prefer OS/2 over any variant of Windows, when possible. You might have older software which doesn't work correctly or at all under '95, or you may be an OS/2 aficionado yourself.


The Roadblocks

Windows '95 both attempts to deactivate OS/2 if it finds it on your hard disk , and goes out of its way to overwrite any other or older versions of itself which it finds on any of your hard disks! The former is presumably "justifiable" in the name of not confusing users with additional boot-time menus, and the latter is presumably "justifiable" in the name of not leaving old versions of system DLLs around where they might cause problems later on, but both actions work to leave you with only one functioning operating system on your hard disk after the install.

The five-part solution is to:

  1. Backup your Windows 3.1 directory before installing '95.
  2. Either backup your OS/2 WINOS2 directory before the install as well, or install OS/2 after installing '95. (Neither of these is necessary if your WINOS2 is on an HPFS partition.)
  3. Provide '95 with a "likely target" set of old windows files to overwrite when installing, since it will be happiest if it has something to overwrite. (This means making 2 copies of your existing windows directory subtree before installing '95.)
  4. Restore your Windows 3.1 and WINOS2 subdirectories after the Windows '95 install.
  5. Reactivate the Boot Manager by hand after the '95 install completes.


Part 1: Backup Your Windows 3.1 Directory

Windows '95 will search out and systematically overwrite any files on your hard disk which it thinks are from previous versions of Windows, even if you take the trouble to change the directory names or make multiple copies of them. The only way to keep your old Windows functional after the install is to save the files from it someplace where '95 can't find them. You could use any standard backup technique for this, but my preferred method is to use the zip archiver (from the Info-Zip group) to compress and save the entire Windows 3.1 subtree before I begin a '95 install. You can also use PKZIP for this, or any other archiver which can automatically backup and restore subdirectories.

                  cd \windows

For ZIP, type:    zip -r \w31bak *.*
For PKZIP, type:  pkzip -pr \w31bak *.*

Part 2: Protect Your WINOS2 Subdirectory

Note: If you are planning to install OS/2 Version 3.0 for Windows -- an older version of OS/2 which relies in part on an already-installed Windows 3.1 for some Windows- emulation support files, you should go ahead and install OS/2 first, then carefully backup both your Windows and WINOS2 subdirectories, then install Windows '95, and finally restore the contents of both your original Windows and WINOS2 subdirs! (Be sure Windows '95 is installed in a completely different subdirectory, as described in Part 3.

Backup your WINOS2 subdirectory much as you backed-up your Windows 3.1 subdirectory in Part 1.

                  cd \os2\mdos\winos2

For ZIP, type:    zip -r \wos2bak *.*
For PKZIP, type:  pkzip -pr \wos2bak *.*

Part 3: Give Windows 95 A "Likely Target" To Install On Top Of

Because Windows 95 insists on installing itself over whatever Windows version you already have, and because we plan to restore your older Windows files after installing '95, you need to fool '95 into putting its files someplace new so you won't overwrite them when restoring your older files!

The easiest way to do this is by making a complete copy of your Windows subdirectory under a new name by using the DOS XCOPY command:

                  cd \ 
                  md \win95
                  xcopy /s \windows\*.* \win95

Then use your favorite text editor with search-and-replace capabilities to edit all the .INI files in the new subdirectory (\win95\*.ini in the above example) and change any occurrences of the old subdirectory name (\windows) to the new one (\win95). This is very important, because if you don't make all these changes, your Windows '95 and Windows 3.1 will later be connected in odd, unpredictable ways and your Windows '95 probably won't work. What you are doing is creating two completely independent copies of Windows on your computer so that you can let Windows '95 overwrite one.


Part 4: Restore Your Old Windows and WINOS2 Files

                  cd \windows

For ZIP, type:    unzip \w31bak
For PKZIP, type:  pkunzip -d \w31bak


                  cd \os2\mdos\winos2

For ZIP, type:    unzip \wos2bak
For PKZIP, type:  pkunzip -d \wos2bak

Part 5: Reactivate the Boot Manager

Start Windows '95's FDISK command, and using Option 2 ("Set active partition) to reactivate the Boot Manger partition. You can recognize this partition by the fact that it will be only 1 megabyte large and will be labeled as a "Non-Dos" partition.


After The '95 Install

Now you can go ahead and install OS/2 if you haven't already, or simply get down to the work of making your applications work and customizing your "Start-Button". Because we installed Windows '95 on top of an existing Windows, all of your programs icons and settings should have been properly migrated. And since you restored your Win3.1 config and made sure '95 was overwriting a *different* directory during its install, you can now also abort the '95 boot process by pressing "F8" when the "Starting Windows" prompt appears, choose "Command Prompt", and then proceed to manually start Windows 3.1. Voila' -- 3.1, '95, and OS/2 all on the same machine.




Copyright © 1997-99 by Jason Campbell. All Rights Reserved.
OS/2 and Windows are trademarks of IBM and Microsoft, respectively.