web-dev-qa-db-ja.com

80トラック1ヘッドFATフォーマットの360Kディスクイメージを作成するにはどうすればよいですか?

フロッピーディスクイメージファイルを、(エミュレートされた)3.5 "80トラック9セクター/トラック片面フロッピードライブで読み取り可能な形式でフォーマットする必要があります。

mformatでは、ディスクイメージを指定する方法がわかりません。オプション -i <disk image> ::は機能しませんでした(とにかくマニュアルにはそのように記載されていません)。マニュアルにはオプション-Cディスクイメージを作成しますが、その使用方法は作成しません。これが、マニュアルページでのWordの「イメージ」についての唯一の言及です。

mkfs.fat頭の数を指定することはできません。

どうすればそのような画像を作成できますか?

2
Pedro Gimeno

mtools コマンドセットのデフォルト設定は /etc/mtools.conf であり、~/.mtoolsrcでオーバーライドするか、MTOOLSRC環境変数をエクスポートすることでオーバーライドできます。構成ファイルを指す:

構成ファイルの場所
/etc/mtools.confはシステム全体の構成ファイルであり、~/.mtoolsrcはユーザーのプライベート構成ファイルです。環境変数MTOOLSRCが設定されている場合、その内容が3番目の構成ファイルのファイル名として使用されます。これらの構成ファイルには、次の項目が記述されています

したがって、空のファイルを準備して、そのファイルを設定するだけです。ルートアクセスは必要ありません(少なくともDebian 10のmtoolsバージョン4.0.23-1を試してみる場合)。

画像のサイズ:80 * 1 * 9 * 512 = 368640

Ddの使用:

dd if=/dev/zero of=/tmp/floppy.img bs=368640 count=1

(これも機能します:dd if=/dev/zero of=/tmp/floppy.img seek=368639 count=1 bs=1

$ file /tmp/floppy.img 
/tmp/floppy.img: data

フロッピーA:の場所を上書きします:次のエントリでファイル~/.mtoolsrcを作成または編集します:

drive a: file="/tmp/floppy.img"

[〜#〜] update [〜#〜]:OPは、これをMakefileで使用できるようにする必要があります。この場合、~/.mtoolsrcを使用するよりも、上記のコンテンツ(必要に応じて動的に作成することもできます)を含む関連する構成ファイルを指すようにMTOOLSRC変数をエクスポートする方が適しています。

フォーマット:

$ mformat -t 80 -h 1 -n 9 a:

チェック結果:

$ file /tmp/floppy.img 
/tmp/floppy.img: DOS/MBR boot sector, code offset 0x3c+2, OEM-ID "MTOO4023", sectors/cluster 2, root entries 112, sectors 720 (volumes <=32 MB), Media descriptor 0xf8, sectors/FAT 2, sectors/track 9, heads 1, serial number 0x6649c47, unlabeled, FAT (12 bit)

# mount -o loop /tmp/floppy.img /mnt
#
3
A.B