1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-11 01:05:25 +00:00
cc65/libsrc/apple2/cgetc.s
cuz b0117e1e22 New cgetc with apple2enh fix from Oliver Scmidt
git-svn-id: svn://svn.cc65.org/cc65/trunk@3454 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-04-08 19:27:07 +00:00

26 lines
563 B
ArmAsm

;
; Kevin Ruland
;
; char cgetc (void);
;
; If open_apple key is pressed then the high-bit of the key is set.
;
.export _cgetc
.include "apple2.inc"
_cgetc:
lda KBD
bpl _cgetc ; if < 128, no key pressed
; At this time, the high bit of the key pressed is set
bit KBDSTRB ; clear keyboard strobe
.ifdef __APPLE2ENH__
bit BUTN0 ; check if OpenApple is down
bmi done
.endif
and #$7F ; If not down, then clear high bit
done: ldx #$00
rts