Having Problems With Dual Boot

#1
I am setting up a dual boot of XP and Vista on an Acer laptop. I've got both OS installed, but I can't boot into XP. Any time I select XP from the boot menu, I get an error message: following file is missing or corrupt \system32\hal.dll. How do I fix this? Thanks in advance.
 

Terry60

Knows where his towel is.
Staff member
#2
Hi Entrope, welcome to NST.
The Hal message is telling you that your boot.ini is pointing to the wrong place.
See the wiki troubleshooter.
 
#3
Hi Terry,

I have now gone through the troubleshooting guide. Vista is installed on C and XP is on D. I made it to the point where I get a black screen and nothing. I have boot.ini, ntldr, and ntdetect.com (which I have just replaced with a downloaded version) sitting on my root C drive. From what I understand, I have set everything up correctly. Any ideas? Thanks again.
 

Terry60

Knows where his towel is.
Staff member
#4
It's the rdisk and partition values in boot.ini that need changing.
If you have only the one HDD, leave rdisk at (0) and change the partition value to the correct partition for XP. Remember that a logical disk inside an extended partition, is one number higher than you might think (the extended has a number as well as the logicals inside it).
If you can't work out the correct number, just use trial and error till you find it. You won't do any harm booting with the wrong values in boot.ini - it just won't work. Eventually the correct values will unlock the boot for you.
 
#6
Got it. Jesus, was that ever frustrating. And to think that I have told people that it should be relatively simple to set up an XP/Vista dual boot. You got it bang on: the number of the partition was one higher than I thought it was (3 vs 2). Also, I had initially replaced my hal.dll file with hal.dl_ from the Windows XP CD - I thought this would guarantee me an uncorrupted version of the file, but after trying partition 2, 3 and 4 to no avail, I decided to go back to my old hal.dll (partition 3 gave me a hal.dll error), which fixed the problem. Just thought I would explain the solution for your personal databank. Thanks for your assistance.