rendered paste body.nolist
#include "ion.inc"
#include "keys.inc"
;Variables
VarX = saferam3
VarY = saferam3+1
.list
#ifdef TI83P
.org progstart-2
.db $BB,$6D
#else
.org progstart
#endif
ret
jr nc,ProgramStart
.db "Test",0
ProgramStart:
bcall(_ClrLCDFull)
bcall(_IndicatorOff)
ld a,0
ld (VarX),a
ld (VarY),a
jr Display
MainLoop:
bcall(_GetCSC)
cp skUp
jr z,North
cp skDown
jr z,South
cp skLeft
jr z,East
cp skRight
jr z,West
cp skClear
ret z
jr MainLoop
Display:
ld b,8
ld a,(VarY)
ld l,a
ld a,(VarX)
ld ix,sprite
call ionPutSprite
call ionFastCopy
jr MainLoop
North:
ld a,(VarY)
cp 0
jr z,MainLoop
dec a
ld (VarY),a
jr Display
South:
ld a,(VarY)
cp 56
jr z,MainLoop
inc a
ld (VarY),a
jr Display
West:
ld a,(VarX)
cp 88
jr z,MainLoop
inc a
ld (VarX),a
jr Display
East:
ld a,(VarX)
cp 0
jr z,MainLoop
dec a
ld (VarX),a
jr Display
sprite:
.db %00111100
.db %01000010
.db %10001001
.db %10000101
.db %10000001
.db %10000001
.db %01000010
.db %00111100
.end
END