(3) CRT interrupt processing routine
The CRT interrupt processing routine executes the display character data setup routine for each line,
in order to perform multi-line display. The line to be displayed is determined by the line counter value.
Line counter = 0
Block 1 display RAM
Display character of block 1 (the 1st line)
Character color of block 1 (the 1st line)
←
CV1
Vertical display start position
of the 1st line (block 1)
Set CS, HR
Fig. 5.1.5 Flowchart of CRT interrupt processing routine
CRT interrupt processing routine
T
D
CRT_ICON1
CRT_ICON2
ICON1 (address 00FE
16
ICON2 (address 00FF
16
I
Push registers X, Y, A
← Specify jump destination by
= 1
←
Block 2 display RAM
Display character of block 2 (the 2nd line)
Character color of block 2 (the 2nd line)
←
CV2
Vertical display start position
of the 2nd line (block 2)
Set CS, HR
Line counter +1
≠12
Line counter =12
=12
Line counter ← "0"
Save the value of Line counter
in internal RAM
Pop registers X, Y, A
←"1"
I
←CRT_ICON1
ICON1
ICON2
←CRT_ICON2
RETURN
7220 Group User's Manual
5.1 Example of multi-line display
ICON1, ICON2:
Line counter :
CV1,CV2 :
CRT_ICON1, CRT_ICON2 :
←"0"
←"0"
←ICON1
←ICON2
←"00100001
)
← Enable Timer 1 interrupt and
"
2
←"00000000
)
"
2
V
SYNC
←"0"
Line counter value
←
←Disable all interrupts
←Pop ICON 1 and 2 contents during
CRT
Note: The multiple interrupt priority of
this system is as below.
Timer 1 > V
APPLICATION
Interrupt control registers 1, 2
CS :
Character size register
HR :
Horizontal position register
Counter RAM for line counting
Vertical position registers 1, 2
Back up RAM for interrupt control
registers 1, 2 during CRT interrupt
A :
Accumulator
X :
Index register X
Y :
Index register Y
T :
X modified operation mode flag
D :
Decimal operation mode flag
interrupt
= 11
←
Block 2 display RAM
Display character of block 2 (the 12th line)
Character color of block 2 (the 12th line)
←
CV2
Vertical display start position
of the 12th line (block 2)
Set CS, HR
interrupt (Refer to "5.1.7 (2)")
> CRT
SYNC
5-5