From 4cc73d4ab4bd26aa1a3a16b7013e65e6cd3811e8 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sat, 15 Mar 2025 22:18:24 +0100 Subject: [PATCH] Faster, faster... --- lumber.asm | 28 ++++++++++++++++++++++------ lumber.xex | Bin 24562 -> 24588 bytes 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/lumber.asm b/lumber.asm index 6b15102..f4c4f4b 100644 --- a/lumber.asm +++ b/lumber.asm @@ -9,7 +9,7 @@ ;--------------------------------------------------- .macro build - dta d"0.01" ; number of this build (4 bytes) + dta d"0.20" ; number of this build (4 bytes) .endm .macro RMTSong @@ -30,6 +30,7 @@ display = $a000 .zpvar PowerValue .byte ; power: 0 - 48 .zpvar PowerTimer .byte .zpvar PowerDownSpeed .byte + .zpvar PowerSpeedIndex .byte .zpvar LevelValue .byte .zpvar LumberjackDir .byte ; 2 - on left , 1 - on right .zpvar PaddleState .byte @@ -882,10 +883,15 @@ level sta score+3 inc score+2 lda score+2 + cmp #"5" + bne no_speed_power + jsr PowerSpeedUP ; every 50pts. +no_speed_power cmp #"9"+1 ; 9+1 character code bne ScoreReady lda #"0" ; 0 character code sta score+2 + jsr PowerSpeedUP ; every 50pts. jsr LevelUp ; every 100pts. inc score+1 lda score+1 @@ -936,6 +942,8 @@ ScoreReady ;-------------------------------------------------- ; set level to 1 and PowerDownSpeed to ?? mvx #1 LevelValue + dex + stx PowerSpeedIndex lda PowerSpeedTable,x sta PowerDownSpeed jsr LevelToScreen @@ -950,10 +958,16 @@ ScoreReady bne not_max_lev mva #9 LevelValue not_max_lev - tax + jsr LevelToScreen + rts +.endp +;-------------------------------------------------- +.proc PowerSpeedUP +;-------------------------------------------------- + inc PowerSpeedIndex + ldx PowerSpeedIndex lda PowerSpeedTable,x sta PowerDownSpeed - jsr LevelToScreen rts .endp ;-------------------------------------------------- @@ -1356,10 +1370,12 @@ branch_addr_tableH .by >branch0 .by >branch1 .by >branch2 -; Level to power speed table +; power speed table - every 50pts. PowerSpeedTable - .by 12,11,10,9,8,7,6,5,4,3 - ;.by 20,20,18,16,14,12,11,10,9,8 + ; in original game double speed after 400pts. + ; 000,050,100,150,200,250,300,350,400,450,500,550,600,650,700,750 + .by 011,010,010,009,008,007,007,006,005,005,004,004,003,003,002,002,1,1,1 + ;-------------------------------- PowerChar0 = $07 ; power bar first (0) character diff --git a/lumber.xex b/lumber.xex index b7d15bd98b692ccf00b19ad9a8e0d24fd5ca3871..21954ed4de7c3803f1107778083ee8b66f14fb15 100644 GIT binary patch delta 2339 zcmbtWTWk|Y6!rQ^5*{gOrG&Q9ga$;4OIrwp(mYIPfRsQX4Fp{5Y=O4C=^s>;>fp(& zlh_-{i~;ch0@STE5|IiBBt9Y#B8cT{MET@{N|i+`6d6=0s?=a+yt6R2v6NEF^6ou* z=iakt&hGWo>q_E=^6Qn^%7)8VXS-WgqzsK#+#aAlV-O91C(uZm*-Qn{(O5F$CRvp1 z-0{a+BSp*7DKcHJrn>{CLKmh}#xVYSV|!bQ#V-1WUVfj{>1FrHUo0ifKn7S}k`f4b zgh1mF@VJjSz%mFPA0|G2jNu<83i>O_!wDG6NjX@L&R0^Mat(KO80??l-4ZL zSTVa&iv?L_KM~g>QKF!PO8krr$tTmpQ-01PvsJ9JOMWBb@m!Zk?jFA77-J)m*(TCh zF?(guf-Ewd#r0s6I60YDDAUSQ@|6jQRd&gBHakh0PM(ub<~5YT*So7_akm$A{!YY} z3^^5c7dQTYDp=ya!XWJhWHyOdQlYDu%xaM(`D2X*mGDPoN(T8_l(qNdfQTh!4ss}e zOLmAX$sao{=%qg*+))3`AZtZgo6MIYmXzt{P(GOw%Dlt+myiYx7aC+&LFYpvmSp(8 zxbswGD6K+CgRCqdvtGoK3>%8cw23UqAge6MQelO-{^A8PHG_o2GJ8+^NUc(@tiLy4CFGMUUvynsjWJ)OW(jZ0B6dOb>=)6zFk_`KcJ5NOh z$sqhx`c{#T*fVU}FL`k6sFA?tw&1K9%}AI^W)Xk9*c`x%gC8ivSPiaYzZZfnb5rOz zo5Cjn<%0~&(15?6k25wn2KY#0^W*aLuO^k+C8Sbc3C9C)Bmm8~s0-YK<{bJiLj#bV zgPRzH{7v!dJ(c?QrRP1PZSeG#rFSbQ)bolKzpD+6`ZY8N&OkLCH{xbFb(1m_&&5N( zSQqipP}Ph{sNRlMy4fgY6BVBe^?2uNC^}k?pM~b;POsJD`Qf@6j$W(R5IpO+7)|!w zxp9_GfMXDx!8^mXcH&TYd0k=Rt$sS8jyJ=RW@viYZL}fa$LVmZoBe&zaeeQ56|EXw zFw*bL)Pmn|Pw)F)9qB4~gk!xQwgc@{BOG8iWuP&X`BzmOPKV+k9e*xsY^*3RFPrA` fc|9Jt+vRdP6-CKfA0In-v$JMqA3A?`UO4<5h*w?4 delta 2327 zcmbtWZD>gaq22KtIm&TwChK#bF*4E+x25+Hodw{>*w}kpkqq9 zoSvIB>4k2miXwu@F6;~oQ|Z7TMUl1axxn|^v5m()3OvMmAa1(1xlqQ1tU@{&)f@a|tG?3DQfvL>ZN1J9%qS?;06-Sh%poc65OED$Oxew$)G&xhX)Pj+ z6|*a~T98$Co46i{5(OnyvWAf%xn%lz%J(^BJ`$_!lAnoqKHDXdy@$gbV{9Zc`$ZZn zX0HrckVU3fTn|NwlaqOdGHpC1SDBz#WtZGzvy-IhSmHjzAUpHObct9}p}UaGyCO^S$9oo3#2=9*8RVcSYwyWP5lhOP;!y6E z91>ZQKR&Ubr~Zg=L;XL4>=I>dG9QXqQl^JPxnznc^E&HaL>i>$8|2fx&Yz1|lHrTO z&P$P@xC%uLvOSN?UJ*+&ykAJBU1UiH*^(UuVo8}}9Ln93 zu*i}OGH5{-nLZXghe6&EWoK?Dql`M8KB8BP>-UWyEo zLHMckts(2#Gi=%~dGOsgMiQI*Lsg}kku;U`I{tXEIe<5Y)+#zyLwnfo^-${yj3(F= zz5pm6WZ($`bt8P7vB44NBaO|ETa_RGtGxOqsn)l{`5>GOLbI0EvM>n26ka{BrZ?d` zTCE@0e9b-G4zKiWzF)ndUQ@Khbe)Dq!30!O2_s>aQx_>ii60kH(x%TkQ!yiEZeW+z zXGf?y8>@D)Im*T_TfOd;Wdul_Gt)Sb=-)4JN)b2t8@Xx zA(+5lhU@Lb%i*mJ`H8=b&;@nA1x~g=(@jgj26nr6A>8I-{~gZarolHVR%&$B$DdmQfy#>VvQn?d?JCJw TA1^z2GF8hmkDR|dub=)8!;eq+