win xp & windows 7 dualboot on separate hard drives

decr

Member
Hi,

I've got a problem. I shall give a quick rundown on what I have done. Here goes:

I have Win Xp installed on my IDE HD. I have had it there for years. This HD is set to master as it shares the IDE cable with another IDE HD which is set to slave. The HD that has XP on it was set as the first boot hard disc in BIOS.

I bought a new SATA-II HD, partitioned it in win xp to a few separate partitions, one of them being N: and I named it "SEVEN" as in to be the partition I would use to install win7 to.

I put in the windows 7 dvd and began the installation. I chose the partition (SEVEN) N: in the setup and installed on it. Everything went smoothly.

Then windows 7 booted for the first time at the end of the installation and I checked how the new start menu looked. Then I chose restart to see if the dualboot screen would appear.

When the computer restarted, it booted straight to win xp. Ok, wasn't expecting that. After XP had booted, I chose restart and went into bios and realized the IDE HD which had XP on it, was still the number one in boot order.

Well I chose the new SATA-II HD that I just installed win 7 on as the first boot hard drive and rebooted my system. When boot came, I got an error message saying :"Hard Disk Boot Failure Insert System Disk Press Enter". Great.

Well after thinking for a moment I thought I had realized the problem. I booted off the win 7 dvd and chose repair. It said if found win 7 installation at F:\windows. When the XP HD had booted it probably had changed the win 7 partition letter to F: since the system found XP on C:.

Well as I thought this was the case, I simply booted in XP then and formatted the N: partition deleting win 7 entirely. This time though after the formatting was finished, I shut the system down and removed the IDE HD which had XP on it.

I started the system up and went straight to BIOS and chose the new SATA-II HD as the number one booting hard drive, then chose the boot device to be DVD again and proceeded to install win 7 again on the (SEVEN) N: partition. This time of course win 7 setup didn't find any other windows installations.

After win 7 had installed itself and booted for the first time, I chose shutdown in win 7. Then I plugged in the IDE HD which had XP on it. Started up the system and went straight to BIOS to make sure the new SATA-II HD having win 7 on it was still the number one booting HD. It was and I proceeded to boot the system. And what did I get, "Hard Disk Boot Failure Insert System Disk Press Enter".

The drive letter had changed again for some bloody reason and basically this is where I am. Why does the drive letter change even though win xp is installed first and then win 7 should take over when installing it second

So I install win 7 just fine. It boots just fine for the first time, but when I restart it, it gives the boot disc failure message.

I have also tried to remove every other disc from the system and keep only the new SATA-II HD connected but it still gives the error at boot. Now what I haven't tried yet is remove every drive and connect only the new sata drive and install win 7 on it and test if it boots fine, but I think the problem indeed lies in this IDE HD of mine on which the xp is installed and the way the system puts it above everything else.. or something, I really don't know.

I don't know whether I should do something with the EasyBCD or something...?
 
Last edited:
Don't worry about changing drive letters, they're nothing more than mount points for a partition and vary depending on the current system you are in. With the IDE drive disconnected could you go ahead and verify that Windows 7 well boot on its own? We need to determine that the install was OK before we can move on to troubleshooting dual-boot problems.

If it is, go ahead and reconnect the IDE drive. If its not booting on its own once again, run startup repair from the DVD as you did before. You may need to run it 2-3 times for it to create a new bcd from scratch.
 
Disk Letters are not "real" physical entities. They're just registry values in the system you're currently runnning.
No two windows OSs will agree on what letter is associated with which device, except by coincidence and the fact that they detect the devices in a similar order.
Windows installed in isolation by booting the DVD will always default to calling itself C:\
Windows installed by executing setup from another running Windows, will take the first letter unused by the other OS.
 
Well I chose the new SATA-II HD that I just installed win 7 on as the first boot hard drive and rebooted my system. When boot came, I got an error message saying :"Hard Disk Boot Failure Insert System Disk Press Enter". Great.

Well after thinking for a moment I thought I had realized the problem. I booted off the win 7 dvd and chose repair. It said if found win 7 installation at F:\windows. When the XP HD had booted it probably had changed the win 7 partition letter to F: since the system found XP on C:.

Well as I thought this was the case, I simply booted in XP then and formatted the N: partition deleting win 7 entirely. This time though after the formatting was finished, I shut the system down and removed the IDE HD which had XP on it.

I started the system up and went straight to BIOS and chose the new SATA-II HD as the number one booting hard drive, then chose the boot device to be DVD again and proceeded to install win 7 again on the (SEVEN) N: partition. This time of course win 7 setup didn't find any other windows installations.

After win 7 had installed itself and booted for the first time, I chose shutdown in win 7. Then I plugged in the IDE HD which had XP on it. Started up the system and went straight to BIOS to make sure the new SATA-II HD having win 7 on it was still the number one booting HD. It was and I proceeded to boot the system. And what did I get, "Hard Disk Boot Failure Insert System Disk Press Enter".

The drive letter had changed again for some bloody reason and basically this is where I am. Why does the drive letter change even though win xp is installed first and then win 7 should take over when installing it second
That error message has nothing to do with the drive letter. You're getting that message because 1 of 3 reasons:


  • No Windows MBR on W7 HDD.
  • No "active" partition on W7 HDD.
  • No W7 boot code in the PBR (partition boot record/bootsector), which looks for bootmgr, on the "active" partition (if there is one).
Can you please boot from the W7 DVD, with the W7 HDD as the first HDD in the boot sequence, access the Command Prompt, and run:
Code:
diskpart
select disk 0
list volume
and post the results?
 
Last edited:
Ok ok, so after reading some of the FAQ here I came to realize that an altogether new hard drive was set to be BOOT drive for all my OS's after installing windows 7. I found this out by checking my disk management in windows 7 when it first booted up fine. I saw that one drive was without a letter now which used to have one in XP. That drive was now flagged as active and system, even tho the actual drive has no OS installed on it.

So the win 7 boot information was all saved in that HDD and I always thought that I should have the actual physical HDD that had win 7 installed on it to be the number 1 in boot order in BIOS but after I saw this K: being the BOOT HDD I simply went into BIOS and chose the physical HDD that had the K: partition to be the number 1 in boot order.

Now win7 boots fine and I even have the dual boot screen. But I'm still having trouble getting win xp to boot from the dualboot screen. It gives various of errors, like missing ntoskrnl and missing hal and what not.

I installed easyBCD in win7 and added xp to the boot. I let the bcd choose the drive letter and do everything automatic.

Now it looks like this in easyBCD:

There are a total of 2 entries listed in the bootloader.
Default: Windows 7
Timeout: 30 seconds.
Boot Drive: K:\
Entry #1
Name: Windows 7
BCD ID: {current}
Drive: C:\
Bootloader Path: \Windows\system32\winload.exe
Entry #2
Name: Microsoft Windows XP
BCD ID: {6c3d89c7-e24c-11de-b645-f724d60ead27}
Drive: K:\
Bootloader Path: \NTLDR

What am I missing? I checked that K: has the three files from D:\ which is now the drive that has winxp installed on it. And K: should probably have all the boot files for both OS's now right? And I checked so and K: now has ntldr, ntdetect and boot.ini in the root and also in a hidden boot folder it has all the win7 boot files.

the winxp boot.ini that is now both in D:\ and K:\ says:

[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 Professional" /noexecute=optin /fastdetect /usepmtimer
And when I check disk management in win7 what HDD the D: (winxp) is on its HDD 0. The D: HDD has only one partition.
 
Heh I managed to fix it by simply trying my luck. I changed the boot.ini in K: to have the "rdisk" value be 1 instead of 0, which I saw posted as a possible fix on some threads. So basically all I did was harrash you guys without providing you any info that you asked for and simply tried all I could think of After I had asked for help. I think this post of mine was a simple way to get things clearer for myself.

But in the end your FAQ was the one that pointed me in the right direction about the fact that any of my physical HDDs can be a BOOT drive, even the ones without any OS on them, so thanks you :smile: And why does MS have to make things so difficult.
 
It's got more difficult with W7 playing "hide the boot". That causes lots of confusion.
Glad you've sorted things anyway.
(you can use EasyBCD 2.0 / Diagnostics / Change boot drive if you want to put the the boot files back with the rest of the OS)
 
Oh didn't know that, I could try that sometime since I'd really need to change the letter of the BOOT drive in win7 anyways :smile:
 
Back
Top