Inbox | Floor Tiles | Outbox | Program |
---|---|---|---|
|
|
---|---|
-- comment |
Anything following "--" is not considered code, anywhere on a line |
INBOX |
Pick up next value from the Inbox |
OUTBOX |
Put currently held value in the Outbox |
COPYFROM address |
Pick up contents of tile at address |
COPYTO address |
Write currently held value on tile at address |
|
|
ADD address |
Add contents of tile at address to currently held value NOTE: Only numbers can be added |
SUB address |
Subtract contents of tile at address from currently held value NOTE: Numbers can only be subtracted from numbers, or letters from letters |
BUMPUP address |
Subtract one to the tile at address and pick up the result NOTE: Only numbers can be bumped |
BUMPDN address |
Subtract one from the tile at address and pick up the result NOTE: Only numbers can be bumped |
|
|
command [address] |
Access a tile whose address is written on tile at address |
|
|
label: |
Define a jump location named label |
JUMP label |
Continue program execution from label |
JUMPZ label |
Jump to label if currently held value is zero NOTE: Does nothing unless the value in hand is a number |
JUMPN label |
Jump to label if currently held value is negative NOTE: Does nothing unless the value in hand is a number |
|
|
DEFINE LABEL address label |
Label the tile at address |
res/level-data.json
.
The contents of floor tiles, either as:
{ "24": 1, ... }
null, ""
10, "10"
"A", "B",
etc.