Can't boot to XP with dual boot


Distinguished Member
I had both Win7 and XP booting just fine. The hard drive went bad and now I can boot into Win7 but not XP.

When I boot into Win7 the BIOS has to be AHCI. (This is a SATA drive) (Win7 boots up fine)
XP used to boot fine in AHCI. Now when I try to boot into XP I get a BSOD Stop: 0x000007B (That means the SATA drivers aren't loading)

When I change the BIOS to IDE Windows XP will boot to the Blue screen with WindowsXP and I get an error saying:
"No password has been set and this machine has been preconfigured to prevent users from setting their own password."

When I boot into safe mode in XP I get the same error.

Does anyone have any idea what I can do to fix XP?

Thank you,


I thought it might help to include this information:

Windows Boot Manager
identifier {9dea862c-5cdd-4e70-acc1-f32b344d4795}
device locate=custom:12000002
description Windows Boot Manager
locale en-US
inherit {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
resumeobject {9a9c28ab-75be-11de-bcbe-e25e2fe8f14a}
displayorder {9a9c28ac-75be-11de-bcbe-e25e2fe8f14a}
toolsdisplayorder {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout 20
displaybootmenu Yes

Windows Boot Loader
identifier {9a9c28ac-75be-11de-bcbe-e25e2fe8f14a}
device locate=custom:12000002
path \Windows\system32\winload.exe
description Windows 7
locale en-US
inherit {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
osdevice locate=custom:22000002
systemroot \Windows
resumeobject {9a9c28ab-75be-11de-bcbe-e25e2fe8f14a}
nx OptIn

Real-mode Boot Sector
identifier {9a9c28b0-75be-11de-bcbe-e25e2fe8f14a}
device partition=C:
path \NST\ntldr
description Microsoft Windows XP



Since it's hanging on the Blue XP screen when it tries to boot I thought it might be a drive letter problem.
To solve it I booted with a '98 boot diskette and ran fdisk /mbr. I booted into Win7. In EasyBCD I removed XP. I added XP back in. I changed the BIOS back to IDE and booted into XP. It hung at the same place with the same error.

That didn't fix anything.



I have run chkdsk E: /f while running Win7
Last edited:
I did an in place upgrade to XP. Now when XP boots up the system drive is E: instead of C:.

I tried following this to change the system drive to C:

  1. Find the drive letter you want to change to (new). Look for "\DosDevices\C:".
  2. Right-click \DosDevices\C:, and then click Rename.

    Note You must use Regedit instead of Regedt32 to rename this registry key.
  3. Rename it to an unused drive letter "\DosDevices\Z:".

    This frees up drive letter C.
  4. Find the drive letter you want changed. Look for "\DosDevices\D:".
  5. Right-click \DosDevices\D:, and then click Rename.
  6. Rename it to the appropriate (new) drive letter "\DosDevices\C:".
  7. Click the value for \DosDevices\Z:, click Rename, and then name it back to "\DosDevices\D:".

It wouldn't boot into XP after the change.

Does anyone know how I can change the drive letter?


You can't change the letter of the "system" partition like that once the install is over. There are gazillions of registry references to the letter as Windows chose it at install, for all of the drivers that need to be loaded up as the kernel loads. Now you've made them all wrong.
If it were Vista/7/8, the post-change failing boot would get just far enough to let you run regedit and undo the change.
Unfortunately XP doesn't.
There's a useful exposition on trying to fix an accidentally change system letter in XP here
Goodells.Net :: Understanding MultiBooting
that might help you change it back to E
There's no problem with XP running as not-C, as long as it cannot see another version of Windows that is C.