ESP32-P4 Runs Game Boy Advance at Full Speed with New RISC-V JIT
Developer nnicultra ports gpSP to the ESP32-P4 with a RISC-V JIT, hitting 59.7 FPS with no frameskip on first-party titles.
If you like tiny hardware projects, developer nnicultra has a fun update: they ported the gpSP emulator to the ESP32-P4 and wrote a custom RISC-V JIT for it. First-party Nintendo games run at a steady 59.7 FPS with zero frameskip on this setup, which is a neat win for low-cost microcontrollers.
The test setup uses a Waveshare ESP32-P4-NANO-WIFI6-DB board featuring a P4 rev 3.x chip clocked at 400MHz, paired with an 8BitDo controller connected via its 2.4G USB dongle. Heavy scenes in games like Metroid Fusion take about 14 milliseconds per frame, leaving a bit of headroom. However, some rough edges remain: titles that generate and modify code in RAM, such as Doom, run very slowly right now.
The developer hasn’t used SIMD yet because the renderer relies on scattered palette lookups, and the Zcmt instructions bundled with rev 3.x proved buggy and unhelpful. Plans for the holiday include tackling code-generating games and pushing the source code to GitHub.

