XP can only boot off the first HDD. That's why it won't show up as an option in msconfig. Win 7 can boot off a second HDD, but you may have to reinstall it to get that config to work.
Changing the HDD boot order in the BIOS is your easiest solution, but a lot less convenient compared to picking the OS from a list at boot time.
Have you considered converting XP to a virtual machine? That'll let you boot and run XP inside a window while you're running Win 7. No need to reboot to use XP.
XP is old enough that it'll run fine as a virtual machine, even on CPUs which don't support virtualization. VMWare Converter can convert an existing HDD to a virtual machine, which you can then run inside VMWare Player. VirtualBox is another...