ザビタン開発日記
2009
| 01
10月 31 (水曜日) 2007 | ||
16:17
|
FDアクセス:FDCレジスタ
|
|
大マヌケをこいてしまったが、な〜に!いつものことさ! orz
●コマンド発行前待ち io_in8(0x03f4) & 0x11 の値が0になるのを待ちます 0x11すなわち00010001bによる摘出。bit0とbit4摘出ね。 ・ドライブ#0が非動作中(bit0) ・FDCがidle-Phaseである(bit4) ふむ!納得! 理屈どおりだよね? (・・・でも、bit6やbit7は関係ないのかな???) ●コマンド[08]発行前待ち io_in8(0x03f4) & 0x10 の値が0になるのを待ちます 0x10すなわち00010000bによる摘出。bit4のみかぁ・・・ ・FDCがidle-Phaseである(bit4) ん?っていうことは、仮にドライブ#0が動作中であってもいい。 もしくはどっちでもいいということかな??? ●個々のコマンド送信前待ち io_in8(0x03f4) & 0xc0 が 0x80 になるのを待つ 0xc0すなわち11000000bによる摘出。bit7とbit6ね。 さらにこれらが0x80なんだから10000000b。bit7が1で、かつ、bit6が0だと。 ・データレジスタの準備ができている。いつでも来い!(bit7) ・書き込み待ちの状態(bit6) ・・・なっるほどぉ・・・。bit7やbit6はさっきは無視されたんじゃ なくて、個別に別々に検査されるわけね。 ●個々のリザルトの受信待ち io_in8(0x03f4) & 0xc0 が 0xc0 になるのを待つ 0xc0すなわち11000000bによる摘出。bit7とbit6ね。 さらにこれらが0xc0なんだから11000000b。bit7、bit6共に1でいてほしいと。 ・データレジスタの準備ができている。いつでも来い!(bit7) ・読まれ待ちの状態(bit6) おおおおお!! なるほど! なんか理屈通りだ! よく解る! ・・・あれ? でも、ちょっと疑問があるなぁ。 リザルト受信を開始する前のチェックというか・・・「コマンド発行前待ち」みたいなチェックってないのかなぁ??? たとえばだけど、 ●リザルト発行前待ち io_in8(0x03f4) & 0x11 の値が0x10になるのを待ちます 0x11すなわち00010001bによる摘出。bit0とbit4摘出ね。 ・ドライブ#0が非動作中(bit0) ・・・これはいらないかな? ・FDCがidle-Phase以外(Result-Phase)である(bit4) とか・・・・ |
||
(1) 2 3 4 5 6 7 8 9 10 »  |
PopnupBlog V3 Denali created by Bluemoon inc. |