Support NVIDIA RAID/AHCI nForce 4-7 (Driver 10.3.0.42)

After getting some error and then searching i found the following working technique.

  1. Download latest NVIDIA nForce drivers .Create an installation source by extracting an XP CD .

  2. Using WinRAR/7-Zip etc. extract the downloaded file and take the IDE folder somewhere

  3. In the sataraid folder there are two important files nvgts.sys and nvrd32.sys - using makecab.exe compress them
    • e.g. makecab nvgts.sys NVGTS.SY_
    • place them in the i386 folder of your installation source


  4. Make the following modifications to I386/TXTSETUP.SIF adding the lines under the headings listed and save TXTSETUP.SIF

    Code:
    [SourceDisksFiles]
    nvgts.sys = 100,,,,,,3_,4,1,,,1,4
    nvrd32.sys = 100,,,,,,3_,4,1,,,1,4
    
    [HardwareIdsDatabase]
    PCI\VEN_10DE&DEV_0036 = "nvgts"
    PCI\VEN_10DE&DEV_003E = "nvgts"
    PCI\VEN_10DE&DEV_0054 = "nvgts"
    PCI\VEN_10DE&DEV_0055 = "nvgts"
    PCI\VEN_10DE&DEV_0266 = "nvgts"
    PCI\VEN_10DE&DEV_0267 = "nvgts"
    PCI\VEN_10DE&DEV_037E = "nvgts"
    PCI\VEN_10DE&DEV_037F = "nvgts"
    PCI\VEN_10DE&DEV_036F = "nvgts"
    PCI\VEN_10DE&DEV_03F6 = "nvgts"
    PCI\VEN_10DE&DEV_03F7 = "nvgts"
    PCI\VEN_10DE&DEV_03E7 = "nvgts"
    PCI\VEN_10DE&DEV_044C = "nvgts"
    PCI\VEN_10DE&DEV_0558 = "nvgts"
    PCI\VEN_10DE&DEV_0559 = "nvgts"
    PCI\VEN_10DE&DEV_055A = "nvgts"
    PCI\VEN_10DE&DEV_07F8 = "nvgts"
    PCI\VEN_10DE&DEV_07F9 = "nvgts"
    PCI\VEN_10DE&DEV_07FA = "nvgts"
    PCI\VEN_10DE&DEV_07FB = "nvgts"
    PCI\VEN_10DE&DEV_0AD9 = "nvgts"
    PCI\VEN_10DE&DEV_0AD8 = "nvgts"
    PCI\VEN_10DE&DEV_0ABD = "nvgts"
    PCI\VEN_10DE&DEV_0ABC = "nvgts"
    PCI\VEN_10DE&DEV_0BC4 = "nvgts"
    PCI\VEN_10DE&DEV_0BC5 = "nvgts"
    SCSI\NVIDIA__Raid_Disk________ = "nvrd32"
    SCSI\__NVIDIA_______Raid_Disk = "nvrd32"
    SCSI\NVIDIA__Raid_Disk_20_____ = "nvrd32"
    SCSI\__NVIDIA____Raid_Disk_20 = "nvrd32"
    *_NVRAIDBUS = "nvrd32"
    *NVRAIDBUS = "nvrd32"
    *NVRAID20 = "nvrd32"
    
    [SCSI.load]
    nvgts = nvgts.sys,4
    nvrd32 = nvrd32.sys,4
    
    [SCSI]
    nvgts = "NVIDIA nForce Storage Controller"
    nvrd32 = "NVIDIA RAID Driver"
  5. We now need to make modifications to the setup hive

    • Go start, run type regedit
    • Now, select HKEY_LOCAL_MACHINE right click and press File, Load Hive
    • Select I386/SETUPREG.HIV - name it whatever you want e.g. nvidia
    • Now open nvidia, CurrentControlSet001, services
    • Select services right click go create, new, key call it nvgts
    • Select nvgts right click go create, new, key call it Parameters
    • Sow select Parameters right click go create, new, key call it PnpInterface
    • Sow select PnpInterface right click go create, new, DWORD value
    • Replace New Value #1 with 5, right click 5, press modify and change Value Data to 1
    • Select nvidia and go file, unload hive - this saves the new SETUPREG.HIV


  6. We now need to make modifications to the installation hive


    • open i386\HIVESYS.INF in a text editor
    • under:
      Code:
      HKLM,"SYSTEM\CurrentControlSet\Services\ultra\Parameters\PnpInterface","5",0x00010003,1
    • add:
      Code:
      HKLM,"SYSTEM\CurrentControlSet\Services\nvgts","ErrorControl",0x00010003,1
      HKLM,"SYSTEM\CurrentControlSet\Services\nvgts","Group",0x00000002,"SCSI miniport"
      HKLM,"SYSTEM\CurrentControlSet\Services\nvgts","Start",0x00010003,4
      HKLM,"SYSTEM\CurrentControlSet\Services\nvgts","Tag",0x00010003,60
      HKLM,"SYSTEM\CurrentControlSet\Services\nvgts","Type",0x00010003,1
      HKLM,"SYSTEM\CurrentControlSet\Services\nvgts\Parameters",,0x00000012
      HKLM,"SYSTEM\CurrentControlSet\Services\nvgts\Parameters\PnpInterface","5",0x00010003,1
    • save and exit

  7. Remaining steps involve the $OEM$ folders: Create in the root of your installation source a folder called $OEM$, then inside of that a folder called $1 then inside of that one called Drivers, then another one called NVIDIA inside of Drivers in here place the sataraid and sata_ide folders that were inside the IDE folder of the extracted chipset drivers

  8. Now you'll need to modify or create an WINNT.SIF mine looks as follows:
    • The important settings being OemPreinstall, UnattendedInstall, DriverSigningPolicy and OemPNPDriversPath

    Code:
    ;SetupMgrTag
    [Data]
    AutoPartition=0
    MsDosInitiated="0"
    UnattendedInstall="Yes"
    
    [Unattended]
    UnattendMode=DefaultHide
    OemPreinstall=Yes
    OemSkipEula=Yes
    TargetPath=\WINDOWS
    FileSystem=*
    Repartition=No
    UnattendSwitch="No"
    WaitForReboot="No"
    DriverSigningPolicy=Ignore
    OemPnPDriversPath="Drivers\NVIDIA\sataraid;Drivers\NVIDIA\sata_ide"
    
    .....
  9. Done - create a bootable disk from your installation source and install.



Note
: Untested on AHCI but definately works with RAID