Pokémon Yellow
Boots, lightly testedGame Boy · 1998 · RPG · Decompilation
Kanto with a Pikachu that follows you everywhere.
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 Yellow built from the pret/pokeyellow disassembly with rgbds 1.0.3, byte-identical to the retail cartridge, running in the browser on a WebAssembly Game Boy 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 ROM by its SHA-1. Battery saves persist in this browser.
- Built from
- The real ROM, built byte-for-byte from the pret/pokeyellow disassembly, running on the libretro Gambatte core (EmulatorJS 4.2.3, WebAssembly)
- Type
- Decompilation
- Game files
- You supply your own Pokémon Yellow ROM (1,048,576 bytes, sha1 cc7d03262ebfaf2f06772c1a480c7d9d5f4a38e1 — 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/pokeyellow disassembly is unlicensed research. See web/THIRD_PARTY.md.
- Assets
- No game data is distributed. Everything comes from the ROM you load.
- Source
- andrewnakas/pokeyellow-web ↗
What has been tested
All three upstream targets build byte-identical to upstream's documented hashes, and pokeyellow.gbc is cmp-identical to the staged dump. In the browser: loaded through the page's own file picker, ran at ~59 fps, played the opening through Oak's speech and both naming screens to the bedroom in Pallet Town, walked, saved in game, reloaded the page and resumed — the restored save reproduces the game's own CalcCheckSum and carries the player name that was typed, decoded using the symbol table of the build under test. Nothing past the bedroom was played; Pikachu was never obtained; 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 — through Oak's speech and the naming screens to the bedroom in Pallet Town, an in-game save, a page reload and a resume. Nothing after that has been exercised, including getting Pikachu.
- Audio is unverified: every test ran muted.
- Only tested in headless Chrome on Linux. Firefox, Safari, iOS, Android and the on-screen controls are untested.
- EmulatorJS's own save states are untested; the battery save is the one that was verified.
- Link trading and battling are not possible in a single browser tab.
Saves
Save in game the normal way (START → SAVE). The battery save is kept in this browser's storage and survives a reload. Clearing site data removes it.