You ref 2 drives, the XP and the SuSE, but then say you want to combine these 3 drives; is there a 3rd in this equation?
If you are simply moving the 2 drives to internal slots connected to on-board IDE or SATA controllers (so not dealing with external controllers, PCI cards, etc - that adds complications), that is usually fairly straight forward.
The setup you probably have on the SuSE drive is the grub bootstrap installed in that drive’s MBR with a pointer to the partition where grub’s /boot/grub/stage2 loader resides. The typical dual-boot config is to set up this drive in the bios as the boot device. In /boot/grub/menu.lst you add a stanza which “chain loads” to the boot sector of the Windows system volume, which will run ntldr and load XP.
The only tricky aspect of this is giving grub the correct alignment between the boot device sequence vis-a-vis the disk drive order as seen by the OS. With Windows, these are always the same, because Windows will only boot from the first drive. But if SuSE is on the second drive, the alignment changes and (this is critical) when grub calls the XP boot sector, it has to be fooled into thinking it is the first boot drive. Grub handles all of this.
The starting point is the /boot/grub/device.map file, which tells grub the alignment. So, if XP is on /dev/sda and SuSE is on /dev/sdb, and you are booting from SuSE on /dev/sdb, device.map will be:
(hd0) /dev/sdb
(hd1) /dev/sda
The (hd) is grub’s unique numbering scheme, starting at zero. Then in /boot/grub/menu.lst a chain loading stanza is added, like this:
title Windows XP
map (hd1) (hd0)
map (hd0) (hd1)
rootnoverify (hd1,0)
chainloader (hd1,0)+1
That tells grub to make the XP sector think it just was called from the first drive MBR, and to load the sector which is always the first sector of the partition.
Your setup may be a bit different, but this is the most typical. Given you already have SuSE installed, and if the boot loading was set up as above, then before moving the drive you would want to change the device.map and menu.lst files. You will also need to make the necessary changes to the root= clause on the kernel line, and in /etc/fstab, because the drive identifier is changing. If you don’t do all this correctly and then switch the drive, grub may not work correctly and consequently the chainload to XP would fail.
If you run into difficult with the SuSE setup, simply changing the bios boot device back to the XP drive, will get you booting back into XP. Being a big believer in Murphy’s Law, I always have an XP boot floppy (or, if no floppy, boot CD). And I always make a copy of the Windows MBR. I forget the Windows command to do that; in linux the command is:
dd if=/dev/sda of=xpmbr.bin bs=512 count=1
Where “sda” is the name of the XP drive as shown by fdisk. That file will hold the Windows bootstrap code + the partition table.