Added VERA peek() and poke() to the cx16 library.
They simplify C programs' direct access to VERA's internal address space.
This commit is contained in:
21
libsrc/cx16/vpoke.s
Normal file
21
libsrc/cx16/vpoke.s
Normal file
@@ -0,0 +1,21 @@
|
||||
;
|
||||
; 2019-10-22, Greg King
|
||||
;
|
||||
; void fastcall vpoke (unsigned char data, unsigned long addr);
|
||||
; /* Put a byte into a location in VERA's internal address space.
|
||||
; ** (addr is second instead of first for the sake of code efficiency.)
|
||||
; */
|
||||
;
|
||||
|
||||
.export _vpoke
|
||||
|
||||
.import vset, popa
|
||||
.include "cx16.inc"
|
||||
|
||||
|
||||
_vpoke: php ; (vset blocks interrupts)
|
||||
jsr vset ; put VERA's address
|
||||
jsr popa
|
||||
sta VERA::DATA0 ; write data to VERA port zero
|
||||
plp
|
||||
rts
|
||||
Reference in New Issue
Block a user