2006-05-21

SATA driver for Windows Installer

前天某友人使用 MSN 向我求救, 讓我不得不正視這個棘手的問題

Windows 安裝程式遇到 SCSI device 時, 可以按 F6 另外載入 driver
但是如果沒有 floppy 那就完全沒辦法載入driver, 不過現在 floppy 用途越來越小, 邊際效應已經低到可以不裝了...

所以, 總得想個辦法把 driver 給塞進 Windows 安裝程式裡... 雖然 google 一下就有很多答案, 簡體中文版的相關網站非常多, 但是他們互相抄襲的結果就是連他們自己都不知道能不能動

以我擁有的 Promise FastTrak SX400 為例, 步驟如下:
1. 確認 driver 設定檔案 txtsetup.oem 以及主檔 fastsx.inf, fastsx.inf

2. 將 Windows 安裝光碟中的 \I386\TXTSETUP.SIF 取出, 找到 [SourceDisksFiles] 的段落, 在其中加入
fastsx.sys = 1,,,,,,3_,4,1,,,1,4
fastsx.inf = 1,,,,,,,20,0,0


3. 打開 driver 檔案中的 txtsetup.oem , 找到 [HardwareIds.scsi.FastTrak_SX_xp] , 將底下的
id="PCI\VEN_105A&DEV_6621", "fastsx"
id="PCI\VEN_105A&DEV_6622", "fastsx"

字串改成以下的形式
PCI\VEN_105A&DEV_6621 = "fastsx"
PCI\VEN_105A&DEV_6622 = "fastsx"

然後, 把這串貼到 TXTSETUP.SIF 裡的 [HardwareIdsDatabase] 段落裡

4. 找到 TXTSETUP.SIF 裡的 [SCSI.Load], 加入
fastsx = fastsx.sys,4


5. 找到 TXTSETUP.SIF 裡的 [SCSI], 加入
fastsx = "WinXP Promise FastTrak S150 SX4/SX4000 Series"

(上面這段可以從 txtsetup.oem[SCSI]部分找到.)

6. 執行以下指令壓縮 driver 檔案
makecab /D CompressionType=LZX fastsx.sys FASTSX.SY_
makecab /D CompressionType=LZX fastsx.inf FASTSX.IN_


7.找到 \I386\DOSNET.INF, 在以下幾段加入這幾個字串
[FloppyFiles.2]
d1,fastsx.sys
d1,fastsx.inf

[Strings]
fastsx = "WinXP Promise FastTrak S150 SX4/SX4000 Series"

[Files] (有好幾個, 請找內容最長的那段)
d1,fastsx.sys
d1,fastsx.inf


8. 以上動作完成後, 將 TXTSETUP.SIF, DOSNET.INF, FASTSX.SY_, FASTSX.IN_ 放回 \I386 底下, 燒錄開機光碟, 測試是否能夠正常運作.

以上步驟相當的複雜, 所以已經有人有包好的 driver pack 以及 batch 檔
http://www.driverpacks.net/ 就可以直接抓到檔案, 跑完 batch 檔以後你的安裝光碟就和坊間常見的什麼 Supxxxp 一樣內建一狗票 driver 了
( 我這種掀別人底牌的動作不知道會不會太過份了?? XD )

沒有留言:

張貼留言

VMware ESXi 遠端線上升級 (upgrade from 6.0 to 6.5 with esxcli)

原本想說 ESXi 6.0 跑得好好的沒什麼問題, 上面的 FreeBSD 11.x 也順順跑, 沒想到升級到 12.x 就踩到大地雷... ESXi 6.0 的 vmxnet3 沒辦法在 FreeBSD 12.x上面用,升級上去以後回應時間會爆炸, 從本來的 〈1ms 變成 ...