DEEP!P6! へ戻る

「なんでもメガROM」(PC-6001用テープイメージを戦士のカートリッジで動かすツール)


概要

PC-6001用のテープイメージファイルを、「戦士のカートリッジ」と呼ばれるメガROMに載せるためのツールです。
複数のテープイメージを1本のROMにまとめられるようにしました。(2016/08/07)
ファイル一式 NandemoP6ROM.zip update!

動作環境

PC-6001mkII/SR、またはPC-6601/SR
※初代機では動作しません

ROM化できるテープイメージ

PC-6001(32KB)で動作するテープイメージ(.p6フォーマット)であること
テープリードに独自のローダーを使っていないこと(ある程度は大丈夫)

事前準備1

各テープイメージについて、ROM化するための設定ファイルを作成します。
添付の ys2op.txt などを参考に、「動作させるモードとページ」、さらに「起動時に実行させたいコマンド」を記述した、テキストファイルを作成してください。
基本的には、一つのテープイメージに対して一つの設定ファイルが必要です。

※注1.改行コードは必ず CR(0x0D)のみにしてください。CRLFでは正しく動作しません。
※注2.最後の行は "*" で終わらせてください。

例)モード2、ページ3、CLOAD+RUNで実行させたい場合の設定ファイルは以下のようになります(改行コードはCRに変更してください)
2
3
CLOAD
RUN
*

事前準備2

複数のテープイメージを1本のROMにするための、メニュー用リストファイルを作成します。
添付の romlist.txt を参考に、「メニューのタイトル」「ROM化するイメージファイル」「設定ファイル」「メニュー表示文字列」を記述したテキストファイルを作成してください。


例1) という場合、リストファイルは以下のようになります。
#メニューのタイトル
5,1,PC-6001 TAPE GAME LIST

#イメージのリスト
ys2op.p6,ys2op.txt,イース2 オープニング
ys3op.p6,ys3op.txt,イース3 オープニング
ys2ed.p6,ys2ed.txt,イース2 エンディング

実行画面



例2) という場合、リストファイルは以下のようになります。
#タイトルの代わりに'autostart'と記述
autostart

#イメージのリスト(メニュー表示文字列は必要ない)
ys2op.p6,ys2op.txt

※注1.先頭が#の行、または空行は、コメントとして無視されます。
※注2.リストは16個まで対応していますが、画面表示は途中で切られます。数自体は全然増やせますが、とりあえず。

ROMファイルの作成

コマンドプロンプトで、"NandemoP6ROM [メニュー用リストファイル] [作成するROMファイル]" を実行してください。

例)romlist.txt というリストファイルに従って tapegame.rom という名前のROMファイルを作成する

実行方法

※エミュレーター(PC6001VW)のみで確認しています。
ファイルメニューの「拡張ROM」→「挿入」で、作成したROMファイルを選択します。
ROMタイプは「戦士のMEGA-ROM」で、ポートは「0x70」にしてください。

最後に

技術的には大したことはやっていなくて、起動時にBIOSを裏RAMにコピーして、 0x1A70からのテープリードBIOSを書き換え、ROMから読むように変更しているだけです。
そのため、mkII専用ソフトなど、RAMを64KB使うものは動きません。タイニーゼビウスmkIIもスペハリも動きません。
また、0x1A70を素直に使っていない独自ローダーのソフト(ロードランナーとか)も動きません。
ただ、お気軽にROM化できるのはメリットかなーと思います。

このツールをベースに、新ベルーガカートリッジに対応したり、mkII用のソフトを無理やり動かしたり、 きちんとしたGUIツールとして作りたいなーとは思っているのですが、いつになるやら…。

バグやご意見ご希望等あれば twitter までお気軽にどうぞ(^_^)


TINY野郎 @tiny_yarou