A Software Development Kit for developers who want to build GameBoy Advance games.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
This SDK aims to simplify GameBoy Advance homebrew development by allowing developers to write game logic in Python. It handles the underlying compilation, asset conversion, and bindings to interface efficiently with the GBA hardware.
To get a local copy up and running, follow these simple steps.
You need Python 3.x installed on your system
- Clone the repo
git clone https://github.com/lukas-sgx/GBA-sdk.git
cd GBA-sdk- Install the SDK in development mode
pip install -e .pip install cartridge-sdkHere is a quick example of how to dump header of ROM:
$ cartridge-sdk hdr dump bin/ExampleGBA.gba
bin/ExampleGBA.gba:
|-- entry
| |-- valid: True
| |-- raw: 0xea00002e
| `-- opcode: b 0xc0
|-- nintendo logo:
| |-- status: True
| `-- debugging: True
|-- game title: EXAMPLEGBA
|-- game code:
| |-- code: BXXE
| |-- date: 2003.. (new)
| `-- language: USA/English
|-- marker code:
| |-- id: 01
| `-- developer: Nintendo
|-- fixed value: valid (96h)
|-- unit code: 00h
|-- device type: 00h
|-- reserved: valid
|-- software_ver: 00h
`-- checksum:
|-- valid: True
|-- rom: e3
`-- our: e3For more advanced examples, please refer to the Documentation.
- Automated header checker
.gbaROM - Automated compilation to
.gbaROM - Font asset pipeline (PNG to C file converter)
- Core GBA bindings (Video, Audio, Inputs)
- Asset pipeline (PNG to GBA sprite palette converter)
See the open issues for a full list of proposed features (and known issues), and CHANGELOG.md for release history.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
See CONTRIBUTING.md for setup instructions, commit conventions, and the PR process.
Distributed under the MIT License. See LICENSE for more information.
Lukas Soigneux - lukas.soigneux@epitech.eu
- GBATEK - GameBoy Advance Technical Info
- Ayyboy-Advance - Great emulator for testing