Prev: 64525 Up: Map Next: 64592
64544: Draw a line
Used by the routine at LINE_ROUTINE.
DRAW_LINE 64544 CALL SET_INVERSE_AND_OVER Set over and inverse flags
64547 CALL GET_OFFSETS Read offsets into D and E
64550 LD B,D B=Y offset
64551 LD C,E C=X offset
64552 LD E,1 E=X direction (positive)
64554 BIT 6,(IX+0) Is this line left-to-right?
64558 JR Z,DRAW_LINE_0 If, so keep positive X direction
64560 LD E,255 E=negative X direction
DRAW_LINE_0 64562 LD D,1 D=positive Y direction
64564 BIT 7,(IX+0) Is this line bottom-to-top?
64568 JR Z,DRAW_LINE_1 If so, keep positive Y direction
64570 LD D,255 D=negative Y direction
DRAW_LINE_1 64572 EXX
64573 PUSH HL
64574 EXX
64575 CALL 9402 Line-drawing routines
64578 EXX
64579 POP HL
64580 EXX
This entry point is used by the routine at PLOT_ROUTINE.
NEXT_INSTRUCTION 64581 RES 0,(IY+87) Clear temporary 'over' bit
64585 RES 2,(IY+87) Clear temporary 'inverse' bit
64589 JP SKIP_3_THEN_NEXT Skip three bytes and execute next instruction
Prev: 64525 Up: Map Next: 64592