getcursor:
column: ldy #$00 ; Patched at runtime
- lda (scrptr),y ; Patched at runtime
- cmp #cursor
+ lda (scrptr),y
rts
setcursor:
- lda #cursor
-setscr: sta (scrptr),y ; Patched at runtime
+column2:ldy #$00 ; Patched at runtime
+ sta (scrptr),y
rts
; ------------------------------------------------------------------------
; Hide the mouse cursor.
hide:
- jsr getcursor ; Cursor visible at current position?
- bne done ; No, we're done
- lda backup ; Get character at cursor position
- jmp setscr ; Draw character
+ jsr getcursor ; Get character at cursor position
+ cmp #cursor ; "mouse" character
+ bne overwr ; no, probably program has overwritten it
+ lda backup ;
+ jmp setcursor ; Draw character
+overwr: sta backup
+ rts
; Show the mouse cursor.
show:
jsr getcursor ; Cursor visible at current position?
- beq done ; Yes, we're done
sta backup ; Save character at cursor position
+ lda #cursor
jmp setcursor ; Draw cursor
lsr a ; convert to character position
lsr a
sta column+1
+ sta column2+1
rts
; Move the mouse cursor y position to the value in A/X.