address mode optimizations, updated credits
This commit is contained in:
1 parent
fcb74a9fae
commit
299e9cd524
3 files changed
+25
-15
No files matched your search
@@ -28,6 +28,7 @@
|
||||
|
||||
* Gábor Lénárt - for [his work](https://github.com/lgblgblgb/xemu) on XEMU MEGA65 emulator
|
||||
* Hernán Di Pietro - for [his work](https://github.com/hernandp/xemu) on XEMU MEGA65 emulator
|
||||
* Marco Baye - for [ACME](https://sourceforge.net/projects/acme-crossass) cross-assembler
|
||||
* Mads Nielsen - for the [Kick Assembler](http://www.theweb.dk/KickAssembler/Main.html#frontpage)
|
||||
* Simon Jameson - for his Kick Assembler [pseudocommands](https://github.com/smnjameson/M65_KickAsm_PseudoCommands) for MEGA65 CPU support
|
||||
|
||||
|
||||
@@ -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
|
||||
}
|
||||
@@ -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:
|
||||
|
||||
|
||||
Reference in new issue
Block a user