Reverse-engineering a forgotten 80s arcade game for the Taito SJ System
11 hours ago
- #reverse-engineering
- #arcade-games
- #emulation
- A group of arcade enthusiasts discovered the obscure 1982 Taito game 'Adventure Canoe' on the Taito Egret II Mini, a mini arcade console with 40 pre-installed games.
- The game was largely unknown, with minimal pre-2021 mentions, and no original cabinets, PCBs, or art records existed, making it a forgotten title for nearly 40 years.
- The author borrowed the Egret II Mini to reverse-engineer it, starting with hardware inspection, finding UART ports, and analyzing boot logs, but faced limitations without soldering tools.
- By examining the console's firmware update file, the author extracted a Linux filesystem and discovered encrypted ZIP archives containing game resources and the frontend binary.
- Using Ghidra to analyze the 'game_launcher' binary, the author found a hardcoded 64-character password that decrypted the main 'egret2' binary, revealing internal logic.
- Dynamic analysis with gdb and gef on a Raspberry Pi helped locate the decryption key for 'resource1' and 'resource2' archives, allowing extraction of ROM files.
- The ROM files needed splitting to match Taito SJ hardware specifications, and MAME's source code was updated to include checksums and DIP switches for 'Adventure Canoe'.
- After building MAME with the new game added, it ran successfully, and the author also explored porting it to the Analogue Pocket using an existing FPGA core.