From 3af7d4c930dd5bdbe5814eb1ec85b6f04fe91f6c Mon Sep 17 00:00:00 2001 From: Irmen de Jong Date: Sun, 10 Mar 2019 05:24:07 +0100 Subject: [PATCH] tweaked tetriz speedup --- examples/compiled/examples.d64 | Bin 174848 -> 174848 bytes examples/compiled/tehtriz.prg | Bin 0 -> 5184 bytes examples/tehtriz.p8 | 13 ++++--------- 3 files changed, 4 insertions(+), 9 deletions(-) create mode 100644 examples/compiled/tehtriz.prg diff --git a/examples/compiled/examples.d64 b/examples/compiled/examples.d64 index 4d6bdd1856a8beae6810b01fef0a7423833716d2..6de86db562a6230433869e5ccb11feacdbf25acf 100644 GIT binary patch delta 4284 zcmbtXYiv}<6~1%#;axxWakKW`y}N4Zk+B6DMCnmmHlUs0yzW+cbN#W~MZIr)G9&_IAzOr`cOH zvs1HoX=b-(@6gQsn!Qys4`{3vJS}fD*>fT8AOAU)q5q{jU$wW1P|s>+7GgDvSS^~_ zE_^~n@DC9o7DU{unO!0}#Dz>CE@X8;v-fD`L6K*V$T_X?{ChQfw`M-4rPtRufn6ez zlX5>_T%IjYk*Ug%s6s>_rI2;HEkf6D!{Wv|sQMANS%#|8#V(nN@-Bh#XHPK87Q)GF ziy+QE!LDHD=D99~JM|6CJOwi}_5o56I%2)Aq1cN6KTkryPc_{MfS)J9p-HMpXBIK_3OIi*;y^ znl!AMLDZe~9p2zJ&l<=6%@niEFjI!vZsbB<@%8=W`~hOpo=dXV7mVxyg)kGVN4v}5R?xYqV~CR$_MJK7vB)n zd)hna3Apj4nAN!ky=z@LjgoEVP5tC8z5gLo$UIp%7xKGj0B`{u0D>oj5~m`x9++w!;q)XYiW8tH(Ag7CBuRw zKm+{o3Yr?-tO3!|J$y(58$|yCo$AM(!w$%o?zSRPgaakac2X?W$4{!WVEaul<>fI7 zOL)9Yv;@Ym7w^Odw@z0I)RUHDbe zs1$ru~if>bs8v5||j zYVQ7~3>IfKeDt|oOBLw`+b*_9I)PdF^_X#yQYz9P*W#iTTHH_t!#BWJrSzp|9oa9I z$sQMR%P3g>vQ&$U-dqwzi9rp}EDb9}T(c82E98|7^x#T%gVm6cMif@Fe~aS31n{9C z-X3rslpsCF%g7|X3Xs*JDR=|L?wpqti?2$;cpXBXd%S;F;>_Xu*~mC_`8-bSbazJ9%*%$l}KX{>7Q3Q?ID;Hza#7L6`v#J!{wu2`bY&&o>uS>(c+&P7^m=C(V22uJ{ie> zO8M=P!d=iBX+iR(vW13R1H_b z{e{%c_R=bOb)mI9Ye3fz^y9(GGCsg>in@|&zN6!R2GpCe9+b42&jWIMR%EKBJajxZM02>T{#&x2_&Rm#-dCQ>p&|lc}!> delta 4507 zcmb_ge^6A%9lw3Y9d`ov<8g3z?;fy%A(AxFNjp)9KVuXUj!vd&tESWTCYD5P9aEE5 zQxgvxmPF%Ioc!@{S{h1O<7Rx*w6>;9Wwg^Nh06r4)@E8UMyHiwG7~)8v@xJuzq{|< z!BI6%Ck%JI{qFbIe)s$N>^@rFoznupze19KQ6(v(C8P@5idh-K%t0zx7b(XDGA$!j zQIL8`QBP6tR+-FAHPNCPd#7zEL9vckp@6rM7V+UX&=CC63N9=Sl#_Zom#o3RR{M*5 zhhwaq_+tmrJbkktt*r=;UsP$mmQK?(@D*#Dcq4>U>BAGTNV|RflZbxtE>xi(C`RQA zu0^zZwRbWSYL>J$D$Lfa23WM(=N#$XsA|n>?^9~1*{*$y&o!(1xneZ$OY6?IoIP?j zdG_jAJkl`o^hn3ZsgYL6v^Zv3NZK#C#WCTHHozQ2I;Uky5s#xWdcH z^M5s(B1yC^X2b3X$U~bJYFCsl1iH960;Ua*zz;|dT~P)$)_Bc_7?E1-UAA9HDJMRi z9!UNt*4Q?IKUNw}EllQLfKQZ0I$&lmd^W-ds)xTA>9QGDl);6`@PP48{?|WX{EPo} z4;UZuzi6QMiUQg{Md+IzkIO0D^#^;qbje;VC6XWYNZ>@fGrVtpxNU;j$aON+?Q>36 zU#q@eJw>lC{_xK55jyqZ{BXOIOtoGgolGPz(#f7{U}duzwc(UwPAacmdbmuh4ae&A z3qM9!KVOer`mU8o)|Z!{hxO<7qmc6i8p5YSkV4$!OY})Yp%>85SSNf=*oNp*(ORDA zj+&{^XB)!zsCgS&DyGik}TzF3Iw&0}BkxgD?76*@F ziI^$Ic3F$d#xt_kA{$#}ZMSUfkhK?O<5^j2m5rxmjmXAxvi6c}d{5S1mW}Vq+Mc*P z)9cpU00|sdVpb|h6WgWst@|6lKuQP?aUpr%2LTr-lkbzC+t1;pn+44_J5nq1zhtyw7Rj)q-*XxL}RPXO4ghdwk!CSgFXK^afjhVhjUsCRUt;rTv$ z^oekc!x@zD8U1Jps@3OqpyCLC`8_oB<~!}DaZMNsn23$FO@I(Q>8JuNDS2BtJTW#F zYZK&m*q)kmaB?6C$*lI|sbuwRSRGQyL)1qa=_=AdSHqF>ka^_zsBf?++1J0yL?JV` zyh+g=bJ0)AII}Wa$^nOpQ(9wx^W)@I*cT#k((4vLb!x8&bOBfaX#m!p0<6uY{})&R zd;lN-3IGUz0ssPlX2A*&0q6jT0W<(;08JcX?)g-(;@tsSOP0|)1Z@fanulL3q4Pvp z`O^}ZePDXFj$71;Svb!+BLyGUpUTiO&c# zdh;;;+%Qd_8iuccD`i6QBT?+6G#bd}1jk|A>+gdTa|tZ&0sJ#lrJ&yhZHE_xqKgY@ zPQp2Au2D;Era!oAP8VmLl_n3Iv~zi;jG1bXcr8S}0~0f{8(N#keb*h>ZkZ zBuZ<9Dxg3k*)!bK#p_Lwm#v^J?L!i2v*(_e%Me}kD(3HScz%&3%)-V-BML>d_)4J=LSVb%OKL5OU* zqR{_paZ!Ah8h0jv<#)hYq3MjPana6Oinw7Aw4Tq^;-X#Cq99SJ3Yyud$3Kt!QoJUF zuX*q@UcA<0JydyVH`FLWP1J2MclSv!?9TR5wt;Vkvp_D+I4(NeV7?OieFa_`6kv4Y zwQ)~0=!PjgT8OK>&^EKSjFj?JtQ(`n#`Y+7(^3+|@3`S9W^qp^SL7FBlbJqe4QEr4 zH$MlX_Z`eN!?|Vv+oJ`uR;{nQAE{+cqAW=jCYRArmd28f{!ny>e(-)2h?^=Y6{Z9D zu~62H2}EltS8n8*>$ z$$J(qK&-&L071vX1?V&@B?4HW(!kbdry0OQh`yW^^>YgeEF7ZS#lHgVL~JUJi#IMH zOZ+Dh8jiCk#T!+>>N^wN=4XggK{+b`fYZDl2R<5sk(ZC0J^6g(W&->be5Xuwz@2aL zbtpV6i|<=>Uj*LL3TYwW%mKM#NX%MYA*pC&&Ky}kC=RO0)6`qYUjg-t3y_MpD=c4h zLP#_iDdB|OZT(vVX7!3%6t2un;@|k0pSWP#a*j1v$bne7EF2@>X3lYRyBXFP+?k L-a5HSTDkJS`&CQN diff --git a/examples/compiled/tehtriz.prg b/examples/compiled/tehtriz.prg new file mode 100644 index 0000000000000000000000000000000000000000..f7eac198f22c28edff5d8579f1c09f5cd0b11e9b GIT binary patch literal 5184 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 VD?+1KB5mU9?7wwUB`F@j{{iLkGvfdN literal 0 HcmV?d00001 diff --git a/examples/tehtriz.p8 b/examples/tehtriz.p8 index aad0dfa5f..692ce3c0c 100644 --- a/examples/tehtriz.p8 +++ b/examples/tehtriz.p8 @@ -14,13 +14,12 @@ const ubyte boardHeight = 20 const ubyte startXpos = boardOffsetX + 3 const ubyte startYpos = boardOffsetY - 2 - const ubyte startSpeedLevel = 30 uword lines uword score ubyte xpos ubyte ypos ubyte nextBlock - ubyte speedlevel = startSpeedLevel + ubyte speedlevel = 1 sub start() { @@ -36,7 +35,7 @@ newgame: spawnNextBlock() waitkey: - if c64.TIME_LO>=speedlevel { + if c64.TIME_LO>=(60-4*speedlevel) { c64.TIME_LO = 0 drawBlock(xpos, ypos, 32) ; hide block @@ -177,11 +176,7 @@ waitkey: lines += num_lines uword[4] scores = [10, 25, 50, 100] ; can never clear more than 4 lines score += scores[num_lines-1] - word speed = startSpeedLevel-(lines as word)/10 - if speed>0 - speedlevel = lsb(speed) - else - speedlevel = 0 + speedlevel = 1+lsb(lines/10) drawScore() } } @@ -300,7 +295,7 @@ waitkey: c64scr.PLOT(30,15) c64scr.print_uw(score) c64scr.PLOT(9,22) - c64scr.print_ub(startSpeedLevel+1-speedlevel) + c64scr.print_ub(speedlevel) } sub drawNextBlock() {