98マニアックス 掲示板
[20516]
ATA133 BOOT BIOS

kyto026n012.ppp.infoweb.ne.jp

 
大熊猫 さん
と、何番煎じか良く分かりませんがさっき成功して、眠れそうにありません。
各種パラメータ(UA/DA、CHS、IOアドレス等など)はとりあえず決め撃ちし
割り込みを使わないPIO転送で、INT 1BをフックするのみでWindows98SEの
インストールおよびブートに成功しました。(ファンクションは4 5 6のみ実装)

 機種: PC9821V7 S7KA(G8UYC)
  内蔵IDE:プライマリ・マスタ WD Cavier 21700(IPLのみで領域確保せず)
 PCI スロット#1: MILLENIUM VRAM4M版
 PCI スロット#2: 玄人志向ATA133RAID(SiI680)
  プライマリ・マスタ Seagate ST33210A(Aドライブのみ)

 また、CMDのレファレンスドライバは問題なく組み込めたようで、
デバイスマネージャからも接続別表示でHDDが上記ボードに
ぶら下がっているのが確認でき、MS-DOS互換アクセスではなくなりました。
速度などは計測していませんが・・・。
ドライブは当該ドライブのみ見えています。
 なお、RAID/IDEのジャンパはRAIDにしてあります。
そうでないと、クラスコードに応じてROMアドレスから連続して
「広大な」メモリ空間が割り当てられます。(DC00からいっぱい)
 しかしともかく、検証もまだまだ不十分で、課題も山積みといった様相で、
実用には程遠いように感じています。
1. Reply: ATA133 BOOT BIOS

ntoska020120.oska.nt.isdn.ppp.infoweb.ne.jp

 
まりも さん
>IPLのみで領域確保せず
これを置いているということは、ATA133RAIDの BIOS ROMそのものを書き換えたのではなく、IPLwareとして、INT 1Bhフックするプログラムを組み込んで実現した、ということでしょうか。
2. Reply: ATA133 BOOT BIOS

kyto029n009.ppp.infoweb.ne.jp

 
大熊猫 さん
まりもさん、こんばんは。
BIOSはFLASH ROMに書きこんでおります。
IPLのみが残っているというのは、もともと内蔵IDE接続の
HDDに作業用として、DOSの領域を残してあったからです。
しかし、Win98SEのインストール中に
「SETUPX.DLLが見つかりません」という
エラーが出たので、調べてみるとその作業用のDOSのドライブに
テンポラリファイルが出来ていて、そこでこけていることが
判明したので、テンポラリファイルも同じATA133RAID接続の
HDDに作らせるように仕向けるため、DOS領域を開放した結果、
IPLのみが残ったということです。

 あと、追加ですがレファレンスドライバには、
接続および動作状況を表示するプログラムがついていて、
ATA133RAID接続の3.2GBのHDDに関してはUDMA mode2で
動作していることが確認できました。
松下寿の8倍速CD-ROMをつないでみると
WDMA mode1で動作していると表示されます。
ともかくも、パラメータを一般化して、
もっと色々試してみたいところです。
3. Reply: ATA133 BOOT BIOS

jit.jalinfotec.co.jp

 
かねやす さん
最近のドライバはWin9x系でもint 13h要求しないのですね、なるほど。
ところで、パラメータってどこに記録予定でいます? 僕は安易にSCSIのパラメータ領域を
#7から逆向きに埋めていったんですが(超手抜)、本当はバンクRAMに置くべきなのかな?
4. Reply: ATA133 BOOT BIOS

kyto026n010.ppp.infoweb.ne.jp

 
大熊猫 さん
かねやすさん、こんにちは。

> 最近のドライバはWin9x系でもint 13h要求しないのですね、なるほど。
ATA100も最近のものという認識でいましたが・・・(^_^;
はっと気づくと結構時代が流れているように感じます。
ところで、体験したことがないので教えていただきたいのですが、
int 13h要求があると、どのような現象が見られるのでしょうか?
よろしくお願いします。

> ところで、パラメータってどこに記録予定でいます?
拡張ROM空間に持ち込むつもりでいます。
そうすると、他のBIOSやドライバとバッティングしないで済み、
デコードに割かないといけないバイト数が減らせるかと思いますので。
私にとってFSやGSといった386以降のセグメントレジスタの
ありがたみが初めて分かる場面と思っています。
ただ、まだ実験していないので、どんな不具合が出るかなど
ぜんぜん予想できていないです。
5. Reply: ATA133 BOOT BIOS

kyto029n080.ppp.infoweb.ne.jp

 
大熊猫 さん
Windows2000をインストールしてみました。
Win98SEよりは垣根が低いと思っていましたが、
UIDE66などと同じくF6を押してSiI680のドライバを登録すると、
SiI680接続のHDDにSiI680接続のCDROMを用いて難なく
インストールでき、BOOTもできました。
デバイスマネージャでの動作モードの表示はそれぞれUDMA2、WDMA1と出ます。
内蔵IDE プライマリ・マスタ WD Cavier 21700 (IPLのみ)
SiI680 プライマリ・マスタ Quantum Fireball EL AT5.1
セカンダリ・マスタ 松下寿 CR583J

 FreeBSDの動作も確認したい所です。とりあえずkernuideでは認識して
くれなかった(あたりまえ)ので、作らないといけないんですね。
UNIX系OSはあまり慣れていないので、苦戦しそうな予感です。