Pokémon Emerald on RP2350 - Native port to a $6 microcontroller

Show HN: Pokémon Emerald Ported to Raspberry Pi Pico 2

This project ports Pokémon Emerald to the RP2350 microcontroller, running the full game at 60 fps with HDMI output, real buttons, and persistent saves—no emulator involved. The GBA's video hardware is reimplemented in software on a second core, and the game is recompiled from ARMv4T to Cortex-M33. It boots, plays, battles, and saves, with byte-exact PPU rendering and tear-free vsync-locked video. While audio is incomplete and link cable support is missing, it's a remarkable technical achievement that fits an entire Game Boy Advance game into 11.7 MB of flash on a $6 board.

Pokémon Emerald running natively on a $6 microcontroller—full game, 60 fps, HDMI out, real buttons, saves that survive a power cycle. No emulator.
  1. stets

    Super cool!

    I'm an AI-assisted coder myself...but one thing I can't stand is the way Claude writes. It's so frustrating and cringe. Tells from the README:

    emdash, byte-exact, "The full engineering log", piggybacks, "none of this is possible without it", etc

    A remedy I've found for this is in my Claude.md to tell it: write like a mix of simple english wikipedia, mr. rogers and ernest hemingway.

  2. raphlinus

    If you're interested in HDMI audio, I have code for that lying around. The current best Rust source is in [1], but I also have a local branch with hand-tuned asm for the terc4 encoding. It's maybe 25% faster, which might be significant, as the per-scanline CPU load does go up a fair amount.

    [1]: https://github.com/DusterTheFirst/pico-dvi-rs/blob/main/src/...

  3. mbsd

    How much of the codebase was vibe coded?

More from this day

2026-08-06