'

Access AHCI NCQ SATA HDDs from XP (with intel ICH9 SB).

March 4th, 2008 by Andrea Matesi 1509 Views

After cloning and migrating my Windows XP install From an Old Asus MB to a New(ish) Gigabyte GA-P35C-DS3 Main board (read this first: xp clone & migrate (without install)), I experienced an issue whereas I've lost access to all my SATA HDDs.

What I eneded up with was a booting Windows XP OS from an IDE HDD, while all my other SATA II HDDs were missing.

Raptor-X-150

Raptor-X-150

In total I had 3 other SATA HDDs, connected to their respective SATA ports:

  • 2 SATA WD Caviar RE2 500 GB.
  • 1 SATA WD Raptor X 150 GB.

I used those disks for storage & backup purposes (& for Ubuntu of course [on the Raptor]).

I needed access to the  SATA HDDs from Windows XP, 'though:

  1. My New Gigabyte MB's chipset was "Standard ICH9 (ie. non-RAID)". This is important due to Drivers'-related issues (see point No.4).
  2. On my Old Asus MB BIOS, I did check (enable) "AHCI Mode" for SATA HDDs (that is because my Raptor supported NCQ).
  3. On my Old Asus MB, I did install Windows XP to a SATA HDD in AHCI Mode.
  4. Not intel nor Gigabyte does ship a "AHCI ICH9 XP driver" (shame on them!).

After searching up and down, I found a simple way to hack the official intel ICH9 Drivers and enable AHCI support for vanilla ICH9 Chipsets(!).

To apply this hack, proceed as follows:

  • Get your Chipset Drivers from intel - What I got is "iata78_enu.exe", but I'm expecting other versions should work too.

Now launch a command shell and execute:

  • iata78_enu.exe -a
  • Follow the wizard as if you wanted to perform a normal install.
  • Open Explorer.exe & browse to C:\ Program Files -> Intel -> Intel Matrix Storage Manager -> Driver [or Driver64 if using XP64].

You will find some .sys file within "C:\Program Files\Intel\Intel Matrix Storage Manager\Driver".

In order to apply the hack, now proceed as follows:

  1. Copy/paste "IaStor.sys" to C:\Windows\System32\Drivers
  2. Open "iaahci.inf" with notepad and CTRL+H (to Search and Replace).
  3. Change "2821" to "2923" in all occurences.
  4. CTRL+H again (to Search and Replace).
  5. Search for this string: PCI\VEN_8086&DEV_2922&CC_0106.DeviceDesc = "Intel(R) ICH9 SATA AHCI Controller".
  6. Change string at point No.5 to: PCI\VEN_8086&DEV_2923&CC_0106.DeviceDesc = "Intel(R) ICH9 SATA AHCI Controller".
  7. Close and save.

The above steps modify the intel iaahci.inf file to tell Windows XP to recognise your Controller as AHCI-enabled controller.

Next you'll need to enable AHCI support on Windows XP.

to enable AHCI support on Windows XP, proceed as follows:

  • Open Notepad to create a new file.
  • Paste the following content to it:
  • Windows Registry Editor Version 5.00 ; Der Treiber iaStor.sys muss vorher in das Verzeichnis ; Windows\system32\drivers\ kopiert werden ; Erstellt am 10.08.2007 von www.jzelectronic.de ; Für ICH9: www.intel.com ; Trademarks: Intel (www.intel.de), Microsoft (www.microsoft.de)[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_8086&dev_2923&cc_0106] "Service"="iaStor" "ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor] "Type"=dword:00000001 "Start"=dword:00000000 "Group"="SCSI miniport" "ErrorControl"=dword:00000001 "ImagePath"="system32\\drivers\\iaStor.sys" "tag"=dword:00000019 "DisplayName"="Intel AHCI Controller"[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Parameters] "queuePriorityEnable"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Enum] "0"="PCI\\VEN_8086&DEV_2923&SUBSYS_B0051458&REV_02\\3&13c0b0c5&0&FA" "Count"=dword:00000001 "NextInstance"=dword:00000001
  • Save the new file as ahci.reg (make sure the new file doesn't get a txt extension appended to it).
  • Execute ahci.reg and say yes when prompted.
  • Reboot Windows.

Once Windows Restarts, you'll get prompted with the install hardware wizard for a misterious "PCI Device".

  • Choose expert mode.
  • Specify the path of the previous file, C:\Program Files\Intel\Intel Matrix Storage Manager\Driver\iastor.sys
  • If it's all good, you'll be prompted to install an unsigned driver (blame intel for this hack).
  • Once you do, your SATA HDDs should now start to popup and you will be able to access and use them normally.

Infos taken and freely re-elaborated with my experience from Gigabyte support forum: http://62.109.81.232/cgi-bin/sbb/sbb.cgi?&a=show&forum=1&show=3792&start= (German).

[UPDATE-2017-02-05]: Reviewed whole article - it didn't make any sense :)

Senior Professional Network and Computer Systems Engineer during work hours and father when home.

Andrea strives to deliver outstanding customer service and heaps of love towards his family.

In this Ad-sponsored space, Andrea shares his quest for "ultimate" IT knowledge, meticulously brought to you in an easy to read format.

Rate this post

Posted in dirty hacks, XP | Comments Off on Access AHCI NCQ SATA HDDs from XP (with intel ICH9 SB).

Comments are closed.