SATA

SATA/AHCI controller drivers usually have to be slipstreamed into an install disc via nLite. Do note it's highly recommended you do this if installing to an SSD, as it means the motherboard's TRIM functionality can be utilised unlike in IDE mode, preventing possible risk of malfunction on some solid state drives.

There are also alternative methods such as using DPMS with Easy2Boot or even an actual/USB floppy drive. Occasionally some motherboards can read a USB drive with its MBR formatted specifically in a certain way, as a 3.5" floppy, though the effort to actually do this is probably more hassle than it is worth even if it means no additional sideloading of files or such nowadays. (Then again, why intentionally convenience yourself?)

On most systems that have even a minimal amount of configuration available in the BIOS, you should generally be able to install by setting the BIOS to IDE or Legacy/Compatibility mode, though you may find some netbooks (the Compaq/HP Mini 101/110 with American Megatrends BIOS being one of those, for instance) won't have the option. Whether or not on anything past the early 2010s you'll have other drivers or not is a question reserved for other articles, however.

This was even a problem in XP's own time when Vista released and the norm had became SATA drives by that point on new PCs at the time.

Intel
The X79 chipset, the last chipset to support Ivy Bridge CPUs, doesn't have SATA drivers for XP x86. If your motherboard comes with non-Intel SATA controllers, use those for AHCI mode.

Marvell
Marvell controllers have 2 .sys files in the same .inf file for the driver: 1 for the shared library, and another for the actual driver file. nLite cannot recognize this, and would only copy the shared library (mvxxmm.sys) without copying the actual driver. To avoid BSOD, after the text mode phase of the setup, boot into WinPE and manually copy the other .sys file to, and then reboot into the graphics phase of the setup.