address mode optimizations, updated credits

This commit is contained in:
FeralChild64 committed 2020-09-21 19:40:33 +02:00
1 parent fcb74a9fae
commit 299e9cd524
3 files changed
+25 -15

No files matched your search

+23
View File
@@ -0,0 +1,23 @@
;
; Aliases for legacy keyboard scan routine
;
!ifdef CONFIG_LEGACY_SCNKEY {
; Low memory variables
; Reuse RS232 variables, since they should not be used by other things.
; Carefully avoid $A7 which is used by 64NET
!addr KeyQuantity = $A8 ; 1 byte
!addr BufferNew = $A9 ; 3 bytes
!addr TempZP = $B6 ; 1 byte
; These should be initialized in CINT to $FF
!addr BufferQuantity = $B4 ; 1 byte
!addr BufferOld = $293 ; 3 bytes
!addr Buffer = $297 ; 4 bytes
; $250-$258 is the 81st - 88th characters in BASIC input, a carry over from VIC-20
; and not used on C64, so safe for us to use, probably.
!addr ScanResult = $250 ; 8 bytes
}
+1 -15
View File
@@ -59,24 +59,10 @@
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
; Low memory variables
; Reuse RS232 variables, since they should not be used by other things.
; Carefully avoid $A7 which is used by 64NET
!addr KeyQuantity = $A8 ; 1 byte
!addr BufferNew = $A9 ; 3 bytes
!addr TempZP = $B6 ; 1 byte
; These should be initialized in CINT to $FF
!addr BufferQuantity = $B4 ; 1 byte
!addr BufferOld = $293 ; 3 bytes
!addr Buffer = $297 ; 4 bytes
; $250-$258 is the 81st - 88th characters in BASIC input, a carry over from VIC-20
; and not used on C64, so safe for us to use, probably.
!addr ScanResult = $250 ; 8 bytes
; Operational Variables
!addr MaxKeyRollover = 3
!set MaxKeyRollover = 3
SCNKEY: