![]() |
Routines |
| Prev: 15E6 | Up: Map |
|
||||||||||
| OUT_CODE | 15EF | LD E,$30 | Increase the value in the A register by +30. | |||||||
| 15F1 | ADD A,E | |||||||||
|
This entry point is used by the routine at PRINT_A_1 with A holding the code of the character to be printed.
|
||||||||||
| PRINT_A_2 | 15F2 | EXX | Save the registers. | |||||||
| 15F3 | PUSH HL | |||||||||
| 15F4 | LD HL,($5C51) | Fetch the base address for the current channel (CURCHL). This will point to an output address. | ||||||||
|
This entry point is used by the routine at INPUT_AD with A holding the code of the character to be printed.
Now call the actual subroutine. HL points to the output or the input address as directed.
|
||||||||||
| CALL_SUB | 15F7 | LD E,(HL) | Fetch the low byte. | |||||||
| 15F8 | INC HL | Fetch the high byte. | ||||||||
| 15F9 | LD D,(HL) | |||||||||
| 15FA | EX DE,HL | Move the address to the HL register pair. | ||||||||
| 15FB | CALL CALL_JUMP | Call the actual subroutine. | ||||||||
| 15FE | POP HL | Restore the registers. | ||||||||
| 15FF | EXX | |||||||||
| 1600 | RET | Return will be from here unless an error occurred. | ||||||||
| Prev: 15E6 | Up: Map |