1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-19 06:31:31 +00:00
cc65/libsrc/telestrat/cgetc.s

29 lines
862 B
ArmAsm
Raw Normal View History

2017-10-01 21:23:03 +00:00
;
; jede jede@oric.org 2017-10-01
;
.export _cgetc
2017-10-08 16:11:09 +00:00
.import cursor
2017-10-01 21:23:03 +00:00
.include "telestrat.inc"
.proc _cgetc
2017-10-08 16:11:09 +00:00
; this routine could be quicker if we wrote in page 2 variables, but it's better to use telemon routine in that case, because telemon can manage 4 I/O
lda cursor ; if cursor equal to 0, then switch off cursor
beq switchoff_cursor
ldx #$00 ; x is the first screen
BRK_TELEMON(XCSSCR) ; display cursor
jmp loop ; could be replaced by a bne/beq but 'jmp' is cleaner than a bne/beq which could expect some
switchoff_cursor:
ldx #$00 ; x is the first screen
BRK_TELEMON(XCOSCR) ; switch off cursor
2017-10-01 21:23:03 +00:00
loop:
BRK_TELEMON XRD0
2017-10-02 10:20:52 +00:00
bcs loop
2017-10-01 21:23:03 +00:00
rts
.endproc