whoa whoa whoa. I dont think its necessary to reinstall WinXP. As we all know that's probably the last thing anyone wants to do.
My suggest would be this, which may or may not work. Try making the WinXP drive a master on the primary IDE channel. Basically this will tell the computer where to find the MBR. Then, boot up from the WinXP CDROM and enter the recovery console.
Following that you will then want to rebuild the MBR and files required to boot into Windows. I would suggest the following order of operations:
1) FIXBOOT (recovery con. command)
2) FIXMBR (recovery con. command)
3) Copy both NTLDR and NTDETECT.COM from [CDROM]:\i386 to the hard disk.
Now try booting into Windows. If it didn't work try messing around in the recovery console a bit more with the aid of
this MS knowledge base article. Basically, FIXMBR and FIXBOOT will rebuild the master boot record and create a boot.ini file.
Assuming that worked, you will then probably want to fix the linux installation. So, I would then suggest taking out the Windows hard drive, and putting in the Linux drive set as a master. Hopefully it will boot into Linux as it always had. Next, you can edit your GRUB boot loader /etc/grub.conf and make some changes.
Your /etc/grub.conf might look something like:
Code:
title Fedora Core (2.6.9-1.681_FC3)
root (hc0,2)
kernel /vmlinuz-2.6.9-1.681_FC3 ro root=LABEL=/ rhgb quiet acpi=on
initrd /initrd-2.6.9-1.681_FC3.img
You will need to change the root(hc0,2) to something like root(hd0). Only change the letter, not the number because the partition on the drive should not have changed. Basically, we are telling the GRUB boot loader where to find the linux installation now that we are moving the hard drives around.
Next you will need to add an entry to boot into Windows, something like this:
Code:
title Windows XP
rootnoverify (hc0,1)
chainloader +1
Once that is done you will want to put the Windows drive back in as Master on the primary IDE. The Linux drive should be slave on primary or perhaps master on secondary IDE.
I am not sure if anything else would be affected by changing the location of the Linux drive within the system. Can anyone else comment on that please?
I hope this might help some. Of course, if you aren't afraid to start from scratch then follow this simply guideline: Install WindowsXP first and then linux. During the GRUB installation, the WindowsXP installation will be detected automatically though might be given some generic label like "Other" or "Windows". You can rename this and set which OS you want to boot as default.