Xerox Alto I Hardware Manual page 33

A personal computer system alto series
Table of Contents

Advertisement

Alto Hardware Manual
Section 3: Emulator
27
DIR
61000B
Disable interrupts:
Disables the interrupt system.
If more than one interrupt is initiated on a channel while
interrupts are disabled, only one will occur when interrupts are re-enabled.
DIRS
61013B
Disable interrupts and skip if on:
Disables the interrupt system and skips the next instruction if interrupts were enabled at the start
of this instruction.
ErR
6100lB
Enable interrupts:
Enables the interrupt system. Interrupts initiated while interrupts were disabled occur after this
instruction.
.
.. . . ..
. .
BRI
61002B
Branch and return from interrupt:
Simulates a
JMP @PCLOC
instruction, and then enables the interrupt system. Interrupts initiated
while interrupts were disabled occur after this instruction.
EXAMPLES
The code below is a sample interrupt handler for one channel, say channel 10.
It permits nested
interrupts from higher priority channels, where the priority is determined by software.
This is
accomplished by turning off all lower-priority channels and re-enabling interrupts (which were disabled
by· the microcode at the onset of this interrupt). Before dismissing the interrupt.; it is necessary to disable
the interrupt system and tum the lower-priority channels back on.
Interrupt:
SavedACO
SavedACl
SavedAC2
SavedAC3
STA 0 SavedACO
STA
1
SavedACl
STA 2 SavedAC2
STA 3 SavedAC3
MOVR 0 0
STA
0
SavedCarry
LOA
0
@PCLOC
STA
0
SavedPC
LOA
0
@ACTIVE
STA
0
SavedActive
LOA
1
ChanMask
AND 1 0
STA
0
@ACTIVE
EIR
OIR
LOA 0 SavedActive
STA 0 @ACTIVE
LOA 0 Saved PC
STA 0 @PCLOC
LOA 0 SavedCarry
MOVL 0 0
LOA 3 SavedAC3
LOA 2 SavedAC2
LOA 1 SavedACl
LOA 0 SavedACO
BRI
o
o
o
o
; save the interrupted program state
disable lower priority channels
re-enable interrupts
service the interrupt
disable interrupts
re-enable lower priority channels
restore the interrupted program state
dismiss the interrupt
these locations must be private to this channel

Advertisement

Table of Contents
loading

This manual is also suitable for:

Alto ii

Table of Contents