From a0d37340be81d0a9d271c4a07f1ab33f996e93f1 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sun, 8 Mar 2020 13:45:05 -0400 Subject: [PATCH] mist: meche age, imrpove a bit --- mist/Makefile | 1 + mist/graphics_meche/Makefile | 5 +- mist/graphics_meche/fort_view_n.png | Bin 0 -> 1073 bytes mist/graphics_meche/fort_view_s.png | Bin 0 -> 957 bytes mist/graphics_meche/meche_book_open.png | Bin 823 -> 6686 bytes mist/graphics_meche/meche_graphics.inc | 2 + mist/leveldata_meche.inc | 36 ++++-- mist/link_book_meche.s | 139 ++++++++++++++++++++++++ mist/meche.s | 39 ++++++- mist/zp.inc | 1 + 10 files changed, 210 insertions(+), 13 deletions(-) create mode 100644 mist/graphics_meche/fort_view_n.png create mode 100644 mist/graphics_meche/fort_view_s.png create mode 100644 mist/link_book_meche.s diff --git a/mist/Makefile b/mist/Makefile index fbf3ff65..4e731db7 100644 --- a/mist/Makefile +++ b/mist/Makefile @@ -67,6 +67,7 @@ meche.o: meche.s zp.inc hardware.inc \ graphics_meche/meche_graphics.inc \ common_sprites.inc \ leveldata_meche.inc \ + link_book_meche.s \ keyboard.s \ draw_pointer.s \ gr_copy.s audio.s text_print.s decompress_fast_v2.s diff --git a/mist/graphics_meche/Makefile b/mist/graphics_meche/Makefile index 5ce35f07..c41c4267 100644 --- a/mist/graphics_meche/Makefile +++ b/mist/graphics_meche/Makefile @@ -13,7 +13,8 @@ meche_graphics.inc: \ departure_e.lzsa \ arrival_w.lzsa \ entrance_e.lzsa entrance_s.lzsa entrance_n.lzsa entrance_w.lzsa \ - meche_book_closed.lzsa meche_book_open.lzsa + meche_book_closed.lzsa meche_book_open.lzsa \ + fort_view_n.lzsa fort_view_s.lzsa echo "departure_e_lzsa: .incbin \"departure_e.lzsa\"" > meche_graphics.inc echo "arrival_w_lzsa: .incbin \"arrival_w.lzsa\"" >> meche_graphics.inc echo "entrance_e_lzsa: .incbin \"entrance_e.lzsa\"" >> meche_graphics.inc @@ -22,6 +23,8 @@ meche_graphics.inc: \ echo "entrance_w_lzsa: .incbin \"entrance_w.lzsa\"" >> meche_graphics.inc echo "meche_book_closed_lzsa: .incbin \"meche_book_closed.lzsa\"" >> meche_graphics.inc echo "meche_book_open_lzsa: .incbin \"meche_book_open.lzsa\"" >> meche_graphics.inc + echo "fort_view_n_lzsa: .incbin \"fort_view_n.lzsa\"" >> meche_graphics.inc + echo "fort_view_s_lzsa: .incbin \"fort_view_s.lzsa\"" >> meche_graphics.inc %.gr: %.png $(PNG2GR) $< $@ diff --git a/mist/graphics_meche/fort_view_n.png b/mist/graphics_meche/fort_view_n.png new file mode 100644 index 0000000000000000000000000000000000000000..b8186e2f72ff687cab7d27ffa75c85869dae5517 GIT binary patch literal 1073 zcmV-11kU@3P)EX>4Tx04R}tkv&MmKpe$iQ%glE4i*t{$WWauii$XD6^c+H)C#RSm|XfHG-*gu zTpR`0f`cE6RRN)x5=kfJi*U4AUlFC!X50 z4bJ<-QC5;w;&b8=lP*a7$aTfzH_kLk-WaV#C4j3NMZqtkRU=q6&onSMx0ii6botEPx$x;T)#vvg=bb;{*sk16O*>U#SDrpQP7X zTI>ku*#<7ITbi;5ToSYQT z{m{ezU~&WhYCN5to&TWF6!kpN-Hmep(EtDc0001;kA{E%000SaNLh0L02Fip02N>X zmRIYN00007bV*G`2jl|?5f(3LxZuJ7000?uMObu0Z*6U5Zgc=ca%Ew3Wn>_CX>@2H zM@dakSAh-}0005pNklvqz@_kIC_&ss2wA_fOIHw3GnXJ1$;E* zA>yR5$Bv|hlS7>X)*XjM-N0u<3SpBWh>_=}ejkYFH-XF+1783{mPDt242WE~)?vus zc~GE_o&d%zLbo_=6m{fL%13NCz9nK<)U{m7I9ltnk{Ar#@=NTF(jL&TIafe!7Db>A zum!{uZ5)se@Keq>lkvm{PrkST5!H?coaYM2Fj0iHfIxbnVbQYzg!Kr7-x^pi0eVhT z&M7s3OZ5#y3GoOlO>qttDRGVJ@qyU`>Rt%IxJtFQfeOQaqXY5>XdZfjY_HpB1=L+< zn&&nU%j6T2a}OZ?kv~9=U{1Xv00@4k#DNU>Syo<#P-M^&&$7ge-BRLxOlxi*63A-= zNAu%hjx6a|W?O&33%RU7Ry`iEkmW`5o^L|n>a;QA2IOl%-XUks9P;Y4aeUQ4^%u_} z0&Ny8!w!LVO5U9OE7N7SLw2Zvx0^qu*9)=%)TVvF8X17~ZFCI;vKzR*-mY;iV6_jo rU}u0HDqFB~K<9ApM!yGa`zz%OLmY#`?ttMZ00000NkvXXu0mjflB?X6 literal 0 HcmV?d00001 diff --git a/mist/graphics_meche/fort_view_s.png b/mist/graphics_meche/fort_view_s.png new file mode 100644 index 0000000000000000000000000000000000000000..ae969b1e7705626011c17564fdeb12b73d426242 GIT binary patch literal 957 zcmV;u148_XP)EX>4Tx04R}tkv&MmKpe$iQ%glE4i*t{$WWauii$XD6^c+H)C#RSm|XfHG-*gu zTpR`0f`cE6RRN)x5=kfJi*U4AUlFC!X50 z4bJ<-QC5;w;&b8=lP*a7$aTfzH_kLk-WaV#C4j3NMZqtkRU=q6&onSMx0ii6botEPx$x;T)#vvg=bb;{*sk16O*>U#SDrpQP7X zTI>ku*#<7ITbi;5ToSYQT z{m{ezU~&WhYCN5to&TWF6!kpN-Hmep(EtDc0001;kA{E%000SaNLh0L02Fip02N>X zmRIYN00007bV*G`2jl|?5hnx#SspL|000?uMObu0Z*6U5Zgc=ca%Ew3Wn>_CX>@2H zM@dakSAh-}0004KNkl?Wfo8~0QP2@IQ@iz$Eyd+oPpaG_Yg&s z?~rv*HFfj9GR*6m2a|#Fl^cYK>mo)#rDU!SM4{S@gU6En#@Y_BplvkfW$~a}a&=B* zO9Gsfiu?_NGPf9Ou-=M6Fnzo1hN24MEH6R7ivVLIgJ9Yt-lGFsU@%En9new=f((sx z_t4J`pxmo5>}ZU5i0vSopq+59#VMGI$NmiD@%{j0@1){F=z|AwJO!GdmP|Menk^Hp z8KN77PS;nUj=;}+0ZNA`7{WCu06J`6G77tQu4kYeiarT^5t+&h;XYY6C-n=tPhv-l fC&+yeT`k}TQtE5+Y{MV500000NkvXXu0mjf>9VGE literal 0 HcmV?d00001 diff --git a/mist/graphics_meche/meche_book_open.png b/mist/graphics_meche/meche_book_open.png index 3f687bddb778a6c413d5a7a37bc952418c7f5475..9314f1863930bb59a87d297a71ea7fc34c315410 100644 GIT binary patch delta 6179 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 WF^|E(L#Y1%0000audio_link_noise + sta BTC_H + ldx #43 ; 45 pages long??? + jsr play_audio + + lda #3 + sta LOCATION + lda #DIRECTION_W + sta DIRECTION + + jsr change_location + 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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + +meche_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 + + + + + diff --git a/mist/meche.s b/mist/meche.s index be9fcf1a..91adc62d 100644 --- a/mist/meche.s +++ b/mist/meche.s @@ -52,6 +52,8 @@ not_first_time: lda #1 sta CURSOR_VISIBLE ; visible at first + lda #0 + sta ANIMATE_FRAME game_loop: @@ -74,6 +76,39 @@ game_loop: ; handle special-case forground logic ;==================================== + lda LOCATION + cmp #2 + bne nothing_special + + ; handle animated linking book + + lda ANIMATE_FRAME + asl + tay + lda meche_movie,Y + sta INL + lda meche_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: nothing_special: @@ -131,7 +166,7 @@ room_frame_no_oflo: ; linking books -; .include "link_book_mist.s" + .include "link_book_meche.s" .include "common_sprites.inc" @@ -142,8 +177,6 @@ room_frame_no_oflo: ;.align $100 -audio_red_page: -.incbin "audio/red_page.btc" audio_link_noise: .incbin "audio/link_noise.btc" diff --git a/mist/zp.inc b/mist/zp.inc index aa0a5907..6caaaf99 100644 --- a/mist/zp.inc +++ b/mist/zp.inc @@ -69,6 +69,7 @@ CLOCK_TOP = $8F CLOCK_MIDDLE = $90 CLOCK_BOTTOM = $91 CLOCK_LAST = $92 +ANIMATE_FRAME = $93 DISP_PAGE = $ED ; ALL DRAW_PAGE = $EE ; ALL