Using it

rgbasm

Game Boy SM83, RGBDS syntax.

--dialect also accepts sm83, gb, gameboy, game-boy.

Directives

22 directives, 69 spellings. This is the list the parser looks a word up in, so a spelling here is one the assembler accepts and a spelling missing from it is one it refuses.

Directive Spellings Notes
assert assert, static_assert
bytes db
conditional if, elif, else, endc
define def
diagnose fail, warn
export export Accepted and discarded — it changes no bytes
fixed-point-functions high, low, mul, div, fmod, floor, ceil, round, tzcount Used inside an expression, not as a statement
incbin incbin
include include
longs dl
macro macro
print print, println
repeat rept, endr
reserve ds
rs-counter rsset, rsreset
section-functions bank, startof Used inside an expression, not as a statement
string-functions strcat, strfmt, strupr, strlwr, strsub, strslice, strlen, strcmp, strfind, strin, strrin, strrpl Used inside an expression, not as a statement
string-symbol equs
unsupported-blocks union, nextu, endu, load, endl, align, for, break, endsection Recognised, and not implemented
unsupported-option opt, popo, pusho, popc, pushc, pops, pushs, charmap, newcharmap, setcharmap Recognised, and not implemented
unsupported-symbol purge, redef, shift Recognised, and not implemented
words dw

Instruction mnemonics are not listed here — they come from the instruction-set spec and have their own reference.

Projects in more than one file

A relative request is looked for in the root input’s directory, however deep the request, then in the -I search directories in the order they were given.

The anchor is pinned against this dialect’s own reference assembler, and the dialects genuinely disagree — Projects in more than one file has the comparison.

Elsewhere