Wolfenstein 3D for Gameboy Color on custom cartridge (2016)

· coding gaming · Source ↗

TLDR

  • 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.

Hacker News Comment Review

  • No substantive HN discussion yet.

Original | Discuss on HN