I have installed Suse 10 in a Sata disk before.
Grub can recognise a Sata and boot it even the Linux that hosts Grub doesn't. I have recently proved it with the oldest Grub I could lay my hand on, a Grub 0.91 in Damn Small Linux.
The easiest way to go about it in this case is
(1) Tell the Bios to boot Sata as the first bootable disk. Suse is then temporarily out of action.
(2) Install XP on the Sata and make sure it works satisfactorily.
(3) When ready tell the Bios that you change your mind and want the IDE boot up as the first bootable disk. Pretend to say sorry if you have to.
(4) Add the following lines to Suse's /boot/grub/menu.lst
title My XP in sata installed as first disk now as the second
map (hd1) (hd0)
map (hd0) (hd1)
I have assumed Xp being installed in the first partition of the Sata as XP always does that. When Sata becomes the second disk then XP partition is known as sda1 in Linux notation but (hd1,0) as Grub counts from 0 and so (hd1,0) means 2nd disk 1st partition.
Since XP has been installed as the first disk its hidden file boot.ini and some internal files will have recorded this fact and will not boot if ii found itself in the second disk. The two map statement "re-maps" the disk order "on-the-fly" and tricks XP in believing it is still in the first disk. The bugger will buy it every time and so the dual boot is accomplished with the minimum fuss.