From fe665bab283c0c8c75e4d2de7d0075786bf88d17 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Wed, 15 Apr 2020 21:38:38 -0400 Subject: [PATCH] mist: animat the channelwood linking book --- mist/channel.s | 38 ++++++++- mist/link_book_channel.s | 164 +++++++++++++++++++-------------------- 2 files changed, 119 insertions(+), 83 deletions(-) diff --git a/mist/channel.s b/mist/channel.s index 740c22c3..3a68b89e 100644 --- a/mist/channel.s +++ b/mist/channel.s @@ -63,7 +63,42 @@ game_loop: ;==================================== lda LOCATION -; cmp #MECHE_OPEN_BOOK + cmp #CHANNEL_TREE_BOOK_OPEN + beq animate_channel_book + + jmp nothing_special + +animate_channel_book: + + ; handle animated linking book + + lda ANIMATE_FRAME + asl + tay + lda channel_movie,Y + sta INL + lda channel_movie+1,Y + sta INH + + lda #22 + sta XPOS + lda #12 + sta YPOS + + jsr put_sprite_crop + + lda FRAMEL + and #$f + bne done_animate_book + + inc ANIMATE_FRAME + lda ANIMATE_FRAME + cmp #11 + bne done_animate_book + lda #0 + sta ANIMATE_FRAME +done_animate_book: + jmp nothing_special nothing_special: @@ -212,3 +247,4 @@ exit_to_mist: ; linking books .include "link_book_channel.s" + diff --git a/mist/link_book_channel.s b/mist/link_book_channel.s index 4da382c3..0e65f748 100644 --- a/mist/link_book_channel.s +++ b/mist/link_book_channel.s @@ -42,110 +42,110 @@ channel_link_book: rts -meche_movie: - .word meche_sprite0,meche_sprite1,meche_sprite2 - .word meche_sprite3,meche_sprite4,meche_sprite5 - .word meche_sprite6,meche_sprite7,meche_sprite8 - .word meche_sprite9,meche_sprite10 +channel_movie: + .word channel_sprite0,channel_sprite1,channel_sprite2 + .word channel_sprite3,channel_sprite4,channel_sprite5 + .word channel_sprite6,channel_sprite7,channel_sprite8 + .word channel_sprite9,channel_sprite10 -meche_sprite0: +channel_sprite0: .byte 9,6 - .byte $77,$77,$77,$77,$77,$77,$55,$77,$77 - .byte $77,$77,$77,$77,$77,$47,$49,$49,$47 - .byte $57,$77,$77,$77,$77,$ff,$55,$88,$88 - .byte $05,$67,$00,$60,$60,$00,$67,$86,$60 - .byte $00,$00,$06,$06,$68,$66,$66,$68,$66 - .byte $00,$00,$00,$00,$00,$06,$66,$66,$66 + .byte $77,$77,$77,$7f,$77,$55,$77,$7f,$77 + .byte $77,$77,$77,$77,$57,$55,$57,$75,$77 + .byte $77,$ff,$55,$f7,$5f,$55,$ff,$ff,$57 + .byte $57,$ff,$55,$ff,$ff,$55,$55,$ff,$55 + .byte $55,$7f,$75,$77,$77,$55,$77,$77,$55 + .byte $55,$77,$77,$57,$57,$55,$77,$77,$75 -meche_sprite1: +channel_sprite1: .byte 9,6 - .byte $77,$77,$77,$47,$45,$45,$45,$74,$77 - .byte $77,$77,$74,$ff,$8f,$ff,$ff,$77,$77 - .byte $07,$07,$07,$ff,$08,$0f,$0f,$07,$07 - .byte $77,$77,$00,$67,$67,$60,$66,$66,$66 - .byte $66,$66,$86,$66,$66,$88,$66,$66,$66 - .byte $88,$66,$68,$66,$66,$66,$66,$66,$66 + .byte $77,$78,$88,$87,$88,$87,$78,$77,$77 + .byte $77,$77,$77,$78,$88,$87,$88,$78,$77 + .byte $55,$87,$88,$f8,$88,$88,$8f,$55,$ff + .byte $55,$f8,$58,$ff,$88,$88,$f8,$58,$ff + .byte $55,$7f,$55,$88,$55,$88,$7f,$55,$7f + .byte $55,$77,$77,$88,$55,$78,$77,$77,$77 -meche_sprite2: +channel_sprite2: .byte 9,6 - .byte $77,$47,$45,$45,$47,$47,$77,$77,$77 - .byte $74,$ff,$8f,$5f,$55,$77,$77,$77,$77 - .byte $70,$0f,$08,$f5,$08,$77,$77,$67,$67 - .byte $77,$77,$00,$67,$67,$66,$66,$66,$66 - .byte $77,$66,$66,$66,$66,$88,$66,$66,$66 - .byte $66,$66,$66,$66,$66,$88,$66,$66,$66 + .byte $87,$88,$87,$87,$87,$87,$87,$87,$87 + .byte $88,$88,$77,$78,$78,$88,$88,$78,$77 + .byte $8f,$88,$88,$8f,$ff,$55,$ff,$55,$ff + .byte $58,$88,$ff,$58,$88,$85,$ff,$55,$ff + .byte $55,$88,$8f,$55,$78,$88,$8f,$55,$7f + .byte $55,$88,$88,$55,$77,$78,$78,$55,$77 -meche_sprite3: +channel_sprite3: .byte 9,6 - .byte $55,$55,$55,$57,$77,$77,$77,$77,$77 - .byte $f5,$ff,$5f,$5f,$77,$77,$77,$77,$77 - .byte $88,$0f,$05,$f5,$77,$77,$77,$57,$57 - .byte $08,$70,$00,$57,$57,$55,$55,$65,$65 - .byte $57,$55,$55,$65,$65,$88,$66,$66,$66 - .byte $65,$66,$66,$66,$88,$88,$00,$66,$66 + .byte $87,$77,$77,$77,$77,$77,$77,$55,$55 + .byte $88,$88,$88,$87,$87,$77,$77,$55,$55 + .byte $ff,$58,$88,$88,$88,$88,$8f,$85,$ff + .byte $ff,$55,$ff,$58,$88,$88,$88,$88,$f8 + .byte $88,$55,$77,$55,$77,$78,$78,$55,$77 + .byte $88,$85,$77,$55,$77,$77,$77,$55,$77 -meche_sprite4: +channel_sprite4: .byte 9,6 - .byte $00,$70,$77,$77,$77,$77,$77,$77,$77 - .byte $00,$77,$77,$77,$77,$77,$77,$77,$dd - .byte $00,$77,$77,$77,$77,$77,$77,$55,$dd - .byte $57,$57,$57,$57,$57,$76,$57,$66,$6d - .byte $66,$60,$66,$60,$66,$66,$88,$55,$55 - .byte $66,$66,$66,$66,$66,$66,$88,$66,$66 + .byte $78,$78,$78,$78,$78,$88,$88,$88,$88 + .byte $78,$58,$78,$58,$78,$58,$78,$58,$58 + .byte $ff,$55,$ff,$55,$ff,$55,$ff,$ff,$55 + .byte $ff,$55,$f5,$55,$ff,$55,$ff,$ff,$55 + .byte $7f,$55,$7f,$55,$7f,$55,$7f,$7f,$55 + .byte $77,$55,$77,$55,$77,$55,$77,$77,$55 -meche_sprite5: +channel_sprite5: .byte 9,6 - .byte $77,$77,$77,$77,$77,$77,$77,$77,$77 - .byte $77,$77,$77,$77,$77,$d7,$dd,$dd,$77 - .byte $77,$77,$77,$55,$57,$dd,$dd,$dd,$d7 - .byte $77,$67,$67,$55,$67,$dd,$dd,$dd,$dd - .byte $66,$66,$66,$65,$66,$6d,$6d,$6d,$66 - .byte $56,$56,$56,$56,$56,$56,$66,$66,$66 + .byte $55,$55,$00,$00,$05,$50,$55,$00,$00 + .byte $05,$05,$05,$00,$50,$05,$55,$00,$70 + .byte $50,$00,$55,$00,$55,$ff,$55,$00,$ff + .byte $55,$00,$55,$00,$55,$ff,$55,$00,$ff + .byte $55,$00,$55,$00,$55,$77,$55,$00,$77 + .byte $55,$00,$55,$00,$55,$77,$55,$00,$77 -meche_sprite6: +channel_sprite6: .byte 9,6 - .byte $77,$77,$77,$77,$77,$77,$77,$77,$77 - .byte $77,$77,$77,$77,$d7,$77,$77,$77,$77 - .byte $77,$77,$77,$77,$dd,$dd,$77,$77,$77 - .byte $77,$77,$88,$dd,$dd,$dd,$67,$66,$66 - .byte $77,$67,$88,$dd,$dd,$dd,$66,$66,$66 - .byte $56,$65,$88,$dd,$dd,$dd,$66,$66,$66 + .byte $00,$00,$00,$50,$00,$00,$00,$00,$00 + .byte $00,$00,$00,$05,$00,$55,$00,$00,$00 + .byte $50,$00,$00,$00,$00,$f5,$55,$00,$00 + .byte $55,$ff,$55,$f0,$00,$ff,$55,$ff,$00 + .byte $55,$7f,$55,$7f,$00,$7f,$55,$ff,$00 + .byte $55,$77,$55,$77,$00,$77,$55,$77,$00 -meche_sprite7: +channel_sprite7: .byte 9,6 - .byte $77,$77,$77,$77,$77,$87,$87,$88,$78 - .byte $77,$77,$77,$77,$88,$d8,$77,$77,$77 - .byte $77,$77,$77,$77,$88,$dd,$77,$88,$87 - .byte $77,$77,$77,$67,$88,$dd,$dd,$88,$88 - .byte $67,$67,$66,$66,$88,$dd,$dd,$dd,$dd - .byte $66,$62,$22,$22,$88,$dd,$dd,$dd,$dd + .byte $55,$75,$00,$50,$00,$00,$55,$00,$00 + .byte $88,$87,$00,$55,$77,$57,$55,$00,$87 + .byte $88,$88,$00,$75,$77,$57,$55,$00,$88 + .byte $08,$58,$00,$78,$57,$87,$85,$80,$58 + .byte $77,$50,$00,$70,$55,$77,$55,$00,$88 + .byte $77,$55,$00,$77,$55,$77,$55,$00,$88 -meche_sprite8: +channel_sprite8: .byte 9,6 - .byte $77,$77,$77,$77,$77,$77,$77,$77,$87 - .byte $77,$77,$77,$77,$77,$88,$77,$88,$77 - .byte $77,$77,$77,$77,$87,$88,$87,$88,$87 - .byte $77,$77,$77,$77,$88,$88,$88,$88,$88 - .byte $67,$67,$26,$26,$88,$88,$88,$88,$88 - .byte $62,$62,$62,$62,$68,$88,$88,$88,$88 + .byte $88,$8f,$8f,$8f,$ff,$00,$00,$ff,$ff + .byte $88,$88,$ff,$55,$0f,$00,$00,$00,$ff + .byte $88,$88,$5f,$55,$5f,$00,$ff,$f0,$f0 + .byte $88,$88,$ff,$55,$ff,$00,$ff,$55,$ff + .byte $88,$88,$7f,$55,$7f,$00,$7f,$55,$ff + .byte $88,$88,$87,$85,$77,$00,$77,$55,$77 -meche_sprite9: +channel_sprite9: .byte 9,6 - .byte $77,$77,$77,$77,$77,$77,$88,$88,$88 - .byte $77,$77,$77,$77,$77,$88,$88,$88,$88 - .byte $77,$77,$77,$77,$87,$88,$88,$88,$88 - .byte $77,$77,$77,$87,$88,$88,$88,$88,$88 - .byte $26,$26,$26,$88,$88,$88,$88,$88,$88 - .byte $62,$62,$62,$88,$88,$88,$88,$88,$88 + .byte $00,$05,$55,$00,$05,$00,$55,$00,$00 + .byte $00,$55,$55,$ff,$55,$00,$55,$55,$00 + .byte $00,$f0,$00,$ff,$55,$00,$55,$55,$00 + .byte $00,$05,$00,$05,$55,$00,$f5,$f5,$00 + .byte $00,$7f,$00,$ff,$55,$00,$ff,$ff,$00 + .byte $00,$77,$00,$77,$55,$00,$77,$77,$00 -meche_sprite10: +channel_sprite10: .byte 9,6 - .byte $77,$77,$77,$77,$77,$77,$77,$47,$77 - .byte $77,$77,$77,$77,$77,$74,$f4,$f4,$88 - .byte $77,$77,$77,$77,$57,$57,$ff,$ff,$88 - .byte $77,$77,$55,$55,$77,$77,$77,$87,$88 - .byte $62,$62,$62,$62,$62,$62,$62,$88,$88 - .byte $66,$66,$66,$66,$66,$66,$66,$88,$88 + .byte $88,$55,$88,$55,$00,$88,$77,$77,$77 + .byte $88,$55,$88,$55,$00,$88,$77,$77,$77 + .byte $88,$55,$88,$55,$00,$88,$77,$77,$77 + .byte $68,$66,$88,$26,$00,$88,$66,$66,$66 + .byte $26,$62,$68,$66,$00,$68,$66,$66,$66 + .byte $66,$62,$26,$26,$00,$66,$66,$66,$66