uxn/examples/app.hex.usm

45 lines
1.0 KiB
Plaintext

( app/hex )
&Sprite { pad 8 x 2 y 2 addr 2 color 1 }
;color 1 ;addr 2 ;i 1
|0100 @RESET
@loop
#00 ~i #0018 MUL2 #0008 ADD2 #0040 #01 ,font #00 ~i ADD2 ,draw-byte JSR
( incr ) ~i #01 ADD =i
,loop ~i #08 LTH JMP? POP2
BRK
|0200 @FRAME BRK
@draw-byte ( x y color addr )
( load ) =addr =color =dev/sprite.y =dev/sprite.x
,font #00 ~addr LDR #f0 AND #04 ROR #08 MUL ADD2 =dev/sprite.addr #01 =dev/sprite.color
~dev/sprite.x #0008 ADD2 =dev/sprite.x
,font #00 ~addr LDR #0f AND #08 MUL ADD2 =dev/sprite.addr #01 =dev/sprite.color
RTS
@font ( 0-F )
[
7c82 8282 8282 7c00 3010 1010 1010 1000
7c82 027c 8080 fe00 7c82 027c 0282 7c00
4282 82fe 0202 0200 fc82 807c 0282 7c00
7c82 80fc 8282 7c00 7c82 021e 0202 0200
7c82 827c 8282 7c00 7c82 827e 0202 0400
7c82 027e 8282 7e00 fc82 82fc 8282 fc00
7c82 8080 8082 7c00 fc82 8282 8282 fc00
7c82 80f0 8082 7c00 7c82 80f0 8080 8000
]
|d000 @ERROR BRK
|FF20 ;dev/sprite Sprite
|FFF0 .RESET .FRAME .ERROR ( vectors )
|FFF8 [ 13fd 1ef3 1bf2 ] ( palette )