(DMC8) Subprogram Call and Return Instructions

Mnemonic

Symbolic
Operation

Flags
S    Z    H   P/V  N    C

Opcode
76 543 210

Hex

Bytes

M
Cycles

Clock
Cycles

Comments

CALL nn

SP ¬ SP - 1
(SP) ¬ PCH
SP ¬ SP - 1
(SP) ¬ PCL
PC ¬ nn

•     •     •     •     •     •

11 001 101
¬    n     ®
¬    n     ®

CD

3

5

17

 

CALL cc, nn

if cc is true,
SP ¬ SP - 1
(SP) ¬ PCH
SP ¬ SP - 1
(SP) ¬ PCL
PC ¬ nn

•     •     •     •     •     •

11 cc  100
¬    n     ®
¬    n     ®

 

3
3

3
5

10
17

if cc is false
if cc is true

cc     Condition
000   NZ non zero
001   Z  zero
010   NC non carry
011   C carry
100   PO parity odd
101   PE parity even
110   P sign positive
111   M sign negative

RET

PCL ¬ (SP)
SP ¬ SP + 1
PCH ¬ (SP)
SP ¬ SP + 1

•     •     •     •     •     •

11 001 001

C9

1

3

10

 

RET cc

if cc is true,
PCL ¬ (SP)
SP ¬ SP + 1
PCH ¬ (SP)
SP ¬ SP + 1

•     •     •     •     •     •

11 cc  000

 

1
1

1
3

5
11

if cc is false
if cc is true

RST p

SP ¬ SP - 1
(SP) ¬ PCH
SP ¬ SP - 1
(SP) ¬ PCL
PC ¬ p

•     •     •     •     •     •

11   t   111

 

1

3

11

_t_    __p__
000   0000h
001   0008h
010   0010h
011   0018h
100   0020h
101   0028h
110   0030h
111   0038h

Flag Notation:

• = flag is not affected.