下沙论坛

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

QQ登录

QQ登录

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

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

[复制链接]
  • TA的每日心情
    奋斗
    前天 09:20
  • 签到天数: 2383 天

    [LV.Master]伴坛终老

    跳转到指定楼层
    1
    发表于 2005-4-1 00:31:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    现在新主板越来越多的支持了SATA,但是要在SATA硬盘上安装XP等操作系统,需要把
    8 B* R7 F4 [0 Z9 I& e: O. ^9 TSATA驱动放在软盘中,XP安装启动时按F6加载SATA驱动才可以正常在SATA硬盘上安装/ v4 K% W6 _* H
    新系统.$ z0 g$ e8 A. j' X
    ! G; w8 e2 l& b  f$ s; Z( m5 j
    这个问题很搞笑,因为装SATA的新机器多半不会装软驱了吧.好在有办法在XP安装盘
    ( W  {* y( r) R中集成SATA驱动,具体方法在google上以XP SATA driver F6 integration搜一下就3 k# D0 B. n8 Z3 v
    有了,大体方法是修改驱动的inf文件加入到XP安装文件中使其自动加载,这里不在赘6 Y6 c; G: w% q( e- @
    述.. m! [) v8 e# ^* i3 Q

    & R  ^; \( s3 c8 ]2 q$ g这种方法的缺点在于修改麻烦,一般修改简单的驱动还行,可是像VIA现在发布的SATA
    8 c$ A+ f' t; c7 A$ q7 b/ e驱动是非常麻烦的,修改起来不是那么简单(我就是因为这个放弃了这种方法).另一+ T+ W( g% z4 |& H+ l
    点,厂商一旦发布新的驱动,更新的话就要重新修改.
    & ]- i- M7 z/ q+ y4 w! o; X8 ^& z, A1 r& U) M
    我要说的是用cdshell来虚拟软驱,完成没有软驱的情况下加载软盘中的SATA驱动的& Z* W# t8 T4 w9 d0 P
    "不可能任务".cdshell是一个光盘引导管理程序,非常强大,关于它以及这个强大工" w9 q4 {1 B! t4 h. W
    具从diskemu -> Boot Scripter ->CDShell的演化历程,请至www.cdshell.org+ O- g% s) ?0 h3 }
    * T4 W3 b' w( ?, M0 T- v
    大致介绍一下cdshell:
    / D. a3 G& Y# C4 W, a7 t  e7 Vcdshell的引导程序loader.bin被写在光盘的eltorito引导区,然后它会加载cdshell+ m0 ]0 B3 K% h* C2 O- K
    的主程序并加载各功能模块(其中就包括之前bart所作的著名的把软盘模拟发展到极# g1 X% v7 a# O3 ~# `* Z# m4 [8 f
    致的diskemu).然后它可以引导光盘上的软盘镜像(通过diskemu或是另一个组件memd
    + L$ ~* u$ b1 Y, O% c  @isk)/另一个光盘引导记录/另外一个光盘iso(2.0.13b之后),并且提供了一个很强大9 x4 k* ^; H6 Z7 j6 y
    的脚本系统,可以实现用户交互(2.0.15b之后甚至可以用鼠标了).常见的N合一启动  |5 Z5 O$ F5 r9 x7 [
    盘基本就是用它或其前身来完成的.
    ( o/ T1 Y4 q: H1 I* A5 \( \8 p) p' N1 ^  i) P3 ]6 ]
    在2.0.12b中cdshell加入了一个非常有用的功能:它的diskemu组件现在可以只加载! [* Z" A6 n: X! i6 a. e
    软盘镜像,而不启动它,在这之后我们可以再启动一个光盘镜像.这就是我们要的功能!
    ( [( h5 g) R+ P. X  L6 @5 P8 @/ M* r- w* c3 C$ v
    比如启动一个软盘镜像的命令行是这样的:
    % ~* S6 H- S0 Y6 M- D5 |$ ]4 {diskemu imgfile.img6 u! G' l* @- j& O2 V% S- D
    启动一个光盘引导记录的命令行是这样的:" g9 X# b0 T0 E; c2 ]. F% v
    chain cdrecord.ert3 M# A3 J' b8 l5 q% l
    先虚拟软盘再启动光盘引导记录的命令行就是这样:) ^' G/ H! P4 o, R3 L& V: H' b
    diskemu imgfile.img noboot
    * }5 @- M; Y( q$ G7 D4 Uchain cdrecord.ert$ s7 {2 _6 {5 w7 y

    / Y7 v; J) x# O$ J* g0 T. I: ]就这么简单,具体步骤如下:. y( E; h8 V8 j% u( s* _& l, T
    ( r$ t; K& [; _/ ^1 Z
    这里使用cdimage来创建可启动镜像,也可以使用mkisofs代替.
    9 J" T7 E) U  ?3 n
    ' y$ y3 I8 I: j' E) Z$ {: L# f& }1:把XP安装文件拷到D:\temp\XPins(这个你随意)下8 x% V: A2 r7 k
    2:把cdshell的bin包里的boot目录整个拷贝到D:\temp\XPins
    " Z$ f% ]. Z, P3:把D:\temp\XPins\boot下的loader.bin移到D:\temp& }3 t+ F9 w+ b6 ^1 M5 g
    4:准备你要用的SATA驱动的软盘镜像(可以使用WinImage创建),放在boot下
    - w  ]; \/ R# R4 L8 ~6 U5:按需修改cdshell.ini这个脚本文件,有兴趣的话,看一下cdshell的说明,看看哪些组件3 |$ s  d% \% n, {& R' P! j: r' r
    是你要的,不用的可以删除,脚本可以参照下面的范例6 _  J! ~: [( o" [* o8 h
    6:把cdimage.exe放到D:\temp\,运行下面的命令创建镜像
    * a& L& e* A" Q/ L# Q8 Scdimage -lXPinsSATA -h -n -bloader.bin D:\temp\XPins D:\temp\XP.iso
    # o- n# i1 D* ]5 j! d7:burn it, have fun!
    1 A  o5 o& B: s  Z- }1 a0 A5 n, _. C
    我的cdshell.ini:' H7 S- }* z7 H0 H" M( |4 s+ I
    ###########################################################################% ^5 u7 O+ A. y! @8 z& }. y1 M( Z
    start:
    7 p# w% l& M6 ]set c_1 = $textColor #get the default color  O# D* Z+ P* e. o/ B( I
    here1 @7 Q" _4 E( P$ g' r3 U3 Z
    set c_2 = color[brightblue on black]6 N# O# X' ~2 t# g4 Z3 e- O
    set c_3 = color[brightgreen on black]
    ( O4 ^( O) z  N/ Z0 Eset c_4 = color[brightred on black]
    7 d/ X9 ?2 E! a3 |6 D2 ^set c_5 = color[white on black]) F( c0 P' S0 v. [3 O9 K$ h
    ) C- I7 W$ n" k7 z7 D
    cls
    4 l) e0 }4 H% s7 dprint c "\nJimmyZ`s XP install with RAID floppy emulation Disk Version
    ) z% M9 z$ b- y2 B- C\c($c_3)Aug 4th,2004\c($c_1)\n"
    & f" l: r# N9 ]' Sprint r "\c($c_5)Powered by CDshell.org\c($c_1)"5 ]/ k) x' R' I8 v3 j9 @
    print "\n"  x. w2 p6 w0 ]0 l9 F
    print l "\t\c($c_2)1\c($c_1). Boot Extreme Pure MS-DOS 7.10 (for bios
    ) b3 i6 Y% P0 D/ B9 d! tflasher etc)\n"* y( Q0 G; {/ L: E- E4 C; [' h
    print l "\t\c($c_2)2\c($c_1). Boot Standard MS-DOS 7.10\n"% C4 |; k% s+ ]
    print l "\t\c($c_2)3\c($c_1). Boot Super MS-DOS 7.10 by Wengier\n"5 ?* B% A) I5 _* J# r8 i
    print l "\t\c($c_2)4\c($c_1). Boot Standard PC-DOS 7.10\n"
    . t# F" B9 @) L% `$ f, iprint l "\t\c($c_2)5\c($c_1). Boot tom`s rtbt-2.0.103.Eltorito Edition5 @- J: H% p4 u, [( c" H2 P3 `2 F& \
    (Linux 2.2.10)\n"' K& @1 n' A4 ~
    print l "\t\c($c_2)6\c($c_1). Boot Windows XP VLK SP1 ENG setup\n"5 Z" D8 P' ?8 ?8 u$ ]
    print l "\t\c($c_2)7\c($c_1). Boot Windows XP VLK SP1 ENG setup with VIA
    - V% C! n$ z7 t8 B" m7 H' SRAID floppy emulation\n"; m$ P. ~! q1 @9 e: ^) m; q3 R
    print l "\t\c($c_2)8\c($c_1). Boot Windows XP VLK SP1 ENG setup with Intel# X* c! i/ D0 C; |- i* s
    RAID floppy emulation\n\n"
    * Z" S9 [5 ?4 D8 n* d1 j# P0 ]( oprint c "\"\c($c_4)F\c($c_1)\" boot Floppy, \"\c($c_4)Esc\c($c_1)\" boot
    8 I1 }  ?3 D5 u& v1st HDD\n\n"" M/ h! U0 R7 s
    print r "\"\c($c_4)C\c($c_1)\" to CD-Shell Command Prompt"2 p: x) _; v, c# D+ Y
    print r "\n.ini written by JimmyZ: \c($c_5)sorceress_92@hotmail.com\c($c_1)"
    $ v; V# R+ Y8 t! h; D% a6 f. E0 Z, Y: A' _4 I! ]' M( l, @  ^
    mainkey:
    8 v' j1 O7 D4 L* O- g: |getkey 30 set lastKey = key[esc]' W& _3 ]4 e6 }4 [$ v
    if $lastKey == key[1];then goto ms710cln+ W) {' m) z! s7 T/ {% t) _# u
    if $lastKey == key[2];then goto ms710std" ^9 n; ^8 e: U8 x
    if $lastKey == key[3];then goto ms710spr, F& k( W; i1 L# ^- Z2 S
    if $lastKey == key[4];then goto pc710+ b1 S/ l! b. r7 d% C9 k+ ^) F9 y# c
    if $lastKey == key[5];then goto toms- m, }5 R7 u# ~1 [( I8 j
    if $lastKey == key[6];then goto xpins
    0 T- B6 W- A! u# o0 L  cif $lastKey == key[7];then goto xpinsvia& D! P6 q; h7 s$ U7 E; t: g
    if $lastKey == key[8];then goto xpinsintel
    ! b$ B' P, g4 h6 e  w' C7 Q. l, X9 @if $lastKey == key[f];then goto floppy  c# \" j+ t- M+ s6 Q  G0 _
    if $lastKey == key[esc];then goto hdd07 n  z& x/ b4 d1 K
    if $lastKey == key[c];then goto exit4 u$ q" \- ]4 U+ s
    goto mainkey
    5 @: N' x- h+ t$ G9 \4 q. b9 J6 N9 ^% l1 _
    ms710cln:
    " a. P2 B1 ~' y6 s+ J5 b; ]" m9 r- acls
    ! Y4 [! M* r: N* hdiskemu images\MS710CLN.IMG# O0 z" n/ T# [+ D
    getkey
    ; C& J3 B8 h" l# B" ygoto start
    2 y# K' K! ^$ S6 h+ c6 w' n
      p3 i: U- d# hms710std:( y9 Q! w6 J$ g3 a- ^) a, `
    cls0 P- p8 O( f% n5 L; V% R
    diskemu images\MS710STD.IMG
    . S1 O  {; L; t# r+ N$ `$ N2 N5 agetkey
    $ N! s& I. ]) q$ L  Jgoto start
    , y  X' B' }9 Q( C/ O" b% [0 _; ~8 D. g5 V( _2 _
    ms710spr:- j3 m' ^; M& T) J* I: |/ O
    cls5 ]5 Z, o& ]  N5 [, Y- E
    diskemu images\MS710SPR.IMG
    3 V3 S3 i' u( }3 C! Vgetkey
    2 M; @2 L! j' M* V5 Z! F/ Egoto start
    ' n0 A2 ^: Q+ ?7 `& i: @- @
    2 W* I4 m7 Q1 @7 j0 t" {' {pc710:
    8 z8 A9 w$ N$ J; j0 S6 m. {cls
    ' V+ P/ O6 Q; ?2 t! z$ Ydiskemu images\PCDOS710.IMG" L2 z! g- Z' T2 a
    getkey# N4 E, E1 a" E) T5 G1 R! Y
    goto start- ]& f% k  o4 @$ Y1 \! k

    ) J5 M8 `% s/ j* P0 U( y% Ntoms:. ^" E) }+ ^, ?) m1 q
    cls9 Z- Q7 S5 a* o8 I+ m. u: w
    diskemu images\tomsrtbt.img
    5 d, w' B1 l# f* M. _getkey
    . \4 Z) v- c" G2 Z2 `% {* Ugoto start% S! ?( m9 v! e/ s" U) W$ U0 {- E

    3 p: d' p& v# F( \% u2 u. s7 h* lxpins:
    7 D0 n" b7 r1 ^; S: Ccls
      f$ z6 L  r) z8 M! \; mchain images\MSXPVLK1.etr& J. [7 A2 e, @: L
    getkey- I6 _, S1 F  g9 e
    goto start
    2 ~) R4 i4 B: a2 O8 n3 v. R- |* F! l6 m2 q
    xpinsvia:  t3 Z; f5 [" @  b
    cls9 ?' j1 {3 h9 z& b7 }
    diskemu images\viaRAID.IMA noboot
    4 b7 z5 X' X3 Qchain images\MSXPVLK1.etr! B) S* _4 G# Z6 B+ o* G
    getkey* E* D/ k4 ]7 b: x% S
    goto start3 {- o, W) l5 _% Y2 @
    ( G$ f6 j0 u9 h$ n
    xpinsintel:
    - d% r4 j! \( D8 W0 Ocls1 L, G0 h) k. R
    diskemu images\intRAID.IMA noboot
    , p# k+ F. @) ]/ y$ C, fchain images\MSXPVLK1.etr
    " d; Y) b" R- A. p2 G# x5 @getkey5 H, v& x# |  @# F' G' K2 S! w
    goto start$ Z& ]5 z; y, u2 b6 \$ A. a* U

    ' `  O, d) o7 R( {% T/ S, Wfloppy:6 r( q- x& a% V! K/ j- i7 b4 v
    cls7 d8 I4 U; A! w& G4 |; s
    boot 0x00
    4 g1 \& [5 [. v& t( w$ Rgetkey
    4 w: H# n2 n/ ~4 O1 Fgoto start
    9 B5 G! F8 i$ @, i( A+ ^  j& H( m+ |% F; D
    hdd0:& z) j5 V* B  g0 d/ N8 @) y
    cls2 s6 L+ A3 H7 H1 }# {" y
    boot 0x802 x' R3 o# ^3 [; K# y( O  U3 P
    getkey3 W& D. A, c+ ~
    goto start
    % z' ^3 {; j  U4 g. ^0 I% @4 @7 W  n& ?" z% c
    exit:7 c  B" m  M2 V6 E$ w0 b
    cls
    6 M2 g1 ^4 s' a4 @7 Khelp: I; Z, n: w# U: m9 u4 ~5 p
    end1 r7 D7 t4 F% Z
    ###########################################################################2 k: v: a8 x6 c
    ( h+ Z! e8 R, c$ D
    我做这个的主要原因是想装的新机器想用SATA的硬盘也不想装软驱,所以做了这个,己
    ! ?: K! y  U3 ]: o% D8 [% a经试验过XP安装程序的确可以正常加载虚拟软驱中的驱动.如果大家觉得这个方法带) I0 R/ C* G% O
    来方便,不胜荣幸.* j5 v6 z6 I" x6 O: U0 n

    6 d4 G* _& p+ _6 i1 y; K2 d2 k7 l9 r$ |: \$ m
    JimmyZ于2004.08.04晨+ V% f& I' r7 X/ e5 [

    9 e! e" L. e; R& W; K3 U# ^- z. d9 e
    感谢Gary Tong和Bart Lagerweij的堪称伟大的diskemu,感谢Michael K. Ter Louw的
    ' }0 d7 l6 {. T1 ^* R更加好用更加完善的cdshell4 C: o+ x0 }' k5 r9 Q
    --/ ]9 j# o9 O# e9 t$ X0 r
    Fake Wings
    6 B7 l/ j7 ?# G& Ashine , bright morning light , now in the air the spring is coming. x* s( S' }3 j" D7 I+ Z( }
    sweet blowing wind , singing down the hills and valleys
    / W1 \0 ^9 B$ a, Z- `, g( c0 rkeep your eyes on me , now we`re on the edge of hell- a8 n, T0 e# y0 Q
    dear my love , sweet morning light
    9 V6 G/ l1 @1 ywait for me you`ve gone much farther , too far' \- |! x* t' e+ b
    ※ 修改:·JimmyZ 於 08月04日02:03:07 修改本文·
    3 ^7 b& ?8 D) p. G※ 来源:·瀚海星云 bbs.ustc.edu.cn·
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏 分享分享 顶 踩
  • TA的每日心情
    奋斗
    前天 09:20
  • 签到天数: 2383 天

    [LV.Master]伴坛终老

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

    本版积分规则

    关闭

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

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