Solaris GRUB troubled with dual hard disks

I have the following system:

  • DELL Dimension 8300
  • Pentium IV @ 2.66GHz
  • BIOS Revision A07
  • 1.5GB RAM
  • 2 Hard Disks (Master 120GB, Slave 80GB), I guess it's IDE

I had WinXP on the master disk (hd0) and recently installed Solaris 10 1/06 on the slave disk (hd1). The NTLDR is in MBR of hd0 and GRUB is in MBR of hd1.

GRUB seems to misconfigure the hard drive, it configured Solaris for hd0 instead of hd1 as the following:
title Solaris 10 1/06
root (hd0,0,a)
...
title Windows
root (hd0,0)
...

The problem is that I cannot have a boot option to select WinXP or Solaris. I have to press F12 when turn on computer power to access to BIOS menu that allow to boot from Master, Slave, CDROM or Floppy. If I select to boot from Master drive then it boots WinXP normally using NTLDR. And if I select to boot from Slave drive then it boots Solaris normally using GRUB but I cannot boot WinXP from there using GRUB, meaning that if I select "Windows" then it just return back to the GRUB menu. And if I edit the GRUB menu to boot Solaris from hd1 something like "root (hd1,0,a)" then I got "unrecognized hard drive" message.

One thing I don't try yet is to install GRUB in the MBR of hd0 which is currently occupied by NTLDR because I'm afraid that I will encounter problem to boot WinXP since GRUB misconfigured the drive from the start and therefore I don't want GRUB to touch MBR of hd0, left it for NTLDR.

What I want is to use NTLDR (hd0's MBR) to boot WinXP as usually and from there to call GRUB (hd1's MBR) to boot Solaris. I used the same manner for WinXP and Linux FC5 and it worked fine but not with Solaris. By the way, I didn't keep Linux, no longer interested. I want something like this from the NTLDR menu:
Windows XP Pro, Microsoft.
UNIX Solaris 10, Sun Microsystems.
Could someone please clarify this issue. Thanks a lot in advance.