Installing XP after Vista on a seperate HDD.

Yotta

Member
First off, hi to everyone. :smile:

I'm thinking of installing XP on a spare HDD (74GB), my other HDD (500GB) has Vista x64 installed. Also have another HDD (500GB) for data.

After searching Google for help I came across a few people who'd used EasyBCD in similar circumstances, which led me here.

Is there anyone here with experience of installing XP on a seperate HDD after installing Vista that is willing to help?

I'm quite keen to not mess up my Vista installation.

TIA
 
Thanks for that, Makaveli213.

I'd already read the article from the second link that deals with installing XP after Vista, but only on the same HDD, so I didn't feel confident enough to follow the steps.

I understand when installing XP last and having both OSs on one physical drive that XP's boot loader will overwrite the Vista boot loader, and that it would no longer be possible to boot to Vista from XP's boot loader.

With using separate HDDs I'm assuming I can install XP on the spare drive and skip straight to the part where EasyBCD is used to add the XP entry to Vista's boot loader?
 
Not exactly. If you leave the Vista drive connected the XP Boot loader will still become the dominate loader cause it was the last loader loaded to the MBR (Master Boot Record). So you would still have to follow the steps here:

Repairing the Windows Vista Bootloader - NeoSmart Technologies Wiki

to recover the Vista boot laoder in order to be able to use EasyBCD and dual boot correctly. It doesnt matter what order they are installed in. The Vista loader can always be repaired.
 
I'm not sure I understand why XP would become the dominant boot loader if they're on separate HDDs, I would have thought that both OSs/HDDs would have there own loader and that neither would be dominant as such, but dependent on which drive was set as first boot device?
But I'm often wrong. :smile:

The spare drive I want to install XP on already has someone else's old installation of XP on it, which I'll reformat over. I've just installed EasyBCD to the Vista drive and tried entering an XP entry. I got the choice between Vista and XP at boot up, but it wouldn't boot to XP. I can boot to that drive by changing it to first boot device in the BIOS.

So if I go to the above link and follow the instructions for 'Reinstalling the Vista Bootloader to the MBR and Bootsector' rather than 'Resetting the Vista Bootloader Configuration' it would recognise the XP installation on the second HDD?
 
The hard drive doesnt matter. Cause if it worked that way how would you ever control it to boot to XP? It would always boot to Vista cause that would be the first device that is conencted. :wink:

There is only 1 boot drive that is recognized by Windows. That boot drive carries the boot info. Be it the info to boot XP or Vista. What you want is the boot drive to recognize Vista but allow for booting into XP. Which is what i am helping you to get to.

What you need to do is follow the XP instructions in the trouble shooting area.

Troubleshooting Windows XP - NeoSmart Technologies Wiki

You need to be able to see the root of the drive. This entails forcing Vista to allow you to see all the files. Open up Computer. From there click Organize. Then select Folder options. This you want to select the View tab.

From there check show hidden files. Then also scroll down once and uncheck the box for Show system protected files. It will say it is recommended to have on. It is but you need this off for now. It will give a prompt jsut click Okay.

Then jsut Okay out of that. Go into the root of the XP drive. There you will see 3 files.

NTDETECT
NTLDR
boot.ini

COPY those files to the Vista drive. Just place them right in the root of the drive. Meaning right when you go into the Vista drive not in any folder or anything.

This will allow you to be able to boot into XP. IF the boot.ini info is correct. Since this drive was already used it wont have the correct boot info.

You need to install XP first. Only then will the information on the XP Drive for the boot info be correct. Only then will the copy of the files read the right information fo ryou to successfully dual boot.
 
The hard drive doesnt matter. Cause if it worked that way how would you ever control it to boot to XP? It would always boot to Vista cause that would be the first device that is conencted. :wink:

As you've seen, I have quite a superficial understanding of these things.

You need to install XP first. Only then will the information on the XP Drive for the boot info be correct. Only then will the copy of the files read the right information fo ryou to successfully dual boot.
So what you're saying is that when I reinstall XP, it will recognise the Vista instalation and create a boot.ini file suitable that if it were to be moved to Vista's root drive, would make it possible to boot to XP?

At the moment the XP boot.ini file has this:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect /NoExecute=OptIn /usepmtimer
 
No when you install XP it will not recognize Vista. Vista is newer. But it will give XP the right boot parameters. Right not it is set up to be the first drive first partition in the system. But you said that Vista came preinstalled on the system. So they both cant be the first drive. :wink:

Your boot.ini info is wrong as of right now. It should have rdisk(1) in order to be able to boot.
 
Makaveli213, thanks for your time and help so far, much appreciated.

The spare disk that has XP on came out of another PC, where it was the only OS drive. The Vista PC didn't come with OS preinstalled, I built it and installed OS. The spare drive with XP does boot in the Vista machine, but only if I change the HDD order in the BIOS.
I just though I'd have a play with EasyBCD, didn't really expect it to work and knew I'd have to reinstall XP when doing it for real.

There's obviously something I haven't quite grasped yet, although I'm sure the penny will drop soon. So if I change this line:

default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

to

default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS

Should I then expect the XP drive to boot, providing I have the correct settings in EasyBCD?

Apologies for all the questions and being slow on the uptake, just need to understand what I'm doing before taking the plunge.

Cheers
 
Hi Yotta,
Yes, each of your HDDs, being created independently, has its own MBR and bootloader which will work for the individual system when that disk is 1st in the BIOS.
What you need to do is make sure that copies of the 3 XP boot files (NTLDR, ntdetect.com and boot.ini) are placed in the Vista root, and you'll need to change the rdisk value in the Vista copy because the XP disk will be booted via Vista which is 1st in the BIOS and therefore rdisk(0) refers to the Vista disk.
You will need to change the rdisk value in both places in C:\boot.ini, not just the default line, and you'll need to run EasyBCD in Vista and add an entry for XP pointing to the Vista root (where the boot files are found), not to XP.

Addendum:

Bear in mind that XP will destroy your Vista restore points each time you boot it.
You can avoid this by using Vista Hide 'n Seek (HnS) to hide Vista from XP to protect it. This will also set up the dual boot for you automatically as a fringe benefit.
 
Last edited:
Yes, each of your HDDs, being created independently, has its own MBR and bootloader which will work for the individual system when that disk is 1st in the BIOS.

Hi Terry, thanks for confirming that, I thought I was going mad there for a while. I do try and carefully get my points across, but maybe sometimes I don't explain myself very clearly and folks misunderstand what I'm getting at.

When you say ".....you'll need to run EasyBCD in Vista and add an entry for XP pointing to the Vista root (where the boot files are found), not to XP."
How do I o that? Do I set the XP entry in EasyBCD's 'Entry-based Settings' to 'C' drive as well?

I'm going to sleep on this for a while. Then decide if it's worth the hassle just for a choice at start up, and seeing as I probably won't be using XP all that much, I may end up just using the BIOS to boot to it.

BTW, is it just when booting XP from Vista's boot loader that it wipes Vista's system restore points? Reason I ask is because I booted to the spare XP drive earlier and have just checked the restore points on my Vista drive and they're all still intact.

Cheers
 
When you say ".....you'll need to run EasyBCD in Vista and add an entry for XP pointing to the Vista root (where the boot files are found), not to XP."
How do I o that? Do I set the XP entry in EasyBCD's 'Entry-based Settings' to 'C' drive as well?

Yes that is exactly what you would do. When creating the entry make sure that the C: Drive is the drive selected and put the 3 files that were mentioned earlier in the root of that drive.
 
I've reinstalled XP, copied over the three files to the Vista drive (C). I edited the boot.ini file to look like this:

Code:
[boot  loader]
timeout=30
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
[operating  systems]
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Microsoft Windows XP  Home Edition" /fastdetect
It boots ok from BIOS as first HDD, but when I choose the XP option from vista boot loader I get this error:

"Windows can not start because the folowing file is missing or corrupt:
<windows root>\system32\hal.dll.
Please reinstall a copy of the above file".

Addendum:

It's working now. Had a bit of a read up, changed the rdisk values to 2 and it booted ok. My other data drive must be seen as rdisk 1.

Thanks to Makaveli213 and Terry60 for all the help. :smile:
 
Last edited:
Back
Top