.D88形式のフロッピーディスクイメージフォーマット
全体
項目 | サイズ |
---|---|
ヘッダ | 0x2b0 |
トラック0 | 不定 |
トラック1 | 不定 |
: | : |
- トラック数とサイズはディスクの種類によって異なる。
- トラック数 最大164
- トラックサイズは、セクタ数、セクタヘッダ、データサイズにより変動
ヘッダ
項目 | サイズ | 備考 |
---|---|---|
ディスク名 | 17 | C文字列(末尾が 0x00)最大16文字 |
予約 | 9 | |
ライトプロテクト | 1 | 0x00=なし 0x10=あり |
ディスクの種類 | 1 | 0x00=2D 0x10=2DD 0x20=2HD |
ディスクサイズ | 4 | ヘッダと全トラックの合計サイズ(リトルエンディアン) |
トラック先頭のオフセット | 4*164 | トラックのファイル先頭からのオフセット。トラック0〜163の順で、1トラック4バイト(リトルエンディアン) |
トラック
トラックに含まれるセクタを順に連結したもの。
セクタ
項目 | サイズ | 備考 |
---|---|---|
トラック(C) | 1 | 0から数える |
サイド(H) | 1 | 0=表面 1=裏面 |
セクタ(R) | 1 | 1から数える |
セクタサイズ(N) | 1 | 0=128bytes 1=256bytes 2=512bytes 3=1024bytes |
トラック中のセクタ数 | 2 | (リトルエンディアン) |
記録密度 | 1 | 0x00=倍密度 0x40=単密度 0x01=高密度 |
削除フラグ | 1 | 0x00=通常 0x10=削除 |
ステータス | 1 | 0x00=正常 |
予約 | 5 | |
このセクタのデータサイズ | 2 | (リトルエンディアン) |
データ | 不定 | サイズはセクタサイズ分 |
例:標準的な2Dフォーマットの場合
トラック数 | サイド | セクタ数/トラック | セクタサイズ(byte) |
---|---|---|---|
40 | 2 | 16 | 256 |
ヘッダ
項目 | サイズ | 値 |
---|---|---|
ディスク名 | 17 | (任意) |
予約 | 9 | 0 |
ライトプロテクト | 1 | 0x00 |
ディスクの種類 | 1 | 0x00 |
ディスクサイズ | 2 | 348848 (= 0x2b0(ヘッダ)+40(トラック数)☓ 2(面)☓ 16(セクタ/トラック)☓ (0x10(セクタヘッダ)+ 0x100(セクタデータ)) |
トラック先頭のオフセット | 4*164 | 0x02b0,0x24b0,...(トラックごとに+0x2200 0〜39トラックまで。40トラック以降は 0) |
トラック
トラック | サイド | セクタ | オフセット | サイズ |
---|---|---|---|---|
0 | 0 | 1 | 0x02b0 | 0x110 |
0 | 0 | 2 | 0x03c0 | 0x110 |
: | : | : | : | : |
0 | 0 | 16 | 0x12a0 | 0x110 |
0 | 1 | 1 | 0x13b0 | 0x110 |
: | : | : | : | : |
0 | 1 | 16 | 0x23a0 | 0x110 |
1 | 0 | 1 | 0x24b0 | 0x110 |
: | : | : | : | : |
39 | 1 | 16 | 0x551a0 | 0x110 |
セクタ
項目 | サイズ | 値 |
---|---|---|
トラック | 1 | 0〜39 |
サイド | 1 | 0 or 1 |
セクタ | 1 | 1〜16 |
セクタサイズ | 1 | 1 |
トラック中のセクタ数 | 2 | 16 |
記録密度 | 1 | 0x00 |
削除フラグ | 1 | 0x00 |
ステータス | 1 | 0x00 |
予約 | 5 | 0 |
このセクタのデータサイズ | 2 | 256 |
データ | 256 | (実データ) |