Full Wolfenstein 3D remake running on a custom GBC cartridge with an NXP KE04 ARM Cortex-M0 co-processor and ATF1502 CPLD replacing the MBC1 chip.
Key Takeaways
Co-processor cartridge uses NXP KE04 (Cortex-M0, 48MHz, 16KB RAM, 128KB ROM) chosen for 5V tolerance and bit-banding, which enables fast 1-bit framebuffer and collision map rendering.
ATF1502 CPLD (rev.D) replaces salvaged MBC1 chips, enabling fully off-the-shelf cartridge manufacturing and custom MBC logic via WinCUPL/JTAG.
RAM is extremely tight: 16KB total, with framebuffer (2bpp), visibility map, collision map, and single-texture cache all packed into bit-banding address space.
Episode 1 (10 levels) fits in 128KB ROM; all 6 episodes are theoretically possible but blocked by sprite/texture budget, not map data alone.
Full source code and hardware schematics are on GitHub (agranlund/wolf); project is considered complete at rev.D.