wendigojaeger/ZigGBA

Work in progress SDK for creating Game Boy Advance games using Zig programming language.

Zig

387

120 commits

updated Jul 19, 2025

See the code

README

Zig GBA

This is a work in progress SDK for creating Game Boy Advance games using the Zig programming language. Once Zig has a proper package manager, I hope that it would as easy as import the ZigGBA package. Inspired by TONC GBA tutorial

Setup

This project uses submodules, so post clone, you will need to run:

git submodule update --init

Build

This library currently uses Zig 0.14.1.

The tool anyzig is recommended for managing Zig installations.

To build the examples with anyzig installed, clone this repository and use Zig's integrated build system like so in the root ZigGBA directory:

zig build

This will write output ROMs to zig-out/bin/. These are files with a *.gba extension which can be written to a GBA cartridge or which can run in emulators such as mGBA, Mesen, and NanoBoyAdvance.

First example running in a emulator

First example emulator image

First example running on real hardware

First example real hardware image

gba
sdk
zig

Contributors

wendigojaeger

56 commits

vortexofdoom

18 commits

paoda

2 commits

wendigojaeger/ZigGBA

Work in progress SDK for creating Game Boy Advance games using Zig programming language.

Zig

387

120 commits

updated Jul 19, 2025

See the code

README

Zig GBA

This is a work in progress SDK for creating Game Boy Advance games using the Zig programming language. Once Zig has a proper package manager, I hope that it would as easy as import the ZigGBA package. Inspired by TONC GBA tutorial

Setup

This project uses submodules, so post clone, you will need to run:

git submodule update --init

Build

This library currently uses Zig 0.14.1.

The tool anyzig is recommended for managing Zig installations.

To build the examples with anyzig installed, clone this repository and use Zig's integrated build system like so in the root ZigGBA directory:

zig build

This will write output ROMs to zig-out/bin/. These are files with a *.gba extension which can be written to a GBA cartridge or which can run in emulators such as mGBA, Mesen, and NanoBoyAdvance.

First example running in a emulator

First example emulator image

First example running on real hardware

First example real hardware image

gba
sdk
zig

Contributors

wendigojaeger

56 commits

vortexofdoom

18 commits

paoda

2 commits

Languages

Zig

98.2%

Linker Script

1.3%