下沙论坛

 找回密码
 注册论坛(EC通行证)

用新浪微博连接

一步搞定

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 6735|回复: 1
打印 上一主题 下一主题

XP安装盘集成SATA驱动的简单方法

[复制链接]
  • TA的每日心情
    擦汗
    昨天 17:14
  • 签到天数: 2366 天

    [LV.Master]伴坛终老

    跳转到指定楼层
    1
    发表于 2005-4-1 00:31:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    现在新主板越来越多的支持了SATA,但是要在SATA硬盘上安装XP等操作系统,需要把
    . J! b# A, d  |1 j9 p. SSATA驱动放在软盘中,XP安装启动时按F6加载SATA驱动才可以正常在SATA硬盘上安装
    % ~  x) J$ x: W( L, P新系统.% ]! e1 i/ z2 E2 t5 ?8 N* L- f

    & E) L! a; u# I9 J& W: o+ a) o这个问题很搞笑,因为装SATA的新机器多半不会装软驱了吧.好在有办法在XP安装盘
    % d) q, D" m6 B/ e/ B, N中集成SATA驱动,具体方法在google上以XP SATA driver F6 integration搜一下就
    + g9 V: R4 F! y$ U: `3 n有了,大体方法是修改驱动的inf文件加入到XP安装文件中使其自动加载,这里不在赘1 C( ^4 L. E* f8 E
    述.
    4 I) u# ?# x: S8 j: c$ K1 d5 s" y/ Y6 n1 v
    这种方法的缺点在于修改麻烦,一般修改简单的驱动还行,可是像VIA现在发布的SATA
    ; X7 z8 Z! X# L驱动是非常麻烦的,修改起来不是那么简单(我就是因为这个放弃了这种方法).另一
    . G& ~( }6 f7 B点,厂商一旦发布新的驱动,更新的话就要重新修改.
    0 H- `1 a" v: P8 ?/ T6 L0 |  |1 `* _  L8 E; D% D/ e
    我要说的是用cdshell来虚拟软驱,完成没有软驱的情况下加载软盘中的SATA驱动的
    ) _& Q+ m1 l- q! v! u"不可能任务".cdshell是一个光盘引导管理程序,非常强大,关于它以及这个强大工
      p6 J6 z# x- g/ k* A2 g9 y具从diskemu -> Boot Scripter ->CDShell的演化历程,请至www.cdshell.org) u- G- e3 T/ h8 ~
      [& ]3 i9 C! V7 y9 \
    大致介绍一下cdshell:
    - J& k( E" \% I9 A$ Y) \9 d4 Ucdshell的引导程序loader.bin被写在光盘的eltorito引导区,然后它会加载cdshell9 C0 i5 M2 Y! G& u6 g
    的主程序并加载各功能模块(其中就包括之前bart所作的著名的把软盘模拟发展到极( {3 K$ ]2 f' w5 }
    致的diskemu).然后它可以引导光盘上的软盘镜像(通过diskemu或是另一个组件memd
    + @. b+ O8 G1 b1 Jisk)/另一个光盘引导记录/另外一个光盘iso(2.0.13b之后),并且提供了一个很强大
    ! p# h- Z6 Z  Z0 w- |的脚本系统,可以实现用户交互(2.0.15b之后甚至可以用鼠标了).常见的N合一启动  s: U5 p0 W9 z* M; r  l
    盘基本就是用它或其前身来完成的.
    * A1 h0 X4 Y+ X- ~( U+ r% z0 |/ `. O9 ]+ e
    在2.0.12b中cdshell加入了一个非常有用的功能:它的diskemu组件现在可以只加载
    2 H- b8 {& m8 e, I3 B软盘镜像,而不启动它,在这之后我们可以再启动一个光盘镜像.这就是我们要的功能!1 b! i1 o, \  P! Y8 K$ g! j

    $ u: O# Z! a+ i8 }& R比如启动一个软盘镜像的命令行是这样的:
    ) ?2 V! }& n! ^diskemu imgfile.img& v9 f9 X# Z& t* {8 Z
    启动一个光盘引导记录的命令行是这样的:, z+ q) Q) a3 S+ W* |) B6 |7 k/ f
    chain cdrecord.ert; k' ?$ D) R7 C# S% c
    先虚拟软盘再启动光盘引导记录的命令行就是这样:+ N6 S9 B, K, h! Z( O" O( C  C0 d
    diskemu imgfile.img noboot5 o  U4 d( H( i
    chain cdrecord.ert, ^. j) R$ x1 A! ?& I( w+ b( ^7 G, }

    8 T& }+ Q; y4 r8 t2 k( L" p就这么简单,具体步骤如下:5 x! e! [' @' |1 ]6 D* e; ]
    5 S4 P0 B3 q+ F
    这里使用cdimage来创建可启动镜像,也可以使用mkisofs代替.
    7 P8 K8 Y! A6 Y6 ^
    1 R% |+ k) D+ R: d" K7 z' J1:把XP安装文件拷到D:\temp\XPins(这个你随意)下% H! d8 w$ h# A2 _0 x
    2:把cdshell的bin包里的boot目录整个拷贝到D:\temp\XPins
    : Q' h: W, H! g5 b: y3:把D:\temp\XPins\boot下的loader.bin移到D:\temp
    6 i2 k- C2 F6 S( o& h- ?! B4:准备你要用的SATA驱动的软盘镜像(可以使用WinImage创建),放在boot下1 R2 n9 K& g8 y# o
    5:按需修改cdshell.ini这个脚本文件,有兴趣的话,看一下cdshell的说明,看看哪些组件
    4 V( Z  o; M/ f' y& s是你要的,不用的可以删除,脚本可以参照下面的范例& ?6 K2 i  X% I8 j( U. i" q
    6:把cdimage.exe放到D:\temp\,运行下面的命令创建镜像
    8 n8 j2 f4 R- u7 V3 F, q# |: gcdimage -lXPinsSATA -h -n -bloader.bin D:\temp\XPins D:\temp\XP.iso: B# ~! T* E2 ]4 w" X; N/ k: ~; s
    7:burn it, have fun!
    # r* V2 r+ T9 m2 ~1 y; d9 d8 ?2 e/ G/ M- l% r
    我的cdshell.ini:+ s9 }2 q1 X) j" c6 h! D: x  v
    ###########################################################################5 J( e- V  r8 X3 y' z/ i8 A$ X
    start:
    - A% h. Q7 p; ]set c_1 = $textColor #get the default color. V2 ^/ J# w# b3 H7 {$ K
    here
    " P' N; q8 V) \+ i. d- L% `8 v& V% h% ]set c_2 = color[brightblue on black]$ J. Y' W! U) a7 m) D
    set c_3 = color[brightgreen on black]
    & ?  n4 o; i' sset c_4 = color[brightred on black]( T0 H8 s( m5 E& n; I' t% O
    set c_5 = color[white on black]1 O7 d9 U. h; V. i. F  U, ?8 t1 `1 J
    9 d! n3 J6 j! y
    cls( o1 a, t* z2 b3 L: q$ \
    print c "\nJimmyZ`s XP install with RAID floppy emulation Disk Version
    : p* |# @+ [) U) d+ H\c($c_3)Aug 4th,2004\c($c_1)\n"
    $ j# G* C8 ~, Y6 l3 X/ zprint r "\c($c_5)Powered by CDshell.org\c($c_1)"% m1 X" G7 u" W' K
    print "\n"* d; m$ c4 I5 p
    print l "\t\c($c_2)1\c($c_1). Boot Extreme Pure MS-DOS 7.10 (for bios/ ]6 `( M% C. ~( e/ Z5 d) B0 c
    flasher etc)\n"
    " T, F+ H# {1 o" R( nprint l "\t\c($c_2)2\c($c_1). Boot Standard MS-DOS 7.10\n"
    8 U2 G/ X8 C' Rprint l "\t\c($c_2)3\c($c_1). Boot Super MS-DOS 7.10 by Wengier\n"
    ' b% h5 G% i7 M" k0 _3 Cprint l "\t\c($c_2)4\c($c_1). Boot Standard PC-DOS 7.10\n"9 l8 i8 d3 s- [4 d
    print l "\t\c($c_2)5\c($c_1). Boot tom`s rtbt-2.0.103.Eltorito Edition; ~) z' y3 @+ K8 r! b5 Z9 T" B
    (Linux 2.2.10)\n"
    9 _: f  E' Z$ L2 z# i; M; X$ D& I: T  Oprint l "\t\c($c_2)6\c($c_1). Boot Windows XP VLK SP1 ENG setup\n"
      u9 Y( x9 U" _4 C& T( r: M; Qprint l "\t\c($c_2)7\c($c_1). Boot Windows XP VLK SP1 ENG setup with VIA; ], {; u: z9 s: y7 ^$ B
    RAID floppy emulation\n"
    0 z9 J) k' v' {. L1 G5 Cprint l "\t\c($c_2)8\c($c_1). Boot Windows XP VLK SP1 ENG setup with Intel
    ! _7 H7 [4 t/ a  ^: ~RAID floppy emulation\n\n"* \# d5 c3 D8 R! C- k
    print c "\"\c($c_4)F\c($c_1)\" boot Floppy, \"\c($c_4)Esc\c($c_1)\" boot) L, B& y# F2 S. K
    1st HDD\n\n"+ L" M; d% |8 E' Y" Q  S( C
    print r "\"\c($c_4)C\c($c_1)\" to CD-Shell Command Prompt") l3 |2 H& w8 [: G) d2 h
    print r "\n.ini written by JimmyZ: \c($c_5)sorceress_92@hotmail.com\c($c_1)"
    * i6 g: x. l2 a+ L" x3 d7 U6 U$ z: b+ o% W- [
    mainkey:
    9 S+ l4 d6 {" T' Y; `getkey 30 set lastKey = key[esc]: q" e' X( q7 v- T
    if $lastKey == key[1];then goto ms710cln! k7 a1 H1 V& B0 W0 ]
    if $lastKey == key[2];then goto ms710std6 [" b. A* Y$ ~' S. v* {7 c2 i
    if $lastKey == key[3];then goto ms710spr$ v5 L/ @7 o! K( v# u7 @" b
    if $lastKey == key[4];then goto pc710$ d0 K& G: P! v- L% n! t8 e
    if $lastKey == key[5];then goto toms* c0 z# S% z  B2 }
    if $lastKey == key[6];then goto xpins: n7 y  I& r9 t2 f, g3 k
    if $lastKey == key[7];then goto xpinsvia
    ! n( q8 R% h, [2 Lif $lastKey == key[8];then goto xpinsintel6 ?& s$ [' ^% O5 z
    if $lastKey == key[f];then goto floppy6 b. m0 N5 D- Q5 R4 A
    if $lastKey == key[esc];then goto hdd0( X9 T8 h# B$ [" P) ~7 r
    if $lastKey == key[c];then goto exit
    : u5 b5 V, v3 R0 I( Ugoto mainkey
    9 w4 L$ j. [" B' n" B
    ; R* a$ f6 q& J+ c9 f% fms710cln:9 F6 s5 N7 e. G0 b; h6 x" X- v4 r! [
    cls
    ! i- T# A! l% M/ ydiskemu images\MS710CLN.IMG
    . Z7 e0 ]0 E8 l6 v5 Kgetkey
    $ o1 K8 [1 G" d6 u, _4 [( c( Vgoto start
    1 e( ?& z+ u8 i6 }1 K7 t2 f. z9 S8 ^5 k& m
    ms710std:6 P& U3 d- O( D3 W  |! F
    cls" g& p/ q) Q' H
    diskemu images\MS710STD.IMG. @% T- C( n% z( K
    getkey8 }0 ~5 _( x7 x( j7 d
    goto start
    9 `7 n3 D$ E" E1 R6 K1 H) m: g( x5 G0 T# C" F1 R
    ms710spr:
    5 d9 j8 a/ @  M& pcls
    - S0 ?0 u4 t0 b& @' n. w( {& Bdiskemu images\MS710SPR.IMG  w' `" K! q# g  ?5 [  W; ~8 ?4 o
    getkey5 r) Q1 I; d' a- ?% L- _
    goto start
    ; F- @/ [" }8 q/ D+ v4 p% H! C; q- f9 L& ?6 G  U0 R
    pc710:& q% ]+ j, H8 t1 C; R
    cls
    * ?+ I- u. B2 `7 ]/ v! {( }6 tdiskemu images\PCDOS710.IMG7 |$ d/ _5 h/ C( s' N  [, d0 Z$ d
    getkey0 v5 |+ S; f% F" y/ X% C3 u
    goto start
    1 R( L1 E) _2 T3 j: {) h$ d  j; ^' P# k7 {
    toms:
    : M1 H, e8 C& v9 T& Kcls! Q7 w+ c9 j. j+ v: ]5 D3 G" G
    diskemu images\tomsrtbt.img
    4 \  U5 G. f' N" F& [/ |5 Pgetkey2 w7 S& s) q$ s. n
    goto start+ @) p- q6 K2 L( }. h1 K  b' Y

    1 W2 i; q8 e5 v/ Xxpins:
    $ b8 Q) w) W# T  u- scls$ e; [4 c9 T$ ]; F+ K4 r- E1 u8 r
    chain images\MSXPVLK1.etr7 `- u* p. G0 f4 Z
    getkey' `+ S  I& `+ I1 t0 H( T
    goto start
    7 i! ?: `. g$ b: b5 _1 I& z) ?3 s" A7 z, C! j' o2 g) N$ X
    xpinsvia:
    9 g, R- s# E8 I/ Gcls
    ' ^4 y0 n) x3 L# l1 Ndiskemu images\viaRAID.IMA noboot0 v0 {+ M* X8 x4 B/ a( ^
    chain images\MSXPVLK1.etr
    ( z) y% H* ^, B1 q/ Mgetkey. \! B2 w9 B5 R2 p* ^" a
    goto start
    ( e. O. y5 Z: H
    - b' ~) v0 A7 Zxpinsintel:
    # K" x2 `  \3 ]; O( `! Dcls
    0 _' o1 t% M( r- \, ]: Zdiskemu images\intRAID.IMA noboot9 M$ N; F5 h" j6 g2 `0 Z1 ?
    chain images\MSXPVLK1.etr
    1 S  u: m1 M# D- ^' qgetkey( m3 z/ g7 i2 s' g
    goto start
    8 a! ~# i+ r3 u. ]! h3 e7 C. ]! U( C# J2 T# r4 |  \6 E( c- j
    floppy:
    ( d& M3 r$ @0 rcls
    ' j8 [0 y# \7 j4 t$ @boot 0x00
    8 L0 Y% ^3 s, g% G- R% pgetkey* A" F9 H: W% F
    goto start+ b0 G# U- n% a6 ]( \9 p1 Z% k% B

    8 t  M$ \" K# a4 v# N: c$ hhdd0:
    9 d) F* [3 q' h- B- D: V) g! l' gcls
    % \8 w; S9 Z5 ^" c  x" Gboot 0x80
    % B3 ]& R3 {; Y: `1 _6 Q0 F) Kgetkey+ ?3 I9 x9 N& A7 `" K
    goto start
    3 ?5 C" g, g1 Y9 l: X1 c8 i
      B2 }( L; q( C" ~. N- Dexit:
    8 v9 u, m& n* `cls1 x5 T" K5 A4 L3 q
    help4 h8 r( Z# Z( }2 r- r
    end
    8 i, z9 b2 v' R, i5 @" ?###########################################################################
    , ^3 d3 V8 ], S; X' C7 K6 c0 m$ E4 v
    我做这个的主要原因是想装的新机器想用SATA的硬盘也不想装软驱,所以做了这个,己
    - a2 B* D: m" N  v+ l经试验过XP安装程序的确可以正常加载虚拟软驱中的驱动.如果大家觉得这个方法带7 j6 ^& @2 |9 m5 Q% ?7 n* R
    来方便,不胜荣幸.
    5 x2 s: Q' [& U  b9 x! {3 e, ]. G% V- ^5 s, |/ w* E
    4 A; s7 u1 q. v! N
    JimmyZ于2004.08.04晨
    5 `& |: x  T3 s1 n& K5 j
    ' w3 a: m9 s6 ^/ O; ^) h5 O) H, o1 y6 y9 s
    感谢Gary Tong和Bart Lagerweij的堪称伟大的diskemu,感谢Michael K. Ter Louw的
    ( G  E. O6 Q. L% G: \7 N3 X2 o更加好用更加完善的cdshell' U' K$ `! G$ b# ?+ `1 f
    --5 p- P8 a4 B( P9 {1 c; m( a
    Fake Wings
    # v% a% {6 N: C+ a2 S. Dshine , bright morning light , now in the air the spring is coming7 I; S. O* C5 x9 l
    sweet blowing wind , singing down the hills and valleys, c& \% A1 k7 m
    keep your eyes on me , now we`re on the edge of hell
    8 s6 j9 \: m$ j; C$ L& t, J- |dear my love , sweet morning light/ l' [) m2 G7 g7 {% C
    wait for me you`ve gone much farther , too far
    - p# u1 u5 r# s! N* o7 d※ 修改:·JimmyZ 於 08月04日02:03:07 修改本文·
    2 y! F2 @+ x  ]5 y※ 来源:·瀚海星云 bbs.ustc.edu.cn·
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏 分享分享 顶 踩 转发到微博
  • TA的每日心情
    擦汗
    昨天 17:14
  • 签到天数: 2366 天

    [LV.Master]伴坛终老

    2
     楼主| 发表于 2005-4-1 00:33:00 | 只看该作者
    http://www.weifeng.cc/sak2000/sata/

    本版积分规则

    关闭

    下沙大学生网推荐上一条 /1 下一条

    快速回复 返回顶部 返回列表