光線銃もマウスで対応。『MiSTer FPGA』NESコアの実力をチェック

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

レトロな家庭用ゲーム機にレトロPC、往年のアーケードゲームを、FPGAで再現するオープンソースのプロジェクト『MiSTer FPGA』。それぞれの機種に合わせて、様々なコアがリリースされていますが、何はともあれまずはファミコンからということで、NESコアの動作を確認してみることにしました。

まず始めにやらなければいけないのが、コントローラーの設定です。使用したのは『マイクロソフト ゲームコントローラー 』です。いわゆる、XBOX Oneと同じヤツですね。無線でも利用出来るほか、有線でPCに繋ぐこともできる優れものです。

・・・・・・が、今回使ってて思ったのが、思いのほか十字キーの作りがしょぼいところでした。最近はメインの操作で使う機会は少なくなってきたので、気が付かなかったのですが。そのため、キーの割当はアナログのほうにしたほうがいいかもしれません。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

コントローラーを『MiSTer』に登録

何はともあれ、刺しただけではコントローラーは使うことができません。基本的に、それぞれのコアごとに設定していく必要があります。まず、『MiSTer FPGA』を起動したら、F12キーを押してメニューを呼び出しましょう。その中から「Define joystick buttons」を選択します。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

「DPAD test:Press RIGHT」と表示されていますが、これはDPAD(十字キー)の右キーを押せという意味です。この次が若干怪しいですが、「Stick 1 Test: Tilt RIGHT」は左側アナログキーの右を、「Stick 1 Test: Tilt DOWN」は左側アナログキーの下を、「Stick 2 Test: Tilt RIGHT」は右側アナログキーの右を、「Stick 2 Test: Tilt DOWN」は右側アナログキーの下をそれぞれ押しておきました。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

続いて、見たままのボタン配置が点滅していますので、それに合わせてボタンを押していきます。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

ひととおり押したら、「Press: Mouse Move RIGHT」と出ますが、マウスを繋いでもイマイチ上手くいかなかったので、とりあえずここでエンターキーを押して終わらせます。

続いてNESコアを呼び出してF12キーを押し、メニューを表示させます。右キーを押してページを切り替え、「Define NES buttons」を選択します。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

先ほどと同様にキーを押していくのですが、こちらでは「Press:RIGHT」で左アナログキーの右を押します。同様に、左、下、上を押した後、AボタンをBボタンも押していきましょう。ひとつ注意が必要なのは、『マイクロソフト ゲームコントローラー』に書かれているA、Bボタンとファミコンのボタン配置が逆になっているというところです。そのため、「Press:A」ではBボタンを、「Press:B」ではAボタンを押すことになります。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

さらにセレクトとスタートを選んだ後、ディスクシステム用の「FDS」ボタンを割り当てます。とりあえずここは、XBOXのロゴマークのところを割り当ててみました。さらに、Mic(マイク)とZapper(光線銃)のボタンも設定できます。この後は特に必要はなさそうなので、エンターキーを押して終わらせます。

設定が終わったら、忘れずに「Save settings」を選んで保存しておきましょう。このコントローラーの設定に関しては、まだまだ知識が浅く怪しい部分があるので、後ほどアップデートしていく可能性もあります。コントローラーが上手く反応しないときは、「Swap Joysticks」の項目が「No」になっているか、確認してみてください。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

ゲームROMの読み込み

『MiSTer FPGA』のNESコアに対応しているROMは、iNESまたはNES2.0ヘッダーの情報が書き込まれたもののみとなっています。特に古いROMデータなどでは、こうした情報が無い場合があるので、修正が必要になります。NES2.0のほうが、より精度の高い実行ができるとのこと。

ちなみに、下記のサイトでドラッグ&ドロップすることで、NES2.0のヘッダー情報が追加できるようなので、もし動かないゲームがある場合は1度試してみるのもいいかもしれません。

●Attach headers
http://nes.dnsabr.com/process

ゲームのROMデータ自体はSDカード上のgames\NESフォルダに入れておけばOKです。あとは、『MiSTer FPGA』のNESコアのメニューから「Load *.NES,FDS,NSF」を選び、ROMデータを指定するとゲームが起動します。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

ゲームを起動したら、F12キーでメニューを呼び出し設定を変更することが可能です。

Aspect Ration:デフォルトでは4:3の画面比率ですが、16:9に変更することもできます
Scandoubler fx:いわゆる昔のブラウン管風に走査線を追加できる機能です
Hide Overscan:実際のブラウン管テレビでは上下が切れて見えます。そのため、余計なノイズが表示される場合がありますが、こちらをONにすることでそれに近いものになります。
Extra Sprites:ファミコンは通常8個までしかスプライトを表示することができず、横に5個以上並ぶとちらつきが発生します。こちらのONにすることで、スプライトの数を増やしてちらつきを抑えることができます。ほとんどの場合は問題ありませんが、一部グリッチが発生する可能性もあります。
Palette:色味を様々なプリセットに変更できる機能です。デフォルトは「Smooth」ですが、エミュレーター風の色合いやモノクロなども設定できます。
Zapper Trigger:光線銃を使うゲームで、代わりにマウスを使用することができます。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

対応しているマッパー

現在対応しているマッパーは下記の通りですが、マッパー4(MMC3)など一部上手く動かないものもあるようです。※線が入っているものは非対応。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

互換機で問題がありそうなタイトルを中心に動作をチェック

というわけで、互換機で上手く動かないと言われることが多いタイトルを中心に、動作をチェックしてみました。1度動かなかった場合でも、先ほどのヘッダー情報なども影響しているため、必ずしも『MiSTer FPGA』が対応していないわけではなく、ROMのデータ自体が不完全な場合があります。そのため、各種のROMチェッカー等でしっかりと確認をしたほうがいいでしょう。

大きな不具合は見つからなかったタイトル

・アフターバーナーII
・ディグダグⅡ
・デジタル・デビル物語 女神転生II
・ドラゴンクエスト1
・ドラゴンクエスト3
・えりかとさとるの夢冒険
・ギミック!
・ゴルフッ子オープン
・グラディウスII
・ラグランジュポイント
・マッピーキッズ
・メタルマックス
・メタルスレイダーグローリー
・魍魎戦記MADARA
・闘将!!拉麺男 炸裂超人一〇二芸
・ローリングサンダー
・役満天国
・天下一武士 ケルナグール
・ツインビー
・宇宙警備隊SDF
・妖怪道中記
・BANANA
・影の伝説

やや怪しいところはあるものの許容範囲

・燃えろプロ野球:ボイスはなし。BGMがややもたつく
・悪魔城伝説:タイトル画面で上部文字化け

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

動作に問題があるタイトル

『ファミリーボクシング』と『ファミリーテニス』は、マッパー4で対応していると思われるのですが、どうも上手く動かないようです。こちらはヘッダーの情報なども何度も見直したものの状況は変わらなかったので、今後の対応待ちといったところかもしれません。

・ファミリーボクシング:背景が出ない(MMC3 マッパー4)
・ファミリーテニス:背景がバグる(MMC3 マッパー4)

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック
光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

光線銃のゲームはマウスで遊べる!

ついでに光線銃のタイトル『ダックハント』と『ワイルドガンマン』もプレイしてみました。こちらは銃の代わりにマウスを接続して使い、ポインターを動かして撃っていくのですが、これがなかなか難しい! しかし、簡易的ながらこうして光線銃のゲームが遊べるのは嬉しいですね。

ディスクシステムの拡張音源にも対応

『ファミリーコンピュータ ディスクシステム』(FDS)ことディスクシステムには、「RP2C33」と呼ばれる周波数変調可能な波形メモリ音源が搭載されていました。そのため、『ゼルダの伝説』のオープニング曲など、後にファミコンで発売されたものとは微妙に音の聞こえ方が違います。『MiSTer FPGA』のNESコアでは、そちらにもしっかりと対応しています。

しかし、NESコアでは自動でディスクを入れ替える仕組みになっているため、先ほどの『ゼルダ』の音源を聴く前にB面に移ってしまいます。それを制御したい場合は、コントローラー1に設定した「FDS」ボタンを押したままの状態にする必要があります。

ちなみにディスクシステムのゲームを遊ぶ場合は、あらかじめBIOSファイルを「boot0.rom」という名称でROMフォルダの中に入れておく必要があります。

セーブデータの扱いはややめんどう?

ファミコンゲームのバッテリーバックアップRAMは、ディスクに自動では書き込まれません。ゲームをロードするときに、メニューから「Load Backup RAM」を選択する必要があります。また、ゲームを保存した後には、同じくメニューから「Save Backup RAM」を選択してRAMの内容をSDカードに書き込んでおく必要があります。

このあたりは正直使いにくいポイントなので、今後改善してほしいですね。

光線銃もマウスで対応。『MiSTer』NESコアの実力をチェック

MiSTer FPGAのNESコアでサポートされている機能

・ほとんどのゲームのセーブをサポート
・NTSC、PAL、およびDendyシステムタイプをサポート
・拡張オーディオによるファミコンディスクシステムをサポート
・複数のパレットオプション
・ザッパー、パワーパッド、マイク、ミラクルピアノのサポート
・4人のプレーヤーをサポート
・1行あたりのスプライトを8ずつ増やす設定
・最大32のチートコードをサポート
・NSFプレーヤーをサポート
・VRC6&7、MMC5、Namco 163、Sunsoft 5bなどのマッパーからの拡張オーディオをサポート
・VRC1-7、MMC0-5など、多くの一般的なマッパーをサポート
・『ゼルダの伝説』や『Rockman Minus Infinity』(日本の方によって改造されたバージョンのRockman 4 MIのことか?)などの大規模ゲームをサポート

まとめ:まだまだ完璧ではないがかゆいところには手が届いている感じ

一般的なファミコンゲームが遊べて、さらに光線銃やディスクシステムにまで対応しているなど、必要な機能はとりあえずひととおり揃っている印象です。セーブデータの扱いがめんどうだったりと、一部改善してほしいところもありますが、今後の動向にも注目していきたいですね。

●GitHub – MiSTer-devel/NES_MiSTer
https://github.com/MiSTer-devel/NES_MiSTer

ABOUT US
アバター画像
高島おしゃむ
ライター/編集者。コンピューターホビー雑誌「ログイン」の編集者を経て、1999年よりフリーに。 現在はゲームやホビー、IT、XR系のメディアを中心に、イベント取材やインタビュー、レビュー、コラム記事などを執筆しています。