Skip to content

Mario's Tennis v0.1.0 — first VB recompile

Choose a tag to compare

@mstan mstan released this 21 May 17:33
· 20 commits to master since this release

First binary release of Mario's Tennis recompiled from the original
Virtual Boy cartridge via the vbrecomp
static V810-to-C recompiler framework. The cart's CPU code is now
native x86-64 Windows; no V810 interpreter at runtime.

What's in the zip

  • MarioTennisVirtualBoyRecomp.exe — recompiled cart + runtime (~2 MB)
  • SDL2.dll — window / audio / input
  • README.txt — usage + controls

How to run

You need to provide your own Mario's Tennis ROM dump:

  • CRC32: 0x7CE7460D
  • SHA-256: 5dc5e6b5d5f538f56b3b9727db1c7931d9dfe1bbd0743f698897e0fd90e70101
  • Size: 524 288 bytes
MarioTennisVirtualBoyRecomp.exe --rom path/to/marios_tennis.vb

The runtime CRC32-verifies the ROM at startup and refuses to run on
mismatch.

Controls

  • Keyboard: Arrows = L D-pad, WASD = R D-pad, X/Z = A/B, Q/E = L/R,
    Enter/RShift = Start/Select, TAB = turbo, Esc = quit
  • XInput (Xbox controller, player 1) is also supported

What's verified

  • Decoder coverage: 100% (0 unknown encodings across 33 057 walked
    instructions)
  • Dispatch coverage: 100% (no JAL/JR target outside the recompiled set)
  • Framebuf diff vs Beetle VB oracle on boot screen: 0/86 016 pixels
    differ at zero tolerance
  • Full match completed without crash
  • 77/77 framework Python tests pass

ROM not included. Mario's Tennis is © 1995 Nintendo.


macOS (Apple Silicon) build — MarioTennisVirtualBoyRecomp-macos-arm64.zip

Native arm64 .app (SDL2 bundled, ad-hoc signed). ROM not included.