• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MS-DOSのイニシャルプログラムローダについて)

MS-DOSのイニシャルプログラムローダについて

このQ&Aのポイント
  • MS-DOS(Ver7.1)のイニシャルプログラムローダを解析すると、割り込み1EHの設定を変更していることが分かります。
  • イニシャルプログラムローダは、BIOSから制御が移された直後に実行されます。
  • イニシャルプログラムローダは、INT 1Eに対する割り込みベクタテーブルをスタックに保存し、新たなポインタを設定します。また、ディスクのトラックあたりのセクタ数を上書きし、特定の即値を格納します。

質問者が選んだベストアンサー

  • ベストアンサー
  • yotta
  • ベストアンサー率32% (26/79)
回答No.1

INT 1Eh は割り込み処理アドレスではなく フロッピーディスクパラメータアドレスです 内容は全て byte で下記の通りです オフセット  内容  00h  bit 7-4:ステップレート       bit 3-0:ヘッドアンロード時間  01h  bit 7-1:ヘッドロード時間       bit 0 :DMAを使わない  02h  モータ回転停止までの待ち時間(Tick単位)  03h  セクタ長(00h:128バイト 01h:256バイト 02h:512バイト 03h:1024バイト)  04h  トラックあたりのセクタ数  05h  セクタ間のギャップ長  06h  データ長  07h  フォーマット時のギャップ長  08h  フォーマットデータ  09h  ヘッドセトリング時間(ミリ秒単位)  0Ah  モータ回転開始時間(1/8秒単位) なお INT 1Dh は ビデオパラメータテーブルアドレス INT 1Fh は 8x8ドットグラフィックフォントテーブルアドレス となっています

zabuzaburo
質問者

お礼

ありがとうございます!なんで割り込みジャンプ先なのに命令列になっていないのだろう?とずっと悩んでおりました。ディスクのパラメータだったんですね。私は全くの趣味で解析をしているのですが、AT互換機の仕様が分からないせいで何日も進まないことがあり、本当に助かりました。