This problem mostly occurs on laptops. You start windows XP setup and during installation it just tells you sorry No HDD available but the HDD picks up in the BIOS.
The Problem is that your SATA HDD is set to ACHI mode in the BIOS and windows XP setup does not have the necessary drivers integrated into the setup process to pickup up your HDD in this mode.
There are two ways around this problem, either go into your BIOS (F2 or DEL, Depends on main board) and look for your SATA HDD Mode Setting. This needs to be changed to compatible or IDE Mode. (Wording of manufacturers may differ) The drive should now pick up no problem.
If you want or need to keep it on that settings you need to go to the manufacturers website and download your main board ACHI drivers. You then need a program called "Nlite" to edit your windows installation disk. Edit the XP disk and integrate the downloaded drivers, when you use the new disk it should pick up your HDD because it has the drivers now.
In older desktop computers it can be due to drivers & SATA 1 controller. The older main boards had a separate RAID controller for SATA HDD's, meaning it will not be detected in the BIOS but in controller there after if SATA is enabled. You need to jumper the HDD to run on 1.5gbps to be compatible with SATA 1 and the raid drivers needs to be downloaded from manufacturers website and loaded with XP.
"Nlite" can be used as above.
Hope this Helped!! Enjoy