Thanks, Nick.
This seems to get me part of the way there. I created a modified initrd
that does a "modprobe -q hpt366" before it loads the generic ide module.
The hpt366 module was already in the initrd image. I modified my
/etc/fstab to reflect hda instead of hde for the root drive.
My menu.lst entry says to boot from /dev/hda1 which oddly enough has
always worked and is the only configuration that does work. Grub
reports a boot from hd(0,0).
However, during boot, it seems to indicate that it's trying to get
initrd from /dev/hde (now treating hda as if it were hde). It then
times out trying to load /scripts/local-top. Eventually I get a
rudimentary shell where I can mount the root drive as /dev/hda1.
I've tweaked the initrd scripts, but yet it's still alternately treating
the root drive as hda and hde. Where is that coming from?