Prev: 02577 Up: Map Next: 02621
02595: THE 'CURSOR LEFT' SUBROUTINE
The address of this routine is derived from an offset found in the control character table.
Input
B Current line number
C Current column number
PO_BACK_1 02595 INC C Move leftwards by one column.
02596 LD A,34 Accept the change unless up against the lefthand side.
02598 CP C
02599 JR NZ,PO_BACK_3
02601 BIT 1,(IY+1) If dealing with the printer (bit 1 of FLAGS set) jump forward.
02605 JR NZ,PO_BACK_2
02607 INC B Go up one line.
02608 LD C,2 Set column value.
02610 LD A,24 Test against top line. Note: this ought to be 25.
02612 CP B
02613 JR NZ,PO_BACK_3 Accept the change unless at the top of the screen.
02615 DEC B Unacceptable so down a line.
PO_BACK_2 02616 LD C,33 Set to lefthand column.
PO_BACK_3 02618 JP CL_SET Make an indirect return via CL_SET and PO_STORE.
Prev: 02577 Up: Map Next: 02621