废话少说,这是查阅各种制作方法,花了近2天时间自己反复制作试验完成的最终完美方法,不仅轻易集成了目前多数SATA/SCSI驱动也易于自己添加更新驱动。(比较容易google或百度到的一种手动修改txtsetup.sif的方法实践证明无法通过,在安装时提示目录结构错误)
总之,就这样,以后原生AHCI模式安装SATA2硬盘或RAID告别软驱。

所需软件:

一. 用到的软件
① DriverPacks BASE
下载http://driverpacks.net/DriverPacks/download.php?pag=b
②DriverPackMassStorage下载 http://driverpacks.net/DriverPacks/download.php?pag=m
(这个driverpack massstorage里面包含有我们要添加的1420ICH8M的SATA驱动)
③Ultraiso: 用于制作刻录用的ISO http://www.jb51.net/softs/24530.html
④Nero burning 下载 刻录作好的ISO http://www.jb51.net/softs/9808.html
DELL的omexp在网上有很多,用google搜索 dell ome xp 有很多可以下载的地址。
1. 复制Windows XP光盘里的文件至硬盘,比如G:WinXP。

2. 安装DrivePacks。硬盘里新建一个目录(如E:DriverPacks),把下载到的DriverPacks BASE文件放进来,运行,所有程序文件将被自解压到该目录下。

3. 把DriverPack MassStorage的7zip格式压缩包放到E:DriverPacksDriverPacks目录下,不需要解压缩。这是DriverPacks小组制作好的SATA/SCSI驱动包,包括常见的大多数磁盘设备,可以到这个页面查看所支持设备的列表和驱动版本:http://forum.driverpacks.net/viewtopic.php?id=1449

4. 运行E:DriverPacks DPs_BASE.exe。初始界面可以选择语言。

5. 选择“设置-位置”,选中“磁盘”项,点击“浏览”按钮。选中刚才的G:WinXP目录,确定。这时候左边的窗口会多出几项设置内容。
[img]http://bbs.stage1st.com/attachments/forumid_23/20070614_4869af98472be87387aauAxZ6guk6vT6.jpg[/img]

6. 在“设置-驱动包”中选中“DriverPack MassStorage 7.05”。这个软件也可以集成显示卡驱动、芯片组驱动等其它驱动,详细指南请访问http://forum.driverpacks.net/viewtopic.php?id=1449

7. “驱动包整合方式”选择方式2。方式1虽然比较正统,但是会受到Windows安装程序检索文件夹数量的限制,导致有部分驱动可能无法被载入。

8. 在“选项设置-快速整合缓存”里选中第一项。

9. 点击“整合”按钮,程序会自动把驱动整合进Windows XP安装目录里。

10. 把Windows XP安装光盘放入光驱,打开UltraISO,选择菜单“工具-制作光盘映像文件”或直接按F5。

11. 先选定有XP安装盘的光驱,然后选择“提取引导文件”,保存得到一个bif后缀的引导文件。有了这个文件才能在制作ISO的时候依然保留XP安装盘的引导启动功能。

12. 然后选择菜单“启动光盘-加载引导文件”,读入刚才的引导文件,现在工具栏上就显示“可引导光盘”了。

13. 把G:WinXP目录下的全部文件和文件夹拖放到上栏右边的窗口,选择菜单“开始-保存”,存成一个ISO文件。

14. 用Nero Burning Rom把ISO刻出来就可以使用了,在安装的时候Windows会自动加载刚才集成的SATA/SCSI驱动,避免找不到硬盘或直接蓝屏。

==============================进阶分隔线===============================

进阶使用:更新最新的驱动程序

DriverPacks小组放出的驱动包都是定期更新的,但难免不能及时更新到最新的驱动,比如DriverPack MassStorage 7.05里包含的驱动只支持到Intel ICH8R,不支持最新的ICH9R。现在要说的就是如何手动添加ICH9R的驱动进DriverPacks的驱动包。

1. 首先要获得ICH9R的安装驱动包。很多厂商包括Intel自己也只提供软盘制作程序下载,不过技嘉提供了自解压文件。到技嘉官方网站寻找ICH9R的主板如P35-DQ6的驱动,下载到一个目录解压缩得到一堆驱动文件。

2. 这堆驱动文件里一般都有一个扩展名为inf或者oem的文本格式文件,比如这里的就是“txtsetup.oem”。用UltraEdit32打开,在其中以“[HardwareIds.”为关键字进行搜索,可以找到类似这样一段文字:

[color=red][HardwareIds.scsi.iaAHCI_ICH9R]
id = “PCIVEN_8086&DEV_2922&CC_0106”,”iaStor”[/color]

3. 回到E:DriverPacksDriverPacks目录,用7-zip把DP_MassStorage_wnt5_x86-32_705.7z解压缩,比如解压到E:DriverPacksDriverPacksDP_MassStorage_wnt5_x86-32_705。在这个目录下会有一个DriverPack_MassStorage_wnt5_x86-32.ini文件,用UltraEdit32打开。

4. 因为Intel SATA RAID驱动已经存在于DriverPacks驱动包里,所以只需要更新这个驱动到支持ICH9R就可以了,不必全新添加。在ICH9R驱动文件中,有一个后缀是sys的文件名为iastor.sys,在DriverPack_MassStorage_wnt5_x86-32.ini里搜索“iastor.sys”,最终可以看到这样一段文字:

[color=Blue][IN-1]
ms_count                                = 1
ms_1_deviceName                       = “Intel SATA RAID Controllers”
ms_1_tag                               = “iastor”
ms_1_sysFile                       = “iastor.sys”
ms_1_hwids                               = “PCIVEN_8086&DEV_2652&CC_0104,PCIVEN_8086&DEV_27C3&CC_0104,PCIVEN_8086&DEV_2682&CC_0104,PCIVEN_8086&DEV_27C6&CC_0104,PCIVEN_8086&DEV_2822&CC_0104,PCIVEN_8086&DEV_2652&CC_0106,PCIVEN_8086&DEV_2653&CC_0106,PCIVEN_8086&DEV_27C1&CC_0106,PCIVEN_8086&DEV_27C5&CC_0106,PCIVEN_8086&DEV_2681&CC_0106,PCIVEN_8086&DEV_2821&CC_0106”
ms_1_isBusExtender               = false[/color]

一开始的[color=Blue][IN-1][/color]代表了驱动的存放地址,这些驱动就放在 E:DriverPacksDriverPacksDP_MassStorage_wnt5_x86-32_705DM[color=Blue]IN1[/color] 目录下。把刚才得到的ICH9R驱动复制到这个目录下覆盖就完成了驱动版本的更新。

但这个时候硬件ID还没有添加进新的硬件,就是ms_1_hwids那段的部分。在步骤2里找到的字段就是这个硬件ID,取出其中的“[color=Red]PCIVEN_8086&DEV_2922&CC_0106[/color]”字段添加进这个驱动包ini文件里。于是现在修改成这样:

[color=Blue][IN-1]
ms_count                                = 1
ms_1_deviceName                       = “Intel SATA RAID Controllers”
ms_1_tag                               = “iastor”
ms_1_sysFile                       = “iastor.sys”
ms_1_hwids                               = “PCIVEN_8086&DEV_2652&CC_0104,PCIVEN_8086&DEV_27C3&CC_0104,PCIVEN_8086&DEV_2682&CC_0104,PCIVEN_8086&DEV_27C6&CC_0104,PCIVEN_8086&DEV_2822&CC_0104,PCIVEN_8086&DEV_2652&CC_0106,PCIVEN_8086&DEV_2653&CC_0106,PCIVEN_8086&DEV_27C1&CC_0106,PCIVEN_8086&DEV_27C5&CC_0106,PCIVEN_8086&DEV_2681&CC_0106,PCIVEN_8086&DEV_2821&CC_0106, [color=Red]PCIVEN_8086&DEV_2922&CC_0106[/color]”
ms_1_isBusExtender               = false[/color]

其实ICH9R原厂驱动里增加的其它兼容驱动,比如ICH8M等也可以用相同方法添加进来。

5.         保存ini文件,重新打包成7zip格式,就完成了对驱动包的更新。再按前面的方法制作XP光盘,这样制作出来就能支持ICH9/ICH9R南桥,测试通过。重新打包的驱动包也可以命名为不同的名字,比如DP_MassStorage_wnt5_x86-32_708.7z,软件会优先识别版本号新的一个包。