Some BIOSes will list devices not in existence - others will only list those that exist. The correct order would be:
1 DVD drive
2 SATA 1
... or ...
1 SATA 1
2 DVD drive
... depending on whether you want the DVD first or second. You don't need SATA 2 in the boot order because it is booted from the second line in boot.ini which lives on SATA 1.
How many partitions on SATA 2 and are they all accessible from the XP Home installation and visible in its disk management and are there any logical partitions on the drive?
It could be helpful to post the output of partitioninfo run from a CD made from the pqutils.iso or a BartPE with the matching plug-in or by direct ftp download of the following link PartInNT.zip and simply run from within XP Home. This would be least confusing if done with SATA 3 through 6 temporarily detached and the output of partitioninfo would answer some of the questions already asked. Simply select the relevant drive in partitioninfo and Copy to Clipboard.
If just running with SATA 1 and SATA 2 you could try temporarily adding the third line below to boot.ini and see if that too gives you the Hal.dll warning when selected at start up.
If booting the third line with just two drives attached gives you the hal.dll warning then you could also try editing its partition(n) value to 2, 3, 4 etc depending on how many and what type of partitions exist on the drive. If still no joy then if X: is the drive letter of the windows partition on SATA 2 you could boot to the installation CD's recovery console and issue fixboot X: (or whatever other letter is appropriate) to rebuild its partition boot sector.
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="M$ Windows XP Home on S1P1" /FASTDETECT /NOEXECUTE=OPTIN /PAE
multi(0)disk(0)rdisk(2)partition(1)\WINDOWS="M$ Windows XP Pro on S2P1" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Temp XP Pro on S2P1 Two drives only" /noexecute=optin /fastdetect