Prev: 18B6 Up: Map Next: 18E1
18C1: THE 'PRINT A FLASHING CHARACTER' SUBROUTINE
Used by the routines at OUT_LINE and OUT_CURS.
The 'error cursor' and the 'mode cursors' are printed using this subroutine.
Input
A Character code ('C', 'E', 'G', 'K', 'L' or '?')
Output
OUT_FLASH 18C1 EXX Switch to the alternate registers.
18C2 LD HL,($5C8F) Save the values of ATTR-T and MASK-T on the machine stack.
18C5 PUSH HL
18C6 RES 7,H Ensure that FLASH is active.
18C8 SET 7,L
18CA LD ($5C8F),HL Use these modified values for ATTR-T and MASK-T.
18CD LD HL,$5C91 This is P-FLAG.
18D0 LD D,(HL) Save P-FLAG also on the machine stack.
18D1 PUSH DE
18D2 LD (HL),$00 Ensure INVERSE 0, OVER 0, and not PAPER 9 nor INK 9.
18D4 CALL PRINT_OUT The character is printed.
18D7 POP HL The former value of P-FLAG is restored.
18D8 LD (IY+$57),H
18DB POP HL The former values of ATTR-T and MASK-T are also restored before returning.
18DC LD ($5C8F),HL
18DF EXX
18E0 RET
Prev: 18B6 Up: Map Next: 18E1