Second Napalm test

Only display and clear from screen.
This commit is contained in:
Pecusx
2022-07-04 14:14:23 +02:00
parent 85d0fb4778
commit af4eb201b2
2 changed files with 30 additions and 15 deletions
BIN
View File
Binary file not shown.
+30 -15
View File
@@ -291,27 +291,42 @@ NoLowerCircle
.endp .endp
; ------------------------ ; ------------------------
.proc xnapalm .proc xnapalm
; adw mountaintable xdraw temp mwa xdraw xcircle ; store hitpoint for future repeats
; ldy #0 ldy #30 ; repeat 30 times
; sty ydraw+1 sty magic
; lda (temp),y ; ground height in hit point RepeatNapalm ; external loop (for fire animation)
; sta ydraw mwa xcircle xdraw
sbw xdraw #4 ; char centering sbw xdraw #(1*8) ; 8 characters on left side hit point
lda #0 ldy #0
sta modify sty magic+1
@ RepeatFlame ; internal loop (draw flames)
ldy #0
adw xdraw #mountaintable temp
sty ydraw+1
lda (temp),y
sta ydraw
sbw xdraw #4
; draw flame symbol
lda magic ; if last repeat - clear flames
beq LastNapalmRepeat
lda random lda random
and #%00000110 and #%00000110
clc clc
adc #$46 adc #$46
bne PutFlameChar
LastNapalmRepeat
lda #$4e ; clear flame symbol
PutFlameChar
sta CharCode sta CharCode
jsr TypeChar jsr TypeChar
wait adw xdraw #4
inc modify adw xdraw #1 ; next char 1 pixels to right
bpl @- inc magic+1
lda #$4e lda magic+1
sta CharCode cmp #17 ; 8 chars on left, 8 chars on right and 1 in center
jsr TypeChar bne RepeatFlame
dec magic
bpl RepeatNapalm
rts rts
.endp .endp