![]() |
Routines |
| Prev: 06337 | Up: Map | Next: 06415 |
|
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 | Next: 06415 |