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

@@ -7,9 +7,11 @@
.export _cputcxy, _cputc, cputdirect, putchar
.export newline, plot
.destructor setsyscursor
.import _gotoxy
.import popa
.import PLOT
.import ktmp: zp, crtc: zp, CURS_X: zp, CURS_Y: zp, RVS: zp
.import CharPtr: zp
@@ -132,6 +134,17 @@ plot: ldx CURS_Y
sta IndReg
rts
; -------------------------------------------------------------------------
; Cleanup routine that sets the kernal cursor position to ours
.segment "PAGE2"
setsyscursor:
ldy CURS_X
ldx CURS_Y
clc
jmp PLOT ; Set the new cursor
; -------------------------------------------------------------------------
; Low bytes of the start address of the screen lines