とるて
- 2010/01/04(月) 2:29 -
長文ですみません。
ここのTipsに実機を用いて、
1.ブランクディスクを用意し、F-BASICのシステムディスク内の「SYSDSK」でフォーマットをする。
2.システムディスク内の「VOLCOPY」、または「C-DOS7」のBUBRFコマンドで、フォーマットしたディスクに「M-DOS7」の内容をコピーする。
3.コピーしたディスクを「DITT」でイメージ化する。
とありますが、実機が物置の奥で取り出せる状況ではないのでFDのイメージ化は
断念していましたが、整理も兼ねて何とかならないかと思案し、実FDにエラーが
ないことを前提にPC-98からMAKE_HD(v0.12)で無理やり作成したD77イメージ(1枚
あたり5,264,048バイト)を基にWindows上で不要な部分を取り除き通常フォーマット
になるようなセクタ情報を与えてD77イメージを再生成したところ、普通に認識(ブート)
できるようになりました。
私の調べ方が悪かったのか、そのようなことをするツールが見当たらなかったので
作ってみました。(VB2008Exp .NET 2.0 @ Win7で作成)
再生成後は1枚あたり348,848バイトの通常サイズのD77になります。
コンソールアプリです。
M-DOS7_Trim 入力ファイル 出力ファイル
で生成されます。
注意事項
複数枚合成のD77には対応していません。
256バイト分のセクタデータのCRCチェックは特にしていないので読み込み時に本当
にCRCエラーが発生していた場合でも区別がつきません。入力元のD77にはセクタ
データ直下の2バイトのCRCも都合上、イメージ化されていますがデータ化けして
いないといいきれないためです。
M-DOS7で2DDはありえないため、元のD77が2DDとなっていても2Dに強制的に変更
します。
DITTを使ってイメージの生成を行っていないので、どのような結果になるのかは
不明です。

- 〜添付ファイル〜
- ■filename :
- M-DOS7_Trim(7).zip
- ■size :
- 5.9KB
Laver@管理人
- 2010/01/05(火) 22:29 -
▼とるてさん:
これは便利そうなプログラムですね。
実機でコピーする必要がないのは楽です。
こちらのページでも紹介させていただきますね。
http://retropc.net/fm-7/emulator/utilities.html
ただ私は9801の環境がないので、使えないのが残念です。
DITTで吸い出したM-DOS7のイメージに対して実行してみましたが、
強制終了となってしまいました。
DITTだとD77ファイルのサイズは1,331,888バイトになっていますね。
とるて
- 2010/01/11(月) 20:21 -
▼Laver@管理人さん:
AT互換機でDOS+3モードFDDドライブ付環境を作るのが、少々やっかいだったので今回はDITTでの検証はしませんでしたが、時間があるときに検討してみたいと思います。
とるて
- 2010/01/14(木) 22:29 -
▼Laver@管理人さん:
なんとかWin9x系のDOS環境を作りDITTでM-DOS7のイメージを作成してみたところ1,331,984になっていました。
Ditt! 1.50の内容を見る限り1トラック16セクタ存在しているところまでは読み取れ
ていますが、いずれのトラックも先頭の4セクタのみ各セクタを4096バイト読み込ん
でCRCエラーを吐き出しています(この状態はμPD765系では当然の結果です)。
残りの12セクタは0バイトとなっていますのでイメージ化されていない状態です。
ビットずれさえなければ4セクタも読み込めていれば1トラック分のデータが取得でき
ていることになるのですが、私のところの環境ではセクタごとに数ビット単位でずれ
まくっていますのでデータとしての信頼性は皆無でした(ビットずれまで考えた補正は
さすがに考えていません)。
なのでDITTからM-DOS7のFDをイメージ化するのは不可能ということになります。
VB.NET環境で直接FDCを操作できれば、イメージ化の作成も考えなくもないのですが…
Laver@管理人
- 2010/01/15(金) 23:03 -
▼とるてさん:
>なのでDITTからM-DOS7のFDをイメージ化するのは不可能ということになります。
残念ですが、仕方ないですね…。
一見F-BASICのディスクと変わらないようなフォーマットなだけに、
イメージ化できないのはもどかしさがありますね。