
ブランド名のない子ども用カメラで、ゲーム『DOOM』が約30fpsで動く。Andrew Spode氏がカメラの中のチップを解析してDOOMを移植し、手順と道具をGitHubで公開した。カメラは同氏の娘の持ち物で、どんなファームウェア(本体を動かすソフトウェア)で動いているのかという好奇心から始めたという。
同氏によると、カメラには箱にも画面にもメーカー名がなく、中のチップ「HX3302B」もほかに資料が見つからなかった。同氏は、別の子ども用カメラを改造したSprite_tm(Jeroen Domburg)氏の記事を手がかりに、ファームウェアを収めた記憶チップ(フラッシュメモリー)から中身を読み出し、AIのClaudeと一緒に解析した。
同氏が性能を測ると、処理速度はPC用のCPU「486 DX4/100」に近かった。一方でメモリーは2MBしかなく、本体のソフトウェアが使う分を除くと、空きは891KBだった。PC版のDOOMは4MBのメモリーを前提に作られている。
同氏は、本体のソフトウェアが使わない領域を探し出し、DOOMが使えるメモリーを約1.4MBまで増やした。さらに、ゲーム中に処理にかかる時間の99%が260KBのコードのうち約29KBに集中していると分かったため、その部分だけをメモリーに置き、残りは読み出しの遅いフラッシュメモリーから動かした。速度はすべてをメモリーに載せた場合と変わらなかったという。
プレイヤーは4つの矢印キーで動き、シャッターボタンで撃ち、電源ボタンで武器を切り替える。扉やスイッチを動かす「使う」のボタンが足りなかったため、同氏は物に向かって歩き続けると作動する仕組みにした。同氏は音楽用に、16音を同時に鳴らせる小さなシンセサイザーを自作し、CPUの約2%で鳴らしている。ゲームはセーブとロードができ、カメラは撮影機能もそのまま使える。
同氏はGitHubに、解析した資料、USBケーブル経由でカメラからファームウェアを読み出すツール、DOOMを組み込むスクリプトと元に戻す手段、開発キットを置いた。メーカーのファームウェアは含まれておらず、利用者が自分のカメラから読み出す。遊ぶには、無料配布されているシェアウェア版のデータファイル「DOOM1.WAD」が別に要る。読み出しツールは同氏のカメラのファームウェアに合わせたもので、ほかのバージョンで動くかは分からないとしている。

