Sapphire
Sapphire is an open-source Game Boy Advance emulator written from scratch in Go.
What Sapphire is
Sapphire is an open-source Game Boy Advance emulator written from scratch in Go. It emulates the ARM7TDMI processor and supports both ARM and THUMB instruction sets. You can run it locally in a browser through WebAssembly or use its documented macOS desktop frontend, which is built from source. The browser build supports display modes for sprites, backgrounds, and direct writes. Save states work in the browser through local storage and on desktop through files. Browser audio works on iPhone, while the desktop build is silent. A Game Boy Advance BIOS file is required, and browser play also needs a game file. Pokémon Sapphire and uCity Advance are reported as playable, although some homebrew games fail. Browser speed is fixed at 1×. Object window, EEPROM saves, and serial or link cable support remain unimplemented, and timing is approximate rather than cycle-accurate. Sapphire uses the MIT License.
Good
- Open-source MIT-licensed project
- Browser and macOS versions
- ARM and THUMB instruction support
- Save states on desktop and browser
- Browser audio works on iPhone
Watch out
- Requires a Game Boy Advance BIOS file
- Desktop build currently has no audio
- Browser speed is fixed at 1×
- Link cable and EEPROM saves unimplemented
Who it suits
Sapphire suits users seeking an open-source Game Boy Advance emulator for browser or macOS use. It also fits people interested in low-level systems and computer internals.
Verdict
Sapphire provides a focused Game Boy Advance emulation project with browser and macOS options. Its incomplete features, approximate timing, and known visual issues matter for users seeking broader compatibility.
The facts
Each one read from Sapphire's own pages, with the date it was checked.
What it does
- Audio
- The repository says browser audio is wired up and works on iPhone, while the desktop build is currently silent.checked 9 Oct 2026
- Desktop version
- The repository documents a macOS desktop frontend and instructions to build a macOS app from source.checked 9 Oct 2026
- Display
- The project page says it supports display modes for sprites, backgrounds, and direct writes.checked 9 Oct 2026
- Game compatibility
- The repository says Pokémon Sapphire and uCity Advance are playable, and notes that some homebrew games fail to run.checked 9 Oct 2026
- Incomplete features
- The repository lists object window, EEPROM saves, and serial/link cable as unimplemented, and says timing is approximate rather than cycle-accurate.checked 9 Oct 2026
- Intended audience
- The maker describes the project as a personal effort to understand computer internals, low-level systems, machine code, and how programs run.checked 9 Oct 2026
- Known issues
- The maker reports that Pokémon cave fog blending and Mario Kart sprite priority still have visual bugs.checked 9 Oct 2026
- Known limitations
- The repository lists object window, EEPROM saves, and serial or link cable as unimplemented, and says timing is approximate rather than cycle-accurate.checked 9 Oct 2026
- License
- Sapphire is licensed under the MIT License.checked 9 Oct 2026
- Processor
- It emulates the ARM7TDMI processor and supports both ARM and THUMB instruction sets.checked 9 Oct 2026
- Product
- Sapphire is a Game Boy Advance emulator written from scratch in Go.checked 9 Oct 2026
- Purpose
- Sapphire is a Game Boy Advance emulator written from scratch in Go.checked 9 Oct 2026
- Requirements
- Running Sapphire requires a Game Boy Advance BIOS file; the browser build also needs a game file.checked 9 Oct 2026
- Save states
- Save states work on desktop and in the browser, saving progress to a file or browser local storage.checked 9 Oct 2026
Where it runs
- Browser performance
- The browser version is fixed at 1× speed, and smoother operation on mobile devices is still a work in progress.checked 9 Oct 2026
- Browser play
- The emulator runs in the browser via WebAssembly, and the maker says it runs locally in the browser.checked 9 Oct 2026
- Browser version
- The emulator runs in the browser through WebAssembly, and the maker says the build runs locally in the browser.checked 9 Oct 2026
- Desktop platform
- The repository documents a macOS desktop frontend and installation by building from source.checked 9 Oct 2026
The company
- Maker and location
- The maker identifies himself as Dylan Butler, a software engineer in Melbourne.checked 9 Oct 2026
Alternatives to Sapphire
- 1

Provenance
Free planOpen sourceiOSmacOS8.2From $39.99 a year - 2
SkyEmu
Free planOpen sourceAndroidiOSWebLinux8.0Free plan - 3
RetroArch
Free planAndroidiOSWebLinux7.7Free plan - 4
ares
Free planOpen sourceLinuxmacOSSelf-hostedWindows7.5Free plan - 5

OpenEmu
Free planOpen sourcemacOS7.3Free plan - 6
RustBoyAdvance-NG
Free planAndroidWebLinuxmacOS7.1Free plan
