hal.dll missing or corrupt in XP pro

Posted on 2003-03-10
Medium Priority
Last Modified: 2012-05-04
Whenever I reboot XP Pro, I get a boot error that the hal.dll file is missing or corrupt and I need to reinstall it. I've tried that from the CD but still get the error.

---msdn article sez to remove hal.dll from my configuration, and to copy hal.dll, boot.ini, ntdetect.dll and ntldr from the run time image to the root directory of my target system's boot drive and to remove hal.dll and then add it again to the configuration--- what IS the run time image? The CD? I have 2 possible "operating" versions, HAL.DLL and hal.dll. Which is the correct one? See below for all 7 versions of the hal.dll file on my system. I'm confused with all the system patch versions.

I have a dual boot on 2 separate HDs, with Windows 98 on C:\ and XP pro on D:\, plus separate partitions for the swap, program files, and storage. XP provided the option, so I created 2 hardware configurations (1 for dial up modem, one for external LAN), plus I can chose which OS at boot, then which configuration. However, XP appears twice in the first OS selection list (which seems to prioritize itself differently with every boot), and the error occurs before it gets to the configuration choice (which are identical HW configs , I think, so I'd just as soon delete these 2 HW configs but don't know how/where to do so, esp. with this other problem).

I also have installed all of the many updates to XP (which might account for the multiple .cab files, as summarized below).

I also have a partitioned area for the swap file and lately memory is running low if I have more than 5 windows (processes) running.

Below is a summary of the locations/sizes/datestamps of the 6 hal.dll files on my machine. Isn't this an NT file? Why are there several NT (detect, etc) in the XP suite?  Which one(s) can I delete and which one(s) do I need to add?
C:\WINDOWS\SYSTEM\ATIR3HAL.DLL 86kb mod 4/23/1999 created 11/27/2002
D:\WINDOWS\$NtServicePackUninstall$\hal.dll 101kb mod 8/22/2001 created 11/28/2002
D:\WINDOWS\system32\hal.dll 101 kb mod 8/17/2001 created 11/28/2002
D:\WINDOWS\ServicePackFiles\i386\hal.dll  99kb 8/29/2002 11/28/2002
D:\WINDOWS\Driver Cache\i386\driver.cab\hal.dll 101kb m 8/17/2001
D:\WINDOWS\Driver Cache\i386\sp1.cab\hal.dll 99kb m 8/29/2001
D:\WINDOWS\ServicePackFiles\i386\sp1.cab\hal.dll 99 kb m 8/29/2001
Question by:jenelle_a
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Accepted Solution

Win2K4Life earned 980 total points
ID: 8105942
I have a similar setup on my comp, only with Win2k and WinXP. When I first installed the winXP I had the same problem. I soon found, however, that the problem had nothing to do with hal.dll. Rather, the windows (2000 in my case, but any NT-based OS will react the same) OS that I was trying to load was not being found on the hard drive because of a misconfigured boot.ini file.

Here is an example of a boot.ini file:
[boot loader]
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows 2000 Professional

Here you can see that one OS is on a different partition than another(first OS is on partition 1 of Physiscal Disk 0)The numbers in parentheses tell the computer where the different OS's are located, so it can access and load them. This method of locating controller cards/hard drives/partitions is much more specific and accurate than using hard drive letters, because hard drive letters can be changed by one OS and not changed by another, thus leading to countless problems.

An excellent breakdown of these boot.ini files is located at http://www.microsoft.com/technet/treeview/default.asp?url=/TechNet/prodtechnol/winxppro/reskit/prmc_str_masc.asp


Also, there may be 2 boot.ini files(one for each system partition). I find it simpler to just make changes to both instead of finding which one is being used.

I hope this helps, and I'll be checking back here in case you have any more questions.

LVL 41

Expert Comment

ID: 8107528
>Whenever I reboot XP Pro
you mean it doesn't do it on a cold boot, only a reboot?
If this is the case then it sounds like the second drive is not initializing on a reboot, check the cable, make sure it is seated tightly
also run the diagnostic program appropriated for the drive

is this a slave off the primary, or is it the secondary master, or secondary slave?
if secondary slave, try making it the secondary master, and slave the (I assume) optical drive
LVL 12

Expert Comment

ID: 8107598
>>Why are there several NT (files)....?

XP is essentially NT 5.1.  It is built from the NT Kernel - that is why the core of the OS still uses NT components.

Author Comment

ID: 8109236
JP (win2K) wins the 24K gold award. In the process I configured my DSL connection on Win 98, which took an additional 4 hours effort (something about 98/TCP/IP and USB contention(s).

The boot/reboot problem appears to have resolved itself, and I'll remove one of the partition selections for XP when I figure out which one works best.

For the other 2 honorable mentions, 0 points for there's no master slave setup: Win 98 is on C, XP is on D, two separate, independent HW devices; and 5 points for explaining that XP is the nXT version of NT.


Featured Post

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction How to create multiboot configuration with XP\Vista and Windows 7 on it? And most important question - how to do this correctly so not to have any kind of nightmares we get when system gets screwed? First of all one should realize t…
I don't know if many of you have made the great mistake of using the Cisco Thin Client model with the management software VXC. If you have then you are probably more then familiar with the incredibly clunky interface, the numerous work arounds, and …
This is used to tweak the memory usage for your computer, it is used for servers more so than workstations but just be careful editing registry settings as it may cause irreversible results. I hold no responsibility for anything you do to the regist…
Hi friends,  in this video  I'll show you how new windows 10 user can learn the using of windows 10. Thank you.

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question