![]() |
Routines |
| Prev: EB51 | Up: Map | Next: ED1C |
|
Used by the routine at InputLine.
Repaint the buffered characters at row 16 via PrintCharacter, pad with two spaces, then fall into InputLine_DrawCursor to draw the cursor.
|
||||
| InputLine_Redraw | ECC0 | LD HL,$5BAE | Point at the buffer and reset print state for row 16. | |
| ECC3 | SUB A | |||
| ECC4 | LD ($5BF6),A | |||
| ECC7 | LD ($5BF7),A | |||
| ECCA | LD A,$05 | |||
| ECCC | LD ($5BF5),A | |||
| ECCF | LD A,$16 | |||
| ECD1 | LD ($5BF8),A | |||
| ECD4 | LD A,($5BFB) | Jump to InputLine_Redraw_Pad if the line is empty. | ||
| ECD7 | AND A | |||
| ECD8 | JR Z,InputLine_Redraw_Pad | |||
| ECDA | LD B,A | |||
| InputLine_Redraw_Loop | ECDB | LD A,(HL) | Print each buffered character through PrintCharacter. | |
| ECDC | LD ($5BF9),A | |||
| ECDF | CALL PrintCharacter | |||
| ECE2 | INC HL | |||
| ECE3 | DJNZ InputLine_Redraw_Loop | |||
| InputLine_Redraw_Pad | ECE5 | LD A,$20 | Pad with two spaces, then fall into the cursor draw. | |
| ECE7 | LD ($5BF9),A | |||
| ECEA | CALL PrintCharacter | |||
| ECED | CALL PrintCharacter | |||
|
This entry point is used by the routine at InputLine.
|
||||
| InputLine_DrawCursor | ECF0 | LD A,$28 | Use attribute 28 for the blinking cursor. | |
| ECF2 | LD ($5BF5),A | |||
|
This entry point is used by the routine at InputLine_ClearCursor.
|
||||
| InputLine_DrawCursor_Body | ECF5 | LD A,$01 | Set XOR mode and load a space glyph. | |
| ECF7 | LD ($5BF6),A | |||
| ECFA | LD A,$20 | |||
| ECFC | LD ($5BF9),A | |||
| ECFF | LD A,$16 | Plot it on row 16 at the cursor column. | ||
| ED01 | LD ($5BF8),A | |||
| ED04 | LD A,($5BFA) | |||
| ED07 | LD ($5BF7),A | |||
| ED0A | CP $20 | |||
| ED0C | JR C,InputLine_DrawCursor_Print | |||
| ED0E | SUB $20 | Wrap onto row 17 when the column is past 20. | ||
| ED10 | LD ($5BF7),A | |||
| ED13 | LD A,$17 | |||
| ED15 | LD ($5BF8),A | |||
| InputLine_DrawCursor_Print | ED18 | CALL PrintCharacter | Call PrintCharacter. | |
| ED1B | RET | Return. | ||
| Prev: EB51 | Up: Map | Next: ED1C |