Syntax

Example

Notes

 

 

 

 

SB=1

See above. This is only valid in emulated Saturn

 

XM=1

 

 

SR=1

 

 

MP=1

 

 

HST=a

 

 

?SB=1

 

 

?XM=1

 

 

?SR=1

 

 

?MP=1

 

 

?HST=1.a

 

 

P=a

The HP ≠ character can be used instead of #

 

P=P+1 P+1

 

 

P=P-1 P-1

 

 

?P=a ?P#a

 

 

P=C.a C=P.a

 

 

CPEX.a

 

 

C=C+P+1 C+P+1

 

 

GOTO label

GOTO is limited to 1KB jumps

 

GOTOL label

GOTOL can jump over 16KB of code

 

GOLONG Lab

 

 

GOVLNG hex

This jumps to a specific address

 

GOVLNG =Label

 

 

 

GOVLNG ="COMND"

GOSUB is limited to 1KB jumps

 

GOSUB label

 

GOSUBL is limited to 16KB jumps

 

GOSUBL label

 

GOSBVL hex

GOSBVL jumps to a specific address

 

GOSBVL =Label

 

 

GOSBVL ="COMND"

GO if Carry set (limited to 64 bytes)

 

GOC label

GO if no carry (limited to 64 bytes)

 

GONC label

Equivalent to SKNC { GOTO label }

 

GOTOC label

 

Equivalent to SKC { GOTO label }

 

GOTONC label

 

 

 

RTN

Return from subroutine (GOSUB call)

 

RTNSXM

RTN + XM=1

 

RTNCC

RTN + set carry

 

RTNSC

RTN + clear carry

 

RTNC

 

RTN if carry set

 

RTNNC

 

RTN if carry not set

 

RTI

 

Return from interrupt

 

 

 

RTNYES RTY

Return if test true (see test section)

 

C=RSTK

Pop value from RSTK in Ca

 

RSTK=C

Push value from Ca in RSTK

 

OUT=CS

Set the first 2 nibbles of the OUT register to the value of Cb

 

OUT=C

Set the OUT register to the value of C4

 

A=IN

Copy the IN register in Ax or Cx (buggy instruction, do not use if you do

 

C=IN

not know what you are doing)

 

 

 

SETDEC SETHEX

Set the SPU in DECIMAL or HEXADECIMAL mode

 

UNCNGF CONFIG

Deconfigure/Configure memory modules

 

RESET

Deconfigure ALL memory modules

 

SHUTDN

STOP the CPU waiting for an interrupt

 

INTON INTOFF

 

Enable/disable keyboard interrupts

 

RSI

 

Reset interrupt system

 

 

 

GOINC label

Equivalent to LC(5)label-&. (& is the address of the instruction)

 

GOINA label

Equivalent to LA(5)label-&(& is the address of the instruction)

 

$hhh...hhh

Includes hexadecimal data in the program. Example:

 

NIBHEX hhh...hh

$12ACD545680B.

 

$/hhhh...hhh

Includes hexadecimal data in reverse order. Example: $/123ABC is

 

 

equivalent to $CBA321.

6-26 The Development Library