Yes, but the bootloader loaded the image. It just sounds like linux is having trouble with your particular combination of hardware. Or, there is something wrong with you hardware.
I'm taking an educated guess here: I think the bootloader uses the BIOS to access the IDE devices. But, Linux, being the advanced piece of software that it is

, accessing these devices directly, thus bypassing potentially buggy BIOSes.
You can force Linux to access the PCI bus through the BIOS, and the IDE controllers are on the PCI bus (??). Anyway, to do this, while configuring a kernel:
make menuconfig -> General Setup -> PCI Access Mode -> BIOS
I use menuconfig when configuring the kernel, it may be somewhat different if you use xconfig.
Worth a try I think

May open up a whole new can of worms if your BIOS is buggy etc...
If it doesn't work, no big deal, just go back to your old kernel. It may also be worth trying just selecting direct instead of any, which is the default AFAIK.