sapphire - GBA emulator written in Go

A Game Boy Advance emulator written from scratch in Go.

Mostly as a test of my own ability to understand the inner workings of computers generally and improve my understanding of low level systems, machine code, and how code runs beyond clicking a play button.

This project emulates the ARM7TDMI processor in the console for both the ARM and THUMB instruction sets, plus all the memory mappings, memory transfer buffers, timing controls, and registers. Full display output for all the specified display modes for sprites, backgrounds, or direct writes.

Play it in the browser | Source on GitHub