Download the rom here: https://github.com/timostrating/Ludumdare46/raw/master/docs/KeepTheGameBoyAlive.gba
Play on a web emulator here: https://timostrating.github.io/Ludumdare46/
this project is based on a template created by the work of Tonc and Luc van den Brand: https://github.com/LucvandenBrand/GBA_Project_Template
This repository contains a basic setup for building structured and test-driven Game Boy Advance (GBA) applications.
The actual content of the GBA application is stored in source
:
app
: This is where all code resides in.c
and.h
files. Tests are named*.test.c
.assets
: All sound, images, sprites and maps are stored here.data
: All game data, like entity information and default settings are stored here.
The tools
folder contains tools and libraries that ease development, the lib
folder contains all external libraries used.
This project has been configured for Linux, and will most probably not work in other environments without tweaking. In order to be able to build this project, you will need to perform the following steps:
- Install DevkitPro for the GBA and setup the right environment variables (see this guide)
- Make sure all submodules are present by calling
git submodule update --init --recursive
.
After this, you should be ready to build the project.
Once the project has been setup properly, the only thing a developer needs to do is to call the right make
commands from the root of the project:
make
: builds the game and exports a.gba
file.make test
: builds both the game and its tests in the.test.c
files, exporting a.gba
file that runs all these tests. This is made possible by theminunit_test_builder
in the tools folder and theminunit
testing library.make clean
: removes all junk created by the building processes above.