
アーケードゲームのエミュレーションは通常、PCやシングルボードコンピューターで動かすものだ。だが1980年のパックマンが動いていたハードウェアは、CPUクロック3MHz、RAMわずか2KBの構成だった。現代のマイコンなら十分に再現できるスペックだ。
「PELLETINO」は、Espressif ESP32-C6上でパックマンのアーケード基板をソフトウェアエミュレーションで再現するプロジェクトだ。Z80 CPUの命令セットをRISC-Vプロセッサー上でエミュレートし、Namco WSG(Waveform Sound Generator)による3声の波形テーブル音源合成まで忠実に再現している。
ハードウェアにはWaveshare ESP32-C6-LCD-1.69(約13~16ドル、約2000~2400円)を採用した。160MHz RISC-Vプロセッサー、512KB SRAM、1.69インチ240×280ピクセルST7789 LCDディスプレイ、ES8311オーディオコーデック、QMI8658 6軸IMU(慣性計測装置)を搭載しており、ゲームに必要な表示、音声、入力の各機能を1枚のボードでまかなえる。
描画はSPI DMAで60fpsを維持し、オリジナルの224×288ピクセル解像度を240×280ピクセルのLCDにほぼそのまま収めている。音声面ではES8311 I2Sコーデックを介し、ワカワカ音やゴースト捕食音、フルーツ取得音、デス演出などオリジナルの効果音をすべて再生する。操作はGPIOボタンに加え、IMUによるチルト操作にも対応した。
ユニークなのは、米テキサス州サンアントニオで毎年4月に開催される祭り「Fiesta San Antonio」の2026年公式メダルとしても機能する点だ。Fiestaではコレクタブルなピンバッジ(メダル)を身に付けて交換する伝統があり、PELLETINOは3Dプリント筐体にストラップを通して首から下げられる。遊べるメダルという発想だ。
ビルドにはESP-IDF 5.xとPython 3.8以上が必要で、ROMファイルは著作権の関係で同梱されていない。変換スクリプトでグラフィックスデータをRGB565形式に、波形テーブルデータをCヘッダーファイルに変換し、ファームウェアとして書き込む仕組みだ。Z80エミュレーターコアにはMarat Fayzullin氏のコードを、アーケードエミュレーションの設計パターンにはTill Harbaum氏のGalaginoプロジェクトを参考にしている。

