[20482]
NECCDM.SYS を Secondary-Slave に対応させる試み
投稿者:K.Takata さん
2002-12-03 01:35:54
NECCDM.SYS をセカンダリ・スレーブに対応させるべく、色々と試してみました。
結果として、Ls150 でセカンダリ・スレーブ接続の SD-R2212 が NECCDM.SYS で使えました。
F8E8:0010 には、IDE 機器の接続状態を示すフラグがあるのですが、ドライブをセカンダリ・スレーブにすると、このフラグが正しく設定されないことがあるというのが主な原因だったようです。フラグは、
bit0: Primary-Master
bit1: Primary-Slave
bit2: Secondary-Master
bit3: Secondary-Slave
となっているので、HDD を Primary-Master につなぎ、CD-ROM を Secondary-Slave につないだ場合、F8E8:0010 の値は 9 になるのが正しいはずですが、Ls150 の場合は 5 になってしまいました。
Win95 OSR2 の neccdm.sys の場合は、F8E8:0010 の bit2 が ON のときも Secondary-Slave を見に行くようにしたところ、無事動作しました。
一方、Win98, Win98SE の neccdm.sys は、ノートの場合には Secondary-Slave をチェックしないようになっていたので、その部分も合わせて変更する必要がありました。
-
K.Takata さん
2002-12-03 01:42:14
実際のパッチは以下のようになりました。
neccdm.sys (Win98, Win98SE)
00003823: 02 → 04 ・・・(b)
000038A2: 08 → 04 ・・・(a)
neccdm.sys (Win95 OSR2)
000040E1: 08 → 04 ・・・(a)
(a) が F8E8:0010 の bit2 が ON のときも Secondary-Slave を見に行くようにするためのパッチ、(b) がノートでも Secondary-Slave をチェックするようにするためのパッチです。
-
K.Takata さん
2002-12-03 01:54:22
Ls150 の場合はこれでうまくいったのですが、Ra20 の Secondary-Slave に CD-ROM ドライブをつないだときはこれではダメでした。起動時のメモリチェックの後1分ほど待たされたあげく BIOS ではドライブが認識できなかったようで、bit2, bit3 の両方が OFF になってしまい (a) のパッチも無力でした。
そこで、代わりにちょっとしたプログラムを書いて F8E8:0010 の値を無理やり正しい値に書き換えてみたところ、(a) のパッチを当てていないオリジナルの neccdm.sys で、Secondary-Slave に接続したドライブが認識されました。Ls150 でもこの方法が使えましたが (b) のパッチは必須でした。
-
K.Takata さん
2002-12-04 23:50:38
ということで、NECCDM.SYS を Secondary-Slave に対応させるためのソフトを公開しました。
http://member.nifty.ne.jp/k-takata/mysoft/ideflags.html
-
K.Takata さん
2002-12-05 00:01:26
なお、このソフトを作るに当たって、まりもさんの以下のページを大いに参考にさせていただきました。ありがとうございます。
http://homepage1.nifty.com/marimono/software/pmc9821.html
-
まりも さん
2002-12-05 07:35:33
RvII26/RsII26のチップセットに関しても追加しておきますか(^^;
-
K.Takata さん
2002-12-05 20:20:24
ついでにチップセットの VendorID などを載せていただけるとありがたいです。
# 果たして IDEflags は山猫機でちゃんと動くのだろうか?
-
まりも さん
2002-12-10 08:29:34
RvII26の Vendor IDは 1166h, Device IDは 0005hです。とりあえず。
-
K.Takata さん
2002-12-10 12:49:45
どうもありがとうございます。
# しかし、動作報告が1件も無いというのは・・・。公開する意味はあったのだろうか。
-
K.Takata さん
2002-12-10 20:20:21
IDEflags が Cx3 で動作したという報告がありました。よかったよかった。