prog8/examples/test.p8
2020-12-25 03:02:34 +01:00

39 lines
871 B
Lua

%import textio
%import diskio
%import floats
%import graphics
%import test_stack
%zeropage basicsafe
%option no_sysinit
main {
sub vpoke(ubyte bank, uword address, ubyte value) {
%asm {{
rts
}}
}
asmsub vpokeasm(uword address @R0, ubyte bank @A, ubyte value @Y) {
%asm {{
rts
}}
}
sub start () {
txt.chrout('!')
uword bank = 1
uword address = 1000
ubyte value = 123
bank++
test_stack.test()
vpoke(lsb(bank), address, value)
test_stack.test()
vpokeasm(address, lsb(bank), value) ; TODO generates params on stack if expression is used such as lsb(bank). CHECK STACK UNWINDING!!!
test_stack.test()
; TODO also see if we can do this via R0-R15 temp registers rather than using the estack???
}
}