Credits animation - first try
This commit is contained in:
@@ -1,10 +1,10 @@
|
|||||||
dta $00,$00,$00,$00,$26,$27,$30,$2A
|
dta $00,$00,$00,$00,$26,$27,$30,$2A
|
||||||
dta $2B,$2A,$2B,$30,$24,$25,$48,$49
|
dta $2B,$2A,$2B,$30,$24,$25,$48,$49
|
||||||
dta $36,$37,$46,$47,$50,$51,$31,$00
|
dta $36,$37,$46,$47,$50,$51,$08,$09
|
||||||
dta $3A,$3B,$3C,$3D,$42,$43,$38,$39
|
dta $3A,$3B,$3C,$3D,$42,$43,$38,$39
|
||||||
dta $20,$21,$36,$37,$58,$00,$00,$00
|
dta $20,$21,$36,$37,$58,$00,$00,$00
|
||||||
dta $00,$00,$00,$00,$26,$27,$30,$2A
|
dta $00,$00,$00,$00,$26,$27,$30,$2A
|
||||||
dta $2B,$2A,$2B,$30,$24,$25,$48,$49
|
dta $2B,$2A,$2B,$30,$24,$25,$48,$49
|
||||||
dta $36,$37,$46,$47,$50,$51,$31,$00
|
dta $36,$37,$46,$47,$50,$51,$08,$09
|
||||||
dta $00,$00,$28,$29,$20,$21,$44,$45
|
dta $00,$00,$28,$29,$20,$21,$44,$45
|
||||||
dta $50,$51,$31,$00,$00,$00,$00,$00
|
dta $50,$51,$31,$00,$00,$00,$00,$00
|
||||||
+75
-1
@@ -24,6 +24,7 @@
|
|||||||
display = $a000
|
display = $a000
|
||||||
.zpvar temp .word = $80
|
.zpvar temp .word = $80
|
||||||
.zpvar temp2 .word
|
.zpvar temp2 .word
|
||||||
|
.zpvar VBItemp .word
|
||||||
.zpvar tempbyte .byte
|
.zpvar tempbyte .byte
|
||||||
.zpvar SyncByte .byte
|
.zpvar SyncByte .byte
|
||||||
.zpvar NTSCCounter .byte
|
.zpvar NTSCCounter .byte
|
||||||
@@ -134,10 +135,13 @@ dl_title
|
|||||||
.by $84 ; DLI7 - last clouds
|
.by $84 ; DLI7 - last clouds
|
||||||
:4 .by $05
|
:4 .by $05
|
||||||
.by $85 ; DLI8 - horizon
|
.by $85 ; DLI8 - horizon
|
||||||
:3 .by $85 ; DLI9 - fonts
|
.by $85 ; DLI9 - fonts
|
||||||
.by $45+$80
|
.by $45+$80
|
||||||
difficulty_text_DL
|
difficulty_text_DL
|
||||||
.wo difficulty_normal_text
|
.wo difficulty_normal_text
|
||||||
|
.by $45+$80
|
||||||
|
.wo credits_lines
|
||||||
|
.by $85
|
||||||
.by $41
|
.by $41
|
||||||
.wo dl_title
|
.wo dl_title
|
||||||
;---------------------------------------------------
|
;---------------------------------------------------
|
||||||
@@ -230,8 +234,14 @@ difficulty_normal_text
|
|||||||
difficulty_easy_text = difficulty_normal_text + 40
|
difficulty_easy_text = difficulty_normal_text + 40
|
||||||
credits_texts
|
credits_texts
|
||||||
icl 'art/credits.asm' ; 8 lines, mode 5
|
icl 'art/credits.asm' ; 8 lines, mode 5
|
||||||
|
number_of_credits = 4
|
||||||
credits_lines ; 2 lines for credits animations
|
credits_lines ; 2 lines for credits animations
|
||||||
:80 .by 0
|
:80 .by 0
|
||||||
|
.by 0 ; for second line animation
|
||||||
|
credit_nr ; number of credit to display (displayed)
|
||||||
|
.ds 1
|
||||||
|
credits_anim_counter ; counter for credits animation/display
|
||||||
|
.ds 1
|
||||||
;--------------------------------------------------
|
;--------------------------------------------------
|
||||||
.proc vint
|
.proc vint
|
||||||
;--------------------------------------------------
|
;--------------------------------------------------
|
||||||
@@ -292,6 +302,8 @@ titles_VBI
|
|||||||
sta PCOLR2
|
sta PCOLR2
|
||||||
sta PCOLR3
|
sta PCOLR3
|
||||||
;
|
;
|
||||||
|
jsr CreditsAnimate
|
||||||
|
;
|
||||||
jmp common_VBI
|
jmp common_VBI
|
||||||
gameover_VBI
|
gameover_VBI
|
||||||
; game over screen (StateFlag=3) - set DLI
|
; game over screen (StateFlag=3) - set DLI
|
||||||
@@ -1917,6 +1929,68 @@ ScoreReady
|
|||||||
rts
|
rts
|
||||||
.endp
|
.endp
|
||||||
;--------------------------------------------------
|
;--------------------------------------------------
|
||||||
|
.proc CreditsClear
|
||||||
|
;--------------------------------------------------
|
||||||
|
ldx #80
|
||||||
|
lda #0
|
||||||
|
@ sta credits_lines,x
|
||||||
|
dex
|
||||||
|
bpl @-
|
||||||
|
sta credit_nr
|
||||||
|
sta credits_anim_counter
|
||||||
|
rts
|
||||||
|
.endp
|
||||||
|
;--------------------------------------------------
|
||||||
|
.proc CreditsAnimate
|
||||||
|
;--------------------------------------------------
|
||||||
|
lda credits_anim_counter
|
||||||
|
cmp #40
|
||||||
|
bcs static_display
|
||||||
|
; lets animate
|
||||||
|
; first move existing characters
|
||||||
|
ldx #38
|
||||||
|
@ lda credits_lines,x
|
||||||
|
sta credits_lines+1,x
|
||||||
|
lda credits_lines+40,x
|
||||||
|
sta credits_lines+41,x
|
||||||
|
dex
|
||||||
|
bpl @-
|
||||||
|
; and now write new characters to screen
|
||||||
|
; credit text addres calculate
|
||||||
|
mwa #credits_texts VBItemp
|
||||||
|
ldx credit_nr
|
||||||
|
beq write_chars
|
||||||
|
@ adw VBItemp #80
|
||||||
|
dex
|
||||||
|
bne @-
|
||||||
|
write_chars
|
||||||
|
lda #39
|
||||||
|
sec
|
||||||
|
sbc credits_anim_counter
|
||||||
|
tay
|
||||||
|
lda (VBItemp),y
|
||||||
|
sta credits_lines
|
||||||
|
adw VBItemp #40
|
||||||
|
lda (VBItemp),y
|
||||||
|
sta credits_lines+40
|
||||||
|
|
||||||
|
static_display
|
||||||
|
inc credits_anim_counter
|
||||||
|
lda credits_anim_counter
|
||||||
|
cmp #200
|
||||||
|
bne no_next_credit
|
||||||
|
next_credit
|
||||||
|
inc credit_nr
|
||||||
|
lda credit_nr
|
||||||
|
cmp #number_of_credits
|
||||||
|
bne no_credits_loop
|
||||||
|
mva #0 credit_nr
|
||||||
|
no_credits_loop
|
||||||
|
mva #0 credits_anim_counter
|
||||||
|
no_next_credit
|
||||||
|
rts
|
||||||
|
.endp
|
||||||
|
;--------------------------------------------------
|
||||||
.proc ScoreClear
|
.proc ScoreClear
|
||||||
;--------------------------------------------------
|
;--------------------------------------------------
|
||||||
lda #"0"
|
lda #"0"
|
||||||
|
|||||||
BIN
Binary file not shown.
Reference in New Issue
Block a user