"Ports already in use" means the resource address(es) from one resource are mixed up with the resource address(es) of another one. I would try setting the most conservative options in the BIOS if available, and try booting without the most necessary cards, like leave the ethernet card out for instance.
Could it be the controller is faulty? What happens if you put one HD on ide0 and the other on ide1, go into the BIOS and do an autodetect on both HD's? Are they correctly recognized? And if you swap em around? (DON'T SAVE the results when exiting the BIOS).
Have you tried booting with one HD or both HD's on the secondary IDE slot?
With "PnP OS" I don't mean the choice between ISA & PCI, but modern motherboards have the option to let either the BIOS or the OS control the available resources. Turning that off would allow Linux to control how resources are handed out.
If you want to check your BIOS settings go to
http://www.pcguide.com, its the biggest resource I know, it's reliable and they explain everything.
Have you also tried booting a more recent distro that comes with a 2.2x kernel? I mean, Red-hat 5.2 comes with a std 2.0.36 kernel, and a lot of issues are solved in more recent kernels.
If you can give us the exact motherboard specifications including on-board chipsets, HD types etc etc, maybe I or some one else can come up with some more...