Mario Tennis (GBC, 2001) hides Yoshi, Wario, Waluigi, Bowser and four minigames behind a Transfer Pak session with the N64 game. Nintendo never patched that out. This tool writes those unlock bytes straight into your save file, no N64 required.
Your save never leaves this tab. Everything runs in your browser, no upload, no server.
| HALF | REC | ADDR | SIZE | STORED | COMPUTED | OK |
|---|
YOSHI
WARIO
WALUIGI
BOWSER
On an emulator, the .sav sits next to your ROM (mGBA, BGB, SameBoy). On a real cartridge, dump it with a GB Operator, GBxCart RW or similar, using the "backup save" option.
The file is read locally and checked: exact size, the Camelot header in both save halves, and a sane directory. If anything looks off, the tool refuses instead of guessing.
Sixteen bytes change: the unlock markers and the transfer block, mirrored across the primary and backup halves so each one still passes its own checksum. Save counters and profiles are untouched.
Download the patched file, keep your original as a backup, and replace it. Next boot, Yoshi, Wario, Waluigi and Bowser are on the character select, and the minigames are open.
To unlock those four characters legitimately you need an N64, the N64 Mario Tennis cartridge, a Transfer Pak and the GBC cartridge. All four, at once. No cheat code exists, and the re-releases never fixed it. For most people the content is simply unreachable.
So the save format got reverse-engineered from real cartridge dumps, since it was documented nowhere. The patch touches only the unlock markers and the transfer block, both halves of the save pass their own checksums afterwards, and removing the unlock restores the original byte for byte.
For the technically curious, this is the whole diff:
| OFFSET | WHAT IT IS | VALUE |
|---|---|---|
| 0x0041 | N64 character bitmask | 00→3C |
| 0x0047 | transfer-done flag | 00→02 |
| 0x0110 | directory record in use | 00→01 |
| 0x0116 | record checksum | →01C9 |
| 0x1800 | transfer block (512 B) | ED D5 … 07 |
Every marker and the transfer block are mirrored in the backup half at 0x2000, because each half checksums its own copy. Save counters, profile blocks and the non-checksum records from 0x3C0 are never written.
Yes. "Remove unlock" reverses the patch and produces a byte-identical pre-unlock save. It also repairs a half-applied "partial" state.
It is built from real cartridge dumps and the patched save passes the game's own checksums, but it has not been compared against a hardware Transfer Pak session. Keep your original before you write the patched .sav back with your flasher.
It only touches the N64 unlock markers and the transfer area. Still: keep a copy of the original file before you overwrite anything.