FrontPage
New
Index
SignIn
Edit
PC-98x1/disk/int 1Bh,AH=0Eh
no archive mode
[[PC-98x1]]/[[disk|PC-98x1/disk]]/int 1Bh,AH=0Eh まとまらないメモ。 !!! 動作内容 テクニカルリファレンス(BIOS 編)上に説明がほとんど存在しない。((br)) というか DISK BIOS の章にある「●2.5インチ内蔵固定ディスク」の項にある "" 従来(SASI)20M バイト固定ディスクにあった,厚型/薄型のインターフェース(MODE SET コマンド)もサポートする. というのがおそらくこれに関する唯一の記述。おわかり頂けるだろうか、肝心の MODE SET コマンドに関する記述は一切ないんですよ…。 undoc1 によると、SASI/IDE のモード設定を行う、らしい…。 *int 1Bh, AH=8Eh, AL=DA/UA:薄型モードに設定 *int 1Bh, AH=0Eh, AL=DA/UA:厚型モードに設定 設定を行うと、システム共通域内にあるフラグが変更される。undoc2:memsys.txt 参照。 |||DA/UA | フラグ || 80h | 0000:0481h bit0 || 81h | 0000:0481h bit1 || 82h | 0000:0590h bit0 || 83h | 0000:0590h bit1 手持ちの実機(PC-9821Xc)で実行してみたが、int 1Bh, AH=8Eh を呼び出すと、対応する DA/UA のフラグが 0 になった。 AH=0Eh だと 1 になった。 つまり AH の bit7 と逆になる。 ちなみに呼び出し前の 0000:0481 bit1-0 は 11、0000:0590 bit1-0 は 00 だった。 なお、システム共通域(0000:0400〜0000:05FF)のメモリ内容はこのフラグ以外なにも変わらなかった。 ちなみに「EPSON PCシステムガイド」には載っていた。AH の bit7が「0:標準モード 1:拡張モード」となっている。bit6〜4はdon't care。 ただし標準モードと拡張モードの違いに関しては、20MBハードディスクのヘッド値(標準で8、拡張で4)以外の説明がない。 なお純粋なSASIインターフェースのBIOSの場合、DISK_PRM0<tt>(0000:05E8)</tt>とDISK_PRM1<tt>(0000:05EC)</tt>に設定されるディスクパラメータ(を指すポインタ)が変わる場合があるようだ…(変わらない場合もある。というか20Mバイトの場合以外は変わらない気もする…) !!! 厚型と薄型の違い 正直よくわからん…テクニカルリファレンスの固定ディスク BIOS コマンドの説明を読むと 20M ディスクのシリンダ/ヘッド番号に薄型と厚型両方の数字が載っている。 一例として AH=06h (READ DATA) のレジスタ説明… ||| レジスタ | 説明 || AL | DA/UA (80h〜81h) || BX | データの長さ((br))256×n:PC-9801-27((br))512×n:XL/XA内蔵インターフェース || CX | シリンダ番号 || DH | ヘッド番号 || DL | セクタ番号 || ES:BP | バッファ先頭アドレス で、シリンダ番号とヘッド番号の範囲… ||| ディスク容量 | シリンダ | ヘッド || 5M | 0〜152 | 0〜3 || 10M | 0〜309 | 0〜3 || 20M(厚型)| 0〜307 | 0〜7 || 20M(薄型)| 0〜614 | 0〜3 || 40M | 0〜614 | 0〜7 MS-DOS の HDD (SASI/IDE) 用 IPL には int 1Bh, AH=8Eh を呼び出すコードが含まれている(disktut 参照)。 ためしに実機で int 1Bh, AH=0Eh/8Eh を呼び出さずにディスクアクセスを行おうとすると BIOS はエラーを返した。 エラーコードは 40h:Equipment Check、つまり BIOS 的には未サポートユニット扱いとなる。 ハードディスクを BIOS 的に叩き起こす意味でも重要な BIOS コマンドではある。 新SENSE さえもサポートされてないクソ古い SASI(あるいは最初期の98NOTE)あたりだとパラメータ変更に意味があるような気もするが… !!! めも * http://www.pc88.gr.jp/forum/viewtopic.php?p=2229 ((br))20M HDの場合、薄型/厚型切り替えても常に4ヘッド扱いとのこと…
Attachment
New: