scroll left and right work in stdef and hidef adds octo test roms adds schip fonts to memory
84 lines
1.8 KiB
Plaintext
84 lines
1.8 KiB
Plaintext
###########################################
|
|
#
|
|
# Sprite scrolling demo:
|
|
#
|
|
# Draw a computer monitor with a scrolling
|
|
# image by using two copies of its sprites
|
|
# and adjusting an offset into that data
|
|
# before each draw.
|
|
#
|
|
###########################################
|
|
|
|
: main
|
|
# draw the background:
|
|
|
|
v0 := 16
|
|
v1 := 4
|
|
i := comp-LT
|
|
sprite v0 v1 11
|
|
v0 += 8
|
|
i := comp-T
|
|
sprite v0 v1 3
|
|
v0 += 8
|
|
sprite v0 v1 3
|
|
v0 += 8
|
|
i := comp-RT
|
|
sprite v0 v1 11
|
|
|
|
v0 := 16
|
|
v1 += 11
|
|
i := comp-LB
|
|
sprite v0 v1 15
|
|
v0 += 8
|
|
v1 += 7
|
|
i := comp-B
|
|
sprite v0 v1 8
|
|
v0 += 8
|
|
sprite v0 v1 8
|
|
v0 += 8
|
|
v1 += -7
|
|
i := comp-RB
|
|
sprite v0 v1 15
|
|
|
|
# main animation loop:
|
|
|
|
va := 24 # left x
|
|
vb := 32 # right x
|
|
vc := 7 # common y
|
|
v9 := 0 # scroll offset
|
|
v8 := 0b1111 # constant
|
|
draw-texture
|
|
loop
|
|
draw-texture
|
|
v9 += 1
|
|
v9 &= v8
|
|
draw-texture
|
|
|
|
vF := 4
|
|
delay := vF
|
|
loop
|
|
vF := delay
|
|
if vF != 0 then
|
|
again
|
|
again
|
|
|
|
: draw-texture
|
|
i := grenade-L
|
|
i += v9
|
|
sprite va vc 15
|
|
i := grenade-R
|
|
i += v9
|
|
sprite vb vc 15
|
|
;
|
|
|
|
: grenade-L 0x0F 0x30 0x7C 0x7C 0xF8 0xF4 0xE0 0xE8 0xF0 0xE8 0xE0 0x68 0x70 0x34 0x08 0x00
|
|
0x0F 0x30 0x7C 0x7C 0xF8 0xF4 0xE0 0xE8 0xF0 0xE8 0xE0 0x68 0x70 0x34 0x08 0x00
|
|
: grenade-R 0xF0 0x0C 0x46 0x66 0x33 0x13 0x0B 0x0B 0x1F 0x0F 0x0F 0x1E 0x1E 0x1C 0x30 0x00
|
|
0xF0 0x0C 0x46 0x66 0x33 0x13 0x0B 0x0B 0x1F 0x0F 0x0F 0x1E 0x1E 0x1C 0x30 0x00
|
|
: comp-LT 0x3F 0x3F 0x3F 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C
|
|
: comp-RT 0xFC 0xFC 0xFC 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C
|
|
: comp-T 0xFF 0xFF 0xFF
|
|
: comp-LB 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0x3F 0x3F 0x3F 0x00 0x07 0x1C 0x73 0x7F
|
|
: comp-RB 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0x3C 0xFC 0xFC 0xFC 0x00 0xE0 0xD8 0x26 0xFE
|
|
: comp-B 0xFF 0xFF 0xFF 0xFF 0x33 0xCC 0x33 0xFF
|