Vectored processing – Zilog Z86193 User Manual
Page 112
Z8
®
CPU
User Manual
UM001604-0108
Interrupts
105
To generate a SWI, the appropriate request bit in the IRQ is set as follows:
ORIRQ, #NUMBER
where the immediate data, NUMBER, has a 1 in the bit position corresponding to the
appropriate level of the SWI. For example, if an SWI is required on IRQ5, NUMBER
would have a 1 in bit 5:
OR IRQ, #00100000b
With this instruction, if the interrupt system is globally enabled, IRQ5 is enabled, and
there are no higher priority pending requests, control is transferred to the service routine
pointed to by the IRQ5 vector.
Vectored Processing
Each Z8 interrupt level has its own vector. When an interrupt occurs, control passes to the
service routine pointed to by the interrupt’s vector location in Program Memory. The
sequence of events for vectored interrupts is as follows:
•
PUSH PC Low byte on stack
•
PUSH PC High byte on stack
•
PUSH FLAGS on stack
•
Fetch High byte of vector
•
Fetch Low byte of vector
•
Branch to service routine specified by vector
on page 107 display the vectored interrupt opera-
tion.
- Z86233 Z86243 Z86733 Z86743 Z86C02 Z86C04 Z86C08 Z86C15 Z86C21 Z86C30 Z86C31 Z86C33 Z86C36 Z86C40 Z86C43 Z86C61 Z86C62 Z86C63 Z86C65 Z86C83 Z86C90 Z86C91 Z86C93 Z86C96 Z86E02 Z86E03 Z86E04 Z86E06 Z86E07 Z86E08 Z86E15 Z86E21 Z86E30 Z86E31 Z86E33 Z86E34 Z86E40 Z86E43 Z86E44 Z86E61 Z86E63 Z86E83 Z86K15 Z86L02 Z86L04 Z86L08 Z86L16 Z8E000 Z8E001 Z8PE003