From 3ba8d17c3f65588d261d0565a88fd9e7f8d5ba77 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 17 Mar 2025 10:03:13 +0100 Subject: [PATCH] Prepare for birds and clouds --- lumber.asm | 153 ++++++++++++++++++++++++++++++++--------------------- lumber.xex | Bin 24588 -> 24547 bytes 2 files changed, 94 insertions(+), 59 deletions(-) diff --git a/lumber.asm b/lumber.asm index f4c4f4b..dde04bc 100644 --- a/lumber.asm +++ b/lumber.asm @@ -40,6 +40,29 @@ display = $a000 .zpvar DLI_A DLI_X dliCount .byte .zpvar RMT_blocked noSfx SFX_EFFECT .byte .zpvar AutoPlay .byte ; Auto Play flag ($80 - auto) + .zpvar HPOSP0_d .byte ; PMG registers for sprites under horizon + .zpvar HPOSP1_d .byte ; PMG registers for sprites under horizon + .zpvar HPOSP2_d .byte ; PMG registers for sprites under horizon + .zpvar HPOSP3_d .byte ; PMG registers for sprites under horizon + .zpvar HPOSM0_d .byte ; PMG registers for sprites under horizon + .zpvar HPOSM1_d .byte ; PMG registers for sprites under horizon + .zpvar HPOSM2_d .byte ; PMG registers for sprites under horizon + .zpvar HPOSM3_d .byte ; PMG registers for sprites under horizon + .zpvar SIZEP0_d .byte ; PMG registers for sprites under horizon + .zpvar SIZEP1_d .byte ; PMG registers for sprites under horizon + .zpvar SIZEP2_d .byte ; PMG registers for sprites under horizon + .zpvar SIZEP3_d .byte ; PMG registers for sprites under horizon + .zpvar SIZEM_d .byte ; PMG registers for sprites under horizon + .zpvar GRAFP0_d .byte ; PMG registers for sprites under horizon + .zpvar GRAFP1_d .byte ; PMG registers for sprites under horizon + .zpvar GRAFP2_d .byte ; PMG registers for sprites under horizon + .zpvar GRAFP3_d .byte ; PMG registers for sprites under horizon + .zpvar GRAFM_d .byte ; PMG registers for sprites under horizon + .zpvar COLPM0_d .byte ; PMG registers for sprites under horizon + .zpvar COLPM1_d .byte ; PMG registers for sprites under horizon + .zpvar COLPM2_d .byte ; PMG registers for sprites under horizon + .zpvar COLPM3_d .byte ; PMG registers for sprites under horizon + RMT_zpvars = AutoPlay+1 ; POZOR!!! RMT vars go here ;--------------------------------------------------- org $2000 @@ -194,6 +217,17 @@ DLI2 sta WSYNC sta WSYNC mva #$c8 COLBAK ; green + ; under horizon + ; PMG colors, horizontal coordinates and sizes + txa + pha + ldx #$15 +@ lda HPOSP0_d,x + sta HPOSP0,x + dex + bpl @- + pla + tax inc SyncByte pla rti @@ -658,8 +692,9 @@ no_branch_l ; hide P/M on right side of screen ;-------------------------------------------------- lda #$e0 - ldx #$07 ; 8 registers. from HPOSP0 to HPOSM3 -@ sta HPOSP0,x + ldx #$07 ; 8 registers. from HPOSP0_d to HPOSM3_d +@ sta HPOSP0_d,x + sta HPOSP0,x dex bpl @- rts @@ -677,20 +712,20 @@ no_branch_l sta PMmemory+$180+HoffsetP2,x dex bpl @- - mva #1 SIZEP2 - sta SIZEP3 + mva #1 SIZEP2_d + sta SIZEP3_d lda #%01011111 - sta SIZEM - mva #$22 PCOLR2 - mva #$24 PCOLR3 + sta SIZEM_d + mva #$22 COLPM2_d + mva #$24 COLPM3_d ; Lumberjack hand ldx #datalinesP0-1 @ lda P0_data,x sta PMmemory+$200+HoffsetP0,x dex bpl @- - mva #0 SIZEP0 - mva #$2a PCOLR0 + mva #0 SIZEP0_d + mva #$2a COLPM0_d ; Lumberjack face ldx #datalinesM0-1 @ lda PMmemory+$180+HoffsetM0,x @@ -705,14 +740,14 @@ no_branch_l sta PMmemory+$180+HoffsetM1,x dex bpl @- - mva #$2a PCOLR1 + mva #$2a COLPM1_d ; Lumberjack both hands ldx #datalinesP1-1 @ lda P1_data,x sta PMmemory+$280+HoffsetP1,x dex bpl @- - mva #1 SIZEP1 + mva #1 SIZEP1_d rts ; Lumberjack shirt data P2_data @@ -767,79 +802,79 @@ datalinesP1=5 ;-------------------------------------------------- .proc SetPMl1 ;-------------------------------------------------- - mva #$4f HPOSP2 - sta HPOSP3 - mva #$5f HPOSM2 - sta HPOSM3 - mva #$4c HPOSP0 - mva #$54 HPOSM0 - mva #$4c HPOSM1 - mva #$e0 HPOSP1 ; hide + mva #$4f HPOSP2_d + sta HPOSP3_d + mva #$5f HPOSM2_d + sta HPOSM3_d + mva #$4c HPOSP0_d + mva #$54 HPOSM0_d + mva #$4c HPOSM1_d + mva #$e0 HPOSP1_d ; hide rts .endp ;-------------------------------------------------- .proc SetPMr1 ;-------------------------------------------------- - mva #$9f HPOSP2 - sta HPOSP3 - mva #$af HPOSM2 - sta HPOSM3 - mva #$af HPOSP0 - mva #$a4 HPOSM0 - mva #$ac HPOSM1 - mva #$e0 HPOSP1 ; hide + mva #$9f HPOSP2_d + sta HPOSP3_d + mva #$af HPOSM2_d + sta HPOSM3_d + mva #$af HPOSP0_d + mva #$a4 HPOSM0_d + mva #$ac HPOSM1_d + mva #$e0 HPOSP1_d ; hide rts .endp ;-------------------------------------------------- .proc SetPMl2 ;-------------------------------------------------- - mva #$4f HPOSP2 - sta HPOSP3 - mva #$5f HPOSM2 - sta HPOSM3 - mva #$e0 HPOSP0 ; hide - mva #$55 HPOSM0 - mva #$e0 HPOSM1 ; hide - mva #$50 HPOSP1 + mva #$4f HPOSP2_d + sta HPOSP3_d + mva #$5f HPOSM2_d + sta HPOSM3_d + mva #$e0 HPOSP0_d ; hide + mva #$55 HPOSM0_d + mva #$e0 HPOSM1_d ; hide + mva #$50 HPOSP1_d rts .endp ;-------------------------------------------------- .proc SetPMr2 ;-------------------------------------------------- - mva #$9f HPOSP2 - sta HPOSP3 - mva #$af HPOSM2 - sta HPOSM3 - mva #$e0 HPOSP0 ; hide - mva #$a3 HPOSM0 - mva #$e0 HPOSM1 ; hide - mva #$a2 HPOSP1 + mva #$9f HPOSP2_d + sta HPOSP3_d + mva #$af HPOSM2_d + sta HPOSM3_d + mva #$e0 HPOSP0_d ; hide + mva #$a3 HPOSM0_d + mva #$e0 HPOSM1_d ; hide + mva #$a2 HPOSP1_d rts .endp ;-------------------------------------------------- .proc SetPMl3 ;-------------------------------------------------- - mva #$4f HPOSP2 - sta HPOSP3 - mva #$5f HPOSM2 - sta HPOSM3 - mva #$e0 HPOSP0 ; hide - mva #$54 HPOSM0 - mva #$56 HPOSM1 - mva #$5b HPOSP1 + mva #$4f HPOSP2_d + sta HPOSP3_d + mva #$5f HPOSM2_d + sta HPOSM3_d + mva #$e0 HPOSP0_d ; hide + mva #$54 HPOSM0_d + mva #$56 HPOSM1_d + mva #$5b HPOSP1_d rts .endp ;-------------------------------------------------- .proc SetPMr3 ;-------------------------------------------------- - mva #$9f HPOSP2 - sta HPOSP3 - mva #$af HPOSM2 - sta HPOSM3 - mva #$e0 HPOSP0 ; hide - mva #$a4 HPOSM0 - mva #$a4 HPOSM1 - mva #$97 HPOSP1 + mva #$9f HPOSP2_d + sta HPOSP3_d + mva #$af HPOSM2_d + sta HPOSM3_d + mva #$e0 HPOSP0_d ; hide + mva #$a4 HPOSM0_d + mva #$a4 HPOSM1_d + mva #$97 HPOSP1_d rts .endp ;-------------------------------------------------- diff --git a/lumber.xex b/lumber.xex index 21954ed4de7c3803f1107778083ee8b66f14fb15..2d1843d80aeebfe96deff80eaaf57a0a13c012a7 100644 GIT binary patch delta 2957 zcmbVOdu&rx81L;m7{hH{_bM9;XFQY<11cq9h%itTv^?e*%3$;kP&VXYh`PTu})`Oq!7>hC8C(0RBse5-=go8$&W#qVqewr*PYj1ZdiO@Avzj zzw_Om@ARG(ejgCNI^_^%oILGtESh;9NBY!JeInXQ&h_awI!gN7o3Aa8?9(P(-$x&j zoLW=0Dri-*zUHyq?&aa4Q~g1UHfaB+DJqxLtXwfb(6UxE;-eOngV9I}9nbEYFhfUM z(3V#AaK-1o)B;~r-KtE{Dh2(#V%PNV-8WmPKmsB&QDmj2Txgds)GYND;B&oNhP$dQ zUYb=agyPh3`gV1^UZCb`nWPW(<49NB#J!~zM1;{vjN1K*1M9P)+#;m_>)EPR8;4H6 z@7~si4!sB0yWsV92LAj(5*T=wfxFtgaJv(;k;k+qVhRv*DRV@#SY#t61NSgLRL>&c z1syCe8fjzK|Gd;n0;rCt720iBBCrCUnbaZ`VASSAdogvAE_B(8sf7f97#biVok>2T zd!^|vI$xUM0^3p-eOfAWp>O?2Cn$>;&_V{8PGME&qa_KNgzSamAN(b^pOm$jKG%r~Z#u#L+m=1u7( zJP7kC-el6tQZm+X*+lx~^o-AQD^q)4Frbv~CXtT6YVwKNoD|lLJX&JmcXHXpdKZI| z7k)FhGWC0l0o`Z6m-7ILw6$C|QD4iTJgxc;91 z@8`HdBJFA}o2aj0P;%Obqn_xuH+g3hQ%ZP)%O>VK(o48+=6)Chy&~I(6W@hw!+ip_ z95u1gqfker_a_))3t*a+v3WAlSig55v1mN*VUJ3I{MUL{nNA|Ts-VwCjefp&@reQY zMfH;%(DI}~0`QLdx1J1j(CN}{E6kgHWIxRQ12C##4xwuVWpuJ>1iRsf=rU%TB2qd~ zyPUsap?5z&0*K+f*d%{&^R!r{Klt0USQT6=2JJV&`Up8nJtRV>5`|7DUxsb575<=S z>Y#lXa(zx`kz?Vk*p-U%RsP@=aJdBrH!8|s@ds}(3G~MS*$86XMId3Zt}Yrie)6Ra z)n0Otd2e!7+f;eLo-C7+7)a9nvJt~>$Cqo6#VP_8z4UIk?xD6fKYO{ynT z9^uL`Q<^=!Ov{q41J?~>xk6G<9RQUmSgaPoBG}bIwpPR*D&z1z<5AD#9YQhgW3;i}0X*L=0!dig0k)1uH8? zdYsL6Y2&T0%-j^law46{4K>_V1wOZASWeQZnAjG;D&91f{A%^LOvIw8ZOkfa%0=f#uc zr@Q{p$;y$BZJObAjI9-i3Rze+6IOZ>d&k*d2_OfCGnkT(B?ngQSjxvr9+vD_$;DD0 zhEuUc&r`B5!of8wevAImE#+bn&S&goI;!6eSvpsWO5Vjvn>JpVa8Z?4dvYfh2eg?= fr&X^&QMt)8M;MSl@yxLelm1-!f@iVyyO#d}XgJXL delta 3013 zcmbVOdu$X%7{9$xagy&)3y|z98J)pH5krucWQ7MQRV{D7cwm0n6 zKE_xUL;T~EoSb2h6(7+^%*6^q*d`_u_(u~ZjhfO#Y?j1?XhQIt+qrh{T4KZHvNPXr ze)Bzd=bPWZlllgv&%Vl&wtV?@US9RmTR7Hl+%U;;$s))=&e>1XyX&s;lI=hf3&tu zU&NM4<`vz|%!~eCTdAamWlo7`-!>FTiuQ9uol=P}^|1{9^7e!;PBs_3F{YXOjVyDH z@c_$I`_Tm)>q=1kfi@5~Ve|_|N=UE3=1TByo?eN~9K*?`q0?{rceJB--+<>h_|p*% z4!o5DwjJi6+^)bdrn5=tbS8C5pwr7YqJ>8=c`@lj)JK}4MSjPM3w1M^&Q$xmUw9?DfR+4-%Bfq z$BT>*S`bESR12!)kWJnsJ;*B%Ys{gFemMp_TA=^^$GKW&jut%_L z)ql={rda)rLP64OqmXT(Z{tv^+4~FqUe({5=EET&+d_Y3q7PFJ{r{?8n`VBqkZmd0 zGSPgUVA-nws0CS>FBj{|l&Zf=u#;tI5wa}>`#F?ahTVc?tA5aeEFZRu^?QE%j|oE3 z>{cP$La*mgs@eMs{a)3V(|kA}WLxMjP4r>Ppme$u5A7b;kOB zgbr5@t|M5vj(BqGiOZapbla${@#j z=eM}Y&h^pEcpZ*xU(d0q6z&}i_rzC()o%0wmWO*|y+#gm(dlY$LhkvPFBYlYGWC(m z&f%_Dm$3%cSMz%fmM?d?UGO@=TE)PIV7&~J za;%qPQik;sOiD3au^r|tJ?AQ1in9~LnUNk+f@Qe-A)?I=F3$CZ*;4(e(=0^SG+%I) VG@=~}u5zL9`z2a5=yRTJ{SUDonX&)?