Commander Keen 4 & Galaxy Engine - NES

rstoner

New Member
Newbie
Joined
Jul 18, 2026
Messages
3
Reaction score
6
Trophies
0
Age
43
Website
www.stoner.com
XP
25
Country
United States
I recently was able to port Keen 4 and most of the Galaxy engine over to the NES. It's a bit poetic to now have Keen (4/5 and potentially 6) on the platform that originally inspired it.

Image
Image


All of the prior discussion was right on why this is a hard game to port to 8-bit NES hardware. To get it working "smoothly":
  • MMC5 mapper (iNES 5 / ExROM) for the ROM headroom - up to 1 MB PRG + 1 MB CHR plus expansion audio
  • ExRAM extended-attribute mode - every 8×8 cell its own CHR bank + palette beating NES's 256-tile and 16×16-palette walls for near-lossless backgrounds
  • Cycle-counted vblank seam flush kept under ~1000 cycles so RAM mode never leaks into active render
  • Custom 6502 metatile decoder to dodge the C compiler hot path
  • u16 metatile map removing the 256-metatiles-per-level cap
  • Build time fg-over-bg compositing turns Keen's masked overlays into flat NES metatiles, no runtime masking
  • 70 Hz to 60 Hz physics rescale (x7/6 velocities, x6/7 durations) matching DOS jump/pogo/walk arcs within ~1px
  • Background animation via CHR bank-swapping, baked TILEINFO phases cycled through one bank register, zero per-frame VRAM writes
  • Per-level CHR + PRG banking with cold code trampolined into spare banks to relieve the near-full fixed region
It's amazing to see what could have been. You can check it out at https://github.com/ronaldstoner/keen-nes

I saw recently someone else did the Sega port. 2026 is the year of Keen!
 

Site & Scene News

Popular threads in this forum