Pokémon Trading Card Game
Boots, lightly testedGame Boy Color · 2000 · Card Battler · Decompilation
Collect cards, build decks and duel your way to the Grand Masters.
Controls
| Arrow keys | D-pad |
| X | A |
| Z | B |
| Enter | Start |
| Shift | Select |
| Gamepad | standard mapping |
| Touch | on-screen Game Boy pad on phones and tablets |
About this build
Pokémon Trading Card Game built from the pret/poketcg disassembly with rgbds 1.0.4, byte-identical to the retail cartridge, running in the browser on a WebAssembly Game Boy Color core. You supply your own ROM: it is read with FileReader, kept in the tab's memory and never uploaded, and the page recognises the cartridge by its SHA-1. Your collection, your decks and a duel in progress are kept in this browser's storage and survive a reload.
- Built from
- The real ROM, built byte-for-byte from the pret/poketcg disassembly, running on the libretro Gambatte core (EmulatorJS 4.2.3, WebAssembly)
- Type
- Decompilation
- Game files
- You supply your own Pokémon Trading Card Game ROM (1,048,576 bytes, sha1 0f8670a583255cff3e5b7ca71b5d7454d928fc48 — the same ROM this project's build produces). It is read in the browser and never uploaded.
- Code licence
- EmulatorJS is GPL-3.0 and the Gambatte core is GPL-2.0; the pret/poketcg disassembly is unlicensed research. See web/THIRD_PARTY.md.
- Assets
- No game data is distributed. Everything comes from the ROM you load.
- Source
- andrewnakas/poketcg-web ↗
What has been tested
The ROM builds byte-identical to the retail cartridge (sha1 verified against pret's rom.sha1 and against the staged dump). In the browser: loaded through the page's own file picker, ran at 60 fps, played the opening through naming and the starter deck into the tutorial duel in Dr. Mason's laboratory, then reloaded the page and read the battery save back. The duel was confirmed from the game's own checksummed duel record in SRAM, decoded with the symbol table of the build under test and cross-checked against live work RAM. Nothing past the first turn of that duel was played; audio was muted throughout.
Last tested 2026-10-05 in Chrome 151 (headless, Linux). Full playthrough: not verified. How games are tested.
Known limitations
- Only the opening was play-tested: the intro, naming, the starter deck and the first turn of the tutorial duel against Sam. No duel was won and no opponent duel was ever started, so nothing past Dr. Mason's laboratory has been exercised.
- Saving was verified at the storage level — the battery save survives a reload byte for byte — but the test never played far enough for the game itself to offer a CONTINUE, so resuming from the title screen is untested.
- Audio is unverified: every test ran muted.
- Only tested in headless Chrome on Linux. Firefox, Safari, iOS, Android, gamepads and the on-screen controls are untested.
- EmulatorJS's own quick-save states are switched off so the ROM is never copied into browser storage; the cartridge's battery save is what persists.
- Link play — trading and link duels — is not possible in a single browser tab.
Saves
The game saves by itself as you play — your name, your collection, your decks and a duel in progress are written to the cartridge's battery save, which is kept in this browser's storage and survives a reload. Clearing site data removes it.
Play next
- Game Boy Color · 1998The Legend of Zelda: Link's Awakening DX The Legend of Zelda: Link's Awakening DX ▶ Play free
- Game Boy Color · 2001The Legend of Zelda: Oracle of Ages The Legend of Zelda: Oracle of Ages ▶ Play free
- Game Boy Color · 2001The Legend of Zelda: Oracle of Seasons The Legend of Zelda: Oracle of Seasons ▶ Play free
- Game Boy Color · 1999Pokémon Gold & Silver Pokémon Gold & Silver ▶ Play free