mkg3a 0.1d
Copyright 2011 Peter Marheine <>

mkg3a is a tool to pack raw binaries into Casio Prizm .g3a (add-in) files.

== Quickstart ==

Build and install to /usr/local:
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make install

== Compiling ==

Configure mkg3a with cmake, as in the quickstart.  Use cmake -i or your
favorite cmake UI (such as ccmake) to customize the configuration.

== Usage ==

Run mkg3a -h for help.

To build useful programs, you might do something like the following (requires
a GNU toolchain configured for sh4nofpu as well as crt0 and the g3a.lkr linker

$ sh4nofpu-elf-gcc -c -o crt0.o crt0.s
$ sh4nofpu-elf-gcc -c -o myprogram.o myprogram.c
$ sh4nofpu-elf-ld -T g3a.lkr -o myprogram.bin myprogram.o crt0.o
$ mkg3a myprogram.bin

When setting names in the output file, any unspecified entries will be derived
from 'basic', which itself is derived from the output filename if not provided.
Thus, to set a friendly name for your program in every language with ease, you
may do something like the following.

$ mkg3a -n "basic:My Awesome Program" myprogram.bin

Note that the English text may not render correctly in some languages
(particularly Chinese).  The 'internal' name entry will also be derived
from 'basic', but truncated and modified as necessary.  In the above example,
it would become something like '@MY AWESOME '.