[Guide] Integration of AMD's AHCI/RAID drivers into a WinXP/W2k3 CD

@erqsor
You obviously have integrated a wrong (not matching) textmode driver.
AFAIK the AMD AHCI drivers named amd_sata.sys or amdsata.sys do not support Windows XP.
You may have to load or to integrate an AHCI compatible RAID driver (e.g. v6.13.35) named rcxpahci.sys.
Good luck!

http://www.winsetupfromusb.com/downloads/try this tool to make bootable usbdisc, no need edit via NLite

Thank you Kameaman, I am already using this tool and I don’t know why you say I don’t need to integrate the proper driver with nLite ?

Thank you Fernando,
I integrated the driver mb_driver_amd_sataraid_xp_v1.7.exe on the official website.
It says AMD Chipset Driver (include chipset \ sata raid \ VGA \ USB driver) (version 9.0.300.3001), and that’s a Windows XP x86 driver.
Inside I found these files anc content :

  • \Hxp_A88\AHCI\x86\rcxpahci
"Advanced Micro Devices, Inc. XP-AHCI Controller 32 Bit"
  • \Hxp_A88\AHCI\x86\rcxpahci.cat
  • \Hxp_A88\AHCI\x86\rcxpahci.inf
;
; rcxpahci.inf = Installation for XP-AHCI device driver
;
; (c)2012-2014 Advanced Micro Devices, Inc.
;
;-----------------------------------------------------------------------------
; - This version supports Windows XP and later operating systems.
; - Class and ClassGUID specify the type of driver and must match
;     (see $DDKPATH/inc/api/devguid.h).
; - Driver provided by Advanced Micro Devices, Inc. for XP-AHCI 6.1 software.
;   (6.1.3-00035)
;-----------------------------------------------------------------------------


;-----------------------------------------------------------------------------
[Version]
Signature = "$Windows NT$"
Class = SCSIAdapter
ClassGUID = {4D36E97B-E325-11CE-BFC1-08002BE10318}
Provider = %AMD%
CatalogFile = rcxpahci.cat
DriverVer = 01/08/2014,6.1.3.00035
PnpLockDown = 0
DriverPackageDisplayName = %rcxpahci_Desc%
DriverPackageType = PlugAndPlay

;-----------------------------------------------------------------------------
[SourceDisksNames]
1 = %rcxpahci_Desc%

;-----------------------------------------------------------------------------
[SourceDisksFiles]
rcxpahci.sys = 1

;-----------------------------------------------------------------------------
[DestinationDirs]
DefaultDestDir = 12   ;%WinDir%\System32\Drivers directory on NT-based systems

;-----------------------------------------------------------------------------
[ControlFlags]
ExcludeFromSelect = *

;-----------------------------------------------------------------------------
[Manufacturer]
%AMD% = AMD,ntx86

;-----------------------------------------------------------------------------
[AMD.ntx86]
%rcxpahci_Desc%=rcxpahci_Inst,PCI\VEN_1022&DEV_7801&CC_0106
%rcxpahci_Desc%=rcxpahci_Inst,PCI\VEN_1022&DEV_7804&CC_0106

;-----------------------------------------------------------------------------
[rcxpahci_Inst]
CopyFiles = DefaultDestDir

;-----------------------------------------------------------------------------
[DefaultDestDir]
rcxpahci.sys,,,0x00002004

;-----------------------------------------------------------------------------
[rcxpahci_Inst.Services]
AddService = rcxpahci,0x00000002,rcxpahci_Service_Inst

;-----------------------------------------------------------------------------
[rcxpahci_Service_Inst]
ServiceType   = 1                    ; SERVICE_KERNEL_DRIVER
StartType     = 0                    ; SERVICE_BOOT_START
ErrorControl  = 2                    ; SERVICE_ERROR_SEVERE
ServiceBinary = %12%\rcxpahci.sys
DelReg = rcxpahci_Inst_DelReg
AddReg = rcxpahci_Inst_AddReg

;-----------------------------------------------------------------------------
[rcxpahci_Inst_DelReg]
HKR, "Parameters\PnpInterface", 5
HKR, "Parameters\Device", "NumberOfRequests"
HKR, "Parameters", "BusType"
HKR, "Parameters\Device", "EnableHIPM"
HKR, "Parameters\Device", "EnableDIPM"
HKR, "Parameters\Device", "EnableAN"
HKR, "Parameters\Device", "EnableZPODD"
HKR, "Parameters\Device", "DriverParameter"
HKR, "Parameters\Device", "EnableNCQ"

;-----------------------------------------------------------------------------
[rcxpahci_Inst_AddReg]
HKR, "Parameters\PnpInterface", 5, 0x00010001, 0x00000001
HKR, "Parameters\Device", "NumberOfRequests", 0x00010001, 254
HKR, "Parameters", "BusType", 0x00010001, 0x00000003
HKR, "Parameters\Device", "EnableHIPM", 0x00010001, 0xFFFFFFFF 
HKR, "Parameters\Device", "EnableDIPM", 0x00010001, 0X00000000 
HKR, "Parameters\Device", "EnableAN", 0x00010001, 0X00000001
HKR, "Parameters\Device", "EnableZPODD", 0x00010001, 0X00000001
HKR, "Parameters\Device", "DriverParameter", 0x00000000, "CSMI=Limited;"
HKR, "Parameters\Device", "EnableNCQ", 0x00010001, 0X00000001
HKLM,"System\CurrentControlSet\Services\Disk","TimeOutValue",0x00010001,0x0000003C

;-----------------------------------------------------------------------------
[Strings]
AMD = "Advanced Micro Devices, Inc."
rcxpahci_Desc = "XP-AHCI Controller [scsiport]"
  • \Hxp_A88\AHCI\x86\rcxpahci.sys
  • \Hxp_A88\AHCI\x86\txtsetup.oem
#                      TXTSETUP.OEM 
#
# (c)2012-2014 Advanced Micro Devices, Inc.
#  
# DriverVer = "01/08/2014",6.1.3.00035
# (6.1.3-00035)

#-----------------------------------------------------------------------------
[Disks] 
disk1 = "AMD XP-AHCI Controller 32 Bit",rcxpahci,\

#-----------------------------------------------------------------------------
[Defaults] 
SCSI = AMD_SATA

#-----------------------------------------------------------------------------
[SCSI]
AMD_SATA = "AMD XP-AHCI Controller 32 Bit [scsiport]"

#-----------------------------------------------------------------------------
[Files.SCSI.AMD_SATA] 
inf 	= disk1, rcxpahci.inf
driver 	= disk1, rcxpahci.sys, rcraid
catalog = disk1, rcxpahci.cat

#-----------------------------------------------------------------------------
[HardwareIds.SCSI.AMD_SATA]
id   = "PCI\VEN_1022&DEV_7801&CC_0106", "rcxpahci"
id   = "PCI\VEN_1022&DEV_7804&CC_0106", "rcxpahci"

#-----------------------------------------------------------------------------
[Config.rcxpahci]
value = parameters\PnpInterface, 5, REG_DWORD, 1
value = "Parameters\Device", "NumberOfRequests", REG_DWORD, 254
value = "", Tag, REG_DWORD, 1

Does it look fine for you?

I integrated the driver by using nLite, checking Drivers, puting this driver and creating a new iso I then extracted to write on a USB bootable disk with WinSetupFromUSB.
But blue screen.
Did I make a mistake somewhere?

@erqsor
Which sort of BSOD Error message did you get?
Do you know the exact DeviceID of your on-board AMD AHCI Controller? If yes, which one is it?
Did you use a clean (untouched original) XP SP3 Image as source?
Did you integrate anything else into the XP Image?

Thank you Fernando.

I got the error 0x0000007B (0xF78D2524, 0xC0000034, 0x00000000, 0x00000000)

I installed Windows 7 Pro and the Hardware Ids are :

PCI\VEN_1022&DEV_7801&SUBSYS_B0021458&REV_40
PCI\VEN_1022&DEV_7801&SUBSYS_B0021458
PCI\VEN_1022&DEV_7801&CC_010601
PCI\VEN_1022&DEV_7801&CC_0106

Screenshots :

@erqsor
Since your problem matches much better this already existing old thread and your solution may be helpful for other users, who want to install Windows XP onto an old AMD chipset system, I have moved our recent discussion here. I am hoping for your agreement.

Now to the topic:
Please answer the last 2 questions of my recently written post.
Additional questions:

  1. Have you ever read >this< guide about how to integrate an AMD textmode driver into an XP Image by using nLite?
  2. Does the i386 folder of your used XP Image contain a file named winnt.sif?

Hello, for sure

I tried multiple Windows XP Isos.
The one I tried to modify with nLite is en_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73974_202202.
It looks like a vanilla VL ISO.
After I failed to install, i tried too windows-xp-professional-sp-3-ahci and WinXPProIE20230616 with no more success.

No I only tried to integrate AHCI drivers.

Yes I saw your tutorials, but I will try to redo it. Maybe I missed something.

No I don’t see the file you mentionned in the modified ISO :
Capture d’écran 2024-03-20 051024

EDIT :
My AHCI device is : VEN_1022 & DEV_7801 which looks like AMD is the vendor.
But in the topic you mentionned you say the AMD vendor should be 1002.
Is it normal?

EDIT 2 :
I did the integration another time, and no winnt.sif file.
Here is the final ISO with AMD drivers I made if you want to inspect it : Free Transfert - Service d'envoi de fichiers

Thank you

You should not integrate more than 1 textmode driver (the one, which 100% matches the related device and the OS). Otherwise you may run into problems during the XP installation.

Depending on the related device platform the Company AMD uses 2 different VendorIDs: VEN_1002 or VEN_2022.
Here is an example:
AMD VendorIDs

Okay so I made many tests.

I burned the Windows Installer on a DVD and I got the exact same blue screen error.

I put removed a memory stick to have 2GB (instead of 4GB) and I got the exact same blue screen error.

I used your drivers (instead of Gigabyte official drivers) and I got the exact same blue screen error.

This is a Micro-ATX MB with 4 SATA ports, and I don’t think there is another AHCI controller. The manual and specs doesn’t not mention any JMicron of other controller.

Are we sure that the blue screen error 0x0000007B (0xF78D2524, 0xC0000034, 0x00000000, 0x00000000) is related to an AHCI driver problem?

Okay I have news. I tried from an USB stick and I got this error message :

The file amd_sata.sys could not be found.
Press any key to continue.

Where does this file should be located in the ISO after I integrated the driver ?

I uploaded the modified ISO here if you want to take a look on the result of the integration of your AMD driver by using nLite.

And here are my actual BIOS settings if you want to take a look :

@erqsor
The last picture indicates the mistake you have done:
You obviously have not started the nLite operation from scratch by using the original XP Image as source after I have told you, that none of the AMD AHCI drivers named amd_sata.sys do support Windows XP.
The picture verifies, that the XP Setup was searching for a file, which should not have been integrated.

Once the nLite processing has been completed, the integrated textmode driver(s) can and should be found in compressed form (as *.sy_ fille) within the i386 folder of the ISO Image.
In your case you should find there a file named ahcix86.sy_ and no other *.sy_ file.

I think I use a bad ISO. I will try another ISO.

Until now I worked from this iso : WinXPProSP3x86
There are many *.sy_ files in the i386 folder (we can check the content here)
So despite the fact that people say it’s the best original version. It seems that it has been modified to add drivers, or it’s a specific version of Windows with drivers already integrated.

So now I will work from this one : en_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73974_202202
This one has no *.sy_ files in i386 folder (we can check the content here)

Both ISOs have the same name and same size (in MB). So that’s confusing !

Anyway after the integration of the AMD AHCI driver, it looks like there is no ahcix86.sy_ file. But I found this :

  • \I386\NLDRV\001\RCXPAHCI.CA_
  • \I386\NLDRV\001\RCXPAHCI.IN_
  • \I386\NLDRV\001\RCXPAHCI.SY_

EDIT 1 :
So I still have error 0x0000007B with this other ISO.
I recorded when I integrated the driver and made the bootable usb stick : https://www.youtube.com/watch?v=gtFMnjdNpbQ

EDIT 2 :
I tried with your modified drivers for my device and I have the error The file amd_sata.sys could not be found.
I recorded when I integrated the driver and made the bootable usb stick : https://www.youtube.com/watch?v=teC3Ai03624

EDIT 3 :
I looked into the iso and there is no amd_sata.sys file.
I found these files in the ISO :

  • \I386\AMD_SATA.SY_
  • \I386\NLDRV\001\AMD_SATA.SY_

EDIT 4 :
I disabled AHCI in the BIOS by enabling the IDE mode and I tried to install Windows XP vanilla (no ahci drivers integrated), and I got the same error 0x0000007B.

EDIT 5 :
I found the amd_sata.sys file in my chipset driver, I tried to copy paste it in multiple places of the Windows XP installer USB bootable stick but I still have the file amd_sata.sys not found.

@erqsor
After having read all your contributions I suspect, that these are the reasons for your problems:

  1. You were and maybe still are not using a clean (untouched) original XP SP3 Image as source.
  2. You have integrated different AMD AHCI driver versions without having erased the traces of previous nLite processings.
  3. It seems to be still unclear, which specific textmode driver is required to let the XP Setup detect and use the HDD, where you want to get XP installed.

No original XP ISO contains such file.

The AMD AHCI driver named amd_sata.sys file does not belong to AMD’s Chipset Drivers.

If you really want to continue trying to get Windows XP installed onto your old AMD Chipset system, this is what I recommend to do:

  1. Get an original XP SP3 ISO Image, which has been built and delivered by Microsoft.
  2. Do a temporarily installation of a more modern Windows OS (from Win7 up) onto the HDD, where you want to run XP later on and check the HardwareIDs of all Controllers, which are listed within the “IDE ATA/ATAPI Controllers” section of the Device Manager (right-click onto it > “Properties” > “Details” > “Property” > “HardwareIDs”).
  3. Since the tool nLite may not be able to integrate the AMD textmode driver correctly, use the tool named XP-ISO-Builder v3.0.8. >Here< you can get the download link.
  4. Integrate nothing else than the matching textmode (AHCI or RAID) driver into the XP Image.
  5. Install Windows XP onto the desired HDD after having formatted it.

Good luck!

Okay thank you

This is the result of adding your modified drivers downloaded here.
I recorded this process so you can see how I integrated your modified AMD drivers here.

I delete all directories of extracted ISOs and Drivers each time I make a new try.
Is there anything else to do to remove traces of old attempts to add drivers?
I spent time to create another video I uploaded on YouTube to show you my process when integrating the official drivers downloaded on the gigabyte official website here.
Can you confirm my process of creating new ISOs with integrated AHCI drivers is correct?

All the tests since my last post have been done from this iso :
Edit by Fernando: Link has been removed by me (we don’t offer Windows OS ISO files)
Can you confirm this version looks clear?

Hardware Ids under Windows 7 Pro x64 :

I can’t use this other tool because it refuses to start on Windows 10 and I haven’t yet been able to install Windows XP on my old machine (even in IDE mode).

I erase all extracted directories when I make a new try.
Is it sufficient?

The hard drive of my old machine has been formated on my new machine before the tries of my last post.

@erqsor
Your endurance to get the OS installed is really admirable.

Unfortunately I had missed to read this 4th EDIT, which is the proof, that it is neither the used AHCI driver nor the textmode driver processing done by nLite, which had prevented a successful XP installation onto your specific PC.

No, but I am pretty sure, that this linked ISO file contains a pirated Windows OS. You obviously don’t have a Microsoft license, which is required to install Windows XP Professional legally.
My support ends at this point.

No I checked the checksums on multiple websites and I use the original MSDN ISO.

So I did many tries, I updated the BIOS to last beta version and rollback to last stable version, I changed the USB ports where the keyboard and mouses where connected, I reset BIOS settings to default, and I changed many options, in particular I put the boot in Windows 8 UEFI mode and I activated CSM.

I finally succeed to install XP. No more freeze and no more blue screen in the Windows installer in IDE mode and in AHCI mode.
My guess is I built correctly the bootable sticks, but there was a problem somewhere with the BIOS.

Thank you so much for the help !

@erqsor
Thanks for your feedback! It is fine, that you finally succeeded.
Last question(s):
Did you install XP while running the AMD SATA Controller in AHCI mode?
If yes, which specific AMD AHCI driver version did you integrate into the XP Image?

Yes I succeed by using your package named 32bit AMD SBxxx AHCI compatible RAID driver v3.3.1540.33 mod+signed by Fernando.rar.