1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-28 06:30:16 +00:00
cc65/libsrc/cbm610/extzp.s
cuz 97494bc1f3 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
2003-12-21 18:43:25 +00:00

56 lines
1.6 KiB
ArmAsm

;
; Ullrich von Bassewitz, 2003-12-20
;
; Additional zero page locations for the CBM610.
; NOTE: This file is actually linked to an application with its full contents,
; so the program comes up with the values given in this file.
;
; ------------------------------------------------------------------------
.include "extzp.inc"
.segment "EXTZP" : zeropage
; The following values get initialized from a table in the startup code.
; While this sounds crazy, it has reasons that have to do with modules (and
; we have the space anyway). So when changing anything, be sure to adjust the
; initializer table
sysp1: .word $0000
sysp3: .word $0000
crtc: .word $0000
sid: .word $0000
ipccia: .word $0000
cia: .word $0000
acia: .word $0000
tpi1: .word $0000
tpi2: .word $0000
ktab1: .word $0000
ktab2: .word $0000
ktab3: .word $0000
ktab4: .word $0000
sysp0: .word $0000
time: .dword $0000
segsave: .byte 0
ktmp: .byte 0
CURS_X: .byte 0
CURS_Y: .byte 0
RVS: .byte 0
config: .byte 0
CharPtr: .word 0
; Stuff for our own kbd polling routine
keyidx: .byte 0 ; Number of keys in keyboard buffer
keybuf: .res 10 ; Keyboard buffer
keyscanbuf: .byte 0
keysave: .byte 0
modkey: .byte 0
norkey: .byte 0
graphmode: .byte 0
lastidx: .byte 0
rptdelay: .byte 0
rptcount: .byte 0