Skip to content
64

Awesome Game Boy Advance development

A curated list of Game Boy Advance development resources

1.3k stars72 forks82 entriesLast push Jan 30, 2026 (8 months ago)License Other

This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.

Introduction

Technical introduction to the GBA

Community

GBAdev Forum

Our new hub for announcements and long-form discussion. It's a good place to ask questions and share progress on your projects.

GBAdev Discord / IRC

This is where everyone hangs out to chat nowadays. Come say hi!

Community >Other places

GBAdev.org

The longstanding homepage of the scene. Still updated with news and releases (but the forums have been broken for a while).

In 2 lists

GBAtemp

The site carries the GBA name, but nowadays the console is relegated to the backbenches. It's a good place to talk about gaming and hardware though.

Documentation

GBATEK

Programming specs for the GBA and NDS hardware

In 2 lists

CowBite Virtual Hardware Specifications

Older GBA hardware documentation

The Audio Advance

Audio hardware documentation and basic test ROMs

Tutorials

Tonc

The new, revamped version of the GBA programming tutorial. The original version is here.

Compile C++ for GBA in under an hour

Cinemint's video for getting started with C++/Butano

Sound on the Gameboy Advance

How to write your own sound mixer / MOD music player

Larold's Retro Gameyard - Game Boy Advance Tutorials

Learn how to make GBA games using the Butano Game Engine. Each part of the engine will have own individual tutorial with example source code.

Articles

Gameboy Advance Resource Management

Allocation techniques for the GBA's various memory regions

Managing Sprite Cel VRAM on the Game Boy Advance

Analysis of the VRAM streaming approach for animated sprites

Using Beepbox for GBA Music Composition

Compilers

devkitARM

C/C++ cross-compiler toolchain, which includes libgba, libtonc, maxmod, and various tools and example projects.

gba-toolchain

GNU Arm Embedded Toolchain based alternative to devkitARM.

gvasm

Stand-alone assembler and disassembler (WIP) designed specifically for GBA homebrew

TinyGo

An alternative Go compiler for embedded systems, that supports GBA compilation

In 5 listsDetails

Toolkits

rust-console

GBA programming in Rust, plus tutorial.

natu

GBA programming in Nim (provides wrapper around libtonc, maxmod and more).

In 2 lists

gba-modern

Write GBA games using modern C++.

ZigGBA

WIP SDK for creating GBA games using Zig (Inspired by Tonc).

In 4 lists

Butano

Modern C++ high level engine for the GBA.

In 2 lists

BPCore Engine

Create GBA applications with the Lua programming language

GBA Dlang

WIP SDK for GBA development using D, using LLVM toolchain. provides fully functional TONC, GBFS, Maxmod.

dusk

Simple, lightweight, intuitive framework for GBA game development

gbsenpai

GB Studio player GBA port with some enhancements.

meson-gba

Meson-based GBA toolkit with support for many different libraries and tools.

sdk-seven

Modern runtime and tooling, and libraries for GBA development. Works with meson-gba or standalone.

rath

Forth programming environment for the Game Boy Advance

ada-gba-dev

A build system, libraries, and tools for producing programs for the Game Boy Advance using the Ada programming language.

agb

Rust high level framework for the GBA with a build system, asset importing, tracker player and graphics abstractions.

Libraries

agbabi

Drop-in application binary interface library (context switching, division, irq, memcpy, sine).

gba-hpp

C++20 header-only library for GBA development.

HeartLib

Comprehensive C library inspired by the classic HAMLib.

libseven

Modern, from-scratch replacement for libgba and libtonc.

GBAdv

High level utilities on top of libgba.

Maxmod

Music and sound library (supports .mod, .xm, .s3m, .it)

Apex Audio System

Music and sound library (supports .mod only, but very good performance)

Krawall

Music and sound library (supports .xm, .s3m)

Pimpmobile

Music library (supports .mod, .xm)

GBT Player

Music library that uses the DMG sound channels (close to 0% CPU usage).

In 2 lists

posprintf

An sprintf routine written in Thumb assembler.

GBFS

Practical filesystem

gbaLib

Library for programming the GBA with TinyGo

gba-link-connection

A set of C++ libraries to interact with the Serial Port (Link Cable, Wireless Adapter, GPIO, SPI)

Emulators

mGBA

Actively developed GBA emulator. Runs on a bunch of platforms. Text debugger through GDB stub.

In 2 lists

No$gba

Venerable GBA emulator. Windows only, but runs well under Wine. Not very actively maintained but still gets updates now and then. Sports graphical debugger.

NanoBoyAdvance

GBA emulator with high accuracy, especially in timing and CPU emulation. Does not have debugging features.

Mesen

Multi-system emulator with high GBA accuracy. It provides great built-in GUI tools such as a debugger, a profiler and an event viewer.

SkyEmu

GB/GBA/NDS Emulator with built in debuggers, REST API for scripting, and high accuracy.

MiSTer FPGA implementation

Needs MiSTer setup to run.

Testing

mGBA test suite

GBA Suite

240p-test-mini

video signal tests

In 2 lists

NBA hardware tests

Homebrews

Goodboy Advance

Made in 2018, and has a nice bit of information on how it's made.

Celeste Classic

2019 port of Pico8 version of Celeste.

GBADoom

2019/2020 GBA port of prBoom version of Doom.

BlindJump

Adventure game, developed in 2020. Implementation of link-cable multiplayer, fully digital audio.

Tigermoth

Bullet hell game, developed for the GBAJam 2021

Duster

A sleek strategy board game for the gba

OpenLara

Classic Tomb Raider open-source engine

In 5 listsDetails

Jams

GBA Jam 2021

GBA Winter Jam '21

GBA Jam 2022

GBA Winter Jam '23

GBA Microjam '23

GBA Jam 2024

Miscellanea

gba_bios

WIP disassembly of the Game Boy Advance BIOS

GBA bare metal code

Various experiments by Krom, such as video playback and 3D, written in ARM Assembly

dkarm_gba_docker

A Docker image that includes DevkitARM and other GBA SDK tools, packaged together to allow a consistent toolchain configuration and reproducibility in builds. Also can be helpful in ensuring a consistent build environment for continuous integration.

Usenti

Simple bitmap editor for paletted images aimed at GBA development.

RGB55 colour picker

Tool for picking colours in the BGR555 colour format the GBA uses.

Dumping the GBA BIOS

Software interrupt $1F / MidiKey2Freq

, canonical method

Cracking the GBA BIOS

by endrift

Dumping the GBA BIOS

, another method by MerryMage

Reverse engineering

Reverse Engineering a GameBoy Advance Game

A series of detailed posts and talks about developing a level editor for Klonoa: Empire of Dreams

Pokemon Ruby

C programming language annotation of a Pokemon Ruby disassembly

In 2 lists

HEL

GBA C library built on top of HAM (a classic SDK from back in the day)

Headspin's Guide

to Compression, Files Systems, Screen Effects and MOD Players for the Gameboy Advance

See category
90

Magictools

ellisonleao/magictools

:video_game: :pencil: A list of Game Development resources to make magic happen.

Fresh★ 17k73 entriesPushed 3 days ago
89

Awesome Godot

Calinou/awesome-godot

A curated list of free/libre plugins, scripts and add-ons for Godot

Fresh★ 11k335 entriesPushed 17 days ago
88

Awesome Löve

love2d-community/awesome-love2d

A curated list of amazingly awesome LÖVE libraries, resources and shiny things.

Fresh★ 4.5k303 entriesPushed 3 days ago
86

Awesome Open Source Games

michelpereira/awesome-open-source-games

Collection of Games that have the source code available on GitHub

Fresh★ 3.2k418 entriesPushed 6 days ago
86

Awesome Game Boy Development

gbdev/awesome-gbdev

A curated list of Game Boy development resources such as tools, docs, emulators, related projects and open-source ROMs.

Fresh★ 4.5k354 entriesPushed 2 days ago
85

Games of Coding

michelpereira/awesome-games-of-coding

A curated list of games that can teach you how to learn a programming language.

Fresh★ 2.2k42 entriesPushed 6 days ago