Hi
I'm not sure what is the problem. I've always loaded linux through windows loader without problems but in my case both of them were always on the same HD.
I suppose you have installed grub on /dev/hda1 (IDE) to load linux. If this is true, you can use grub loader to load both windows and linux. The only advantage of using windows loader is that you don't need to change the MBR of the HD your windows is installed on, but as you have it in a separate HD, you can use grub without changing the MBR of the windows HD.
First, you need you BIOS to check your 'hda' before your 'sda'. I think you can change it in your 'boot drive order' of your BIOS. After you should be able to boot linux without turning of your SATA.
Second, configure grub to boot windows XP on your 'sda'.
I've found another thread where a similar problem is exposed:
http://www.linuxquestions.org/questions/history/205926
ntrepid8 solved the same problem this way so I hope you can solve it too.
Iban.