Joachim thanks for your instructions and tracking down the German forum posting.
I did what you said with the slight modification that I have no floppy and the F6 floppy creator seems to do nothing in that case. So I downloaded WinImage which the .exe was created with and it exploded the floppy files for me so I could get the right .inf files.
Anyway, following on from the editing, installation iaStor.sys, registry hack and reboot with ACHI enabled I noticed you missed the bit about what to do when the new controller is detected - which is point it at the directory where the iaAHCI.inf file is (i.e. the files on the floppy). After that my device manager listed under "IDE ATA/ATAPI controllers" a new entry which is "Intel(R) 82801HR/HH/HO SATA AHCI Controller".
After I rebooted Windows told me it had detected a new device, well two actually because I have an external eSATA drive too. But I noticed no real difference - both drives are still listed under "Disk Drives" exactly as they had been before - there is nothing to indicate they are SATA at all, indeed if I fire up SiSSandra it lists them as ATA drives.
So I checked the German forum again and noticed the said you should then install the Intel Matrix Storage Manager which I duly downloaded - but I was unable to get it to install because both the latest .1012 and linked to version .1011 (mentioned on the German site) complained that my system "does not meet the minimum requirements for installing this software".
So I'm wondering if
a) your drives are now listed differently from before
b) you were able to install the IMSM to manage the ACHI features like NCQ (which is what I REALLY wanted all along)
I started looking at other instructions on how to do this - and came across
http://tiny.cc/kOEFM - where xisio gives some good instructions including a patched version of the IMSM. Those instructions don't talk about the ICH9 specifically, and only the RAID enabled ICH9R but based on them I hacked the patch for the IMSM files it provides based on ICH9 being DEV_2923 (as also indicated on the German forum). I also added entries in the TXTSETUP.OEM file for the ICH9 like this
iaAHCI_ICH9 = "Intel(R) ICH9 SATA AHCI Controller (Desktop ICH9)"
[Files.scsi.iaAHCI_ICH9]
driver = disk1, iaStor.sys, iaStor
inf = disk1, iaAHCI.inf
catalog = disk1, iaAHCI.cat
[HardwareIds.scsi.iaAHCI_ICH9]
id = "PCI\VEN_8086&DEV_2923&CC_0106","iaStor"
then ran the PREPARE/install.cmd script crossing my fingers.
After rebooting I didn't see anything magical happen and I still couldn't get the IMSM to install getting the same error as before. I've googled a bit on that error and haven't found anyone that got a solution other than reinstalling XP from scratch - which is exactly what I'm trying to avoid. Ironically I'm in this whole mess because XP wouldn't install for me without using the f6 method, but after doing so it seemed to have not installed the drives as SATA, probably because I hadn't enable ACHI at the time (because I didn't know better then). So I got SATA drives in IDE emulation mode...
But I think I'm getting close and I'll be damned if I'm going to spend several more days reinstalling from scratch, or attempting a repair operation which I have no faith in (even with a full system backup).