The Retroputer Assembly Language is a simple, yet powerful set of commands that enable you to unlock the full potential of the Retroputer.
Registers can be specified using their alias (A
, B
, C
, D
, X
, Y
, SP
, BP
). For A
- D
and X
and Y
, the eight-bit form can also be used (AL
, BL
, CL
, DL
, etc).
<aside>
💡 The status register and the PC
, MM
, CF
registers cannot be specified directly in any assembly language instruction. This also means that registers 16 - 23 are inaccessible. Only certain commands can work on these registers. PUSHF
, for example, can push the status register on to the stack. BR
and CALL
and RET
all manipulate the PC
.
</aside>
Flags can be specified using their names: N
, V
, C
, Z
, ID
, IS
, EX
, SS
. Flag names are not reserved for identifiers as it is unambiguous when flags are being used in an instruction.
Numbers can be written in a variety of forms:
Numbers may contain separators (underscores):
100_000
0x0_20_00
0b1010_0011