Hi,
Thanks for the tutorial. I've spent most of the last 3 days trying to get this working and reading related sites. I bough a HP Pavilion a1740n with Vista Home Premium pre-installed. I have Vista recovery disks (not install) and XP Media Center disks (install).
Creating a second partition was easy. The first issue I ran into was not being able to boot to the XP CD (would make it to the "Starting up Windows..." message on the XP install until getting BSOD). From reading online, I assumed it was the SATA Raid native support issue, so I changed SATA Mode in the BIOS to "IDE" and made a floppy with SATA Raid drivers that I could install along with XP using F6. This got me past it and up to the XP loading screen, but.. I'd get another BSOD right before the 2nd part of the XP install.
So, now I was stuck trying to boot onto the XP drive without the OS installed (vista wouldn't boot). I booted off the Vista recovery disk. I tried the Startup Recovery in the advanced options. While it didn't seem to work, when I restarted I got the option to boot from:
HP recovery
Microsoft Windows Vista (recovered)
Windows XP
The recovery worked and I started over using this method (in the comments from
http://apcmag.com/5485/dualbooting_vista_and_xp):
The following method has been working for me to add an XP boot to an existing Vista. It has the advantages of not needing to repair the Vista boot AND of having the XP system drive installed as C:
1. Create the available space as described in the article
2. Using Disk Manager from Vista, create a new partition in that unallocated space -- don't use the XP install to do that.
3. Still in Disk Manager, set that new partition as Active. WARNING: That means that the machine will now be trying to boot from the empty partition. That's OK because the next thing you're going to do is install XP from a bootable CD. If you restart and then change your mind, you'll have to have some bootable utility to change the active partition again.
4. Boot from the XP installation CD and start the install. When you get to the step where you select the XP partition, you'll notice that your new target partition is C! That's because the active partition is always assigned that letter at this point. So your new partition will show as C and the existing Vista will show up as some other letter. So XP WILL be installed as C. Vista will remain C, too. Finish the install.
5. Once XP is running, copy NTLDR, NTDETECT.COM, and BOOT.ini from the XP partition to the Vista partition. This is required because the Vista partition will soon be the boot partition again .
6. Still from XP, use Disk Manager to change the Active partition back to the original Vista partition. The Vista partition's letter will show up as something other than C, doesn't matter, it will be C when booting Vista. Since the XP install never touched the Vista partition, NO repair is needed -- reboot and Vista will startup again.
7. Use EasyBCP as described to add the XP boot.
I can vouch from experience that this works very well. In fact you can have any number of Windows OSes all running as C using this method. You can also adjust drive letters using the HKLM/System/MountedDevices registry key. I've used this method to have 5 or 10 OSes installed in different partitions all at one time, and to restore various images to any partition and then fix the drive letters.
------
Now I have both OSs installed, and the dual boot option comes up when I restart. Unfortunately, I can only get one OS to load at a time. After I installed XP, I couldn't boot Vista unless I used the recovery disk. When I use the recovery disk and use the "Install vista bootloader" option in EasyBCD, Vista loads fine, but XP won't load.
My bcdedit looks very similar to:
Windows Boot Manager
--------------------
identifier {bootmgr}
device partition=C:
description Windows Boot Manager
locale en-US
inherit {globalsettings}
displayorder {current}
{ntldr}
toolsdisplayorder {memdiag}
timeout 30
Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \Windows\system32\winload.exe
description Microsoft Windows Vista
osdevice partition=C:
systemroot \Windows
resumeobject {007313d3-4207-11dc-b58a-806e6f6e6963}
Windows Legacy OS Loader
------------------------
identifier {ntldr}
device partition=E:
path \ntldr
description Microsoft Windows XP
Do I need to change the XP partition to C:/?
What should the boot.ini file look like?
Do I need to toggle SATA Mode between RAID and IDE depdning on which OS I want to load?
Thanks!