2016年06月19日作成 2020年2月14日更新

FDIMG.EXE

FLOPPY DISK IMAGE FILE READER / WRITER

フロッピーディスクを読んでD88形式のディスクイメージを作ったり、D88形式のディスクイメージをフロッピーディスクに書き込みます。

フロッピーディスクドライブの指定には、「ドライブレター」ではなく「ドライブ番号」 (0-3) を使用します。

LSI C-86 Ver.3.30 試食版でコンパイルできるソースコード付き。

「PC-9800シリーズ テクニカルデータブック」を見ながら書きました。

ダウンロード

FDIMG.EXEは CC0 パブリック・ドメイン提供です。

2016年5月18日 佐藤恭一 http://kyoutan.jpn.org

使い方

FDIMG <読み取り元> <書き込み先> [-2D]

ドライブ0のフロッピーの読み出し

FDIMG 0 filename.d88

ドライブ0のフロッピーへ書き出し

FDIMG filename.d88 0

動作環境

NEC PC-9800シリース / EPSON PC-シリーズのMS-DOS上で動作します。

1MB / 640KB 両用フロッピーディスク BIOSコマンドを使用しています。VM以降くらいの機種ならきっと動きます。

外付けドライブの場合、ソフトウェアで記録密度の変更ができない場合があって、FM と MFM が混在しているディスクを正常に読み書きできなかったりします。PC-98の DISK BASIC のフロッピーディスクは先頭トラックのみ FM ですがこういうディスクは先頭トラックが欠落したディスクイメージになってしまいます。内蔵ドライブだと正常に読み書きできました。

その他

フロッピーディスクからD88イメージを作成する時、トラックごとにフォーマットを調べて、IDの並び順やセクタのエラー情報の保存をします。

2HDのディスクを読み取るのに10分位かかります。

2HD と 2DD は自動判別します。2D の読み取りの場合はコマンドラインオプションで "-2D" を指定します。

PC-9801上で動作しますが、PC-9801のフロッピーディスクだけではなく PC-8801 や FM-7 / 77 や X1 や X68000 など、汎用のフロッピーディスクコントローラーでアクセスできるフロッピーディスクであれば読み書きできます。

以下余談

トラックにIDが見つからない時と、セクタリードでエラーが発生したときにエラーメッセージを表示しますが、エラー情報を D88ファイルに記録して処理を続行します。

DRIVE 2 のフロッピーディスクを読み取っています ... 2HD
  C  H  R  N
  4  1  -  -  ID READ ERROR        9 / 163 track

こういうの。

弱いコピープロテクトなら、プロテクトが掛かったまま記録して再現できる場合がありますが、たいていは無理です。

通常使用しない大きいトラックまで読み取りを試みるので、大きなトラック番号でエラーが出ますが、これは異常ではありません。

DRIVE 2 のフロッピーディスクを読み取っています ... 2HD
  C  H  R  N
 77  0  -  -  ID READ ERROR      154 / 163 track
 77  1  -  -  ID READ ERROR      155 / 163 track
 78  0  -  -  ID READ ERROR      156 / 163 track
 78  1  -  -  ID READ ERROR      157 / 163 track
 79  0  -  -  ID READ ERROR      158 / 163 track
 79  1  -  -  ID READ ERROR      159 / 163 track
 80  0  -  -  ID READ ERROR      160 / 163 track
 80  1  -  -  ID READ ERROR      161 / 163 track
 81  0  -  -  ID READ ERROR      162 / 163 track
 81  1  -  -  ID READ ERROR      163 / 163 track

こういうのは異常ではない。


webmaster@kyoutan.jpn.org

('A`)