電子趣味の部屋

電子系のガジェットやアプリ開発等の趣味の話題を書いてます

MSXで遊ぶ! Mega Flash ROM

2021年の最新方法はこちら
blog-e.uosoft.net


今回もMSXで遊んでみました。
書き換えできるカートリッジを作りました。
この手のものを検索すると、似非RAMディスクがよくヒットしますが、配線が多いので敬遠をしていました。
海外サイトではMegaFlashROMと言う単語がよく目に付いたので、調べてみるとこちらは配線が少なめだったので、ちょっと作ってみました。
思ったより簡単だったので、これをまた数個作ろうと思ってます。

基本的には似非RAMディスクと考え方は同じで、コナミのゲームで使われているSCCというチップのROMコントローラ機能を応用します。

Mega Flash ROMの製作

まず、参考にしたサイトの紹介です。
本家サイトに作り方が詳しく掲載されてました。また書き込みツールもこちらにあります。
http://MSX Village - Fabriquer sa Mega-Flashrom SCC
また日本語で詳しく書かれているブログがありました。
ぽんRev!! 個人的備忘録 - MSX MEGA FlashROM SCCの製作
とりあえず、上記サイトを参考にして作ってみました。
まず必要なのはフラッシュメモリICです。この改造にはAM29F040B-90PDを使います。下の番号は120PDでもかまいません。サイズは4Mbit(512KBytes)です。
既に生産終了しているみたいで、大変入手困難です。ネットで根気良く探して、やっと見つけました。そこも在庫3個ですべて買ってしまいました。
ゲームカートリッジは「激突ペナントレース」を使いました。秋葉原のレトロゲーム屋で800円くらいでした。

他に使えそうなゲームはwikiを参考にすると、
F1スピリット(MSX)
王家の谷 エルギーザの封印(MSX1)
王家の谷 エルギーザの封印(MSX2)
クォース(MSX2)
グラディウス2(MSX)
激突ペナントレース(MSX2)
激突ペナントレース2(MSX2)
ゴーファーの野望 エピソードII(MSX)
沙羅曼蛇(MSX)
スペースマンボウ(MSX2)
メタルギア2 ソリッドスネーク(MSX2版)
です。
まず基板を取り出します。ケースの爪は2,3箇所折れるでしょう。

この大きい方のICがSCCで、小さい方のICががマスクROMです。
このマスクROMを取ります。

実はこの画像は2回目です。
初めは半田を吸引機で吸い取りながら無理やり取ろうとしてしまい、パターンが剥がれたりして基板を1個無駄にしてしまいました。
2回目は大変便利な物を使いました。
はんだシュッ太郎(はんだ吸取器) HSK-100はんだシュッ太郎(はんだ吸取器) HSK-100
これを使うと画像のように非常に簡単に綺麗に半田を吸い取ることができました。
取った方のROMも綺麗な状態だったので、これからチップ取りも楽しくなりそうです。
上記サイトを参考にしながら配線して下の画像のように出来上がりました。

ケースに入れて、本家サイトにあったラベルを印刷して仕上げてみました。
ちょっとスイッチの部分の加工が雑ですが。goot(グット) ホットナイフ HOT-60R 日本製使用

基板の画像を見ればわかると思いますが、スイッチを上にするとカートリッジを停止状態にできます。

メガROMのバックアップ

必ず所有しているROMのバックアップのみに限定してください。他人からの譲渡やネットからダウンロードしたROMのイメージファイルを使用した場合は違法コピーとなります。また、MSXのROMにあるかわかりませんが、コピープロテクトがされている場合、それを解除してバックアップしても違法コピーとなります。

ツールの準備

まず専用のMSX-DOS起動ディスクを作ると便利です。
MSX-DOS起動ディスクの作り方がわからない人は手を出さない方が良いです。
ROMをバックアップしてイメージファイルを作るには、似非職人工房・非公認出張所 (似非なページ)にあるバックアップツール 95年10月30日版(bu951030.lzh:6748bytes)を入手してください。
このアーカイブの中にある"MGSAVE.COM"を使います。
作成したMega Flash ROMに書き込むには、公式サイトのhttp://MSX Village - Fabriquer sa Mega-Flashrom SCCのページの文中にOPF.zipへのリンクがあります。
このアーカイブの中にある"OPF.COM"を使います。

ここではグラディウスをバックアップしてみます。

ROMファイルの作成

ここで紹介する方法は少々強引な手法ですので、最悪の場合は本体やROMが故障してしまいます。すべて自己責任でお願います。
まず。MSX-DOSを起動します。

MSX-DOSを起動したらそのままROMをスロットに挿します。このときポーズ状態にすると良いようです。

無事にスロットに差し込むことができたらポーズを解除します。
このときに本体がフリーズしたり再起動したら失敗です。ROMを抜いてMSX-DOSの起動からやり直してください。
"MGSAVE.COM"を実行します。

MGSAVE <出力ファイル名> /S<スロット番号(数値2桁)>

ここでは出力ファイル名を"GRA.ROM"とします。

"GRA.ROM"の出力が成功しました。

Mega Flash ROMへの書き込み

一度電源を切り、Mega Flash ROMをスロットに挿してスイッチを停止状態にしてMSX-DOSを起動してください。
MSX-DOSが起動したら、スイッチを稼動状態にしてください。
"OPF.COM"コマンドを実行します。ROMバンクのタイプは自動的に判別してくれます。うまく書き込めない場合は明示的に指定してみてください。(OPFコマンドのマニュアルを参照してください。)

OPF <ROMファイル名>



書き込みが完了したら再起動してください。
無事に成功すると、ROMが起動します。

通常ROM(32KB以下)のバックアップについて

まだ試していないですが、32KB以下通常ROMは違うツールで吸い出すことができます。
パッチワーク展示館(1号館)からNSTOOL.LZHを入手してください。
アーカイブの中に"NSSAVE.COM"があります。
手順は同じで、"MGSAVE.COM"の代わりに、"NSSAVE.COM"を使用してください。
書き込みは"OPF.COM"でできます。