Static recompilation of Yoshi (NES) for native PC. Built with the NESRecomp framework.
Status: Believed fully playable. Title screen, single-player puzzle mode, two-player versus, and the demo all run end-to-end. If you find a bug, please open an issue.
- Title screen
- Single-player puzzle mode (Type-A and Type-B)
- Two-player versus mode
- Score, level, and speed display
- The attract-mode demo
- Both controllers
- Download
YoshiNESRecomp-windows-x64.zipfrom Releases - Extract and run
YoshiRecomp.exe - Select your Yoshi (USA) ROM when prompted — the path is saved for future launches
| NES Button | Keyboard |
|---|---|
| D-Pad | Arrow keys |
| A | Z |
| B | X |
| Start | Enter |
| Select | Tab |
| Hotkey | Action |
|---|---|
| F5 | Toggle turbo (fast-forward) |
| F6 | Save state |
| F7 | Load state |
Yoshi is a puzzle game with no battery save, so save states are the way to bookmark a session.
Requires Visual Studio 2022 and CMake 3.20+.
git clone https://github.com/mstan/YoshiNESRecomp
cd YoshiNESRecomp
# Windows
setup.bat
# Linux / macOS
chmod +x setup.sh && ./setup.shThis clones nesrecomp at the exact
version pinned in nesrecomp.pin and links the Nestopia oracle core.
Then build:
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config ReleasePlace your Yoshi (USA) ROM in the build directory or select it at runtime.
This is a static recompiler, not an emulator. The original 6502 machine code is translated to C at build time, then compiled to native x64. The NES PPU, APU, and MMC1 mapper are simulated by the runner library.
game.toml— recompiler configuration (data regions, dispatch extras)extras.c— game-specific hooks (TCP debug server, verify-mode integration)verify_mode.c— optional dual-execution verification against a Nestopia oraclegenerated/— auto-generated C code (do not edit manually)nesrecomp/— framework, consumed via directory junction + pin file
- Audio is basic (APU register writes are captured but full audio mixing is work-in-progress)