SuperStation OneでMSX2専用のゲームを起動する
SuperStation Oneが届いてからというものほぼ毎日あれやこれやといじり倒しているb-snowです。
さて、SuperStation OneはMiSTer FPGAの互換機ということでプレステだけで無く色々なゲームの起動ができます。なのでせっかくなら個人的に大好きなMSXとMSX2のゲームを起動してみようと思い立ち、やり方を調査したところ、VHD(仮想ハードディスク)を作ってそこにSofaRunというソフトを入れれば起動するらしいという情報が!
早速やってみて確かに起動は出来たものの…毎回起動が面倒だし正直それじゃ無い感が拭えず何とかならないか再調査、MSX1については別記事でも書いたように直起動できましたが、MSX2は動作範囲外で結局途方に暮れる羽目に。
往生際悪くそれでも何とか他のコアと同様に別ソフトを介さず起動ができないものかとあれやこれやと調べたり試行錯誤した結果、どうにかMSX2も起動できましたのでその手順を紹介します。
1.作業前準備
事前準備として今回、Pythonを使用するのでインストールが必要になります。下記サイトに入りダウンロードしてインストールして下さい。インストール方法は他の方もたくさん紹介されてますのでこちらでは割愛いたします。
今回の肝となるMSX2起動に必要なファイルを以下のサイトから取得します。
サイトを開いたら必要ファイルを取得していきます


2.MSX2起動用のBIOSファイル作成作業
解凍したフォルダ内のtools\CreateMSXpack\Computer\C-BIOSの下にあるMSX2 - C-BIOS.xmlを任意のテキストエディタで開きます。

14行目の<memory SHA1="f929bd1d720b0ef7092c9add8accd0d56fc9c8a3" filename = "cbios_main_msx2.rom">ROM</memory>の部分を以下のように<memory SHA1="47cc280f0d8b0611fdb1069e6fd7b854cae93546" filename = "cbios_main_msx2_jp.rom">ROM</memory>に書き換えて保存します。

もし正規のMSXのBIOSを吸い出しされている場合はtools\CreateMSXpack\Computerの下に各機種のフォルダがありますので吸い出したBIOSの機種のxmlを探してテキストエディタで開いてください。
例としてPanasonic_FS-A1.xmlを開くと14、28、33、38行目にBIOSや内臓ソフト名が記載されているので吸出ししてあるBIOSファイルをその名前にリネームしてください。

リネームしたBIOSファイルはtools\CreateMSXpack\ROMの下に該当のフォルダを作成して格納してください。

続けてコマンドプロンプトを起動し、tools\CreateMSXpackのフォルダまで移動しpython3 createComp.pyと打って実行してください。

色々出てきますがコマンドが返ってきたら続けてpython3 createDev.pyと打って実行します。

実行が完了するとtools\CreateMSXpack\MSXに下記のようにCART_FW_JP.msx、CART_FW_EN.msxと各機種ごとのフォルダ内に拡張子msxのBIOSファイルが出来ていることを確認します。


3.SuperStation Oneへのインストール
先ほど作成したBIOSファイルを取得します。今回はC-BIOSを使うため、MSX2 - C-BIOS.msxとCART_FW_JP.msxを取得しておいてください。また、tools\CreateCRCにあるvampier.dbやreleasesフォルダにあるコアファイルMSX1_20250730.rbfも必要になりますので取得しておきます。


今度はいよいよSuperStation OneのSDカードをPCにつなげてファイルを配置していきます。
⚠️注意⚠️
Load Gameからの起動の場合は通常のMSX1コア(MSX1_20250108)にしたい場合はMSX1_20250730.rbfの先頭にアンダーバーを入れるなりしてリネームしておきましょう。


cartridgesフォルダを作成して起動したいゲームのROMを格納しておきます
以上で配置は終了!
4.SuperStation OneでのMSX2のゲーム起動
SuperStation Oneを起動したらLoad CoreからMSX1_20250730を選択して起動してください。起動後メニューを表示すると以下の3つの選択箇所がありますので、それぞれ先ほど配置したファイルを設定してください。

Load ROM PACK *.MSX→MSX2 - C-BIOS.msx
Load FW PACK *.MSX→CART_FW_JP.msx
Load DB MAPPERS *.DB→vampier.db
その後、Load *.ROMで遊びたいゲームのROMを選択するとゲームが起動します。
ZOIDSはMSX2専用のゲームですが無事起動出来ました!

悪魔城ドラキュラも起動! したのですが…



なんとしばらくすると画面がバグるようになりました。ゴエモンとかも試しましたが同様の症状になり、どうもコナミ系は挙動が怪しい…(ZOIDSとかハイドライド3はしばらくしてもバグりませんでした)
どうやらBIOSがC-BIOS以外の正規のもの(HB-F5など)なら正常に動くらしいです。
なお、今回のMSXコアは副産物(?)として、エミュレータ泣かせの「はーりぃふぉっくす 雪の魔王」の起動も対応しているようですが、C-BIOSでは正常に起動せず…こちらも正規のBIOSなら起動する気がします。
5.あとがき
本当に情報が少なくて苦労しました。MSX2をMiSTerでやるのはそんなにニッチなことだったのかと…おとなしくblueMSXとかでやれということなのかな。兎にも角にも一応MSX2も動作してよかった…
ただ、こちらのコア自体まだ開発途上のものなので完全ではなさそうなのが残念ですが、コナミ系以外は普通に遊べたのでSofaRunを使わずにMSX2も他のコア同様にプレイできるのは大きな一歩と言えるかなと思います。今後開発が進展することを期待してます。
