下沙论坛

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

QQ登录

QQ登录

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

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

[复制链接]
  • TA的每日心情
    擦汗
    3 小时前
  • 签到天数: 2402 天

    [LV.Master]伴坛终老

    跳转到指定楼层
    1
    发表于 2005-4-1 00:31:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    现在新主板越来越多的支持了SATA,但是要在SATA硬盘上安装XP等操作系统,需要把
    1 Z; {* v9 s6 E7 `$ |' ?SATA驱动放在软盘中,XP安装启动时按F6加载SATA驱动才可以正常在SATA硬盘上安装
    ! ~% i6 I! t. h  g. W! m新系统.+ e* R) W% W2 h. B. T3 u

    - G& L% {$ R! V$ d% C$ s这个问题很搞笑,因为装SATA的新机器多半不会装软驱了吧.好在有办法在XP安装盘, y% ]& Z! _' e6 N+ ]$ ]/ [4 Z
    中集成SATA驱动,具体方法在google上以XP SATA driver F6 integration搜一下就
    ) a1 e- N8 X# t) z! A4 r有了,大体方法是修改驱动的inf文件加入到XP安装文件中使其自动加载,这里不在赘2 z4 t( A& J$ ]5 ]0 f; {0 t3 b
    述.
    ( _9 e; P4 |' L# `) C
    " u* w9 j8 i+ o& Z! N- j这种方法的缺点在于修改麻烦,一般修改简单的驱动还行,可是像VIA现在发布的SATA
    # ~$ a8 G& s% N: d4 b/ g驱动是非常麻烦的,修改起来不是那么简单(我就是因为这个放弃了这种方法).另一. V# Y9 u9 ]: D9 _' R3 I. i0 Q
    点,厂商一旦发布新的驱动,更新的话就要重新修改.
    2 ^" X  U4 o- o7 K6 v7 O
    * u5 r- y% ^$ N" K  D我要说的是用cdshell来虚拟软驱,完成没有软驱的情况下加载软盘中的SATA驱动的
    6 N) y: c1 M( D+ N"不可能任务".cdshell是一个光盘引导管理程序,非常强大,关于它以及这个强大工& [) d! B' O7 `* z  [5 P+ e8 h
    具从diskemu -> Boot Scripter ->CDShell的演化历程,请至www.cdshell.org: X. g6 u$ B! G+ _

    8 [, O2 |/ W2 @' G大致介绍一下cdshell:, m. T, H4 {( C# |) z6 h  U
    cdshell的引导程序loader.bin被写在光盘的eltorito引导区,然后它会加载cdshell3 R# w1 I+ T8 J$ h& G- w
    的主程序并加载各功能模块(其中就包括之前bart所作的著名的把软盘模拟发展到极
    # g' d2 q4 l* Q+ Y致的diskemu).然后它可以引导光盘上的软盘镜像(通过diskemu或是另一个组件memd0 \- p- R0 l$ S) Y' Z
    isk)/另一个光盘引导记录/另外一个光盘iso(2.0.13b之后),并且提供了一个很强大
    : B; i* _; C6 Q1 H的脚本系统,可以实现用户交互(2.0.15b之后甚至可以用鼠标了).常见的N合一启动
    2 H" F! Q% b# q6 E6 n/ V, r盘基本就是用它或其前身来完成的.$ o" T6 W4 T. b, d# R
    6 g& k+ ?* q0 b3 P, W
    在2.0.12b中cdshell加入了一个非常有用的功能:它的diskemu组件现在可以只加载* S2 e! \$ c- R% k! `
    软盘镜像,而不启动它,在这之后我们可以再启动一个光盘镜像.这就是我们要的功能!
    2 r4 H4 o, p( u- u; m% T3 e4 N2 _- K0 O% b4 E) ^
    比如启动一个软盘镜像的命令行是这样的:0 ?( U; N& D3 t5 @
    diskemu imgfile.img' O7 ^2 [: F+ S2 Y
    启动一个光盘引导记录的命令行是这样的:$ _- i) w' d* a: A; j3 I! e0 d
    chain cdrecord.ert
    ; U& e5 W# D% C/ M9 o先虚拟软盘再启动光盘引导记录的命令行就是这样:
    / \) s( d5 r! {0 l7 Z4 qdiskemu imgfile.img noboot
    . v- R* R* U. B9 D$ T4 fchain cdrecord.ert
    , V3 W5 @9 o; O8 _6 b
    & ]' k, `' _9 e" E; o* I就这么简单,具体步骤如下:8 ~/ L. G/ a9 L/ Q: T
    ) K: o7 f: A" m" ^' C! ?
    这里使用cdimage来创建可启动镜像,也可以使用mkisofs代替.9 u" p& Q& Y# Q8 d- G9 |' D" o6 d% \5 N

    ! [  F) R6 _9 Y2 D& ]1:把XP安装文件拷到D:\temp\XPins(这个你随意)下
    ) u2 G5 ^/ P+ [2:把cdshell的bin包里的boot目录整个拷贝到D:\temp\XPins9 g5 R5 `6 v' }
    3:把D:\temp\XPins\boot下的loader.bin移到D:\temp
    1 v+ ]; G! u' u+ e4:准备你要用的SATA驱动的软盘镜像(可以使用WinImage创建),放在boot下1 F3 ?$ l* u; [& ]+ d5 F! A
    5:按需修改cdshell.ini这个脚本文件,有兴趣的话,看一下cdshell的说明,看看哪些组件! b% S5 `: r# D# K7 E! Z7 |
    是你要的,不用的可以删除,脚本可以参照下面的范例
    # Y+ ?4 V; R; N: \0 h! @' K: ^6:把cdimage.exe放到D:\temp\,运行下面的命令创建镜像
    " T: R& k5 y5 K' r- B) pcdimage -lXPinsSATA -h -n -bloader.bin D:\temp\XPins D:\temp\XP.iso
      k+ {# u1 h. m, N- W7:burn it, have fun!
    ) P  Q3 q  W1 s6 q% F' s3 a! o; S- e& x: g* i
    我的cdshell.ini:- ^: ~5 Q0 v4 C( |$ X
    ###########################################################################/ l* \! A" X- r8 X' g4 {
    start:
    6 @/ G- C4 S1 d: X/ V5 p* q/ Z( p# d% cset c_1 = $textColor #get the default color
    5 _3 X4 b% ~0 u: D& T8 |here& t6 x2 \% q) z% A7 A# ?
    set c_2 = color[brightblue on black]$ k( t5 n+ G) ^) r1 C
    set c_3 = color[brightgreen on black]
    4 D: k! ?: S9 wset c_4 = color[brightred on black]% \4 U1 x* p+ Y5 w/ p4 ~/ |
    set c_5 = color[white on black], J$ C/ ?+ d1 n% @& A6 e* B

    * g2 d7 g1 p& H9 Q8 qcls
    # c5 H1 g- V8 K2 A, H  }print c "\nJimmyZ`s XP install with RAID floppy emulation Disk Version6 Q3 [, o  {, }, v1 Z: `
    \c($c_3)Aug 4th,2004\c($c_1)\n"; n4 ^7 ?5 _9 `& t  s" u' q
    print r "\c($c_5)Powered by CDshell.org\c($c_1)"/ O$ F1 Z' m$ A+ [
    print "\n"
    2 o. D" q9 Q  C/ O( Uprint l "\t\c($c_2)1\c($c_1). Boot Extreme Pure MS-DOS 7.10 (for bios& Z9 n8 U  D( b, C
    flasher etc)\n"9 |% e' k- ]$ {
    print l "\t\c($c_2)2\c($c_1). Boot Standard MS-DOS 7.10\n"8 n( [& C3 X+ ?( }! s3 ?
    print l "\t\c($c_2)3\c($c_1). Boot Super MS-DOS 7.10 by Wengier\n"
    # _/ X3 ^: d$ \. a( _. ?print l "\t\c($c_2)4\c($c_1). Boot Standard PC-DOS 7.10\n"
    " N6 V& q" O% ~' _8 mprint l "\t\c($c_2)5\c($c_1). Boot tom`s rtbt-2.0.103.Eltorito Edition
    * F1 z1 l+ z# C* \  q# S(Linux 2.2.10)\n"( k1 z# o! T' E6 @3 y- f+ w
    print l "\t\c($c_2)6\c($c_1). Boot Windows XP VLK SP1 ENG setup\n"
    ; t) b+ L6 s* j, K1 z8 uprint l "\t\c($c_2)7\c($c_1). Boot Windows XP VLK SP1 ENG setup with VIA0 f8 D2 P5 H- ~6 y3 `5 b
    RAID floppy emulation\n"/ \% t* c& z' ?
    print l "\t\c($c_2)8\c($c_1). Boot Windows XP VLK SP1 ENG setup with Intel9 V6 I0 E2 ?, G
    RAID floppy emulation\n\n"! r( ?" U+ Q" X' x# c
    print c "\"\c($c_4)F\c($c_1)\" boot Floppy, \"\c($c_4)Esc\c($c_1)\" boot' }  ?1 a- r. \7 e
    1st HDD\n\n"$ b6 o' v( B9 ^& U5 N- j4 L
    print r "\"\c($c_4)C\c($c_1)\" to CD-Shell Command Prompt"
    $ W" @# _) ~7 u3 r( n8 Gprint r "\n.ini written by JimmyZ: \c($c_5)sorceress_92@hotmail.com\c($c_1)"
    7 h4 `# I7 a& m* {. g2 C4 J# s
    mainkey:
    / W+ P7 d& ^3 X  O; e) h; }1 Rgetkey 30 set lastKey = key[esc]
    * W9 N: F" d* X+ W5 H* xif $lastKey == key[1];then goto ms710cln& B2 }5 K6 \% i# L
    if $lastKey == key[2];then goto ms710std8 s6 A/ y0 I$ I& l8 b; t1 _
    if $lastKey == key[3];then goto ms710spr
    ) i! k" L  E( l: l9 d$ b* T' G3 R. [; vif $lastKey == key[4];then goto pc710/ S* D) L3 \7 g) }5 d/ L+ ^
    if $lastKey == key[5];then goto toms5 K2 r" ?* ?$ [2 E) g1 z$ i! i7 Z
    if $lastKey == key[6];then goto xpins
    , H# ~9 T5 }4 I1 G, x4 I1 }if $lastKey == key[7];then goto xpinsvia; l/ \) R- Z* u3 [
    if $lastKey == key[8];then goto xpinsintel
      ?  b/ a5 \1 P1 G( r" S' c, oif $lastKey == key[f];then goto floppy
    ! c0 ]& h: U; _1 I2 n! oif $lastKey == key[esc];then goto hdd0
    0 k% u; N7 L3 ]! T* sif $lastKey == key[c];then goto exit
    3 |: f9 x: t- [% ]4 z* Jgoto mainkey
    ; `. U. N1 ~- v5 U
    * h" i; e4 L, ~# m; q0 hms710cln:+ ?/ L6 y9 `8 q8 L
    cls' n& n' B6 I1 u$ |: D
    diskemu images\MS710CLN.IMG" U# a2 K* s9 _! g
    getkey
    + \8 S0 K$ I% s& X- H/ {5 agoto start
    ) [# u/ h1 p  X5 L7 K& b
    ! |' C  |: F1 z1 ~1 ~ms710std:
    % P* M0 T2 K$ vcls8 X% I( P1 \  i- z$ V5 ]; v
    diskemu images\MS710STD.IMG
    ; D; s! J  u' |3 kgetkey+ G, [8 ]' b, m0 [8 h
    goto start
    8 r$ }7 p; T1 l  X( O! J  |' Z1 p$ I# c, m1 D. \8 M
    ms710spr:+ C6 L& c+ w+ A5 N5 U  i* ]& u8 ?
    cls
    $ F0 }9 p* }% ]& [/ L. x5 X/ {/ Pdiskemu images\MS710SPR.IMG6 l5 l" ^) b( k9 r2 _' ~
    getkey1 ~) D! L' F) C. t0 R8 P9 B
    goto start
    # X, S: z4 k' {! r4 O9 S7 x2 w% E8 ~* m% ~5 C
    pc710:
    & Z8 Z8 p( z6 p) ?: acls
    / u  J5 v' T( d# A8 M# ]diskemu images\PCDOS710.IMG
    1 E6 G2 R9 m4 ^" V5 mgetkey. j$ v: Y; F9 ^# _- O
    goto start- ]0 Z, ^$ D" H9 H# m9 y
      x) X/ b5 ~: g# W9 E
    toms:
    ! Q1 y9 N  ~. G4 G' j) wcls& C" R8 S0 X* U3 T4 h
    diskemu images\tomsrtbt.img, z/ J3 y0 k2 A
    getkey7 i' F  z) m' r8 s8 l3 `
    goto start
    3 r$ e6 [, C+ c' h
    ( \6 P: x& S) y. I: Bxpins:( @8 V8 [7 s& b4 O% h) m; H
    cls
    & S2 P& L* D% vchain images\MSXPVLK1.etr
    ; \3 ]4 f1 ]: s% T! P1 Xgetkey
    9 i' J$ ^5 Z" n# _$ C9 rgoto start
    4 S$ e/ B" L8 i
    ; P' H5 P1 M9 M3 @xpinsvia:  |- t& Z3 I3 K: r, J( P/ B
    cls
    ) Z. b8 Q4 }( Sdiskemu images\viaRAID.IMA noboot
    5 j8 H6 p. S/ B) J2 i0 Nchain images\MSXPVLK1.etr9 u* y/ b1 O9 C3 {6 I# Y$ T0 b1 |
    getkey
      l, T* C: S! ygoto start3 T: o( P2 `& Y% x

    5 d/ ~2 o& ]+ V0 [xpinsintel:
    , ~6 x' x0 u1 K& K' ~- Kcls
    " N7 ~' t) o, @3 y+ u2 g, pdiskemu images\intRAID.IMA noboot( N" X/ O9 B" v/ d
    chain images\MSXPVLK1.etr+ s+ G5 i+ K9 J
    getkey
    ) ]) q4 c7 i/ sgoto start
    " |# _0 E  [2 l; p$ q
    7 P; }2 c( _: L$ xfloppy:4 Y/ n4 g) C( B5 W2 l$ o
    cls( I8 v4 h: j! r( F& S' v- \' S
    boot 0x00
    & u1 m$ `  `+ \getkey
    ! T; E  q( K- n' cgoto start
    1 S; ]* D" o! X) F. a& M; T6 x6 u
    0 S6 O- Q2 c, A0 e( O' p$ m- ~hdd0:
    0 {% h- [) E7 t) Qcls" q2 v. X0 E3 w) s# U" h( O! e
    boot 0x80* m' q) L: o" [' x2 t( z
    getkey
    2 \- p: Y% L# X. i8 @goto start/ j/ N7 `8 k( h; a( e& @

    + d% K: S8 ~  v  R9 E+ D, xexit:* e% U: }4 p# q1 v* I
    cls
    + F' T. M% ^8 F$ ?help
    ; L6 n9 t( y. y( E7 y; m  L" Jend
    1 S: z1 |) v- [0 Q  ~3 i6 R- o2 c###########################################################################: S* w9 ~5 r, N+ o  ^/ h  n/ j
    8 `4 t& [8 H. k7 e% R% a3 m
    我做这个的主要原因是想装的新机器想用SATA的硬盘也不想装软驱,所以做了这个,己# D/ U7 U! Z2 I4 ~$ u1 N
    经试验过XP安装程序的确可以正常加载虚拟软驱中的驱动.如果大家觉得这个方法带/ Y& j1 K/ Q! D2 o: [6 E- q
    来方便,不胜荣幸.8 v! ]% z* R7 `# C5 q

    9 Y/ `2 y; V  A" Y9 Y% v9 ]0 ?% C
    - G8 T: e2 ^3 n3 ?/ nJimmyZ于2004.08.04晨
    # O; |4 ?0 v  `- w4 @
    # N6 h' {9 r/ V% o: Z4 b* v
    ( G3 O3 R1 x- N' a9 V感谢Gary Tong和Bart Lagerweij的堪称伟大的diskemu,感谢Michael K. Ter Louw的
    ( N" u# g3 q) F  a更加好用更加完善的cdshell
    # Y8 m, r0 u" w8 Q--
    : K9 i& N: u0 s' `6 D1 OFake Wings6 f  ?4 s5 c) b" B! g. m2 E1 Y$ T
    shine , bright morning light , now in the air the spring is coming) \$ c, G* k7 b& T
    sweet blowing wind , singing down the hills and valleys% R  \2 g  T' B% p
    keep your eyes on me , now we`re on the edge of hell
    % g7 [6 S& _4 o8 l% E( T2 Z$ d  jdear my love , sweet morning light
    ( U. s4 f6 a9 q( D' u2 ]9 pwait for me you`ve gone much farther , too far% z, r$ k# x; ~3 a: |: q
    ※ 修改:·JimmyZ 於 08月04日02:03:07 修改本文·1 ?7 ^# D$ J( I: b5 O
    ※ 来源:·瀚海星云 bbs.ustc.edu.cn·
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏 分享分享 顶 踩
  • TA的每日心情
    擦汗
    3 小时前
  • 签到天数: 2402 天

    [LV.Master]伴坛终老

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

    本版积分规则

    关闭

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

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