Curse of the Large PATA Drive

Last modified: Sun Jun 2 10:46:23 EDT 2019

In December 2007, I embarked on the seemingly easy task of bringing my 1999 Pentium III PC out of mothballs and reinstalling Windows XP on it so that it could run a video capture application that only works under XP (sigh).  Because of the volume of video capture, I made the fateful decision to replace its 20 GB PATA hard drive with a new 500 GB PATA hard drive.

Bad, bad decision.

It began reasonably enough as I successfully flashed the BIOS on the 440BX chipset motherboard and the Promise Ultra66 PCI controller card to their latest (last) revisions.  At that point the Ultra66 card still only reported 137 GB at boot time, but the Linux kernel recognized the true size of the disk, so how far off could I be?

Quite far, it turns out, because nothing I did could convince the Windows XP installer that the disk was anything but 137 GB.  OK, so I just have to install the nasty patch (Dynamic Drive Overlay), right?

Wrong again.  As long as I was using the Ultra66 controller card, even Western Digital's Data Lifeguard Tools were convinced that the drive was only 137 GB.  To make progress, I had to give up on the Ultra66 card and connect the hard drive to the slow PATA interface on the motherboard.

The motherboard BIOS had an even worse disk size limit of 64 GB, but once I moved the hard drive over, both Data Lifeguard Tools and the Windows XP installer recognized the full size of the disk.  I thought I was out of the woods with no need for the Dynamic Drive Overlay (DDO).

My unwarranted optimism soon found its punishment.  At the first reboot, the XP installation process halted saying "A disk read error occurred."  A web search on this error found literally thousands of pathetic pleas for help and nobody with any clue how they arrived in this hell nor how to escape from it.

Proceeding on the guess that the problem was again related to the 137 GB size limit, I set out to install the DDO, only to find to my shock and horror that Data Lifeguard Tools had somehow forgotten the correct size of the disk and was back to 137 GB.

Through random struggling I found that if I used the Data Lifeguard tool to rewrite the MBR and then rebooted, Data Lifeguard Tools again recognized the full capacity of the disk.  It took considerably more random struggling before I discovered the process to install the DDO.  (There's no explicit way to do it anymore; you must use Data Lifeguard Tools to create and format a partition, and if it deems it necessary, it will install the DDO.)

Upon retrying the XP installation process, I again found myself dead with a disk read error at the first reboot.

I theorized that XP was trashing the MBR and used Data Lifeguard's MBR backup/restore feature to try to counteract that, but to no avail.

I finally figured out that the DDO isn't in the MBR.  The DDO apparently goes into the boot record of the partition created by Data Lifeguard, and when I allowed XP to format that partition during the installation process, it wiped out the DDO.

So after a lot of wrong turns, many of which could have been avoided with better documentation, I found the process for getting XP to install on a large PATA hard drive connected to an old motherboard.

  1. Use Data Lifeguard Tools to set up the drive and create an NTFS partition.  It will install the DDO automatically.
  2. During the XP install, it will make you choose among quick format, slow format, or no format.  The correct answer is NO format.
  3. Once XP is booting, immediately install Data Lifeguard Tools for Windows and run it.  It will patch some problem in the Windows registry that results in data corruption on large PATA disks.  (Clearly there's a chicken-and-egg problem here, but since the install is only going to use the first few GB of the disk, hopefully the 137 GB misbehavior won't occur.)

The real lesson learned is this:  Installing a large hard drive in an old computer is bad juju.  It's a trap.  Don't buy a PATA drive just because your old motherboard supposedly supports PATA.  If you really need more space, get a new motherboard (or just a new controller card, if you have good luck with those) and go on from there.