From 653e739f25bd30a1a88ec305e0b9da87f260da47 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Wed, 5 Mar 2025 20:50:00 +0100 Subject: [PATCH] Better key release check --- lumber.asm | 24 +++++++++++++++++++++--- lumber.xex | Bin 22346 -> 22374 bytes 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/lumber.asm b/lumber.asm index 0bbeb25..c78bc58 100644 --- a/lumber.asm +++ b/lumber.asm @@ -35,6 +35,7 @@ display = $a000 .zpvar PaddleState .byte .zpvar LowCharsetBase .byte .zpvar displayposition .word + .zpvar LastKey .byte ; $ff if no key pressed or last key released .zpvar DLI_A DLI_X dliCount .byte .zpvar RMT_blocked noSfx SFX_EFFECT .byte .zpvar AutoPlay .byte ; Auto Play flag ($80 - auto) @@ -152,7 +153,16 @@ SkipRMTVBL lab2 jsr RASTERMUSICTRACKER+3 skipSoundFrame */ - + ; key release flag + lda LastKey + cmp #$ff + beq key_released + jsr GetKeyFast + cmp LastKey + beq last_key_still_press + mva #$ff LastKey +last_key_still_press +key_released jmp XITVBV .endp ;-------------------------------------------------- @@ -298,7 +308,11 @@ loop lda branches_list+5 cmp LumberjackDir ; branch and Lumerjack ? jeq LevelDeath - + lda LastKey + cmp #$ff + beq key_released_before + bne No_keys +key_released_before jsr GetKeyFast cmp #@kbcode._left beq left_pressed @@ -308,12 +322,15 @@ loop cmp #@kbcode._up bne NoNextLevel ; next level if joy UP + sta LastKey jsr LevelUp NoNextLevel +No_keys lda PowerValue jeq LevelDeath jmp loop right_pressed + sta LastKey /* ; test for right lower branch lda branches_list+5 @@ -367,6 +384,7 @@ no_2branch_r jsr AnimationR1 jmp go_loop left_pressed + sta LastKey /* ; test for left lower branch lda branches_list+5 @@ -443,7 +461,7 @@ branch_ok jsr draw_PowerBar mva #0 StateFlag go_loop - jsr WaitForKeyRelease + ;jsr WaitForKeyRelease jmp loop LevelOver ; level over diff --git a/lumber.xex b/lumber.xex index 7977e4ed51286106e9392055351bd4c6b55af227..8dd6a0487a3fd7ac0d160462e7a6141573f82b02 100644 GIT binary patch delta 2814 zcmb_eT}&KR6lR89D2u@jwFv=@m%j*NU{Q)#TcOn|mCb5_f>zs(wW+0mR&DRHNe#4R z7T9&-)~m)gX+)AudeOo1x3D0IrY-4Uj1%LFzBEnD#+Q{PF&i)9#8B{af zfA;9Qc=Z8LretYvDcRaqB~P`BAynfH59uN9vL1lfG1}{uXR%fdLbu5gtT_~3%|hGX zb(i#_yYIj`Mc#g&ksrKw4;g%$k(Ir0?!Px7pGe3-!e8}-7f&VUGBR|U&8=o>ja3-A zlP!vVV+qmjGn5zo=uV$fto{wAKomToon}Z8jG|{yiI*0LL+H4dW{7^b9n5O+k)J%< z`k$1FT@Bxk3=8FF@+!7~h)y-K^q(8FW}Ay>5}Ti4K)+RuS#9XnfIvTP)Ze$J}M|pr^6q)urOuP$JDfx$w6 z3mCQ*t5GaR8M6hLC|;e%0(FjMUYW-$&VPil%%yqqW&75aZ}F9m+7;)TFvj@EkENzsQ`Pfi+NU4P(m)`7!t>}A*Kta*6NGQq^2fj-WX(Z$X^G_ zkInx7sIWSRA**6nGtpOl@Yk^#0BRP)R!E+~(kzyzu{49_DJ)H6c@j%gSa$pjd&MpK yW&DqTG>HYa-_*#tj?&yqKD9y~;abS;jvCtq-=#^C-&xQ5yZ;3hn?5!G delta 2772 zcmb_eZA@EL815}!qv+PLxpbh}A%jT8tVI``({1=U#+tGT6hAh1Hx?asxarnY?hjWs zxdn<>V~+(26bMPxL%c+zGnq+^$sF0mm|PA1Qj`5KjejJ~5<~n*^gX@(xV!ULrMc<7 z&-*^-J@0wWd+&Ra3*6EI_wnUQ?yXNhuPko5HyjVD6^lb^S$tR=LVNwL6Th^?!)kdl zOz)6v>ZxXhQyY?DaOwFSKg-Dxzu&ps-~{G-uF^Y4DvuB;(@Nf1im(+7P)>njh6eA(p0xn zmfEPSSBuale|#|Qa6!BeFtYpQC{FEwZdkw5ViWL31|+1EyyA8v{sZT+3(sAcu1;tB3^(2RZhA~ z4<6Qo-3(OX9CM%ML>KzBk{$bT&VZjc;1~4R0z$ND2J*AJK9|m;noUb*j~?u0K$p&wn)82)lU`0aq>~e; zHqfr0xI+&*^}xe`E~O)yGnZ1K3T?W4YQmu;BEsxna|=UcfNQFua-h(Nbd|8XsgRrY~kfms0dmPH{58gYT_w_+D{ws zegkgF;4RrYeMB>8RnbJ6-8DIR3a^o)hFM=U;9~~N>oI$wwYQiA53fbR6sl2LqK%Nv zZ5rLZR-c(dh3d|3-z}dzH^>O>ZiI(6q`&C>(9IO7)=76tbg3p=m`~2ddwHTT|oB>F6=L3OBoO*DcmhAd% z5?k2s!%+IxGc5K~M~_LoxDdgKUO~K+I4g*6esbyE{_9`Os;hE_-eU)zlkq+p#a9^b z3ggY1Zf7bv=2)J&Sx-et46BhR$&JqHt>bx8mh<%ho0x3&)SZm}x0hd;gz;D@fkWFn zeXuiZi@_AdaQ>0Uu@uGf7?#GdJc^|;EJv_3ie=09a3oxpzRmv{k|LOA$I4|A^K7qp iLs0AG0duMbRgrHz4$eXT@;HiL7NQZdqpQj6^ZpCBIu3^b