SAVEROM2ユーティリティを使用したROM抽出
(FM77AV20/20EX/40/40EX/40SX・XM7 V1/V2/V3対応)

はじめに

XM7 V2を動かすにはFM77AV/AV20/AV20EXのROMデータが、XM7 V3を動かすにはFM77AV40/AV40EX/AV40SXのROMデータが必要ですが、このいずれかの機種のうち、2DDドライブ非採用の初代FM77AVを除く各機種を用いてROMセーブを行う専用ツールを作成しました。このツールの使用法を説明します。
(専用ツール「SAVEROM2」はXM7 V3.1L30、XM7 TypeR V2.9L77SX+z01以降のアーカイブに含まれています。)

以下の環境が必要になります。

ブートフロッピー作成

(1)3.5インチ2DD・720KBフォーマット済みのフロッピーを1枚用意します。
(2)MS-DOSプロンプト(コマンドプロンプト)を開き、SAVEROM2.COMを使用してフロッピーへ書き込みます。コマンドラインにはフロッピードライブのドライブレターを指定します。SAVEROM2.COMは16ビットコードで書かれているので、64ビット版OSの場合、武田氏作のMS-DOS Playerが必要です。

実行

上で作成したディスクはFM77AV20/20EX/40/40EX/40SXでブートできます。

ブートすると自動でROMセーブを開始します。終了メッセージが表示されると完了です。

取り出し

セーブ後のディスクは720KB MS-DOSフォーマットになっているので、直接エクスプローラ等でアクセスできます。含まれているファイルを全てコピーして完了です。

ディスクには以下のファイルが作成されます。
ファイル名ファイルサイズ内容配置空間配置アドレスV1V2V3
FBASIC30.ROM
31,744 bytes
F-BASIC V3.0, F-BIOSメイン$38000-$3FBFF
BOOT_BAS.ROM
512 bytes
ブートROM (BASICモード)メイン$3FE00-$3FFFF
BOOT_DOS.ROM
512 bytes
ブートROM (DOSモード)メイン$3FE00-$3FFFF
SUBSYS_C.ROM
10,240 bytes
8x8フォント、サブモニタROM (タイプC)サブ$1D800-$1FFFF
KANJI1.ROM
131,072 bytes
JIS83準拠第1水準漢字・非漢字I/O4バイトI/O経由
KANJI2.ROM
131,072 bytes
JIS83準拠第2水準漢字I/O4バイトI/O経由
DICROM.ROM
262,144 bytes
漢字変換辞書メイン$2E000-$2EFFF
INITIATE.ROM
8,192 bytes
FM77AVイニシエータメイン$36000-$37FFF
SUBSYS_A.ROM
8,192 bytes
サブモニタROM3 (タイプA)サブ$1E000-$1FFFF
SUBSYS_B.ROM
8,192 bytes
サブモニタROM3 (タイプB)サブ$1E000-$1FFFF
SUBSYSCG.ROM
8,192 bytes
キャラクタROM, サブモニタROM1/2 (4バンク)サブ$1D800-$1DFFF
EXTSUB.ROM
49,152 bytes
拡張サブモニタROM (タイプD,E)メイン$2E000-$2EFFF
BOOT_MMR.ROM
512 bytes
隠しブートROMメイン$2EE00-$2EFFF

FM77AV40からROMデータを吸い出した場合、実機に拡張サブモニタROMが搭載されていないため、そのままではXM7pure V3を起動できません(XM7 TypeRは起動可能です)。MKEXTSUB.exeを使用してFM77AV40専用版のF-BASIC V3.4L20のディスクイメージから拡張サブモニタROM相当のデータ(EXTSUB.ROM)を抽出する必要があります。
(MKEXTSUB.exeはXM7本体のアーカイブには含まれないので、別途ダウンロードする必要があります。)

XM7のページへ
ryu.takegami@mbg.nifty.com.