Triple-booting for better adventure gaming mini-HOWTO
I've written a bit on how to make old
adventure games behave themselves in Windows XP (or maybe, how to tame
XP so that it'll accomodate the games). After a while, though, I got
tired of having to fight for every single early Sierra game, and losing
most of the time. I decided to install an earlier version of Windows
alongside XP and Linux on my computer.
The first choice was: should I install Windows 95 or 98? 98 is a
better
OS all-around, with many bug-fixes, and supports a lot of new-ish
hardware. However, it sold for about $60 and up on eBay. Windows 95, on the other hand,
might be a lousy OS by today's standards, but it sold for about $15.
My old laptop had Win98 on it and I could play all the old games on it
flawlessly, but in the end I decided to go for 95. This did mean
getting a "new" soundcard and video card; but the soundcard (a
Soundblaster 16) was $15 new and the video card (a Matrox Millenium)
was donated by Nathan.
So the total cost of 95 with a soundcard and video card was about half
the cost of 98.
Then I was left with the fun task of getting Win95 installed on my
computer which already had an XP partition and several Linux
partitions, without destroying anything. The problem is that Win95
must believe itself to be on the
first partition on the HD. That partition was already occupied by XP,
which has a similar requirement. Here is the high-level overview of
how this got fixed. My starting point was this
HOWTO.
- I freed up some space on the Linux side, resized a partition
(easier to do there than in XP if, like me, you have the Home Edition),
and created a new primary partition.
- I formatted the partition to
FAT32 using XP (I tried using fdisk to do that but somehow the
Win95 installer didn't like that too much).
- I made a DOS boot disk using XP and some FreeDOS and other programs. In particular, I used CuteMouse, and the
MTMCDAI.SYS and CDROM.SYS generic
CD-ROM drivers.
- On the Linux side, I installed grub (the GRand Unified
Bootloader).
- Now comes the bit that always astounds me in its trickery (from the
part of grub, not mine). By using the map directive,
grub is able to make Windows 95 believe that it is on the first
partition when it's not. Don't ask me how that works. So I configured
grub so that it would have a mapped entry for Windows 95, and also a
mapped entry for my boot floppy, so that when I boot with the disk
somehow the system also thinks it's on the first partition. See here for the contents of my grub configuration
file.
- Then I booted the computer with my boot floppy. Note that the
floppy must NOT be inside the drive when the computer starts up,
otherwise grub can't do its magic. Instead, I get to the grub menu
screen,
insert the floppy, then select the appropriate menu option.
- Now I was at a DOS prompt, and the OS believed itself to be on the
first partition. I put in the Windows 95 install CD, and everything
was
smooth sailing from
there (hey, I'm oversimplifying, of course the hardware stuff
wasn't smooth sailing, but that's not related to the current
problem).
- Of course, the Win95 installation overrides the Master Boot
Record. I needed a Linux boot disk to be able to repair it to its
rightful state.
- That's it! Now I can go into Windows 95 from
the boot
menu screen and have everything work OK. For some pesky games like the
original version of Codename: ICEMAN, I have to boot
into DOS from time to time. I just use my precious boot disk and it
works.
Note: as of last time I got all this working, grub is not
able to chainload off a CD. So if your computer doesn't have a floppy
drive, I'm not sure how this can be applied.
Update: see here
for how to chainload a bootable CD with grub. I have been successful with
these instructions.
Katia Hayati
Last updated April 15, 2006
Copyright (c) 2004-2006
Please link rather than copy. Thank you.