Design change: Do keyboard polling internally without calling the kernal

in the system bank. For one this performs better (several %), second it
allows to handle the function keys in conformance with other platforms.
Without the custom keyboard routine, we would have to apply some more
magic to the function keys to make them work as with other cc65 targets.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2811 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz
2003-12-21 18:43:25 +00:00
parent 028d03b482
commit 97494bc1f3
11 changed files with 313 additions and 99 deletions

View File

@@ -1,23 +1,16 @@
;
; Ullrich von Bassewitz, 2003-12-20
; Ullrich von Bassewitz, 06.08.1998
;
; int kbhit (void);
;
.export _kbhit
.importzp sysp0
.import return0, return1
.import keyidx: zp
.include "cbm610.inc"
.proc _kbhit
ldx IndReg
lda #$0F
sta IndReg
ldy #$D1 ; Number of keys in kbd buffer
lda (sysp0),y
stx IndReg
lda keyidx ; Get number of characters
bne L1
jmp return0
L1: jmp return1