本ページは公開が終了したページの複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[MSC]_bios_disk で使われる定数の意味( DOS/V )

文書番号: 401871

最終更新日: 2004/03/16


この資料は以下の製品について記述したものです。


概要

この資料は DOS/V マシンのランタイムライブラリ関数 _bios_disk で使用されている 定数の意味について説明したものです。

詳細

_bios_disk の引数 service には, 次の定数のうちの 1 つを設定してディスク操作を指定します。

_DISK_FORMAT

指定したトラックをフォーマットします。_diskinfo_t 型構造体の drive、head、track フィールドでトラックを示します。1 回の呼び出しでフォーマットできるのは1 トラックのみです。buffer フィールドにはセクタマーカーを設定しておきます。マーカーは、ディスクドライブのタイプによって異なります。この定数を指定したとき、戻り値はありません。

_DISK_READ

指定したセクタからデータをメモリに読み込みます。_diskinfo_t 型構造体のすべてのフィールドを使います。正常終了すると戻り値の上位バイトに 0、下位バイトに読み込んだセクタ数を返します。エラーが発生すると、_DISK_STATUS を指定した場合と同じステータス情報を上位バイトに返します。

_DISK_RESET

ディスクコントローラをハードリセットし、フロッピーディスクの入出力に備えます。この定数は、読み取りなど他の操作中にエラーが発生したときに役立ちます。
<diskinfo> 引数は無視されます。

_DISK_STATUS

直前に行ったディスク操作のステータスを得ます。<diskinfo> 引数は無視されます。戻り値の上位バイトに、次のようなステータス情報を返します。
                    値      意味
               ===================================================
                    0x00**  エラーなし
                    0x01**  リクエストまたはコマンドが不正
                    0x02**  アドレスマークが見つからない
                    0x04**  セクタが見つからない
                    0x05**  リセットできない
                    0x07**  ドライブのパラメータ作業ができない
                    0x09**  DMA オーバーラン
                    0x0A**  不正セクタフラグ検知
                    0x10**  データ読み取り (ECC) エラー
                    0x11**  訂正済みデータ読み取り (ECC) エラー
                    0x20**  コントローラ故障
                    0x40**  シークエラー
                    0x80**  ディスクタイムアウト
                            またはディスクが応答しない
                    0xAA**  ドライブの準備ができていない
                    0xBB**  定義外のエラー
                    0xCC**  ドライブの書き込みエラー
                    0xE0**  ステータスエラー

_DISK_VERIFY

ディスクをチェックして、指定したセクタが存在し、読み取れるかどうか確認します。また CRC テストを実行します。_diskinfo_t 型構造体の、buffer を除くすべてのフィールドを使います。正常終了すると戻り値の上位バイトに 0, 下位バイトにベリファイしたセクタ数を返します。エラーが発生すると、_DISK_STATUS を指定した場合と同じステータス情報を上位バイトに返します。

_DISK_WRITE

メモリからデータを読み出してセクタに書き込みます。_diskinfo_t 型構造体のすべてのフィールドを使います。正常終了すると戻り値の上位バイトに 0、下位バイトに書き込んだセクタ数を返します。エラーが発生すると、_DISK_STATUS を指定した場合と同じステータス情報を上位バイトに返します。
_bios_disk は DISK BIOS ( INT 13H )に制御を渡しています。詳細な動作については、市販の BIOS 関係の書籍などを参照 してください。

詳細

  • Visual C++ は、米国 Microsoft Corporation の商標です。

Keywords: C7 KBINFO KB401871
Technology: kbAudDeveloper kbCCompPDS600DOS kbCCompSearch kbVCsearch kbZNotKeyword3 kbZNotKeyword8

inserted by FC2 system