RGBASM(1) General Commands Manual RGBASM(1)

rgbasm
Game Boy assembler

rgbasm [-EhLVvw] [-b chars] [-D name[=value]] [-g chars] [-i path] [-M dependfile] [-o outfile] [-p pad_value] [-r recursion_depth] file

The rgbasm program creates an object file from an assembly source file. The input file can be a file path, or - denoting stdin. Its arguments are as follows:
chars
Change the two characters used for binary constants. The defaults are 01.
name[=value]
Add string symbol to the compiled source code. This is equivalent to name EQUSvalue” in code. If a value is not specified, a value of 1 is given.
Export all labels, including unreferenced and local labels.
chars
Change the four characters used for binary constants. The defaults are 0123.
By default, rgbasm inserts a ‘nop’ instruction immediately after any ‘halt’ instruction. The -h option disables this behavior.
path
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.
dependfile
Print make(1) dependencies to dependfile.
outfile
Write an object file to the given filename.
pad_value
When padding an image, pad with this value. The default is 0x00.
recursion_depth
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

Pipes way:

$ cat foo.asm | rgbasm -o bar.o -
$ rgbasm -o bar.o - < foo.asm

The resulting object file is not yet a usable ROM image — it must first be run through rgblink(1) and rgbfix(1).

rgbasm(5), rgbfix(1), rgblink(1), rgbds(5), rgbds(7), gbz80(7)

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 https://github.com/rednex/rgbds.
July 8, 2019 RGBDS Manual