誰かが、小型の RP2040 ベースの Raspberry Pi Pico マイクロコントローラ ボード上でDoomを動作させることに成功したことは、必然的なことのように思われます。
90年代のファーストパーソン・シューティングゲームをATMから妊娠検査薬まで、様々なハードウェアで動作させることは、ハードコアな改造マニアにとってまさに栄誉の印と言えるでしょう。驚くべきは、RP2040ハードウェアがその性能を備えていることよりも、これまで誰もそれを実現できなかったことかもしれません。結局のところ、このボードが初めて登場してからまだ1年ちょっとしか経っていないのですから。
オンラインストアをざっと見てみると、Pico は現在、入手困難な素材で作られておらず、実際にアウトレットに在庫があることがわかります。
一見すると、RP2040はミニマル版Doomを移植するプラットフォームとしてはそれほど制約が少ないようには思えませんが、確かに最も安価なプラットフォームの一つです(必要なドングルをすべて揃えて、ベアボードに接続し、ビジュアルとサウンドトラックを再生すればの話ですが)。しかし、その完全な体験を実現するのは…まあ、確かに難しいです。
ピピコ
移植はグラハム・サンダーソン氏によって行われ、完全版シェアウェアゲーム( )は、標準のPi Pico(フラッシュストレージ2MB搭載)でプレイ可能です。「8MBのRP2040ボードであれば、少なくともUltimate DoomとDOOM IIのDOOM1.WAD
WADは完全版としてプレイできるはずです」と彼は述べています。
グラフィックはVGAを通してクラシックな320x200解像度で動作します。マルチプレイヤーはどうやら動作するようです(残念ながらテストはできませんでした)。サウンド、音楽も問題なく、そしてシューティングが苦手な筆者にとって最も重要なのは、チートも動作するということです。
2 つの CortexM0+ CPU で十分な処理能力が得られる一方で、264K の RAM は頭痛の種です。特に、ディスプレイ バッファに必要な容量や、比較的低速なフラッシュ ストレージへのスワップを過度に避けたい場合などを考慮すると、その容量は大きくなります。2M のフラッシュでは、すべてを適切に配置するために、新しい圧縮手法も必要になります。
「RP2040 DoomのベースとなっているChocolate DoomのソースコードをRP2040でそのままコンパイルするには、静的な可変データとして30万KB、さらに動的な割り当てのために最低でも70万KBが必要です」とサンダーソン氏は述べた。「明らかに計算が合いません。」
- パック単位で購入:Raspberry PiはRP2040チップを大量購入できる
- Raspberry Pi がなかなか手に入らない?そんな悩みを抱えているのはあなただけではありません
- チップが必要ですか?Raspberry Pi PicoのRP2040がお近くのチャネルに登場します
- ラズベリーパイ財団の代表は上場の噂を否定、ビジネスに関する議論は「過度に解釈された」可能性があると語る
したがって、パフォーマンスが低下しないようにバランスを保ちながらトレードオフを行い、データをフラッシュに転送する必要があります。
実際、サンダーソンはゲームのフレームレートが通常30~35fpsだと主張している。ゲーミングマシンに4桁の金額を費やした人にとっては目が眩むような数字ではないかもしれないが、アムストラッドALT386SXで切手サイズのアクションをじっと見つめていた頃の記憶を持つ我々にとっては、十分すぎるほどだ。
熱心なファンらしく、サンダーソン氏は自由時間に 6 か月かけてこの移植版を開発しました (少し困難になったときには避けられない中断もありましたが)。その結果、マイクロコントローラの機能の見事なデモンストレーションと、効率的なプログラミングの教育の両方が実現しました。
サンダーソンは、世に出回っている他のミニマリストDoom移植版のコードは使用しなかったが、Chocolate Doom と iD Software に感謝の意を表した。
さあ、その創造的な才能の一部が、業界のサプライチェーン問題に応用されれば、Pi 4 Model BはPicoに続き、希少価値の高い製品となるかもしれません。®