rgbasm(1) — Game Boy assembler
rgbasm program creates an object file
from an assembly source file. The input file can be a
file path, or
stdin. Its arguments are as follows:
- Change the two characters used for binary constants. The defaults are 01.
- Add string symbol to the compiled source code. This is equivalent to
EQUS"value" in code. If a value is not specified, a value of 1 is given.
- Export all labels, including unreferenced and local labels.
- Change the four characters used for binary constants. The defaults are 0123.
- By default,
rgbasminserts a ‘nop’ instruction immediately after any ‘halt’ instruction. The
-hoption disables this behavior.
- Add an include path.
- Disable the optimization that turns loads of the form LD [$FF00+n8],A into the opcode LDH [$FF00+n8],A in order to have full control of the result in the final ROM.
- Print make(1) dependencies to dependfile.
- Write an object file to the given filename.
- When padding an image, pad with this value. The default is 0x00.
- Specifies the recursion depth at which RGBASM will assume being in an infinite loop.
- Print the version of the program and exit.
- Be verbose.
- Disable warning output.
You can assemble a source file in two ways. Straight forward way:
$ rgbasm -o bar.o foo.asm
$ cat foo.asm | rgbasm -o bar.o - $ rgbasm -o bar.o - < foo.asm
rgbasm was originally written by Carsten
Sørensen as part of the ASMotor package, and was later packaged in
RGBDS by Justin Lloyd. It is now maintained by a number of contributors at