GMS81C2012/GMS81C2020
HYUNDAI MicroElectronics
area for saving registers.
16.2 BRK Interrupt
The following method is used to save/restore the general-
purpose registers.
Software interrupt can be invoked by BRK instruction,
which has the lowest priority order.
Example: Register save using push and pop instructions
Interrupt vector address of BRK is shared with the vector
of TCALL 0 (Refer to Program Memory Section). When
BRK interrupt is generated, B-flag of PSW is set to distin-
guish BRK from TCALL 0.
INTxx: PUSH
PUSH
A
X
Y
;SAVE ACC.
;SAVE X REG.
;SAVE Y REG.
PUSH
Each processing step is determined by B-flag as shown in
Figure 16-5.
interrupt processing
POP
POP
POP
RETI
Y
X
A
;RESTORE Y REG.
;RESTORE X REG.
;RESTORE ACC.
;RETURN
=0
B-FLAG
General-purpose register save/restore using push and pop
instructions;
=1
BRK or
TCALL0
BRK
TCALL0
ROUTINE
INTERRUPT
ROUTINE
main task
RETI
RET
acceptance of
interrupt
interrupt
service task
saving
registers
restoring
registers
Figure 16-5 Execution of BRK/TCALL0
interrupt return
74
MAR. 2000 Ver 1.00