![]() |
Routines |
Prev: 06337 | Up: Map |
A return is made if it is not the correct place to print the cursor but if it is then 'C', 'E', 'G', 'K' or 'L' will be printed.
|
||||||||||
OUT_CURS | 06369 | LD HL,(23643) | Fetch the address of the cursor (K-CUR) but return if the correct place is not being considered. | |||||||
06372 | AND A | |||||||||
06373 | SBC HL,DE | |||||||||
06375 | RET NZ | |||||||||
06376 | LD A,(23617) | The current value of MODE is fetched and doubled. | ||||||||
06379 | RLC A | |||||||||
06381 | JR Z,OUT_C_1 | Jump forward unless dealing with Extended mode or Graphics. | ||||||||
06383 | ADD A,67 | Add the appropriate offset to give 'E' or 'G'. | ||||||||
06385 | JR OUT_C_2 | Jump forward to print it. | ||||||||
OUT_C_1 | 06387 | LD HL,23611 | This is FLAGS. | |||||||
06390 | RES 3,(HL) | Signal 'K-mode'. | ||||||||
06392 | LD A,"K" | The character 'K'. | ||||||||
06394 | BIT 2,(HL) | Jump forward to print 'K' if 'the printing is to be in K-mode'. | ||||||||
06396 | JR Z,OUT_C_2 | |||||||||
06398 | SET 3,(HL) | The 'printing is to be in L-mode' so signal 'L-MODE'. | ||||||||
06400 | INC A | Form the character 'L'. | ||||||||
06401 | BIT 3,(IY+48) | Jump forward if not in 'C-mode' (bit 3 of FLAGS2 reset). | ||||||||
06405 | JR Z,OUT_C_2 | |||||||||
06407 | LD A,"C" | The character 'C'. | ||||||||
OUT_C_2 | 06409 | PUSH DE | Save the DE register pair whilst the cursor is printed - FLASHing. | |||||||
06410 | CALL OUT_FLASH | |||||||||
06413 | POP DE | |||||||||
06414 | RET | Return once it has been done. | ||||||||
Note: it is the action of considering which cursor-letter is to be printed that determines the mode - 'K', 'L' or 'C'.
|
Prev: 06337 | Up: Map |