Analogue PocketでNokiaの『N-Gage』が動く! 対応openFPGAコアが公開

Analogue PocketでNokiaの『N-Gage』が動く! 対応openFPGAコアが公開

Nokiaが2003年に発売した携帯電話兼ゲーム機『N-Gage』のゲームを、『Analogue Pocket』で動かすためのopenFPGAコアが公開されました。

開発したのはplasticbugs氏で、2026年10月23日にはopenFPGA Libraryにバージョン1.0.0が登録されています。開発者によると、これまでに約25本のゲームを試しており、テストしたタイトルはプレイできたとのこと。ただし、すべてのゲームの動作が保証されているわけではなく、一部には互換性の問題も残されています。

なお、10月24日時点ではバージョン1.1.0も公開されており、ゲームの動作や画面表示に関する修正が行われています。

●『N-Gage』openFPGAコア(GitHub)
https://github.com/plasticbugs/n-gage

●『N-Gage』コアのリリースページ
https://github.com/plasticbugs/n-gage/releases

●ゲームデータ変換用ツール『Add N-Gage games.html』
https://github.com/plasticbugs/n-gage/releases/download/v1.1.0/Add-N-Gage-games.html

携帯電話とゲーム機を組み合わせた異色のハード『N-Gage』

『N-Gage』は、Nokiaが2003年に発売した携帯電話と携帯ゲーム機を組み合わせた製品です。携帯電話としての機能を備えながら、専用のゲームソフトを使って遊べるという、当時としてはユニークなコンセプトのハードでした。

OSには『Symbian OS 6.1』が採用されており、104MHzで動作するARM9プロセッサーや176×208ピクセルの縦長ディスプレイを搭載。ゲームの操作には方向キーや数字キーなどを利用する仕組みになっていました。

今回公開されたコアは、こうした『N-Gage』のゲーム環境を『Analogue Pocket』上で動作させるためのものです。

『Analogue Pocket』には、FPGAを利用してさまざまなゲーム機に対応できる「openFPGA」という開発環境が用意されています。開発者が公開している専用のコアを追加することで、本来は対応していないゲーム機のソフトなども動かせるようになります。

ただし、今回の『N-Gage』コアは、オリジナルのハードウェアをそのまま再現する方式ではありません。FPGA上にARM互換のCPUを実装し、独自の小さなカーネルと『N-Gage』のファームウェアを組み合わせることで、ゲームが動作する環境を構築しています。

なお、対象となっているのは2003年に登場した初代『N-Gage』のゲーム環境であり、後年展開された『N-Gage 2.0』という携帯電話向けゲームサービスとは異なります。

『Sonic N』や『Virtua Cop』などが動作! 約25本のゲームをテスト

開発者はRedditへの投稿で、2Dと3Dの両方のゲームをテストしており、『Virtua Cop』『Sonic N』『Super Monkey Ball』『SSX』などが『Analogue Pocket』上でプレイできると報告しています。

GitHubのリリースノートでも、実機で動作を確認したゲームがいくつか紹介されています。たとえば、バージョン1.0.0では『Virtua Cop』『SSX: Out of Bounds』『Puzzle Bobble VS』のプレイが確認されています。

さらに、開発途中のアルファ版では、『The Elder Scrolls Travels: Shadowkey』『The Sims Bustin’ Out』『Rayman 3』『Tony Hawk’s Pro Skater』『Ghost Recon』なども動作したと報告されています。ただし、これらの作品すべてについて、最新版で改めて動作確認が行われたわけではありません。

開発者によると、これまでに約25本のゲームを試しており、テストした作品はいずれもプレイできたとのこと。ただし、すべての『N-Gage』用ソフトを検証したわけではなく、ゲームによっては正常に起動できなかったり、処理速度や音声に問題が発生したりする可能性があります。

ちなみに、開発者はPC上の検証用環境でも54本のゲームをテストしています。このうち46本は起動ロゴを超えて一定時間、映像と音声が出ることを確認していますが、こちらは『Analogue Pocket』実機でのプレイ確認とは異なるものです。

公開後も修正が進められており、バージョン1.1.0では『Rifts: Promise of Power』でオープニングのイベント終了後に画面が真っ暗になる問題が修正されました。

導入にはBIOSとゲームデータが別途必要

今回公開された『N-Gage』コアは、GitHubのリリースページから無料でダウンロードすることができます。

導入するには、『Analogue Pocket』本体とmicroSDカードに加えて、『N-Gage』のファームウェア(BIOSに相当するデータ)とゲームデータを別途用意する必要があります。

基本的には、GitHubで配布されているコアのファイルをmicroSDカードのルートに展開し、必要なデータを指定されたフォルダーに配置する形式です。

ファームウェアには『sym.rom』というファイルを使用し、以下の場所に配置します。

Assets/ngage/common/sym.rom

ゲームデータについては、そのままコピーするのではなく、コアが読み込める『.img』形式に変換する必要があります。

この作業を簡単に行うため、開発者は『Add N-Gage games.html』という補助ツールも用意しています。WindowsやMacの『Google Chrome』『Microsoft Edge』などで開き、ゲームのファイルを読み込ませることで、必要な形式への変換やゲーム一覧への登録が行えます。

また、『Python 3』を使用した変換方法も用意されています。ただし、変換用ツールが提供されているからといって、ゲームデータそのものが付属しているわけではありません。BIOSやゲームデータは、利用者自身が適法に用意する必要があります。

なお、現在のコアで扱えるゲームデータには32MBという容量上限があり、『Glimmerati』や『Pathway to Glory』など、一部の容量が大きなゲームには対応できない制限もあります。

ちなみに、当サイトでは『Analogue Pocket』のopenFPGA環境をセットアップする基本的な方法を、以下の記事で紹介しています。初めてopenFPGAを利用する場合は、こちらも参考にしてみてください。

※上記の記事はopenFPGAの基本的な導入方法を紹介したもので、『N-Gage』コア固有のBIOSやゲームデータの準備方法は扱っていません。

画面上のキーパッドにも対応! ただし一部の機能には制限あり

『N-Gage』は携帯電話をベースにしているため、ゲームによっては数字キーなどを使用する場面があります。

そこで今回のコアには、画面上に仮想キーパッドを表示する機能が用意されています。『Analogue Pocket』の「Select」と右ショルダーボタンを同時に押すことでキーパッドを呼び出し、方向キーで選択した数字などを入力することが可能です。

また、バージョン1.1.0では、外部映像出力用アクセサリー『Analogizer』に関する機能も強化されました。CRTモニターへ出力する際の表示位置が調整されたほか、画面を90度回転させる「TATE」モードにも対応しています。

一方で、現段階ではいくつかの制限も残されています。ゲームによっては実機よりも動作速度が遅くなる場合があるほか、Bluetoothを利用したマルチプレイやスリープなどには対応していません。

セーブ機能についても注意が必要です。バージョン1.1.0のリリースノートでは、電源を切るとゲームのセーブ内容が保持されない制限が案内されています。一方、GitHubの開発用READMEにはSDカードへ保存する仕組みの検証結果が追記されていますが、『Analogue Pocket』実機での動作確認はまだ行われていないとのことです。

そのため、現段階では通常のゲーム機と同じ感覚ですべての作品を遊べるわけではなく、利用する際には最新版の対応状況を確認しておいたほうがよさそうです。

携帯電話とゲーム機を組み合わせた、ちょっと変わった存在だった『N-Gage』。その専用ゲームを『Analogue Pocket』で動かせるようになったというのは、なかなか興味深い試みといえそうです。

まだ動作の互換性や機能面には課題が残されていますが、公開直後から改良も進められています。今後、どこまで対応タイトルが増え、実機に近い環境で遊べるようになるのか、引き続きチェックしていきたいですね!

ABOUT US
アバター画像
retrogamer