MiSTer FPGA向けニンテンドーDSコアが突如公開! 100パーセントFPGAでゲーム画面まで到達するも、現状は2Dのみ

MiSTer FPGA向けニンテンドーDSコアが突如公開! 100パーセントFPGAでゲーム画面まで到達するも、現状は2Dのみ

MiSTer FPGAでニンテンドーDSが動く――そんな日が、いよいよ近づいてきたのかもしれません。

MiSTer FPGA向けニンテンドーDSコア「Nitro_DarkSide」の初となるアルファ版が、2026年8月10日に公開されました。今回のバージョンは完成版ではなく、実際にゲームを遊ぶにはまだ多くの制限が残されています。しかし、ニンテンドーDSの2D機能やサウンドをFPGA側だけで実装し、市販ゲームのゲーム内画面まで到達しているところが大きな注目ポイントです。

●Nitro_DarkSide In-Game Preview
https://github.com/MiSTfits-devel/DarkReleases/releases/tag/v1-alpha

現在公開されているのは「100パーセントFPGA」の2D版

Redditでは「Hybrid Nintendo DS Core」という見出しで紹介されていますが、今回公開されたコア自体はハイブリッド方式ではありません。

●Preview Hybrid Nintendo DS Core Available(Reddit)
https://www.reddit.com/r/MiSTerFPGA/comments/1vkg1r9/preview_hybrid_nintendo_ds_core_available/

配布ページには「NDS FPGA core(100% FPGA no ARM)」と書かれており、DE10-Nanoに搭載されたARMプロセッサーには処理を担当させず、現在実装されている部分はFPGAだけで動作しています。

対応範囲はニンテンドーDSの2D機能が中心ですが、オーディオもすでに実装されています。ニンテンドーDSにはARM9とARM7というふたつのCPUが搭載されていますが、開発者が公開している技術資料によると、これらのCPUや2D描画エンジン、メモリー周辺の機能もRTLで再構築されているとのことです。

開発にはHaskellの構文を利用するハードウェア記述言語「Clash」が使われています。一般的なMiSTer FPGAコアとは異なる開発手法が採用されている点も、本プロジェクトの興味深いところです。

●Nitro_DarkSide 技術解説
https://darkside.heni.lol/

『星のカービィ 参上!ドロッチェ団』はゲーム内まで起動

気になるのは、現在どこまでゲームが動くのかという点です。

開発者の説明では、『星のカービィ 参上!ドロッチェ団』と自作Homebrewがゲーム内まで起動することを確認しています。一方で、『ポケットモンスター』はメニュー画面で使用されている3D処理が複雑で、現段階では初期化を完了できないとしています。

また、ROMイメージ内のカートリッジデータにアクセスする処理が十分に速くなく、CPUがクラッシュしたり、多くのゲームが途中で停止したりする問題も残されています。そのため、配布ページでも現在の状態は「Not playable, but in-game」、つまりゲーム内画面には到達するものの、まだ普通に遊べる段階ではないと説明されています。

通常のファームウェア起動も安定しておらず、現時点ではHLEを利用したDirect Bootがデフォルトになっています。公開されたファイル名も「NDS_snd_20260809.rbf」で、完成版ではなく開発途中の動作確認用ビルドと考えた方がよさそうです。

3D機能はARMを利用したハイブリッド方式で追加予定

今回のコアで最も気になるのが、まだ実装されていない3D機能です。

開発者によると、ニンテンドーDSの3D機能まで純粋なFPGA実装で収めることは難しく、3Dだけでシステムのほかの部分に匹敵するほどのFPGAリソースを必要とするそうです。

そこで今後は、FPGA側で受け取ったニンテンドーDSの3DコマンドやデータをDE10-NanoのARM側へ送り、専用レンダラーで処理した結果をFPGA側へ戻す方式が計画されています。Redditで使われている「Hybrid」という表現は、この将来計画を指したものです。

MiSTer FPGAでは近年、FPGAとARMを組み合わせたハイブリッドコアが登場しています。Nitro_DarkSideも同様の仕組みを利用することで、FPGA単独では収まりきらないニンテンドーDSの3D処理を実現しようとしています。

ただし、このハイブリッド3D機能は今回配布されたRBFには含まれていません。現在動作しているのは、あくまで純FPGAで実装された2D部分です。

●Nintendo DS Core(MiSTer FPGA Forum)
https://misterfpga.org/viewtopic.php?p=111669#p111669

動作には実機から吸い出したファームウェアとBIOSが必要

Nitro_DarkSideには、ニンテンドーDSのファームウェアやBIOSは同梱されていません。動作させるには、利用者が所有するニンテンドーDSまたはニンテンドーDS Liteから、以下のファイルを用意する必要があります。

  • boot0.rom:ニンテンドーDS/DS Liteのファームウェア
  • boot1.rom:ARM7 BIOS
  • boot2.rom:ARM9 BIOS

これらはMiSTerの「/media/fat/games/NDS/」フォルダーに配置します。ゲームのROMイメージについても、利用者自身が所有するソフトから用意する必要があります。

現時点ではMiSTerの公式コアやUpdate_all経由で導入できるコアではなく、GitHubで公開されたRBFを手動で導入する実験的なプレビュー版です。

ソースコードは現時点では非公開

もうひとつ注意しておきたいのが、現在公開されているのはコンパイル済みのRBFだけで、コアのソースコードは公開されていないことです。

開発チームは、MiSTerの既存GPLコードを使用せず、HaskellとClashでクリーンルーム方式のフレームワークを再実装したと説明しています。しかし、ソースコードがないため、その内容を第三者が確認できる状態にはなっていません。

GitHubのリポジトリも公開されたばかりで、詳しい互換性リストやタッチ操作、2画面の表示方法などについても十分な情報は出ていません。未検証のRBFでもあるため、現段階では導入を積極的に推奨するというより、今後の進展を見守るための技術プレビューとして捉えるのがよさそうです。

ニンテンドーDSのFPGA実装は以前にも存在

ニンテンドーDSをFPGAで再現する試み自体は、今回が初めてではありません。

2020年には、FPGAzumSpassことRobert Peip氏がニンテンドーDSのFPGA実装を進め、『逆転検事』を起動する映像も公開していました。当時もMiSTer FPGAへの展開が期待されましたが、その後は目立った進展が見られなくなっていました。

今回のNitro_DarkSideはそれとは異なる新しいプロジェクトです。純FPGAで2D部分を動かしつつ、FPGAに収まりきらない3D機能をARMへ分担させるという新たなアプローチで、ニンテンドーDSコアの実現を目指しています。

●Nintendo DS FPGA Core(RetroRGB/2020年)
https://retrorgb.com/nintendo-ds-fpga-core.html

まだ遊べない。それでも今後が気になるコア

現時点のNitro_DarkSideは、対応ゲームを快適に遊べる完成済みのニンテンドーDSコアではありません。3D機能がなく、カートリッジアクセスや安定性にも大きな課題が残されています。

それでも、MiSTer FPGAでは実現が難しいと考えられてきたニンテンドーDSを、純FPGAの2D実装でゲーム内画面まで動かしたことには大きな意味があります。さらに、将来的にはARM側のレンダラーを組み合わせて3D対応を目指すという、MiSTer FPGAの使い方そのものを広げるような計画も示されています。

果たしてMiSTer FPGAでニンテンドーDSのゲームを普通に遊べる日はやってくるのでしょうか。まずは3D機能の実装と、カートリッジアクセスの改善が今後の大きな注目点になりそうです。

via.Reddit

ABOUT US
アバター画像
retrogamer