On this page:
jre*
jre
nop
rete
pause

2 0000 - Relative Jump🔗

private opcode

(jre* z c)

 
c = bb68-ccc
 
  z : (integer-in -256 255)
  c : (integer-in 0 7)

image

 mask: f000

value: 0000

Performs a relative jump with a fixed delta of -256..+255 words.

According to the condition ”c”, the jump can be unconditional (c == 100) or depend on an ALU flag Z (c == 001), C (c == 010), S (c == 011), or its inverse (NZ: c == 101, NC: c == 110, NS: c == 111).

(The c == 000 condition would mean a jump that is never taken, and is used as a predefined empty operation; the macroinstruction NOP translates to this.)

macro opcode

(jre ccc:bb68-ccc pos)

macro opcode

(nop)

A predefined empty operation that does not affect the CPU state but consumes appropriate CPU cycles.

Internally, this is a macro that translates to JRE with zero delta and condition c == 000, which is equivalent to two zero bytes in the machine code.

macro opcode

(rete)

RETE – return from exception – restore flags, clear lower half of %emcf, jump to %erets:%eretp

macro opcode

(pause)

stop execution and wait for an interrupt