From 263ca59d305ab40c6b54910ff0bef01348314cac Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 5 Jun 2023 21:34:08 +0200 Subject: [PATCH] Fast SoilDown (test) --- Atari/gr_basics.asm | 60 ++++++++++++++++++++++++++++++++++++++++++++ scorch.xex | Bin 56238 -> 56340 bytes 2 files changed, 60 insertions(+) diff --git a/Atari/gr_basics.asm b/Atari/gr_basics.asm index af9e612..7810fd0 100644 --- a/Atari/gr_basics.asm +++ b/Atari/gr_basics.asm @@ -270,6 +270,66 @@ NoMountain rts .endp ;-------------------------------------------------- +.proc CalculateMountainTable +;-------------------------------------------------- +; Calculate mountaintable from screen data +; for speedup SoilDown, etc. + mwa #0 xdraw + mwa #mountaintable modify +petlabajtowpoziomo + lda #0 + ldy #7 +@ sta (modify),y + dey + bpl @- + iny + sty ydraw +petlakolumny + lda LineTableL,y ; Y=ydraw - sprawdzić + sta xbyte + lda LineTableH,y + sta xbyte+1 + ldy xdraw + lda (xbyte),y + sta temp2 + ldy #7 +petlabajtu + lsr temp2 + bcc NoPixel + clc + ; C = 0 + lda #1 + adc (modify),y + sta (modify),y +NoPixel + dey + bpl petlabajtu + iny ; Y=0 + inc ydraw + ldy ydraw + cpy #screenheight+1 + bne petlakolumny + + adw modify #8 + inc xdraw + lda xdraw + cmp #screenBytes + bne petlabajtowpoziomo + rts +.endp +;-------------------------------------------------- +.proc SoilDown3 +;-------------------------------------------------- +; fast SoilDown froc - test + jsr ClearTanks +NoClearTanks + jsr CalculateMountainTable + jsr ClearScreen + jsr drawmountains + jmp DrawTanks + ;rts +.endp +;-------------------------------------------------- .proc TypeChar ; puts char on the graphics screen ; in: CharCode diff --git a/scorch.xex b/scorch.xex index f2db9778eadefdded5820ba36febce34493d392e..21f9a2fe40ad9408604d741cc487a2573ecd5bb9 100644 GIT binary patch delta 2532 zcmZuy4Ny~87UsQ#f8+&G3BO)kP@=fSVwKgkI###pyed^{U1!9Y1(!f8gYu(L!jC+K zAO^XR1jv&gd6)+hfxs=?X-CT;NdQ<(G) zWnUVzr`7v+duqMqJdu+pLY`b1S9Peq5}dc>T%Ov8$*U#D^T(B(QiyX7DABoWbhi-g zDMlL#>5JK12BQW~nO^GInX}*g<(yjGYAZ3WCcF`&<}%f0+c%Bth-vYf;bGYeRG8Af zx8oB33FAQV8mwqW88`HFUalQZm1Bof?e5E2J9#8WiN^F$fJ2m@dGKS+n!#kv8fBN} zl;)h~lI9zYcZpZYmnEsCX{9=iPV>jIU1hmt(*1$^3(G3Xv}G-2on`%H=gQ8PUo5{; zj`sgp{{F#Q&5yXRIW~Hz0`k%8{0AS(^zu@Mbw1*wfPX4VQLhHw#Lt@}gRRw2us}W# zWGX%H$*}a-c#bJns?wvcak7afte7>$B&X{E<}d1be}E2EIIPYZ$j2Dh=8~WrdZlPv z^n#X_CUMG%S&Y(3I(EE~$T_8Y6{CdwzLnr0b`H6;6fa>TLYJ2E(-{`>&J=Jvn7y2e z$>aXO+&Bl`HdaP$l!dDfEMm%2|8Fz3FVY*Z2xRfBFOL4-{?IDc}80mFBcgOhH z9b>wlF2S8gcM@%QN=ryoy54e?(kck&v?TjAYC_6hqwKe+2@m!bMK37FD_a&3pW}Tk ziBsFkGrERlV?IYH zK)L+Q;P<0JypEUW};Y!c`u+$sqG@8(hocY)&I-r0L@DQ<6=xq6M83w zYZ5|hC3G8(GVg`{GMH=0phH-}e@|56psww31#-I5N$FJ1Be4{EqErv$yXkG5f| z`;*YEI+{1tE-bmcQi6=fJ{)CH8 z%!e<3qMR7R@jdHcAQbcz6IJ+GPaG+$#WO7-aNibNmUzl)Y2foMiNtB#Wtl4~72Q$z zspVVmRR+{%q@Utzy&=RC{C)4d#ZT(&vQKLqB>k#)iuW z-Dwn8rHmd)asmIfPDP?aL@(8eESd z{LmU7p{=K{;&3nTLDc?oo4JCqEKWy6?)cNpOY z`aA|hmcAo|1+O@{Dg4t0o?v)1cQ^Rvp*~!jFx4f2rx;;uIT%ps>V^45@qC`lF&Hf!j!}Ab zGyeAgindmFW-0x;hKKD_Ol#}`rZviNQ-kTe=|24Atem}%mkoxJv%i|05zz z_~Wy3GSXzrI_pnC*B1!&ajjkS^^<;FSND`A_ zMFRoL2O&TL2yV!tk!S=#8_(<9rCoIBYD?{TSDfP16VE#7-Sw(d4(@H#w$pZYX5aU{ z_j~Vs-~0E~_e;)Rl(^s6PG~$i+k>UVLeJJ+exXVlg(d5Z2caWsR;<>9+h7i*{6BX9L)>>IBfm);e@TuX_S~=6N$_>6g2?cEVO>Q`xx^H)#YJ77#m(7-+@~EJls!RZIUNU2 z{e|1e_>fPFYg-Vp2fJIMUN5)6t*fap=fFR;SpyHWS?X7HztwHj73g;8PU_lqztca~ zPv})Tm5wk>HAEU(jZUN75Nk*@EH}JtSZCO1*kt^@ahvgyvEKOU(RsRh9BoS?a`6gV zjC73-{Q>9M=FH5lf^bA~kxUO7Z{UI%JDrcswj}9z1IovJHk!!B5_{tM$p(Ohi*ha; zpt%)3w_t|cjIt;F612yn=3<#1PRiKPus)qtk0mf_H|Z;U#!;~9qE{L93G&`^4%XP` zlEZr3ZjTYk6?+sMY}lSePB!3iyIzc|wpBqWv8A;jI*s9GF+IXJq7UIKZaN%bvVoqB zBieQTaXovz}s)TMe zfL*)V6?RhxR*`SyG*Dp2O7jt z;))ZTDycugsv-pmtunc&oBSlKZXDyk2@qH4P1PUyl|m@GycgZhr&k^0rwOUB;U<~8 zD7*lb=0LNcLM?i4Z(`nh32LZI%$G?}Rvj0D?&ZLZKB4s{z6OjfJ_yep8=X> z;@=TM*@88bOaVYtEBQ!&5l?|+^>ID~$nE3&6d+Z{`FJ3ViBAEdGVw`3-ZJqo0nwQF z6+#F~$_E4Vc%|zgsiJtwAMOOdYX|UF`p7X9mE#WFtU|mYV}f%_n*oa-I8^aNmEI$i zeLv+bqwH@}G;H67DhPx1i4Q0CQ?v{(=~BfERf0KtI>^QXA_)LT_EV`NK=GljgarV& zVBaE#Ek{6F35G)v`@CD^>0?r0^U@Qd#&Zb%pesQyn*2EpC?!$D4M+X~B$}~{vnWoO z0$SCSUoufG4kzTW`0onKxM$)Z5XXU7kc|95tl%csCP$c)BLew=IKf`^iwLtS0?p3} zIAPW@&1g{$+sw~~gJ$9i=RxS)|2a>Pr>k%+_YWcgYq|@d(r$I{AWxd{OQ%!9jb?UK zkf2{3qSxXBr#H_2PYr}f3kiEuiW3MxBf}bl$ zgY9QCg1c+!?ppl!vuVV7EbEy^!lw3gEZ*AlaomUnWm@SPtD~gGM|A`pEjgP1&`0?b zyvr#698`_hy5}#euJg(^n|&nxaS@jS)8{>ynTdI+VW_VOU4|#YKNV>Lt0RmByymH^ zeH0pR!aeSIVimsO&Itb!P>d73Qi@jLsB`nCi&Gbx+U{LJ@p7okT>SdEl$gYN`Yrst zG^aSlvNU2>1?fKw{HAj%@;1hQKDQ)BR?kVGdODy0(CA*VtIBfFf(CjM21D}m?+{to zasG`BU)2W+Y+fn&<{*dcNq&Z3g32v`MWy>4CD7IiZwDm~Hm{Q^3Sz{;*+Wk@aG}h3 z&cS%N?aZg3{8yNXMnTTa#lP{iL-ZedaA>2&+)AmTu<)@9@gWZ^Sp#Dh+;bs0iE2!3 zyxLe{by>f)u4#H~fx!oL{e+Knf32Eu4m?ASUx+6k*l=9$QnI@dZ|>a`e&2?YtZ0)J zf{Ocl7o^UzGQ(Vo`H-9=%w=-!UGrf%N1Ds!=<0g?wFxWnE%U+SF%wi zp4C?{6)e

GvCPd0+g@z=jKg+&s+(x^KhozJ+MQ#)r6r0}Y}Ueb!ii1e)kuxaem< z+rP8aE=3P)Y$tR-dkTgESj4#(zm<+Rqy6|{e=I)OA343aIh`FI3ucCW!|v#OxRT$@krTfSq9e;a+T