Code blocks start and end with a ~~~ sequence. They contain a series of lines, each of which consists of a single character directive, a space, and any parameters the directive requires.
Directive | Description |
---|---|
i | Process parameter as instruction bundle |
o | Set origin/offset in memory space |
* | Reserve parameter cells of data in memory |
r | Parameter is a named item, assemble a pointer to it |
R | Parameter is a named immediate item, assemble a pointer to it |
- | Alias for `r` |
d | Parameter is a decimal value, assemble it inline |
c | Parameter is a comment to be ignored |
: | Parameter is a label name |
s | Parameter is a string, assemble as length prefixed |
z | Parameter is a string, assemble as null-terminated |
~~~ i liju.... r main : $hello s hello, world : putc i liiore.. d 0 : puts c s-na i dufepu.. i liad.... d 1 : puts.next i dufelica r putc i liadpoli d 1 d 1 i sudulieq d 0 i licj.... r puts.done i puliju.. r puts.next : puts.done i drdrre.. : main i lilica.. r $hello r puts i lilica.. d 10 r putc i liio.... d 6 ~~~