The release of PocketDoom v1.0.0 marks a significant milestone for the Analogue Pocket, bringing a native port of the classic id Software engine to the FPGA-based handheld. Developed by Think Elastic, the same creator behind the recent Quake port, this release allows the Analogue Pocket to run various Doom titles directly on its hardware rather than through software emulation.
Technical Performance and Features
The port utilizes a RISC-V soft CPU on the FPGA to run the original engine as bare-metal firmware. This implementation achieves a consistent 60 FPS at a resolution of 320×200, utilizing vsync-locked double buffering for smooth gameplay.
One of the standout technical achievements is the integration of hardware OPL2 music. By implementing FM synthesis directly into the FPGA fabric (using jtopl2), the developer has replaced slower software emulation, resulting in high-quality 48 kHz stereo audio that mixes music and sound effects in hardware.
The v1.0.0 release also supports:
- Multiplayer: Two-player co-op and deathmatch modes are functional via a standard Game Boy or Game Boy Color link cable.
- Display: Full compatibility with the Analogue Dock for HDMI output to televisions.
- Controls: Comprehensive mapping for the D-pad, analog sticks, and triggers.
- Save System: Six available save slots and persistent configuration settings.
Supported Titles and Customization
PocketDoom is designed to be an “instance-based” core, allowing users to select their specific game directly from the Analogue Pocket’s internal menu. The core supports a wide array of official titles and community content, provided the user supplies their own WAD files:
- Doom (Shareware and Registered versions)
- The Ultimate Doom
- Doom II: Hell on Earth
- Final Doom: The Plutonia Experiment
- Final Doom: TNT Evilution
Additionally, the core includes PWAD mod support, enabling the play of custom maps and total conversions, which significantly expands the library of playable content on the device.
Installation
The core can be installed manually via the GitHub repository or through popular community automated update tools such as Pupdate or Pocket Sync. Users must provide their own legally acquired WAD files and place them in the appropriate directories on their SD card to begin playing.
