Framework for development on the Game Boy Advance.
Controls for the demo:
A: Colour the current pixel;
+CONTROL PAD (UP): Move one pixel up on the canvas;
+CONTROL PAD (RIGHT): Move one pixel to the right on the canvas;
+CONTROL PAD (DOWN): Move one pixel down on the canvas;
+CONTROL PAD (LEFT): Move one pixel to the left on the canvas;
R: Rotate the palette counterclockwise;
L: Rotate the palette clockwise;
START: Exit the demo;
SELECT: Exit the demo (whilst indicating error);
As the Game Boy Advance uses an ARM (ARM7TDMI) processor, AGBx requires an ARM cross-compiler.
For GCC, the appropriate package is arm-none-eabi-gcc on Arch Linux and gcc-arm-none-eabi on Debian. Clang supports supports cross-compilation by default, and this platform can be set via the --target=arm-none-eabi option.
The used cross-compiler can be configured in the makefiles, however, it must be GCC-compatible..
The provided makefiles are for GNU Make (hence the filename of GNUmakefile) and depend on it's extensions.
The demo uses agbsum (pkgbuild) for patching the demo image header checksum so that it isn't rejected by the bootloader. This patch isn't always required, however, and the makefile (at demo/GNUmakefile) can be modified to skip it.