Help with XP boot.ini, partition #s, drive letters?
Posted: Wed Jul 17, 2013 5:39 am
I've been struggling mightily recently with one of my XP boxes, a home-built w/Asus P5WDG2 WS Pro mobo with Intel Q9650 quad-core, and both SCSI-320 RAID & Sil-3124 SATA RAID boot partitions, running 32-bit XP Pro/SP3. I'm using BootIt Bare Metal v1.19, released 10-Jun-2013, and I let it choose to install in its own partition automatically. I previously had v1.15 installed, but upgraded to v1.19
Here's my problem(s):
While troubleshooting a different problem, I copied my SCSI-320 RAID boot partition to a Sil-3124 SATA RAID boot partition so that I could disconnect the SCSI-320 drives. Then I performed a "repair install" of XP Pro to the copied partition using a disc containing all the latest post-SP3 updates and fixes along with the proper Sil-3124 SATA RAID drivers (created using nLite), which succeeded perfectly.
However, I then got "Windows Could not Start Because the Following File is Missing or Corrupt" (HAL.DLL), as discussed on Terabytes's Knowledge Base here: https://www.terabyteunlimited.com/kb/article.php?id=130. Boot.ini is set to boot from partition 1, but I'm confused about whether or not that's correct. You see, the actual boot partition starts at the front of the disk at sector 63, and is the first active NTFS primary partition, so it sure seems to me that boot.ini SHOULD point to partition 1 (but that causes the missing/corrupt HAL.DLL). However, when I go into "BIBM -> Partition Work -> View MBR", the boot partition is shown THIRD in the list, but I'm not sure that's what matters, because that Knowledge Base article 130 states that primary partitions are counted first and I don't know whether to count entries 1 & 2 or not. Also, if I go into "BIBM -> Boot Edit" and select the main (default) boot entry and select "Edit", the boot partition is listed third again, yet under "Boot Details -> Boot" I've properly selected the correct boot partition. Am I doing all that right? What SHOULD the boot.ini entry point to?
Anyway, when I encountered the "missing/corrupt HAL.DLL" message, I read that knowledge base article (# 130) and opted to perform the second approach, under the heading: "If you choose to edit the MBR Details and leave BOOT.INI as-is, proceed as follows". I moved the correct boot partition up to the top, saved, and booted. When I booted, however, it completely bypassed the BIBM process (perhaps because it wasn't pointed to the BIBM EMBR??). XP then directly booted into the correct partition, but it refused to set the drive letter to "C:" (it used "E:" instead, even though nothing else used drive letter C). As a result of not using letter C, there were some startup problems and thus this situation is unacceptable; the boot drive letter MUST be C!
The first thing I did after that was to re-activate BIBM, so that I could use its great features, such as "Partition Work" and so forth. I then read Knowledge Base article 178 (https://www.terabyteunlimited.com/kb/article.php?id=178), about fixing drive letter assignments, and I chose the second option: "By clearing the disk signature using BootIt BM, as follows". However, after doing that, I was right back to the "missing/corrupt HAL.DLL message"!
I really tried to solve this problem myself, but I'm stumped as to just what I should do. Please help?
Thanks.
Additional clarifications: The SCSI-320 drives were disconnected at all times during the above (though the Adaptec HBA adapter is still connected). The ONLY hard disk storage connected was a single RAID 0 array of two identical SATA drives, standard simple partitioned with Acronis Disk Director 11 update 2. There are a total of four partitions, three of which are primary partitions (two NTFS primaries consisting of the XP Pro boot partition and one general-use NTFS partition, plus the one BootIt EMBR FAT-16 partition), and one general-use NTFS logical partition.
Edited to add: By the way, I eventually tried editing boot.ini to point to partition 3, but that caused the "missing/corrupt HAL.DLL" message as well.
Here's my problem(s):
While troubleshooting a different problem, I copied my SCSI-320 RAID boot partition to a Sil-3124 SATA RAID boot partition so that I could disconnect the SCSI-320 drives. Then I performed a "repair install" of XP Pro to the copied partition using a disc containing all the latest post-SP3 updates and fixes along with the proper Sil-3124 SATA RAID drivers (created using nLite), which succeeded perfectly.
However, I then got "Windows Could not Start Because the Following File is Missing or Corrupt" (HAL.DLL), as discussed on Terabytes's Knowledge Base here: https://www.terabyteunlimited.com/kb/article.php?id=130. Boot.ini is set to boot from partition 1, but I'm confused about whether or not that's correct. You see, the actual boot partition starts at the front of the disk at sector 63, and is the first active NTFS primary partition, so it sure seems to me that boot.ini SHOULD point to partition 1 (but that causes the missing/corrupt HAL.DLL). However, when I go into "BIBM -> Partition Work -> View MBR", the boot partition is shown THIRD in the list, but I'm not sure that's what matters, because that Knowledge Base article 130 states that primary partitions are counted first and I don't know whether to count entries 1 & 2 or not. Also, if I go into "BIBM -> Boot Edit" and select the main (default) boot entry and select "Edit", the boot partition is listed third again, yet under "Boot Details -> Boot" I've properly selected the correct boot partition. Am I doing all that right? What SHOULD the boot.ini entry point to?
Anyway, when I encountered the "missing/corrupt HAL.DLL" message, I read that knowledge base article (# 130) and opted to perform the second approach, under the heading: "If you choose to edit the MBR Details and leave BOOT.INI as-is, proceed as follows". I moved the correct boot partition up to the top, saved, and booted. When I booted, however, it completely bypassed the BIBM process (perhaps because it wasn't pointed to the BIBM EMBR??). XP then directly booted into the correct partition, but it refused to set the drive letter to "C:" (it used "E:" instead, even though nothing else used drive letter C). As a result of not using letter C, there were some startup problems and thus this situation is unacceptable; the boot drive letter MUST be C!
The first thing I did after that was to re-activate BIBM, so that I could use its great features, such as "Partition Work" and so forth. I then read Knowledge Base article 178 (https://www.terabyteunlimited.com/kb/article.php?id=178), about fixing drive letter assignments, and I chose the second option: "By clearing the disk signature using BootIt BM, as follows". However, after doing that, I was right back to the "missing/corrupt HAL.DLL message"!
I really tried to solve this problem myself, but I'm stumped as to just what I should do. Please help?
Thanks.
Additional clarifications: The SCSI-320 drives were disconnected at all times during the above (though the Adaptec HBA adapter is still connected). The ONLY hard disk storage connected was a single RAID 0 array of two identical SATA drives, standard simple partitioned with Acronis Disk Director 11 update 2. There are a total of four partitions, three of which are primary partitions (two NTFS primaries consisting of the XP Pro boot partition and one general-use NTFS partition, plus the one BootIt EMBR FAT-16 partition), and one general-use NTFS logical partition.
Edited to add: By the way, I eventually tried editing boot.ini to point to partition 3, but that caused the "missing/corrupt HAL.DLL" message as well.