From c413837ffd56fbaf9d8ee445759944a7bfad91d2 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 14 Aug 2022 15:06:54 +0200 Subject: [PATCH 01/54] Activate defensives before round --- scorch.xex | Bin 50988 -> 51007 bytes textproc.asm | 37 ++++++++++++++++++++----------------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/scorch.xex b/scorch.xex index 8daadca4631d6c7565f576f3cb568e43348966a1..d218f6643222f6b3793ccee92d591e16047a1957 100644 GIT binary patch delta 15803 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 Y7hm+hQW+U(vF-`}_{v)^=Uwvu0Lo&fw*UYD delta 15744 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 D?2ct3 diff --git a/textproc.asm b/textproc.asm index 2b8fcc1..cf2b858 100644 --- a/textproc.asm +++ b/textproc.asm @@ -240,28 +240,31 @@ OptionsYLoop .endp ;------------------------------------------- -; call of the purchase screens for each tank +; call of the purchase (and activate) screens for each tank .proc CallPurchaseForEveryTank - mva #0 TankNr - sta isInventory + mva #0 TankNr + sta isInventory @ - ldx TankNr - lda SkillTable,x - beq ManualPurchase - jsr PurchaseAI - jmp AfterManualPurchase - + ldx TankNr + lda SkillTable,x + beq ManualPurchase + jsr PurchaseAI ; remember to make ActivateAI :) !!! + jmp AfterManualPurchase ManualPurchase - jsr Purchase - bit escFlag - spl:rts + mva #0 isInventory + jsr Purchase ; purchase weapons + bit escFlag + spl:rts + mva #$ff isInventory + jsr Purchase ; activate weapons + bit escFlag + spl:rts AfterManualPurchase - - inc:lda TankNr - cmp NumberOfPlayers - bne @- - rts + inc:lda TankNr + cmp NumberOfPlayers + bne @- + rts .endp ;-------------------------------------------------- From b46b275b663cbcf7b706896e0eca7e5a42b058c4 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 14 Aug 2022 16:44:04 +0200 Subject: [PATCH 02/54] Inventory song added --- artwork/sfx/feat.txt | 4 ++-- .../sfx/{schorch_str2.rmt => scorch_str3.rmt} | Bin 3740 -> 3914 bytes definitions.asm | 1 + scorch.asm | 2 +- scorch.xex | Bin 51007 -> 51188 bytes textproc.asm | 5 ++++- 6 files changed, 8 insertions(+), 4 deletions(-) rename artwork/sfx/{schorch_str2.rmt => scorch_str3.rmt} (86%) diff --git a/artwork/sfx/feat.txt b/artwork/sfx/feat.txt index cd2326c..7009afb 100644 --- a/artwork/sfx/feat.txt +++ b/artwork/sfx/feat.txt @@ -1,11 +1,11 @@ STEREOMODE equ 0 ;* --------BEGIN-------- -;* C:\Atari\rmt\rmt128\schorch_str2.rmt +;* C:\Atari\rmt\rmt128\scorch_str3.rmt FEAT_SFX equ 1 FEAT_GLOBALVOLUMEFADE equ 0 ;RMTGLOBALVOLUMEFADE variable FEAT_NOSTARTINGSONGLINE equ 0 FEAT_INSTRSPEED equ 1 -FEAT_CONSTANTSPEED equ 0 ;(19 times) +FEAT_CONSTANTSPEED equ 0 ;(21 times) FEAT_COMMAND1 equ 1 ;(18 times) FEAT_COMMAND2 equ 0 ;(0 times) FEAT_COMMAND3 equ 0 ;(0 times) diff --git a/artwork/sfx/schorch_str2.rmt b/artwork/sfx/scorch_str3.rmt similarity index 86% rename from artwork/sfx/schorch_str2.rmt rename to artwork/sfx/scorch_str3.rmt index 1c893ac0b0cf4aaa540da6eba841f725a331705d..ef777ea59229e039ac921e01ca82435b5fb3712f 100644 GIT binary patch delta 404 zcmbOudrGeU|9^%J&ijLWLrfe57#RgNq;2TlaAelsv+}**kQ>*8|n-2^UI(^?X;@hS#V*mmnhTZRfb1GX0rB1jJ z(YWjkgIejtekJC8`}S?zRK{Cx&o;TQZhjw-SkyPIuWm`-jJ|ysB6V{?3J9v2-}m31 z4QL45B%r>Defuy(>L$XC3xliOH?a?_9HM(spJ0F8w7&oUng9R)$8code+I_?3`{`G z!ubCm^M!r?|Fg6G|If({q&a{z*FUy9`*`^N^8%Is|Ht!Xay*~07|Z_u|CRp#lQsa- O%0O|I|Nmqy_5%RBaoHFE delta 215 zcmV;|04V>;9-JM2|Nj86mA+C-joOtF=*$g$_K z{jnUfcCw_h#T(xqwqqXU^|FuH4Rkm@qrnb?x002C;M!fit;2|f|H^E0000G0JrP+1s^v~VT{yNeWJ+x zk&z++y|K1-4Hy3d|Ns5~BEJ6s0sjC30sjC50ssC3E|cL76Ae1P3=aPd1ONa3{tQx+ R0S_|@V!r?XBLDsyj=tG=Y{LKm diff --git a/definitions.asm b/definitions.asm index 8a7025e..26cdb68 100644 --- a/definitions.asm +++ b/definitions.asm @@ -207,3 +207,4 @@ song_ingame = $06 song_round_over = $0b song_ending_looped = $0e song_supermarket = $1b +song_inventory = $1d diff --git a/scorch.asm b/scorch.asm index 664ff1c..d6d98c9 100644 --- a/scorch.asm +++ b/scorch.asm @@ -1611,7 +1611,7 @@ PLAYER MODUL equ $b000 ;address of RMT module opt h- ;RMT module is standard Atari binary file already - ins "artwork/sfx/schorch_str2.rmt" ;include music RMT module + ins "artwork/sfx/scorch_str3.rmt" ;include music RMT module opt h+ ; ; diff --git a/scorch.xex b/scorch.xex index d218f6643222f6b3793ccee92d591e16047a1957..493ff843ef1cf21a4a1bd2a86552baad30c2371d 100644 GIT binary patch delta 16167 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 YcW<&i4ychG=dP^W^{M4Ei*Wn@0)qm3=l}o! diff --git a/textproc.asm b/textproc.asm index cf2b858..fdfea5a 100644 --- a/textproc.asm +++ b/textproc.asm @@ -288,7 +288,10 @@ AfterManualPurchase sta dmactls lda #song_supermarket - jsr RmtSongSelect + bit IsInventory + bpl @+ + lda #song_inventory +@ jsr RmtSongSelect mwa #ListOfWeapons WeaponsListDL ;switch to the list of offensive weapons From 045bdacf650be72c4d38fa3934a8aa22d5192620 Mon Sep 17 00:00:00 2001 From: pkali Date: Sun, 14 Aug 2022 11:03:45 -0400 Subject: [PATCH 03/54] zpage opt --- scorch.asm | 28 +++++++++++++++++++++++++++- scorch.xex | Bin 51188 -> 50542 bytes variables.asm | 49 ++++++++++++++++++++++++------------------------- 3 files changed, 51 insertions(+), 26 deletions(-) diff --git a/scorch.asm b/scorch.asm index d6d98c9..6dd5e57 100644 --- a/scorch.asm +++ b/scorch.asm @@ -89,7 +89,33 @@ ;.zpvar dliY .byte .zpvar sfx_effect .byte .zpvar RMT_blocked .byte -;-------------- + + ; --------------OPTIMIZATION VARIABLES-------------- + .zpvar Force .word + .zpvar Force_ .byte ; Force is 3 bytes long + .zpvar Angle .byte + .zpvar Parachute .byte ; are you insured with parachute? + .zpvar color .byte + .zpvar Erase .byte + .zpvar radius .byte + .zpvar decimal .word + .zpvar NumberOfPlayers .byte + .zpvar Counter .byte ;temporary Counter for outside loops + .zpvar ExplosionRadius .word + .zpvar ResultY .byte + .zpvar FallDown2 .byte + .zpvar xcircle .word + .zpvar ycircle .word + .zpvar vy .word + .zpvar vy_ .word ; 4 bytes + .zpvar vx .word + .zpvar vx_ .word ; 4 bytes + .zpvar HitFlag .byte + .zpvar PositionOnTheList .byte + .zpvar XHit .word + .zpvar delta .word + .zpvar HowMuchToFall .byte + .zpvar magic .word displayposition = modify diff --git a/scorch.xex b/scorch.xex index 493ff843ef1cf21a4a1bd2a86552baad30c2371d..e813b51e3f8162c69fc72bafe7453f294ce5443f 100644 GIT binary patch delta 17231 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 delta 18002 zcmbt+349bq_WvBYfn*ev0S&Z@N?gE*AcM*gWHE#xfP#t#&Z;0$5|LfGT6pfeDE{IyyQm~&vIZMgK~xa^0h_EOJ0geNzi;(S4g`1ofBuo3?y7q4 z)qAh1UcGwtdfV3+PpmcijcJC@yj!Bv?AP*rr^q_b*z%3uBGXyV(7HWq%J<^+v>Xz% z6#0^{P1bSar+987ljT_M$-~@d56T8qaDAVZb>f`{uJ4o~=c`g%xR+n(UjC9>GMUrO z?Wp2TP2xfia4$||u-m2^t<4X}I>F9O%#eA#xSepzmH`ycmmZXRFzUl!;x1)ujwell zkz~a!#C;2K7%wK10k@E`$;2G!t5xzE0Q%p{$1|$T3W=Iq7I=Fo^YrYWMl7mP08j|1*gO zMaT$2z;6nXpLLHU?g_-5PUIN(8X~v2Un8>7T}b3P?nOk_yO$EKX0rQYRgI(vAXW%uwR@1aDO1xn4OKf0N#3jsHFOO$N8*5#@Xp zAJW^|u;~*-9k|O+?|J zRBWN#qf=_$AZkpdz0B=^p1MserGJ5aW#Zqx|JW-=Ci;JxFif5~8&Q*ogHZL2mV8&I*+qrj_OD@6A+B7}P%iesh${eU7Sy4i6 zKp|N=Azb{TBfjfygn@?lYE|7w5F!vyNa~g3(x1|x20XQQ`h230t z3&~C+<+qT!WI&ZC6C02{y1;#1un86=ja;~o_<(aCVFRj-h)__8p>l5^sN^0kko8~; zeS_C#O8h^IZxNZ-i5?<)iAYG|TV$B$D!)uLeds2OtZRFVFdSVQP(17jJTH3^hHn$y z#1kj$%rE4)VK2;C2}SA&_Ku~a;P*9+F`X*vRnee|MpcYbMLt>;V^lF#wJAEgxZR-W z?czrU#b6gdHYi5B_=!P@vWq(nHZo4u9ZFRVSf0nJdw7L=QHA^63it5}_i(8xWHfze zlb=-&%Q~MNB{*dwl$JT2N1dwSXsJ{h^r=yjGkA~s12l6pAjDgI@+I+0Dh3~C!{?;j z!|9y-pqwh6FpwzOV?URTVzSEY2q(T|!0Lzfcovhj z$#fQUV0dDL4{fMphQno@Js|p8d(CZj*GsdnH{h{q_8o&ZdOZnZ!snt{E$*wT6TpyJ zJ^H5fW{?ZTWn_rapIc3nU0=*z#Fu$fja*U<+XFab&3xbd>iO1Z4inuPcLHfS6r-ND z5gi+vSgZv9DO7e9Ryr%3`x8j0t;qCq3tCn}6Oxmyn6GVs3clw*!=8eRp%{gA%1yrd zb!xQ2`RZN%qslF;#78SPqv-fja>43J>tOW)h2+3eEbzc<VJj#K#8W zT@Hb^L#JTcv5YJIQ@FbCl#Ui9%6H&mRVdLBbMa!8)s%5i`vokd>6DD<0+~E<&m=9! z!1D>sVw4iyN>^YeIWUWaZgLD1oPk*kLUOui5oQ^kfgS{+qTGWVb+sHWRrg3PwaErc zrzGtOUJCUIo(`E{3RA|x7$%e4lJiyS^~zF1N>VT>6yvK~;!@od;WoK0JaIGjZtTBB7>OYpy==XbODh9J=kas88d!>e zt;;+>E1KDWiFJ^K>cH|T>49Za(rtg4(mdtcDL+mzTDMx?wZ1%cbmsKT52t)MW%)E= znqykgj7>9MpC(WHV46Cubz1a{0W(I;m_B39j0H1lW-OoaArHX744WJ+Y-?|!au4w^ zY@fAZS8yu)r42Z zQ*i-R(x{kCBaGxwWg>0Wi7!#6nd`!cS7+fe2_c&tExt%mxsYOYh*tJGmAwWhVIO%3 z`v@e~iQ}j^fv3s>Dvqa0HWkyTl0zZC@)8v%YAS&eFd9q`J(>LB;VFJ-*Naqz$pm>D zV=bb77_DubITIXmDVY{2xAhhw*KcUZ1BJ_)%u;UFBq7&fIEtpk%iCP}b8e68py8^W zb7NQGi#fmJS#OEq!AAFosdav)93P$)9o719wUjIBsFWw_sb@g(DWd48kgMn^wm~qK z5N6DyD?W`)i1D*Xa7uYul2BS$Q0ug`>VvR2gSG2n zy8o0&`C>DX3dCJx^JhfLb?-*Cdq1k(-=W&wian>5``7etN>o&0&N3t-3aZ!D&I=5oZ_%1Q{b6(HXjdzqFq~-`^1-9|VMgHR<4Resz=S`&}vldl=5C z(=~-FJUWaqXGLY7Btnst7t~{m&JEt{|K2(3~7a4dC;l_!C>tCy15If_cAKuaiecs3s8lGnQ%Mm2O{JA$h)S!(AE|5r$y_m- zaKl~!)o7A=k>p$;nc6>#e1F>oBKRaR$>_-+Xjw-Vs#_BX@8HGYDRx=i@0B73L${WI(!4w(x z%KU2OB2k}KE->o;N0r0W0zu7L`h5k^ZQ!Icm z5?&e#8uB}3RpD4-DnL2iG!d3p4a;le7R{6sg>7slE)q6swy?~jtKBFz5%>rAcSVbk zU&t4PCN(#akijv|0zhUqi#yb>4&grGl^_Y~LnbK~4COWCO1aT_YHjG+qbMKE>s&D7 zRd<)U#@sTnxn;x-#SEXkQ^?0#0i)Jw#1#XZDMlVsh3zibn%HLQ(aGRlmV`31v~g}O z#3-AaCzRE01gizgz0?$^%%t&paVFehG02Ql6Oqb-5?1ZT;G)p=(nhdZ*08a5BZN|Q z{%9ySNUll~Xq9Rd54?9n+)>~iMK@urYap~KRyF`tjn+D174fp(oIMlHx^{qYQftaA zxwkfaPI^`0_2Ma}`5Nq9urm5kJoYNCB)8@?32U!N{bvK8FXh849Mpb_;2$<6@ifUi zP1qLFb{dup8(u5+kX?tV`u-KlgYInT`A24{j}zrb27eru4>RG4v4*0qs1x#=$7*AL zcgNU6PK@@oU88+#UhtB-^NR6KQ@40@0Cw5t4d6Rx8ylvOp#dT}H$w4Pu$8&WPY4w3 zIze{*M3fUGsDpq16CNR>wPqGOA#NwIR)xRt=rvzH?ANo{0m2FJ;`>g~JZP-t=N}E8 z)*j4{{u>{RQxhXmg@f>Q&sW*H#Th=e1$(KZ!A)0u2_qUsxO+R}Qd&?3temf6ogsFD z)v|0EJa+4nM}j5j=;KF&Yw^%O7OcVJUys3ePYgXAOhVy{M}vF}o{Js}#^RCuSnwu1 zZk-(*g2&Fsg16!kH9I&KkG`|5m5+3I`mxN@x8C_EbM+ZK&R2D4mg-DVSSoeFe*V-- z`^81j-NmJ_>%z9nb>x6U@<{l|6X3P;56V#FB3P>goQ53DK(oH_Xg7Ksqf%)28#6V&|%`M!m}qUgWE=+h7heczFu~ zQW|`B7_?ik_X8?QW4sIM*QnxD#)!TbCaV7xqS&|5!Uz3+t?vk!+?UCD(Lr#=38rEJ z>ktRRJNM%=q5ln!D%9X0rfB)ju9jor7WvZDjb3r1Hyo(brU0tSykeO*0)WxMn}i{P zEZ;t2V=hGS9{(8xb`U+%!eR5WF`GuPa2Pn?)IKOVnFDX7@ZmB0Mo`rRHKQC@N?27t zjPJ!Nxb)bwnI|9PW1f7h51u@5Gnp^1x%yOi-)F`-gE_l6XfSVAd4Q+8o&I?E`RKt( zZD@uWNMoDv1I)xugq1*_l?28$%ux?j-&lM%MYA}W9ZruFe^>*U9QGm~26$J?gR>Ojw8 z@gb@};%QWwO2z3+kQtQ3OX*UFI8sJ5GHS%29Ku(j;98VCx0&m6hQBz;{8+{!}tSpvGRMC-^d9N@6$K|`u!Rw zV;G%Za55IBx(T!mFcX;W+5m%t)l~{~#Od$!x4MnB#@8X#(x!jo9-jredGtdpV~`VNYyyS$%3Q$ zXW@6LFF+X6oj^@Z1SL4d(LfKTIc~&mbB66UX9>36b3`f-&l6soUDh>E0$#K4571!H z5si{*EMw-ElMy|}u^x@^2dv3YC}-HVbr#!}at;o=avlylKv*k!i<|)elS{$>(x-qD zYVM|?*dk1FYtK2D84Ky4_f1Bt_bDbEduoMBd&@C6nej~*ZOqO-PO6)jlQ#wszNg^Z zF~D#H7D8(wSjepjJ0xL`X^;h+w_Yor;R&J*XUUMW#5Bf?x~xF}cNp8x!l*u_RRAbl z0Wq7?^lA*Cn#b$?i5dw8u2H~h+J3p$h=6G~#}QZ&O@#v=Hn|t<@O!+aO$&g8E3Zz3 z#R=Hl60zF5JW&u7G4ak4v{;~hEp&nbz=TEcfLRl3+iY!D=`vN!9EEKa^y*}0iD&EK z%Cm;&IZ#;0D3B=3c6S1s>h2^q&)t0}rnkEvo7?UIY+}1_VYAvj7|Yl_6j9DyW;A6z zCk|wdSvqkLYsNDLd|GJhb0WtYz~`-0!TQI`9aKYU6mN>4+!jIkT^OZNyg7n$J8J;O z5N7EjadSBm7$cWThST=pR2fc#(QNAwhtti&sXF@VOJ7_0JUaNbRgd))7>adeecxsd zB+wNDm>vR2bj2-96@fl<#bBn5-?ZAn%t$KU!%PmG(_Flz_QXmK^6X$d9z~F2OBLjU z<586ha0NiU)z~2;0c*M&57RJA{c;=j`fiRnYc`<@79PkrKKFq|;p%zo`8i!>W=$fy zN#ukE#jy3n-)jaG+me9Cwj_9l53oJy=BputEbyR_^Ks5sHEq)QN<2 z3JbVhQ-I$ckH-l@BZ@n*p_D{1g-0Vwn#%h4?bj;UiV3tRopoE7KOtXzGb zYS@wM=-*OONt&)^@oh~e#fIZFoH}6euoqzze@mG;%XAr$z5WlcTxB?jWFMyDPV6Mv zN2u6Hltvsou*vKs!EufRc^sM`QzNlRxorTf2Vffj8;H`N`K+j6g^x*d1Lj|h@)2pS zCyt&9sy|{d>?UjnX>PB>yIc*v{Fwu|4v#T4VUiP8P$ zR=c)kL)LM(dm4i}AAp!tv4nf*Ic`%%`1%ybk89gwi4w~b9Dt6>v1qr7&ju6KUb|w6 z=?e{kRm7;*Y>p)d_j&_+y{5lj-0NkPv1)HrqJTYl36dg@uc)$H{)HWtT| zntfiPtGnHf3-h`mcHEh3cOmUHUwZ5AvWst$n*H9?x_j&*B{g4p>+Z9Q2fa04d+Rdn zVjQXY##=YdE`IB+IpD3+1h3Nscm4g3V`BGu6B1VJ^}3S&bdw>LxQ72}Dj&s;g19t} z;g+tprp|=`+A%FGE|yxi(owr)XBSDkY@X|plhCDPEHvPS2gV=|$GFHh42fdbn8~<# zmtPQjjgUu)i6hXHc2y0sUoziuKlSmF9dVxOfX7?@V_Hk&_Bi!K_$YxK0`UMva)Ee| zB2ckjo*-=CZdf3{AQZ}@1OY*)FKEeLy3!eFWT!>r^A&bXXJDS|b=QO-i^pXQ;9(Oq4zd0WTkZH2RTtHues&^Zemx8J0mk(`+6Aj0VC zJLqaX1M!67R&<^$EaSXEmMzfzng}7Hf~Q0v5r|mz?$5c03@#v}QZ8)L#!HwFz+IhTszIHmVp0Dl%;ZUz#`=}{d z6Tw;b04j9 zQ|l-5*-Jf6nLd`~a;B&RYZR08OnM2HX_pN%*KS?bSmN9oe9jRiKkM9Dtj%}yxM40M zml!68J;gzwNtAdHg%u3mr6$QY!og&TD9D1aKAD9uMh|%as`}twS>}lN#R)h!2(}^Ou_p%zNasgcDbk7sA%2!@m5}27{tmCGi^snh#KU z6W0HDtbf}AF7zT{@e^r0uHD171L+VRZz#T88n4-p<8m%ui@&CwMw{GvV3q54VfQ3C zP~+PCHB}8M<3OWD&c*McxX|Y%UsLPx7c^7+;ft<6FYm{HO+)%7tsUJ}j(1m$55u&7 zLzQo6FkW+1zoB3Vh`Y2(%;-3<9IgToBHt(m;~nuRSX$$|w^>?Qn~AlUv$|R;?Wl08 zUJtKZ!we(Kfl;LKDSRlYjy>ESZ&*rOz+BQ%IAJ4kfjM@#AkW+33C17$hN?Yko$a3AVZ_+}GDB#MSodEdE55R4SgVlCUlLnC)ZNiKWb&l^X?DtrHmu2EkRd{gV2V zMRK+F5>K%_oikO+=_-U`ey$QqYtB?bxN+hLpK_)uA;Fw|qDqiuUG~W;p;|drCA`gz z&2K-04w}zYse5dj&sGI?zbT%s3QT-U{JDy6!BZ$j6>hd9XB)`6q|!DJUWc?GFIT?6 zrcE((mIrwyx-73yDmj4-rhl$Nl;0VOVLR68qQ*jRg`I)J$GqJKFKVQ(=60WQs}F46 z=3`zVLUk#O%fUWDR#JT6?hc>8Gxp4=%Zd^Q`*3=lGE9VWB4T$_mvWRgAM}QXVgr^h!i0D=6C$5v{CS~7{wi7w-L9oU$~*pp z5a`oH&|P>?BK>|59wq}gk>CFh$ldUGZG1IEODjWUK4{4>pX|YPj8`bzJj}<^TkM@E zvQhjVGp#O@`9>H|xJLhq$OYG^zxV_EMs3FWYB#2gYjJ@ZH5 z6H1Fx6PallEI5&DP-=bX<@xCzeRbeVm($66jGgYM(+RuULp_Oor%SsGu_xTNQsxda z?^7qN2Y^j;O&@2jDTC;JCBy;^VqOQtfNl_;Tadb4!g0%1z16vIO7DAe~z%fD&Y%&0&~5%ChQW*Prh%Pz(n6d?e(wTqFHrd!%BXxdE!2Y**&D0zccY$+jj3~{moJSR zv}`r;q^NGU%k^WyebE<)c#*j7D$Gd#84-Z|BP)fsrGg`?gc@rFOGaRoE0NCgwzTR< zflwpm)e9_XqrT8#R(>Y&1`QzhNTDE0c}E1H+WN&Su1^YYzO(0I>1{!hYJ^Hj268n} zCBRf-0|Z(W&?Gs!I{NMC8k{1YUgGK_Wb%s_o27T=)(Y=P{<-f8egLLKslBDQFnk{D zzyzB#71miji&5o5)jCu;QB}$y^{UA%x#qqu3fO-D+3A#X@DF(tHLz*1>PZorC-fmi(t5(!W`xymtd|>$QPriVq_HsVl;(d7Sta>Jt|vS`T?ua(Ia6z)Z{T0 zMzN@7G_DL#(8&6_k)6bPxjJ3c|AKB9@oIEk!m3;ODgyHaTgI}b!}zRniN8!V@c zr3b|NK1BlUarmTa8+=l=#jI?iE8Fr>$F@U?Lc{h9z*b>KAd?w(7Xb) z8O%k6SP+(LO+v|UJg5*9QZAx^piMea{}GM_vLrRNUpV%6E%Law5X6qk7&GgrxE{gx z18_Cdk>|>iSB}~%?X0g8NL*pZvkAnNRm7QVmv8H-*@GwihQ`LiBINi#TEGp=b9swK z#_EcZWD`^DI#4v3SGMD0gQ8;X+W;+r=6WR1+=K+0WF*j-aLLjWng0FN+quKbt={GM zifWi&{ae$91;l3bU0%|O13 zR2Ym+IrP>m+#5>a>PVVTNv_6ABq0%&uC<4d??>Jb;>j8hk(?XGmJPX6Oc6noBSF)J zjj5X{0C7Po#!)ez%Cik(47+uPqVEaC1xJOVg7>M$_IRqq)1fgm6c6ASq+jB+9@((b zfW#EG3!`Z}QR1jN1nRRDpey7(3HfpySou8H6>m@GCuq=Ww8y~moY2WA^#;6Omim+c zI^cwDzkr4@j;CQ#?k&XHcZDam&QwyrB{aPLy-;+K>3HfNhQ!i^Phv8vv6!quLkLNM z_~t>6NsCHtONVQfCC3aV|yIM zL=ci7QV$gg#>HYb)bs@N??_>+dC zZtNUyYIB;;lk%Focz8P`OMiii7rq8nX_M1^wMlbS34~TFILMk=+52-3j4wL=!zAg#7RVl{ykZ$A{u}l~L7h z9mLx}V-^iOK?O1J2o*{KbEz+2qfSvOz^%7yeMx^_M0%W1DCG%)RG1PgmeNVWyux{r z|5X%jo<+;>AxC9CyQ3)t8QjtcLdoV*syM0ItF};lfhM035!juUs};uROPmZ#d4b~F z4@t!LAW{jw2O&{4v*@u|G&BJ0?0G85u%hW&XD3i?wd0+?3dA)@@vEq1LCZwovQN_N&mfg_AFhIU};W!veX{awK1L zvFTt<%!{D1$ns#J5N8`cHmOKhExY!u?cH~juv%J!(8U^0Z0+jFm&)^y22;M8 zy7Z3g`n`-v*Orjbo@O^jzl4G-nyjTtsu0)6758oL6b)pJ>jX zY33_5X9dk%OmkkNnM-I6PcxU&oLp+j$)h=|X-+=PSwnLQXpWuc6w;hxnj_F0k>;$V zIVCh_70p>obBbt=1Hq>^*bb8tPeC@yaiq8h_QC{kh^`Rs5|f% zpM(zamCtG_hulml?q$^MN^|z-!xM>3CicIILg{UU?5ed{)Tx>gzowdBRY8;bX+*9e zBYh@gH{rtNP6?ADgW7T^N>y#1MXpw7GCn%7!LVb4z-)jS)xJ>^^57!C5eTe-Ll{mH z;P?WzaAwlr6ArTlc|vUQM#Hzv%Yp+2D>IXt`b2VuSQ9qpa1+}Ojc`2+T3H9kCK^SR zDU3>tme<3FQ;hCo76b`F_fx?uR3KAG?F%0>dlZTw29pyeX6;*Ok-Tl;Y7j&-|&*q8lh!zT^lS=0~dG;eY%j-yy>8LHi zS5#EDq%gg1abY@(dOO+eVX5tn!Ve1{6$Y)Gx>8x$YZbC`VEm$Rj7?+*S0n(25p1~X z6Qg|cbdiG>E#BnA$?|3&0wuTjxc4U80&%|NL|<}$UuYO!gOB5ap*1?_TI%Y>M!^HZ08hyToPe!7AY9cF-LirJ`EF+WRDxGpi zC*un#d@G2vAU+qwSrA_gdblEl8PBn=Ds9{zfjh+uT+ymflH|(B$Uw$^R-8Dl?oK|b@cj|C>^5Z0%j3A&95YJi}aHt$XD(p>khURbm|e@*Eoa&7;c ze>eQz2^lyP2M73X^xRd;J3|R(T-rLdD+*R0?T?mIu|;d)13fy9@}Go*FcAB<+TSz2 zX!~8E-jLz6hE)c@@I{3t&ajo%Il^xP?-V zO$iV;qGvN2k=SxGYs}Jx#~Aw6e2a);hpmis@So@p7digdI~e}|)d5(2Ge2kOZFI^s{N8%Yo(?~RXH*TFC75iUltVv%W2#X8At z<3QrlWhCxo6z+&n=xwR1BNyrzmA(-wNfxx7(W)Ypnlwr*s^L-$9^!gs!yqgJeB4cf2W=i+33uCmv$_?k*m z^y%M7Xh_Z92u@&CN2QiQ+pY?$v3(7pwrZB5;u4LxJ6Uwvgm+}hCOiqg8G65Pq8 zm*6U-FUAu0nTV;Zt1pF<@2Yn?ZpY;dKKkj4FF}u#My@#@3tQW|#uD?(&fv2Se4C53 z7o3+i;sy%_=q}g+i~l6|&gzDZYP%dIY-F{}IwW=0+Hjcb20m76aP2PZ^L!W!`x=f0 z8X_YXZfE4cU_uwc0bK;IMA)G9&k*p}g~I`7!)lkcoc26Ee9^ndhtmrDNn6g9&+5%@ z`{xg5VtS>{w7tBd(C*&6qq+TD!if7b7ra_j_QB5GN8$$D`GAez^zPmt698rUbN$|71UmuH2>N|A&gPHS-Hu!>Ho;AcIB=#OP`Ki1&-*4Q1 z#1KDp=8D(f{mwY__YW^xy!Oracdy6ahR7cud2a0XSJwGg-ububioe${`+MWEKX>Hs z&Cb7bX9iv>zr=rV%{9A|lRvn0?z+);Et@g&x+k_|Zq^&3_Ii!PHKTl3RKEN-1aJN0 zjMaaucJ1_kWPH2y9oI)uW*4pf*Yq0eQN^m;Y<;N4`qVqtxys6h!ky`!74R*;^%bdS zJyEp{;t8b@zyDL?iK}fW->TEDpXaCJvTp7UVaNQqlH{!S*|ka^Zm z?O)wdve49sXPhkj9Sm7zUu~0nyxfRillI$3`%RVI6SbGewBH+L=())~h!uQwrLudl z>`6ey5E+W&WauuzZI<2VeT>@ua+c2BQ(yRRg=Y8fCLu50*ZLqv-17or7ZN|R! z&zlbplDFM2Z|~)}D=<+u-BxzMBIEyVWV{Tvkwa{e88b~_O!)gYiwwC&$bnQD*$>c6 zz$}~0ffK$^Z(o3u%`0w{p#?`wS*r~L`w6x25ZgU{yGtb>+=2wi6gJT@A zm~t~^d7Q7d(Y)fk&plmkN;O(zHY<2WWkH~A{qpFq3ta( 1 (more than 45 degrees) ; if all 0 then standart routine -XHit .DS 2 +;XHit .DS 2 YHit .DS 2 LineLength .DS 2 ;circle -radius .DS 1 -xcircle .DS 2 -ycircle .DS 2 +;radius .DS 1 +;xcircle .DS 2 +;ycircle .DS 2 tempcir .DS 2 ;TankFalls FallingSoundBit .DS 1 PreviousFall .DS 1 EndOfTheFallFlag .DS 1 ; in case of the infinite fall -Parachute .DS 1 ; are you insured with parachute? +;Parachute .DS 1 ; are you insured with parachute? ;---------------------------------------------------- ;Flight ;variables for 5 missiles (used for mirv) @@ -215,14 +215,14 @@ XposFlag .DS 1 ; bullet positon X (0 - on screen , %1000000 - off-screen) YposFlag .DS 1 ; bullet positon Y (0 - on screen , %1000000 - over the screen , %0100000 - under the screen) ;---------------------------------------------------- ;CheckCollisionWithTank -vx .ds 4 ; 0,0,0,0 ;two decimal bytes, two whole bytes (DC.BA) -vy .ds 4 ;0,0,0,0 +;vx .ds 4 ; 0,0,0,0 ;two decimal bytes, two whole bytes (DC.BA) +;vy .ds 4 ;0,0,0,0 xtraj .ds 3 ; 0,0,0 ytraj .ds 3 ; 0,0,0 xtrajold .ds 3 ; 0,0,0 ytrajold .ds 3 ; 0,0,0 -Angle .DS 1 -Force .ds 3 ; 0,0,0 +;Angle .DS 1 +;Force .ds 3 ; 0,0,0 Multiplier .ds 3 ; 0,0,0 Multiplee .ds 2 ; 0,0 goleft .DS 1 ;if 1 then flights left @@ -247,10 +247,10 @@ mask2 .DS [8] char1 .DS [8] char2 .DS [8] -color .DS 1 +;color .DS 1 ybit .DS 1 tempbyte01 .DS 1 -delta .DS 2 +;delta .DS 2 yfloat .DS 2 deltaX .DS 1 UpNdown .DS 1 @@ -275,8 +275,8 @@ HowManyOnTheListOff .DS 1 HowManyOnTheListDef .DS 1 -PositionOnTheList ; pointer position on the list being displayed - .DS 1 +;PositionOnTheList ; pointer position on the list being displayed +; .DS 1 LastWeapon ; number of the last previously purchased weapon ; it is necessary when after purchase some weapon @@ -298,15 +298,15 @@ DifficultyLevel ; Difficulty Level (human/cpu) .DS 1 ;---------------------------------------------------- ;displaydecimal -decimal .DS 2 +;decimal .DS 2 decimalresult .DS 5 ;xmissile -ExplosionRadius .DS 2 ;because when adding in xdraw it is double byte +;ExplosionRadius .DS 2 ;because when adding in xdraw it is double byte ;round CurrentRoundNr .DS 1 FallDown1 .DS 1 -FallDown2 .DS 1 +;FallDown2 .DS 1 ;leapfrog LeapFrogAngle .DS 1 ;laser @@ -352,7 +352,7 @@ TankTempY ;---------------------------------------------------- singleRoundVars ;-------------- -escFlag .ds 1 ; 0 - Esc or O not pressed, $80 - Esc pressed, $40 - O pressed +escFlag .ds 1 ; 0 - Esc or O not pressed, $80 - Esc pressed, $40 - O pressed ;-------------- CurrentResult .DS 1 @@ -398,8 +398,7 @@ LineYdraw ;----------- ResultX .DS 2 -ResultY - .DS 1 +;ResultY .DS 1 ResultOfTankNr .DS 1 From b6bf1532d7052d4261422a408ffa7057367eb023 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 14 Aug 2022 17:37:06 +0200 Subject: [PATCH 04/54] Purchase/Inventory titles added --- display.asm | 12 ++++++++++-- scorch.xex | Bin 50542 -> 50604 bytes textproc.asm | 4 ++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/display.asm b/display.asm index a7001cc..793a96e 100644 --- a/display.asm +++ b/display.asm @@ -6,7 +6,11 @@ ;-------------display-lists--------------------------- ;----------------------------------------------------- PurchaseDL - .byte $70,$70,$20 + .byte $70 + .byte $47 +DLPurTitleAddr + .word PurchaseTitle + .byte $70 .byte $42+$80 .word textbuffer2 .byte $02,$10,$42 @@ -151,7 +155,7 @@ purchaseActivate EmptyLine dta d" " ; ------------------------------------------------- - .ALIGN $1000 ; WARNING!!!! 4KiB barrier crossing here, might need reassignment!!! + ; .ALIGN $1000 ; WARNING!!!! 4KiB barrier crossing here, might need reassignment!!! ;----------------------------------------------- GameOverResults = display+$0ff0 ; reuse after game Credits = GameOverResults +(6*40) @@ -222,6 +226,10 @@ purchaseText purchaseTextEnd GameOverTitle dta d" game over "* +PurchaseTitle + dta d" weapons purchase " +InventoryTitle + dta d" weapons activate "* GameOverTitle2 dta d" Player Points Hits Earned Money " .endif \ No newline at end of file diff --git a/scorch.xex b/scorch.xex index e813b51e3f8162c69fc72bafe7453f294ce5443f..141b94b7121b7d261aede88dd58e966d2cb21043 100644 GIT binary patch delta 15668 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 Date: Sun, 14 Aug 2022 17:59:04 +0200 Subject: [PATCH 05/54] Rest of the screen titles --- display.asm | 20 +++++++++++++++----- scorch.xex | Bin 50604 -> 50637 bytes textproc.asm | 3 +-- 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/display.asm b/display.asm index 793a96e..146d89a 100644 --- a/display.asm +++ b/display.asm @@ -30,8 +30,11 @@ MoreDownDL .word PurchaseDL ;------------------------ OptionsDL - :5 .byte $70 - .byte $42 + .byte $70 + .byte $47 + .word OptionsTitle + .byte $70,$70 + .byte $42 .word OptionsScreen .byte $30,$02,$02,$70 :maxOptions .by $02,$10 @@ -45,7 +48,10 @@ OptionsDL ;------------------------ ;Enter names of tanks DL NameDL - :5 .byte $70 + .byte $70 + .byte $47 + .word DifficultyTitle + .byte $70,$70 .byte $42 .word NameScreen .byte $30 @@ -224,12 +230,16 @@ activateTextEnd purchaseText dta d"Purchase" purchaseTextEnd -GameOverTitle - dta d" game over "* +OptionsTitle + dta d" scorch "* +DifficultyTitle + dta d" difficulty "* PurchaseTitle dta d" weapons purchase " InventoryTitle dta d" weapons activate "* +GameOverTitle + dta d" game over "* GameOverTitle2 dta d" Player Points Hits Earned Money " .endif \ No newline at end of file diff --git a/scorch.xex b/scorch.xex index 141b94b7121b7d261aede88dd58e966d2cb21043..22427c04e4ff1934140bb68562ce27ab78c598db 100644 GIT binary patch delta 16578 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 Hdn5k`=c&?1 diff --git a/textproc.asm b/textproc.asm index 1c64173..552e568 100644 --- a/textproc.asm +++ b/textproc.asm @@ -27,7 +27,7 @@ sta dmactls jsr SetPMWidth mva #TextBackgroundColor colpf2s - mva #TextForegroundColor colpf3s + jsr ColorsOfSprites mva #$ca colpf1s VDLI DLIinterruptOptions ; jsr SetDLI for Options text screen @@ -45,7 +45,6 @@ jsr ClearPMmemory jsr placetanks ;let the tanks be evenly placed jsr calculatemountains ;let mountains be easy for the eye - jsr ColorsOfSprites jsr drawmountains ;draw them ldx NumberOfPlayers dex From 255c240d7a06c4e1d88a41424f7266a4f74a14ac Mon Sep 17 00:00:00 2001 From: pkali Date: Sun, 14 Aug 2022 23:38:20 -0400 Subject: [PATCH 06/54] minor label changes --- scorch.xex | Bin 50637 -> 50637 bytes textproc.asm | 20 ++++++++++---------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/scorch.xex b/scorch.xex index 22427c04e4ff1934140bb68562ce27ab78c598db..07e099495de57574c03e9b5bc2bfb9e823679d82 100644 GIT binary patch delta 29 kcmX@x&3v|-dBgE?z6A^|w|$z^j@=eu0WvpVE&t&Q0M2g?1ONa4 delta 29 kcmX@x&3v|-dBgE?zLgBEw|$z^j@=eu0WvpVE&t&Q0MB_27ytkO diff --git a/textproc.asm b/textproc.asm index 552e568..081782f 100644 --- a/textproc.asm +++ b/textproc.asm @@ -269,8 +269,6 @@ AfterManualPurchase ;-------------------------------------------------- .proc Purchase ; ;-------------------------------------------------- -; TODO: when round ends with a weapon depleted the pointer points to an empty line - ; In tanknr there is a number of the tank (player) ; that is buying weapons now (from 0). ; Rest of the data is taken from appropriate tables @@ -687,17 +685,19 @@ ChoosingItemForPurchase PurchaseKeyUp lda WhichList - beq GoUp1 + beq GoUpOffensive dec PositionOnTheList bpl EndUpX - lda #$00 - sta PositionOnTheList + ldy #0 ;HowManyOnTheListDef + ;dey + sty PositionOnTheList jmp ChoosingItemForPurchase -GoUp1 +GoUpOffensive dec PositionOnTheList bpl MakeOffsetUp - lda #$00 - sta PositionOnTheList + ldy #0 ;HowManyOnTheListOff + ;dey + sty PositionOnTheList MakeOffsetUp ; If offset is larger than pointer position, @@ -710,7 +710,7 @@ EndUpX jmp ChoosingItemForPurchase PurchaseKeyDown lda WhichList - beq GoDown1 + beq GoDownOffensive inc:lda PositionOnTheList cmp HowManyOnTheListDef bne EndGoDownX @@ -718,7 +718,7 @@ PurchaseKeyDown dey sty PositionOnTheList jmp ChoosingItemForPurchase -GoDown1 +GoDownOffensive inc:lda PositionOnTheList cmp HowManyOnTheListOff bne MakeOffsetDown From bccb9314338981b7995504a69e0176f549b07d24 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 15 Aug 2022 14:33:51 +0200 Subject: [PATCH 07/54] Purchase/Activate description as constant text Prepare to new DL (with jumps :) ) --- display.asm | 37 +++++++++++++++++++------------------ scorch.xex | Bin 50637 -> 50619 bytes textproc.asm | 12 ++---------- 3 files changed, 21 insertions(+), 28 deletions(-) diff --git a/display.asm b/display.asm index 146d89a..7467f02 100644 --- a/display.asm +++ b/display.asm @@ -10,10 +10,10 @@ PurchaseDL .byte $47 DLPurTitleAddr .word PurchaseTitle - .byte $70 + .byte $50 .byte $42+$80 .word textbuffer2 - .byte $02,$10,$42 + .byte $60,$42 MoreUpdl .word EmptyLine .byte 0,$42 @@ -23,9 +23,11 @@ WeaponsListDL .byte 0, $42 MoreDownDL .word EmptyLine - .byte $10,$42 + .byte $40,$42 .word WeaponsDescription - .byte 2 + .byte $0,$42 +PurActDescAddr + .word PurchaseDescription .byte $41 .word PurchaseDL ;------------------------ @@ -148,16 +150,21 @@ ListOfDefensiveWeapons :16 dta d" " ListOfDefensiveWeaponsEnd ;constant useful when clearing WeaponsDescription - dta d" " - dta d"Tab"* - dta d" - Defensive/Offensive weapon " dta d" " + dta d"Tab"* + dta d" - Defensive/Offensive weapon " +PurchaseDescription + dta d" " dta d"Space"* - dta d" - " -purchaseActivate - dta d"Purchase " + dta d" - Purchase " dta d"Return"* - dta d" - Finish " + dta d" - Finish " +ActivateDescription + dta d" " + dta d"Space"* + dta d" - Activate " + dta d"Return"* + dta d" - Finish " EmptyLine dta d" " ; ------------------------------------------------- @@ -222,14 +229,8 @@ textbuffer dta d"Round: Wind: " textbuffer2 dta d"Player: Cash: 0 " ; ZERO TO MAKE YOU RICHER ON THE SCREEN - dta d"----------------------------------------" +; dta d"----------------------------------------" ;--------------------------------------------------- -activateText - dta d"Activate" -activateTextEnd -purchaseText - dta d"Purchase" -purchaseTextEnd OptionsTitle dta d" scorch "* DifficultyTitle diff --git a/scorch.xex b/scorch.xex index 22427c04e4ff1934140bb68562ce27ab78c598db..a7e41c93e582a4e299a30cea09aaec594fe285b5 100644 GIT binary patch delta 16457 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 Date: Tue, 16 Aug 2022 11:29:41 +0200 Subject: [PATCH 08/54] Rearranging display.asm and fix for Long Schlong activation :) --- display.asm | 241 ++++++++++++++++++++++++++++------------------------ scorch.asm | 11 ++- scorch.xex | Bin 50619 -> 50633 bytes 3 files changed, 138 insertions(+), 114 deletions(-) diff --git a/display.asm b/display.asm index 7467f02..0d9e740 100644 --- a/display.asm +++ b/display.asm @@ -1,10 +1,58 @@ ; @com.wudsn.ide.asm.mainsourcefile=scorch.asm .IF *>0 ;this is a trick that prevents compiling this file alone +; ------------------------------------------------- + ; .ALIGN $1000 ; WARNING!!!! 4KiB barrier crossing here, might need reassignment!!! +;----------------------------------------------- +;------------------------ +; start of "variables" (RAM) +; --------------- +OptionsHere + ; 0123456789012345678901234567890123456789 + dta d"Players : 2 3 4 5 6 " + dta d"Cash : none 2K 8K 12K 20K " + dta d"Gravity : 0.2G 0.5G 1G 2G 4G " + dta d"Wind : 1B 3B 5B 7B 9B " + dta d"Rounds : 10 20 30 40 50 " + dta d"Missiles : slug slow norm fast hare " + dta d"Seppuku : nevr rare norm oftn alws " + dta d"Mountains: NL BE CZ CH NP " +OptionsScreenEnd +;----------------------------------------------- +ListOfWeapons + :36 dta d" " +ListOfWeapons1End +ListOfDefensiveWeapons + :16 dta d" " +ListOfDefensiveWeaponsEnd ;constant useful when clearing +NameScreen + dta d" Enter names of players " + dta d" Tank 01 Name:" +NameAdr + dta d" " + dta d" Human/Atari (difficulty level) " + dta d" " +NamesOfLevels + dta d" HUMAN Moron Shooter " + dta d" Poolshark Tosser Chooser " + dta d" Spoiler Cyborg Unknown " + dta d" " + dta d"Tab"* + dta d" - Player/Difficulty level " + dta d" " + dta d"Return"* + dta d" - Proceed " +;--------------------------------------------------- +textbuffer + ; 0123456789012345678901234567890123456789 + dta d"Player: " + dta d"Energy: Angle: Force: " + dta d"Round: Wind: " +textbuffer2 + dta d"Player: Cash: 0 " ; ZERO TO MAKE YOU RICHER ON THE SCREEN -;----------------------------------------------------- -;-------------display-lists--------------------------- -;----------------------------------------------------- +; DLs fragments (modified by game code) +; all Purchase DL :) PurchaseDL .byte $70 .byte $47 @@ -31,6 +79,75 @@ PurActDescAddr .byte $41 .word PurchaseDL ;------------------------ +DLCreditsFragm + .byte $60+$80 + .byte $42+$20 ; VSCRL +DLCreditsAddr + .word Credits + :6 .byte $02+$20 + .byte $02 + .byte $41 + .word GameOverDL +;------------------------ +; end of "variables" (RAM) +; --------------- +; start of "constants" (ROM) +;----------------------------------------------- +;Screen displays go first to avoid crossing 4kb barrier +;----------------------------------------------- +OptionsScreen + dta d"Welcome to Scorch v. " + build ; 4 bytes from scorch.asm (fancy method) :) + dta d" (un)2000-2022" + dta d" Please select option with cursor keys " + dta d" and press (Return) to proceed " +MoreUp + dta d" " + dta 92,92,92 + dta d" more " + dta 92,92,92 + dta d" " + .ALIGN $1000 ; WARNING!!!! 4KiB barrier crossing here, might need reassignment!!! +MoreDown + dta d" " + dta 93,93,93 + dta d" more " + dta 93,93,93 + dta d" " +WeaponsDescription + dta d" " + dta d"Tab"* + dta d" - Defensive/Offensive weapon " +PurchaseDescription + dta d" " + dta d"Space"* + dta d" - Purchase " + dta d"Return"* + dta d" - Finish " +ActivateDescription + dta d" " + dta d"Space"* + dta d" - Activate " + dta d"Return"* + dta d" - Finish " +EmptyLine + dta d" " +;--------------------------------------------------- +OptionsTitle + dta d" scorch "* +DifficultyTitle + dta d" difficulty "* +PurchaseTitle + dta d" weapons purchase " +InventoryTitle + dta d" weapons activate "* +GameOverTitle + dta d" game over "* +GameOverTitle2 + dta d" Player Points Hits Earned Money " +;----------------------------------------------------- +;-------------display-lists--------------------------- +;----------------------------------------------------- OptionsDL .byte $70 .byte $47 @@ -39,7 +156,10 @@ OptionsDL .byte $42 .word OptionsScreen .byte $30,$02,$02,$70 - :maxOptions .by $02,$10 + .byte $42 + .word OptionsHere + .byte $10 + :maxOptions-1 .by $02,$10 :(9-maxOptions) .by $70,$10 .byte $80 .byte $4f @@ -110,66 +230,6 @@ dl ; MAIN game display list .byte $41 .word dl ;----------------------------------------------- -;Screen displays go first to avoid crossing 4kb barrier -;----------------------------------------------- -OptionsScreen - dta d"Welcome to Scorch v. " - build ; 4 bytes from scorch.asm (fancy method) :) - dta d" (un)2000-2022" - dta d" Please select option with cursor keys " - dta d" and press (Return) to proceed " -OptionsHere - ; 0123456789012345678901234567890123456789 - dta d"Players : 2 3 4 5 6 " - dta d"Cash : none 2K 8K 12K 20K " - dta d"Gravity : 0.2G 0.5G 1G 2G 4G " - dta d"Wind : 1B 3B 5B 7B 9B " - dta d"Rounds : 10 20 30 40 50 " - dta d"Missiles : slug slow norm fast hare " - dta d"Seppuku : nevr rare norm oftn alws " - dta d"Mountains: NL BE CZ CH NP " -OptionsScreenEnd -;----------------------------------------------- -MoreUp - dta d" " - dta 92,92,92 - dta d" more " - dta 92,92,92 - dta d" " -MoreDown - dta d" " - dta 93,93,93 - dta d" more " - dta 93,93,93 - dta d" " -ListOfWeapons - :36 dta d" " -ListOfWeapons1End -;GameOverResults ; reuse after game (remember to clear on start new) -ListOfDefensiveWeapons - :16 dta d" " -ListOfDefensiveWeaponsEnd ;constant useful when clearing -WeaponsDescription - dta d" " - dta d"Tab"* - dta d" - Defensive/Offensive weapon " -PurchaseDescription - dta d" " - dta d"Space"* - dta d" - Purchase " - dta d"Return"* - dta d" - Finish " -ActivateDescription - dta d" " - dta d"Space"* - dta d" - Activate " - dta d"Return"* - dta d" - Finish " -EmptyLine - dta d" " -; ------------------------------------------------- - ; .ALIGN $1000 ; WARNING!!!! 4KiB barrier crossing here, might need reassignment!!! -;----------------------------------------------- GameOverResults = display+$0ff0 ; reuse after game Credits = GameOverResults +(6*40) CreditsLastLine = Credits + (41*40) @@ -195,52 +255,9 @@ GameOverDL .byte $42 .word GameOverResults :5 .byte $00+$80,$02 - .byte $70+$80 - .byte $42+$20 ; VSCRL -DLCreditsAddr - .word Credits - :6 .byte $02+$20 - .byte $02 - .byte $41 - .word GameOverDL - -NameScreen - dta d" Enter names of players " - dta d" Tank 01 Name:" -NameAdr - dta d" " - dta d" Human/Atari (difficulty level) " - dta d" " -NamesOfLevels - dta d" HUMAN Moron Shooter " - dta d" Poolshark Tosser Chooser " - dta d" Spoiler Cyborg Unknown " - dta d" " - dta d"Tab"* - dta d" - Player/Difficulty level " - dta d" " - dta d"Return"* - dta d" - Proceed " -;--------------------------------------------------- -textbuffer - ; 0123456789012345678901234567890123456789 - dta d"Player: " - dta d"Energy: Angle: Force: " - dta d"Round: Wind: " -textbuffer2 - dta d"Player: Cash: 0 " ; ZERO TO MAKE YOU RICHER ON THE SCREEN -; dta d"----------------------------------------" -;--------------------------------------------------- -OptionsTitle - dta d" scorch "* -DifficultyTitle - dta d" difficulty "* -PurchaseTitle - dta d" weapons purchase " -InventoryTitle - dta d" weapons activate "* -GameOverTitle - dta d" game over "* -GameOverTitle2 - dta d" Player Points Hits Earned Money " + .byte $01 + .word DLCreditsFragm +; --------------- +; end of "constants" (ROM) +;----------------------------------------------- .endif \ No newline at end of file diff --git a/scorch.asm b/scorch.asm index 6dd5e57..210ab75 100644 --- a/scorch.asm +++ b/scorch.asm @@ -214,6 +214,15 @@ START ; for the round #1 shooting sequence is random MainGameLoop + ; first set default barrel lengths (fix for Long Schlong activation :) ) + ; we must do it before purchase/activate + ldx #(MaxPlayers-1) +SettingBarrel + lda #StandardBarrel ; standard barrel length + sta BarrelLength,x + dex + bpl SettingBarrel + jsr CallPurchaseForEveryTank ; issue #72 (glitches when switches) @@ -394,8 +403,6 @@ SettingEnergies sta Energy,x sta eXistenZ,x sta LASTeXistenZ,x - lda #StandardBarrel ; standard barrel length - sta BarrelLength,x ; anything in eXistenZ table means that this tank exist ; in the given round lda #<1000 diff --git a/scorch.xex b/scorch.xex index a7e41c93e582a4e299a30cea09aaec594fe285b5..bb48b09d1a5dadbce34b5c8796ed2350383e4bd2 100644 GIT binary patch delta 16677 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 Nvv|||IODO&{|_cXF984m delta 16625 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 From 84c4e0dcdd5f2e1546f9e2ffb161179e097bd1c9 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Tue, 16 Aug 2022 11:57:00 +0200 Subject: [PATCH 09/54] Smoke Tracer fixed! --- scorch.xex | Bin 50633 -> 50627 bytes weapons.asm | 45 ++++++++++++++++++--------------------------- 2 files changed, 18 insertions(+), 27 deletions(-) diff --git a/scorch.xex b/scorch.xex index bb48b09d1a5dadbce34b5c8796ed2350383e4bd2..f2b9b860d7b60cf913ad1326aab76b08993f74ef 100644 GIT binary patch delta 13965 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 delta 14084 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 X__O-m`!`IFh^+CozPrxfx5xhj9oIXY diff --git a/weapons.asm b/weapons.asm index a04e04c..2a552bc 100644 --- a/weapons.asm +++ b/weapons.asm @@ -1792,10 +1792,10 @@ NoWind bit TestFlightFlag bmi nowait - lda tracerflag - bne nowait - lda color - beq nowait +; lda tracerflag +; bne nowait +; lda color +; beq nowait jsr shellDelay @@ -1966,40 +1966,31 @@ BouncyCastle .proc SecondFlight ; ---------------- copied code fragment from before firing. not too elegant. ; ---------------- get fire parameters again - ldx TankNr + + ldx TankNr + lda ActiveWeapon,x lda ForceTableL,x sta Force lda ForceTableH,x sta Force+1 - lda #$0 - sta Force+2 lda AngleTable,x sta Angle + ; Shoots tank nr X !!! :) + ; set the starting coordinates of bullet with correction + ; to start where the tank's barrel ends + ; (without it bullet would go from the left lower corner of the tank) + ;ldx TankNr + + mwa EndOfTheBarrelX xtraj+1 + mva EndOfTheBarrely ytraj+1 lda #0 - sta color + sta Force+2 + sta ytraj+2 sta xtraj sta ytraj + sta color - mwa EndOfTheBarrelX xbyte - mva EndOfTheBarrelY ybyte - mva #0 ybyte+1 - -; ldy Angle -; clc -; lda xtraj+1 -; adc EndOfTheBarrelX,y ; correction of X -; sta xtraj+1 -; lda xtraj+2 -; adc #0 -; sta xtraj+2 -; sec -; lda ytraj+1 -; sbc EndOfTheBarrelY,y ; correction of Y -; sta ytraj+1 -; lda ytraj+2 -; sbc #0 -; sta ytraj+2 ldy #100 ; ??? mva #1 tracerflag ; I do not know (I mean I think I know ;) ) From 1e3cfcf5a14fe2399ca5eb4c94e08620841cb79e Mon Sep 17 00:00:00 2001 From: Pecusx Date: Tue, 16 Aug 2022 13:31:59 +0200 Subject: [PATCH 10/54] Funky Bomb fix after Smoke Tracer fix :) --- scorch.xex | Bin 50627 -> 50640 bytes weapons.asm | 12 ++++++------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/scorch.xex b/scorch.xex index f2b9b860d7b60cf913ad1326aab76b08993f74ef..cda884c77c7bae74647c4171bb4c42ae89e1c787 100644 GIT binary patch delta 14530 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 sb2FB>3OCF8&no>#zIFXgvG26}$fMRkSO5S3 delta 14463 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 F{{U4m&kg_p diff --git a/weapons.asm b/weapons.asm index 2a552bc..4e8a8e3 100644 --- a/weapons.asm +++ b/weapons.asm @@ -194,7 +194,7 @@ EndOfLeapping mva #0 Erase pla sta TankNr - + mva #1 color mva #5 FunkyBombCounter FunkyBombLoop mva #1 tracerflag @@ -1792,11 +1792,11 @@ NoWind bit TestFlightFlag bmi nowait -; lda tracerflag -; bne nowait -; lda color -; beq nowait - + lda color + beq nonowait + lda tracerflag + bne nowait +nonowait jsr shellDelay nowait From 069fd55c2874d14360c8ce73340858fbe7311532 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Tue, 16 Aug 2022 13:42:26 +0200 Subject: [PATCH 11/54] More labels for understanding --- scorch.asm | 11 ++++++----- weapons.asm | 6 +++--- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/scorch.asm b/scorch.asm index 210ab75..9af94bf 100644 --- a/scorch.asm +++ b/scorch.asm @@ -96,12 +96,13 @@ .zpvar Angle .byte .zpvar Parachute .byte ; are you insured with parachute? .zpvar color .byte - .zpvar Erase .byte + .zpvar Erase .byte ; if 1 only mask of the character is printed + ; on the graphics screen. if 0 character is printed normally .zpvar radius .byte .zpvar decimal .word - .zpvar NumberOfPlayers .byte + .zpvar NumberOfPlayers .byte ;current number of players (counted from 1) .zpvar Counter .byte ;temporary Counter for outside loops - .zpvar ExplosionRadius .word + .zpvar ExplosionRadius .word ;because when adding in xdraw it is double byte .zpvar ResultY .byte .zpvar FallDown2 .byte .zpvar xcircle .word @@ -110,8 +111,8 @@ .zpvar vy_ .word ; 4 bytes .zpvar vx .word .zpvar vx_ .word ; 4 bytes - .zpvar HitFlag .byte - .zpvar PositionOnTheList .byte + .zpvar HitFlag .byte ;$ff when missile hit ground, $00 when no hit, $01-$06 tank index+1 when hit tank + .zpvar PositionOnTheList .byte ; pointer position on the list being displayed .zpvar XHit .word .zpvar delta .word .zpvar HowMuchToFall .byte diff --git a/weapons.asm b/weapons.asm index 4e8a8e3..f97358d 100644 --- a/weapons.asm +++ b/weapons.asm @@ -1793,9 +1793,9 @@ NoWind bit TestFlightFlag bmi nowait lda color - beq nonowait - lda tracerflag - bne nowait + beq nonowait ; smoke tracer erases slowly + lda tracerflag + bne nowait ; funky bomb explotes fast ( tracerflag in real is funkyflag :) ) nonowait jsr shellDelay From a4b3a403b5f369db3b5c2b3100f19ad835ebf8b7 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Tue, 16 Aug 2022 22:53:29 +0200 Subject: [PATCH 12/54] 0 weapon bug fixed! It allowed for multiple firing of weapons despite the lack of missiles --- scorch.asm | 21 ++++++++++++--------- scorch.xex | Bin 50640 -> 50644 bytes 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/scorch.asm b/scorch.asm index 9af94bf..539788b 100644 --- a/scorch.asm +++ b/scorch.asm @@ -613,14 +613,6 @@ continueMainRoundLoopAfterSeppuku AfterExplode - ; TODO: IS IT OK??? possibly a fix here needed for #56 - ldy WeaponDepleted - bne @+ - ldx TankNr - tya - sta ActiveWeapon,x -@ - ;temporary tanks removal (would fall down with soil) mva #1 Erase jsr drawtanks @@ -642,9 +634,17 @@ TanksFallDown NoExistNoFall dex bpl TanksFallDown - mva tempor2 TankNr + mvx tempor2 TankNr missed + ; TODO: IS IT OK??? possibly a fix here needed for #56 + ldy WeaponDepleted + bne @+ + ldx TankNr + tya + sta ActiveWeapon,x +@ + ;here we clear offensive text (after a shoot) ;shit -- it's second time, but it must be like this ldy TankNr @@ -1605,8 +1605,11 @@ noKey .proc RmtSongSelect ;-------------------------------------------------- ; starting song line 0-255 to A reg + cmp #song_ingame + bne noingame ; noMusic blck onlu ingame song bit noMusic spl:lda #song_silencio +noingame mvx #$ff RMT_blocked ldx #MODUL ;hi byte of RMT module to Y reg diff --git a/scorch.xex b/scorch.xex index cda884c77c7bae74647c4171bb4c42ae89e1c787..2dcedc4f879035ccf25edb189bf0e83e636879d8 100644 GIT binary patch delta 14386 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 aF&HBv493WagfWqF+rI7BAMpOS{r>}>1IHu) delta 14396 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 From 0e9914316beb9e3c2b5a18224dedc995eff8bc1b Mon Sep 17 00:00:00 2001 From: Pecusx Date: Tue, 16 Aug 2022 23:17:51 +0200 Subject: [PATCH 13/54] New tester in credits :) --- constants.asm | 3 +++ scorch.xex | Bin 50644 -> 50673 bytes 2 files changed, 3 insertions(+) diff --git a/constants.asm b/constants.asm index 98ed096..37cf3b0 100644 --- a/constants.asm +++ b/constants.asm @@ -640,6 +640,9 @@ CreditsStart dta d"Beeblebrox, KrzysRog, lopezpb, Dracon",d","* dta d"brad-colbert, archon800, nowy80",d","* dta d"Shaggy the Atarian, RetroBorsuk, ZP",d"H"* + dta d" "* + dta d"Additional testin",d"g"* + dta d"Arek Peck",d"o"* dta d" "* dta d"Stay tuned for the FujiNet version",d"!"* dta d" "* diff --git a/scorch.xex b/scorch.xex index 2dcedc4f879035ccf25edb189bf0e83e636879d8..95186168ff100dde98fadcb3435c5d4c1903d262 100644 GIT binary patch delta 10722 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 MdXY`_zU%w^A5ZgA>Hq)$ delta 10684 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 Date: Wed, 17 Aug 2022 09:06:56 +0200 Subject: [PATCH 14/54] Correct number of lines in credits --- constants.asm | 1 + display.asm | 2 +- scorch.xex | Bin 50673 -> 50673 bytes 3 files changed, 2 insertions(+), 1 deletion(-) diff --git a/constants.asm b/constants.asm index 37cf3b0..bbebd68 100644 --- a/constants.asm +++ b/constants.asm @@ -647,4 +647,5 @@ CreditsStart dta d"Stay tuned for the FujiNet version",d"!"* dta d" "* CreditsEnd +CreditsLines=44 .endif diff --git a/display.asm b/display.asm index 0d9e740..bd6dfc2 100644 --- a/display.asm +++ b/display.asm @@ -232,7 +232,7 @@ dl ; MAIN game display list ;----------------------------------------------- GameOverResults = display+$0ff0 ; reuse after game Credits = GameOverResults +(6*40) -CreditsLastLine = Credits + (41*40) +CreditsLastLine = Credits + (CreditsLines*40) GameOverDL .byte $70,$40 .byte $47 ; 16 gr8 lines diff --git a/scorch.xex b/scorch.xex index 95186168ff100dde98fadcb3435c5d4c1903d262..d67d8b9f7a40aadb0c7f4227d38f14e52422d7f3 100644 GIT binary patch delta 16 Xcmey^&HS;Od4qEl Date: Wed, 17 Aug 2022 19:46:40 +0200 Subject: [PATCH 15/54] Real tanks colors from Adam (but order still not) --- constants.asm | 4 ++-- scorch.asm | 4 ++-- scorch.xex | Bin 50673 -> 50673 bytes 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/constants.asm b/constants.asm index bbebd68..013383c 100644 --- a/constants.asm +++ b/constants.asm @@ -21,8 +21,8 @@ initialvaluesCount = *-initialvaluesstart ; MAX 128 bytes ! ;=================================================================================== ;==========================CONSTANT TABLES, do not erase!=========================== ;=================================================================================== -TankColoursTable .BYTE $58,$2a,$96,$ca,$7a,$de -TankStatusColoursTable .BYTE $54,$24,$94,$c4,$74,$d4 +TankColoursTable .BYTE $58,$2a,$96,$ca,$7a,$ed +TankStatusColoursTable .BYTE $54,$24,$92,$c4,$74,$e4 TankShapesTable .BYTE char_tank1___________,char_tank2___________,char_tank3___________ .BYTE char_tank1___________,char_tank2___________,char_tank3___________ dliColorsBack diff --git a/scorch.asm b/scorch.asm index 539788b..3cff388 100644 --- a/scorch.asm +++ b/scorch.asm @@ -1048,7 +1048,7 @@ SetunPlots lda #$03 ; P/M on sta pmcntl jsr SetPMWidth - lda #%00100000 ; P/M priorities (multicolor players on) + lda #%00100001 ; P/M priorities (multicolor players on) - prior=1 sta gtictls jsr PMoutofScreen @@ -1139,7 +1139,7 @@ MakeTanksVisible phy lda dliCounter bne EndofPMG - lda #%00100000 ; playfield after P/M + lda #%00100001 ; playfield after P/M - prior=1 STA WSYNC sta gtictl bne EndOfDLI_GO diff --git a/scorch.xex b/scorch.xex index d67d8b9f7a40aadb0c7f4227d38f14e52422d7f3..c403d10dc03fd139542b57fcf3518b2387437c53 100644 GIT binary patch delta 34 qcmey^&HS;Oc|%1cqvGVs$V^7X&5tA59oXN7s7yLi@?`PHnK}UfvkyA} delta 34 qcmey^&HS;Oc|%1cqr&9M$V^6s&5tA59oX-Ms7yIha%J(ynK}Ueqz@bb From 63adc066da9a8271ee7c5a9ef1c3e8314a56e64b Mon Sep 17 00:00:00 2001 From: Pecusx Date: Wed, 17 Aug 2022 20:14:11 +0200 Subject: [PATCH 16/54] Tanks colors mapping and order from Adam --- constants.asm | 5 ++++- grafproc.asm | 5 +++++ scorch.xex | Bin 50673 -> 50689 bytes 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/constants.asm b/constants.asm index 013383c..0c263e5 100644 --- a/constants.asm +++ b/constants.asm @@ -22,7 +22,10 @@ initialvaluesCount = *-initialvaluesstart ; MAX 128 bytes ! ;==========================CONSTANT TABLES, do not erase!=========================== ;=================================================================================== TankColoursTable .BYTE $58,$2a,$96,$ca,$7a,$ed -TankStatusColoursTable .BYTE $54,$24,$92,$c4,$74,$e4 +;TankStatusColoursTable .BYTE $54,$24,$92,$c4,$74,$e4 ; standard order +;TanksPMOrder .BYTE 4,3,1,5,0,2 ; 0-3 = P0-P3 , 4 = M0+M1 , 5 = M2+M3 +TankStatusColoursTable .BYTE $74,$c4,$24,$e4,$54,$94 ; Adam's order +TanksPMOrder .BYTE 4,3,1,5,0,2 ; 0-3 = P0-P3 , 4 = M0+M1 , 5 = M2+M3 TankShapesTable .BYTE char_tank1___________,char_tank2___________,char_tank3___________ .BYTE char_tank1___________,char_tank2___________,char_tank3___________ dliColorsBack diff --git a/grafproc.asm b/grafproc.asm index 9d4ec3f..39029a6 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -611,6 +611,8 @@ DrawNextTank bne SkipHidingPM ; if energy=0 then no tank ; hide P/M + lda TanksPMOrder,x + tax lda #0 cpx #$4 ; 5th tank is defferent bne No5thTankHide @@ -626,6 +628,7 @@ No5thTankHide No6thTankHide sta hposp0,x @ + ldx TankNr jmp DoNotDrawTankNr SkipHidingPM @@ -646,6 +649,8 @@ DrawTankNrX ; now P/M graphics on the screen (only for 5 tanks) ; horizontal position ldx TankNr + lda TanksPMOrder,x + tax mwa xdraw xbyte rorw xbyte ; divide by 2 (carry does not matter) lda xbyte diff --git a/scorch.xex b/scorch.xex index c403d10dc03fd139542b57fcf3518b2387437c53..5147ba987ea563e12ecb27ad282853fa993df0ba 100644 GIT binary patch delta 12607 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 From 8a3d3ae0a93ae82f427a4768219e370ddd15b9d6 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Thu, 18 Aug 2022 09:36:41 +0200 Subject: [PATCH 17/54] New offensive(defensive) weapon - "Buy me!" #97 --- constants.asm | 24 ++++++++++++------------ definitions.asm | 4 ++-- scorch.xex | Bin 50689 -> 50740 bytes textproc.asm | 29 +++++++++++++++++++++++++++-- 4 files changed, 41 insertions(+), 16 deletions(-) diff --git a/constants.asm b/constants.asm index 0c263e5..52e2379 100644 --- a/constants.asm +++ b/constants.asm @@ -263,7 +263,7 @@ WeaponPriceH ; weapons prices (tables with prices of weapons) .by >price_Ton_of_Dirt____ .by >price_Liquid_Dirt____ .by >price_Dirt_Charge____ - .by >price_Earth_Disrupter + .by >price_Buy_me_________ .by >price_Plasma_Blast___ .by >price_Laser__________ .by >price______________33 @@ -329,7 +329,7 @@ WeaponPriceL .by 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 P5f7G*+ta)HZ14XIerL?9 delta 13624 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 diff --git a/textproc.asm b/textproc.asm index f5246ed..8236043 100644 --- a/textproc.asm +++ b/textproc.asm @@ -795,7 +795,34 @@ positiveMoney ; now we have to get address of ; the table of the weapon of the tank ; and add appropriate number of shells + + sty LastWeapon ; store last purchased weapon + ; because we must put screen pointer next to it + ; but if we purchasing "Buy me!" then we must draw the winning weapon. + + cpy #ind_Buy_me_________ + bne NoSuprise + +Suprise ; get a random weapon + lda random + cmp #51 ; defensive weapons are less likely because they are more expensive - probability 255:51 (5:1) + bcc GetRandomDefensive +GetRandomOffensive + randomize ind_Missile________ ind_Laser__________ + cmp #ind_Buy_me_________ + beq GetRandomOffensive + tay + lda WeaponUnits,y ; check if weapon exist + beq GetRandomOffensive + bne NoSuprise ; Y always <> 0 +GetRandomDefensive + randomize ind_Battery________ ind_Nuclear_Winter_ + tay + lda WeaponUnits,y ; check if weapon exist + beq GetRandomDefensive + +NoSuprise lda TanksWeaponsTableL,x sta weaponPointer lda TanksWeaponsTableH,x @@ -810,8 +837,6 @@ positiveMoney lda #99 sta (weaponPointer),y LessThan100 - sty LastWeapon ; store last purchased weapon - ; because we must put screen pointer next to it mva #0 PositionOnTheList ; to move the pointer to the top when no more monies jmp Purchase.AfterPurchase From 316cf9569f720299b19db776e9cd5fde7f6bc49b Mon Sep 17 00:00:00 2001 From: Pecusx Date: Thu, 18 Aug 2022 09:53:46 +0200 Subject: [PATCH 18/54] "Buy me!" icon --- constants.asm | 2 +- scorch.xex | Bin 50740 -> 50740 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/constants.asm b/constants.asm index 52e2379..085a42e 100644 --- a/constants.asm +++ b/constants.asm @@ -490,7 +490,7 @@ WeaponSymbols .by $40,$41,$42,$43,$44,$45,$46,$47 .by $48,$49,$4a,$4b,$4c,$4d,$4e,$4f .by $50,$51,$52,$53,$54,$55,$56,$57 - .by $58,$59,$5a,$5b,$60,$7b,$7c,$7d + .by $58,$59,$5a,$5b,$60,$7b,$1f,$7d .by $20,$00,$00,$00,$00,$00,$00,$00 .by $00,$00,$00,$00,$00,$00,$00,$00 .by $5f,$1c,$03,$06,$1d,$0a,$1b,$1b ; defensives diff --git a/scorch.xex b/scorch.xex index cf68f39f52c791deeb94bd15c06af0ade114a1b4..6ce5151210c946dd22570f29e1e7d473fe340e88 100644 GIT binary patch delta 16 Ycmdne!@Q-3c|+VhM)}S0^RB7`06Yi={{R30 delta 16 Ycmdne!@Q-3c|+Vh#+uFX^RB7`06sPcTmS$7 From 39463ed0bbe9bb59505b5920f0eee3fb309bd712 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Thu, 18 Aug 2022 13:48:36 +0200 Subject: [PATCH 19/54] Spaces in tank names #120 --- constants.asm | 4 ++-- scorch.xex | Bin 50740 -> 50749 bytes textproc.asm | 10 ++++++++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/constants.asm b/constants.asm index 085a42e..1beb554 100644 --- a/constants.asm +++ b/constants.asm @@ -593,14 +593,14 @@ keycodes ;tables for converting KeyCode to Screen Code (38 -1 characters) .by $0d,$01,$05,$00,$25,$23,$08,$0a .by $2f,$28,$3e,$2d,$0b,$10,$2e,$16 .by $2b,$17,$1f,$1e,$1a,$18,$1d,$1b - .by $33,$35,$30,$32,$22 ;,$0e <-- hyphen removed from the table, sorry hyphen lovers + .by $33,$35,$30,$32,$22,$21 ;,$0e <-- hyphen removed from the table, sorry hyphen lovers keycodesEnd scrcodes dta d"abcdefgh" dta d"ijklmnop" dta d"qrstuvwx" dta d"yz123456" - dta d"7890." ; "-" + dta d"7890. " ; "-" ;----------------------------------- gameOverSpritesTop ; end of the Gover sprites by number of players diff --git a/scorch.xex b/scorch.xex index 6ce5151210c946dd22570f29e1e7d473fe340e88..ad09662dd930eff9bfa38d78a5616a389505b097 100644 GIT binary patch delta 13467 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 sw^98<#uI)M2Sk&PYwZLa&^e{Fq6j> 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 diff --git a/textproc.asm b/textproc.asm index 8236043..4965602 100644 --- a/textproc.asm +++ b/textproc.asm @@ -1096,14 +1096,20 @@ NoArrowDown ldy #0 @ lda TanksNames,x - beq endOfTankName +; beq endOfTankName sta NameAdr,y inx iny cpy #8 bne @- endOfTankName - + +@ lda NameAdr,y + bne LastNameChar + dey + bpl @- +LastNameChar + iny lda #$80 ; place cursor on the end sta NameAdr,y From ff1965a40237fa0a3a3f520079eeac7d6c80d17d Mon Sep 17 00:00:00 2001 From: pkali Date: Thu, 18 Aug 2022 08:43:05 -0400 Subject: [PATCH 20/54] spaces in 4x4 text fix --- scorch.xex | Bin 50749 -> 50746 bytes textproc.asm | 8 +++----- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/scorch.xex b/scorch.xex index ad09662dd930eff9bfa38d78a5616a389505b097..ec3da2aa4996e5c5ebacf16fe59fe3a065c0c621 100644 GIT binary patch delta 13024 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 DxS*^k delta 13245 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 Date: Thu, 18 Aug 2022 08:58:29 -0400 Subject: [PATCH 21/54] check all chars for non-default tank name --- scorch.xex | Bin 50746 -> 50756 bytes textproc.asm | 12 ++++++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/scorch.xex b/scorch.xex index ec3da2aa4996e5c5ebacf16fe59fe3a065c0c621..9e17afde192c003e56d7106606f751f3b8563b21 100644 GIT binary patch delta 13506 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 W?s(_RZE0bqQNn_El4|m>0tE;Q3 ztE>7zapWh(k-i`18i&6BxX8L`21nLGL9jZSXrbnc<4+`*{~>(6r|ts|!@22#Wo%u2^B&suxj*P0}ZdGt0&=j@qe?J}fc zzydtr6YMxdn3%SRL1TS`>C)Z^U!PE0b3|bSY-*}( z-mp#dY!hwjBC+u<(Uk~h7l}#|*~JyDvJRat7yE4@DXN61wMc8rG{wlTkh#~M!M5y| zi~N=XzAl1uyvSX7-haCo9Kh9N%SC8#)>&$&BY}QeCoWdd1iM|5UDX3$z`mUiiiix%q?OIkK`7uYcTyNdvc4aeh{@7xoC^0S={Dmqvnmq z+8}Z6&FKxM3rcUYi;3uMF&NE;cgNV~VyU>cUWaAfApRusmqh-um~c^CJn|>@bJJh8Fk^6#MKPSeDC%R*W6Vz&dmaNXvER## zfQ|oA6yp?w`KgQ_VfkX_oo4lF$MhI2z6`$|5=3khXQ_IgnDNI zzdu5~tAIZkVe_UbhBK*J1T5}0uP5E>k-VNJujjURJn8Q=1S3sFvH-s&fqRh7p(K*O=VOu zc}gfmL#cAz^OmrD-hf_P;QjuMolNpVYd*1sJfcuOZ(zS!1yzd+{`t>;@_n>ov)26a z%8Hd!W?+s!nz~pxI&ZkKwPgP08Q*P9jpPz5mFuw5$V%W;uCzY!53ixnV-wGwiP0|E zyap!9*xGvECBWLgbKTqACv0M{HQ#jktj8vtnm@?#h+JE$MXP_5YXx7k`dFy-C|a(s zB>{d%Duv(ipA=6Wg7x^1il^#DUl;tM3sCggbPF81mbqwr?&7+>!cBNl2hN+#h2ZKq z`P67RnBa=JHd?kmKI^pp7nru`9oY67{BTB<;@N-HYZsXXmv{}ig1=HcwOtGjat$PI z|8~|dxjoxO=9k?5r6Sgc_EO=%g4<1_WUaUQNtFY=I6 zShHxr{{wsXqJfWOQoe$!S(I03m{cWIowUWkZ>P` z!acU6PVKE_wuc4`}Ud^=_HNXCiGdwQy(Wnx#zUCS4KDS?XX1HQOWN6y2S?WM9$yPZp$x#P+G5KIG zCLiJ@x$3Q6lEXz^T<2M}4L|VuG5jtwNM-nGg)(q7pI72Nh5g|EXYmU6QvQo8D zZGk$Q);9Paks2&mmDz5LkB_hLpA-K6Z>?#ae)-N7B zWyAaDaEZe7W&M{j78yI5&W??{>k%b^>|z=!kuoXE{tnq98mi0qeiX4U{`*xA$#&)h z?`!NwgAuN~Ex>Cr0u&O5Hk=zS)GnK094;iJ4}^`5Odl}TMLQXJ7fum!2HV+>N?QW& zK(WdKQm~g)rbX0ksVl2413}H;i^4k2D3ahv@0Z*Z?B9&;<}Eim6Qnby80^j&gfxuU z8B?5MG_P_A2h#5{UKFmT-#6_(W|vc`dLI;BoeDk2`hK+n@bD`b$p!;h(HN{q$XWi- zlWo$dE+g5&h`MYk+g-+Xkn8GDr%^5P(Eaq#G^*ZD0|p#J)9@3Fv_ABx4Z3jvntk)Z zqaQh;*E*^x#%>G&U!I$UF&-KkO<)$aEf98hKKqs=xxzSV1}5- zfRy^z5_^(m=vthcu=T)ohzQ8<<1V1jiRJCmmpF7Sx-D>lK#J1&V@SgFmA5#CuEo*I z27eG5Z2axPX81}V`F#2eVI-vwWBXdO=x;`-uCY6d{>>d*8vGAL^*R%$n?+N!GOE4j zT&PF6{y^(izGv%JUD9o^@3!*a396lQjF1u9>(`3K&tMLgN++uRWFYL_hDD1+K1GiHlkaTjp0x}ll)c6BB$UmXR-ie7IU8`ttS@% zSNAtLG!Sq_qh-3A@o}>vV6M2(Ji|9y^XE%{CA~AHQ{a9k<9-&n2Sy|}e5261Y~bMG z8>K@8p%clHG?FbHCOK8F(qL>pw8uJT5q7*vNLid=*+5G?2%un^UzbcNl2U^&l1RR&-_;1{PChKB3_ zyTe1U9mw#RR5}H)1#8j6TP&x=03>D>R>wTK$N@8Kx48e4we1&|!2qf##(SfnCZ30x zl6W3xD&kp4rDL9@R66ciPNlCsPgCiH=Q$XHXEoxgBWCHieHp(3J$3{C4EpR21OGg= zNXJ{2@hbrabE^Qx&kHzrj@#>bdk8s$AshG?b=-RXsSxh7A>5akf!-AMd#`U=M_boX zbsY^vGjGPPqdV47E%leC;pku+zhxHCJ^yNojoZ1z?0=YUSk9K~f1GZ3nyuKskZyR6 zE&6{n2+X~K@*9~Anqm=yZKSDPpzV4f>X?Ei$S{2d*}xP8rrV$o%Mjn`L5X0k>Y@VNli{!oQyEBU6KC0enQwM5+m|((= zC8FB-Xk+K2!K(-CGxn>S8evr!_0F=(gIQ2qb7-4=ol=U+MS^5TkY5u~-HOXh@&ZeTT#jaG4)kt zE^kT0eB;v;p>lPXE=aIv7HcszNU!e|_N`7CY~V>9H~(qbZI+z&B(hl|b_03czqc5Z zWfqfzoLMlvJSc|gO3e;o+{-Eb8M1#aFGjhY5KD;|8RH&Wl5e_VmfZG2A@k*)<4s;% zTMXozV4rg)uhw1d=GEfV1TXo<`dPY~h~L69slLut3EuK!v^Bx2b*f7AmS3Z-i9+Mc zLppW$`Xc%6UNu3u^743NBL4Oh9$eGEJH$7Tk?N(ZwP-kTOxU=_Y#b$&tr_L$<_&hP z`^MB4ne=b0Z!X7Y6#JCEX$+GC5QBr=n;9(8tKES)^L1Pu0xn{}5Fl!Iui2hh`;9No zB7M`62u?5*TLX@|d1o4VaL})P1Jwm=?+b)!uk@axe?GHPN5@*@qe@SA7~d(Pq&)aJD`d>^v}9OH}$H{$LdgB+spX zS{ay(?DGJCdZNIiakwe;ICW0c5|sXn01Rh`gGungH8wXwllIxGck2EFJ?>yMDlw`3{Y~y2J-k{(x8yXCI;&*j@0qyZ(M>&sZm-_z z=-~|-8+0J1+C0hg`lL-gyw>mRtv$VJPj8@;9>w(Zf*Al0=|Eh@;=pYP1SF(K&-Xj+Q;JIBCCm9Nv`(V`(wRBRlBbbO)B|AKqw(4vA!RDV^ ze4}x}=8f~eUV!s+YXR)I)486))mO(3=vGqR%bRcdyJ&zH?d3gV&=U4W1>+mLl^|O0 zCs@}H9u`LVhuX`_z%gpS626yLGy>hd84|SBTt&{e#wfhL{;_Vi%TftHOqM7TILt># z!q4jmI+A7BREn(LA>+a~TqY$|DRQ+tIgMW~t0{7Pym{5_GEo%6s$nvzRFh@0oqH#< zH3eiEQ)KOkZN~`NKg`45A^YF-@WbV^_#q{LAQvdP&x5KUm7E9NQj~Eh=YHCz@3`51 z2{i(PeXE0%NN$V9!(*Rim zny`N35XUd3?)P+SZn%)nsP`11_!E)?Gv_Xd8A|Mk8CW=CAe+&>lSL{%L@KPm$FKYMvHo4*{sA5O z#UX095{KKpvZ9{JA<}x`*}XAAIPLQ9x7KSHP=9+8w*&ovLb(^!J0$_(lsB3i@jQIG zHyVqGrGXhfBzN>1H266{9za4Yma@aD6MjSgF|@h97@)?vA~715b|4^2F>PIg!&JlF zIa~WPvp4o0f_vq88#|BVaUKuyUG&7V!bHG;)`w_~mT$D~@Lf#4X5R2Yf#<5||D?cf z@ECPW&K09`jGQ?RRD_b19s_sw%=g-5o6;ZNsDzX#K_Vy|DHRPUS;m&?HOn5t+u7Es zrOzutJ}ph*_$g^PRd+RuHFJ6Xg~_<_BcjJHycCWF5tXrQ9P@7Q12NMWDtem`r!f<>;tqo^eI9+ zZYQ9qNFupaq>xI~%c9VjbMJ`xPs84U{ZSht$RHzF$1;KkmF;1$nXx=txZBy+I9hnj zId~vj16*&L#+9!KN5Hmi_4zfOg)-;eQL`y;6^=V+PoIHHQ+87>*)HWY<&i4ujF-SU z1Lihm1DMy8L#m{#TEa>?wN95=ok2TA=m?ojPNLwZMM$M}tzaiZj6Q)UNj-rO1q4Zn zu8iIuU4=0E+G^obGRKj$+AO`7UQOPUeCdBCK2S=I(t1c+Axx}V^5U#{hm=~Ut_DZ| zs1zVKKqU;*sF}=?kp3p}Or_~>ksRyF)fVZ^CIRiYno5yX15O0Pai^CfV^os<2FbD( z1E;*njrJQ&C1Xfd%0kf;-#Qz4v{ozC=FFXmTvu15tRlIK8<7SWC*`D$)$21_3T~V@ zVn4|pFk~hz4yVytRs*kjD{2d(B-XN;_|{q}7-{`cxSDHCa=qOAnpvXuI6|d&gI!YN zEluoM!@Cg9(!4%V_rA=zg!Oqt9S>0HFbqA1pF=^;B56$(Sj6ELfb{mErq{sm7iedp ztv^}Y*;L$vQ|j8yxlS^bi3xThF+WH8VTN+eNG&KE6vha9|s15Z`7J3#8?)QhayQUT( zYZqAHi@^Og9}jbOWpTs-tjWT|1$V|+3Q;bbEbs-7%t0b@e6V+5VsKDkLa={eQqY8q zWEZ^3Nz!iT($`vtuEk&O*o}`{)&YV@KOYXy(h^6qK~^+M2ZF|Y=YCETMinNlobZZh zwka0@5;S2koNS|UlNFQP6>L6H^vD50`ems6Kr=hnVQjL;F(oC)>HLdUNmrlDmad_>&Pb{@=dR2_AnNeK(esE0f2f^rk(+{ajQ|8j=7D92fSSV2- zB8c)g-WD05UI6N62O^ibRGSFI)UkRe7|{Dz>{=3FwQ6@@a?q?RX?S1@J9Kb6#lXnc zhbYue+82n_Vz4ZnWNcL^46MUUSZgmOQ#3N_krfcZ`%YGFa;#(0(8qMq1;@fpeMKFF z6M;(JKZ=L+mEgzUA+KY^epFC52kL{ddg5?_!105+hkIF%4!yWh7{vFv_Y}LJA(Mp+ zelMgP&G^)7KE3qxrQU2N9`xC_k+&gHWJS3Nj$mgT3)#4ex~+SJDt@S=57nZj%*Ni- z^-1vK|1&uw`4s$k0tbD=ou6V`-5yxP1c%n2tpRmTbh=4)wVQRhVIW-{?8R2-F;TMz z%JX(eF(pS<_GaJ%#=1pBx3sDc5XWs5TLI*bJd!+e*`_POwO8gouxP~}a0!7s)i z8DSC0Y4$r#B;PWRW#o_OPaYC0&z?QI=`iJvtkHcr;v<%seO<~H4erhA5gOzy4)qJ# zbQ<(jjW&G?lK913w;>O7gjy3en$e#g?oYqbk2hpqBl<~pcojDuJWL739Xd?4*Q_NQ zY@pz#{xV8#RcW%@hlg6WgL8?qW zZ&8W&lu>CDo@9BWs@(LPn+6AftrKNb>kZCMl+Z+!87VzMk^KaR;ESPz{+>e@7d96^*>V(+s@(*dg>HA-bNch&( z+rh-4a|uxdm(5XW#)ovy4w|u(&Uue!d_?E?XvW8MPBqP_p>zIBGd`hn-lrL#(m5Z{ zj9t`{;inn3G-Ef-sG}KsXvRUBv6p7l(~Qq(Mu2AQqZth}V?WLK3(Yt{Gd@RE@+~<0 zMCH0S*5jw1S_e+dOI`ycqtZ!!>UP%S^FunR7N7YYR(Teen3Fbjg&d5=C1!=JE|=j1 zBJiEgzGsmF$g0pR71$Hn1Yz(-Ru`nC%ciJ1@K2{iOo+#HwNwdum`FSyqR1lr=lm^N?lXhMDvH=6V306ph5dQys(rNvMI8|>O$?dB??6)sZ(QN32eLJ z4pDV6!W-dW#?k9PBa#ZeipKp%7BdJJ4J>e(EhrT;gN#NTlVwL7gA1rjxL$JW_^E}c zqJ9RPXw>*ZC1i30l#i1y2_@T97jzZ@7AnUSx?8z$hXYP;Bmo~Kmxm&RNNR~Lz12!CnGcbM;Sh;|06PP7mv!gu0AGnKhL!J zC(8Zrk^4U&2S@rR3S4P#$2i&IzejF~_TV|h12WDSJeP3iKw@wS?9Ev~beY&(OEA|) zJgFTgYYD794(-SEwz4cV*-dkCqh{g3Azs1ac7TVlxE|mwtjOh8yMtHR>t7p};^gK! zoZN8|Oq7IKvu5Ejm_3evT-LgTn=@n4Vw158StsAcs>fyX+I~*9z!Wy8k;k07*!m){ zKJ4$$GutKBajK_YSeIQ`@`ks2(%|7^Cfqv<_oBc6Uq5kl^>BAE-i)e=ThE{}c(gBC zNyV|K-wTbHILdbs2l7C?Pg=6MSI--1Q=R>Mr}g8UPzM5sP(C%>!M#q3dr*$c?Z8n~ z+u|+KZWL7iC`)@<3|NFI9&6Ee>=D^4?Y1w&nxs8;Lul6^I{l~)%PimdTeKa&BtGW% ziI4gJ6K|(2?S`UAd!Qw4EWMSjq!YmboABT&cc3VEdkx+&4)%AYC%RH!Voi~VN3A{Z z@VXSoZ0ArjiZ%01N4Awp9vcS=*KtX1BQS~)xFbxUhoz<~{kbazkv?G}i5B!-(LrHC z4cihJC3amE*mbp3NGg#KUs@tOjqAwB3 zX)VsRppAMy6g8S`c7(>KwvA7|X}l}`&^WnnbFiEBFS$%JqRDQ=<$GGk$+rJ(YFFRT zRDoVDed?IJ5G&!S_2G`-?@#TE$1M8P)ABk@4SsBTTpEQJ3VLA59w{K|ZHYoX9-hTX zu|o109`N8=A79zf;Qu&phX13y8MeB-Df!Rlzm0#tz`t+j+bR&#!n%oj3odRoql>q> z$Isw{PgpPIRs5=B3Ll)gt)vDODt8SkR3)r1Ca}U-sZ?59f*3`pb-Ql2NCF;&uEMM6 zrV>_XKC`Y{*_lPoN&nLozu!4)lcai&BUR{~iiWF-Z^DE4}6WgFR z++`Sk7=1G95VFd9Ee{RC0fJCcAIGTa-8wb!7vD~AKs&u(52$Y&fJ}b-7!G6Vh5stA zjJYjcYPv1`{i-+C^>Fl<~AM~t~|@$w93+1t{dZ_i)n zMm;od(bDv%Hi;j6eX+~H)Vt@|oZFB7(8)62`Br71vH4<`VWl1Z5u_bMgo8UqzW>vX RQ4x_N#QE Date: Fri, 19 Aug 2022 13:17:14 +0200 Subject: [PATCH 22/54] First attempt at mobile tanks --- constants.asm | 14 ++--- definitions.asm | 4 +- scorch.asm | 9 +++ scorch.xex | Bin 50756 -> 51090 bytes variables.asm | 1 + weapons.asm | 162 ++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 181 insertions(+), 9 deletions(-) diff --git a/constants.asm b/constants.asm index 1beb554..9fffd44 100644 --- a/constants.asm +++ b/constants.asm @@ -285,7 +285,7 @@ WeaponPriceH ; weapons prices (tables with prices of weapons) .by >price_Battery________ .by >price_Bal_Guidance___ .by >price_Horz_Guidance__ - .by >price_Vert_Guidance__ + .by >price_Floating_Tank__ .by >price_Lazy_Boy_______ .by >price_Parachute______ .by >price_StrongParachute @@ -351,7 +351,7 @@ WeaponPriceL .by %h;u|Kn&dv{LP@_z2~F*HF*^jc|? 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

- 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 AbpQYW delta 16215 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�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 YPx`osrqakJQCjbBd diff --git a/variables.asm b/variables.asm index 86ab9c4..f9adf2e 100644 --- a/variables.asm +++ b/variables.asm @@ -197,6 +197,7 @@ FallingSoundBit .DS 1 PreviousFall .DS 1 EndOfTheFallFlag .DS 1 ; in case of the infinite fall ;Parachute .DS 1 ; are you insured with parachute? +FloatingAlt .DS 1 ; floating tank altitude ;---------------------------------------------------- ;Flight ;variables for 5 missiles (used for mirv) diff --git a/weapons.asm b/weapons.asm index f97358d..4de618c 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2414,6 +2414,168 @@ InverseScreenByte rts .endp +; ------------------------------------------------- +.proc TankFlying +; ------------------------------------------------- +; This routine is run from inside of the main loop +; and replaces Shoot and Flight routines +; X and TankNr - index of flying tank +; ------------------------------------------------- + ; Let's designate the flight altitude. + mva #17 FloatingAlt ; for testing + mwa #mountaintable temp + + ; now animate Up +TankGoUp + lda ytankstable,x + cmp FloatingAlt + beq ReachSky + ; first erase old tank position + mva #1 Erase + jsr DrawTankNr + mva #0 Erase + dec ytankstable,x + ; then draw tank on new position + jsr DrawTankNr + jsr WaitOneFrame + jmp TankGoUp +ReachSky + ; check keyboard/joy and move tank left/right - code copied from BeforeFire +;keyboard reading +; KBCODE keeps code of last keybi +; SKSTAT $ff - nothing pressed +; $FB - any key +; $f7 - shift +; $f3 - shift+key + +notpressed + lda SKSTAT + cmp #$ff + jeq checkJoy + cmp #$f7 ; SHIFT + jeq checkJoy + + lda kbcode + and #%00111111 ; CTRL and SHIFT elimination + + cmp #28 ; ESC + bne @+ + jsr AreYouSure + bit escFlag + bpl notpressed + ;---esc pressed-quit game--- + rts +@ +jumpFromStick + cmp #$6 + jeq pressedLeft + cmp #$7 + jeq pressedRight + cmp #$21 + jeq pressedSpace + jmp notpressed +checkJoy + ;------------JOY------------- + ;happy happy joy joy + ;check for joystick now + lda JSTICK0 + and #$0f + cmp #$0f + beq notpressedJoy + tay + lda joyToKeyTable,y + jmp jumpFromStick +notpressedJoy + ;fire + lda TRIG0S + jeq pressedSpace + mva #$ff pressTimer ; stop counting frames + jmp notpressed + + +pressedRight + ; first erase old tank position + mva #1 Erase + jsr DrawTankNr + mva #0 Erase + lda XtankstableH,x + cmp #>(screenwidth-10) ; tank width correction +2 + bne @+ + lda XtankstableL,x + cmp #<(screenwidth-10) ; tank width correction +2 +@ bcs RightScreenEdge + inc XtankstableL,x + sne:inc XtankstableH,x +RightScreenEdge + mva #25 AngleTable,x + ; then draw tank on new position + jsr DrawTankNr + jsr WaitOneFrame + jmp ReachSky + +pressedLeft + ; first erase old tank position + mva #1 Erase + jsr DrawTankNr + mva #0 Erase + lda XtankstableH,x + cmp #0 + bne @+ + lda XtankstableL,x + cmp #2 ; 2 pixles from left edge +@ bcc LeftScreenEdge + dec XtankstableL,x + lda XtankstableL,x + cmp #$ff + sne:dec XtankstableH,x +LeftScreenEdge + mva #155 AngleTable,x + ; then draw tank on new position + jsr DrawTankNr + jsr WaitOneFrame + jmp ReachSky + +pressedSpace + ;================================= + ;we shoot here!!! + jsr WaitForKeyRelease + mva #1 Erase + jsr DrawTankNr + mva #0 Erase + lda XtankstableL,x + and #%11111110 ; correction for PM + sta XtankstableL,x +GoDown + mwa #mountaintable temp + clc + lda temp + adc XtankstableL,x + sta temp + lda temp+1 + adc XtankstableH,x + sta temp+1 + adw temp #4 ; center of the tank + ldy #0 + lda (temp),y + sta FloatingAlt +FloatDown + lda ytankstable,x + cmp FloatingAlt + beq OnGround + ; first erase old tank position + mva #1 Erase + jsr DrawTankNr + mva #0 Erase + inc ytankstable,x + ; then draw tank on new position + jsr DrawTankNr + jsr WaitOneFrame + jmp FloatDown +OnGround + + rts +.endp + ; ------------------------------------------------- .proc CheckCollisionWithTank ; ------------------------------------------------- From 2e62350165976c8b4defe8a2d22e30f218b1094c Mon Sep 17 00:00:00 2001 From: Pecusx Date: Fri, 19 Aug 2022 14:08:52 +0200 Subject: [PATCH 23/54] Mobile tank use fuel - test build --- constants.asm | 4 ++-- scorch.xex | Bin 51090 -> 51175 bytes weapons.asm | 38 +++++++++++++++++++++++++++++++++++--- 3 files changed, 37 insertions(+), 5 deletions(-) diff --git a/constants.asm b/constants.asm index 9fffd44..7a3325e 100644 --- a/constants.asm +++ b/constants.asm @@ -493,7 +493,7 @@ WeaponSymbols .by $58,$59,$5a,$5b,$60,$7b,$1f,$7d .by $20,$00,$00,$00,$00,$00,$00,$00 .by $00,$00,$00,$00,$00,$00,$00,$00 - .by $5f,$1c,$03,$06,$1d,$0a,$1b,$1b ; defensives + .by $5f,$1c,$03,$06,$06,$0a,$1b,$1b ; defensives .by $1e,$3b,$3d,$3c,$3e,$3f,$1d,$7d ; Names of weapons (16 chars long) @@ -568,7 +568,7 @@ DefensiveEnergy = * - 48 .by 00 ; Heat Guidance .by 00 ; Bal Guidance .by 00 ; Horz Guidance - .by 00 ; Let's go! + .by 99 ; Let's go! .by 00 ; Lazy Boy .by 00 ; Parachute .by 99 ; Strong Parachute diff --git a/scorch.xex b/scorch.xex index bd20378f5ce8a8dfd77f00f8821830c25096239c..2e4ca9308dc3bfba1eb4a44530981bf160600dd1 100644 GIT binary patch delta 15341 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 delta 15424 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 ; tank width correction +2 bne @+ lda XtankstableL,x - cmp #<(screenwidth-10) ; tank width correction +2 + cmp #<(screenwidth-10) ; tank width correction +2 pixels @ bcs RightScreenEdge inc XtankstableL,x sne:inc XtankstableH,x @@ -2510,10 +2514,15 @@ RightScreenEdge mva #25 AngleTable,x ; then draw tank on new position jsr DrawTankNr + jsr DisplayStatus jsr WaitOneFrame jmp ReachSky pressedLeft + lda ShieldEnergy,x + jeq ReachSky + ldy #1 + jsr DecreaseShieldEnergyX ; first erase old tank position mva #1 Erase jsr DrawTankNr @@ -2522,7 +2531,7 @@ pressedLeft cmp #0 bne @+ lda XtankstableL,x - cmp #2 ; 2 pixles from left edge + cmp #5 ; 2 pixles from left edge @ bcc LeftScreenEdge dec XtankstableL,x lda XtankstableL,x @@ -2532,6 +2541,7 @@ LeftScreenEdge mva #155 AngleTable,x ; then draw tank on new position jsr DrawTankNr + jsr DisplayStatus jsr WaitOneFrame jmp ReachSky @@ -2572,7 +2582,29 @@ FloatDown jsr WaitOneFrame jmp FloatDown OnGround - + ; and Soildown at the end (for correct mountaintable) + ; calculate range + sec + lda XtankstableL,x + sbc #2 + sta RangeLeft + lda XtankstableH,x + sbc #0 + sta RangeLeft+1 + clc + lda XtankstableL,x + adc #10 + sta RangeRight + lda XtankstableH,x + adc #0 + sta RangeRight+1 + ; hide tanks and ... + mva #1 Erase + jsr DrawTanks + jsr SoilDown2 + mva #0 Erase + jsr DrawTanks + ldx TankNr rts .endp From 338a4a0eafc96d90937ef97441f1589aebdc92be Mon Sep 17 00:00:00 2001 From: Pecusx Date: Fri, 19 Aug 2022 14:22:46 +0200 Subject: [PATCH 24/54] Carrect tank fuel :) (for P/M "problems") --- constants.asm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/constants.asm b/constants.asm index 7a3325e..071e517 100644 --- a/constants.asm +++ b/constants.asm @@ -568,7 +568,7 @@ DefensiveEnergy = * - 48 .by 00 ; Heat Guidance .by 00 ; Bal Guidance .by 00 ; Horz Guidance - .by 99 ; Let's go! + .by 98 ; Let's go! .by 00 ; Lazy Boy .by 00 ; Parachute .by 99 ; Strong Parachute From 827658ab426974c8dd17097f6629ea0f303e5f39 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Fri, 19 Aug 2022 14:24:42 +0200 Subject: [PATCH 25/54] I forgot about the xex --- scorch.xex | Bin 51175 -> 51175 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/scorch.xex b/scorch.xex index 2e4ca9308dc3bfba1eb4a44530981bf160600dd1..c4037e7138e7b871db92bb8944a60a02eb5afb52 100644 GIT binary patch delta 16 YcmaFf&-}cfd4uT^#-z<=OExM406~)nKmY&$ delta 16 YcmaFf&-}cfd4uT^#^lXrOExM40701tK>z>% From 5e558235c847d47cc810f5862122bde0d2c13f81 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Fri, 19 Aug 2022 18:53:56 +0200 Subject: [PATCH 26/54] Flying tank bypasses the others --- scorch.xex | Bin 51175 -> 51314 bytes weapons.asm | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 84 insertions(+), 2 deletions(-) diff --git a/scorch.xex b/scorch.xex index c4037e7138e7b871db92bb8944a60a02eb5afb52..ea8fa7691583c06dd97d762028de60e433662f4a 100644 GIT binary patch delta 14601 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 delta 14532 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 diff --git a/weapons.asm b/weapons.asm index 839c43f..1103e1f 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2437,7 +2437,7 @@ TankGoUp dec ytankstable,x ; then draw tank on new position jsr DrawTankNr - jsr WaitOneFrame +; jsr WaitOneFrame jmp TankGoUp ReachSky ; check keyboard/joy and move tank left/right - code copied from BeforeFire @@ -2547,7 +2547,89 @@ LeftScreenEdge pressedSpace ;================================= - ;we shoot here!!! + ; left or right from center of screen ? + ldy #0 + lda XtankstableH,x + cmp #>((screenwidth/2)-8) + bne @+ + lda XtankstableL,x + cmp #<((screenwidth/2)-8) +@ bcc TankOnLeftSide +TankOnRightSide + dey +TankOnLeftSide + sty FloatingAlt ; I know, not elegant byt this variable it's free now (0 go right, $ff go left) + ; now we have direction of bypassing tanks on screen + ; first check if we over any tank + ; Warning! in xdraw wird we have position of floating tank (after DrawTankNr) +CheckForTanksBelow + lda XtankstableL,x + sta xdraw + lda XtankstableH,x + sta xdraw+1 + ldx NumberOfPlayers + dex +CheckCollisionWithTankLoop + cpx TankNr + beq ItIsMe + lda eXistenZ,x + beq DeadTank + ; now we use Y as low byte and A as high byte of checked position (left right edgs of shield) + ; it is tricky but fast and much shorter + lda xtankstableL,x + sec + sbc #9 ; 2 pixels more on left side + tan width + tay + lda xtankstableH,x + sbc #0 + ; bmi ShieldOverLeftEdge ; I do not know whether to check it. Probably not :) !!! + cmp xdraw+1 + bne @+ + cpy xdraw +@ + bcs LeftFromTheTank + tya ;add 20 (tank size*2 +2 and +2) + clc + adc #20 + tay + lda xtankstableH,x + adc #0 + cmp xdraw+1 + bne @+ + cpy xdraw +@ + bcc RightFromTheTank +TankBelow + ; tank below - we must move our tank + ldx TankNr + ; first erase old tank position + mva #1 Erase + jsr DrawTankNr + mva #0 Erase + bit FloatingAlt + bmi PassLeft +PassRight + inc XtankstableL,x + sne:inc XtankstableH,x + mva #25 AngleTable,x + bne Bypassing +PassLeft + dec XtankstableL,x + lda XtankstableL,x + cmp #$ff + sne:dec XtankstableH,x + mva #155 AngleTable,x +Bypassing + ; then draw tank on new position + jsr DrawTankNr + jmp CheckForTanksBelow +RightFromTheTank +LeftFromTheTank +DeadTank +ItIsMe + dex + bpl CheckCollisionWithTankLoop + ldx TankNr jsr WaitForKeyRelease mva #1 Erase jsr DrawTankNr From 1215065fbe3a6e9037497bdeec439cddd02647c7 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Fri, 19 Aug 2022 20:06:57 +0200 Subject: [PATCH 27/54] Hovercraft SFX --- artwork/sfx/feat.txt | 2 +- artwork/sfx/scorch_str4.rmt | Bin 0 -> 3930 bytes constants.asm | 6 +++--- definitions.asm | 1 + scorch.asm | 2 +- scorch.xex | Bin 51314 -> 51356 bytes weapons.asm | 39 +++++++++++++++++++++++++++++------- 7 files changed, 38 insertions(+), 12 deletions(-) create mode 100644 artwork/sfx/scorch_str4.rmt diff --git a/artwork/sfx/feat.txt b/artwork/sfx/feat.txt index 7009afb..ca37a3f 100644 --- a/artwork/sfx/feat.txt +++ b/artwork/sfx/feat.txt @@ -1,6 +1,6 @@ STEREOMODE equ 0 ;* --------BEGIN-------- -;* C:\Atari\rmt\rmt128\scorch_str3.rmt +;* C:\Atari\rmt\rmt128\scorch_str4.rmt FEAT_SFX equ 1 FEAT_GLOBALVOLUMEFADE equ 0 ;RMTGLOBALVOLUMEFADE variable FEAT_NOSTARTINGSONGLINE equ 0 diff --git a/artwork/sfx/scorch_str4.rmt b/artwork/sfx/scorch_str4.rmt new file mode 100644 index 0000000000000000000000000000000000000000..8681c53139915dbfd34c39a13c71585d64cd3971 GIT binary patch literal 3930 zcmb_eT})iZ6+XLr_lIRz-z{J-7?GtR4Wh2ZCve{{B6_xbdRo{8+lC&h`0KTT{*I1?u)Uz)rz zxjgxgN#9g*>Q__0pZa*}dmsGygF|Yp6t)Kh$+%M*C&3!cY`CQ_|^Y5(uo2d0$zX_fD+4aHAGv z%B%1F{nF^n6aATi4>9i2-Me?^<&Z}6^MBYHf5a#ji;UIQ$`z2N8;sISNHwgk&edw+ zbgaXObwFmUxml=vQ=|y%E(&-Q&~Fd)hVTup+nnLLo9Cp+5PT2CBrF_59U zdmc5S^pz2h(m_BDjGaF(Y9PjG+)EW3!N^TQ1%{{?P0?soBpeEA0YCcg4+MPs++$>139n`z zgS^2rRwHk&kG@ZojzE6#MRooEMeKGTUG1aZKI-YC%mGOEQEDfQJ_6zr5aD@#s>CD~5g%RbZ^MQ>3cl!X|qBl=f4~PliB5Qi}Vx zAvZk#yx1T{A`?;8UnqHBYRHnfzP^b2V=&v1OuDh#Xna9xySs%CjW{K*Mnox75=Mmf zA|9b#kS=tcke`o|6vXR9`xt9z5MI$>@_X%6E!5eWGd{71ku+M4x29r*T6uuzK~)%r zjJ39k4Ix}y))V!4Zy(O#7I(tC$cO7MU2^>&PBb>j7;T-sF#^y;)vrpbLVH0y#%rZY z1HG;UdhK39k=arFWV*joLKX*tr(Hf`l|Sr(FkUFKN9yVf-Z7xTK?R6*Y|*~d7WFHD zrig))dU<$9Q%q%Y9?#g*DD_2(`ms4aM8*)MB+^3!C>|7g00uyeoj4(b3Btl^3-rpY za?6g>1i$2I)Mb(Zj6}d_yc};FQQ_3Rh$tZ={|>9`23|4h(xI}-R42bUSC9Pj0jl7}{|2k|v8MZcu`3_+fD;vYsr(#8{Zw#ANkYV<~ z<|{UTX!AwetXi}!$PkuozA6`%pr+9tgyM$GtK5(L%KdBo79d$c9YiUMDCMl2 zb_y~Hl}l-?D5TM$cy=^vCb4bMEu+U=b~OWU@X}am%uIHL?%T!t_Q$p*n`J&*wu@zZ z!?reUt8AOkzMC7(S-`u3j^@nZb3XIwE=?t==%zT5$axnk^$WCEFq`ic%tK4~O#P#R zc?6n6%LOwGP4k0s4lIuIdje*-RN#vRZW_zud}(XRS{yg4?iKh_0mU$bIA7^~90Inu zD({nd&kAM0xcz9On5>QD>rVSzs`@N$8V+{)e>#Aj-< zNW6p^p}s4qJGixR4nSA^PM*J&=hyOlB#&2$0pXum&+WV! zynGvNu!O}5zK6nzV&UxZxEX!U|DS-V32F(#1u06gD`Mx+KU^z2XW4>C!5R@-(N%Hn zoURZS#>8qqcRgqQHuqMpxJQHAxktB;)mRSh;KcKUeWSVJ9*s(AS5Wx|K;-6pEYur1ap*!{#j%(rv~N@XWBxY<21;x{%}Lx ukwinCm>Z8a)E#S5-`6pJ1D}|ilMP(2TW}o1;YYhMKLsx>4nOw7!hZqU!J&Wv literal 0 HcmV?d00001 diff --git a/constants.asm b/constants.asm index 071e517..96509d3 100644 --- a/constants.asm +++ b/constants.asm @@ -454,7 +454,7 @@ PurchaseMeTable ;weapons good to be purchased by the robot .by %00000000 .by 0 ; offset to defensives ; "White Flag ","Battery ","Bal Guidance ","Horz Guidance " - ; "Let's go! ","Lazy Boy ","Parachute ","Strong Parachute" + ; "Hovercraft ","Lazy Boy ","Parachute ","Strong Parachute" .by %01000011 ; "Mag Deflector ","Shield ","Heavy Shield ","Force Shield " ; "Super Mag ","Bouncy Castle ","Long Barrel ","Nuclear Winter " @@ -478,7 +478,7 @@ PurchaseMeTable2 ;weapons good to be purchased by the robot (Cyborg) .by %00000000 .by 0 ; offset to defensives ; "White Flag ","Battery ","Bal Guidance ","Horz Guidance " - ; "Let's go! ","Lazy Boy ","Parachute ","Strong Parachute" + ; "Hovercraft ","Lazy Boy ","Parachute ","Strong Parachute" .by %01000001 ; "Mag Deflector ","Shield ","Heavy Shield ","Force Shield " ; "Super Mag ","Bouncy Castle ","Long Barrel ","Nuclear Winter " @@ -551,7 +551,7 @@ NamesOfWeapons ;the comment is an index in the tables dta d"Battery " ; 49 dta d"Bal Guidance " ; 50 dta d"Horz Guidance " ; 51 - dta d"Let's go! " ; 52 + dta d"Hovercraft " ; 52 dta d"Lazy Boy " ; 53 dta d"Parachute " ; 54 - no energy dta d"Strong Parachute" ; 55 - with energy (earlier Battery) diff --git a/definitions.asm b/definitions.asm index 9d7ec6e..4d0d952 100644 --- a/definitions.asm +++ b/definitions.asm @@ -198,6 +198,7 @@ sfx_liquid_dirt = $1b ;2 sfx_battery = $1c ;3 sfx_white_flag = $1d ;4 sfx_long_barrel = $1e +sfx_tank_move = $1f ;-------------------------------- ; RMT songs (lines) ;-------------------------------- diff --git a/scorch.asm b/scorch.asm index 369cb3f..e6755e8 100644 --- a/scorch.asm +++ b/scorch.asm @@ -1657,7 +1657,7 @@ PLAYER MODUL equ $b000 ;address of RMT module opt h- ;RMT module is standard Atari binary file already - ins "artwork/sfx/scorch_str3.rmt" ;include music RMT module + ins "artwork/sfx/scorch_str4.rmt" ;include music RMT module opt h+ ; ; diff --git a/scorch.xex b/scorch.xex index ea8fa7691583c06dd97d762028de60e433662f4a..e85c9c062fd5a124ac8760a4bd5a3c90c30bc25b 100644 GIT binary patch delta 14691 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 RacR(`z0Ic2OrQSO{{y5}V~hX* delta 14567 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 PFu=CwjOm}IPyhUXYCz7x diff --git a/weapons.asm b/weapons.asm index 1103e1f..772b219 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2423,8 +2423,12 @@ InverseScreenByte ; ------------------------------------------------- ; Let's designate the flight altitude. mva #17 FloatingAlt ; for testing - mwa #mountaintable temp +; mwa #mountaintable temp + mva #sfx_plasma_1_2 sfx_effect + + ; display text 4x4 - fuel full + ; TankNr in X reg. ; now animate Up TankGoUp lda ytankstable,x @@ -2440,6 +2444,9 @@ TankGoUp ; jsr WaitOneFrame jmp TankGoUp ReachSky + + ; display text 4x4 - fuel full (clear text) + ; check keyboard/joy and move tank left/right - code copied from BeforeFire ;keyboard reading ; KBCODE keeps code of last keybi @@ -2447,7 +2454,15 @@ ReachSky ; $FB - any key ; $f7 - shift ; $f3 - shift+key - +KeyboardAndJoyCheck + mva #sfx_tank_move sfx_effect + lda ShieldEnergy,x + cmp #20 + bne notpressed + nop + + ; display text 4x4 - low fuel + notpressed lda SKSTAT cmp #$ff @@ -2495,7 +2510,7 @@ notpressedJoy pressedRight lda ShieldEnergy,x - beq ReachSky + jeq pressedSpace ldy #1 jsr DecreaseShieldEnergyX ; first erase old tank position @@ -2510,17 +2525,20 @@ pressedRight @ bcs RightScreenEdge inc XtankstableL,x sne:inc XtankstableH,x + jmp NoREdge RightScreenEdge + mva #sfx_dunno sfx_effect +NoREdge mva #25 AngleTable,x ; then draw tank on new position jsr DrawTankNr jsr DisplayStatus jsr WaitOneFrame - jmp ReachSky + jmp KeyboardAndJoyCheck pressedLeft lda ShieldEnergy,x - jeq ReachSky + beq pressedSpace ldy #1 jsr DecreaseShieldEnergyX ; first erase old tank position @@ -2537,13 +2555,16 @@ pressedLeft lda XtankstableL,x cmp #$ff sne:dec XtankstableH,x + jmp NoLEdge LeftScreenEdge + mva #sfx_dunno sfx_effect +NoLEdge mva #155 AngleTable,x ; then draw tank on new position jsr DrawTankNr jsr DisplayStatus jsr WaitOneFrame - jmp ReachSky + jmp KeyboardAndJoyCheck pressedSpace ;================================= @@ -2630,7 +2651,7 @@ ItIsMe dex bpl CheckCollisionWithTankLoop ldx TankNr - jsr WaitForKeyRelease + mva #sfx_shield_off sfx_effect mva #1 Erase jsr DrawTankNr mva #0 Erase @@ -2638,6 +2659,9 @@ ItIsMe and #%11111110 ; correction for PM sta XtankstableL,x GoDown + + ; display text 4x4 - low fuel (clear text) + mwa #mountaintable temp clc lda temp @@ -2664,6 +2688,7 @@ FloatDown jsr WaitOneFrame jmp FloatDown OnGround + jsr WaitForKeyRelease ; and Soildown at the end (for correct mountaintable) ; calculate range sec From 5a7e9bd7695b697d7f517bef144ce13b60e46856 Mon Sep 17 00:00:00 2001 From: pkali Date: Sat, 20 Aug 2022 01:56:28 -0400 Subject: [PATCH 28/54] library switch --- artwork/Scorch50.asm | 84 +++--- artwork/talk.asm | 4 + grafproc.asm | 8 +- lib/ATARISYS.ASM | 653 +++++++++++++++++++++++++++++++++++++++++++ scorch.asm | 40 +-- scorch.xex | Bin 51356 -> 51356 bytes textproc.asm | 18 +- weapons.asm | 8 +- 8 files changed, 736 insertions(+), 79 deletions(-) create mode 100644 lib/ATARISYS.ASM diff --git a/artwork/Scorch50.asm b/artwork/Scorch50.asm index ecc2f78..fd231d5 100644 --- a/artwork/Scorch50.asm +++ b/artwork/Scorch50.asm @@ -4,6 +4,8 @@ /***************************************/ ;icl "Scorch50.h" + ;icl "../lib/ATARISYS.ASM" + ;icl "../lib/macro.hea" ; --- dmsc LZSS player routine on zero page org $80 @@ -64,8 +66,6 @@ song_data ins 'mmm_16.lzs' song_end -POKEY = $D200 - buffers .ds 256 * 9 @@ -216,7 +216,7 @@ main ift USESPRITES mva >pmg pmbase ;missiles and players data address - mva #$03 pmcntl ;enable players and missiles + mva #$03 GRACTL ;enable players and missiles eif lda:cmp:req $14 ;wait 1 frame @@ -228,13 +228,13 @@ main ;mwa #NMI $fffa ;new NMI handler - sta colbaks + sta COLOR4 lda #$0E - sta colpf1s + sta COLOR1 lda #$84 - sta colpf2s + sta COLOR2 lda #$0E - sta colpf3s + sta COLOR3 lda #$02 @@ -267,7 +267,7 @@ stop cli vmain sysvbv,6 - mva #$00 pmcntl ;PMG disabled + mva #$00 GRACTL ;PMG disabled tax sta:rne hposp0,x+ @@ -408,7 +408,7 @@ x16 lda #$4A sta hposp1 c10 lda #$D4 sta wsync ;line=133 - sta color2 + sta colpf2 s8 lda #$C3 x17 ldx #$5A sta wsync ;line=134 @@ -464,7 +464,7 @@ c13 ldy #$02 sta wsync ;line=157 c14 lda #$04 sta wsync ;line=158 - sta color0 + sta colpf0 DLINEW dli7 1 1 1 dli7 @@ -497,7 +497,7 @@ c16 ldx #$0E c17 lda #$0A c18 ldx #$34 sta wsync ;line=188 - sta color1 + sta colpf1 stx colpm3 s13 lda #$43 x23 ldx #$49 @@ -507,47 +507,47 @@ x23 ldx #$49 c19 lda #$08 c20 ldx #$34 sta wsync ;line=190 - sta color1 + sta colpf1 stx colpm2 sta wsync ;line=191 c21 lda #$0A sta wsync ;line=192 - sta color1 + sta colpf1 c22 lda #$08 sta wsync ;line=193 - sta color1 + sta colpf1 c23 lda #$0A sta wsync ;line=194 - sta color1 + sta colpf1 c24 lda #$34 sta wsync ;line=195 - sta color2 + sta colpf2 c25 lda #$0C sta wsync ;line=196 - sta color1 + sta colpf1 c26 lda #$0A sta wsync ;line=197 - sta color1 + sta colpf1 c27 lda #$0C sta wsync ;line=198 - sta color1 + sta colpf1 sta wsync ;line=199 sta wsync ;line=200 c28 lda #$0E sta wsync ;line=201 - sta color1 + sta colpf1 c29 lda #$0C sta wsync ;line=202 - sta color1 + sta colpf1 c30 lda #$0E sta wsync ;line=203 - sta color1 + sta colpf1 c31 lda #$0C sta wsync ;line=204 - sta color1 + sta colpf1 c32 lda #$0E sta wsync ;line=205 - sta color1 + sta colpf1 DLINEW dli16 1 1 1 dli16 @@ -557,13 +557,13 @@ dli16 sta wsync ;line=209 c33 lda #$0C sta wsync ;line=210 - sta color1 + sta colpf1 c34 lda #$0E sta wsync ;line=211 - sta color1 + sta colpf1 c35 lda #$0C sta wsync ;line=212 - sta color1 + sta colpf1 DLINEW dli9 1 0 0 dli9 @@ -574,15 +574,15 @@ dli9 c36 ldx #$0A sta wsync ;line=216 sta chbase - stx color1 + stx colpf1 c37 lda #$0C sta wsync ;line=217 - sta color1 + sta colpf1 c38 lda #$0A x24 ldx #$9D c39 ldy #$34 sta wsync ;line=218 - sta color1 + sta colpf1 stx hposm1 sty colpm1 s14 lda #$03 @@ -594,7 +594,7 @@ c40 lda #$08 s15 ldx #$13 x26 ldy #$45 sta wsync ;line=220 - sta color1 + sta colpf1 stx sizem sty hposm2 s16 lda #$03 @@ -612,8 +612,8 @@ x29 ldy #$79 c41 lda #$06 c42 ldx #$00 sta wsync ;line=223 - sta color1 - stx color2 + sta colpf1 + stx colpf2 lda >fnt+$400*$01 s18 ldx #$50 x30 ldy #$44 @@ -624,15 +624,15 @@ x30 ldy #$44 sta wsync ;line=225 c43 lda #$08 sta wsync ;line=226 - sta color1 + sta colpf1 c44 lda #$0C sta wsync ;line=227 - sta color1 + sta colpf1 sta wsync ;line=228 sta wsync ;line=229 c45 lda #$0E sta wsync ;line=230 - sta color1 + sta colpf1 DLINEW dli10 1 1 1 dli10 @@ -699,15 +699,15 @@ VBL c0 lda #$00 sta colbak c1 lda #$0E - sta color1 + sta colpf1 c2 lda #$84 - sta color2 + sta colpf2 c3 lda #$0E - sta color3 + sta colpf3 lda #$02 - sta chrctl + sta CHACTL lda #$01 - sta gtictl + sta PRIOR sta sizep0 s0 lda #$03 sta sizem @@ -741,7 +741,7 @@ x6 lda #$A4 x7 lda #$A6 sta hposm1 c8 lda #$00 - sta color0 + sta colpf0 mwa #DLI.dli_start dliv ;set the first address of DLI interrupt diff --git a/artwork/talk.asm b/artwork/talk.asm index b9f26a1..f598d2b 100644 --- a/artwork/talk.asm +++ b/artwork/talk.asm @@ -126,3 +126,7 @@ OffensiveTextTableH NumberOfOffensiveTexts=54 NumberOfDeffensiveTexts=60 .endp +;hoverFull dta d"MY HOVERCRAFT IS FULL OF EELS!" +hoverFullEnd +;hoverEmpty dta d"RUNNING OUT OF EELS" +hoverEmptyEnd \ No newline at end of file diff --git a/grafproc.asm b/grafproc.asm index 39029a6..73152c9 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -971,7 +971,7 @@ DoNotClearParachute lda #08 sta temp ; Loop Counter ByteBelowTank - jsr point + jsr point_plot beq EmptyPoint2 sec ror UnderTank2 @@ -1243,7 +1243,7 @@ drawmountainspixelloop NextColumn1 mwa #0 ydraw NextPoint1 - jsr point + jsr point_plot beq StillNothing ldy #0 lda ydraw @@ -1294,7 +1294,7 @@ FalloutOfLine sta (tempor2),y ; and checking if there is a pixel there sta ydraw - jsr point + jsr point_plot bne ThereIsPixelHere ; if no pixel we plot it mva #1 color @@ -1622,7 +1622,7 @@ ClearPlot .endp ; ----------------------------------------- -.proc point +.proc point_plot ; ----------------------------------------- ; checks state of the pixel (coordinates in xdraw and ydraw) ; result is in A (zero or appropriate bit is set) diff --git a/lib/ATARISYS.ASM b/lib/ATARISYS.ASM new file mode 100644 index 0000000..5b3e8ec --- /dev/null +++ b/lib/ATARISYS.ASM @@ -0,0 +1,653 @@ +;**************************************************************************** +;* ATARI PERSONAL COMPUTER * +;* SYSTEM EQUATES * +;**************************************************************************** +; +; OPERATING SYSTEM EQUATE FILE +; +; MODULE ORIGIN TABLE +; +; VECTOR TABLE +; +; HANDLER ENTRY POINTS ARE CALL- +; ED OUT IN THE FOLLOWING VECTOR +; TABLE. THESE ARE THE ADDRESSES +; MINUS ONE. +; +; EXAMPLE FOR EDITOR +; +; E400 OPEN +; 2 CLOSE +; 4 GET +; 6 PUT +; 8 STATUS +; A SPECIAL +; C JUMP TO POWER ON INIT +; F NOT USED +; +EDITRV EQU $E400 ;EDITOR +SCRENV EQU $E410 ;TV SCREEN +KEYBDV EQU $E420 ;KEYBOARD +PRINTV EQU $E430 ;PRINTER +CASETV EQU $E440 ;CASSETTE +; +; JUMP VECTOR TABLE +; +; THE FOLLOWING IS A TABLE OF +; JUMP INSTRUCTIONS TO VARIOUS +; ENTRY POINTS IN THE OPERATING +; SYSTEM +; +DISKIV EQU $E450 ;DISK INITIALIZATION +DSKINV EQU $E453 ;DISK INTERFACE +CIOV EQU $E456 ;CENTRAL I/O ROUTINE +SIOV EQU $E459 ;SERIAL I/O ROUTINE +SETVBV EQU $E45C ;SET SYSTEM TIMERS +SYSVBV EQU $E45F ;VBLANK CALCULATIONS +XITVBV EQU $E462 ;EXIT VBLANK +SIOINV EQU $E465 ;SIO INITIALIZATION +SENDEV EQU $E468 ;SEND ENABLE ROUTINE +INTINV EQU $E46B ;INTRPT HANDLER INIT +CIOINV EQU $E46E ;CIO INITIALIZATION +BLKBDV EQU $E471 ;BLACKBOARD MODE +WARMSV EQU $E474 ;WARM START VECTOR +COLDSV EQU $E477 ;COLD START VECTOR +RBLOKV EQU $E47A ;CASSETTE READ BLOCK +CSOPIV EQU $E47D ;CASSETTE INPUT OPEN +; +; VECTORS ADDED FOR 800XL +; +PUPDIV EQU $E480 ;POWER UP DISPLAY +SLFTSV EQU $E483 ;SELF TEST PROGRAM +PHENTV EQU $E486 ;UPLOADED HANDLER ENTER +PHULNV EQU $E489 ;UPLOADED HANDLER UNLINK +PHINIV EQU $E48C ;UPLOADED HANDLER INIT +; +; OPERATING SYSTEM EQUATES +; +; COMMAND CODES FOR IOCBS +; +OPEN EQU $03 ;OPEN FOR I/O +GETREC EQU $05 ;GET RECORD (TEXT) +GETCHR EQU $07 ;GET CHARACTER(S) +PUTREC EQU $09 ;PUT RECORD (TEXT) +PUTCHR EQU $0B ;PUT CHARACTER(S) +CLOSE EQU $0C ;CLOSE DEVICE +STATIS EQU $0D ;STATUS REQUEST +SPECIL EQU $0E ;SPECIAL ENTRY COMMAND +; +; SPECIAL ENTRY COMMANDS +; +DRAWLN EQU $11 ;DRAW LINE +FILLIN EQU $12 ;FILL +RENAME EQU $20 ;RENAME DISK FILE +DELETE EQU $21 ;DELETE DISK FILE +FORMAT EQU $22 ;FORMAT DISK +LOCKFL EQU $23 ;LOCK FILE +UNLOCK EQU $24 ;UNLOCK FILE +POINT EQU $25 ;POINT SECTOR +NOTE EQU $26 ;NOTE SECTOR +IOCFRE EQU $FF ;IOCB "FREE" +; +; AUX1 EQUATES +; () INDICATES WHICH DEVICES +; +APPEND EQU $01 ;WR APPEND(D)-SCN RD(E) +DIRECT EQU $02 ;OPEN DIRECTORY(D) +OPNIN EQU $04 ;OPEN FOR INPUT(ALL) +OPNOT EQU $08 ;OPEN FOR OUTPUT(ALL) +OPNINO EQU $0C ;OPEN INPUT&OUTPUT(ALL) +MXDMOD EQU $10 ;OPEN MIXED MODE(E,S) +INSCLR EQU $20 ;OPEN W/O CLEAR(E,S) +; +; DEVICE NAMES +; +SCREDT EQU 'E' ;SCREEN EDITOR (R/W) +KBD EQU 'K' ;KEYBOARD (R ONLY) +DISPLY EQU 'S' ;SCREEN DISPLAY (R/W) +PRINTR EQU 'P' ;PRINTER (W ONLY) +CASSET EQU 'C' ;CASSETTE (R/W) +RS232 EQU 'R' ;MODEM (R/W) +DISK EQU 'D' ;DISK (R/W) +; +; +; +; OPERATING SYSTEM STATUS CODES +; +SUCCES EQU $01 ;SUCCESSFUL OPERATION +BRKABT EQU $80 ;BREAK KEY ABORT +PRVOPN EQU $81 ;IOCB ALREADY OPEN +NONDEV EQU $82 ;NON-EXISTANT DEVICE +WRONLY EQU $83 ;IOCB OPEN FOR W ONLY +NVALID EQU $84 ;INVALID COMMAND +NOTOPN EQU $85 ;DEVICE/FILE NOT OPEN +BADIOC EQU $86 ;INVALID IOCB # +RDONLY EQU $87 ;IOCB OPEN FOR R ONLY +EOFERR EQU $88 ;END OF FILE +TRNRCD EQU $89 ;TRUNCATED RECORD +TIMOUT EQU $8A ;PERIPHERAL TIMEOUT +DNACK EQU $8B ;DEVICE NO ACKNOWLEDGE +FRMERR EQU $8C ;SERIAL BUS FRAME ERR +CRSROR EQU $8D ;CURSOR OVERRANGE +OVRRUN EQU $8E ;SERIAL DATA OVERRUN +CHKERR EQU $8F ;SERIAL CHECKSUM ERR +DERRER EQU $90 ;PERIPHRAL DEVICE ERR +BADMOD EQU $91 ;BAD SCREEN MODE # +FNCNOT EQU $92 ;NONEXISTANT FUNCTION +SCRMEM EQU $93 ;SCREEN MEM TOO SMALL +; +; PAGE ZERO RAM ASSIGNMENTS +; +LNFLG EQU $00 ;LINBUG RAM +NGFLAG EQU $01 ;POWER-UP SELF-TEST FLAG +; +; THESE LOCATIONS NOT CLEARED +; +CASINI EQU $02 ;CASSETTE INIT LOC +RAMLO EQU $04 ;RAM POINTER MEM TST +TRAMSZ EQU $06 ;TEMP REG RAM SIZE +TSTDAT EQU $07 ;RAM TEST DATA REG +; +;CLEARED ON COLDSTART ONLY +; +WARMST EQU $08 ;WARM START FLAG +BOOTQ EQU $09 ;SUCCESSFUL BOOT FLG +DOSVEC EQU $0A ;DOS START VECTOR +DOSINI EQU $0C ;DOS INIT ADDRESS +APPMHI EQU $0E ;APPL MEM HI LIMIT +; +;CLEARED ON COLD OR WARM START +; +POKMSK EQU $10 ;MASK POKEY IRQ +BRKKEY EQU $11 ;BREAK KEY FLAG +RTCLOK EQU $12 ;REAL TIME CLOCK +BUFADR EQU $15 ;INDIRECT BUFF ADDR +ICCOMT EQU $17 ;COMMAND FOR VECTOR +DSKFMS EQU $18 ;FMS POINTER +DSKUTL EQU $1A ;DISK UTILITIES PTR +ABUFPT EQU $1C ;RESERVED +ICHIDZ EQU $20 ;HANDLER INDEX # +ICDNOZ EQU $21 ;DEVICE NUMBER +ICCOMZ EQU $22 ;COMMAND CODE +ICSTAZ EQU $23 ;STATUS RETURN +ICBALZ EQU $24 ;BUFFER ADDRESS +ICBAHZ EQU $25 +ICPTLZ EQU $26 ;PUT BYTE ROUTINE-1 +ICPTHZ EQU $27 +ICBLLZ EQU $28 ;BUFFER LENGTH +ICBLHZ EQU $29 +ICAX1Z EQU $2A ;AUXILIARY BYTES +ICAX2Z EQU $2B +ICSPRZ EQU $2C ;SPARE BYTES +ICIDNO EQU $2E ;IOCB # X 16 +CIOCHR EQU $2F ;CIO CHARACTER BYTE +STATUS EQU $30 ;INTERNAL STATUS +CHKSUM EQU $31 ;CHECKSUM +BUFRLO EQU $32 ;DATA BUFFER LO BYTE +BUFRHI EQU $33 ;DATA BUFFER HI BYTE +BFENLO EQU $34 ;NEXT BYTE PAST DATA +BFENHI EQU $35 ;BUFFER (HI & LO) +LTEMP EQU $36 ;LOADER TEMP +BUFRFL EQU $38 ;DATA BUFFR FULL FLG +RECVDN EQU $39 ;RECIEVE DONE FLAG +XMTDON EQU $3A ;XMIT DONE FLAG +CHKSNT EQU $3B ;CHECKSUM SENT FLAG +NOCKSM EQU $3C ;NO CHKSUM SENT FLAG +;BPTR EQU $3D ;CASSETTE DATA INDEX +FTYPE EQU $3E ;INTERRECORD GAP TYPE +FEOF EQU $3F ;END OF FILE FLAG +FREQ EQU $40 ;BEEP COUNT +SOUNDR EQU $41 ;NOISY I/O FLAG +CRITIC EQU $42 ;CRITICAL MODE +FMSZPG EQU $43 ;FMS ZERO PAGE +ZCHAIN EQU $4A ;HANDLER LOADER TEMP +DSTAT EQU $4C ;DISPLAY STATUS +ATRACT EQU $4D ;ATTRACT FLAG +DRKMSK EQU $4E ;DARK ATTRACT MASK +COLRSH EQU $4F ;COLOR SHIFTER +TMPCHR EQU $50 ;TEMP STORAGE +HOLD1 EQU $51 ;TEMP STORAGE +LMARGN EQU $52 ;LEFT MARGIN (1) +RMARGN EQU $53 ;RIGHT MARGIN (38) +ROWCRS EQU $54 ;CURSOR COUNTERS +COLCRS EQU $55 +DINDEX EQU $57 ;DISPLAY MODE # +SAVMSC EQU $58 ;SCREEN MEM ADDR +OLDROW EQU $5A ;DRAW START POSIT +OLDCOL EQU $5B +OLDCHR EQU $5D ;DATA UNDER CURSOR +OLDADR EQU $5E ;CURSOR MEM ADDR +FKDEF EQU $60 ;FUNC KEY DEFEAT POINTER +PALNTS EQU $62 ;PAL/NTSC FLAG +LOGCOL EQU $63 ;COL IN LOGICAL LINE +ADRESS EQU $64 ;TEMP STORAGE +MLTEMP EQU $66 ;TEMP STORAGE +SAVADR EQU $68 ;TEMP STORAGE +RAMTOP EQU $6A ;AVAILABLE RAM PAGES +BUFCNT EQU $6B ;BUFFER COUNT +BUFSTR EQU $6C ;EDITOR GETCH POINTR +BITMSK EQU $6E ;BIT MASK +SHFAMT EQU $6F ;PIXEL JUSTIFICATION +ROWAC EQU $70 ;ROW ACCUMULATOR +COLAC EQU $72 ;COLUMN ACCUMULATOR +ENDPT EQU $74 ;LINE LENGTH +DELTAR EQU $76 ;DELTA ROW +DELTAC EQU $77 ;DELTA COLUMN +KEYDEF EQU $79 ;KEY DEFEAT POINTER +SWPFLG EQU $7B ;SPLIT SCN CURS CNTL +HOLDCH EQU $7C ;KB CHAR TEMP HOLD +INSDAT EQU $7D ;TEMP STORAGE +COUNTR EQU $7E ;DRAW ITERATION CNT +; +; 80-FF ARE RESERVED FOR USER +; +; NOTE: SEE FLOATING POINT +; SUBROUTINE AREA FOR ZERO +; PAGE CELLS +; +; PAGE 1 - HARDWARE STACK +; +; PAGE TWO RAM ASSIGNMENTS +; +VDSLST EQU $0200 ;DSP LIST NMI VECTOR +VPRCED EQU $0202 ;PROCEED IRQ VECTOR +VINTER EQU $0204 ;INTERUPT IRQ VECTOR +VBREAK EQU $0206 ;BRK INST IRQ VECTOR +VKEYBD EQU $0208 ;POKEY KB IRQ VECTOR +VSERIN EQU $020A ;POKEY INPUT RDY IRQ +VSEROR EQU $020C ;POKEY OUTPUT RDY +VSEROC EQU $020E ;POKEY OUTPUT DONE +VTIMR1 EQU $0210 ;POKEY TIMER 1 IRQ +VTIMR2 EQU $0212 ;POKEY TIMER 2 IRQ +VTIMR4 EQU $0214 ;POKEY TIMER 4 IRQ +VIMIRQ EQU $0216 ;IMMED IRQ VECTOR +CDTMV1 EQU $0218 ;COUNT DOWN TIMER 1 +CDTMV2 EQU $021A ;COUNT DOWN TIMER 2 +CDTMV3 EQU $021C ;COUNT DOWN TIMER 3 +CDTMV4 EQU $021E ;COUNT DOWN TIMER 4 +CDTMV5 EQU $0220 ;COUNT DOWN TIMER 5 +VVBLKI EQU $0222 ;IMM VBLK NMI VECTOR +VVBLKD EQU $0224 ;DEF VBLK NMI VECTOR +CDTMA1 EQU $0226 ;CDTMV1 JSR ADDRESS +CDTMA2 EQU $0228 ;CDTMV2 JSR ADDRESS +CDTMF3 EQU $022A ;CDTMV3 FLAG +SRTIMR EQU $022B ;SOFTWARE REPEAT TMR +CDTMF4 EQU $022C ;CDTMV4 FLAG +INTEMP EQU $022D ;IAN'S TEMP +CDTMF5 EQU $022E ;CDTMV5 FLAG +DMACTLS EQU $022F ;SAVE DMACTL REG +DLPTRS EQU $0230 ;SAVE DISP LIST LO +;SDLSTH EQU $0231 ;SAVE DISP LIST HI +SSKCTL EQU $0232 ;SKCTL REGISTER RAM +LCOUNT EQU $0233 ;LOADER TEMP +LPENH EQU $0234 ;LIGHT PEN HORIZONTAL +LPENV EQU $0235 ;LIGHT PEN VERTICAL +BRKKY EQU $0236 ;BREAK KEY VECTOR +RELADR EQU $0238 ;LOADER REL ADDR +CDEVIC EQU $023A ;COMMAND BUFFER-DEV +CCOMND EQU $023B ;COMMAND BUFFER-CMND +CAUX1 EQU $023C ;COMMAND BUFFER AUX1 +CAUX2 EQU $023D ;COMMAND BUFFER AUX2 +;TEMP EQU $023E ;TEMPORARY RAM CELL +ERRFLG EQU $023F ;DEVICE ERROR FLAG +DFLAGS EQU $0240 ;DISK FLAGS(SECTOR1) +DBSECT EQU $0241 ;# DISK BOOT SECTORS +BOOTAD EQU $0242 ;DISK BOOT ADDRESS +COLDST EQU $0244 ;COLDSTART FLAG 1=CS +RECLEN EQU $0245 ;LOADER LENGTH +DSKTIM EQU $0246 ;DISK TIME OUT REG +VSFLAG EQU $026C ;FINE SCROLL TEMP +KEYDIS EQU $026D ;KEY DISABLE FLAG +FINE EQU $026E ;FINE SCROLL ENABLE(A1200) +GPRIOR EQU $026F ;GLOBAL PRIORITY +PADDL0 EQU $0270 ;POT 0 RAM CELL +PADDL1 EQU $0271 +PADDL2 EQU $0272 +PADDL3 EQU $0273 +STICK0 EQU $0278 ;JOYSTICK 0 RAM CELL +STICK1 EQU $0279 +PTRIG0 EQU $027C ;PADDLE TRIGGER 0 +PTRIG1 EQU $027D +PTRIG2 EQU $027E +PTRIG3 EQU $027F +STRIG0 EQU $0284 ;JOYSTICK TRIGGER 0 +STRIG1 EQU $0285 +HIBYTE EQU $0288 ;LOADER +WMODE EQU $0289 ;CASSETTE R/W MODE +BLIM EQU $028A ;CASSETTE RECORD SIZE +IMASK EQU $028B +JVECK EQU $028C ;JUMP VECTOR +NEWADR EQU $028E ;LOADER NEW ADDRESS +TXTROW EQU $0290 ;TEXT ROWCRS +TXTCOL EQU $0291 ;TEXT COLCRS +TINDEX EQU $0293 ;TEXT INDEX +TXTMSC EQU $0294 ;TEXT WINDOW MEM ADD +TXTOLD EQU $0296 ;TEXT OLDROW & COL +CRETRY EQU $029C ;# COMMAND RETRIES +HOLD3 EQU $029D +SUBTMP EQU $029E +HOLD2 EQU $029F +DMASK EQU $02A0 ;PIXEL LOCATION MASK +TMPLBT EQU $02A1 +ESCFLG EQU $02A2 ;ESCAPE FLAG +TABMAP EQU $02A3 ;TAB STOP MAP +LOGMAP EQU $02B2 ;LINE START BIT MAP +INVFLG EQU $02B6 ;INVERSE VIDEO FLAG +FILFLG EQU $02B7 ;FILL FLAG FOR DRAW +TMPROW EQU $02B8 +TMPCOL EQU $02B9 +SCRFLG EQU $02BB ;SET IF SCROLLING +HOLD4 EQU $02BC ;TEMP USED BY DRAW +DRETRY EQU $02BD ;# OF DEVICE RETRIES +SHFLOK EQU $02BE ;SHIFT/CTL LOCK FLAG +BOTSCR EQU $02BF ;BOTTOM OF SCREEN +PCOLR0 EQU $02C0 ;P0 COLOR +PCOLR1 EQU $02C1 ;P1 COLOR +PCOLR2 EQU $02C2 ;P2 COLOR +PCOLR3 EQU $02C3 ;P3 COLOR +COLOR0 EQU $02C4 ;COLOR 0 +COLOR1 EQU $02C5 +COLOR2 EQU $02C6 +COLOR3 EQU $02C7 +COLOR4 EQU $02C8 +RUNADR EQU $02C9 ;LOADER +HIUSED EQU $02CB ;LOADER +ZHIUSE EQU $02CD ;LOADER +GBYTEA EQU $02CF ;LOADER +LOADAD EQU $02D1 ;LOADER +ZLOADA EQU $02D3 ;LOADER +DSCTLN EQU $02D5 ;DISK SECTOR LENGTH +ACMISR EQU $02D7 ;RESERVED +KRPDEL EQU $02D9 ;KEY REPEAT DELAY +KEYREP EQU $02DA ;KEY REPEAT RATE(VBLANKS) +NOCLIK EQU $02DB ;CLICK ENABLE/DISABLE +HELPFG EQU $02DC ;HELP KEY FLAG +DMASAV EQU $02DD ;DMA SAVE STATE +PBPNT EQU $02DE ;PRINT BUFFER POINTER +PBUFSZ EQU $02DF ;PRINT BUFFER SIZE +DOSRUN EQU $02E0 ;DOS RUN/INIT ADDRESSES +RAMSIZ EQU $02E4 ;RAM SIZE-HIGH BYTE +MEMTOP EQU $02E5 ;TOP OF AVAIL MEMORY +MEMLO EQU $02E7 ;BOTTOM OF AVAIL MEM +HNDLOD EQU $02E9 ;POLL FLAG (1200) +DVSTAT EQU $02EA ;STATUS BUFFER +CBAUDL EQU $02EE ;CASSETTE BAUD RATE +CBAUDH EQU $02EF +CRSINH EQU $02F0 ;CURSOR INHIBIT 0=ON +KEYDEL EQU $02F1 ;KEY DELAY +CH1 EQU $02F2 ;PRIOR KB CHAR CODE +CHACT EQU $02F3 ;CHACTL REGISTER RAM +CHBAS EQU $02F4 ;CHBAS REGISTER RAM +NEWROW EQU $02F5 ;POINT DRAW GOES TO +NEWCOL EQU $02F6 +ROWINC EQU $02F8 ;ROW INCREMENT VALUE +COLINC EQU $02F9 ;COL INCREMENT VALUE +CHAR EQU $02FA ;INTERNAL CHAR CODE +ATACHR EQU $02FB ;ATASCII CHARACTER +CHKEY EQU $02FC ;KB CHAR CODE (FIFO) +FILDAT EQU $02FD ;RIGHT FILL DATA +DSPFLG EQU $02FE ;DISPLAY FLAG +SSFLAG EQU $02FF ;START/STOP FLAG +; +; PAGE THREE RAM ASSIGNMENTS +; +DDEVIC EQU $0300 ;BUS I.D. NUMBER +DUNIT EQU $0301 ;UNIT NUMBER +DCOMND EQU $0302 ;BUS COMMAND +DSTATS EQU $0303 ;COMMAND TYPE/STATUS +DBUFLO EQU $0304 ;DATA BUFFER LO BYTE +DBUFHI EQU $0305 ;DATA BUFFER HI BYTE +DTIMLO EQU $0306 ;DEVICE TIMEOUT SECS +DUNUSE EQU $0307 ;UNUSED BYTE +DBYTLO EQU $0308 ;# OF BYTES XFERRED +DBYTHI EQU $0309 +DAUX1 EQU $030A ;COMMAND AUX BYTE 1 +DAUX2 EQU $030B ;COMMAND AUX BYTE 2 +TIMER1 EQU $030C ;INITIAL TIMER VALUE +JMPERS EQU $030E ;OPTIONS (1200) +CASFLG EQU $030F ;CASSETE MODE IF SET +TIMER2 EQU $0310 ;FINAL TIMER VALUE +;TEMP1 EQU $0312 ;TEMP STORAGE +;TEMP2 EQU $0313 ;TEMP STORAGE +PTIMOT EQU $0314 ;PRINTER TIMEOUT REG +;TEMP3 EQU $0315 ;TEMP STORAGE +SAVIO EQU $0316 ;SAVE SERIAL IN DATA +TIMFLG EQU $0317 ;TIMEOUT FLAG C BAUD +STACKP EQU $0318 ;SIO STACK PTR SAVE +TSTAT EQU $0319 ;TEMP STATUS HOLDER +HATABS EQU $031A ;HANDLER ADDR TABLE +PUPBT1 EQU $033D ;POWER/UP RESET +PUPBT2 EQU $033E +PUPBT3 EQU $033F +ICHID EQU $0340 ;HANDLER INDEX # +ICDNO EQU $0341 ;DEVICE NUMBER +ICCOM EQU $0342 ;COMMAND CODE +ICSTA EQU $0343 ;STATUS +ICBAL EQU $0344 ;BUFFER ADDR LO BYTE +ICBAH EQU $0345 ;BUFFER ADDR HI BYTE +ICPTL EQU $0346 ;PUT ROUTINE ADDR-1 +ICPTH EQU $0347 +ICBLL EQU $0348 ;BUFFER LENGTH LO +ICBLH EQU $0349 ;BUFFER LENGTH HI +ICAX1 EQU $034A ;AUX BYTE 1 +ICAX2 EQU $034B ;AUX BYTE 2 +ICSPR EQU $034C ;SPARE BYTES +PRNBUF EQU $03C0 ;PRINTER BUFFER (40 BYTES) +SUPERF EQU $03E8 ;SCREEN EDITOR +CKEY EQU $03E9 ;START KEY FLAG +CASSBT EQU $03EA ;CASSETTE BOOT FLAG +CARTCK EQU $03EB ;CARTRIDGE CHECKSUM +ACMVAR EQU $03ED ;RESERVED +MINTLK EQU $03F9 ;RESERVED +GINTLK EQU $03FA ;CART INTERLOCK +CHLINK EQU $03FB ;HANDLER CHAIN +; +; PAGE FOUR RAM ASSIGNMENTS +; +CASBUF EQU $03FD ;CASSETTE BUFFER (131 BYTES) +USAREA EQU $0480 ;USER AREA +; +; PAGE FIVE AND SIX ARE RESERVED +; FOR USER WORK SPACE +; +; COLLEEN MNEMONICS +; +; --------------------------------------------------------------------------- +POKEY EQU $D200 +; --------------------------------------------------------------------------- +; +; READ +; +POT0 EQU POKEY+$00 +POT1 EQU POKEY+$01 +POT2 EQU POKEY+$02 +POT3 EQU POKEY+$03 +POT4 EQU POKEY+$04 +POT5 EQU POKEY+$05 +POT6 EQU POKEY+$06 +POT7 EQU POKEY+$07 +ALLPOT EQU POKEY+$08 +KBCODE EQU POKEY+$09 +RANDOM EQU POKEY+$0a +POTGO EQU POKEY+$0b +SERIN EQU POKEY+$0d +IRQST EQU POKEY+$0e +SKSTAT EQU POKEY+$0f +; +; WRITE +; +AUDF1 EQU POKEY+$00 +AUDC1 EQU POKEY+$01 +AUDF2 EQU POKEY+$02 +AUDC2 EQU POKEY+$03 +AUDF3 EQU POKEY+$04 +AUDC3 EQU POKEY+$05 +AUDF4 EQU POKEY+$06 +AUDC4 EQU POKEY+$07 +AUDCTL EQU POKEY+$08 +STIMER EQU POKEY+$09 +SKRES EQU POKEY+$0a +SEROUT EQU POKEY+$0d +IRQEN EQU POKEY+$0e +SKCTL EQU POKEY+$0f +; +; +; +; --------------------------------------------------------------------------- +GTIA EQU $D000 +; --------------------------------------------------------------------------- +; +; WRITE +; +HPOSP0 EQU GTIA+$00 +HPOSP1 EQU GTIA+$01 +HPOSP2 EQU GTIA+$02 +HPOSP3 EQU GTIA+$03 +HPOSM0 EQU GTIA+$04 +HPOSM1 EQU GTIA+$05 +HPOSM2 EQU GTIA+$06 +HPOSM3 EQU GTIA+$07 +SIZEP0 EQU GTIA+$08 +SIZEP1 EQU GTIA+$09 +SIZEP2 EQU GTIA+$0a +SIZEP3 EQU GTIA+$0b +SIZEM EQU GTIA+$0c +GRAFP0 EQU GTIA+$0d +GRAFP1 EQU GTIA+$0e +GRAFP2 EQU GTIA+$0f +GRAFP3 EQU GTIA+$10 +GRAFM EQU GTIA+$11 +COLPM0 EQU GTIA+$12 +COLPM1 EQU GTIA+$13 +COLPM2 EQU GTIA+$14 +COLPM3 EQU GTIA+$15 +COLPF0 EQU GTIA+$16 +COLPF1 EQU GTIA+$17 +COLPF2 EQU GTIA+$18 +COLPF3 EQU GTIA+$19 +COLBAK EQU GTIA+$1a +PRIOR EQU GTIA+$1b +VDELAY EQU GTIA+$1c +GRACTL EQU GTIA+$1d +HITCLR EQU GTIA+$1e +CONSOL EQU GTIA+$1f +; +; READ +; +M0PF EQU GTIA+$00 +M1PF EQU GTIA+$01 +M2PF EQU GTIA+$02 +M3PF EQU GTIA+$03 +P0PF EQU GTIA+$04 +P1PF EQU GTIA+$05 +P2PF EQU GTIA+$06 +P3PF EQU GTIA+$07 +M0PL EQU GTIA+$08 +M1PL EQU GTIA+$09 +M2PL EQU GTIA+$0a +M3PL EQU GTIA+$0b +P0PL EQU GTIA+$0c +P1PL EQU GTIA+$0d +P2PL EQU GTIA+$0e +P3PL EQU GTIA+$0f +TRIG0 EQU GTIA+$10 +TRIG1 EQU GTIA+$11 +TRIG2 EQU GTIA+$12 +TRIG3 EQU GTIA+$13 +PAL EQU GTIA+$14 +; +; +; --------------------------------------------------------------------------- +ANTIC EQU $D400 +; --------------------------------------------------------------------------- +; +DMACTL EQU ANTIC+$00 +CHACTL EQU ANTIC+$01 +DLPTR EQU ANTIC+$02 +;DLISTH EQU ANTIC+$03 +HSCROL EQU ANTIC+$04 +VSCROL EQU ANTIC+$05 +PMBASE EQU ANTIC+$07 +CHBASE EQU ANTIC+$09 +WSYNC EQU ANTIC+$0a +VCOUNT EQU ANTIC+$0b +PENH EQU ANTIC+$0c +PENV EQU ANTIC+$0d +NMIEN EQU ANTIC+$0e +NMIRES EQU ANTIC+$0f +NMIST EQU ANTIC+$0f +; +; +; --------------------------------------------------------------------------- +PIA EQU $D300 +; --------------------------------------------------------------------------- +; +PORTA EQU PIA+0 +PORTB EQU PIA+1 +PACTL EQU PIA+2 +PBCTL EQU PIA+3 +; +; --------------------------------------------------------------------------- +; Atari ANTIC chip display list equates +; --------------------------------------------------------------------------- +; +JUMP EQU $01 ; display list jump instruction (3 byte) +JVB EQU $41 ; display list jump and wait for vblank instruction (3) +; +SCH EQU $10 ; display list horizontal scrolling +SCV EQU $20 ; display list vertical scrolling +LMS EQU $40 ; display list load memory scan instruction (3 byte) +DLII EQU $80 ; display list interrupt instruction +; +SKIP1 EQU $00 ; display list skip 1 scan line instruction +SKIP2 EQU $10 ; display list skip 2 scan lines instruction +SKIP3 EQU $20 ; display list skip 3 scan lines instruction +SKIP4 EQU $30 ; display list skip 4 scan lines instruction +SKIP5 EQU $40 ; display list skip 5 scan lines instruction +SKIP6 EQU $50 ; display list skip 6 scan lines instruction +SKIP7 EQU $60 ; display list skip 7 scan lines instruction +SKIP8 EQU $70 ; display list skip 8 scan lines instruction +; +MODE2 EQU $02 ; display list mode 2 +MODE4 EQU $04 ; display list mode 4 +MODE8 EQU $08 ; display list mode 8 +MODEE EQU $0E ; display list mode E +MODEF EQU $0F ; display list mode F +; --------------------------------------------------------------------------- +; ENUMS +; --------------------------------------------------------------------------- + +.enum @dmactl + blank = %00 + narrow = %01 + standard= %10 + wide = %11 + missiles= %100 + players = %1000 + lineX1 = %10000 + lineX2 = %00000 + dma = %100000 +.ende + +scr48 = @dmactl(wide|dma|players|missiles|lineX1) +scr40 = @dmactl(standard|dma|players|missiles|lineX1) +scr32 = @dmactl(narrow|dma|players|missiles|lineX1) + +.enum @pmcntl + missiles= %1 + players = %10 + trigs = %100 +.ende + +.enum @gtictl + prior0 = %0 + prior1 = %1 + prior2 = %10 + prior4 = %100 + prior8 = %1000 + ply5 = %10000 ; Fifth Player Enable + mlc = %100000 ; Multiple Color Player Enable + mode9 = %01000000 + mode10 = %10000000 + mode11 = %11000000 +.ende diff --git a/scorch.asm b/scorch.asm index e6755e8..f0b6164 100644 --- a/scorch.asm +++ b/scorch.asm @@ -43,7 +43,7 @@ ; icl 'artwork/sfx/rmt_feat.asm' - .zpvar xdraw .word = $80 ;variable X for plot + .zpvar xdraw .word = $64 ;variable X for plot .zpvar ydraw .word ;variable Y for plot (like in Atari Basic - Y=0 in upper right corner of the screen) .zpvar xbyte .word .zpvar ybyte .word @@ -141,7 +141,7 @@ ;------------------------------- - icl 'lib/atari.hea' + icl 'lib/ATARISYS.ASM' icl 'lib/macro.hea' ;splash screen and musix @@ -384,8 +384,8 @@ NoGameOverYet jsr SetPMWidth lda #0 - sta colpf2s ; status line "off" - sta colpf1s + sta COLOR2 ; status line "off" + sta COLOR1 tax @ sta singleRoundVars,x @@ -450,7 +450,7 @@ SettingEnergies mva #$00 TankSequencePointer ;---------round screen is ready--------- - mva #TextForegroundColor colpf1s ; status line "on" + mva #TextForegroundColor COLOR1 ; status line "on" rts .endp @@ -531,7 +531,7 @@ DoNotFinishTheRound ldx tankNr lda TankStatusColoursTable,x - sta colpf2s ; set color of status line + sta COLOR2 ; set color of status line jsr PutTankNameOnScreen jsr DisplayStatus @@ -970,15 +970,15 @@ B0 DEY ;-------------------------------------------------- .proc ColorsOfSprites lda TankColoursTable ; colours of sprites under tanks - sta COLPM0S + sta PCOLR0 lda TankColoursTable+1 - sta COLPM1S + sta PCOLR1 lda TankColoursTable+2 - sta COLPM2S + sta PCOLR2 lda TankColoursTable+3 - sta COLPM3S + sta PCOLR3 LDA TankColoursTable+4 - STA COLPF3S ; joined missiles (5th tank) + STA COLOR3 ; joined missiles (5th tank) rts .endp @@ -1055,10 +1055,10 @@ SetunPlots ; ora #$38 ; Players and Missiles single lined ; sta dmactls lda #$03 ; P/M on - sta pmcntl + sta GRACTL jsr SetPMWidth lda #%00100001 ; P/M priorities (multicolor players on) - prior=1 - sta gtictls + sta GPRIOR jsr PMoutofScreen ;let the tanks be visible! @@ -1150,14 +1150,14 @@ MakeTanksVisible bne EndofPMG lda #%00100001 ; playfield after P/M - prior=1 STA WSYNC - sta gtictl + sta PRIOR bne EndOfDLI_GO EndofPMG cmp #1 bne ColoredLines lda #%00100100 ; playfield before P/M STA WSYNC - sta gtictl + sta PRIOR bne EndOfDLI_GO ColoredLines cmp #9 @@ -1519,7 +1519,7 @@ checkJoyGetKey ;------------JOY------------- ;happy happy joy joy ;check for joystick now - lda JSTICK0 + lda STICK0 and #$0f cmp #$0f beq notpressedJoyGetKey @@ -1529,7 +1529,7 @@ checkJoyGetKey notpressedJoyGetKey ;fire - lda TRIG0S + lda STRIG0 bne @- lda #$0c ;Return key @@ -1550,11 +1550,11 @@ getkeyend ;-------------------------------------------------- .proc WaitForKeyRelease ;-------------------------------------------------- - lda JSTICK0 + lda STICK0 and #$0f cmp #$0f bne WaitForKeyRelease - lda TRIG0S + lda STRIG0 beq WaitForKeyRelease lda SKSTAT cmp #$ff @@ -1568,7 +1568,7 @@ getkeyend and #%00000100 beq @+ lda #1 -@ and TRIG0S +@ and STRIG0 rts .endp ;-------------------------------------------------- diff --git a/scorch.xex b/scorch.xex index e85c9c062fd5a124ac8760a4bd5a3c90c30bc25b..aa0df240789fa84923ae48f2398a515ab2a47e01 100644 GIT binary patch delta 13582 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 diff --git a/textproc.asm b/textproc.asm index baf477f..2e988ff 100644 --- a/textproc.asm +++ b/textproc.asm @@ -26,9 +26,9 @@ lda #%00111110 ; normal screen width, DL on, P/M on sta dmactls jsr SetPMWidth - mva #TextBackgroundColor colpf2s + mva #TextBackgroundColor COLOR2 jsr ColorsOfSprites - mva #$ca colpf1s + mva #$ca COLOR1 VDLI DLIinterruptOptions ; jsr SetDLI for Options text screen @@ -294,7 +294,7 @@ AfterManualPurchase ldx tankNr lda TankStatusColoursTable,x - sta colpf2s + sta COLOR2 ; we are clearing list of the weapons @@ -1050,7 +1050,7 @@ NoArrowDown mva #0 TankNr @ tax lda TankStatusColoursTable,x - sta colpf2s ; set color of player name line + sta COLOR2 ; set color of player name line jsr EnterPlayerName bit escFlag spl:rts @@ -1909,12 +1909,12 @@ FinishResultDisplay lda #%00111110 ; normal screen width, DL on, P/M on sta dmactls lda #%00100100 ; playfield before P/M - sta gtictls + sta GPRIOR jsr SetPMWidth jsr ColorsOfSprites - mva #0 colpf1s + mva #0 COLOR1 sta CreditsVScrol - mva #TextForegroundColor colpf2s + mva #TextForegroundColor COLOR2 VDLI DLIinterruptGameOver ; jsr SetDLI for Game Over screen ; make text and color lines for each tank ldx NumberOfPlayers ;we start from the highest (best) tank @@ -2402,8 +2402,8 @@ NextChar02 mva #GOSbeg hposp0 mva #GOSbeg+12 hposp0+1 - mva #15 COLPM0S - sta COLPM1S + mva #15 PCOLR0 + sta PCOLR1 rts .endp diff --git a/weapons.asm b/weapons.asm index 772b219..3cc365e 100644 --- a/weapons.asm +++ b/weapons.asm @@ -1261,7 +1261,7 @@ checkJoy ;------------JOY------------- ;happy happy joy joy ;check for joystick now - lda JSTICK0 + lda STICK0 and #$0f cmp #$0f beq notpressedJoy @@ -1270,7 +1270,7 @@ checkJoy jmp jumpFromStick notpressedJoy ;fire - lda TRIG0S + lda STRIG0 jeq pressedSpace mva #$ff pressTimer ; stop counting frames jmp notpressed @@ -2493,7 +2493,7 @@ checkJoy ;------------JOY------------- ;happy happy joy joy ;check for joystick now - lda JSTICK0 + lda STICK0 and #$0f cmp #$0f beq notpressedJoy @@ -2502,7 +2502,7 @@ checkJoy jmp jumpFromStick notpressedJoy ;fire - lda TRIG0S + lda STRIG0 jeq pressedSpace mva #$ff pressTimer ; stop counting frames jmp notpressed From a4d4e5f466713574c98beeb70bf508ee8dd1f583 Mon Sep 17 00:00:00 2001 From: pkali Date: Sat, 20 Aug 2022 02:10:54 -0400 Subject: [PATCH 29/54] repo cleanup --- artwork/sfx/scorch_str3.rmt | Bin 3914 -> 0 bytes artwork/sfx/scorch_trial0j.rmt | Bin 4160 -> 0 bytes artwork/sfx/scorch_trial0j_stripped.rmt | Bin 3633 -> 0 bytes lib/atari.hea | 514 ------------------------ 4 files changed, 514 deletions(-) delete mode 100644 artwork/sfx/scorch_str3.rmt delete mode 100644 artwork/sfx/scorch_trial0j.rmt delete mode 100644 artwork/sfx/scorch_trial0j_stripped.rmt delete mode 100755 lib/atari.hea diff --git a/artwork/sfx/scorch_str3.rmt b/artwork/sfx/scorch_str3.rmt deleted file mode 100644 index ef777ea59229e039ac921e01ca82435b5fb3712f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3914 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 Date: Sat, 20 Aug 2022 02:33:24 -0400 Subject: [PATCH 30/54] linetable ellimination --- constants.asm | 8 ++++---- definitions.asm | 18 ++++++++++++------ scorch.asm | 29 +++++++++++++++++++++++++++++ scorch.xex | Bin 51356 -> 51002 bytes 4 files changed, 45 insertions(+), 10 deletions(-) diff --git a/constants.asm b/constants.asm index 96509d3..fbbb01e 100644 --- a/constants.asm +++ b/constants.asm @@ -191,10 +191,10 @@ sintable .by 255 .by 255 ;anti self destruction byte -linetableL - :screenheight+1 .by <(display+screenBytes*#) -linetableH - :screenheight+1 .by >(display+screenBytes*#) +;linetableL +; :screenheight+1 .by <(display+screenBytes*#) +;linetableH +; :screenheight+1 .by >(display+screenBytes*#) ;---------------------------- bittable .by $80,$40,$20,$10,$08,$04,$02,$01 diff --git a/definitions.asm b/definitions.asm index 4d0d952..91094b4 100644 --- a/definitions.asm +++ b/definitions.asm @@ -1,14 +1,20 @@ ; @com.wudsn.ide.asm.mainsourcefile=scorch.asm -;---------------------------------------------- -; Player/missile memory - -PMGraph = $0800 -display = $1010 ;screen takes $2K due to clearing routine - screenheight = 200 screenBytes = 40 screenwidth = screenBytes*8 ; Max screenwidth = 512!!! + +;---------------------------------------------- +; Player/missile memory +PMGraph = $0800 ; real PM start = $0b00 + + +; Generated tables +linetableL = $0b00 - screenHeight*2 +linetableH = $0b00 - screenHeight + +display = $1010 ;screen takes $2K due to clearing routine + margin = 40 ;mountain drawing Y variable margin MaxPlayers = 6 maxOptions = 8 ;number of all options diff --git a/scorch.asm b/scorch.asm index f0b6164..6c37d95 100644 --- a/scorch.asm +++ b/scorch.asm @@ -177,6 +177,22 @@ FirstSTART dey bpl @- + + ; generate linetables + mwa #display temp + mwa #linetableL temp2 + mwa #linetableH modify + ldy #0 +@ lda temp + sta (temp2),y + lda temp+1 + sta (modify),y + adw temp #40 + iny + cpy #screenheight + bne @- + + ; RMT INIT lda #$f0 ;initial value sta RMTSFXVOLUME ;sfx note volume * 16 (0,16,32,...,240) @@ -1626,6 +1642,19 @@ noingame mva #0 RMT_blocked rts .endp +;;-------------------------------------------------- +;.proc Randomizer +;;-------------------------------------------------- +; ;usage: randomize floor ceiling +; ;returns (in A) a random .byte between "floor" and "ceiling" +;?rand +; lda random +; cmp #:1 ;floor +; bcc ?rand +; cmp #:2+1 ;ceiling +; bcs ?rand +; rts +;.endp ;---------------------------------------------- icl 'weapons.asm' ;---------------------------------------------- diff --git a/scorch.xex b/scorch.xex index aa0df240789fa84923ae48f2398a515ab2a47e01..f7e137de55bfd07eb386bf3412ea2da58cc854e8 100644 GIT binary patch delta 16675 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 F{y)9OGYbF! From 3e78ed016b5afaab8310d7396e3f2bb4a4a6ee18 Mon Sep 17 00:00:00 2001 From: pkali Date: Sat, 20 Aug 2022 02:46:11 -0400 Subject: [PATCH 31/54] eels talking texts --- artwork/talk.asm | 4 ++-- scorch.xex | Bin 51002 -> 51051 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/artwork/talk.asm b/artwork/talk.asm index f598d2b..908b256 100644 --- a/artwork/talk.asm +++ b/artwork/talk.asm @@ -126,7 +126,7 @@ OffensiveTextTableH NumberOfOffensiveTexts=54 NumberOfDeffensiveTexts=60 .endp -;hoverFull dta d"MY HOVERCRAFT IS FULL OF EELS!" +hoverFull dta d"MY HOVERCRAFT IS FULL OF EELS!" hoverFullEnd -;hoverEmpty dta d"RUNNING OUT OF EELS" +hoverEmpty dta d"RUNNING OUT OF EELS" hoverEmptyEnd \ No newline at end of file diff --git a/scorch.xex b/scorch.xex index f7e137de55bfd07eb386bf3412ea2da58cc854e8..72d95d196e7078ef34848640763f45babd26123b 100644 GIT binary patch delta 11029 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

WiBP4R8@VUY8Q?BX$c7KtnH}kC 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 From fb4585fbb5f046951a953a055a12ebfea1b01761 Mon Sep 17 00:00:00 2001 From: pkali Date: Sat, 20 Aug 2022 02:46:59 -0400 Subject: [PATCH 32/54] git ignore updt. --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index f538938..272baa5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ - +.project *.bak scorch.lab scorch.lst From c7e87c67ec91b9f0f4af4c2fcbe454dd67ae8ee0 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sat, 20 Aug 2022 15:18:57 +0200 Subject: [PATCH 33/54] Hovercraft animations and Tank falls bugfix --- grafproc.asm | 106 +++++++++++++++++++++++++++++++++++++-------------- scorch.xex | Bin 51051 -> 51282 bytes weapons.asm | 76 ++++++++++++++++++++++++++++++------ 3 files changed, 142 insertions(+), 40 deletions(-) diff --git a/grafproc.asm b/grafproc.asm index 73152c9..d086ca3 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -914,6 +914,54 @@ ToHighToParachute rts .endp +;-------------------------------------------------- +.proc DrawTankRocketEngine +; X - tank number +; +; this proc change xdraw, ydraw and temp! +;-------------------------------------------------- + clc + lda Ytankstable,x + adc #2 ; 1 pixel down + sta ydraw + mva #0 ydraw+1 + + clc + lda XtanksTableL,x + adc #2 ; 2 pixels to right + sta xdraw + lda XtanksTableH,x + adc #0 + sta xdraw+1 + + ; draw first horizontal line + mva #5 temp +@ + jsr plot + inw xdraw + dec temp + bne @- + + sbw xdraw #2 ; 2 pixels left + inw ydraw ; 1 pixel down + + ; draw second horizontal line + mva #3 temp +@ + jsr plot +.nowarn dew xdraw + dec temp + bne @- + + adw xdraw #2 ; 2 pixels right + inw ydraw ; 1 pixel down + + ; and last pixel + jsr plot + + ldx TankNr + rts +.endp ;-------------------------------------------------- .proc TankFalls; ;-------------------------------------------------- @@ -995,7 +1043,7 @@ NoGroundCheck and #1 bne ParachutePresent ; decreasing energy - ldy #2 ; how much energy to substract + ldy #2 ; how much energy to substract if no parachute jsr DecreaseEnergyX ParachutePresent ; check parachute type @@ -1003,7 +1051,7 @@ ParachutePresent cmp #ind_StrongParachute ; strong parachute bne OneTimeParachute ; decreasing energy of parachute - ldy #2 ; how much energy to substract + ldy #1 ; how much parachute energy to substract jsr DecreaseShieldEnergyX cpy #0 ; is necessary to reduce tenk energy ? beq @+ @@ -1029,37 +1077,16 @@ NoFallingDown ldy #7 ; SlideLeftTable length -1 (from 0 to 7) @ lda SlideLeftTable,y cmp UnderTank1 - beq FallingRight - cmp UnderTank2 beq FallingLeft + cmp UnderTank2 + beq FallingRight dey bpl @- bmi NoLeftOrRight -FallingLeft - ; tank is falling left - bit PreviousFall ; bit 6 - right - bvs EndLeftFall - ; we finish falling left if the tank reached the edge of the screen - lda XtanksTableH,x - bne NotLeftEdge - lda XtanksTableL,x - cmp #2 ; 2 pixels correction due to a barrel wider than tank - beq EndLeftFall -NotLeftEdge - ; tank is falling left - modify coorinates - clc - lda XtankstableL,x - adc #1 - sta XtankstableL,x - lda XtankstableH,x - adc #0 - sta XtankstableH,x - mva #%10000000 PreviousFall ; set bit 7 - left - bne EndOfFCycle FallingRight ; tank is falling right - bit PreviousFall ; bit 7 - left - bmi EndRightFall + bit PreviousFall ; bit 6 - left + bvs EndRightFall ; we finish falling right if the tank reached the edge of the screen clc lda XtanksTableL,x @@ -1069,8 +1096,29 @@ FallingRight adc #0 sta temp+1 cpw temp #screenwidth-2 ; 2 pixels correction due to a barrel wider than tank - beq EndRightFall + bcs EndRightFall +NotLeftEdge ; tank is falling right - modify coorinates + clc + lda XtankstableL,x + adc #1 + sta XtankstableL,x + lda XtankstableH,x + adc #0 + sta XtankstableH,x + mva #%10000000 PreviousFall ; set bit 7 - right + bne EndOfFCycle +FallingLeft + ; tank is falling left + bit PreviousFall ; bit 7 - right + bmi EndLeftFall + ; we finish falling left if the tank reached the edge of the screen + lda XtanksTableH,x + bne NotLeftEdge + lda XtanksTableL,x + cmp #3 ; 2 pixels correction due to a barrel wider than tank + bcc EndLeftFall + ; tank is falling left - modify coorinates sec lda XtankstableL,x sbc #1 @@ -1078,7 +1126,7 @@ FallingRight lda XtankstableH,x sbc #0 sta XtankstableH,x - mva #%01000000 PreviousFall ; set bit 6 - right + mva #%01000000 PreviousFall ; set bit 6 - left bne EndOfFCycle EndLeftFall EndRightFall diff --git a/scorch.xex b/scorch.xex index 72d95d196e7078ef34848640763f45babd26123b..52781be1853b09262aa5dfe9d5ca2aedc821392e 100644 GIT binary patch delta 15850 zcmbum3w#sB+CQEqy>n@lOGBZsTttcpRY3v*1+QEpha+CO8Kh|&kQO4q#I)?%^oNIf5Kt;j~AsQ9;BD{e5SXmg41oKmX4^l3!7}GTS;rPI?@g9tSc$o|3?+$ac|`8O9CJ=#I={fI zol;p{ALNCSRf1=g;5J+@7J9D|#uW>uphK&42*CoOq*(A2(3f-T1UI85qU{_fxVxM2 z@(U+;G@xJBQ6P&EL!tt&reM8>qFx9d(@-3vFRdsh)VJcO*KlZ16vr{aGM(b6r?2&y z220=pC0_`4Zey})vE_jWn*00sc~1;*nx)1I8R`!ZhYk#QKq%;0C&=?Wyx{Q)o=QP( z^n4=72G3`LJjbI7a*XG+z>J*i87mdy0u4T*>tQN`1 z+;P3tt6Tdh6_Zy8$JEsuuO8L=QzK>78H*XPDx)M*Nwwgq7OaX*Xc#BBQ$VdvkkeQ% z!!5GpJyN+Sm?y9WRS>mmu-x&m9K$V=n9T*4mpzpQ!QC$Igq~Sd$o%wTaF`J8&Gaj+ zEI@%NpR6RE3iVQxnAk;_RAY?QvgILW?i6O`lZsgi$2hGRNW%mymxa*qaMw^~I60K1 zrZF3>7>KcI-`@ewb6KD${%UQu35-7*=+E;4)8!doK?H}jKs+2Cj`smRwwC#HN;{nq zYr_WSj8iONSAp@;0xAjvbE2f)Y5cBoRcS%>kAfOsS+K*?EZo2*#DQDP0dww=dgEoe zJL{!Fs}#aR%4--i!4_k#AKC^lpwbo@@yU@$?>dLNj??2*L^Lt z*nfq)SE?QktZLAyvvM@9#ZHOU$=MUU3 z0wAvoT#LZzNatUKq1T1qepAL`!hOxM?yFw}t;<*Favfd2LcbRJ)DiTzaz6>)L|JE= zpZ^ogfytg+re3D+SUw8AKhfyYsa%Z8=~d3)RJmA{i&MFHl}k{q$}SgoRIj}3;@;6K z9vAmlz4D5S`Y ztdrzxEd^=~3DF3f#`o!&bRln=v zTb}8z$0K#d;F$0E`)6#Mbai*8fk~;Rwwf_i=Sg{0d6wrs7jzpuc|zlbc=f7P&{5$g z9Iy6YMP1u_sl(?unu%ZxuXqJd{-GS1o3@g-`UGD|vMIHwB!j(DO8wP>?yi*nF%YRK{GWm1ZnF@;*?t|?5UUKuZ)8!d%9 zyW_8qmMj&M&uia+v`%bCx1bBcV(k+eKd)A=&_!J+=t_%%`-F4*g>YYYAJ!4vPuoR@ zXTLy=mm_Ewzz529flrt<@D{VAc2}0@Gg3k+;dm)f%Jbu9jnfYk_!YCVhJ3%9>b}rY zx?9kB{fw>}6z{g)SZSCCajf@Jt$Yhx!$iulTDixs%6;0( z?ctfgV`9NXO%~Ce?hLi#d2GSMBu7wg^Rc4bk@cDt7io&)T*PlU$q{DXGq8G3$j%ht z?3Yam`2T^Yv)ri-4cM_>sfZ&wN|fFYsF$eW9duiVVK7P{}u44n{HLOFl*+u@#Xa5w_%#X1S83*$}$t3Qx z-^yl-`|U8yu+PVBY8Ds+k^0x)=^Yl_Dlzr=@C`fGhOaV zy(#WbRGyuu^Q_S@|K39i)0VQ_2dkAE8A7OKVfz9185d`K{)f+!MIhcStxKrFTx~o~~fbk}K?7}}0_Ic43 zih+5}4vqGIW@%n6-wIhK{*El$>YY&`w+geZAzB|75hmuMV`PF>(#h)H?mfDOwfeD< z`t&ET^6C1IwsmhUN83^E3Bs;(j}j-QdMdH3e**Snv?M7LBsNdEUt;ab0}?wQ8nXcN zIM9cAyxoU+9OT11X86QBZm>_Zb9eZ}`P>knxPZIUC+mT7C6_HQ9~J^>wlMW^l0ThH z)&9)#n6IW2)+M?!VkTkjDFc0MwsO0Vb=s6cJ~l_m@UgkdU>^p*!-v6#_}KZ%oj!H} z#R`NcTjokZGnMnO2;;ojOvgv4X_v8&-LmwOd`TAN<2CN@V3PMVmdaY4 zR&#}71G!VOg{TK=usEh;-I(kKHV@0lWY@8FxH;w~eMAn>fDa4vs+7lxI#ZcWj@S4f z7i-Mm%4Cm8PEMABm-zwN1IJegYER&XGc~ca0DFZ@T@F^lTV(+Z5B0%81?(}X#sDHN4~bCz;!sVvn^>&sPb@!C zTw4qxRGmK-oF4lX!t@A6bgR_5HHXtLq1z>lflmAvwlsYO;S+L3=;y5F$K~Ar@DyrK zEJT@t^{H5}J|URjunt0gQ^)22Aw+RE6$O7HXIgff94S9x{fQhgXLB)V+`|;ERvsm) z;p9|u@=>BpB_SOgjYsha8!Y@2@FrOaYvtFjh2~U591MEgzzHO!m|vFLdurskaUL7C zS+ce}fV^)Fby7!S#Ma}a+``Qhn8aMH9qqs>$KwEtf?1*nah}3VU*j+3&eg*~n3UJo zsp155{WLsI)_XHKZi8j!lMy#3LJ^7}Sry=g!U1wOpqHiODbZt$MQ2Z_ho7NHDhtlT zJ5q&Ei`wb@X~78Z6^;@*pnIgXKvY0g2*;a$<*2O_;=e!n*?EbZ<0YePhVO^==Zz1uHWz0B;8hbbvJjF|Ju$t z@0D-_(~g%`daz>&b+LpHquv5(>;Yc_3*AS(+8J_Th2Uvg(F3zFT4F_5QtCC_FHx`I z0SR6MdimfsM4Sq?LNdXd!FqPUoxy@Ggg5nfhd&V>1yJv?D$ey(%QryF(EK|>={3ADk#${9Gc#D0TJ;WZSTR)q_=Ee&HNu^kR zoA1I*cPFq{LChPPW>i_a%>a)m$TKdARY8U0CcH#Mf!j(%!fgZX+;$=)=D$ST-A&3? zVtb2yOW8(jZ?kVJ+llQEduZrZGISdmx}DUkXEACJ)`6e8U|2RV{jZ4LVBesK-eljT zhz_y`e}yPuRyLB0Z&E+ZMJ^uX;C*rAVgQ01!jjB>X7SChe&+wZpsN#86R#R9`)8Y! zG7ttaLmIY2bP_fYTM*MgJEWV$w-){)uy2WPFT5_WZ;OW(wg~JYF}P4iK=dXmb2pXw z7AkWdG6xpyN|*;born2!9u{CHXfJ9y1w75Rbx~zXR(3OsRhi)C0mm&3&e=&+nM~>a`@CPzEKkyf_VKi8} z%m&T$p}kiYG=6?KoK%1PFts-ag{pcQ9~lb()9jErOyQ!@fuoV=z&n(OA<3tV>1OdL z{LiC){fT!5ykq2R7LHAcZiqO8YkMO9 z^4N&@mS;W@-}V#`@sQ_5A_hH6>9KeP+{RNT@ojrHw+JnE9p^wB9?OVXe7h-|djYke ztq`?%6k~gO+g`^lj=&bd1*X8uHQ+k#FA?A+5#SQKjH59XIeO9)TFTdu<~2lFLqc)X z=5cFC%^IR+{^3f|7Ky;VDIRRnu?NKfz5~$A;0l82`@#9FDL9jq6i{}9R#NgJHr8+ z+VA&z0w;Qb?Z@We4{}k;Yc9@k?KL(0N&aG9bJLrRYr$W_<{70HZayC<(-xlPRH-S~feZ z@-5s9A}3=1)!_wxZ0MHoz0nbr8BiQ|0tVW{JX=D?JD)-KoSE-dWCklW6E5Zgf=?DMsDm8Zv`qrnK^+F`?di6IpVU z9?P2N>W$mb8K;N#LNSnx>mCDvKkk5oUuY5?B_Pfr7M3Itt%!5D1Ltt8rCLWse;Q_x zuroc1gn2|$o9ii5XHcNh8#_;HjI_X;GJ~@wJ@i#$4N9x+63I|pjWg)327hfCT?TYD zTw7LIV2vEc!V{ri$8+2hnqrUV`0t~WI~u*5H)0!uO!mZ^M3mZCdbs|#`>D0w=(lPz zj=f37jgYbNCIqMb!Qa|ioFr^DTtA#UYPNMXWY~TGzD9fEJXQ2tpus>{f_Qe{G z0o=vCTwkK}CDeUJ1udkLhQ36NS9*~KhPXQ_sO?2TXq>zcY3NVedXt8J#NScrM<5`K z0`XY2J&ZY&&HX4?sYjc1&rw}C4t8ksPAffw+`_RtgQ*<5t9GYV>7!!7bgs!2lnx&@ zboem*Q@wh{ij)kW=eXN>#l>X_%8xE?yZ~cU{p)1S0w=`Yn##GVh58U?a2D;nIjlK(%@-Dyn0Jbj&Od25F8;G4__Yv zD5ouypmsqmN~p!IwFm7KxFZ(ryEeR4j}YqW)>c>FD+szkoePPtK!XdpFB(<-x_YD# zIOXDg7OKrc;EaolA=RUVz$Y$ltWZ5#2z=qJw#p|_TB0%#8(dZ+o|zaSP+6>QmEaba9z-O)t#a^#GH1Rq<4#2@>b ze3@M;k7JiHY5DSaHcuYG+67&Cs;}JSD|H0VltUu_%<~ltnI~ix%hNb>7RDQuC8sxX zdirX}s&oX9KzyoPjSnDw_)@ta9r!UzZXa@{oULMJNC8?vR0tKi7`5d)7wQ;@OW!>hyx}$y7YoY@>$5v5XF|D{X z?7`bN@t-c~=A6s!6btQ}*j?WE+MTphclGL!9zHG3cqE+qWe=ZvtCHqZ6O~jSd&Kfa zo?^mt!-Y(Lhw4;c#iyh>)u$#^n|u`szGjn;4m60(gVnJ&BDaw!Ux08%v-S()!v@Qy zT=7UlPoLkw_4HA6c3H>&W$AFe$;THg?a3conoj4Z4;`+Xwrsq*v!9Z1$GW4L>i1q8 z-I?qKYmYFmEQqSJ!7_JBXb4!&n6I50@aU*Q$2%kKml7VK?Kz9)Lu(C|Mf25nfj8XY z#1Uf;WH66d+;+Ui($^bAS)6V=g}U_;tu*=6!C^<=+HgxRQiZP?7Of3N~m}E z8!2$6Jp6@v3$4Bj)#LqFw5qRfm>pB?&ZTF{H}4E(yJKbNyv;kY)Q(uPbLse5Mg&Y&=q@!y?uEUGW|fi7v`kwN8i#yfZ&YWGKpMUaydMwt z(#MYoiqgRkI{qy05XcN?wl@J{Bu{RzCCfLV?CnwvI)*EMgnr8np1^ zOL{na`Pyu&F!0=VJ{*S>cxHO=5MR^Fr|L7Z(5q2iiSG-E;SbAu`7Hl=UNe|`7lwv} z?}TrZ0h2!(`Z@`EJ2y03-HVRln0l=b2HiH+vwdu&Uvs)oN%w`4wBtg$4`f-U|L6IW zS}lSji6ETT{pWc=Ap(kGD9N3K0(_J9ZRRH0W~419`;8X3a_K$~GFEr2=y!X|Zq4w0 zYYpCB?uiyITZP16iwiz#A_osW>C1E<|Kf_fdpGhGy?tfI&%8RA{ocL{I<@oB*l=<~ zBabukcl@yx{W78;pDVq6v^pNuTyLK@2H=~QA}44KP}e1pMEDfv6RDY!SjgQai7X>ejNp0t)Qax#mUE@zwJrWiF-h zInY?^fQy_#Nz4Xuij9(%6CurnDtj!KEx8TNHmP}@WO=v1iu{sa^m929vwX4WN7Rh< z%WJr~lFU8FJtxrsJ(Yq@iogU5qA-!7Z820bbcagMa>z=?0TSWIxl`aQ^As_Bokfzo zMML*{*!asU`#WzM`o%wl{q@LgWBf7t)-ES__3Vj_>RKza9VuH%(t|gcc1Af;`uiHj z3gJ80DtR{6qoA!v`Eg2*@O!iuga^{=JX2)bACrv1@`alu#%n^>Lo`oDyE*?aA=552 ztKf&zRc=S_9Z~k(?D87BM6<)KJjw=c0`5Bms^K@luD&KuiZTJWA&r|1H%ZejskS&H ztI;z-sJoD;euqv|odVpEKMC@LKj!pT9GtXEnaNR_EFZt1se)|&trRT50y*RNs~@>h zoz|*h0Eg;CZv~aU$Six2zjMtfr(N>uBD_|WQva#q+U^|_!J$KD*ut{R&UDodikv;a+au<`e0SC|Z2OCHn9ItN z8E$+QHqb-OLg4mI+~RSFe``*m{9@FHg||uX9c*U1_Q};O?Iu|Flv+nc(Kwi9>?4kK?wE!oe*-oN zAPSX;y+v0Z`i&faTB{< zbh8^o4xP(cx40fK8({6xEf(EGF0MRoQ=A(vsctEMPuWywuO%jtw{2s2ajR`RyA^;L zv1%7_4JKkO_L@@cN9))nmWP+1st8p}P~|{XA%%=ljV7_k=0x6aiESmDYni{qEIKb1 zp}g|q5`?`0qo*(qTM2^7g|-!}%~B4Sl8X+MS6nP~vbG`Ff-$*yI)W*k9&PA4w8O{yHr(bk5G+ZoUwWTU$9+P$b2PW$24QC`s$Ey98;n%2N!>>{QYf?TTC8lz~RTv01`*TD&M=Fv?^LbKpp5TOB7r8st z$AmBr);zACCJ`9F z{ad~9Q@Ag<=cFaEFBMc4(CbY|U{inEE2sm5dt5xXv2Xgl%MU3ox{PM}^*F&lkL#AV zu}t%7fC1vYjl&amb4aM~;rMvh^q9;13|Ft2xyvnsmNU7_nU7mv(o0Z-W5DyUhGtA- z4lsCQL|n`)Tf2uD#bOQOF2zPI%7JT+G3-WaS25O@Vub77LY_2Q;{WbS>jvdRI{ifM ziJTJ-^&2=A4$R{gE_HBg7!uXkE4AuNTH-wtvPAV)GA@PynxDY+$-IFl(vEs8-lk4$ zHc}c?Q6kk56tt6@>*Yiz#6M5iPGr-;t+HNYDr9sgYkUoj2*;{LQ1y`rsumg3Ye7`1 zWXQl%6543`jt+`uI%s69DDCYBqU#GVZYM&oZ3I!V>A0r}_Y7exWj*&4&0!*Yb8k2? zG%_3;x(_R?Qmnl5DH2Ws;8Ubspir#Lh`~aR#PgJAh&lw~9?D{ZaNz-TCxS?_Ivj7# z*HtZId{m@WYH{5G8hS33dzvhi}ZSpBQ(xGL2HVEers)5PViZu z29@aN%p8D9^*mHOWN@3bl@Nt&qI)5Z*MKxMKSRTpVr9sn#z%sflud)Bv4pOcm~c0F zr8frXG7a>K;7e zLg%0ZwWpg`ZFX1&t>kZW-*#6YqQ;5Y4ZVr`t?)r0`9JaT#qPApWVK2Iyz~kLjr+1W zwGK@6W(QVa;c9wi<&t)V^wKJ5O;kHYTf>d9l<;fftB~L1mHemfp3bw>qU3-e-h@yWsz-SsdmR@nV93%ZCMm$4<{I?-=_Ag>7T4h4JE!u9=+Q$LF>y8s*0Kn!%7L(X|J!^b8 z@#H^=y2O58gw-${aA!oCpPMcBo`Dk24O%k|C8eVwzhmf1Yf#@fZaj0Em9dDxzl zmlOT(%d6Q*cHmZQWe!chhvBrb+QrmPo*`oV@f+Hj$Sy=!uC?tA%xlGA+D3)bp`CR2r};k4 z(&n;?lc?tV$k;U18z-niBn3|shcVUC0T z7abMdpd**8$x>NaV07ukz^KxRGS z>DfhU?O;V#f*UU(4nB*9EpYD}XA)dmH{jAblQr2Id{9cCETumwg@@ubG{c`{Zi)*f z`;*+gP4>7@l|L1|&B4i1Q=A8vo1T0$5QMMA)S`ggOM=O!Joz8EAX?3@siq^ zmPexeq*j)*BcsojoHvcmyf7J8#PL%G94_!{2AnSNg9a~CR_h4=M1R3yWwxzj0_&LZ z>%%Ex(d5aKaVgcF$XO+|W3)Ia0VO&ZJ+&qIuT)zl(^7UFXpo1{F=IF|e26lv2g8*G zbHMWr8MYs4{^Dh;H*DD{+?v+!j=M+SKN-iWP;Y-P?_D4!*@TplLyNi6>NtO#oQW+< zJ4(`sZ!99dF>0US_*OZBmR^CFW@%_UGU49CD<4{ zM2fMrSY|xsTOzKqGQiNn;vCqDU>HR(IEtW)Ina&#(v1K~Y7|L|8Ex0Jswkp*Uk8eb z9(9Y9>xhHj<{U36BL&1b<+@*B3W`jDf4d+PTM@VqeCC4C+r)e0ZW_HE2U04;Rq8UP zX#;M|-jSK;J6!gDPZAzn-IL(3ar_;XF6QG${XI-jZmc1%KLz?|xw77jGOpS{H{;l) z&Pe~vw*DEv>hDfIIbJ%kG<=I?_y(#DajXFUl{Al+tpC^0?jDh$Lfzcj&;=VJq(q0- zx;w*vJhVRzJu!0R^Px;QQmVf{luxIY9Zv?-ROxASm$2pqz0?!)aNYjRb6 zeX#Gwi9u%LMC-7P^2U!hCb$w@X8cQVS*82gLM&+3u>*&-Kw`PiF{;m|@N*XHMucpC z)sVU=JjquWKpM^wKpL))rUHwQgyC21>e}6bpQ>CeL^9^aIzr-we{EN9)8vgOiq&R> zU5lxOpbIs{e}$R6k^lFu)Yitt8;!jqjT2rr_0T$Egyi38P3?DATQgFXHy{}Fk2G2N z@%x7I(#wS%hvwHb56$=CBZ~V6dp^6x`QL6mZXbT%oYm#8zP2y$-Y4Jw)GNdM-2CM` zni5FR@8!BgQ^7 zGvBd%`y0njUyUD>Iov#Ef~{!d-uM6K`-Co;BWJFDEp#E}u9<&X<@E*M|DTp^+i!gM z?R$;gUwUar>!+gavy(rvw>SUE-VUiRe~{DFP%7+%}5mwzYL#Jl(ZcSyD6l48--SRSjk%-(CUDWxB*RVR9J<)PwJsZ9OR z8(aGUcUh^!_rYqu@<4wl&6X#g@)}$zr@V<3x>NXxsvJW%-*1%-Qf))%y8lk8HsrY= z)xPKX92=RZ5w_j)B_hQho!odKRy`{=&`^DYyXU2omN%=zxR@LM)T^&;sH&@NU{97d z2)gj=@KQP`LQCWMFD3Q<;01~OAo#h&s)rh#()C8E_5=1KT%j2o?(84o2}_`Ea>fdv z*9JP&7y+4_^AY~Uk21oZ%hCmddH^^NR&%pt%M2xy74C_aqv53F!Gl4ZC7!Z~7a+&G z_)%s@%5n#VmQPkAEs;dqQE;BDw&YerV)dCn9@5E~KQIdw%To%dfRA)ps(sfJE3^No z!!uE4KLkM*S*rbqXS`g8Z=?3zRr}7AJr8OxPix=3WN#uM2GD{O*dlud$=+mC43Qx? zMh0`q9+T|(*(p(UV`RI|(@~Z?ddwR7;j)#Pz4zoS8TS^x#gBxw>&b6wlwPlqtJqV5 zA($wKzh%`R$ot?>N12KcEU~BQ*O|H<=ZvyD8A0Eb7$w+M26D(JCH=A_1$3{mAB(3m zI!l4oGVA=i_;HUlvgdI*I6w~f#b%lo{29Mw9U_|!4U(5`2Z>VPHA=o^dCmC&@}V*E z(N6BWf)C2ZfjiEbW&99$ybP*wH_0qhV*UZb*bfhxWw13|4rak-?oOs6aQ%x`|nQUiFCBx;=SbEnB#K~Dw?cYr$ zKTDozGW{Jwe2wz7-02y)(+s)OOu4Fj&R%7rY)n%gmorkrU6g6EX`w~t9+RQmPs$sT zVyl!%wE2lh^PkcDsLV}A^EmD)wCk(BoU>Qe0S$ED+k*ZzkIS6yRC&xP<6Edei fg`aaPkI6Mp%3SQJ^0-sVbh+j!d4J5o`6>So|8Jxs delta 15720 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 ; tank width correction +2 + cmp #>(screenwidth-12) ; tank width correction +4 bne @+ lda XtankstableL,x - cmp #<(screenwidth-10) ; tank width correction +2 pixels + cmp #<(screenwidth-12) ; tank width correction +4 pixels @ bcs RightScreenEdge inc XtankstableL,x sne:inc XtankstableH,x @@ -2529,7 +2577,7 @@ pressedRight RightScreenEdge mva #sfx_dunno sfx_effect NoREdge - mva #25 AngleTable,x + mva #18 AngleTable,x ; then draw tank on new position jsr DrawTankNr jsr DisplayStatus @@ -2549,7 +2597,7 @@ pressedLeft cmp #0 bne @+ lda XtankstableL,x - cmp #5 ; 2 pixles from left edge + cmp #5 ; 4 pixles from left edge @ bcc LeftScreenEdge dec XtankstableL,x lda XtankstableL,x @@ -2559,7 +2607,7 @@ pressedLeft LeftScreenEdge mva #sfx_dunno sfx_effect NoLEdge - mva #155 AngleTable,x + mva #162 AngleTable,x ; then draw tank on new position jsr DrawTankNr jsr DisplayStatus @@ -2632,14 +2680,14 @@ TankBelow PassRight inc XtankstableL,x sne:inc XtankstableH,x - mva #25 AngleTable,x + mva #18 AngleTable,x bne Bypassing PassLeft dec XtankstableL,x lda XtankstableL,x cmp #$ff sne:dec XtankstableH,x - mva #155 AngleTable,x + mva #162 AngleTable,x Bypassing ; then draw tank on new position jsr DrawTankNr @@ -2681,13 +2729,19 @@ FloatDown ; first erase old tank position mva #1 Erase jsr DrawTankNr + jsr DrawTankParachute mva #0 Erase inc ytankstable,x ; then draw tank on new position jsr DrawTankNr + jsr DrawTankParachute jsr WaitOneFrame jmp FloatDown OnGround + ; clear parachute + mva #1 Erase + jsr DrawTankParachute + mva #0 Erase jsr WaitForKeyRelease ; and Soildown at the end (for correct mountaintable) ; calculate range From 1ad9b6760dc6a3d92055aaf3b55f2c17ead78dcb Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sat, 20 Aug 2022 16:58:37 +0200 Subject: [PATCH 34/54] Small Hovercraft animation fix and updated PL manual --- instrukcjaPL.txt | 92 ++++++++++++++++++++++++----------------------- scorch.xex | Bin 51282 -> 51325 bytes weapons.asm | 19 ++++++++++ 3 files changed, 66 insertions(+), 45 deletions(-) diff --git a/instrukcjaPL.txt b/instrukcjaPL.txt index de7314f..ef3491e 100644 --- a/instrukcjaPL.txt +++ b/instrukcjaPL.txt @@ -24,6 +24,7 @@ Jeśli nazwa nie zostanie wpisana (bo np operujemy wyłącznie joystickiem), to Na tym ekranie można dokonywać zakupów broni ofensywnych i defensywnych. Widoczne są tylko te bronie na które gracza stać wraz z informacją o cenie i ilości jednostek danej broni, którą za ten cenę otrzymamy. Informacje na ekranie nie wymagają chyba więcej opisu. Po listach poruszamy się klawiszami kursora (góra i dół) lub joystickiem, klawisz [TAB] lub strzałka w lewo czy też ruch joystickiem w lewo zmieniają ekran na bronie defensywne lub ofensywne, klawisz [SPACJA] lub strzałka w prawo a także joystick w prawo realizują zakup wskazanej broni. Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu zakupów następnego gracza. (oczywiście dla graczy komputerowych ten ekran się nie pojawia) +Bezpośrednio po zakończeniu zakupów przez każdego z gracy pojawia wię ekran aktywacji broni na którym można aktywować zakupione wcześniej bronie defensywne czy też ofensywne. Obsługiwany jest identycznie jak ekran zakupów, jednak [SPACJA] lub strzałka w prawo a także joystick w prawo realizują aktywacje wskazanej broni. Umożliwia to aktywowanie osłon jeszcze przed rozpoczęciem rundy. 4. Główny ekran gry W linii statusowej widoczna jest informacja o tym który z graczy aktualnie może oddać strzał oraz zestaw innych informacji: @@ -35,11 +36,10 @@ W linii statusowej widoczna jest informacja o tym który z graczy aktualnie moż - numer aktualnej rundy rozgrywki - prędkość i kierunek wiatru - w nawiasie nazwę aktywnej broni defensywnej - jeśli jest jakaś aktywowana przez gracz -Tutaj klawiszologia jest prosta, klawisze kursora lub joustick: lewo/prawo - zmiana kąta nachylenia lufy, góra/dół - zmiana ustawienia siły strzału. +Tutaj klawiszologia jest prosta, klawisze kursora lub joystick: lewo/prawo - zmiana kąta nachylenia lufy, góra/dół - zmiana ustawienia siły strzału. [SPACJA] lub przycisk joysticka naciśnięte krótko - oddanie strzału [TAB] - wybór broni ofensywnej (ta opcja nie jest dostępna bezpośrednio joystickiem - trzeba wybrać Inventory) -klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory -Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. +klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory (aktywacji broni). Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. Klawisz [M] - wyłączenie/włączenie muzyki w tle Klawisz [S] - wyłączenie/włączenie dźwięków efektów. Klawisz [O] - wymuszenie zakończenia gry (Game Over). W podsumowaniu wyników nie jest brana pod uwagę przerwana właśnie runda rozgrywki, a wyłącznie rundy zakończone wcześniej. Odpowiada to wciśnięciu klawisza [ESC] z tą różnicą, że wyświetlane jest podsumowanie oraz creditsy. @@ -96,35 +96,35 @@ Przykładowo, jeśli czołg zostanie trafiony centralnie przy pomocy Baby Missil A oto wartości promienia rażenia (ExplosionRadius) dla poszczególnych broni: -Baby Missile - 11 -Missile - 17 -Baby Nuke - 25 -Nuke - 31 -LeapFrog - 17 15 13 -Funky Bomb - 21 11 (* 5) -MIRV - 17 (* 5) -Death's Head - 31 (* 5) -Napalm - x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) -Hot Napalm - x 80 (zasada taka jak w Napalm) -Baby Roller - 11 -Roller - 21 -Heavy Roller - 31 -Riot Charge - 31 -Riot Blast - 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) -Riot Bomb - 17 -Heavy Riot Bomb - 29 -Baby Digger - 0 (60 - jak w Riot Blast) -Digger - 0 (60 - jak wyżej) -Heavy Digger - 0 (60 - jak wyżej) -Baby Sandhog - 0 (60 - jak wyżej) -Sandhog - 0 (60 - jak wyżej) -Heavy Sandhog - 0 (60 - jak wyżej) -Dirt Clod - 12 -Dirt Ball - 22 -Ton of Dirt - 31 -Liquid Dirt - 0 (może warto to zmienić?) -Dirt Charge - 0 (61 - jak wyżej) -Laser - x 100 (ale tu także jest inaczej - równo 100 tylko w przypadku bezpośredniego trafienia, zmienna ExplosionRadius nie jest używana, więc nie ma mnożenia przez 8 - po prostu odejmujemy 100 jednostek energii - czyli czołg zawsze ginie). +"Baby Missile" - 11 +"Missile" - 17 +"Baby Nuke" - 25 +"Nuke" - 31 +"LeapFrog" - 17 15 13 +"Funky Bomb" - 21 11 (* 5) +"MIRV" - 17 (* 5) +"Death's Head" - 31 (* 5) +"Napalm" - x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) +"Hot Napalm" - x 80 (zasada taka jak w Napalm) +"Baby Roller" - 11 +"Roller" - 21 +"Heavy Roller" - 31 +"Riot Charge" - 31 +"Riot Blast" - 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) +"Riot Bomb" - 17 +"Heavy Riot Bomb" - 29 +"Baby Digger" - 0 (60 - jak w Riot Blast) +"Digger" - 0 (60 - jak wyżej) +"Heavy Digger" - 0 (60 - jak wyżej) +"Baby Sandhog" - 0 (60 - jak wyżej) +"Sandhog" - 0 (60 - jak wyżej) +"Heavy Sandhog" - 0 (60 - jak wyżej) +"Dirt Clod" - 12 +"Dirt Ball" - 22 +"Ton of Dirt" - 31 +"Liquid Dirt" - 0 (może warto to zmienić?) +"Dirt Charge" - 0 (61 - jak wyżej) +"Laser" - x 100 (ale tu także jest inaczej - równo 100 tylko w przypadku bezpośredniego trafienia, zmienna ExplosionRadius nie jest używana, więc nie ma mnożenia przez 8 - po prostu odejmujemy 100 jednostek energii - czyli czołg zawsze ginie). Duże punkty otrzymane przez gracza to ilość czołgów, które zginęły wcześniej niż on. Jeśli któryś z innych czołgów skapitulował wcześniej (Biała Flaga) nie jest doliczany do tych które zginęły i nie daje punktów. @@ -132,26 +132,28 @@ Tylko te punkty decydują o kolejności w podsumowaniu A teraz bronie defensywne: -White Flag - powoduje poddanie gracza (może czasem przydać się w sytuacji beznadziejnej). Zaletą jest to, że poddając się nie dajemy dużego punktu przeciwnikom i nie powodujemy, że któryś zyska na tym, że nas zgładzi, ograniczamy też stratę swojej energii czyli także kasy. I tu także ważna uwaga - to jedyna broń defensywna, którą można deaktywować. Wystarczy ponownie wejść do inventory i jeszcze raz wybrać jej aktywację. -Battery - w momencie aktywacji doładowuje energię czołgu do pełna (99 jednostek) i jednocześnie jest to jedyna broń defensywna, która nie deaktywuje innych broni defensywnych w przypadku jej użycia. -Parachute - nie chroni przed ubytkiem energii z powodu sąsiedniej eksplozji, powoduje że nie ubywa energii w czasie JEDNEGO spadania. Po takim upadku deaktywuje się i trzeba aktywować nowy spadochron. -Shield - najprostsza osłona działa dokładnie przeciwnie niż Parachute, nie chroni przed ubytkiem energii w czasie spadania, chroni za to przed ubytkiem energii spowodowanym JEDNĄ sąsiednią eksplozją. Chroni jednorazowo, bez znaczenia jak silna jest eksplozja (czy jest to tylko "draśnięcie", czy też bezpośrednie trafienie atomówką) i od razu po niej deaktywuje się. -Heavy Shield - osłona z własną energią (na starcie 99 jednostek), działa tak samo jak Shield (nie chroni przed upadkiem) z tym wyjątkiem, że ma własny zasób energii. Przy eksplozji w pierwszej kolejności zmniejszana jest energia tej osłony i jeśli dojdzie ona do 0 to osłona deaktywuje się i dalej zmniejszana jest energia czołgu. W związku z takim działaniem, czołg z tym typem osłony można "zabić" podkopując go, bo spadanie zmniejsza energię czołgu a nie osłony. -Force Shield - najmocniejsza osłona - działa tak jak Heavy Shield tyle że połączona z Parachute. Co ważne w jej przypadku upadek nie zabiera energii osłonie ani czołgowi. Zabierają ją tylko trafienia. -Bouncy Castle - broń agresywna :) . Działa następująco. W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje "odbicie" pocisku w przeciwnym kierunku z tą samą siłą z jaką był wystrzelony. W przypadku braku wiatru i różnicy poziomów broń trafia wtedy w czołg, który ją wystrzelił. Po takim odbiciu deaktywuje się. W związku z tym, że broń ta reaguje w ten sposób tylko na precyzyjne trafienia, jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie trzeba będzie przemyśleć tę wartość i dać tu mniejszą). -Mag Deflector - druga broń agresywna :) . W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje przesunięcie punktu trafienia losowo w lewo lub prawą stronę chronionego czołgu, ale niezbyt daleko, więc można dostać "odłamkiem" przy silniejszej broni. Tak jak w przypadku Bouncy Castle jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie i tutaj trzeba będzie przemyśleć tę wartość i dać mniejszą). -Nuclear Winter - nic nie dodaje, nic nie zabiera :) - w zasadzie to broń nie tyle defensywna co obosieczna. Zasypuje teren opadem "radioaktywnym", który jest zwyczajną glebą. Jeśli nie mamy pod ręką żadnej broni odkopującej teren i do tego osłony (najlepiej jednorazowej), to po takim "opadzie" będzie trzeba strzelić do siebie - bo będąc pod ziemią inaczej się nie da. Ewentualnie pozostaje zawsze White Flag. -Long Schlong - broń specjalna :) - kosztuje dużo, nie bardzo w czymkolwiek pomaga (poza ewentualnym odkopaniem się ale tylko przy niewielkim przysypaniu ale fanie się nazywa i wygląda :) - Można ją aktywować niezależnie od innych broni defensywnych i pozostaje aktywna do końca rundy (nie da się jej deaktywować). +"White Flag" - powoduje poddanie gracza (może czasem przydać się w sytuacji beznadziejnej). Zaletą jest to, że poddając się nie dajemy dużego punktu przeciwnikom i nie powodujemy, że któryś zyska na tym, że nas zgładzi, ograniczamy też stratę swojej energii czyli także kasy. I tu także ważna uwaga - to jedyna broń defensywna, którą można deaktywować. Wystarczy ponownie wejść do inventory i jeszcze raz wybrać jej aktywację. +"Battery" - w momencie aktywacji doładowuje energię czołgu do pełna (99 jednostek) i jednocześnie jest to jedyna broń defensywna, która nie deaktywuje innych broni defensywnych w przypadku jej użycia. +"Hovercraft" - broń umożliwiająca przemieszczanie się czołgu. Posiada własny zasób paliwa a dodatkowo może być aktywowana wielokrotnie w czasie tej samej tury, a po jej użyciu możemy w tej samej turze aktywować inną broń defensywną i oddać strzał. Po jej użyciu czołg uniesie się ponad góry i za pomocą klawiszy kursora lub joysticka: lewo/prawo możemy przemieścić czołg na nową pozycję a [SPACJA] lub przycisk joysticka powodują wylądowanie czołgu w nowym miejscu. Latać można do chwili skończenia się "paliwa" (prezentowanego na pasku statusu tak jak energia broni defensywnej), jeśli paliwo się skończy czołg opadnie samodzielnie. Nie da się lądować na innych czołgach. +"Parachute" - nie chroni przed ubytkiem energii z powodu sąsiedniej eksplozji, powoduje że nie ubywa energii w czasie JEDNEGO spadania. Po takim upadku deaktywuje się i trzeba aktywować nowy spadochron. +"Strong Parachute" - spadochron z własną energią (na starcie 99 jednostek), działa tak samo jak Parachute (nie chroni przed eksplozjami) ma za to swój własny zasób energii przy spadaniu w pierwszej kolejności zmniejszana jest energia tego spadochronu (1 jednostka na jeden pixel opadania - inaczej niż czołg!) i jeśli dojdzie ona do 0 to spadochron deaktywuje się i dalej zmniejszana jest energia czołgu (tutaj już standardowo - 2 jednoski na jeden pikxel). +"Shield" - najprostsza osłona działa dokładnie przeciwnie niż Parachute, nie chroni przed ubytkiem energii w czasie spadania, chroni za to przed ubytkiem energii spowodowanym JEDNĄ sąsiednią eksplozją. Chroni jednorazowo, bez znaczenia jak silna jest eksplozja (czy jest to tylko "draśnięcie", czy też bezpośrednie trafienie atomówką) i od razu po niej deaktywuje się. +"Heavy Shield" - osłona z własną energią (na starcie 99 jednostek), działa tak samo jak Shield (nie chroni przed upadkiem) z tym wyjątkiem, że ma własny zasób energii. Przy eksplozji w pierwszej kolejności zmniejszana jest energia tej osłony i jeśli dojdzie ona do 0 to osłona deaktywuje się i dalej zmniejszana jest energia czołgu. W związku z takim działaniem, czołg z tym typem osłony można "zabić" podkopując go, bo spadanie zmniejsza energię czołgu a nie osłony. +"Force Shield" - najmocniejsza osłona - działa tak jak Heavy Shield tyle że połączona z Parachute. Co ważne w jej przypadku upadek nie zabiera energii osłonie ani czołgowi. Zabierają ją tylko trafienia. +"Bouncy Castle" - broń agresywna :) . Działa następująco. W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje "odbicie" pocisku w przeciwnym kierunku z tą samą siłą z jaką był wystrzelony. W przypadku braku wiatru i różnicy poziomów broń trafia wtedy w czołg, który ją wystrzelił. Po takim odbiciu deaktywuje się. W związku z tym, że broń ta reaguje w ten sposób tylko na precyzyjne trafienia, jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie trzeba będzie przemyśleć tę wartość i dać tu mniejszą). +"Mag Deflector" - druga broń agresywna :) . W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje przesunięcie punktu trafienia losowo w lewo lub prawą stronę chronionego czołgu, ale niezbyt daleko, więc można dostać "odłamkiem" przy silniejszej broni. Tak jak w przypadku Bouncy Castle jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie i tutaj trzeba będzie przemyśleć tę wartość i dać mniejszą). +"Nuclear Winter" - nic nie dodaje, nic nie zabiera :) - w zasadzie to broń nie tyle defensywna co obosieczna. Zasypuje teren opadem "radioaktywnym", który jest zwyczajną glebą. Jeśli nie mamy pod ręką żadnej broni odkopującej teren i do tego osłony (najlepiej jednorazowej), to po takim "opadzie" będzie trzeba strzelić do siebie - bo będąc pod ziemią inaczej się nie da. Ewentualnie pozostaje zawsze White Flag. +"Long Schlong" - broń specjalna :) - kosztuje dużo, nie bardzo w czymkolwiek pomaga (poza ewentualnym odkopaniem się ale tylko przy niewielkim przysypaniu ale fanie się nazywa i wygląda :) - Można ją aktywować niezależnie od innych broni defensywnych i pozostaje aktywna do końca rundy (nie da się jej deaktywować). W związku z odmiennym działaniem broni MIRV, Auto Defense i Mag Deflector wykorzystują tylko funkcję osłony przy trafieniu tą bronią. Dodatkowo, żadna z osłon nie chroni przed Napalmem. Auto Defense czy Mag Deflector przy bezpośrednim trafieniu odbije je lub przeniesie obok, ale wystarczy trafić bardzo blisko czołgu i nie zadziała jego osłona. -Bronie White Flag i Nuclear Winter po aktywacji wymagają uruchomienia, jest to realizowanie przez "oddanie strzału" po aktywacji tej broni. Oczywiście strzał bronią ofensywną nie jest wtedy oddawany, a jedynie uruchamiana jest wybrana broń defensywna. +Bronie White Flag, Hovercraft i Nuclear Winter po aktywacji wymagają uruchomienia, jest to realizowanie przez "oddanie strzału" po aktywacji tej broni. Oczywiście strzał bronią ofensywną nie jest wtedy oddawany, a jedynie uruchamiana jest wybrana broń defensywna. Można mieć aktywną tylko jedną broń defensywną w danej chwili (za wyjątkiem Long Schlong oczywiście :) ). Zawsze przed oddaniem strzału możemy zmienić decyzję i aktywować inną broni defensywną czy też dezaktywować White Flag. Oczywiście aktywacja broni w momencie kiedy mamy już aktywowaną jakąś inną powoduje utratę tej poprzedniej (nie ma zwrotów :) ). - - +Bronie 'inne' :) : +"Buy me!" - tej 'broni' nie można używać w rozgrywce. Jej zakup powoduje wylosowanie jesdnej z broni ofensywnych lub (żadziej) defensywnych i dodanie jej do arsenału gracza. Jest to loteria w kktórej można stracić (jeśli wylosuje się broń tańsza niż cena "Buy Me!" ale też zyskać. Jeśli wylosuje się broń dużo droższa możemy otrzymać do dyspozycji broń, na którą nie było nas stać! \ No newline at end of file diff --git a/scorch.xex b/scorch.xex index 52781be1853b09262aa5dfe9d5ca2aedc821392e..46a6a1ec9b43d7037deee701e689ff8690baa4d1 100644 GIT binary patch delta 14747 zcmbt*3wRVow*Nfx=8+L33<#t_L;@^EWY<}ghw=(ABJyxA4`F~zk^z$-I(YzL2+$#r zbTYBgHQ?xMS9j>fbetdxBMuLjAQOe#`suFhUJ!SMOB$W%;a$|o^bCec}YW|{4aCn*ND zka>5yVq|4z@LIHF=K55n3v+Y^^V_GG%`+MrTSEthvPQwzD0t1+8iWCj!Z=TZU=8{8 zUcV69A(S-;z8&=A^d7;>Xh|45yxD@74kkZZZJ#*t;!J+oyt_Qh z<+igK+INtK0Sx#+C&<|&D9e2Z1>d`Z?|ngO^Cc3+?CVC9#lG(a#pp8<=KkqEr`&33 zg)EpwYnTllX6+g#uACXkGJUg{=RHwTtx{6B7L&to*!&0;)4M{%c)Zne<*+HxJKEMf zao7Ndnk`$){w(g**<)VV&rzp z%v*)nmR${nq4%n}V&sL*un^E-gaE{3d~=# zf&R=vf$2G4ER5o)DwGaJM&tWYk!@x^nbApQq~?g3F>R0v*>W&mQAkB$X1*$G^;j-7 zlvfls-bJ*8hQb$oeaKC0LOi&|9x$h;wpzYX(pWzg+WSHzo=)%4YPocNm9(m*QHz6C zuCia5gw3j1CPQvF<#{n%RuWjhn({&TH{Pq^)q%_0Qn_)N9F<>Hp$Fffs(5oDvuvGI z%ofryT_RP5P0M6!Xe4pPvDu-~#ARTew$K>T9>?Oiu({kc!c8YSugU~&DgnkUf^{;| z!>NHQa!}xzZ)YgIqC_tc!X~W?L|7>M+_JA6s`F3#7n7@7Jwj-|V9jr(Y8TogxD3!e zaDAdx@Wx+g6)YyqIVgyQ)?lLmsQN}B*Z`>d2EkF?D)qwY-+3U!%+bY_>Ky6 zW9de)xeeGK>>c`;S*&6NSy&pBo)|#_p6|G!1dtho8%DU{r29}ZGUI3dq>LFO18s`o z!cd}5xqvAdn0f*8hSA^QbiRWdLi|aJ!MdVg2=SV&u9Qmc8~TmoqvFp*Lg_MSoKfRU z8fW%sT%5+mYg~fHC29`!ST%Rpq`p(l9WklLtGTyLYPg#Fqe*S8=H4+mgz<{uY^G+y z>6|b6>P6ov(bq@v&6j-jQftI)`P88-*FIAWvQopk6@e{!q0W8Yt(ndjNkw5n3gzUp~LLjNbm%2V z%wqEYGk-wbnd-)``D^og8^7k$77RBH6!?h?wr33zGR;hCqjDX`*4&sU=k3n3FZ)a| zZ1eF#+t~!|ibF6^NhY>52Cks5tfi?Xri|2ZY9v7pHuGZ_jW;gf z%N9+bqC2#x_wBI*guT(v6|7Mo!hgPKzGq3cJvdv5XZ`1!mD|`RCfbhE+kI|nr+2hF z!!yCzQejpnYXnOK`<%xXP9ZshI!k0Fr7P>VsryKKJhzVo%qRB~X3ux4T^V#}W)>VDF0;65SXw-?*w!Qwx+a3^-a z2wJ<8cIn7zWlW$0@G+@Lw(NYg~c`-)l)W^sLE# ze5R7D?@f2Q7yRBO_Zm;}=aKW_JSNCC3=55WD7pj{ecj-Ze+L9i$q#HB@5VxOr3tbBTS@te^Co zf1y7y+An2uvxwy69wSl?H=9Vg+#J$0mq^*Z$I%&^C-QZ~IE zyr%O`bsn+0OerZkQJA$Y!>HYE3q6ke0@Fi_v8TXbe{+@Ag zZCM~NZ+ENZZztywPzOJVn?>&<2VF41>Wa%>L)a%JXV?hCm>nJy_?x}YCZz{tne;QV z?CAHzgnUDo9Rsoc_^2?k7hR(pw1I9`TBq;WDb@SOM*I8E!`Y@MJT{hgqa7PZ`wkFx zjVmD@Y;`HIZ=DAd;gn_dNtw-4^JUhh7Rc-hD9lRi<6|QBakhwkoFif%=ZaDuH&2vY z+~cCOg8Q8)t>peoR7^m*fvXjm>qS6XE6nteg7svk{+~^G@WOh+R!h|x#%VZR>SH3C zt0~;X zlDSHE)=$sJDR!;obV=+wzoB_8_b5R~g8zOp!scwwjZ8f8D2bT75843NZbVm9Oxkef z5TEGG8hEH&+C%LI>y-AgInwKFF02)`RMe*W4azD0h_mOo=Cu@=6tX0#M@h1gJBk~f zJqlfTlt}Bs61077_*A5qv{o}6TX$@2^IEK`83J+O?5K_+t>-Qss86K-c>tYXM?v_{ zop%_I@(DS=F>d9@=1iPiL~TVeQHyZ))MA`HF#Qv@u;x$t*c>bfHb;R?z9r|eI3Mvf7BD8 zF#y7XF??xm`lHbh;0)Z=<+7twQ1G53+)cY53*LzEl6!XfOfOqvJM=w(BUcLfqp3;xFX& zv&~rt4+eH2d>s-3>}v?q^d-R^Rb3f=4~A{9$^eSf$)iC0L#{hKbJoELqLcSVCmVl$ zGE66(90=$u#DJ9Elh0CrWOx^^>60e?8x5{aOp&x=|e2>$~`wnzKD(}*B==u zaJ>c!x}ZDy1_|6CfseS-JxgVTMS93rMT4yX(fy+^qumB+>;hi`3nfRt)*W(Tg^-b; zqYrk&DYFu6B)#$TWqRWm$hh$_OT?8QbqLsc*$PhtC)EvC1V^<9p3wX5KoYzGpx)(B zC+?*>{yKCVBd~q@alhb99mJW764FI89T94A@`V_jZ&B&LPMjggpCagQmEO!BO4v801Nj+*Js`c6Ka8+%Num7V z1U$S+g?)euJ4A(j5W)r)Tr}7K7u|prbOTnxxObLuC)s<*;QGw2(ymCndKT7$NpMOB zwOp)h8G)IZ-GK;~emrJ}AM*B*vf0CulRW|hxsEzLWz<|AwD(&CSl!<2BjK<&9xcm* zl#W{!0c#~i*Ev*fZ(SfAX4A5zBcOgArM?W*1H#N4D(5qu>4Sc1!W&;Dk;F=9kNue^ zu;XX>$MX9RZl?z2@51g@TvFk&kg4^FunniO=M%Az{BUSA|7`yJ?y>6%!7aV9_^bJM zc&I~9J$riGe{`n-D5~+;2M!|axZp=hrZ#Mvl9sv81`TFMGJX-(m zSa~|m)h>TFRQ)W$d?5}B;j5tP;H#p_;PVpcP2Y1wI^f$uq_=!86Di~qq4GWjPTdDq z>3}Pn+ldjEf%9VwKN7J?2imi_7tssa{(xTmG~j|c;5yFvqObxSR0_OH2R_cd6a^+x zV3{7pTS6`2dQB6#*hJJO5{{>ai)$iHO+?H5#Y6CO`VS=wDFi$8oo9(PR6)viP+B(!U7^>y8$1CmV4;c&tl_-K|ePWI57)s&t8oGup+`0m%mRK0NvOXUdvXjay=K{v@X z-GyA1K1vS<^$?IkLLLq2F*tTKV~M+a%~KOS=>)oftQB-(8jYH!lW1h@2(3y6t+o_O z=d|l}ZijLkhx;T6SEvCWa5BTUMSc@oLS>;h-bAdli`iC27d$hDTx1FS$LLTB4LGPb zv#rc-TzUg8o%Q%bM}_e1n(=chFuEWPjOD_k)$?tTBgMFN4-3a;z2G%gRzv(966!2BxB*G5 zyF*^b+}b4=tqxGc44)N7vT5dY33_eq$ucmvdkhG^O-Hi>GhVQ|Zl_(YSdaI&$Qx1> ziz?9wmSm>hU|Z)`>k(xk#(@$e-QKjU)$$zX!vF6yA8Te@^Nl15PJx00V3piuAkO2K zipoY4y^T=XjZhi~uGt;cvJ)(c^p7E7R_nTTZ46Z`G^n8Smg|Gj5x7k@tkQ0RQd8Cp z&}{v(NP%|ij6uP5_`z!#92R^Z2jr=>1eeC9H0bFrY_?fB5s3-Ek8o=r+_E)Q-h3v!P&$;LL{g2Rc%KrX+d==IWdEHyQ=7& zNboW%HbmlKtLk<*XsGcZ z$Lm<*6AoLqmlq-5Rt`WASPGIagOgb%ES&WWws@CITouJkU;Uw+6l89mZR%f`o*6n1S zVEIUgryU8}ZB2E;8HW&Z2$qA_9DwpT!--l?^rD4cTx`2APJz4Pcz^B0SEEBXetdId z<5EE|1TR&imULfNJs9;@>7Xgp`yr2mia`LB=|MP4UdTYXpc8^_c`_T$Ozo z4X^YtE6VMSplif({>$QfjWzthl3ok-!VX3zi2$A~!kzJT8()IY^Ozm4gqHd;k<>o_7cx6mS z&Gw};!Xv=&+!fG5{imx2#qEwVT59Ci`en0o1ys>&-?>722Y4f0jvcb}K}GP8{eTOf zarE;hO?J-#7lrC^o_0*O2SmP-gQnWZ zKegLv_r2(z5V)*&eRu{gzB3YfkH0?mJHAB$>K^!&ps7$)#X%B-HLVu!U9 zhMYdaN8(XW&g>uh2j4VR)Jz%UF|AG6fIrVBMLw*VD%yMG>n89o`QZ_fU%?~FfDIo5 zWt|44T^b&(y^4tuW2-&~t3Ef@_x#xCyo*_)nk9yl^%x;b1YP#oJ@QZLy_R@njiY@% z@&SdUB%0x5Z!#KiHad^l+Ub~uj#yncN8rF^iM|E=?)7&L87An)?Q2J9c8xFA_{Je5 zg@$o(Oz-31l_!6Z#a~)~UwY5&_0z;k%isJ4nDJ@iS%cR7a9kwiM9=Mra0hJXCwm4C zjlq1TP7`T=0{XdWqTdMkx>A(f96`7u?%-&?#`E}X3uUQ@TO>;?Ql#)wT&MWUo^;O> zsH$=fSzRn6OR_{}iy9qrvpZuvw?kGPa!QIdf1%8BiXnfI%+{z+$ZRch|K^JhpgG}? zwGSLkOXbk8m$}7q$oDe0L~g?mTZA4Y^(FTOU@ex4E&y){iqI@`u)v}3wAD2X?vlYJ zc-SJzjoBb=iR@2oc5CKJ?dtK(tXN2a{f6qAXidAZMpmmSjT~rfcEcggpd{9UIMqu@ ztBaCmMVBj%tChXxi(dI+jcotA(4oY!0V%-M$;__RQUG}_HlQ?d)w04Z<2ae-%Bd8* zaulYmFa{HCdRIdg!^1TixS`$`56I;*oH97bJVgwrWv8r!baX$5jen;6PS1~)e)$(+ zZ(X@#jbBE8W6CjJJ9Vr|+w5SDpcYC=nsk$CPmCjVrg$Pxhzw_UE0s8if_@Mc52Z)= zIob;&L-Z#xiuadE#$xrtk0f?b7qSVWDUVI_{3jvPDKxy%YeC(*rtLB< zyWZeYF>_Di(LnIea0*~dUs0ZkF#(^TFXx8CqidJkyf$Neo9{{C_}L`w5+;>;1o#?j z1m($J=JXa0PHvYoQ(`pP&7cn2qb&ca6zpw<%G{stUVXE>&kYR&I8-P0w5ItPM&cVc zjqz-k{e~#3yDR9Um-@lN3t3>$tuSm+WoCDJT!%)32>Y0)^RoQL-J#pJ*SY=X4!^0+ z4a?F6RqR5Pw4>6Yv%11DDWX0Ob(;)qDTdprNA-7jRCK&29ryeg;4%gHG6pc969WI8 zYEP`1Cm*NMG1~_|eK;Wk6Ap5ZYv14*!E!|7`lW<7EX=1_N_V8!g?MJcGqCVNJXk}3 zofSZyv?KgtA3<{2Glt-XiXdr# z8R;2X_zR~*uV&vEy*O+@>-E581f6t@wuS{RXI!(EWpRkrLNhs+!8clmWV{K=ee@o6 zATL4xH0<^nn6|TDY2P_ewR0=m*&-#v7Goz${06Bg{5(o1?r<;udDfnJ0Y608j|S+y0hWX@ zg}(`#3=kEmS+|PBY>_&gKUy(y>Xri70|4*qfCCn!*>}@4`zy*TvF^!~coYT}Lfk3e{Y$Q zwiZ!d&bbwAt(1FiCF`}ji-B-0pILbahLTMj9nU_O$8rb)U2KiLfnQpA=g8B=QZ2hx z^0M0`4pVDbue22)+hF}MD-N?HF1{wdHr@-rbU44K@=?#!605{JpJRDxyYqQ=JK!?n zw4Tx??7?PSJr%f~wy-7kr%KROjII)NxzSZbA&r{FDiu3DD9M#LH?X<(=Spmn=Ug$` z8_ty=dkq*9g>gH}P`)d2u4kS0AYjVQxzS#KuE@hWN7M?Il#A=3y%$lioH=V6a?0J1 z8a5-Pfvnv9Qf}sbdeKxH5v{1X^|B(e1yauYZg1}!ak!pYLngaAmd8#jr8$vJ$RTZ( zHn(hpR&Hw98Zq0M5{VK6QX~({U*9^x7~&^vv-WE!Jyva#D%+FTN~y|rj%|;#IxE>K zdtoUP;-A?z#Iu1&ufq`Ja^(b=ZPMOz)nN4Xc690OJ?EYV-q+A}qOESANyc(y!O_6O z2WK@M#C()6olmnl+)vS=_ebdT86D_SZsOzbtQz7ONpM1Ooaqxe1D7arNiVIbt3OFplf?Sbs(Yr^UOYxNxqo?U03vyORo9b+zwePq!O!~svjG}^F-IY8hy zN_gp5xp^0p%_7@_Ck|D5>H_ZujcgS)vREp2Ez)&wqR1I-@w2!)ZinKb#(gaJSPrsj zU%|&fdX4vR){GnZN19}dc5ghdSHq*ZN_1aP@LU7XhdJh+n`olLx|U?OcVn{yrejn` zqTNvpn3G!5KMQk^_B`f1mQ9y-;86kPC~Wbj=uFLz3dW%)08P=vsh;aH>A6#?UMP!G z0-mWEh}AtnZ-`Qm1pN0b`E zW-TF_O{7erz_gy~w=vR7+2A((IgSA6~w?Oh(5d(!vh|iiX1p{c&yWk z3?3~Uph3$9db2NEPMf>fjlh8l2Xk^`qzg5Jb>($#`y9SY-4M@oqQy(uC#Dhao00v% z@xMc7WM2j$<>7Y%!#BT-eXT3U0Xn%+qd8dm7=dPH*_>uK9dhG5{b3`07II#HVR^nB z+7nY{$>Th6lL9sJiu5u>>)wDIHGO~-W!*+yj-i3?tgcxwgK^YqnMGwMzF;s@KKRv2 zfqk3)t`OKiQd4H+5=8o&y1T8dttMV%uCIw+1f}{#utv)98|q5c1Tn(cJgQkd_crjU zapJi@0wsR2)?LViC5U#R+=_8$Y}|Qc-0zJSj2LHgq6f0$Y1D*B(#d#HtF;d)#{MbsIb(2w)c4^(3^SHl|{`b`&#WsDT-WdA;8knU1 zh4?fgJ>`3sNUQN?RfubBAz!qR$N-Ra>RqCxfwEJ_NGjd}d_+!tgj6pmtk?KQ__4_p zp`$r(>;pW{4;pq~4c&`e<+$x!4rdavpZ26pbQDmX(r715BL4}0N7@lKUn+3<*#ZQh z`O~h~e}zhM{Z-zwJ+05DC}GvNlS<21xA4r5-=6LJf*(l1x1``2DY!xku9JfANP$6Y)n0_1PgSl9iN3Fh?<#J@D}tdpum7hWGWIKi z#3H`i$=Iv-tn9>H8-ky|IMkhTBp$)fPFdX{<2ak}T~EKKv-yxwfmO#$!*K{wy3-&< zzA?dpIs&&+R%UTqXnLZ5rHnuWFTBlo;mwSn?g$mi{oQi^ayc?GRLFaNpXOPKG^Sf_ zkN4q`QMrt30gsUG+Jb8XXIQV#`Mnmp))K6>9)D$ErL1+Q?fcPwTyHDc(Zz0Ai+O4~ zUR2|iKf(h%^hbPvxBh;nve_N^p8n+q2XlA}^O|D%n~Z*g_c`LDw{LSo1B)p9%b7gU3(5DY4E=tysNg#mIW>WJ0;$1+0-p8v#9urq!Nu7n+Ki*kO3MdgiB#@j zfZ=*)4EInB!=e}hJ#E1W|D zI0Nc30U1u^_zy4~#nxa~4&reZLk_`i93<2s=$jA9=$keWRWFrmYna=s@PKuAW|DZY z^1Ue}GOTe5L5R_EM5712<#3>n6-U7pANB`Qp}clxn+jjz+EO6SIUn6w6wQRbg6JJufFt-ZBbHUOY74;kzZaqkb+h8 zrB8KU8uY;7rhg#_uZ3VNARs&#f+O1=$I&Nscr64DVP*H=xsW4ecWZ0NUX>M^QI+Lb zQ1xMzxq1}-U5%>#x4jP)sZc)1sUZH7MO zFtMn4t6gDXXg$UjxXifu<`;YQbypo*t6g*;o}uHh;c@!#*%y1|#D?`p0c(FWtj_~I zDXiX4&Bp*bEsF1_6Bcz$KrQp;90qe1@e6&sQ|8y7>NCGy6h-N^)R#WH&C_ebq}fYy zwyMF_Kb`*U+r<7urp{f?J-4gn!%x4mFvG?zEv|eq`0=GK_e{?%d-l~}`@g!5dT8O( zTh-=$hu?eu!&9GpKWOMZqbED^R#nvdcOCikOXHw>=PX>ZJoibj@Wx-RbRRfs+`?rQ z>Yu*pGG9KZ M^0j%d{c!vL2h_cP6aWAK delta 14548 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 diff --git a/weapons.asm b/weapons.asm index 9029b07..34c2b28 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2629,6 +2629,25 @@ TankOnRightSide TankOnLeftSide sty FloatingAlt ; I know, not elegant byt this variable it's free now (0 go right, $ff go left) ; now we have direction of bypassing tanks on screen + ; clear "engine pixels" under tank + lda XtankstableL,x + sta xdraw + lda XtankstableH,x + sta xdraw+1 + clc + lda Ytankstable,x + adc #1 + sta ydraw + mva #0 ydraw+1 + sta color + ; draw horizontal line + mva #8 temp +@ + jsr plot + inw xdraw + dec temp + bne @- + ldx TankNr ; first check if we over any tank ; Warning! in xdraw wird we have position of floating tank (after DrawTankNr) CheckForTanksBelow From 9108c7c857bc10a2c7b6f413b550669454f1956f Mon Sep 17 00:00:00 2001 From: pkali Date: Sat, 20 Aug 2022 12:22:49 -0400 Subject: [PATCH 35/54] hovercraft erase optymiz --- scorch.xex | Bin 51325 -> 51299 bytes weapons.asm | 44 ++++++++++++++++++++++++++------------------ 2 files changed, 26 insertions(+), 18 deletions(-) diff --git a/scorch.xex b/scorch.xex index 46a6a1ec9b43d7037deee701e689ff8690baa4d1..24d27a6ab8af22ccfddf28ea8fe1c5fbea0e7904 100644 GIT binary patch delta 14521 zcmbt*3w#q*_J1BtTMD${9V(B3b&*1Wil_mFqVgy-vf%5th)U3=ZNN5wq%DtbC^Dr& zrUV9*qQUIkOgmFMY^ttUF+7x3(%*u!{@0(f3gWJJsffSb&*zWW z&b{~CbI&>V+;h+4@`KO#SD!KTx5fJGm%d(n!O$;Bs51W}FsbP`-kN#*7x&)hF*sx$ zH^sm_o13{n%IaX&KHj_iK4V%anB+wNMWNOFJ##+)@*q<=pQ)I`d^d;AdU3JQ_Q)Jr z$GVvRUMTBXiAmXrmc(?=m-{j&a+%Rq397 z)M{>pESNhtF!>&4#RlfH&CFnyNzY+6d19hkEvInJ275ra^=>MrMj@&{*=qjom?1PQ z)>b_U*Z{k-P_mSV1%FtuD<#6IUkSc65L+V1>1=>Gu-aBQzjk$ay}-KaA!^lVn>bI_ za}^RJxUemCwXX1sUarN!>@H#Yxx=%C=qTo<%32p1O!Y#g&pVM3Y9D6EYV4_5Z@2B9 z%dE&{mOY>>kfM5z9SdogfW<^2)1reTS<#e8wwliDuwx;{uKoNPaDEe^DBiGll?cr7 zJfJ@p6qrFvgRU5kH7@Z;bQ->I4zi8RN4dRJMr@24nGTQWVk^LSrHhKf$h=qH>M?&^ zTT$t1=u6bZTGu{*w{QiUU;?+;1Lo}fR`WOVP&Pn?c1Vbt==6cD=C9jVi>sR()C6ed zYTI{nuvyhP66AJ8o?QziIgt%0DepvX@m-9p4Smbaml|@UnEckbJopAxrCVK0&L**x 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 delta 14693 zcmbt*349b)ws$Yt2uqsP4gx6`|-av=*jfZRhqUOzbQnR*CcWCe4;_nSW=s4Kk%On3Ac?jj43j{<&t`vZ;!J z&1c@5r5IV68M+BAnYlef>B^j#&HVaFX4~xA`sUyfp}1b~)(al+&E_P-xXy>iJV_wdBPjh@A9HA(EoVmUx*#vG`THPh&1@SvT`_Wd zW#+AXY)f5je(?PY?xcySFJOkbf{TUlAm-81+I%#a%2{fc4?_dAF3kPwu%{NI-L`8Q zvtl;0t;jYqf1lk+Wu(TinK5mV^4StFUYbuuVP>utH@hv@ zYD-G<>+dC6Ty6df-el5&O^5}z*aPO=jAqN%N|h4z6Ej-}IkHCwJ-S|_b*s@Gzm zmFsLbred=ySIUrEhdi%j%1RvTQxiW7{mOGQwBCQ6TOrr4lq2#h&v)Y+R26Q^XI5^O z3fX)*rc0zezhR|p4UQ(x7&bFFjyMghBRx2tw8pSFE^Ib8lW?<$&Z{z+n?ZmvgJ7N1 zlu(lYh8z%h=9}3{-w4r*g^)?>3K8bZUYG1Gf$IFr_QkY{X15SLBv^BssoDki3r+)c z4_u#a7Cf<+n+1yrbB+jNzBN!U0IH^52-E_qrdF_5Gz&gM@I(h}V!GNae1Ad!1Ktw? z-B`L2Y<4a72YZJ;W-hB3K^B$Vj+;EtQrQx)9XCN)&Sy<<|FE4X(}c43lYxR9oq za5@)>-Wt(+R`e!I-bIqPMrsb5EuY$zRoZ8YK~^eRmm;tQFI2lOxir(I0;wP*YcY~5 z^rH4J5U@j5Vz`~Ma@)jBx4jxKFB;VEJ)zn1Z|v(F5jyme zJ!&!ezbzURbH1YfEB@A^yNqA){T7cj4(1lvSP&?%c?iRow+PnFL#5;Xhxx$h|z%7MQ2Rvc5}=N>8?diL_(%cJdwVl=gOK zcqTAU%FpOzi(rRfopady=_E@~=ZdVPbYp$#>Os;P%N- zDFOc`=v%Z#i$-2+~0`$I^oWd=hd$Px#XnVmp*$v&PcMBRMQF)*^(b@P=zAl1Naq!R1SEu=D7Kx|Xz{;1#l zGyUyh)Jp~5an{%z`b4L4|w2#_=?P*MEytO!s zV1ZyBZW=5R%p##vo>=8w^x3|dn;Or$($VL>=!yUVA*JIFSPUp}LoFi^RTg2hfPu~4 znE?WG_BC7nab_U_b?}0?x%4)&(*@(K&Y0Ydgk38+LPnUy%+PrMKWxd*D!m}fgrAUQ zd%rs>Z#G;~E-8}I)Zn=W`&!phs_1=s&vl9oNF-MCd$DSerV>fNhbvD zZs3L!lu?=w!>>?RftB%9n-9}M-RIBe>58KyLSXHrX5m)NW`4u($Q-zWQckJVbSmvk z(E_Ch>!ZixEW1f^I3;$o&(OGu`z=8{g8zOr!e(vD4o^A#TM{;Tev=NkRwKG1Qqo2; zNBMY1#^9qR(tc_-Sci0g&5~Ycvtg{Lp`s?$XHd@a#~r;VHg2NGq@X21Jwdt{xf8g~ z*%MHO-x6taNP@C&3Y`u2l{RUnlbcU&YTSfXHG@9}oSo27^y^)x10{zCUINgi%@l%EV=4~O!XvR4=z`HY+)?(Yzh+%m#-Vtqd(#$&cEc|78aMCd^i1b-*MD}a?znn85 zeg0;+FR%)s+Yk_7UqgtdFA3(T=E`t-Fq{sX44@dDJPO1=?7Z7Oe=|HFI{83kvhk-U z!*J5ce!sp#6iB&?Qhh6#z-tMmX|W(!|7O0)4F40smQKX^WMYX`?(Z1+A~K@fesr+F z^%*Saa&GS%B5*_aFP)5gg^Y+ukM_!GoaHCFa};8&iU zURdJk4o*&x^qsAX_u2X`20Lgdi!Vz1f}e2Q+e8w$qeLRyF;K}JCqhEr+r-n)svaed zH`zDUW5jWoJ**xljqtorqmaMdO(<&qa}QrBW1{s4R-yjBphD`ZLvN51a|lW|5)z8p{>+@ z{8QN1O!E&DAX4iSp>!O=-cLlM?_<$`qdH$ERQm$K zd?5x3;Vq@=;4P=h;PnvcP49C=I_%v;q_?~;6DjBwq2gWz9^8jk>98}C+lvvWf%9Pu zKN3lo4!34P(5{jjEifbSZ4Ma=(S*6$Yov;U`L#+n(kQBh50Vr8eA=sgB-OH`PQc}E!vKuTX z#V=EigC0^WQl|e`)yLY6gxgO~mn9yK&3=;B4SKEnypz!a7OJ?w8k+2h1wbQF0n=NH zAJqs@%UJwac+0xJZZs`009kA{fZ+&x=xuzw#5QkPN1Gm{sO^e)U*H-CWxN$2)c9c% zHGVz=0Ac=y{M1a~#4NBqZyEl>iik~=cUhaB4T=o<3=|4&jZo22qNJQM9Ae~;pnUvJjSvLh`(Jzo#lpGKY?|% z%j={|y9S%p4vP5Tv;1%-&5-=iHA}mBXP@<&U8df%2p2J)?`<>=v&D2}o(L})^P@w--$yE&E+%Bo0 zcpTB&2%B99n{nP6T@fui&64oIC=zD9u3NXpQ^i7q3OZ+%J{TE+la!8CT1`-D%9;V1 zt=|=i&~BYED7X$kbQ6QKLXXT)Hv$@aBz6jCKnt6)JP)_VG-df8qKYsc(>f9n!>!JQ zA4uq~meM25KfXQf%@)5Ml)$CbW!xs>7KqsL0|bBayMsTr$A}Ib4cwzdayVY)<`8vG zn+>pwuW~k`+H|KF9kh`_PTPj;aHfe>OFQESNw)! z_XHo|*u9N=>}raJQ`Mtkm!Nk2=ycbQ!rwJ(*X_(w{#(~rH^XtO1@&HzTLTxCt-rG( z^1K^DZ>yKw&@*rKur1XBW6NSvXnD$Fw1<+kURSCGwOR-zXqS|D4BK`%LOrzZXQ~Cu z$2vUih|_vDR14?rLeMT)j@+^X%IyfnYrWBn7J6~7)nS|hcf;}i%7L$XyKw5%w)*-N zf?x<-t3Yun@NEU^OEjPPW&KJa@O=e$AE{p@1WX(^iqvNcfq0I~5$YX6pdZKW66&*r zz}+0@6za2ufX;6~=hqI^;!_KM9cLF36N~M9PT>$^HD6vh=e|k-B19!7j+t0)8$n|! zJ*J9q+ZJJsTD7a_0e2?w2Dq`+55#9}g_I<$-Ld}JV zEvJqpXkSO74iwPXeJHH4uP9%$8 ze^jNAwn>@GrBA|ozn-KFYT-=u(>$rx6+nS*Yo!(!KzZ)%NzpD7wP(p1InW47nj zx~x);vp>5*aykv{#^BqPSbA$E`wEuy^;cr5b8H*=lnvH&syhLyJEE&`kG`(2pJJ%a zIdyEXc2jae+t_^+m9Y(#jyyPz&)?9`UBT{=3Y=B!USC|}9y+I=c4O33QBMaR4d3;} zR8i}tP7}2R^%0RhYWp-tor2$;7t;J)>mLzo62&Wzh+3EWDPqkS@yZmDt}~p?fw^(E zpmva;T!3uGv(5{X!)Du?+0xO|(?!3Tn=VpxPQ}2-Y#e8t!r$I7fM2+AAl;o5x>{fT zxcCfb6UA`1Q^(S@Z+wWunW{D0jxwP&QAIY}R?H5K0>cYd>%jqjx@pkv9;m7%g@38v zNPAa9U(L3?tF?E5H{A8)QA;ukghy?Mo%oEQpB*&W+=rbMs@EmjIYrb)fUhzgSnmO+ zabOxf>U7cSOlmsnPe_-JwkCleAcX3GuW8~;BL@}+bSRiwNma9cjSd4L0`vk^zVT4L z$XHcm%&iYnopA$?mLMJtB#O5EtMNNVtj(8c0r%$Hl{iw+!JAtvajGh&ipK_N_u~c+ zjrH6`e~d^%5B6UV4GLeC1E#9*zqFpT`vG)M_Fvb#zU;6!*2X;>OjXr;LYbZz#l5O} z4-VN;TU9n)zq`IZyqshLQR_s&R)rqWl9U0sglN$g)k52*HKBm1Mjtx&C_lLV-&&P=2_*2I$bkE8SSpku;|zRBsW zJ=40Jp3eWic+8AQ>Gs{V5z}x9{vIltEq0hu-GXo#VoT{hWe3jo1f1>dc})L2fu=-u zPe5@hVin*zjNm^gPIk`_+byav?A&oa9E<95+Q8s{^9?gZ&6GL`vs#ob`13+S_@l}h zqODi1ZYKYd8yXe<1-zzI*!l6$)tS)Q6`^t3tC$!zHtTb+=yMai&rgWVyOJTQ8Dgl5 z9!6w{Aj>wdSMC|T*Aj~?a-^?UE})R4L^IUI(*+GUB%R07Tj`jEj#!-?BXIIEMDJq$ z@H6)e8zJZx?<;$7UZpqM_}VTc1V?aiUdM89+`D{{!N<7A4(h$TW~NwX`G?N{Q$JI@ zV9MV}Gi)f-TNvj^azDjowanD5 zm;6Y4v3{k2tB@6LCCAA$bxx(=ks~lI`B9ii)3Y9$7#gY3&<@qVSU|3l;kUtu<|$(M zHG5?xsH6KSY&=_XkNXEpzx=bXcdp#N#?PZ~n{txZ&YmpSw%M8EsEksQrgkvxj&h{V z5l`m`;gRepjgvs+F}jM8K?gF0xBvg*fDu(jkX3x2wL zeMfh4n}z`#suO)@)A%$a@xf=uyLZbzLxk0RrPN=l87jPx0R~+P!xogK^`OUfcqGoS zjeja9!)M$V?6bStC;wWned8xRrWY|Ad!C z$9vOp_YVQCQ-Cj{0E0Rq@ZF>K#;Q5;DJmVaZSYga;=(ZCAorB^HQp4gLcFeDNqEr0 ze43&3fGa4(GK-&veHUWE8e;GaKQgE75gPj_vd!-C1ou<83&Nzxe-v)6KMt@79y6vR zcmjZCMg-Mt2{47Twf#7SdP<*>o~CucP-5g__Kw$U#Rjxq_g_a`O2=qxg#UW#Eo*TG zhj1=9hjSXd<8(;I6Q_)&x2PSN3;L&FpVz>&T)3)zYex~!rR-)4lrUR}ohb4dq=L}% zD588NnyCjlW>i`l}rNjs<`zNkv!KOLtQ_q9}9<*z5}2(4;J1W z=NeW}X1Pf>U>E;j=|E!&zp#|C?_v>H!d)!zB{jNg-kk^wjt4Z@Oi$Du-i|%wc1`5? ziQMjq+;bCw6mlCt1NXZCmVhyZ?||(B5EU6)mx_FCfjW}^xOB>l?RhW)06y3b2Q0|8 z@1xoFSCm(x-P0(=C=VY^+aHQ~1{q%d!uHwyHX-`Uy11IHlCm$ZVLdiiArNljA1=EaLtRW99nZX& z!*U1?oouD8mS10X&**c7QWd*H@~}H44pS>xkF*0IJ7MxMD+aS9F19kZD%Jy6bR_>y z*>9K6D6&et<2ja>b~~PDcLOdpM(Zs-3-NBleN&1%X**kFd$I^!h3G0mmkV756w;_! ztWu%Fjk;WsV+)&Yd#)&5a$hV&d&|WlB(*p3PwwdL4xqRAq66S?K?ND-Tn+dy{iK`A?JtX?VAMn&pqF1?tDw1JfMfy;AOTR^U7*pSh# zh~~5VZJ^1KXOT?WCT(ll3Eg|PX-C*>GctV4PMa~vKep34pmxK_igc;0HGwUY%F{2h ztuaK2+| zEI|q!4LoshRM0`pN43)N6r08U7#(_lfKH#$jxMnSA3v^qn0qwA;loL#PvHz)yvQZc z$gqo8TaVM48ZV!y_kRt~Mf)-^j%c4-)p)UZN+sZGMiboX38I=H){G-px`+*3M8v(P zB2ST0tjNvabmQgbIHD(2lF;(gL{%`F$DvX3NA{^SbwXchXm>?YB^JDg7*7zY$AS*_ zZT6jJ%irOrWT13S>&Tb#YxC)IA=Hqmul$~%4GVtA53Cq6V8!OQKB=ImWQpH|uzW2Z zD$Zq@_= z*upH#_ZcNTXe`@S$7Hfd_24Z-xt_Pc^FSk8PR%D)%HD)r-J2+9Mq2y|?(RNNHdM1u zW}nPLD(xz~2jtdx4`)qnOFq&JTcmsICB5z)NmQcyvVwORfc}7E?(aYo8P=5~v$Z>$ z={KFEDiZ0AV89%va$pALAm@3~aWa!GZO7{Y%2CMTNz|EI6p@Qv&;FSrSyMgHWzrL; zRJ%|Brv$K-gHf5Tt4vw7V=HCez&%U2ZG^2=Ox#vlGDL0VSK)-vgW;IaLpT_#(;XD3;a8-WAy?NHWT)vfBan^yNILZ-hWo#@I_JU!#!!o87L~pDg0W2e z@E2mlv0JAxggLO(dsqvgq zobJrZ$%_6j<}@^s7x1FAHjCC-a)1w&7AL#D!6-^~TKC2r?k{BE*h=KhW^L6Q6COeX zlhnTuuSTRNz3&leJ>I1XG4)O4izX5t1hUS)N3?#R?CeRBgrfh)yl;pLNIsYJe zpOZQNBzgZLb3P+^UywN$N#12L=Mu@gLgxH8$@`MbX(4%GlAd>!mzBHOc!wB=0)O`<~=|L-KBsyc;C%Hp%;z30DcyhWKtJ6K>+OtP^)F2yXsjSNF={SOhnFWp$5?Lv6x$4gH?Q=0Zk!Rw>u{ za6A77!Q7ZTsz$cNjKDu#lCU722;U@1*h?khZAGOs*U7NC$T8+M^SRF@nT#U;%yTJ^ zLlonFP82`Oa6)2Xs4O#-c?uT(h`HgT3)=4Yw;R zF@-GE$g;(Nm(t86BG5GxFhmQY*!{Y=AFtN&k^vFvL_6=Y@%pPP} zwhXVRw0>5J#RCi$^Kq&p^KEgZ{ORZKbMM%Sw{C}|Om3|#Ik;R|%Hr~5yDv7HM1c!E zy&%g)|Cd}flc6)0?1^$&S-?@65y&jfpoupZEi)9@cb3Yf)3*02d#LOWW!K7{Duo>g z#UKdjL4y#vZGs)81a6It1on2Cei&FLBapyzZZn>9Gm~c7gZc76mprgU4v!Az^PWHS zbFV>?(j~XXdhx2LM8@TSS4a15$K`>;te5C~9t&M-Io5gxe?MT2to5Mn2ho09Z!4LR z#qL;(d2$xsPvc2HA_2VWM<{@Y{XV9w(G~uV{!Ioub8I{FnR`34W=A+lDx5WI7G8Ne z6S#6&>lSU!j7N(uMx(7R{_FMSvUP)hJ7sVbUDL>6&9^9jCh&(1o;0gNVx5;-y?*1? zoxAo3z4{LsIcEGLvk(G>2Kfj09%vlt3MX1o)p6M-%YiVF!kshRCi#bow0|mDzx@pTh0_A@VUlk9^GkJMs?Pk^n`K=mYw8 zlF~{Q2V01zr)&vAv=jN^`vNGg4hc>sXD1VXQs9VyH~PKtmq?0mL3WKaV`#I?@}XEH zmDm|zxQ%eQ9l`w+!H6h=-syqKec<0yn60^K>tzg^NDPsHdWHBeO}m1rB8KIM3i zIx;OmJW}@lbP^s>Kb;_sXgaRZgWPn?pKOJyJ7YsWe-f0_#_UW-8?R@esIlw@cVvEA z`~1{9=6e#)tdUP{2=}xt-$^wimKER>lPhav`+r*6lN?zp)Yqdgy=P~Hl<3m>ba(jY zm-Z)O6@BTmotFkZaI5Lx?!kK?7y}3hPlDjCw#IPuksRIwfkRl){df>$Pu$ns9JG~Z z1ZS6L*cX?7RBo;qgMU}y-!T<-83|dOZr1feYP=j6TPeDJJ*z6b(pFxMwCf!Mk5q+c ziUk3b&RhYM&I)M#u8`L6ilm~Z0(cjNO)k%U=~5vcdi(H~JT4ZXq|$N1P(HCf=?bm# z;P1fD*BT}kWo`8#SP)uGN%vo8T;(S>X;+YA-9+sQJ>E&}y>>(~6g~<*kq+=zU+kL| znS>hzPM|)IV$+9pY@jc(1K*$yd_SJBw0#2Vl^t^!%vs8>_3letRC6|YQH>~y(re61 zpY?S2oji5k@~j;)=qu7XzPM>w5pJ?BZRo z23r5!ZOp?1eJ!f5Mjj!(br(YU}JTQOB@>SVuJ;ED* zxzS_rn2AePma2dHy6gC*r7zXL_g^hHdW?9!(?9$+|5*MFzlDF-f6r^J{@Et89WTco Jd~H Date: Sat, 20 Aug 2022 16:28:39 -0400 Subject: [PATCH 36/54] text overflow fix --- artwork/talk.asm | 1 + scorch.xex | Bin 51299 -> 51303 bytes textproc.asm | 13 +++++++------ 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/artwork/talk.asm b/artwork/talk.asm index 908b256..6f950d1 100644 --- a/artwork/talk.asm +++ b/artwork/talk.asm @@ -1,4 +1,5 @@ .proc talk +; Maximum text length is 63 characters!!! L0 dta d"IN TIMES OF TROUBLE, GO WITH WHAT YOU KNOW." L1 dta d"DIE!" L2 dta d"EAT MY SHORTS!" diff --git a/scorch.xex b/scorch.xex index 24d27a6ab8af22ccfddf28ea8fe1c5fbea0e7904..2737c0af5facc21ed7f00b7040c4edd54dc0ab58 100644 GIT binary patch delta 13855 zcmb7r3t$sf)_>Bpr7hS7C>XFUqarI%u{@NZmg0g~N`81*36prkyFBnkuLT!b2=HRrp5T{r=16g1B0i3e=#o=zf3T|GSfvBI>u_-_>UB zx#ymH?z!ilbM85Jzj7J=;WGHXo1>rl&i8XJMD*(`R2l!}xu^sd>r`dE5RAXR$O9`aQ>S*D`Gs@uf^^QF z9;yBaY3Q&3H~0iQuL<%ZwtTfDmb^#nm;1{FwxAKBRt=WX(`7w}ji@ic zwlvfi_}{JJjzln93mK!sKTQaxFcT~53(#O{vy|9R14(KuGh{jT)Tp;wUV4OCFq3)a zDP@)v)H|)1NTUQQu_Q1dm>5V4#sxCeq0A;LCSt7G-|vCvjwO`D2iERVfjN{7@~0$$ z892{d5TfBI5cdZs;CqsnZDGEcd4tM`EkOfw-YFKaYq9Xk0xAjv^LcrP)A)V;+RB2a z1foXQ7i@DING~-Z3aiB)Fee}FF#aG9W<6ABdxc;W9X_DL`2CsX;_|j8H4<96+;Vvu zHmlYmL2kYB?4B*j(X2;_`!sOB>!-j<-z9FQ)MSxD@^ch8@eQtuDhe3OYO#ndpnaM| z90ko5$>cW?dnB9fPa$?4Ycu$A!)1#uIJ=(bg(Y;l>hB97izE$YFs5-({(_ zhG+gcQyvszdYTZ3Q2RoJ^Cb6t$-M-sbIx-9k(ymN9fDw5wu`Er|24s`gYIF~$94&> zs0+IUV+6)Xg15lbx>W#H-BzL11*|%kV6E9Dcy#{eUfejdvP-zqEMNidW`S-j-3T@p zT0-{@Fy;YP)`Klf4Ni{@CO+qn+yDa1frLvW+#nJ^fQ%XVD}U+2^ugQBvhKnFq7Au# zAp&lM-$8V|l`|4gjI1*)&NmX5!DNrCQh%V|I6eygUex%~shnQrB2>=s(!2zx zuZBAqp|sR+ha!}>Yq$?0ly_>l!x74^8t!O>RmhNar_G28MGVL@n6_ivllw_x;11m`OoJK zi)^oH`Wt_B-mUt-@q?cpt?$eK{^?gT`w3|VCZS2bhC^#;%9HXM^DGO$7If9_a^dXh zX!WvH&`~+|X>0Ob2JHHGrNiquQ7#0#tBgOMb(izQp1Iw*Qfez!qm&g=TaoXK@FEFi--oUn?^TReB70!O$q+X)Ow@}bk7Wt0~C)yZ2icv!#PjwX&zfJo#Y701722?`>`Ig@+Rqu;@%`a z!*PLceJtt3i(9+UWW3py!{3hhXVPU^)y=f$tKy)p2gZd5Cg^aIX{PDB<29eU)|s-jx91 z1YUmrwwN}eHUP2XosXX%qSqhh&&;12VOYM)on4&mow=|0mdC z%;BFy0`0CS`6ytPf6f`%hjo|%>vV*0K#%hAD&_)3Hrt6gAd)$R%>e~Aw>lFX<~4R0 z|9(7!C>bQpVBzLaTWzHiMw{%B%d!c(RI~;3Fd*512Yi3G7}m=JAhVboWY#0go8djO zybg~G3qOjR%)hws8RtT3au*TH#<@`S$0SL4N@DYrKT51!`IE#h#ttrlz#sHN;178r z@N_Q(KG`egaT#9G&Q0-(i@Arr;u7xnUO56xt>H=prmGM{ON7~WlAlLrYyX<%hc4t1 zwnnTOshB$?#(GDPByDj>XFFz3dW76$FpesBKii z!{d5~@pX%CbB-uEBcG8)xvkmtJuE`Q*-DwAFb#4^I~bI)aHM0fIQ{^IHQ5bp9`x4) zJ+{N0n!6%G3&x&w73MW6cA`F`

!-;-jq8SIWqAaa=z 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 delta 13883 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 diff --git a/textproc.asm b/textproc.asm index 2e988ff..caf52c8 100644 --- a/textproc.asm +++ b/textproc.asm @@ -1419,18 +1419,19 @@ displayloop1 lda xtankstableH,y sta temp+1 ;now we should substract length of the text-1 - + ;temp2 = (fx-1)*2 ldy fx dey tya asl sta temp2 mva #0 temp2+1 - ;here we assume max length of text - ;to display is 127 chars! - ;now we have HALF length in pixels ;stored in temp2 + + ;here we assume max length of text + ;to display is 127 chars, but later it turns out it must be max 63! + sbw temp temp2 ; here begin of the text is in TEMP !!!! ;now we should check overflows ;lda temp+1 ; opty @@ -1460,14 +1461,14 @@ DOTNnotLessThanZero ;so check if not greater than screenwitdth cpw temp2 #screenwidth bcc DOTNnoOverflow + ;if end is greater than screenwidth ;then screenwidth - length is fine - - lda fx asl asl sta temp + mva #0 temp+1 sec lda #<(screenwidth-1) From b4f1e42f78354e4667b32f089bdbdc71e206f16d Mon Sep 17 00:00:00 2001 From: pkali Date: Sat, 20 Aug 2022 16:51:25 -0400 Subject: [PATCH 37/54] zpage opt part 2 --- scorch.asm | 10 +++++++++- scorch.xex | Bin 51303 -> 51122 bytes variables.asm | 10 +++++----- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/scorch.asm b/scorch.asm index 6c37d95..6968936 100644 --- a/scorch.asm +++ b/scorch.asm @@ -117,7 +117,15 @@ .zpvar delta .word .zpvar HowMuchToFall .byte .zpvar magic .word - + .zpvar xtraj .word + .zpvar xtraj_ .byte ; 3 bytes + .zpvar ytraj .word + .zpvar ytraj_ .byte ; 3 bytes + .zpvar Wind .word + .zpvar Wind_ .word ; 4 bytes + .zpvar RangeLeft .word + .zpvar RangeRight .word + displayposition = modify diff --git a/scorch.xex b/scorch.xex index 2737c0af5facc21ed7f00b7040c4edd54dc0ab58..7355dc72ae1a987c320f8b32be694de7fb1f2a8e 100644 GIT binary patch delta 16639 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 m_lQq09P1^u%5lkPH8eUrpbW1Sm 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 u>j&Mj>ZoJNY`I~M%>4) ;---------------------------------------------------- @@ -152,8 +152,8 @@ TargetTankNr ; Target tank index (for AI routines) ; on the graphics screen. if 0 character is printed normally ;---------------------------------------------------- -RangeLeft .DS 2 ;range of the soil to be fallen down -RangeRight .DS 2 ;it is being set by all Explosions +;RangeLeft .DS 2 ;range of the soil to be fallen down +;RangeRight .DS 2 ;it is being set by all Explosions ;---------------------------------------------------- WeaponRangeLeft .DS 2 ;Range of the Explosion of the given weapon WeaponRangeRight .DS 2 @@ -218,8 +218,8 @@ YposFlag .DS 1 ; bullet positon Y (0 - on screen , %1000000 - over the screen , ;CheckCollisionWithTank ;vx .ds 4 ; 0,0,0,0 ;two decimal bytes, two whole bytes (DC.BA) ;vy .ds 4 ;0,0,0,0 -xtraj .ds 3 ; 0,0,0 -ytraj .ds 3 ; 0,0,0 +;xtraj .ds 3 ; 0,0,0 +;ytraj .ds 3 ; 0,0,0 xtrajold .ds 3 ; 0,0,0 ytrajold .ds 3 ; 0,0,0 ;Angle .DS 1 From 1dc5a40633548a5851d364670caa7e65c8dc65bc Mon Sep 17 00:00:00 2001 From: pkali Date: Sat, 20 Aug 2022 18:37:10 -0400 Subject: [PATCH 38/54] zpage var opt #3 --- scorch.asm | 18 ++++++++++++++++++ scorch.xex | Bin 51122 -> 50899 bytes variables.asm | 40 ++++++++++++++++++---------------------- 3 files changed, 36 insertions(+), 22 deletions(-) diff --git a/scorch.asm b/scorch.asm index 6968936..b2ecc90 100644 --- a/scorch.asm +++ b/scorch.asm @@ -125,6 +125,24 @@ .zpvar Wind_ .word ; 4 bytes .zpvar RangeLeft .word .zpvar RangeRight .word + .zpvar NewAngle .byte + .zpvar escFlag .byte + .zpvar LineYdraw .byte + .zpvar LineXdraw .word + .zpvar plot4x4color .byte + .zpvar Multiplier .word + .zpvar Multiplier_ .byte ; 3 bytes + .zpvar HowToDraw .byte + .zpvar gravity .byte + .zpvar LineLength .word + .zpvar LineAddress4x4 .word + .zpvar tracerflag .byte + .zpvar isInventory .byte + .zpvar DifficultyLevel .byte + .zpvar goleft .byte + .zpvar OffsetDL1 .byte + + displayposition = modify diff --git a/scorch.xex b/scorch.xex index 7355dc72ae1a987c320f8b32be694de7fb1f2a8e..0521340a161a86d4b602332f5a49a886f607c1a2 100644 GIT binary patch delta 16414 zcmbum349aP7C)Y?D}@FD2}@;AM2e_&c@k78Dnfw~!3A-T(k(14E@{h}R(flp9Sj78 zBGH+FnRH6im*R7Y5?Q3sl*JK2#V3eLOX~swLBs`q-#bamrvLZ~x z?z!ild$Rsj<7b@Fe`2EH-~8JrCpH_pJH{(IeneFvUvB=LzaemRan-xL`{##-I@c-Z z2(RdvH^=iXajX)@Jb9S8Gea=|z+9iH=(w89`s*P_xazH5h673kVBOPbYCtC~Q47JG6OW@*WrG9-3h zl1JZ?l~}_268D5|cby5n;6KHAndF@CKF&OY@nZ=17GkpVm-e%*v~KQ?>*b z2zC?6bOuWWyN+a8gNubW6TvDXIpj04R~x1>l6(qedq5$zUntpsx;pUNQf8;7ZIoR< zA2O(&Ah{aZ-uuZf<0qNm3i&m(I*udVUyThkOan!mLv zQ`N(Yu39-v912egRxWk4I8;MRfm9HZRg>fheX9Nljv$?Or^)=g zqUT@%V#%Af4nz1ml~26NC8%7Y%5_qeN4O-_ma#Hp?drg76}1@^Km70m*Hf*us4c5= zt8)`aQajO8^<`AJ&pkHSP{_Nlf1J_JakG!VIJSsSGcw6F)IKxD8nmv-WuH4N>K1!i z`PM_R>S>#(qnZ)dQ0qSpSjT&rW36LE>QPKg=&)xR>qgSCv+~{Ep$4Z3@enH z4m;FWEH3+8z0y}?NKFnUhhwV)am&=WF1}KOx<^S8EoD49x^I8-#w%dPI>9#b~*zNKF2MCzD=scg}M(Q?<0vPrA&bxFBj zM>*0z(w-@LP|DBH<|?`YSJLexm*kILlP&rxMItFlgttmN+G3n!hu^SmCo|E!ZnYp~aUMa+=H3*f9PTZlju)g%j|i}*24K&6!71f< zK7hS#V~$RwV#lsY#qJXXi`|fzs4<0Ji&OP#cWY3@Hj3`S8lesQqQEYgXaUR~h1n^L z8p>DFnAAAS{Ph9|1V5l#2UAIW4`Id`hIzG;_~wVO&MbB# z$;Gm>*mcAXm(AK{h=>4_zrvAQBYmqrCLL<1^FJijS(^`8?E1vS#A@pL4hvr!x-)!5 z=#Frg&~UiG)^IGi0anI3W|I#7>Yt4&_T5is_I;L)jE+LpMqy)adsyj0c)D_Wkh#>hka@hWelGWhfPD`C zFRLNhr8(hycfBEm4X(SaXxF9(C?ZAmdggZbe={?jw--z6sU0F&(tk*{^bX0Pb_}+a zns{CZCg&=kWRd1(WrFOytSmCGelA5V1Vpa?aOIui)WxN(Bc^C`jFG_*rcC$)P2n@aUtV zSMhlL(NHZObEm-L>Jok^l#If(N8v9S*_bJzI6T%r8tRY7yHi3#@R%|sbS)mQO$j+i z;8{I|y=QW}gBC{}GY&jM;K+k&$z!HRFHfkKKTXa*I}tKFJ6QmPzgRdfBY2B= zs1f;~2mwyS5>15f>e_`~?9Gq1qjLfuL$S#D2jSUH6hi0J&Icz8W}H>v2R4{1mBC&fQ(Cz*+H~`~}O#=tB z@}N^^1kE)LF=|)H)QbwINY>yOc1BRUK)gf@P8I;@g<0igBGJ92k?t)ay0`2=pS5Hs z*-n~BRkcNGgaLC%AsDa%X~(Aye>|Kzp!C|LMp&W{EYS{FqMalMD)bR-P=t0TRo__o zn;`Arbnq~poL+?I`Ii9C^Q@qZ#3lqPACM2p2J#Vs!$h)4POLa^jVvvx6c0V&N&ArrZ9%`oBxwMgRB6d+7f@dB3B-d;WCGoo9r! z{#NO|=5J8_ew&WGF9q-&FegQZOV?nhr!3NT(BCdKf_|eE$_kRukTZh&)9HOD{zdKC zS=ck5P9)hrJ+@ZJFBkH&Lw?gBzv8#YOYRU^|QQ~F4Kk|G^3 zBjw@k)Ol+ZsNmVsC#0RQY9?t%DC9CpJIzBcogW~I(~#U=%s%?KvNo>5dT{Ql(DH49!Oc@`NxW}Agl{UeN-UOF_^MK9fTig?8Cg~q`KQ;5F zKAl)iwn6?byCC&_)b2WW`9^VsJQVgpZ2j z2~?QPc}$zW^K0UNtOqZjspy^LFgl7RX}jkWL2C5ug;sm^3(^OkgM##-=X*ig;As`4 zpyy{8PR|MWuKO&~hxSbFFly{Nt_^i~92Kn6hi#c$GoWoc?gv2eIEJ0=Lwh6F5^4Km zq-|Jh+sGZEZEw+WKSdfJ$5J9%tO`?t6R~)1$!X!}X~B0|2*ptA!<`oDP77+PyJUJd z=ijI=^eK1(VLNu{GnU{d!u;rv{T^q7K zAseJ%mP&%4@VmhMAwb>Y;JE!EKvj2W-uy@u&>v2B4Df|Ux?-GY@Vnqcn{GJZ|1P8@ znQz6zd?S>n&odYR%z&~z5{skNW`JN7&>KGge(DKWi`g|#oiBITortfAfkGRHTF`)6 zEOenJi`QvJiwW*^w&Q8<2Yl#*!LNA=|1V}BQpf8kHbPxEijPn)uAtswZKIx94l|fV z|G(>pNb(6mG*QvUAk>jYNl5PXGg6%B0MwWIa2)|s8cd~HjqP75!8w}-?JE~(hLy%V z5z^FZ>7t+x3&M$ri6KS`hn2>w5oMr3VN<$ty9Fg4yQvN@@V!G_!?#D7 z@a=}0x#GZ!m+3x_vUG5bmc5fYSz5b(*mime&QNz%|APe>?T{ww za^UD=rb{7at);G{B@@nNmJ$oX?TFfeyLSsT#0Z4C5;;E-kGc-=sB7BeQPH^gTL>qG z^Fwhs22jVS`dPNZ7IA@`$>E3(^s_DE18H^iFhHB}dK?fgkTuxSRCxiS>Hbb<7f=gV zDzFbcs~91gE8q!G*AU*DV?67$0ZaJaze5496QhLC%m5 zyHkiA5GMt>h9RCD!AFq|*)60cw+~Jmm3qa&3;9%{46?hPZ8E=xzBuAs&>u8Y&w3UJ z&_V}}Aq5u6F&~rakP7BwT4@ns1P8(hSeDLuM?|4^?H0l*Q6$Wtb15Gf8x`lDbE!CA zc}}a0)WG|(f(p)mpK2o`d$cVjk$k2Ni|p0f!gc^_02HJ>yH*NnjP&WQ z6@n|#w*u=D^<<%@J(WeN1rTC>sN-v~-n? z9%GhOkX6Bz737WjRW@Hg6)T`i-4Wi`Y45I1d&7S;si$nX*-}_8&7j=P-E2@s&{GIP z?FM?+^y?U<30GVEuVRL>sZwWHqBn3|_DZ!Gz5?7D@V>dYHGqdoYA?7Tb80ta%mN6y z{r>DUM4wA)VKrKK=CLe9d9_G|S7wH~sGWDW@aE68<`fXC zcCBmS55CI>-{s94&%Ud*ic`A*hysAv->Okf+a{^c7+GBwUTfdw8yib&Yv1EVU0`el zE+YdIDsUf3W8TMV-{%7lRgiCL1AJgg1vgKq{eTZVRl$A4*M7(cW>j!T_}UG8;Q0z} zBVQZj1KMx{+Hl>K1;gXsT+5OgT-TCy%1JU?8A0YS182g<=PLgq zc2T#aSX@#fmN|k`IGDLkxoh(WG^fo~CUVwv&>NPnv~mXeW=xkI0bKfiS*gYbaOG>^ z{IofLr4qk1muHj&eD_k^ql$Vur*Nc($(<=XEK;t$H<>Nj?K(0iXaP9*WhGe$`h0K2 zv^1A3&QS_F2>p2hA*!zds;_Gu^{X_#KuEVVw{cT{^^D|zijx|OUEhvfqZh2^c+=8n zb0PHt-Wcl`SWs?0Lru(gWR+B4=g1p;Z2c;VUVpWECv{+OVYD>hbS>n+W(S7Ial+K&8rHu`(egkPmC$})W zkNf4>DF##uvxhn{XZb^9~Ka8l!@H1$_rhY(ZQw9<{trfHESU}WzcuN}@G zuwz}$hVtrdILvp)oyo1*7Ui~w=tFH8%KzzywH0Ch*Egv#J7-tE9kIQ=Rq zPXideK@InY-xPR%si&84o_hT%&5!~;X7eQ>oP_zDC5Gb~H<{^t?ko}gXG%9lY_L{| z$wuWMtrEHsGw&M1LeV{V-lKQPt>G?IZwHZF?0NPk^#sDRUD6SrO->hA^CP9!uu1%w zPhXOlUfC%fiba9ewytUM4Xy4?^HQ7_n+wPxzb2Xy@WFJ=%0w+on+>K!GexAOwX8;2 zgrz?mOFwre^XCjP9^+j;95<&Cs{x+^W@GvAh}j4%#{msDmW@g=V3nm}yQLNf9&q+t z7V%$Gg2R{9m5Qn%H655*m12A!iVyEwQYx~h8PH)P8=Mgu621YBRw~qbD75)rX!WC^ z+f+X~hV@NaA29OTaL?<*BmG)hq?S;EcGcekK7nZ)Ac#N3lSujY8Bz-k{i2mCPHKTW z6RiN;+6K58P>a0-D(6cr9zXBCX2I11i+OE)Cv3s$N>8+K(k8|Si!0#ZE~d8i4CN%eA7Ag7pqj*)|so4VenVWzEv`D_}-97LG5a}-jSNlsj_di zoS0~txk4tKqMNx=CQE!(GI^D$d->>U5ZJX^R`=NIJaVwu!>y8ozj(MeWM?a$qyQjX zvPh1ffwoX8_!)?ckSjr$w`STjC9&9x;lb(bxZIZ<=nbadkomZJ2XsX}(^yK@=F_&k zu5!DUcTu}tmcGMKzNhB~1mms&f6|wPllGG((ia+27U@g7$w|J%O4xsNyUc!`XT#N= zU-FYLm~qcbe#Fy=ACT{qO7gu@OumG=@7HQ~K2Es0BM`CA6zZ64(>l-E<5Yz+|2 z7vwwV{}>W&OfOgb@Z^>>$q?~ea4@f~Nv0VA`R%i0B$vy{urD$rUsPsOuj`(6-&Ywxb4(gDsPBtQHv@SY*i!P+}u?X?pQyYKnj3|?OooVIMKgEyY{*p@nA znK~f{BOeJF5dqR}NpNlo>~Ni^!=@uRw**I^I%pNhI$GcD^7?VKepIynstfA*YkYQ4 z&8=>vQZ%v~p5GK3#x_vpoWnP&C!@JE+BS%kD7hQPL+Krqc)7ha*ncYZtY!Y26*x!+*H+kdo>HwPERjuna~tObRg*MF{#7gq9-~>Ih8_v-OTNW21V;TH2tv`;qji zPrj&xx%6~};YOxoAK#EC1gbgig%OC^Yp$m9Qq*&XS4&e&fcsJxvsE+O95#{UdPh~^ z2-tagn><2E;Jz3E3Ai_teiJTkw4F9WIv8f$)qx+vSvG=mkKmS%;9eU6YLISU8a?QV zX7Q*~-0f}MHUu+0E0)t5Qz$bmC$Y3Lpi* zrZr~+HoZBAxTLHGJA|Cskn6fqI+$Rf)tSw?F#B1}cCv)Ey1#nm8pF&2_qkUr-O#{9 z4oY0il9*RxT<{p)DRd7hpWyrgVF7p6Ys4)r&w8CKmky?y)Nay32)GoRPZ{>7S4a`7 zD+H(zpdx@A02QF2UNu{!!Yn7rmWr~9Ne+8Wp;dA=7ouF;Ttsrv#6X)kvgRY!U68ea zWU-^sWPY;)CE6i{tJEA7l&pxXJtt+?NdG70_$^mV7y%=DOhqpL*-aCKwnT zRN*eG=%4cAoDDZtV1b05@EZ^?n1Phqj~6m7L=tI>trfS$U0sQUgF%(v|8DM%wQ<2EA+8MVFD>zKZC*#mR%&2a56d*}SexI=oTt_bw55E;lbtO!8gt?Or+%AU3ujrP&}j+Y|Gh}z0IK>hlAn3Y_@|U0Z~-^ zs31!Q6&(Oe5 zTPEekrWmwQh0Lx*ZD2biLbGX6Ttg&^tHt9CS|FF|9&!`FsQYKGzh37~UeeD=nDn?iSDDan$2!w&2;Xt+bTAj&Ao$QGd63zeL2m!J-T z_;xOYsFCym2I4{OzLIdPHG8GiZ?a^svw$NAN<+*xLDgT!61^SP{OvVP!a`+N|wK^;w+<@!^%T9Dm8vvks5DFbKx-6RBM_abh4G-sWv@{;wMFXLd95SlN zTcP1lI%Xs5nMc=#KHNho=JgbtktT<(C|wD=?8KHnL0HXI^ExMyqL+2G+R;yZYSm-!amsFfMyYmPPth zJHzauXBb+TOiH9Zb_p(&j^Or&PDUqeJK0N1mO9uk7Py_RySmdu&!rvQpSUc2?<-Mh zB-qPXNWRYH{usl{dJ1=q+mEo*OpvWD9+6;>pL<4C%R1 zB7G*;w6?Y`xmRQs&5oGv*;)?H94VXEEuHNfC59QR?{2Yq3()!Q5t}~-Mm$4<{MRB( zHcDiB6N}wU?}`!iXyE>IX^)h9MfFwI+mX@AJ0=4vlCq@)awI=Z=lNi1VT3MPwH$?mt84ev}5+Uj#PTsF75te3MsckH?0iz?|AO^(uNZO-OK zikJk}SrTn_K^SBANKtLGNizs_Q}beH4$K=E{j*3j?LEm%DbM~E$-`-J=Gb#pHzBRN zYA6oT$7yXmnThjXdtE=wX4Q45GatW1NN&m9&zUZUGbi*D^R5#oFk;>yaYBDFFIAjy zwU{?poN$epcfB}afS5N#oN%p}cY`=#pqO`~XwADx%o{4^rHOe~G4EzEZ5(mXua*^Ut<)MFTbEQ`i0jbfn zM$;K+O!&5clGZ;;rAgfx8LT+qE3@%}@uJw<_&0+#A*R58?SAI9lrfI+HkijtukNtb zVlNHm3ZxPnERmQW7Giaj9SJ?*>S;wf2VIOYupL=2mRVTqN8AmsT{G;)O583>XcMFS z#~R7=An!uGJ|yoE0{`fUdL?`)WOxvC$4zmhJ6lldzWVj+u%#dsF(74fUKz<_)iRRX z6xqhdv`1b@!RUf)2mO;ARW702++s_tE-w%4E6oV(EzO{@KL@=pDX{%s+LQRnyfUdw z|H@OZd|wJn5;Eb0(uJN$s@pr*aLGaTA!@#bMrS^D$~a2kw+=@9)`96W&K9hZQ~Ywu z2045KUPF)j6Rd49p+tXzE5%}u3Dx+oB>SvEzuXq%K`zt=83rH8QcDRogpe+BL5SZ8 zQPR(V^aB4WvQO>~iFn;=bi_+)he}BERMT1-T?bZ=^L)nhuuuQY8yVUmYpIX>MzN___eDfUgd^ zg#9kTpB(5WAh6ht6h2s5)Ka2$ij+(r!?_DF+(a=9j$-I$4Y-8A zTog-B+6zdMt*ATW65O9v4RexxzV~?qG?m7`U=a!}f#>j}A~~xNqYO;NFN@?3F`iF8 zqnU9aStXUIFEROxkSUy+7QgnR@|~{>;eoZU3phkHY*y(SZrJ4SVUhM>>G1v}vX6bG z+$!xuCeJ?jma}PB=SSh2I{IFBNncmOwtd@Xht2F3bQ94{M3&K-mVLJWMbyv_`CT*s)Ob_h&TaZl|;l)^Z9G zl5B}JO-(^@QASW$lwtEP8ocv0Msp zF=Kh&5t{14Z^39Th=I&SvIWcoy}7aaPcb_dZJVney&mDyxfD#-a&iaQhBL_p?MG-8 z?z>la&xv%yR)Gyb>qzlM>M1@jn0OxHRp$|2-eJAQ0PTR!`92K#tY75buv$raZC{T^ zUfU;%Yw&sddCzxUozq`mRsGI}Z;Z*zkX!FypL%hgrzY_IkAL+UJakNULGkkUb{#yC zeB;<>k)`rkYfN(b#OKOa)Q7$?#&y2(>gxvI^sh-p3&`R(-u-CX*T;VStLM=B9xZxB zsedOB+|u$}Qri8Qh2_iZ-~ZY;WZbi^^FKE`Fj0=kNewy z_q(~Om4eom|(5@Aqr? z`1<2j-|DnmuiOk=G-Mqk$8zISHzf`pJSZzn!c0z$yX!l>oa+`>*B=X=_1{ok|D)%S zT>rD@Fg-!FVz==8gb1=n=WRV?Quj;8XoUZmt4~XqeXj;?lP>%XZ>T?3(^!9ugv*YJ zy6`*jpE|7*&$S->NmlO(9+JuN;9;4Z*w8AUZI$bflha6i9v<%E|Cc8$gUxZN3p`F8 z@>@Zuz0J7n)A%o)P7Qlb%7={Ve}MD-8tzFi`}n$0dbkg2HiZ)~2=rlN>0t2!?0A<> zrzO$BcUniwyK8WdkwELU0-I9<(KV(0zCq_r`;D2oj(v0;xKNywPJNrl1rw^{q{u6?I@J)^XjDcW~mFXVj6Gk_MV1IxUgL0&!)fFbx9gop7$ zc8MN~*Yl@LvEAjh>pV$bCCOveu;1pjF;6*tyPxzTr{V;DQLbe{zgI(9JzJ|(larz` z81D_AASZ%g@A!r!FO?yNM1G@RXBt-?Fne8zhzu8lO0c^Z*dd?fl#_CGK&O!3rQcG! zR0m%6l3%3XdoA>O9`*(Yco7ECtG$DN(qA@vEzS*tyt7}YEC$w5_St#02M2gJ+~wWW z*>!Vpl-E3Po#vN&5KJ{NG53Unk~VTa=2S{ zknvjP_w_;wuGp1rW=L83&6D9xofVFe&ai*f2E(!?>x{)Y|2A)EI88zWcS?G7{V$gJ zf6AVTUizzz*jnEdZ|BFnogephe!^R`}%_@qxE_}baX-o0(-~Ct2y)$#> z%sFSyoH=vm+>dy}_LmHSZ>H)ig*VSnZPoW*k)i0k6RKtiWyT-9w=^7DTeU%OfBpDf z&RXR%@hUp5Hp9D_PEz8yr_XQ?rz?6?aP}-k$B)xBBG%c>m7Y{2*T&**M zE1%EJ%c!nx34SXqJ}r1o3ogT@W5Tf0!h~ajDfqEg`LPiEi?H~Z;Q0%CIq`+y;?#Jw zo%mXC4KU;7-(L$J4d~xrFd&N&L!tt&rr>DG@Q$Xz5tN}A!CtyhI7ib?9HS}2p+PYm zBdFzZhGR6vYfGxZ((r))un_Lk&E&`hmIod<=MWdR=fOD>^6NBq)PHdBS{4*2C5FgUtddsKHdI2FsX- zlqmjvnd@DEd6TOPf>9MkY!+eRRI%)flFK5 zV*Ivx*{Xut*;I|KF4*XqLc5VU^JxsY#T;-=54RZ4D+7p^2`!d}V_5gT=-W15n%`8b zMni4qTP{3^$*No zDix6e)}%?~xHG?Qjcf{LQhPMX3fib$M{MTcT-p&$u%1W``G_3VI8`Q+55ejYjFB=t zlpMI=YxvuG?teA4V+6k>g!F0>#P^Eq*(`f}P@AtTXa7)fSqOeDnDQ<&l?#3$*mcl5 zFns8;;EMVBvS2mp(dS!XOM$83v;eTG(?Y{BfK?q6tmy331uu338xzg`%fi1e3O@9? zD6m;&lR$E+F*leu)NyN9Dp4Q{Lxa*o&rtXLCns=EQE$AWGtJ3=inf#&wQ1hpKNYlnO(#8Z9|Od)2Q% zaX?n0`FdHo%+D3cKBn1RD4n}LeTtIGpV!l9#pwBl;^%7$o_?arWzPlJw+ib>*IB zq5V{>dcjI{Z2se#Y6BNg*ZscAvBmL8vk*R4X8fTY4ep<2bIxsYQ?VN3ualdK0&V{K zNGX7l>+ez#OpH_v6BE3jp12dsB6u%7kxB!-@I(`8(Pq__mQc#fHD0}3*+TAZhgP{F zgNxMr*UKj=eUaGUevV8i=OULPv6=XW-AHC(3`>049oHi zE-u5J`}Flr@UtSL3<3_ts&Qjy2y9i*%c}&c^9DHGR!9Ka-njx%z@mgDn?e(7f^8Y; z!Pbm)>&=$CEDu{|T5>FgM|6+)A9-=g>M0{FBQ2XBl^(5oblo&z+Kxx}KKhqOzj*ZW zql2d1Hf_?h=ceUNE16b5jZ7Qq1mOGAtV#^=w$&?1q>g**c?CKaS>v(>rdPIY3x$R!02iP_X&BoayKMZ9L|gN_&{`5>U*e~>Gg1>5?V zk_?2^&$H40e~|RV(MRdsjRTBW+v+vuq-NeAN+CX4)Q06_MCo9Mj*q=Z1l!kYJ$`M( z9!!9Ilw>7_*Na$laiTlz*`ZE@NSgi8A_@6pMDl?@RwM@*Z{P=l1WQSb7fr7GV~6#k z>c<+46G4>{k(~m;a*s{H*xd6|%u-gzjU)>Kv7z@>O(rSJ{t(G>>D#VqGN7CL#IvK~ zI#IZLWe)9rPtE+@5TMbKI?LuMN`f|neY6<^BdBvbGe^hih(og3C3hh6QT_Dg?kMYx zPT!QadS=+M2~9Fd+wFZxmh`3_+XHrqCYu_AJ)8#?P_BErO6^omT-bT(N7dc1d<1+9L3r2e1Nm1{Hw>}>n8tK8X+ z@^v8W5-(9Frn;J1o_PX>u0r3YTe`e+0ueVZCAyuSAO~S(V z7mFmzUm_Bx&A(72+5S?Ijyd2yT4rbtRto$FidLvs5nMXS?lzGK)xu4SJPS$%MXCq0hEX0jVd zF4msOt|NAMXyy)mL=Mn^M+$Rm{Iyhl%Dvkylq=$}ghW`0(!+ zEhKwoPWXXCi)dKyy4MW2jwn<`kZ6;^D|0|jh#eW5VitK~FETYn)kc1Uc8q$TYl}f?NqWz`yr5I4v1){<2 zzDRGf$Rw58vOx4An~f|&uWGH=#PHBI^lDqw)u)fN59Uu#_Q6qSW9&1=D^aGruPE7v zy+=o6%SCs{HY|BX#+D|wG^4_CEBABz+~3+m4Y3aJHE^>QPps`njV&@znX@0@XjPW!Ujvu z6IQV6!&>{fKc;zN5wDD$v~c)>7q%ke1wl23%nV)79?Tco6N-1LeLBxzCzXkOxoqum zDm!Qm^;Yi!EnR1D_`rJwZYd5LkyE~Qa7Ce9W<%kS3DsDz5I&b>+>B5qhAEmEdI^tr zW`=6Be<2@MLQRu^1Kh2SpT36Gq3ua=O@0NNt% zswN~SMHymD#p+9hC+j+dZkA~?d*I_3mg<6&aC1{>=(5`T0&f zL&1gsOzLqB^;MYQ6>IVoO5ymzPKKP9!wg(`69;z<9L-%IXg6b<0#vj{_7$MtzzLU{ z;e0ECGV0e+VuxWU0|9MZXD5_0knwnF3Wb*%N>y3lL3`&O$O?ZRnNf&f3N^+k#-Lg|AK9f5eR#C_Ww&It~a)Tri)<5c>9KSQO1d@F^gd78r0{ET85>=S_L z&twVwv2>(ZEmanYr=D{42E|`db9u+?8q42jfov3%*{xDdus6?lP>J$w zR1*0wpnrTjrSbV4)HT55Z=<$9lRx{pFQ{!7+2wDiw%ug+t!?zyFX*l9v_<^{qXzw7 zQTLfSvrHKM?I8I~by!WarNiHJGKA)*Ylp`k-|u`9M0@+CUDDJwa1%FiShW zewvaU(#{SY*(o*Px53yeB6hYSA9}_l9kBJ?MGi>KAh1~q*@7g5uI^29hd56&i}x8U zp8pIy8h!I*y#3b~@CgGRIazIpv_ zijN@tajAu$Ej40yc@M-XjJO&QhfxjOk4xQWvxaB=a`&k{PQ!6!Py|cwXE0ZB;)p7v z!SdGApp8AW_v(W7Gw+5IS}qM^HpN71TChQf#si??>5w_h;5y?mjo9toKh7H!Rq4Jl zZ(MTc4vip(wn@96%Ny)urzm!uVn*PqeVjoty$wNsySH?((+qY(X7JMygM&&9#cUl! zXW3FVOPjJQi{d{l2-%yZL^;7CdeUg=faguzKpFQtWX_w~!m3Dg$QYq;9 z5W4I6EBx4xP0}uV7T=5(yN*AEHaw0{v$U%tiw~i;L&qOREgm0XzuRSR=364Le~G{z z)nJ?X4^Zm_lo|p47z>SP5h`ds&d2m}S=!4X~dF~+QtDdC%r&#*NIQVX#($pkq z74zyRq5xoMV+=ZnCZcL7VEq8;hm-zEn%c|wJ3NfHLOEt;f_B&ka`KrgWh@hCHr7cF0GWFPCZTS3nE+vjy+R*mu)I3WWN}yZ)4Bm4x`5G> z&*0zH1Vq}rI);oe*Nveg%zG=WcbGevN0!5xEn|S-*E%AI{8vh&nH*yf^hjl6VC4*R z0v@P;?z?pdMe|t%m8mp#e`y&`+$>%{)ybBvmBl#`#nf8aieOF);)jTWAub9BmW8Sj zZ(xT^cE~|cx``HVY2s#CTUv}4;ZdLz*Q7i__H(n`C*}|951;o#asJflccqUPUet(Icu zSZQ#>vB_K%LjBdKFHJybhxE{t1J_=QykgoJ;J#&TS#T?DiZd1icOmMkJ-nT=Afg6W zT@VRHjY24DL{})PD+2yHB1z$bP+a&X%@1mO&eCkX+T|JZT*T$kn%H5$U}<~K8-)Wx zgiWU=T$mtDcQX++4h6hn!n^SX88SF+^R9OXPgDFJW!b@|RuCcc(lEX>qOhGt{ z#VRsUYwk$!f$$C;;uQLQS%Hj=CVPKYWAChS-HnKG1RcXQb~{Z??&3{jO6_~n*^^ME zlR`_4rB9tbdI$|X-GBg~;-ahN2>Voa+;DqL)%S`qOB2jT}sNhFewG`7f54HnKamI;&2 z0vzJ3o#C5wXj@aZ>%NZYrtHA~u&KTWovy@iMw#sKS4n4J`>JMjkO-9IBcLZot=e|Q z-I2x5rdH-vCOC1hje${Gx5>&5GA~q+O~IlH@>=~StADtP<~6C^L>s=wdwvRD)=`9 z|Lh9h3-^@N_P7~yYFA@tmO$!V7iSkR54ofkHe|oRRoM{jjoeP*#M1ZNe!;(A2*s;y zN*tOkf6WT@QF|ZWFBm`8;8{hidQIJa;p7G(xIr+!duf9P6{q$?B?_p-)+VEw!S;F% zD>%)D*V+w2bMwmD+E)-hZWvX8YsiLMDsU6YqTm0heN||) z!@U)}N2uK-G-Oop2ZY+!goddV{OdyPW}!i2xItssZ7Ccdw?RluT#UipI0zh}?O5)`a!V0A&uQnn2(w+Myhy37Kq|mx)?cjNimPM`L82QbBaKbQ?U)SZ zy0Lp%AbcopGqI2MNmG8$C#PW`?HW+KKS7Uqq7N5th;!5gGli;C6WW^_e;~5bBm*XlQuli>DJ{oH(sw^lpN4# zQo~S1b)nLb2Ul0RUB%Zr-y@r(LVG27%^O?4iFF#FUKl%9)Z(vu!UNCF71h4}d7>Kc zw~J(t<;C^8Imn@_TK=YPW~jF}~fd z9su5O(*8ZhLD@9Hx$A2iM=Z2C_#KZf>s+ zd>0xP{->|uuFCLN>NTwTHdIdxe5Y0Y z5I}Mk4So7*lL3yADiBEu=s)i&^U`jGJ<)6uUm&)xs!`Tp{g21`Kbpto3`}GmOb!c#iyDnc;^(krS)~+nY@2U9k(aL<$k~t5` zYp~p$7aAMB1^!kFHkx~&#*?7V&xP(#x1nP=szvLAQ8$eDyfQx0?_7cCFAzfs+To-? z1YMTLGv^)FYK<|7&PVDp=K%`AUlc>4c7$I-Bt6&GUI1n9rl&^;whclr!hL5cqrYCK;q+W_p~L~r*y)c@y{1oeJtwv z`Jy)p@asx&J8W%Weo+HFhS!$N8n|4R3i%bXL=dKi&jgDJmkHNUNzOsel`_`lYS~X@ z;_$DMNn!13x!#eI#=j@~SIdcsro81c;T2up3Yk>;SIXoiZo!IktAXs$YFRyEtt*p* znXmIi4jy@(N01#4QivK{uSkxsfwf2~{2F+Rkq|++qYj$5jmZd0oUBk5NmNT#N))E19@) z5XhpsT{24}=$bF&Z3swlY3N14fDZ16(#Ztek->Zo{4`DZeD$R%Y3&|CXg-BN`nTv+ zC&16yCV#T$8OqL@nY`@-XyvoaqNXe^<$fsr%bLOgM3GO}1 z2RYX+$W8Y~)dVNG*Ezg~h-HRdUgv=6Nj$B_e6Q9AdU_oPS7@Gu0YgW&9X4z;PBGR#t zuA}sUZqXQS>xUCA$)fM~wvnJRzk^rzwRvP2YSGqHyl zVjUw3%ZwM<1RT(8c_nI->m5}^6JY$Yr|qAhB=CQm0IuChWcZY;fetVrB!^*^UETO0 zkM$FH_XPgs3H*i$7!48~!U7Eg0Tz!oa1!zDkGhM=W6q;_FcxUq(N)VRM5w=ph5END zTRW@QvufO1%npwT^Z~e&7bak+*C&LBnU%NxjoW}4WeJL?6DEWcQDQHw;*B1Nu@7`B zYE=$9d?e!ZVck+&)^NYu{rIYTV)?C%9>qHz3Z%qLflj>hH8G za&>IvZZndGl2>LLq0oxXNPSi@i;As4RBWZRvZ)+ux}s@K*kH*oaw}ySgOf_yUNlL> z9#4q0Hry*U(cDTpqRCnauFsl*F~MRksl+{c%}q`}mEMNM$l>cK5Spd8S}VZJ+a0LV z%G+CC1mSO@Y(v@aXEFae#Qae}0*tMKHKIT6nr$zVZ2p(%P(|~9 z7sVs5A&z(d&)UcJFbl4=*WG@q)FPB}r%JhLi#lIkVJ|qU%!3Ivcf^xypzuaXzHn68 zN|}3OrTfI%LAh@)MC_4ffO;HvxXu!Mi;t~{Jarg|mQ$s~5eH^e>dao)?@<248d zBmj$suR3A7E3hRqNcXc91ETi19TlAO3Ze**rbt;Gy(43x6sc~DBu(sFrcr`iB9`3+ zOVE)-vhkXOP?AOgLcjZM`?DBPRz6xi;>MCz}n>R8D2<&~HN0RnzE&SUf#{@_* zE;~$0)d_l19q9~Bv&>)OjcY&x_^aXjnl^@G%8cKnJ~uW%=SS|pfE#)VrdR?k%UyDW zCIs%&_>F=_Yi(FS@O=ZI%ZZMuBT%WHgi?nLE|aGFosb=DQ^dI*kcM;hEXXQVhYV_L zB-F|nL)O${wmzc5*D6cBQ4E`bC7r&yaw9CwbBo!|uJ!4q$&NYO8b@97iG_fG)_t+^ zhQaVg5CmR`E;7QsC86eUoOV$%db#`eFLBwO&8$hQhK`hA4i-i;Uw%v+3S|Ab68$;x_7;FZ~AX^h$3%b z^kty~fiWxJz)Y@NhV_)NTxH>CmM6l3)Fiv!!I~UcUdP>Ot_PiCn0Xp4DzEWlSYlM- zkz2e1d7nMs5XfF;v!eK0MD|RsX>V_@94m58 zKG6Bch^>2p5zo-5z)gtC-6C2}EH$Cs*4b{;+Q$RH>x!XK03g{v7gjj_@K{lO$@1J% zg?eB1d@yH=0svA3+hIRlC1Ww&*h`Up}9OFcx0JY7(X8cbn-`u$kCQwK;E{r z0D0Rqy7nwRdzOZWfr?MQq3Qq-^2ygU894_((NBJ2>CP8u)dlxI){XDY5L)YVHC$GA zul0k*)#pySJU*Als>PjNv$-{!PZ2RGmIs!1g7t{j9ZnJ5%hq4_hwn+Aly857uQU~JXRT5+s~xoKD~apbCej)ni4PO8^tLJV*WMa zlteMVuQ(-1%qX8Kyf~xlH3cCeg!*_*{hQ>T`$2 zJH_!P5dlrS8^!S)Udwv0+kPru{a>s9eO&wFT=c%|e^15&)Z@L8y-y~25L!NCxv*Ox zI%=rT8`~%wqetT}AsGWAr=Am)u!l*)V?^{b&(1|e)Z+fhova@vx_iH@iQwR+oWdXI|+#f!6*TX{KY(uxc#3}(dG!#;K16k-F$ zE*eZn;v%+IB5~VSGPVDThMt1qLmCNNb}=v>z}cv0Ra~4FmM|5%T@S-NGUr@bsAfntMf^~Q9Ca7f`p zh1m}FzvQTTftDHDtckv|vIZ|nZ+L^GvuL4%-M|!Do5<&6>8eLo7p^|C`qr{K0wWQM z#!03RJG=P0I#_XS!mpPRf3IUv4}3s?^9MecFyM0u?&itX;4AXb&GJy69KIE=q1k~1 zb4N@lF_7RIX0peGY61h%+Z^01cf@#*T;-Et_K|#LU4?BSq>J1@dR;~~cqRs4g0E!O z%W5B1z6<3UT3N}8jJ{2FUNt&5Ycjqyz}GD}OW*?+947FM3qDDxcZC1NzUZ-X|60Wj zU(HpQg_EVC$&)7|(bpc&ZD0Mh?F>KWn%NlPB_d~A>TCa@&j6`}FH%@NmYRl?X{{G zhHnLY@6rz+TNSr0Qw5_i%hvxiv};ggsL-`8ZRn5IL`aDY zt&Qw_H~iZ}2NE%gHgwiDM&V~4q z@T4t;4Y>bvG~oWPkljTVvAf7(sko^S?rc$$!*#P+Dng$B$AVPcT8K-bD~ksgK&BTQ zq32!r;B1|Podrq}(1-DGvil%&;5)9Se1EBW4sqU6R?U`na(As2=af!(20o#?0Umod z_^|F;Y$x#iw1%s}L2u&EI{aQ6_E&nW(;8S0{9Wn9VU%^{?h~&my_PoWCN6Ch#Vz=I zbN%Meu5nIwl&pUFwRb-|cR8u=pfUG8_SB*^8{cm^{$s*`k$-q1^Tk(cgCCyjJ!)c> zbMy8CXU+{9cVAAS%lGbQZD+rWicRR#KXv9aS@wk+JkqYiA0PjIz=%6%W|z5M-ndz4 z`rB8@V;`82^P=n3U7sbTOe|Qp>!Z`U=%HgD$lTEV_sT2Duk`qP_0?D1iQ9(Xz3G>K zuU+-Gx%MXX}RVP-SO!qE^U-qe7rvB)Su0O$_uWiQf&aK|~`V&=$ zblSyQZaVHgY{$s4-1wBn#L=Ti*^ZOrT+UYPmhnfthKl4P-uNor5qx8qw}@n0RM?}j9oq)b6wYV+_Gb9I9kz# zKlSSCkJU8SA0x+C9izJN+iDc4L zeFDGtgk{h^Ib{j3YvXi*OwRrs|0L(W{m1zSJMMyjsi5T2KKW z@4Q_9u_xL`PB-Hj?<1dqAg9IWt3U0T=xfHWQTy$${igan4{9$@YQIB#5dLY;2v+bl ztoM0F`Mim!80&-JI3Ku6^q72}pJayZUY}j(>E%;;dCVI2JA78|nYzPI`;hAK4Zd;* zy#|PuQR=+p#|^+KY6!;r!rzdSLC|+%cP}54Ay^`3*iUQo#uG-LD-m(%r5GjH-v{iF zPx8?7vadl`L)xS>DSdnm%YEciscp~-pJ%!+IKmgc9^3oi;7|D0daTd1dz7!_6-Hsh zRz|&Lk^kff-)`rAsZt;TWma@-KfdESqetrp0&o zLgQJg9EelWeD$B27XKuBoKt=5>ylW%|4Co(S-#%0eZ8OZ)l@!P=TG+;2m7b{Qj){{ z{8N3VJd2Ni%m?kB;VVywuJKP|%}+#{r=j@~AOAROo{46C&Dm$`R2{HD_q~_Vy>7aX v*Bz;hI^v(^t9!!7>yK0#j`$z*)%BU- Date: Sun, 21 Aug 2022 00:13:22 -0400 Subject: [PATCH 39/54] narrow purchase screen #118 --- display.asm | 31 +++++++++-------- scorch.asm | 47 +++++-------------------- scorch.xex | Bin 50899 -> 50390 bytes textproc.asm | 93 +++++++++++++++++++++----------------------------- variables.asm | 14 +++++--- weapons.asm | 8 ++--- 6 files changed, 76 insertions(+), 117 deletions(-) diff --git a/display.asm b/display.asm index bd6dfc2..7d4d0ab 100644 --- a/display.asm +++ b/display.asm @@ -20,10 +20,11 @@ OptionsHere OptionsScreenEnd ;----------------------------------------------- ListOfWeapons - :36 dta d" " + ; 0123456789012345678901234567890123456789 + :36 dta d" " ListOfWeapons1End ListOfDefensiveWeapons - :16 dta d" " + :16 dta d" " ListOfDefensiveWeaponsEnd ;constant useful when clearing NameScreen dta d" Enter names of players " @@ -49,7 +50,7 @@ textbuffer dta d"Energy: Angle: Force: " dta d"Round: Wind: " textbuffer2 - dta d"Player: Cash: 0 " ; ZERO TO MAKE YOU RICHER ON THE SCREEN + dta d"Player: Cash: 0" ; ZERO TO MAKE YOU RICHER ON THE SCREEN ; DLs fragments (modified by game code) ; all Purchase DL :) @@ -115,21 +116,21 @@ MoreDown dta 93,93,93 dta d" " WeaponsDescription - dta d" " + ; 0123456789012345678901234567890123456789 dta d"Tab"* - dta d" - Defensive/Offensive weapon " + dta d ": Defensive/Offensive weapon " PurchaseDescription - dta d" " + ; 0123456789012345678901234567890123456789 dta d"Space"* - dta d" - Purchase " - dta d"Return"* - dta d" - Finish " + dta d": Purchase " + dta d"Return"* + dta d": Finish" ActivateDescription - dta d" " + ; 0123456789012345678901234567890123456789 dta d"Space"* - dta d" - Activate " - dta d"Return"* - dta d" - Finish " + dta d": Activate " + dta d"Return"* + dta d": Finish" EmptyLine dta d" " ;--------------------------------------------------- @@ -138,9 +139,9 @@ OptionsTitle DifficultyTitle dta d" difficulty "* PurchaseTitle - dta d" weapons purchase " + dta d"purchase weapons" InventoryTitle - dta d" weapons activate "* + dta d"activate weapons"* GameOverTitle dta d" game over "* GameOverTitle2 diff --git a/scorch.asm b/scorch.asm index b2ecc90..d59e44a 100644 --- a/scorch.asm +++ b/scorch.asm @@ -40,7 +40,6 @@ .endm icl 'definitions.asm' -; icl 'artwork/sfx/rmt_feat.asm' .zpvar xdraw .word = $64 ;variable X for plot @@ -141,29 +140,13 @@ .zpvar DifficultyLevel .byte .zpvar goleft .byte .zpvar OffsetDL1 .byte - - - - displayposition = modify + .zpvar L1 .byte - - ;* RMT ZeroPage addresses + ;* RMT ZeroPage addresses in artwork/sfx/rmtplayr.a65 .zpvar RMT_Zero_Page_V .byte -; .zpvar p_tis .word -; .zpvar p_trackslbstable .word -; .zpvar p_trackshbstable .word -; .zpvar p_song .word -; .zpvar ns .word -; .zpvar nr .word -; .zpvar nt .word -; .zpvar reg1 .byte -; .zpvar reg2 .byte -; .zpvar reg3 .byte -; .zpvar tmp .byte -; IFT FEAT_COMMAND2 -; .zpvar frqaddcmd2 .byte -; EIF -; p_instrstable = p_tis + + displayposition = modify + ;------------------------------- @@ -172,6 +155,8 @@ ;splash screen and musix icl 'artwork/Scorch50.asm' + + ;Game loading address ORG $3000 WeaponFont @@ -1057,7 +1042,8 @@ setBmissile deletePtr = temp ; clean variables - lda #0 + lda #0 + sta escFlag tay mwa #variablesStart deletePtr @ tya @@ -1093,9 +1079,6 @@ SetunPlots ;setting up P/M graphics lda #>pmgraph sta pmbase -; lda dmactls -; ora #$38 ; Players and Missiles single lined -; sta dmactls lda #$03 ; P/M on sta GRACTL jsr SetPMWidth @@ -1114,18 +1097,6 @@ MakeTanksVisible mva #1 CurrentRoundNr ;we start from round 1 mva #6 NTSCcounter -; ; RMT INIT -; lda #$f0 ;initial value -; sta RMTSFXVOLUME ;sfx note volume * 16 (0,16,32,...,240) -; -; lda #$ff ;initial value -; sta sfx_effect -; -; lda #0 -; jsr RmtSongSelect -; -; VMAIN VBLinterrupt,7 ;jsr SetVBL - rts .endp ;-------------------------------------------------- diff --git a/scorch.xex b/scorch.xex index 0521340a161a86d4b602332f5a49a886f607c1a2..7e2fcd9e0fbeb9969fd4b8470e338f90089efe7b 100644 GIT binary patch delta 15935 zcma)j31Ae((*GX02uBtXSU_NafCLbNphh7O4k3`0%f}N1b&*^PB;nd{2@A-C5Hh%7 ze4hl}=k&l#G9il_Jf2Y(;t|M(;~NoBe1ZWgwvM z>h9{Q>fSFo^XaW-pLv{V{Frw_$9>-R9mlj>W7mH3m#23(=pW0H$tMzKd>R*TAD_cp zX7ul#laMfeV1i+MV#2sN@ii}LOke$D8aJ1pK4Z7>IsVFwm>1qXf1$e}IwdtFbGais zC2Ck|`&peHN^6 zWY1smhid+lkb(RMGozU$P3?nZm!JRsYQwMRuhwq3UVC2q`O+0WWY(DQeF;mJjNcv4 zPnq>_zoFxnO#YOXD@Mhdd?t&@WQsMJ#w{9W7+*2kw8=8vV&TcGDZKCL5dOzm>)Pie zjN3GBNy6mI3DalvK+OYu!PCQrgpJ!U-oR`yHT@a?7Oxn%VJ2pFl420X6!sNzEx!p5 zl^5m}&gXx6I>EI*NmwFIQNo#d7nyE}iiugD#9Us`)F%3LYy&fRQLExN%qLUCP$kUM ziBwx|FvnAx>XwrTwgO# zy#ZwzAfE?vpsW3YvcPjd@Ej35UkFOQ#}!T#v!^{#Uhv!!6r;yTm@88}g*iEyIkGOO%Oy%Ada(mZg@QW@9J&RiI~b46vbmm^EHCl%0-IIhKOm@Pn|Tt(>l?r32bX@H|9h%b3EXR!mDqBSg;0qDn9`175DST#+~CWR>l(%FS8K>uaQyY!((f z4E$|{$5oiTRe9Ve zCT}2*`_$yE&f`8ad5`3AhfQ{ItYWB%RZUnWkBXjb(eu9O`Bn5hy4#bzyIM0_&fAp* z>P2Ylbg}X(>r@0bduM^O&Z(N}vZd^RtcFO=z%unmu$v+)AzZ4g+~N9(?B{ekGoD0d z`jyE_EO*r;hA0-#UV<-~K%n=Ca>wI?No!CdxbTyTnd_<2)!c{6GGQTN5ih{BskZ#4 z7&$EeF!t~EpcUl*@oev&-{qBF$@}4lAGoe+zE!PzGrc%Hfm(vDs`pABf92Uh#=d;7 z=lTqLZVEWx#D$);dS8!s4CG#qcbhNmjQ8%04?L)b0v1r!NJRr&VYr>~eCBgcCiW9z z%}i8@at906Tms4^>9&_HiiSK7FVxqBsn_kIflie0%2MBTz?$E4oO_&SctN|AYq?SH z;rUz7^>HQ3m8;Ov0=aUfug;qqETy32{#sfI3nZ*A9ruo=|4y7C8y_{Kn;}B|C#{tP<~CQTUmcGTRkDI zRIBYw4_=!);J*C@YPff^Nj;&o6RkM{1rMAzv?EMbTi8J%iCK|k`%4n@4WBlzZxmRa zos|b+g6T9=Dycov^KYYQnTu1`PP*$ib zQ`)lonD_;@iL)BZ9h=J`dVROXvTK$S1oUo32oeZ3U?$FzvJ!PYH*Temt;a@?&Sp*8 zoho`C5?M)U#|m-Mk%mzAh|hHBC=>lGEaxmG3iO68puPXEG+h4+kq%1xW+ITpURS0| zCslDD6Dh#?iQX-DfJjFh4BSBiu{-Mx{;bDVGJt!Oij+|9Bf^h*p^xih!d7|xgbjEP z5cY`oAYqSEsUQk;2x;0GtRoRr+qk4=Uu zQqcIWDyx+2n8YT#O?7uynV1p$*%tUU7NF}rM2o(}3e_ySD? zU+BDXVdf2^)jf4i@vhtt1sb@;bd1__lL^e(Bx0+d{s*}EKfuF-@O_hrliu#4MC^KK?w>,`0} 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 delta 15825 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 V_X;JsvgYR<|9SJbIMY|-{vUXBd`$oV diff --git a/textproc.asm b/textproc.asm index caf52c8..8ccf2a9 100644 --- a/textproc.asm +++ b/textproc.asm @@ -278,10 +278,7 @@ AfterManualPurchase VDLI DLIinterruptText ; jsr SetDLI for text (purchase) screen jsr PMoutofScreen mwa #PurchaseDL dlptrs -; lda dmactls -; and #$fc -; ora #$02 ; normal screen width - lda #%00110010 ; normal screen width, DL on, P/M off + lda #@dmactl(narrow|dma) ; narro screen width, DL on, P/M off sta dmactls lda #song_supermarket @@ -328,7 +325,7 @@ AfterPurchase sta decimal lda moneyH,x sta decimal+1 - mwa #textbuffer2+28 displayposition + mwa #textbuffer2+26 displayposition jsr displaydec5 ; in xbyte there is the address of the line that @@ -373,34 +370,34 @@ CreateList ; first parentheses and other special chars ; (it's easier this way) - ldy #22 - lda #08 ; "(" - STA (XBYTE),y - ldy #32 - lda #09 ; ")" - sta (xbyte),y - ldy #25 + ;ldy #22 + ;lda #08 ; "(" + ;STA (XBYTE),y + ;ldy #32 + ;lda #09 ; ")" + ;sta (xbyte),y + ldy #24 lda #15 ; "/" sta (xbyte),y - ldy #31 + ldy #30 lda #16 ; "0" sta (xbyte),y ;now number of units (shells) to be purchased - adw xbyte #23 displayposition ; 23 chars from the beginning of the line + adw xbyte #22 displayposition ; 23 chars from the beginning of the line lda WeaponUnits,x sta decimal jsr displaybyte ldx temp ;getting back index of the weapon ; and now price of the weapon - adw xbyte #26 displayposition ; 26 chars from the beginning of the line + adw xbyte #25 displayposition ; 26 chars from the beginning of the line lda WeaponPriceL,x sta decimal lda WeaponPriceH,x sta decimal+1 jsr displaydec5 - ldy #26 ; overwrite first digit (allways space - no digit :) ) + ldy #25 ; overwrite first digit (allways space - no digit :) ) lda #04 ; "$" sta (xbyte),y @@ -422,11 +419,11 @@ itIsInventory jeq noWeapon ; clear price area - ldy #22 ; beginning of the price area + ldy #21 ; beginning of the price area lda #0 @ sta (XBYTE),y iny - cpy #32+1 ; end of price + cpy #32 ; end of price bne @- notInventory @@ -502,7 +499,7 @@ DefenceList inc HowManyOnTheListDef ; If everything is copied then next line NextLineOfTheList - adw xbyte #40 + adw xbyte #32 TooLittleCash NoWeapon @@ -531,27 +528,20 @@ WeHaveOffset ; now we have to erase empty position of both lists. - ; Multiply number on list 1 by 40 and set address + ; Multiply number on list 1 by 32 and set address ; of the first erased char. ; (multiplying taken from book of Ruszczyc 'Assembler 6502' lda HowManyOnTheListOff - sta xbyte+1 ; multiplier (temporarily here, it will be erased anyway) - lda #$00 ; higher byte of the Result - sta xbyte ; lower byte of the Result - ldx #$08 -Rotate04 - lsr xbyte+1 - bcc DoNotAddX01 - clc - adc #40 -DoNotAddX01 - ror - ror xbyte - dex - bne Rotate04 - sta xbyte+1 - + sta xbyte ; multiplier (temporarily here, it will be erased anyway) + lda #$00 ; + sta xbyte+1 ; higher byte of the Result + ldx #$05 ; 2^5 +@ asl xbyte + rol xbyte+1 + dex + bne @- + ; add to the address of the list clc lda xbyte @@ -579,21 +569,14 @@ DoNotIncHigher1 ; Multiply number on list 1 by 40 and set address ; of the first erased char. lda HowManyOnTheListDef - sta xbyte+1 ; multiplier - lda #$00 ; higher byte of the Result - sta xbyte ; lower byte of the Result - ldx #$08 -Rotate05 - lsr xbyte+1 - bcc DoNotAddX02 - clc - adc #40 -DoNotAddX02 - ror - ror xbyte - dex - bne Rotate05 - sta xbyte+1 + sta xbyte ; multiplier (temporarily here, it will be erased anyway) + lda #$00 ; + sta xbyte+1 ; higher byte of the Result + ldx #$05 ; 2^5 +@ asl xbyte + rol xbyte+1 + dex + bne @- ; add to the address of the list clc @@ -957,7 +940,7 @@ DefActivationEnd EraseLoop tya ; lda #$00 sta (xbyte),y - adw xbyte #40 + adw xbyte #32 dex bpl EraseLoop @@ -970,7 +953,7 @@ EraseLoop ldx PositionOnTheList beq SelectList2 ; if there is 0 we add nothing AddLoop2 - adw xbyte #40 + adw xbyte #32 dex bne AddLoop2 SelectList2 @@ -992,7 +975,7 @@ CharToList1 ldx PositionOnTheList beq SelectList1 ; if there is 0 we add nothing AddLoop1 - adw xbyte #40 + adw xbyte #32 dex bne AddLoop1 SelectList1 @@ -1003,7 +986,7 @@ SelectList1 ldx OffsetDL1 beq SetWindowList1 ; if zero then add nothing LoopWindow1 - adw xbyte #40 + adw xbyte #32 dex bne LoopWindow1 SetWindowList1 diff --git a/variables.asm b/variables.asm index c9470c1..5ed36e3 100644 --- a/variables.asm +++ b/variables.asm @@ -10,6 +10,10 @@ ;===================================================== OneTimeZeroVariables OneTimeZeroVariablesCount = variablesToInitialize-OneTimeZeroVariables ; MAX 128 bytes ! + .if OneTimeZeroVariablesCount > 127 + .error "OneTimeZeroVariablesCount too large, ",OneTimeZeroVariablesCount + .endif + noMusic .by 0 ; 0 - play music, $ff - do not play music noSfx .by 0 ; 0 - play SFX, $ff - do not play SFX ;---------------------------------------------------- @@ -17,7 +21,7 @@ noSfx .by 0 ; 0 - play SFX, $ff - do not play SFX .by $00 ; labels line color GameOverColoursTable .BYTE $80,$40,$c4,$20,$c0,$e4 ;---------------------------------------------------- -TanksNames ; DO NOT ZERO ON RESTART GAME - ticket #24 +TanksNames ; DO NOT ZERO ON GAME RESTART - ticket #24 :6 dta d" " ;---------------------------------------------------- skilltable ; computer controlled players' skills (1-8), 0 - human (no cleaning, ticket #30) @@ -122,7 +126,7 @@ WeaponDepleted .DS 1 ; if 0 deactivate the weapon and switch to Baby Missile ; 20203.5 => 128 : <20203 : >20203 ;---------------------------------------------------- -L1 .DS 1 ; variable used in multiplications (by 10:) +;L1 .DS 1 ; variable used in multiplications (by 10:) ;gravity .DS 1 ;only the decimal part (1/10 = 25) ;---------------------------------------------------- @@ -162,8 +166,8 @@ WeaponRangeRight .DS 2 ;HowMuchToFall .ds 1 HeightRol .DS 1 ;digger -digstartx .DS 2 -digstarty .DS 2 +;digstartx .DS 2 +;digstarty .DS 2 diggery .DS 1 DigLong .DS 1 digtabxL .DS [8] @@ -204,7 +208,7 @@ FloatingAlt .DS 1 ; floating tank altitude xtraj00 .DS [5] ; 3 bytes of xtraj times 5. Lowest byte xtraj01 .DS [5] ; middle byte xtraj02 .DS [5] ; high byte -vx00 .DS [5] +;vx00 .DS [5] ; looks like it is not really used anywhere vx01 .DS [5] vx02 .DS [5] vx03 .DS [5] diff --git a/weapons.asm b/weapons.asm index 87831c6..56a0919 100644 --- a/weapons.asm +++ b/weapons.asm @@ -465,8 +465,8 @@ EndNurnedCheckLoop .endp ; ------------------------ .proc xdigger - mwa xdraw digstartx - mwa ydraw digstarty + ;mwa xdraw digstartx + ;mwa ydraw digstarty ldx diggery WriteToBranches lda xdraw @@ -2012,8 +2012,8 @@ MIRVcopyParameters sta xtraj01,x lda xtraj+2 sta xtraj02,x - lda vx - sta vx00,x + ;lda vx + ;sta vx00,x lda vx+1 sta vx01,x lda vx+2 From 132f2afd6798080709dafd1e5c54e645def5f8ec Mon Sep 17 00:00:00 2001 From: pkali Date: Sun, 21 Aug 2022 01:11:58 -0400 Subject: [PATCH 40/54] WIP: my hovercraft is full of eels --- artwork/talk.asm | 4 ++-- scorch.asm | 4 ++-- scorch.xex | Bin 50390 -> 50480 bytes textproc.asm | 10 +++++++--- weapons.asm | 23 +++++++++++++++++++++++ 5 files changed, 34 insertions(+), 7 deletions(-) diff --git a/artwork/talk.asm b/artwork/talk.asm index 6f950d1..ba3bfcf 100644 --- a/artwork/talk.asm +++ b/artwork/talk.asm @@ -127,7 +127,7 @@ OffensiveTextTableH NumberOfOffensiveTexts=54 NumberOfDeffensiveTexts=60 .endp -hoverFull dta d"MY HOVERCRAFT IS FULL OF EELS!" +hoverFull dta d"MY HOVERCRAFT IS FULL OF EELS!", $ff hoverFullEnd -hoverEmpty dta d"RUNNING OUT OF EELS" +hoverEmpty dta d"RUNNING OUT OF EELS", $ff hoverEmptyEnd \ No newline at end of file diff --git a/scorch.asm b/scorch.asm index d59e44a..3dac628 100644 --- a/scorch.asm +++ b/scorch.asm @@ -134,7 +134,7 @@ .zpvar HowToDraw .byte .zpvar gravity .byte .zpvar LineLength .word - .zpvar LineAddress4x4 .word + ;.zpvar LineAddress4x4 .word .zpvar tracerflag .byte .zpvar isInventory .byte .zpvar DifficultyLevel .byte @@ -146,7 +146,7 @@ .zpvar RMT_Zero_Page_V .byte displayposition = modify - + LineAddress4x4 = temp ;------------------------------- diff --git a/scorch.xex b/scorch.xex index 7e2fcd9e0fbeb9969fd4b8470e338f90089efe7b..d7825650540e665da25c4e250fc213985a48ff3e 100644 GIT binary patch delta 14107 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 Dpm4VR delta 13930 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 Date: Sun, 21 Aug 2022 11:35:18 +0200 Subject: [PATCH 41/54] Hovercraft works fine at all #52 --- grafproc.asm | 37 +++++++++++++++++++++++++++++++ scorch.xex | Bin 50480 -> 50486 bytes weapons.asm | 60 ++++++--------------------------------------------- 3 files changed, 43 insertions(+), 54 deletions(-) diff --git a/grafproc.asm b/grafproc.asm index d086ca3..d6ff1ec 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -963,6 +963,43 @@ ToHighToParachute rts .endp ;-------------------------------------------------- +.proc DrawTankEngine +; X - tank number +; +; this proc change xdraw, ydraw and temp! +;-------------------------------------------------- + ; one pixel under tank + clc + lda Ytankstable,x + adc #1 + sta ydraw + mva #0 ydraw+1 + lda XtankstableL,x + sta xdraw + lda XtankstableH,x + sta xdraw+1 + ; clear first pixel under tank + mva #0 color + jsr plot + inw xdraw + ; plot 6 random color pixels + mva #6 FloatingAlt ; sorry reuse! +@ lda Erase + eor #%00000001 + and random + and #%00000001 + sta color + jsr plot + inw xdraw + dec FloatingAlt + bne @- + ; clear last pixel under tank + mva #0 color + jsr plot + ldx TankNr + rts +.endp +;-------------------------------------------------- .proc TankFalls; ;-------------------------------------------------- lda #0 diff --git a/scorch.xex b/scorch.xex index d7825650540e665da25c4e250fc213985a48ff3e..5a3e8b5665f51bb435807722a24be86bae19c135 100644 GIT binary patch delta 13049 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 gNK^ffOKaKT31b*%QzqR delta 13107 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 Date: Sun, 21 Aug 2022 13:39:04 +0200 Subject: [PATCH 42/54] Small fixes and explosion range corrections --- display.asm | 8 ++++---- instrukcjaPL.txt | 6 +++--- scorch.xex | Bin 50486 -> 50488 bytes weapons.asm | 16 ++++++++-------- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/display.asm b/display.asm index 7d4d0ab..5fe33e8 100644 --- a/display.asm +++ b/display.asm @@ -123,14 +123,14 @@ PurchaseDescription ; 0123456789012345678901234567890123456789 dta d"Space"* dta d": Purchase " - dta d"Return"* - dta d": Finish" + dta d"Return"* + dta d": Finish " ActivateDescription ; 0123456789012345678901234567890123456789 dta d"Space"* dta d": Activate " - dta d"Return"* - dta d": Finish" + dta d"Return"* + dta d": Finish " EmptyLine dta d" " ;--------------------------------------------------- diff --git a/instrukcjaPL.txt b/instrukcjaPL.txt index ef3491e..f2c0d59 100644 --- a/instrukcjaPL.txt +++ b/instrukcjaPL.txt @@ -99,16 +99,16 @@ A oto wartości promienia rażenia (ExplosionRadius) dla poszczególnych broni: "Baby Missile" - 11 "Missile" - 17 "Baby Nuke" - 25 -"Nuke" - 31 +"Nuke" - 30 "LeapFrog" - 17 15 13 "Funky Bomb" - 21 11 (* 5) "MIRV" - 17 (* 5) -"Death's Head" - 31 (* 5) +"Death's Head" - 30 (* 5) "Napalm" - x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) "Hot Napalm" - x 80 (zasada taka jak w Napalm) "Baby Roller" - 11 "Roller" - 21 -"Heavy Roller" - 31 +"Heavy Roller" - 30 "Riot Charge" - 31 "Riot Blast" - 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) "Riot Bomb" - 17 diff --git a/scorch.xex b/scorch.xex index 5a3e8b5665f51bb435807722a24be86bae19c135..4e501abb99f35036b6f3923edf6c1e9ffb51dfb3 100644 GIT binary patch delta 14528 zcmbt*349bq_W#V}BtSAC$AAQyLj;61imbyC33nhP1QbCO9mzQ$35b&b0f$H`gd~j< zTI7(C?oPT%hYULr{qIH@$qEUXK(IMQf9fJaBpx^j=;8tYZ}lYM{O$ffpFc;s`_-#g zuU@@+^^VH_DGd5YVUXv=>5(Vm5Bh&6;FeCmpIb9M*f73;+c4dvpU>@_ zUaH^ACCo_I>$p8Lrf}D0tkrwC)rn?P%(x{}4#X{4GQMVXjKO0t8VrUQgJIlat}*ds z$AY+VdE=JEO}P>`Bk_Lj=*-?+Fm!1i7-o>tKY{k%B8ya0Xou7kWnuPlO95uR#ME1n(dG>TtpJ2alI8y9iE34M*FT zJq2esGhY7eDY!JGKf6#Q%cTj54gkEGymK@Xa|G{9fs&X>Us_4bX(cg7a8Mc=7Ns#$ zusjB~0l;fROps;U1o!W}KeBC(F-t8EPPoX50l=CBr7PhvDNEu6C6vyqA|5Su2Da8v z;S%KwX9lVNhOl&)p9@T2s4jw%>G~Q|yPU~)FqLbWQ&X6SUJJ-_i4uWPth_GoNh-%-f?r?XVEnbl;OQRt zR)euVR<|gdR*w{1BL%DbXTI?;?~DS6Kl4gYFg_{M;uteUUgEvVlgtV)Bd9@^kjYrD z&ly_=9y{es@311whY7Ybxy!s>-XG1>=gFD)U@X(z?T-0+so~6_i~*;NdaGs0Bqln6 zIXhcA<=0!W+>{C^vKJq^Xo;Qf3ig`QX7HyKM{6Wm-*Q896iz(-WR{? z(*{9?#BNIRq9`k&gm*_A^ZnI%&G(AuDhn!ttO?GXfj6*}otMc}u9UJ#CT*d@FlX!* zWRtg0umzK3uT!w;NQ$|W_bs70n4|(DjT|Q@*bSV2b~i`RMrOCBT$DR6?=z_FAt<-( z+9SL6K{>v+9Gp}!Q4&Nkpi%`Mhey8 zz}gxvSkaf)c?aIajWD~13V#k1%F$<_FaXP^37n+KSO%;RfXtD#iXLoXXiUAafK#4% z+L0+p-@0r9#n-8F(qDjTA*p(-1uTHOy8u{8$wpd$942KV41_G5#4ND;f= z;C`rxJ!r6sV-?+*7}bD%u|;&97G0)N*W6OqmQvU0(guH!@oTG+q@II(PL(T{h+W}H z)|L``lU+45Wl7wsIpK>=sNZAwgR&CL*2~HbmWbp4)m~;tJacu562o3Gh{1}{)ltNc zaO_=IcTu_F>MS-Go0V`j?1U1;Myqu1_GL2-*ml^mNl=mo<8O+d#bysB?^pvikNas( zpI&2&DxWI)?z`{U?rO0~ZQ7n*o*qZ{eRtLU6gOnktlCy_t%T^x@yauK zE0}$+YQQ-OOaLyO{IXQ`M><2Vm&%qo)4tMv0?{hY))j(7jcZZog#{TaTsT*$UZp!N zOVs6Od&df2#tHtu&OXHMjic?7-4!QLTVnVA!lN_3f8m?5FPzI#k4f2TgO!Qq2F)AT zx${Of%$;XYk0~8QQ$A0@)_H&F1nbfsCW}vCvJx!MBrsoaJLdI^0;_Wp3LrXPs2Vmj zk5lIjbmRyT72XdL;=R=g@z&oH+FS0oJY*Sd`P6d4;&^h>^k=94mhf9b#*FM4Yi7)t z`Qps=Gd9f-W>n8OI^)yCpAy4n_L=$6%*SVD&YUol;;or!RYC~gRHd{hyP0`OmdUeP zzB{#j2W#y;TD~2#lmMW28$y6UpaU~`mXsN<$+_j!+e~eCI?0?|nku^A5Q(I8AiP;R z)Eq(%c?@-jnSsy3$jwrsK+lpyNB@sB9RGnxq|&jC2xek!s?ugB)w8`t$;b8)wP9IC zlnyuR*uEmB-Bs&wuMuyV1GvZ6P9=nm7P)25_jU9ZNxi#|NPKQaB!}F6MRJ(V3R8g$ zF`M>u8k$Ha&pHw39dJRFFyqss9y+OP@cy7dX(7-Ik2$N;_@Y zBehk=>;dEcK7WYb#GRc#TmLp^eqlhrmD8K5sEx+qG1Vl!YwJvsr9C!Sb{P2D6g9+K z$i4Q${f^cTp*Gpso*yLb_8a&_=FH><YX9VLBK2piG#z4-3-`ydjJOnDIc3L7)avK zd{=;AKM+VN2#~bGcrch=(O^7#L=nIp{Ix!bnmDOp4K>+<7atMG%TkKZp@&8!`$l=r zTHel8Izw>b_YmBja0pJ5+nw-`0334f5Lk=|x-i{tdGB+}do11^Fe_zGE1fibYH4(} zep3Xr(+?6s}2<2QPC9_UZN?}VxDV5zQ zN@*-7O6lyIqGV$?iPA#$Em2y;ZWa{-D6U~Ih4aiDJE&gbdcD-c;S@=-yF?@@?u{Zz zb#o#~bH6EKj7=iOcuOP;-J3aHS2arlwlv>s81*`D%z|HJvIUWJ>>CsIj}3m2x!Dky zE*5%@J-tHuT76bJQ@h*ql(gG?{*1|{kBEpUr~c(g{{z0!{?5Kp{zzXe{7kby6x@I+ z(`!nN4o=~j$#8bm`!R62^w-Sz{7js23iWFcljN3H0~7q z2Im+v@S61i1%#+R#Ej#a3|lLqK3xgV2y z<7_RfrCUYs56i1#+H*aVCroO99bgX$?gs2P_aW>z%<-;SfbY9tBsDOrM=>i-OrGgz zlSow#N%b4*Ql-?A9B{Rh>7VO9j8#9%K~xElo+><~bFSSd@-*)()0hw9(y+GtKq zz`>#M2SO4!G;3_->g%9%_cqu`a<8yprsw2p{=hx!F{x0J)BM6(&E0g!?^^~Jvn(jhhoo*5e~!eP@yU6`z%n;o0WOzr3&xJVm3sSMDjmUDft5MFU9bT z5Yc&`N&26Z56B177bzc-4<+tO`h>3cMCB~D$4C7k#Pl^we?R{(@^|SU%{uZAsTx14 zjU58Qp!)vV^CsyaXdRU5Q}&X2$(Q0KzM+3`UR(4G9X)LH^sot{hfOdJ8>yb8OFm+g z4v~e@VX_Fu{pNIUieSLjnD)|6f3S2`4Pvgrr&ON@&A|(Mcl-n%3abj(B_CO4aZfKC z(tF$*%LDVI8W_!gVx&*tA-Gj|2p|!}j9bGQllm;U+o)FlF8IR=Aa;xJJfw4Wz*b|B zCH{E~L?7C_oO$8gNB(vV*AwX8nKLXmUdy4%T z2gHZAdbT-$d@+E0SwpU8zY8G$q#?6c1X$>!;N=*&Lk>i|vEeu2;%|ccH^CP|H#_^A zu=_Xe;LAe>UQ6;`MUuy&d(q_mR9M|4fNk#=!s_n@uohaK+}2O)272g%dA>X!|88d>(8lX1F+%+gN{&$1Bdf}8Zl>-;8q>k@5D46>BXW#a z1u>Y4F$B?e3>^deqjw1KnF-vg3{yH%Zb+$NJ?H@`dP}%?N`T)GXo_%0IN<$g&6a5DcW8+B z7(&r8o9Q5ZVA}@@zAkFd?-XYXC(G~Pgc-d`^GW;<`hNBIr{2ieo6g5sfxuZJspi_qaFYx-M==1_+6F5JJ)r1H)aTs9T)+ zf?_NSRg}@I0MXK#Bn9#CxlDgDjfr0b)ZE;z9KD)#h=&aal06AqOtvl*VgtlMLC%qy z7eQTdx=KS&2{BQvQ_|+5cD{`}rG+iaTQ4;jH=!?l@LOe5C=9;tDirRuLahslZKGhv zm>iOQH5j)`S*x7_z9l=tT|2^E?9M8CK&2W_3I6C7`pjNUk*>c*wFnU z5oSypq03Qi(&U(SKtzz^+KkBw4Hph2_7mpnfV#_>)|M1PJQTP#)j6&?xHi=@ny&pQ z^a|t=kUH=TGTFjgC8r6l`-S|E8l+@WBc+gkA{J~p8LbUQk5vbTMD%Ee`Cu8cbVoo0)P+cSYw%> zhDb*nO9f|yyA=Bw?c|trqEV*soOut9HNBTq<`@$TFrwvl(|7qLg+2$ITMsw)nyyz7OuY|4d;o}ZtsKo1w}biuPMKu9R_^EP>+>or5AdR{ z`spH6vZ|jgLNSZxU4N>q<*Q#PBLAwa-p;JBK8Vj>Eo+c z6|sl;$_Bn#n{G9oE=OK{B6L3=5wUtd=XJ@TC?w0YWx>i$lEwfi`)7ay?D!P*N`Wi;PCfT9kq=Hh{w^G-}OZDzydC-OM zv-qG;`@pOM<27o1ek9wZEE`MS=0mHtQ7YZkUxyOW7z)gN{_Z~zQSI!`7u9h0T9NFt z>`Qa!;aPYl#?!uXt++Koytr0W+g0X?TbGF!^SHj*y*o&$(!SazkAXC~*K!HjkDxxW zI(vizM7nBwk=K2eAo@Gh*Tks5@H%8mrZ3Ff#}q6KXnl|+IzfwHyW6l8S3qC&Rs_6V z5Vj82&amffzA()DIh%S2jQQKw?K5`AvA@rfpN`jH`r0}^Koq5O6CjSpJW(A4Mhi4l z3Tg!Fp_m0AQj^IRRlCmxl2o#d zuApUQDjmOLV0^evIRfOXF#+4>dqj;=df_mmHDc5#Eu$79S#}l|qkxZ-n*71y{rnRf7Q_}O#Xo(cD#+^|lx99{%94zdvL$()|(?bkPG%{0y#?fPYO0Hx`ibk5gKD+Hfo z4!n#`b$}ov6HWr(9G}yruht-)GdBm3bH*^~oXOU%rFoH@DV=k9xsy5l`>?!b?tZp< z_Y}KYKCW2BaBoo&9Njm$?yE-jes$y40zcYGh5YKcex~jmVBUxQtc( z2DPA^a~Fsd9O`y#WD7)I5A>21s2y6XsV`IQa0o@1LVWwCF|5bNS|uVn55J2-cG}N`|M(aL$$n*m#Kd4p z-!XB2U+qecR$DK+s}=6w@BFQ@iPq$3fEXybyF1*5>i{y%;(M@a8yaPWB{|?=)$T@_ zmWeZ4S0sr2gfGji9tkG^wqcj@X$#Nr0eZ5h;SFhuQeKracxaP=~3_FwSu zExzQHPwqJ{O5D-9`q4{|G|Dj%E!(f{J+fqBLt*Yap-Vu1=kSZ@SGV4Tyx-1%y$NPu-=h>-a745P@A` zNLE2iB;B@y0^x{d)6(>KUSHw0Z!EF%L2a&7i5-@uJ?iqA-jQ6V+^!A?O-B$@coV2k zHAx`5D3$x*ePr3-@=(Vr&_0K@&unS$eM>vv-~B2ENiVObLJP92T3Qq8hwTM-_3D+D z%MseygX=Q5WT8aD@e@Os_g{f&c8DRE3gYm1lwWCN7>Mb}lgQt`CD4PY9iD-I6fMyc z3e<3C5V`{w2x<`Gss>{1!fP3LlIsEiXH6pl$4678q1!lh#_oVld_+lmcgS2jZR{UjTLUyi&? zmhVjzR_wkk?v>Xq3wkY6{Osmfg<-eE;=J6OBUJBU*<)jn4A$H`E5?y_clSwN$z>{~w_17nRE^9s78!H z81~8-_UagrhXi}kc)mN(!qKK&ZpGy`terJ1W-)d@nz{o@{b)G1v=D%$Msj)=s?4qK zHNd4@$Gjf;QtrXLetjsO6*F&h(GQN%j;t%zvdV($3@$xyi{8iS$)oyzbB~e!`eEE$ zGDL6Z){+_e&D?SFfWC&ihM(VXee(N_3C%W3tIyk!kA3ZY7D*X;i8qEfok0oeYxT** zc9FQ&D&W`MNsch4^a`+M-6f^YXxno~Z8oHFWUJJxl* zNB3oSbT9tjx?fy3&`~HrFQLWs7MhNY7ul(}m&8sJ-rI)!-`SV9nK}L ze;TVwP|D=n^-_{lt()AF*BzTl*N8Fs>qg-ium zUN4pV^#yr5nX_x5ut+f$X*mL%(t1)v4GtKnT7g_w7Ommk@>N&F^)I|{HgpaJ-MX~8 z)H=I*2`8={tJ?}{N`{)Hpy7K3R}s+A2Ecg}0BF_VHt>%DJg%sadH7B;nieHDcWk-X z(n_o;P)}~peO?$Hk3JZ(E~PG+a${8t+GKr3XM{H2PXm&)njit2A&`L9(n$s_)ngqnTwNTRF
slc>R(C@OEWlW1Wt;@GewJo%VD8+o#yS}{F4MWoNDiVGJmY?v%E zQ&$9T4Xn^^O01Mpd0oj0_Y~33nB5b_^B;qpdy;s5KPckq8{~Naxt}SbWxyH}+EZHE zQ?&M2An?u*Q4a)?dZ$SI;YTKm>Km4FhZQ8kL~lotEcJ$qpOv>K6)?x;uD$Sb?Yi_%WDV^uoaON@TA z7^$JdYqXEp?f5_^cP|llOQof_Zz{dw3KzxT$}sVVFwx%|TzuA1RJ(zZ&%(thRE@if zpLIvh!`oTh+L=pq#&)CxtySq7Ei1R!+2b!&=~HjSzFADG6KP7l`FtunLByh13Ugb~ zXmV)~Np~8WY)2+=UpsqE96%OJ8MYlH17XzSsW-MhitDahM0R>1(z{g~`NE>9zi zF|iEFSDD83JK$O;230K{dQ3J355b>yQ6P%@x}!wJ@1pFwhH!}+d+En>i#KX4J_Z&| zW^=})V#X*jW4M?xTFiJ%%ornPj1V(o!QJ5&W(It247!CO?Q<0O^~P?KKf28|SMu7@ z7g}<8PJ$JN=T2*igAhlZ*DjD^oPR`Ou5z*5_|7AXQCXLK&!MXLo>{BHb0ypZ`dses z+#ncdT&Jp*lGzFw*KBslNZD7)Rz9R9Zbt=Ta#pIH{+H}qw+jWvCTm1_K|%GIy!h&W z<;BzNj-BSlv#cScANi21%lG7WSeL%;VjeacE?r#nMNu^1BXC1yLuC4P-L6zPAJH3!^ zWk%#P&*n2{*7>8P>}k`c;cB2Qob}0ShnCN&VfdnxqCS2*&(%twY+CU^J|;7iPDanx z$;w_j7efptgQfU$>P_j~I?}>dR=!@iahuq=XTOIY9W{QMm*H|Z-G|>h!Bu%*h$lpe zfi2cz3!2>vMs`oH_JN(oVH8(T^N9aG@cgR@)d~9+AO^B*8v7;rmXFE*8zQq~U9l)I zgA3YNbY$_tZPGAHA}Z*$vQ*lPMUssXm|lxeO_GR``$06>bb&>KEVToqMTjN&cN4#p z_M>;xcF=(+@kjrEh)W{$LMnw)w6U}+Pf0--r6akB8xCapAFM_hu%CCk@Y#036IIO! z$UEIfvS;QkZ^~8M2fl;x+Y-wQjK|8BOSx7C6mHx~;bBT)NDGDg%+=e4KetmV-Dxin zi87<@+IDWi=2%B9k6f2h|0i~9wyAn?5hk9JjTu&F;MZ8>HWA*utV1snVYsbQuKFso zay@P`4vq;g`>5csDEJ3fiUQp4+JCBaf7aG`x|*bu*cQB}1378gSYVb;;u6M5cwj36 zT_1L|^?mS;zRq@aC+k-Djh04q6VXld80t!!PFnxlpw6z^Futx%I%w#6jfL9=y=6?t z9SpZ?3Jf}K{VjvmorHU+{T50+_OVTe>m;yl2%6~Ski*hRSh9h*OJa?vXlU@d*T;J+ z*T-8wTtA{Pxsb!(1Nh4oTFXfmwk@%5L9kN&W^tK)vGhK$jv!&D46c!s5Y<_p8GBMPqa0_|7=6=-3EnKhufny zQ1Um?!EeNW>(IZYhgV~W_Q0Q;ofwSbK?`;E3_FmgW}i`1o}5pFKxD{jzgc{a2TbJ*Pdlm=pJ&_%5=u zsqe5yM~sSle(ieaCi$Pfqu>6f5AQcValzV+@9nKQP~UhdsQc)-nXhv@_U`{S^6}X( vzwQ0@M#rHsQ|D$Dy&3qkiT>f9c0Zxtwuf`SY6#lT`}ah6hIBRTAOC*=<8%)V delta 14423 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 Date: Sun, 21 Aug 2022 15:26:06 +0200 Subject: [PATCH 43/54] Fix for very high Hovercraft fly --- scorch.xex | Bin 50488 -> 50488 bytes weapons.asm | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scorch.xex b/scorch.xex index 4e501abb99f35036b6f3923edf6c1e9ffb51dfb3..62cffd02e54d1bf44451a5312bf2421747f99b3e 100644 GIT binary patch delta 17 Ycmdnd#k`}7c|&eKlhB0C`S~Y90YYL2Y5)KL delta 17 Ycmdnd#k`}7c|&eKli-KV`S~Y90YsYz$p8QV diff --git a/weapons.asm b/weapons.asm index 5345c39..f5e54b1 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2439,8 +2439,8 @@ InverseScreenByte mva #0 FloatingAlt ; now it's a counter TankGoUp lda ytankstable,x - cmp #17 ; Floating altitude - beq ReachSky + cmp #18 ; Floating altitude + bcc ReachSky ; first erase old tank position mva #1 Erase jsr DrawTankNr From b67c3230bee9a0f01af6484c9ffcdbfc7e3f9645 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 21 Aug 2022 16:53:07 +0200 Subject: [PATCH 44/54] Hovercraft fly high and low --- grafproc.asm | 22 ++++++++++++++++++++++ scorch.xex | Bin 50488 -> 50536 bytes weapons.asm | 23 ++++++++++++++++------- 3 files changed, 38 insertions(+), 7 deletions(-) diff --git a/grafproc.asm b/grafproc.asm index d6ff1ec..fe2ae1c 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -1521,6 +1521,28 @@ EndDrawing rts .endp + +;-------------------------------------------------- +.proc CheckMaxMountain +; in A return y coordinate of highest mountain +;-------------------------------------------------- + mwa #mountaintable modify + ldy #0 + ldx #screenheight-1 +nextPointChecking + txa + cmp (modify),y + bcc NotHigher + lda (modify),y + tax +NotHigher + inw modify + cpw modify #(mountaintable+screenwidth) + bne nextPointChecking + txa + rts +.endp + /* ;-------------------------------------------------- .proc calculatemountains0 diff --git a/scorch.xex b/scorch.xex index 62cffd02e54d1bf44451a5312bf2421747f99b3e..e16e705d5216962725e5fe2dbe1e58764d3a6612 100644 GIT binary patch delta 14148 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 delta 14292 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 diff --git a/weapons.asm b/weapons.asm index f5e54b1..8f074ad 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2422,8 +2422,16 @@ InverseScreenByte ; X and TankNr - index of flying tank ; ------------------------------------------------- ; Let's designate the flight altitude. - mva #17 FloatingAlt ; for testing -; mwa #mountaintable temp + jsr CheckMaxMountain + cmp #(12+18) ; tank witch shield (12) and max alt (18) check + bcc IsToHigh + sbc #12 ; tank witch shield high correction + bne StoreMaxAlt +IsToHigh + lda #18 +StoreMaxAlt + sta FloatingAlt +; mva #18 FloatingAlt ; for testing mva #sfx_plasma_2_2 sfx_effect ; display text 4x4 - fuel full @@ -2436,15 +2444,15 @@ InverseScreenByte ; TankNr in X reg. ; now animate Up - mva #0 FloatingAlt ; now it's a counter + mva #0 modify ; it's a counter TankGoUp lda ytankstable,x - cmp #18 ; Floating altitude + cmp FloatingAlt ; Floating altitude bcc ReachSky ; first erase old tank position mva #1 Erase jsr DrawTankNr - lda FloatingAlt + lda modify cmp #5 bcc NoEngineClear mva #0 color @@ -2452,10 +2460,10 @@ TankGoUp NoEngineClear mva #0 Erase dec ytankstable,x - inc FloatingAlt + inc modify ; then draw tank on new position jsr DrawTankNr - lda FloatingAlt + lda modify cmp #5 bcc NoEngine lda random @@ -2465,6 +2473,7 @@ NoEngineClear NoEngine ; jsr WaitOneFrame jmp TankGoUp + ReachSky ; engine symbol erase mva #0 color From a609a1b3310a9f1b3bd98674a798e700658e4582 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 21 Aug 2022 17:32:26 +0200 Subject: [PATCH 45/54] Better Hovercraft text and good price :) --- constants.asm | 2 +- definitions.asm | 2 +- grafproc.asm | 4 ++-- scorch.xex | Bin 50536 -> 50550 bytes weapons.asm | 33 ++++++++++++++++++++++----------- 5 files changed, 26 insertions(+), 15 deletions(-) diff --git a/constants.asm b/constants.asm index fbbb01e..f6455cb 100644 --- a/constants.asm +++ b/constants.asm @@ -423,7 +423,7 @@ WeaponUnits .by 3 ;Battery________ .by 0 ;Bal_Guidance___ .by 0 ;Horz_Guidance__ - .by 5 ;Floating_Tank__ + .by 2 ;Floating_Tank__ .by 0 ;Lazy_Boy_______ .by 3 ;Parachute______ .by 2 ;StrongParachute diff --git a/definitions.asm b/definitions.asm index 91094b4..9594628 100644 --- a/definitions.asm +++ b/definitions.asm @@ -93,7 +93,7 @@ price_White_Flag_____ = $0 ;_48_($30) price_Battery________ = 300 ;_49 price_Bal_Guidance___ = $ffff ;_50 price_Horz_Guidance__ = $ffff ;_51 -price_Floating_Tank__ = 20 ;_52 +price_Floating_Tank__ = 352 ;_52 price_Lazy_Boy_______ = $ffff ;_53 price_Parachute______ = 234 ;_54 price_StrongParachute = 1000 ;_55 diff --git a/grafproc.asm b/grafproc.asm index fe2ae1c..0b7dd6d 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -983,7 +983,7 @@ ToHighToParachute jsr plot inw xdraw ; plot 6 random color pixels - mva #6 FloatingAlt ; sorry reuse! + mva #6 temp @ lda Erase eor #%00000001 and random @@ -991,7 +991,7 @@ ToHighToParachute sta color jsr plot inw xdraw - dec FloatingAlt + dec temp bne @- ; clear last pixel under tank mva #0 color diff --git a/scorch.xex b/scorch.xex index e16e705d5216962725e5fe2dbe1e58764d3a6612..24baa435e9d8b9b59dd8de6bf00082d99fb49e0c 100644 GIT binary patch delta 13327 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 diff --git a/weapons.asm b/weapons.asm index 8f074ad..eeba2c8 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2438,7 +2438,10 @@ StoreMaxAlt mwa #hoverFull LineAddress4x4 mwa #((ScreenWidth/2)-((hoverFullEnd-hoverFull)*2)) LineXdraw ; centering - mva #4 LineYdraw + sec + lda FloatingAlt + sbc #12 + sta LineYdraw jsr TypeLine4x4 ldx TankNr @@ -2482,7 +2485,10 @@ ReachSky ; display text 4x4 - fuel full (clear text) mwa #hoverFull LineAddress4x4 mwa #((ScreenWidth/2)-((hoverFullEnd-hoverFull)*2)) LineXdraw ; centering - mva #4 LineYdraw + sec + lda FloatingAlt + sbc #12 + sta LineYdraw lda #0 jsr TypeLine4x4.staplot4x4color ldx TankNr @@ -2504,7 +2510,10 @@ KeyboardAndJoyCheck ; display text 4x4 - low fuel mwa #hoverEmpty LineAddress4x4 mwa #((ScreenWidth/2)-((hoverEmptyEnd-hoverEmpty)*2)) LineXdraw ; centering - mva #4 LineYdraw + sec + lda FloatingAlt + sbc #12 + sta LineYdraw ;lda #0 jsr TypeLine4x4 ;.staplot4x4color ldx TankNr @@ -2617,6 +2626,16 @@ NoLEdge jmp KeyboardAndJoyCheck pressedSpace + ; display text 4x4 - low fuel (clear text) + mwa #hoverEmpty LineAddress4x4 + mwa #((ScreenWidth/2)-((hoverEmptyEnd-hoverEmpty)*2)) LineXdraw ; centering + sec + lda FloatingAlt + sbc #12 + sta LineYdraw + lda #0 + jsr TypeLine4x4.staplot4x4color + ldx TankNr ;================================= ; left or right from center of screen ? ldy #0 @@ -2713,14 +2732,6 @@ ItIsMe sta XtankstableL,x GoDown - ; display text 4x4 - low fuel (clear text) - mwa #hoverEmpty LineAddress4x4 - mwa #((ScreenWidth/2)-((hoverEmptyEnd-hoverEmpty)*2)) LineXdraw ; centering - mva #4 LineYdraw - lda #0 - jsr TypeLine4x4.staplot4x4color - ldx TankNr - mwa #mountaintable temp clc lda temp From fa5451e64610e4d97882d86b67483f158a58a4f8 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 21 Aug 2022 19:35:48 +0200 Subject: [PATCH 46/54] Fix for underground falling --- grafproc.asm | 50 +++++++++++++++++++++++++++----------------------- scorch.xex | Bin 50550 -> 50560 bytes 2 files changed, 27 insertions(+), 23 deletions(-) diff --git a/grafproc.asm b/grafproc.asm index 0b7dd6d..f913758 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -1073,6 +1073,9 @@ ROLPoint2 bne ByteBelowTank NoGroundCheck ldx TankNr + lda Ytankstable,x + cmp #screenheight-1 ; tank on lowest position (no falling down) + jcs EndOfFall lda UnderTank1 bne NoFallingDown ; Tank falling down ---- @@ -1522,28 +1525,7 @@ EndDrawing rts .endp -;-------------------------------------------------- -.proc CheckMaxMountain -; in A return y coordinate of highest mountain -;-------------------------------------------------- - mwa #mountaintable modify - ldy #0 - ldx #screenheight-1 -nextPointChecking - txa - cmp (modify),y - bcc NotHigher - lda (modify),y - tax -NotHigher - inw modify - cpw modify #(mountaintable+screenwidth) - bne nextPointChecking - txa - rts -.endp - -/* +/* ;-------------------------------------------------- .proc calculatemountains0 ; Only for testing - makes ground flat (0 pixels) @@ -1568,7 +1550,29 @@ SetYofNextTank bpl SetYofNextTank rts .endp -*/ + */ + +;-------------------------------------------------- +.proc CheckMaxMountain +; in A return y coordinate of highest mountain +;-------------------------------------------------- + mwa #mountaintable modify + ldy #0 + ldx #screenheight-1 +nextPointChecking + txa + cmp (modify),y + bcc NotHigher + lda (modify),y + tax +NotHigher + inw modify + cpw modify #(mountaintable+screenwidth) + bne nextPointChecking + txa + rts +.endp + ; ----------------------------------------- .proc unPlot diff --git a/scorch.xex b/scorch.xex index 24baa435e9d8b9b59dd8de6bf00082d99fb49e0c..3381abf45b640a4a1fcdbe5e6943e7447ded5354 100644 GIT binary patch delta 11061 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 delta 10991 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
&o`CBJ&xK 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 From 8f9e5d018b4fda57812a93ef547a866d814ffb32 Mon Sep 17 00:00:00 2001 From: pkali Date: Sun, 21 Aug 2022 14:04:20 -0400 Subject: [PATCH 47/54] randomizeforce fix --- definitions.asm | 4 ++-- scorch.asm | 4 ++-- scorch.xex | Bin 50560 -> 50560 bytes 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/definitions.asm b/definitions.asm index 9594628..2508f10 100644 --- a/definitions.asm +++ b/definitions.asm @@ -10,8 +10,8 @@ PMGraph = $0800 ; real PM start = $0b00 ; Generated tables -linetableL = $0b00 - screenHeight*2 -linetableH = $0b00 - screenHeight +linetableL = $0b00 - (screenHeight+1)*2 +linetableH = $0b00 - (screenHeight+1) display = $1010 ;screen takes $2K due to clearing routine diff --git a/scorch.asm b/scorch.asm index 3dac628..c6d2174 100644 --- a/scorch.asm +++ b/scorch.asm @@ -200,7 +200,7 @@ FirstSTART sta (modify),y adw temp #40 iny - cpy #screenheight + cpy #screenheight+1 bne @- @@ -1362,7 +1362,7 @@ UsageLoop sta temp2+1 cpw RandBoundaryLow temp2 - bcs RandomizeForce + seq:bcs RandomizeForce cpw RandBoundaryHigh temp2 bcc RandomizeForce diff --git a/scorch.xex b/scorch.xex index 3381abf45b640a4a1fcdbe5e6943e7447ded5354..2e625ff9df8b0a295743a2a28eef5ace676cb63d 100644 GIT binary patch delta 109 zcmZqZW^U+a-e4TWnb%srlC!m9rTJu=AX&zfo1=nm$gt&cwwCTS-)xcpSAhe_&S)*% zYd+a_LOV+yCy;Ssf+mFVb;25u(hQ)| Date: Sun, 21 Aug 2022 21:13:43 +0200 Subject: [PATCH 48/54] Hovercraft fix for buried tank --- scorch.xex | Bin 50560 -> 50611 bytes weapons.asm | 23 +++++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/scorch.xex b/scorch.xex index 2e625ff9df8b0a295743a2a28eef5ace676cb63d..6511f7a926ec0c67625b77a837b36287a622feea 100644 GIT binary patch delta 14288 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 delta 14104 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 diff --git a/weapons.asm b/weapons.asm index eeba2c8..f3dc2cd 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2491,6 +2491,29 @@ ReachSky sta LineYdraw lda #0 jsr TypeLine4x4.staplot4x4color + ; and Soildown at the start (for correct mountaintable if tank was buried) + ; calculate range + ldx TankNr + sec + lda XtankstableL,x + sbc #2 + sta RangeLeft + lda XtankstableH,x + sbc #0 + sta RangeLeft+1 + clc + lda XtankstableL,x + adc #10 + sta RangeRight + lda XtankstableH,x + adc #0 + sta RangeRight+1 + ; hide tanks and ... + mva #1 Erase + jsr DrawTanks + jsr SoilDown2 + mva #0 Erase + jsr DrawTanks ldx TankNr ; check keyboard/joy and move tank left/right - code copied from BeforeFire From bd2239e4344aec66d241ee577af445e9d809a59f Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 21 Aug 2022 22:23:46 +0200 Subject: [PATCH 49/54] Defenses first to be activated after purchase --- scorch.xex | Bin 50611 -> 50630 bytes textproc.asm | 35 ++++++++++++++++++++++------------- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/scorch.xex b/scorch.xex index 6511f7a926ec0c67625b77a837b36287a622feea..51e7cafc5b9982d179be369c5ebeac7c100c0210 100644 GIT binary patch delta 12909 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 delta 12967 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 diff --git a/textproc.asm b/textproc.asm index f17c11a..816d289 100644 --- a/textproc.asm +++ b/textproc.asm @@ -255,8 +255,7 @@ ManualPurchase jsr Purchase ; purchase weapons bit escFlag spl:rts - mva #$ff isInventory - jsr Purchase ; activate weapons + jsr DefensivesActivate ; activate weapons bit escFlag spl:rts AfterManualPurchase @@ -265,7 +264,17 @@ AfterManualPurchase bne @- rts .endp - +;-------------------------------------------------- +.proc DefensivesActivate +;-------------------------------------------------- +; This proc call Inventory and set Defensives activation first + + mwa #ListOfDefensiveWeapons WeaponsListDL ;switch to the list of offensive weapons + mva #$ff IsInventory + mva #$01 WhichList + ; offensive weapon - 0, deffensive - 1 + jmp Purchase.GoToActivation +.endp ;-------------------------------------------------- .proc Purchase ; ;-------------------------------------------------- @@ -274,6 +283,14 @@ AfterManualPurchase ; Rest of the data is taken from appropriate tables ; and during the purchase these tables are modified. + mwa #ListOfWeapons WeaponsListDL ;switch to the list of offensive weapons + +; we are clearing list of the weapons + mva #$00 WhichList + ; offensive weapon - 0, deffensive - 1 +GoToActivation + mva #$ff LastWeapon + ; mva #0 dmactl VDLI DLIinterruptText ; jsr SetDLI for text (purchase) screen jsr PMoutofScreen @@ -286,22 +303,14 @@ AfterManualPurchase bpl @+ lda #song_inventory @ jsr RmtSongSelect - - mwa #ListOfWeapons WeaponsListDL ;switch to the list of offensive weapons - + ldx tankNr lda TankStatusColoursTable,x sta COLOR2 - - -; we are clearing list of the weapons - mva #$ff LastWeapon - mva #$00 WhichList - ; offensive weapon - 0, deffensive - 1 ; there is a tank (player) number in tanknr ; we are displaying name of the player - tay ; 0 to y + ldy #0 lda tanknr :3 asl ; 8 chars per name tax From f2ec211b526fa3c5f2f1143e8396bfc3a27e2f95 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 21 Aug 2022 23:05:45 +0200 Subject: [PATCH 50/54] Press A to defensives activate --- scorch.xex | Bin 50630 -> 50651 bytes weapons.asm | 13 ++++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/scorch.xex b/scorch.xex index 51e7cafc5b9982d179be369c5ebeac7c100c0210..0810c801fc3cebe38403c23b9af6595160d316c9 100644 GIT binary patch delta 13687 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 delta 13714 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 diff --git a/weapons.asm b/weapons.asm index f3dc2cd..faa1b4b 100644 --- a/weapons.asm +++ b/weapons.asm @@ -1207,8 +1207,18 @@ notpressed bpl notpressed ;---esc pressed-quit game--- rts - @ + cmp #$3f ; A + bne @+ +callActivation + ; Hide all tanks - after inventory they may have other shapes + mva #1 Erase + jsr DrawTanks + mva #0 Erase + jsr DefensivesActivate + jmp afterInventory + +@ cmp #$0d ; I bne @+ callInventory @@ -1219,6 +1229,7 @@ callInventory ; mva #$ff isInventory jsr Purchase +afterInventory mva #0 dmactls ; dark screen jsr WaitOneFrame lda #song_ingame From 1dce1f177714405a812c00e50a2c60adbcdd69a4 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 21 Aug 2022 23:09:49 +0200 Subject: [PATCH 51/54] PL manual update --- instrukcjaPL.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/instrukcjaPL.txt b/instrukcjaPL.txt index f2c0d59..b537a9e 100644 --- a/instrukcjaPL.txt +++ b/instrukcjaPL.txt @@ -22,9 +22,10 @@ Jeśli nazwa nie zostanie wpisana (bo np operujemy wyłącznie joystickiem), to 3. Ekran zakupów (przed każdą rundą) Na tym ekranie można dokonywać zakupów broni ofensywnych i defensywnych. Widoczne są tylko te bronie na które gracza stać wraz z informacją o cenie i ilości jednostek danej broni, którą za ten cenę otrzymamy. Informacje na ekranie nie wymagają chyba więcej opisu. Po listach poruszamy się klawiszami kursora (góra i dół) lub joystickiem, klawisz [TAB] lub strzałka w lewo czy też ruch joystickiem w lewo zmieniają ekran na bronie defensywne lub ofensywne, klawisz [SPACJA] lub strzałka w prawo a także joystick w prawo realizują zakup wskazanej broni. +Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu aktywacji broni defensywnych. +Na ekranie tym można aktywować zakupione wcześniej bronie defensywne czy też ofensywne. Obsługiwany jest identycznie jak ekran zakupów, jednak [SPACJA] lub strzałka w prawo a także joystick w prawo realizują aktywacje wskazanej broni. Umożliwia to aktywowanie osłon jeszcze przed rozpoczęciem rundy. Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu zakupów następnego gracza. (oczywiście dla graczy komputerowych ten ekran się nie pojawia) -Bezpośrednio po zakończeniu zakupów przez każdego z gracy pojawia wię ekran aktywacji broni na którym można aktywować zakupione wcześniej bronie defensywne czy też ofensywne. Obsługiwany jest identycznie jak ekran zakupów, jednak [SPACJA] lub strzałka w prawo a także joystick w prawo realizują aktywacje wskazanej broni. Umożliwia to aktywowanie osłon jeszcze przed rozpoczęciem rundy. 4. Główny ekran gry W linii statusowej widoczna jest informacja o tym który z graczy aktualnie może oddać strzał oraz zestaw innych informacji: @@ -39,7 +40,8 @@ W linii statusowej widoczna jest informacja o tym który z graczy aktualnie moż Tutaj klawiszologia jest prosta, klawisze kursora lub joystick: lewo/prawo - zmiana kąta nachylenia lufy, góra/dół - zmiana ustawienia siły strzału. [SPACJA] lub przycisk joysticka naciśnięte krótko - oddanie strzału [TAB] - wybór broni ofensywnej (ta opcja nie jest dostępna bezpośrednio joystickiem - trzeba wybrać Inventory) -klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory (aktywacji broni). Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. +Klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory (aktywacji broni). Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. +Klawisz [A] - bezpośrednie przejście na ekran Inventory aktywacji broni defensywnych. Klawisz [M] - wyłączenie/włączenie muzyki w tle Klawisz [S] - wyłączenie/włączenie dźwięków efektów. Klawisz [O] - wymuszenie zakończenia gry (Game Over). W podsumowaniu wyników nie jest brana pod uwagę przerwana właśnie runda rozgrywki, a wyłącznie rundy zakończone wcześniej. Odpowiada to wciśnięciu klawisza [ESC] z tą różnicą, że wyświetlane jest podsumowanie oraz creditsy. From cd57bc3522f00a59282000930d0b40450e938eeb Mon Sep 17 00:00:00 2001 From: pkali Date: Sun, 21 Aug 2022 21:33:19 -0400 Subject: [PATCH 52/54] manual.md --- MANUAL_EN.md | 186 +++++++++++++++++++++++++++++++++++++++++++++++++++ scorch.asm | 2 +- 2 files changed, 187 insertions(+), 1 deletion(-) create mode 100644 MANUAL_EN.md diff --git a/MANUAL_EN.md b/MANUAL_EN.md new file mode 100644 index 0000000..9afad72 --- /dev/null +++ b/MANUAL_EN.md @@ -0,0 +1,186 @@ +# Basic instruction manual: + +You can play using the keyboard (all functionality) or the joystick in the first port (all functionality necessary for gameplay). + +## 1. Game Option Selection. + +On the first screen, you can configure gameplay options: +* number of players (2 - 6) includes both human and computer-controlled players +* the initial amount of cash of each player (2K is the optimal value we chose, but for short games, it is worth choosing a higher value) +* gravity +* maximum wind strength (wind is drawn at the beginning of each round, here you can choose how strong it can be) +* number of rounds in a game +* missile speed (does not affect the flight path - only changes the apparent missile speed - does not change anything in the gameplay itself) +* frequency of suicides :) - if for a number of turns the game has not recorded hits (tanks are constantly shooting inaccurately), after one of such misses a tank commits suicide - here you determine how long they can "shooting for the stars" :) - if only people play the optimal setting is "norm", in the case of computer-controlled players ... you choose. + * The height (and undulation) of the mountains from almost flat (NL - Kingdom of the Netherlands), to soaring and high (NP - Federal Democratic Republic of Nepal) + +Select options with cursor keys or joystick. + +The [RETURN] key or Joystick button moves to the next screen. + +## 2. Entering the name of players and selecting the level of computer-controlled players + +The second screen is shown for each player. Here you can use the cursor keys or joystick to select whether the tank will be driven by a human (HUMAN option) or a computer (other options). At the same time, you can enter the name of the selected player from the keyboard. +When you press the [RETURN] key or the joystick button, the screen switches to the next player until the difficulty levels for each player are selected. + +If the name is not entered (because, for example, you use a joystick only), it will be supplemented with the default name. + +## 3. Shopping screen (before each round) + +On this screen, you can make purchases of offensive and defensive weapons. Only those weapons that the player can afford are visible, along with information about the price and the number of units of a given weapon that will be obtained for that price. The information on the screen probably needs no more description. You move through the lists with the cursor keys (up and down) or with the joystick, the [TAB] key or the left arrow or the left joystick tilt change the screen to defensive or offensive weapons, the [SPACE] key or the right arrow and also the joystick to the right does the purchase of the indicated weapon. + +The [RETURN] key or the joystick button press switches to the defensive weapon activation screen. Here you can activate previously bought defensive (or offensive after switching with [TAB], etc) weapons. This makes it possible to activate shields and others before the round starts. + +Another [RETURN] key or joystick button press switches to the next player's shopping screen. +(For computer players this screen is not shown.) + +## 4. The main screen of the game + +The status line shows which player is currently allowed to take a shot and a set of other information: +* player's tank name, +* currently selected offensive weapon, +* the player's remaining energy points and if he has an active defensive weapon that has its energy - in parentheses the energy level, +* the angle and the direction of the barrel set by the player, +* the shot strength set by the player (the maximum shot strength is limited by the player's energy - it can not exceed the energy * 10 . This means that you can fire weaker shots only when having a small amount of energy, +* the current round number, +* wind speed and direction, +* in parentheses is the name of the active defensive weapon - if there is any activated by the player. + +The keyboard controls here are simple, cursor keys or joystick: left/right - change the angle of the barrel, up/down - change the the force of the shot. +* [SPACE] or joystick button pressed briefly - firing a shot. +* [TAB] - selection of offensive weapons (this option is not available directly with the joystick - you need to select Inventory). +* [I] or longer holding the joystick button - go to Inventory. It is a screen (actually two) with the same layout as the shopping menu, it also works similarly except that here you don't buy weapons, but choose one of the offensive ones to shoot or activate a defensive weapon. +* [A] - go directly to the defensive weapons activation. +* [M] key - disable/enable background music. +* [S] key - disable/enable effect sounds. +* [START] - speed up some game animations. +* [ESC] - during the entire game at any time (unless the computer is playing, then sometimes you have to wait a while) you can press the [ESC] key, which allows you to abort the game and return to the beginning (of course, there is protection against accidental pressing). +* [O] - end the current game and jump to the Game Over screen with a summary. + +## 5. Game mechanics + +And here's a rundown of the description of how each weapon works, scoring rules, etc: + +### First, what we know about tank energy +- Tanks have energy (and Ogres have layers - like an onion) - 99 units at the start of a round. +- Energy of tanks is depleted in 3 ways: + 1. one unit after firing each shot, + 2. while falling (one pixel down takes 2 units of energy), + 3. when a projectile hits a tank or its proximity. The amount of energy subtracted depends on the distance from the center of the explosion and the type/power of the projectile. + +### How energy subtraction works (and makes money!) + +After each round, the amount of money gained/lost is calculated. This is done on the basis of two variables accumulated by each tank during the round. These variables are: + +`gain` - energy "captured" from hit tanks (also when you hit yourself :) and here's the catch, if you have very little energy left it may be profitable to hit yourself with a powerful weapon! + +`lose` - energy lost due to explosion/fall (important - the total potential loss of energy is taken into account even if the tank has less at the time of the hit). + +In addition, the tank that won the round has a `gain` parameter (captured energy from tanks hit) increased by the energy remaining at the end of the round (because it did not die and should have it - although the survival of the fittest is not guaranteed :) ) + +Specifically: + +### After each round: +`money = money + (2 * (gain + energy))` +`money = money - lose` +`if money < 0 then money = 0` + +(at the start of each round `gain` and `lose` have a value of 0) + +During a round, if another tank is hit as a result of a shot fired by a tank, the tank firing the shot "gets the energy" taken away from the hit tank. + +### For tank firing a shot: + +`gain = gain + EnergyDecrease` + +### Tank being hit: + +`lose = lose + EnergyDecrease` + +Where `EnergyDecrease` is the loss of energy due to a hit. + +Of course, at the same time, the hit tank loses the amount of energy stored in `EnergyDecrease`, except that here the loss can not exceed the energy held. + +Note that the screen representation of money has an extra 0 added at the end so you actually have 10 times more cash than the above calculation shows :) + +## How the hit works. + +Each weapon that results in an explosion has a radius of fire (`ExplosionRadius`). + +After the explosion, every tank in its range loses energy. + +The way it works is that the distance of the hit tank from the center of the explosion is calculated, the `ExplosionRadius` reduced by this distance is multiplied by 8 and the result is `EnergyDecrease`. + +That is, in the case of hitting a tank centrally: +`EnergyDecrease = ExplosionRadius * 8` +and with each pixel farther from the center, 8 fewer units are lost. + +I don't know if it's understandable - I do understand it :) + +For example, if a tank is hit centrally with a Baby Missile - it is subtracted 88 units of energy (11 * 8), which also means that when this missile hits at a distance of 12 pixels from the tank - it does not lose energy at all. + +And here are the `ExplosionRadius` values for each weapon: + +| Weapon | `ExplosionRadius` | +| --- | --- | +| Baby Missile | 11 | +| Missile | 17 | +| Baby Nuke | 25 | +| Nuke | 31 | +| LeapFrog| 17 15 13 | +| Funky Bomb | 21 11 (* 5) | +| MIRV | 17 (* 5) | +| Death's Head | 31 (* 5) | +| Napalm | x 40 (this weapon is different and the distance from the center is not determined, simply any tank within range of the flames loses 40 units of energy - the ExplosionRadius variable is not used) | +| Hot Napalm | x 80 (the same principle as in Napalm) | +| Baby Roller | 11 | +| Roller | 21 | +| Heavy Roller | 31 | +| Riot Charge | 31 | +| Riot Blast | 0 (in reality - 61 but with these weapons it is not taken into account when counting energy loss only the width of the ground to fall) | +| Riot Bomb | 17 | +| Heavy Riot Bomb | 29 | +| Baby Digger | 0 (60 - as in Riot Blast) | +| Digger | 0 (60 - as above) | +| Heavy Digger | 0 (60 - as above) | +| Baby Sandhog | 0 (60 - as above) | +| Sandhog | 0 (60 - as above) | +| Heavy Sandhog | 0 (60 - as above) | +| Dirt Clod | 12 | +| Dirt Ball | 22 | +| Ton of Dirt | 31 | +| Liquid Dirt | 0 (maybe it's worth changing?) | +| Dirt Charge | 0 (61 - as above) | +| Laser | x 100 (but here it is also different - equally 100 only in the case of a direct hit, the `ExplosionRadius` variable is not used, so there is no multiplication by 8 - we simply subtract 100 units of energy - that is, the tank always dies).| + +The big points received by the player are the number of tanks that died earlier than him. If any of the other tanks capitulated earlier (White Flag) is not added to those that died and does not give points. + +Only these points determine the order in the summary + +## 6. And now defensive weapons: + +* **White Flag** - causes the surrender of the player (can sometimes be useful in a hopeless situation). The advantage is that by surrendering you don't give a big point to your opponents and don't cause one of them to gain by killing us, you also limit the loss of your energy and also cash. An important note - this is the only defensive weapon that can be deactivated. All you have to do is re-enter inventory and once again select its activation. +* **Battery** - when activated, it recharges the tank's energy to full (99 units) and at the same time is the only defensive weapon that does not deactivate other defensive weapons when used. +* **Hovercraft** - a weapon that allows the tank to move. It has its own fuel supply in form of electric eels and in addition, it can be activated multiple times during the same turn, and after using it, you can activate another defensive weapon and fire a shot in the same turn. After using it, the tank rises above the mountains and using the cursor keys or a joystick you can move the tank to a new position. [SPACE] or the joystick button cause the tank to land in a new place. You can fly until the tank runs out of eels (presented on the status bar like the energy of a defensive weapon), if the eel fuel runs out the tank will fall down on its own. It is not possible to land on other tanks. +* **Parachute** - does not protect against loss of energy due to a neighboring explosion, makes you not lose energy during ONE fall. After such a fall, it deactivates and a new parachute must be activated. +* **Shield** - the simplest shield works exactly the opposite of **Parachute**, it does not protect against energy loss while falling, instead it protects against energy loss caused by ONE adjacent explosion. It protects once, no matter how strong the explosion is (whether it's just a "scratch" or a direct hit with a nuke), and deactivates immediately afterward. +* **Heavy Shield** - a shield with its own energy (at the start of 99 units), it works the same as **Shield** (does not protect against falling) with the exception that it has its own energy resource. When exploding, the energy of this shield is reduced first, and if it reaches 0, the shield deactivates and further reduces the tank's energy. Due to this action, a tank with this type of shield can be "killed" by undermining it, because falling reduces the energy of the tank and not the shield. +* **Force Shield** - the strongest shield - works just like Heavy Shield only that it is combined with **Parachute**. What is important in this case, falling does not take energy away from the shield or the tank. It is only taken away by hits. +* **Bouncy Castle** - a passive-aggressive weapon :) . It works as follows. In case of a direct hit on the tank (and cover), it causes the projectile to "bounce" in the opposite direction with the same force with which it was fired. In the absence of wind and a difference in level, the weapon then hits the tank that fired it. After such a bounce, it deactivates. As the weapon reacts in this way only to precise hits, it is also a shield that corresponds to the action of **Heavy Shield** and has 99 units at the start (you will probably have to rethink this value and give a smaller one here). +* **Mag Deflector** - the second passive-aggressive weapon :) . In case of a direct hit on a tank (and shield), it causes the hit point to move randomly to the left or right side of the protected tank, but not very far, so you can get "shrapnel" with stronger weapons. As in the case of **Bouncy Castle**, it is also a shield that corresponds to the action of **Heavy Shield** and has 99 units at the start (probably here we will have also to rethink this value and give a smaller one). +* **Nuclear Winter** - adds nothing, takes nothing away :) - in fact, it is not so much a defensive weapon as a double-edged one. It floods the area with "radioactive" fallout, which is ordinary soil. If you do not have at hand any weapon that digs up the terrain, and for that a shield (preferably disposable), then after such "fallout" you will have to shoot yourself - because being underground is otherwise impossible. Alternatively, **White Flag** always remains. +* **Long Schlong** - a special weapon :) - Costs a lot, doesn't really help with anything (except possibly digging yourself out but only when slightly buried but it has a cool name and looks cool :) - It can be activated independently of other defensive weapons and remains active until the end of the round (it cannot be deactivated). + +Due to the different operations of **MIRV** weapons, **Bouncy Castle** and **Mag Deflector** only use the shielding function when hit by these weapons. + +In addition, none of the shields protect against **Napalm**. **Bouncy Castle** or **Mag Deflector** on a direct hit will deflect it or carry it past, but just hit very close to a tank and its shield will not work. + +**White Flag**, **Hovercraft** and **Nuclear Winter** weapons, when selected, require activation, this is accomplished by "firing a shot" after the selection of that weapon. Of course, the shot of the offensive weapon is then not fired, but only the selected defensive weapon is activated. + +You can only have one defensive weapon active at a time (except **Long Schlong** of course :) ). You can always change the decision and activate another defensive weapon or deactivate **White Flag** before firing. + +And of course, activating a weapon when you already have some other weapon activated causes the loss of the previous one (no returns :) ). + +## 7. "Other" weapons: + +* **Buy me!** - this 'weapon' cannot be used in gameplay. Buying it draws one of the offensive or (more rarely) defensive weapons and adds it to the player's arsenal. It is a lottery in which you can lose (if you draw a weapon cheaper than the "Buy Me!" price) but also gain. You can get a weapon otherwise not affordable at all! diff --git a/scorch.asm b/scorch.asm index c6d2174..86927a5 100644 --- a/scorch.asm +++ b/scorch.asm @@ -36,7 +36,7 @@ ;we decided it must go in 'English' to let other people work on it .macro build - dta d"1.00" ; number of this build (3 bytes) + dta d"1.10" ; number of this build (3 bytes) .endm icl 'definitions.asm' From 2b38f64d17544d6586e480847d6700ac83d267de Mon Sep 17 00:00:00 2001 From: pkali Date: Sun, 21 Aug 2022 22:16:07 -0400 Subject: [PATCH 53/54] manual pl --- MANUAL_PL.md | 181 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 181 insertions(+) create mode 100644 MANUAL_PL.md diff --git a/MANUAL_PL.md b/MANUAL_PL.md new file mode 100644 index 0000000..3af3685 --- /dev/null +++ b/MANUAL_PL.md @@ -0,0 +1,181 @@ +# Podstawowa instrukcja: + +Grać można przy użyciu klawiatury (wszystkie funkcjonalności) lub joysticka (wszystkie funkcjonalności niezbędne w rozgrywce). + +## 1. Wybór opcji gry. +Na pierwszym ekranie możemy skonfigurować opcje rozgrywwki: +* ilość graczy (2 - 6) obejmuje tak ludzi jak graczy sterowanych przez komputer +* początkową ilość gotówki każdego z graczy (8k to wybrana przez nas wartość optymalna, jecz przy krótkich rozgrywkach warto wybrać większą wartość) +* grawitacja +* maksymalna siła wiatru (wiatr jest losowany na początku każdej z rund, tu możemy wybrać jak silny może być) +* liczba rozgrywanych rund +* szybkość lotu pocisków (nie ma wpływu na tor lotu - zmienia jedynie widoczną prędkość rysowania - nie zmienia nic w samej rozgrywce) +* częstotliwość samobójstw :) - jeśli przez ileś tur gra nie odnotowała trafień (czołgi ciągle strzelają niecelnie) jeden z takich pudłujących czołgów popełnia samobójstwo - tu określamy jak długo mogą “strzelać w próżnię” :) - jeśli grają tylko ludzie optymalne ustawienie to “norm”, w przypadku graczy sterowanych przez komputer… wedle uznania. +* wysokość (i pofałdowanie) gór od prawie płaskich (NL - Królestwo Niderlandów), do strzelistych i wysokich (NP - Federalna Demokratyczna Republika Nepalu) + +Wybór opcji klawiszami kursora lub joystickiem. + +Klawisz [RETURN] lub przycisk Joysticka przechodzi do następnego ekranu. + +## 2. Wprowadzanie nazwy graczy i wybór poziomu graczy sterowanych przez komputer +Drugi ekran powtarza się dla każdego z graczy można na nim klawiszami kursora lub joysticjiem wybrać czy danym czołgiem będzie kierował człowiek (opcja HUMAN) czy też kompute (pozostałe opcje). Jednocześnie z klawiatury można wprowadzić nazwę wybranego gracza. +Po naciśnięciu klawisza [RETURN] lub przycisku Joysticka ekran przechodzi na następnego gracza aż zostaną wybrane poziomy trudności dla każdego z nich. + +Jeśli nazwa nie zostanie wpisana (bo np operujemy wyłącznie joystickiem), to zostanie uzupełniona nazwą domyślną. + +## 3. Ekran zakupów (przed każdą rundą) + +Na tym ekranie można dokonywać zakupów broni ofensywnych i defensywnych. Widoczne są tylko te bronie na które gracza stać wraz z informacją o cenie i ilości jednostek danej broni, którą za ten cenę otrzymamy. Informacje na ekranie nie wymagają chyba więcej opisu. Po listach poruszamy się klawiszami kursora (góra i dół) lub joystickiem, klawisz [TAB] lub strzałka w lewo czy też ruch joystickiem w lewo zmieniają ekran na bronie defensywne lub ofensywne, klawisz [SPACJA] lub strzałka w prawo a także joystick w prawo realizują zakup wskazanej broni. + +Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu aktywacji broni defensywnych. +Na ekranie tym można aktywować zakupione wcześniej bronie defensywne czy też ofensywne. Obsługiwany jest identycznie jak ekran zakupów, jednak [SPACJA] lub strzałka w prawo a także joystick w prawo realizują aktywacje wskazanej broni. Umożliwia to aktywowanie osłon jeszcze przed rozpoczęciem rundy. + +Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu zakupów następnego gracza. +(oczywiście dla graczy komputerowych ten ekran się nie pojawia) + +## 4. Główny ekran gry + +W linii statusowej widoczna jest informacja o tym który z graczy aktualnie może oddać strzał oraz zestaw innych informacji: +* nazwa czołgu gracza +* wybrana aktualnie broń ofensywna +* pozostała ilość punktów energii gracza i jeśli ma on aktywną broń defensywną posiadającą swój zasób energii - w nawiasie ten zasób +* ustawiony przez gracza kąt nachylenia lufy i kierunek jej nachylenia +* ustawiona przez gracza siła strzału (maksymalna siła strzału jest ograniczana przez energię gracza - nie może przekroczyć energii * 10 . Oznacza to, że mając małą ilość energii możemy oddać słabsze strzały +* numer aktualnej rundy rozgrywki +* prędkość i kierunek wiatru +* w nawiasie nazwę aktywnej broni defensywnej - jeśli jest jakaś aktywowana przez gracz + +Tutaj klawiszologia jest prosta, klawisze kursora lub joystick: lewo/prawo - zmiana kąta nachylenia lufy, góra/dół - zmiana ustawienia siły strzału. +* [SPACJA] lub przycisk joysticka naciśnięte krótko - oddanie strzału +* [TAB] - wybór broni ofensywnej (ta opcja nie jest dostępna bezpośrednio joystickiem - trzeba wybrać Inventory) +* Klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory (aktywacji broni). Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. +* Klawisz [A] - bezpośrednie przejście na ekran Inventory aktywacji broni defensywnych. +* Klawisz [M] - wyłączenie/włączenie muzyki w tle +* Klawisz [S] - wyłączenie/włączenie dźwięków efektów. +* Klawisz [O] - wymuszenie zakończenia gry (Game Over). W podsumowaniu wyników nie jest brana pod uwagę przerwana właśnie runda rozgrywki, a wyłącznie rundy zakończone wcześniej. Odpowiada to wciśnięciu klawisza [ESC] z tą różnicą, że wyświetlane jest podsumowanie oraz creditsy. +* [ESC] - w czasie całej gry w dowolnym momencie (chyba że akurat gra komputer, wtedy czasem trzeba chwilę poczekać) można nacisnąć klawisz [ESC], który umożliwia przerwanie gry i powrót na początek (oczywiście jest zabezpieczenie przed przypadkowym naciśnięciem). + +## 5. Zasady gry + +A tutaj zręby opisu działania poszczególnych broni, zasad punktacji itp: + +### Najpierw co wiemy o energii czołgów +- Czołgi mają energię (a Ogry warstwy - jak cebula) - na starcie 99 jednostek +- Energii czołgom ubywa na 3 sposoby: + 1. jedna jednostka po oddaniu każdego strzału + 2. w czasie spadania (jeden piksel w dół 2 jednostki) + 3. w chwili trafienia w czołg lub obok niego jakiegoś pocisku - i tu ilość odejmowanej energii zależy od odległości od centrum eksplozji i typu/siły rażenia pocisku. + +### Jak działa odejmowanie energii (i zarabianie kasy!) +Po każdej rundzie wyliczana jest ilość zdobytych/straconych pieniędzy robione jest to na podstawie dwóch zmiennych gromadzonych przez każdy z czołgów w trakcie rundy. Te zmienne to: + +`gain` - energia "przechwycona" od trafionych czołgów (także jeśli trafimy w samego siebie :) i tu haczyk, jeśli pozostało nam bardzo mało energii opłacalne może być trafienie w siebie mocną bronią! + +`lose` - energia stracona w wyniku eksplozji/upadku (i tu ważne liczona jest całkowita utrata energii nawet jeśli czołg ma w chwili trafienia mniej). + +Dodatkowo czołg który wygrał rundę ma parametr gain (przechwyconej od trafionych czołgów energii) zwiększany o pozostałą mu na koniec rundy energię (bo nie zginął i powinien ją mieć - choć bywa też inaczej :) ) + +Konkretnie: + +### Po każdej rundzie: +`money = money + (2 * (gain+energy))` + +`money = money - lose` + +`if money <0 then money=0` + +(na starcie każdej rundy `gain` i `lose` mają wartość 0) + +W czasie rundy, jeśli w wyniku strzału oddanego przez czołg inny czołg zostanie trafiony, czołg oddający strzał "dostaje energię" zabraną czołgowi trafionemu. +### czołg oddający strzał: +`gain = gain + EnergyDecrease` +### czołg trafiony: +`lose = lose + EnergyDecrease` + +gdzie `EnergyDecrease` to utrata energii w wyniku trafienia. + +Oczywiście jednocześnie trafiony czołg traci ilość energii zapisaną w `EnergyDecrease`, z tym że tutaj strata nie może przekroczyć posiadanej energii. + +Uwaga! Ekranowa reprezentacja pieniędzy ma na końcu dopisane dodatkowe 0 więc faktyczne mamy 10 razy więcej kasy niż wynika z powyższych obliczeń :) + +## Jak działa trafienie. + +Każda broń, która skutkuje eksplozją, ma swój promień rażenia (`ExplosionRadius`). + +Po eksplozji każdy czołg w jej zasięgu traci energię. + +Działa to tak, że obliczana jest odległość trafianego czołgu od centrum eksplozji, zmniejszony o tę odległość ExplosionRadius jest mnożony przez 8 i w wyniku otrzymujemy `EnergyDecrease`. + +Czyli w przypadku trafienia centralnie w czołg: +`EnergyDecrease = ExplosionRadius * 8` + +a z każdym pikselem dalej od centrum ubywa o 8 jednostek mniej. + +Nie wiem czy to zrozumiałe - ja rozumiem :) + +Przykładowo, jeśli czołg zostanie trafiony centralnie przy pomocy Baby Missile - odejmowane jest mu 88 jednostek energii (11 * 8), co także oznacza, że przy trafieniu tym pociskiem w odległości 12 pikseli od czołgu - nie traci on energii wcale. + +A oto wartości promienia rażenia (ExplosionRadius) dla poszczególnych broni: + +| Weapon | `ExplosionRadius` | +| --- | --- | +| Baby Missile | 11 | +| Missile | 17 | +| Baby Nuke | 25 | +| Nuke | 31 | +| LeapFrog| 17 15 13 | +| Funky Bomb | 21 11 (* 5) | +| MIRV | 17 (* 5) | +| Death's Head | 31 (* 5) | +| Napalm | x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) | +| Hot Napalm | x 80 (zasada taka jak w Napalm) | +| Baby Roller | 11 | +| Roller | 21 | +| Heavy Roller | 31 | +| Riot Charge | 31 | +| Riot Blast | 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) | +| Riot Bomb | 17 | +| Heavy Riot Bomb | 29 | +| Baby Digger | 0 (60 - jak w Riot Blast) | +| Digger | 0 (60 - jak wyżej) | +| Heavy Digger | 0 (60 - jak wyżej) | +| Baby Sandhog | 0 (60 - jak wyżej) | +| Sandhog | 0 (60 - jak wyżej) | +| Heavy Sandhog | 0 (60 - jak wyżej) | +| Dirt Clod | 12 | +| Dirt Ball | 22 | +| Ton of Dirt | 31 | +| Liquid Dirt | 0 (może warto to zmienić?) | +| Dirt Charge | 0 (61 - jak wyżej) | +| Laser | x 100 (ale tu także jest inaczej - równo 100 tylko w przypadku bezpośredniego trafienia, zmienna ExplosionRadius nie jest używana, więc nie ma mnożenia przez 8 - po prostu odejmujemy 100 jednostek energii - czyli czołg zawsze ginie).| + +Duże punkty otrzymane przez gracza to ilość czołgów, które zginęły wcześniej niż on. Jeśli któryś z innych czołgów skapitulował wcześniej (Biała Flaga) nie jest doliczany do tych które zginęły i nie daje punktów. +Tylko te punkty decydują o kolejności w podsumowaniu + +## 6. A teraz bronie defensywne: +* **White Flag** - powoduje poddanie gracza (może czasem przydać się w sytuacji beznadziejnej). Zaletą jest to, że poddając się nie dajemy dużego punktu przeciwnikom i nie powodujemy, że któryś zyska na tym, że nas zgładzi, ograniczamy też stratę swojej energii czyli także kasy. I tu także ważna uwaga - to jedyna broń defensywna, którą można deaktywować. Wystarczy ponownie wejść do inventory i jeszcze raz wybrać jej aktywację. +* **Battery** - w momencie aktywacji doładowuje energię czołgu do pełna (99 jednostek) i jednocześnie jest to jedyna broń defensywna, która nie deaktywuje innych broni defensywnych w przypadku jej użycia. +* **Hovercraft** - broń umożliwiająca przemieszczanie się czołgu. Posiada własny zasób paliwa a dodatkowo może być aktywowana wielokrotnie w czasie tej samej tury, a po jej użyciu możemy w tej samej turze aktywować inną broń defensywną i oddać strzał. Po jej użyciu czołg uniesie się ponad góry i za pomocą klawiszy kursora lub joysticka: lewo/prawo możemy przemieścić czołg na nową pozycję a [SPACJA] lub przycisk joysticka powodują wylądowanie czołgu w nowym miejscu. Latać można do chwili skończenia się "paliwa" (prezentowanego na pasku statusu tak jak energia broni defensywnej), jeśli paliwo się skończy czołg opadnie samodzielnie. Nie da się lądować na innych czołgach. +* **Parachute** - nie chroni przed ubytkiem energii z powodu sąsiedniej eksplozji, powoduje że nie ubywa energii w czasie JEDNEGO spadania. Po takim upadku deaktywuje się i trzeba aktywować nowy spadochron. +* **Strong Parachute** - spadochron z własną energią (na starcie 99 jednostek), działa tak samo jak Parachute (nie chroni przed eksplozjami) ma za to swój własny zasób energii przy spadaniu w pierwszej kolejności zmniejszana jest energia tego spadochronu (1 jednostka na jeden pixel opadania - inaczej niż czołg!) i jeśli dojdzie ona do 0 to spadochron deaktywuje się i dalej zmniejszana jest energia czołgu (tutaj już standardowo - 2 jednoski na jeden pikxel). +* **Shield** - najprostsza osłona działa dokładnie przeciwnie niż Parachute, nie chroni przed ubytkiem energii w czasie spadania, chroni za to przed ubytkiem energii spowodowanym JEDNĄ sąsiednią eksplozją. Chroni jednorazowo, bez znaczenia jak silna jest eksplozja (czy jest to tylko "draśnięcie", czy też bezpośrednie trafienie atomówką) i od razu po niej deaktywuje się. +* **Heavy Shield** - osłona z własną energią (na starcie 99 jednostek), działa tak samo jak Shield (nie chroni przed upadkiem) z tym wyjątkiem, że ma własny zasób energii. Przy eksplozji w pierwszej kolejności zmniejszana jest energia tej osłony i jeśli dojdzie ona do 0 to osłona deaktywuje się i dalej zmniejszana jest energia czołgu. W związku z takim działaniem, czołg z tym typem osłony można "zabić" podkopując go, bo spadanie zmniejsza energię czołgu a nie osłony. +* **Force Shield** - najmocniejsza osłona - działa tak jak Heavy Shield tyle że połączona z Parachute. Co ważne w jej przypadku upadek nie zabiera energii osłonie ani czołgowi. Zabierają ją tylko trafienia. +* **Bouncy Castle** - broń agresywna :) . Działa następująco. W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje "odbicie" pocisku w przeciwnym kierunku z tą samą siłą z jaką był wystrzelony. W przypadku braku wiatru i różnicy poziomów broń trafia wtedy w czołg, który ją wystrzelił. Po takim odbiciu deaktywuje się. W związku z tym, że broń ta reaguje w ten sposób tylko na precyzyjne trafienia, jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie trzeba będzie przemyśleć tę wartość i dać tu mniejszą). +* **Mag Deflector** - druga broń agresywna :) . W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje przesunięcie punktu trafienia losowo w lewo lub prawą stronę chronionego czołgu, ale niezbyt daleko, więc można dostać "odłamkiem" przy silniejszej broni. Tak jak w przypadku Bouncy Castle jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie i tutaj trzeba będzie przemyśleć tę wartość i dać mniejszą). +* **Nuclear Winter** - nic nie dodaje, nic nie zabiera :) - w zasadzie to broń nie tyle defensywna co obosieczna. Zasypuje teren opadem "radioaktywnym", który jest zwyczajną glebą. Jeśli nie mamy pod ręką żadnej broni odkopującej teren i do tego osłony (najlepiej jednorazowej), to po takim "opadzie" będzie trzeba strzelić do siebie - bo będąc pod ziemią inaczej się nie da. Ewentualnie pozostaje zawsze White Flag. +* **Long Schlong** - broń specjalna :) - kosztuje dużo, nie bardzo w czymkolwiek pomaga (poza ewentualnym odkopaniem się ale tylko przy niewielkim przysypaniu ale fanie się nazywa i wygląda :) - Można ją aktywować niezależnie od innych broni defensywnych i pozostaje aktywna do końca rundy (nie da się jej deaktywować). + +W związku z odmiennym działaniem broni **MIRV**, **Bouncy Castle** i **Mag Deflector** wykorzystują tylko funkcję osłony przy trafieniu tą bronią. + +Dodatkowo, żadna z osłon nie chroni przed Napalmem. Auto Defense czy Mag Deflector przy bezpośrednim trafieniu odbije je lub przeniesie obok, ale wystarczy trafić bardzo blisko czołgu i nie zadziała jego osłona. + +Bronie **White Flag**, **Hovercraft** i **Nuclear Winter** po aktywacji wymagają uruchomienia, jest to realizowanie przez "oddanie strzału" po aktywacji tej broni. Oczywiście strzał bronią ofensywną nie jest wtedy oddawany, a jedynie uruchamiana jest wybrana broń defensywna. + +Można mieć aktywną tylko jedną broń defensywną w danej chwili (za wyjątkiem **Long Schlong** oczywiście :) ). Zawsze przed oddaniem strzału możemy zmienić decyzję i aktywować inną broni defensywną czy też dezaktywować **White Flag**. +Oczywiście aktywacja broni w momencie kiedy mamy już aktywowaną jakąś inną powoduje utratę tej poprzedniej (nie ma zwrotów :) ). + + +## 7. Bronie 'inne' :) : + +* **Buy me!** - tej 'broni' nie można używać w rozgrywce. Jej zakup powoduje wylosowanie jesdnej z broni ofensywnych lub (żadziej) defensywnych i dodanie jej do arsenału gracza. Jest to loteria w której można stracić (jeśli wylosuje się broń tańsza niż cena **Buy Me!** ale też zyskać. Jeśli wylosuje się broń dużo droższa możemy otrzymać do dyspozycji broń, na którą nie było nas stać! From 64a765099243f9005b23f45d6562f0f9023690e7 Mon Sep 17 00:00:00 2001 From: pkali Date: Mon, 22 Aug 2022 01:08:31 -0400 Subject: [PATCH 54/54] v1.10 --- README.md | 31 ++++++++- instrukcjaPL.txt | 161 ----------------------------------------------- scorch.xex | Bin 50651 -> 50651 bytes 3 files changed, 29 insertions(+), 163 deletions(-) delete mode 100644 instrukcjaPL.txt diff --git a/README.md b/README.md index 786abb3..b33e5ad 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ QA: Probabilitydragon, KrzysRog, Beeblebrox, EnderDude, lopezpb, Dracon, brad-co You can contact us via [AtariAge](https://atariage.com) or [AtariOnLine](https://atarionline.pl) forums. -This source code was originally compiled under [OMC65 crossassembler](https://github.com/pkali/omc65) and on 2012-06-21 translated to [mads](https://github.com/tebe6502/Mad-Assembler). +This source code was originally compiled with [OMC65 crossassembler](https://github.com/pkali/omc65) and on 2012-06-21 translated to [mads](https://github.com/tebe6502/Mad-Assembler). Compilation: `mads scorch.asm -o:scorch.xex` @@ -44,10 +44,37 @@ Originally most variables were in Polish, comments were sparse, but we wanted to Because of being always short of time/energy (to finish the game) we decided it must go in 'English' to let other people work on it. It never happened, but we got some encouraging comments and we are still trying to do something from time to time. -With the advent of fujinet (https://fujinet.online/) we are thinking about making the game interplanetary, err, with multiplayer over the net. We'll see. +With the advent of [fujinet](https://fujinet.online/) we are thinking about making the game interplanetary, err, with multiplayer over the net. We'll see. ## Changes: +###### Version 1.00 +2022-08-21 + +My hovercraft is full of eels. + +This release brings a swath of gameplay updates and a generous dose of a new silliness. +[English](https://github.com/pkali/scorch_src/blob/master/MANUAL_EN.md) and [Polish](https://github.com/pkali/scorch_src/blob/master/MANUAL_PL.md) language manual drafts are available in the repository. Please help us with the English one as we are not native speakers. +Version number bump reflects number of unreleased versions and amount of changes. + +Changes: +* Defensive weapons can be activated before the round to make for the unbeatable aiming precision of the robotanks. +* Fixed bug with Long Schlong activation taking one Schlong too many. +* Smoke Tracer not disappearing smoke fixed. +* Bug allowing for infinite shooting outside the screen fixed. +* Tank colors and P/M sequence as devised by Adam, the gfx artist. Tanks differ more and look better. https://github.com/pkali/scorch_src/issues/119 +* New item in the shop - loot box "Buy me!" with a surprise inside. https://github.com/pkali/scorch_src/issues/97 +* Tank names can have s p a c e s now! https://github.com/pkali/scorch_src/issues/120 +* Tanks are mobile now thanks to the new defensive option - Hovercraft https://github.com/pkali/scorch_src/issues/52 +* Main atari library switched to a more standard version based on Mapping the Atari +* Huge memory optimizations to allow for the new features. +* Narrow screen in shop / inventory (many bytes saved). +* Explosion range corrections for a rare event of non-lethal Nuke explosions. +* Pressing [A] jumps into defensive weapons activation directly. +* Elusive randomize force error causing rare hangups for Tosser fixed. +* Activation of defensive weapons moved to front. +* Additional SFX for new weapons. + ###### Version 1.00 2022-08-13 diff --git a/instrukcjaPL.txt b/instrukcjaPL.txt deleted file mode 100644 index b537a9e..0000000 --- a/instrukcjaPL.txt +++ /dev/null @@ -1,161 +0,0 @@ -Podstawowa instrukcja: - -Grać można przy użyciu klawiatury (wszystkie funkcjonalności) lub joysticka (wszystkie funkcjonalności niezbędne w rozgrywce). - -1 Wybór opcji gry. -Na pierwszym ekranie możemy skonfigurować opcje rozgrywwki: -- ilość graczy (2 - 6) obejmuje tak ludzi jak graczy sterowanych przez komputer -- początkową ilość gotówki każdego z graczy (8k to wybrana przez nas wartość optymalna, jecz przy krótkich rozgrywkach warto wybrać większą wartość) -- grawitacja -- maksymalna siła wiatru (wiatr jest losowany na początku każdej z rund, tu możemy wybrać jak silny może być) -- ilość rozgrywanych rund -- szybkość lotu pocisków (nie ma wpływu na tor lotu - zmienia jedynie widoczną prędkość rysowania - nie zmienia nic w samej rozgrywce) -- częstotliwość samobójstw :) - jeśli przez ileś tur gra nie odnotowała trafień (czołgi ciągle strzelają niecelnie) jeden z takich pudłujących czołgów popełnia samobójstwo - tu określamy jak długo mogą “strzelać w próżnię” :) - jeśli grają tylko ludzie optymalne ustawienie to “norm”, w przypadku graczy sterowanych przez komputer… wedle uznania. -- wysokość (i pofałdowanie) gór od prawie płaskich (NL), do strzelistych i wysokich (NP) -Wybór opcji klawiszami kursora lub joystickiem. -klawisz [RETURN] lub przycisk Joysticka przechodzi do następnego ekranu. - -2. Wprowadzanie nazwy graczy i wybór poziomu graczy sterowanych przez komputer -Drugi ekran powtarza się dla każdego z graczy można na nim klawiszami kursora lub joysticjiem wybrać czy danym czołgiem będzie kierował człowiek (opcja HUMAN) czy też kompute (pozostałe opcje). Jednocześnie z klawiatury można wprowadzić nazwę wybranego gracza. -Po naciśnięciu klawisza [RETURN] lub przycisku Joysticka ekran przechodzi na następnego gracza aż zostaną wybrane poziomy trudności dla każdego z nich. -Jeśli nazwa nie zostanie wpisana (bo np operujemy wyłącznie joystickiem), to zostanie uzupełniona nazwą domyślną. - -3. Ekran zakupów (przed każdą rundą) -Na tym ekranie można dokonywać zakupów broni ofensywnych i defensywnych. Widoczne są tylko te bronie na które gracza stać wraz z informacją o cenie i ilości jednostek danej broni, którą za ten cenę otrzymamy. Informacje na ekranie nie wymagają chyba więcej opisu. Po listach poruszamy się klawiszami kursora (góra i dół) lub joystickiem, klawisz [TAB] lub strzałka w lewo czy też ruch joystickiem w lewo zmieniają ekran na bronie defensywne lub ofensywne, klawisz [SPACJA] lub strzałka w prawo a także joystick w prawo realizują zakup wskazanej broni. -Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu aktywacji broni defensywnych. -Na ekranie tym można aktywować zakupione wcześniej bronie defensywne czy też ofensywne. Obsługiwany jest identycznie jak ekran zakupów, jednak [SPACJA] lub strzałka w prawo a także joystick w prawo realizują aktywacje wskazanej broni. Umożliwia to aktywowanie osłon jeszcze przed rozpoczęciem rundy. -Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu zakupów następnego gracza. -(oczywiście dla graczy komputerowych ten ekran się nie pojawia) - -4. Główny ekran gry -W linii statusowej widoczna jest informacja o tym który z graczy aktualnie może oddać strzał oraz zestaw innych informacji: -- nazwa czołgu gracza -- wybrana aktualnie broń ofensywna -- pozostała ilość punktów energii gracza i jeśli ma on aktywną broń defensywną posiadającą swój zasób energii - w nawiasie ten zasób -- ustawiony przez gracza kąt nachylenia lufy i kierunek jej nachylenia -- ustawiona przez gracza siła strzału (maksymalna siła strzału jest ograniczana przez energię gracza - nie może przekroczyć energii * 10 . Oznacza to, że mając małą ilość energii możemy oddać słabsze strzały -- numer aktualnej rundy rozgrywki -- prędkość i kierunek wiatru -- w nawiasie nazwę aktywnej broni defensywnej - jeśli jest jakaś aktywowana przez gracz -Tutaj klawiszologia jest prosta, klawisze kursora lub joystick: lewo/prawo - zmiana kąta nachylenia lufy, góra/dół - zmiana ustawienia siły strzału. -[SPACJA] lub przycisk joysticka naciśnięte krótko - oddanie strzału -[TAB] - wybór broni ofensywnej (ta opcja nie jest dostępna bezpośrednio joystickiem - trzeba wybrać Inventory) -Klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory (aktywacji broni). Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. -Klawisz [A] - bezpośrednie przejście na ekran Inventory aktywacji broni defensywnych. -Klawisz [M] - wyłączenie/włączenie muzyki w tle -Klawisz [S] - wyłączenie/włączenie dźwięków efektów. -Klawisz [O] - wymuszenie zakończenia gry (Game Over). W podsumowaniu wyników nie jest brana pod uwagę przerwana właśnie runda rozgrywki, a wyłącznie rundy zakończone wcześniej. Odpowiada to wciśnięciu klawisza [ESC] z tą różnicą, że wyświetlane jest podsumowanie oraz creditsy. - -W czasie całej gry w dowolnym momencie (chyba że akurat gra komputer, wtedy czasem trzeba chwilę poczekać) można nacisnąć klawisz [ESC], który umożliwia przerwanie gry i powrót na początek (oczywiście jest zabezpieczenie przed przypadkowym naciśnięciem). - - -A tutaj zręby opisu działania poszczególnych broni, zasad punktacji itp: - -—----------------------- - -Najpierw co wiemy o energii czołgów -- Czołgi mają energię (a Ogry warstwy - jak cebula) - na starcie 99 jednostek -- Energii czołgom ubywa na 3 sposoby: -1. 1 jednostka po oddaniu każdego strzału -2. w czasie spadania (jeden piksel w dół 2 jednostki) -3. w chwili trafienia w czołg lub obok niego jakiegoś pocisku - i tu ilość odejmowanej energii zależy od odległości od centrum eksplozji i typu/siły rażenia pocisku. - -Jak działa odejmowanie energii (i zarabianie kasy!) -Po każdej rundzie wyliczana jest ilość zdobytych/straconych pieniędzy robione jest to na podstawie dwóch zmiennych gromadzonych przez każdy z czołgów w trakcie rundy. Te zmienne to: -gain - energia "przechwycona" od trafionych czołgów (także jeśli trafimy w samego siebie :) i tu haczyk, jeśli pozostało nam bardzo mało energii opłacalne może być trafienie w siebie mocną bronią! -loose - energia stracona w wyniku eksplozji/upadku (i tu ważne liczona jest całkowita utrata energii nawet jeśli czołg ma w chwili trafienia mniej). -Dodatkowo czołg który wygrał rundę ma parametr gain (przechwyconej od trafionych czołgów energii) zwiększany o pozostałą mu na koniec rundy energię (bo nie zginął i powinien ją mieć - choć bywa też inaczej :) ) - -Konkretnie: -Po każdej rundzie: -money = money + (2 * (gain+energy)) -money = money - loose -if money <0 then money=0 - -(na starcie każdej rundy gain i loose mają wartość 0) - -W czasie rundy, jeśli w wyniku strzału oddanego przez czołg inny czołg zostanie trafiony, czołg oddający strzał "dostaje energię" zabraną czołgowi trafionemu. -czołg oddający strzał: -gain = gain + EnergyDecrease -czołg trafiony: -loose = loose + EnergyDecrease - -gdzie EnergyDecrease to utrata energii w wyniku trafienia. - -Oczywiście jednocześnie trafiony czołg traci ilość energii zapisaną w EnergyDecrease, z tym że tutaj strata nie może przekroczyć posiadanej energii. - -Uwaga! Ekranowa reprezentacja pieniędzy ma na końcu dopisane dodatkowe 0 więc faktyczne mamy 10 razy więcej kasy niż wynika z powyższych obliczeń :) - -Jak działa trafienie. -Każda broń, która skutkuje eksplozją, ma swój promień rażenia (ExplosionRadius). -Po eksplozji każdy czołg w jej zasięgu traci energię. -Działa to tak, że obliczana jest odległość trafianego czołgu od centrum eksplozji, zmniejszony o tę odległość ExplosionRadius jest mnożony przez 8 i w wyniku otrzymujemy EnergyDecrease. -Czyli w przypadku trafienia centralnie w czołg: -EnergyDecrease = ExplosionRadius * 8 -a z każdym pikselem dalej od centrum ubywa o 8 jednostek mniej. -Nie wiem czy to zrozumiałe - ja rozumiem :) -Przykładowo, jeśli czołg zostanie trafiony centralnie przy pomocy Baby Missile - odejmowane jest mu 88 jednostek energii (11 * 8), co także oznacza, że przy trafieniu tym pociskiem w odległości 12 pikseli od czołgu - nie traci on energii wcale. - -A oto wartości promienia rażenia (ExplosionRadius) dla poszczególnych broni: - -"Baby Missile" - 11 -"Missile" - 17 -"Baby Nuke" - 25 -"Nuke" - 30 -"LeapFrog" - 17 15 13 -"Funky Bomb" - 21 11 (* 5) -"MIRV" - 17 (* 5) -"Death's Head" - 30 (* 5) -"Napalm" - x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) -"Hot Napalm" - x 80 (zasada taka jak w Napalm) -"Baby Roller" - 11 -"Roller" - 21 -"Heavy Roller" - 30 -"Riot Charge" - 31 -"Riot Blast" - 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) -"Riot Bomb" - 17 -"Heavy Riot Bomb" - 29 -"Baby Digger" - 0 (60 - jak w Riot Blast) -"Digger" - 0 (60 - jak wyżej) -"Heavy Digger" - 0 (60 - jak wyżej) -"Baby Sandhog" - 0 (60 - jak wyżej) -"Sandhog" - 0 (60 - jak wyżej) -"Heavy Sandhog" - 0 (60 - jak wyżej) -"Dirt Clod" - 12 -"Dirt Ball" - 22 -"Ton of Dirt" - 31 -"Liquid Dirt" - 0 (może warto to zmienić?) -"Dirt Charge" - 0 (61 - jak wyżej) -"Laser" - x 100 (ale tu także jest inaczej - równo 100 tylko w przypadku bezpośredniego trafienia, zmienna ExplosionRadius nie jest używana, więc nie ma mnożenia przez 8 - po prostu odejmujemy 100 jednostek energii - czyli czołg zawsze ginie). - - -Duże punkty otrzymane przez gracza to ilość czołgów, które zginęły wcześniej niż on. Jeśli któryś z innych czołgów skapitulował wcześniej (Biała Flaga) nie jest doliczany do tych które zginęły i nie daje punktów. -Tylko te punkty decydują o kolejności w podsumowaniu - - -A teraz bronie defensywne: -"White Flag" - powoduje poddanie gracza (może czasem przydać się w sytuacji beznadziejnej). Zaletą jest to, że poddając się nie dajemy dużego punktu przeciwnikom i nie powodujemy, że któryś zyska na tym, że nas zgładzi, ograniczamy też stratę swojej energii czyli także kasy. I tu także ważna uwaga - to jedyna broń defensywna, którą można deaktywować. Wystarczy ponownie wejść do inventory i jeszcze raz wybrać jej aktywację. -"Battery" - w momencie aktywacji doładowuje energię czołgu do pełna (99 jednostek) i jednocześnie jest to jedyna broń defensywna, która nie deaktywuje innych broni defensywnych w przypadku jej użycia. -"Hovercraft" - broń umożliwiająca przemieszczanie się czołgu. Posiada własny zasób paliwa a dodatkowo może być aktywowana wielokrotnie w czasie tej samej tury, a po jej użyciu możemy w tej samej turze aktywować inną broń defensywną i oddać strzał. Po jej użyciu czołg uniesie się ponad góry i za pomocą klawiszy kursora lub joysticka: lewo/prawo możemy przemieścić czołg na nową pozycję a [SPACJA] lub przycisk joysticka powodują wylądowanie czołgu w nowym miejscu. Latać można do chwili skończenia się "paliwa" (prezentowanego na pasku statusu tak jak energia broni defensywnej), jeśli paliwo się skończy czołg opadnie samodzielnie. Nie da się lądować na innych czołgach. -"Parachute" - nie chroni przed ubytkiem energii z powodu sąsiedniej eksplozji, powoduje że nie ubywa energii w czasie JEDNEGO spadania. Po takim upadku deaktywuje się i trzeba aktywować nowy spadochron. -"Strong Parachute" - spadochron z własną energią (na starcie 99 jednostek), działa tak samo jak Parachute (nie chroni przed eksplozjami) ma za to swój własny zasób energii przy spadaniu w pierwszej kolejności zmniejszana jest energia tego spadochronu (1 jednostka na jeden pixel opadania - inaczej niż czołg!) i jeśli dojdzie ona do 0 to spadochron deaktywuje się i dalej zmniejszana jest energia czołgu (tutaj już standardowo - 2 jednoski na jeden pikxel). -"Shield" - najprostsza osłona działa dokładnie przeciwnie niż Parachute, nie chroni przed ubytkiem energii w czasie spadania, chroni za to przed ubytkiem energii spowodowanym JEDNĄ sąsiednią eksplozją. Chroni jednorazowo, bez znaczenia jak silna jest eksplozja (czy jest to tylko "draśnięcie", czy też bezpośrednie trafienie atomówką) i od razu po niej deaktywuje się. -"Heavy Shield" - osłona z własną energią (na starcie 99 jednostek), działa tak samo jak Shield (nie chroni przed upadkiem) z tym wyjątkiem, że ma własny zasób energii. Przy eksplozji w pierwszej kolejności zmniejszana jest energia tej osłony i jeśli dojdzie ona do 0 to osłona deaktywuje się i dalej zmniejszana jest energia czołgu. W związku z takim działaniem, czołg z tym typem osłony można "zabić" podkopując go, bo spadanie zmniejsza energię czołgu a nie osłony. -"Force Shield" - najmocniejsza osłona - działa tak jak Heavy Shield tyle że połączona z Parachute. Co ważne w jej przypadku upadek nie zabiera energii osłonie ani czołgowi. Zabierają ją tylko trafienia. -"Bouncy Castle" - broń agresywna :) . Działa następująco. W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje "odbicie" pocisku w przeciwnym kierunku z tą samą siłą z jaką był wystrzelony. W przypadku braku wiatru i różnicy poziomów broń trafia wtedy w czołg, który ją wystrzelił. Po takim odbiciu deaktywuje się. W związku z tym, że broń ta reaguje w ten sposób tylko na precyzyjne trafienia, jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie trzeba będzie przemyśleć tę wartość i dać tu mniejszą). -"Mag Deflector" - druga broń agresywna :) . W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje przesunięcie punktu trafienia losowo w lewo lub prawą stronę chronionego czołgu, ale niezbyt daleko, więc można dostać "odłamkiem" przy silniejszej broni. Tak jak w przypadku Bouncy Castle jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie i tutaj trzeba będzie przemyśleć tę wartość i dać mniejszą). -"Nuclear Winter" - nic nie dodaje, nic nie zabiera :) - w zasadzie to broń nie tyle defensywna co obosieczna. Zasypuje teren opadem "radioaktywnym", który jest zwyczajną glebą. Jeśli nie mamy pod ręką żadnej broni odkopującej teren i do tego osłony (najlepiej jednorazowej), to po takim "opadzie" będzie trzeba strzelić do siebie - bo będąc pod ziemią inaczej się nie da. Ewentualnie pozostaje zawsze White Flag. -"Long Schlong" - broń specjalna :) - kosztuje dużo, nie bardzo w czymkolwiek pomaga (poza ewentualnym odkopaniem się ale tylko przy niewielkim przysypaniu ale fanie się nazywa i wygląda :) - Można ją aktywować niezależnie od innych broni defensywnych i pozostaje aktywna do końca rundy (nie da się jej deaktywować). - -W związku z odmiennym działaniem broni MIRV, Auto Defense i Mag Deflector wykorzystują tylko funkcję osłony przy trafieniu tą bronią. - -Dodatkowo, żadna z osłon nie chroni przed Napalmem. Auto Defense czy Mag Deflector przy bezpośrednim trafieniu odbije je lub przeniesie obok, ale wystarczy trafić bardzo blisko czołgu i nie zadziała jego osłona. - -Bronie White Flag, Hovercraft i Nuclear Winter po aktywacji wymagają uruchomienia, jest to realizowanie przez "oddanie strzału" po aktywacji tej broni. Oczywiście strzał bronią ofensywną nie jest wtedy oddawany, a jedynie uruchamiana jest wybrana broń defensywna. - -Można mieć aktywną tylko jedną broń defensywną w danej chwili (za wyjątkiem Long Schlong oczywiście :) ). Zawsze przed oddaniem strzału możemy zmienić decyzję i aktywować inną broni defensywną czy też dezaktywować White Flag. -Oczywiście aktywacja broni w momencie kiedy mamy już aktywowaną jakąś inną powoduje utratę tej poprzedniej (nie ma zwrotów :) ). - - -Bronie 'inne' :) : -"Buy me!" - tej 'broni' nie można używać w rozgrywce. Jej zakup powoduje wylosowanie jesdnej z broni ofensywnych lub (żadziej) defensywnych i dodanie jej do arsenału gracza. Jest to loteria w kktórej można stracić (jeśli wylosuje się broń tańsza niż cena "Buy Me!" ale też zyskać. Jeśli wylosuje się broń dużo droższa możemy otrzymać do dyspozycji broń, na którą nie było nas stać! \ No newline at end of file diff --git a/scorch.xex b/scorch.xex index 0810c801fc3cebe38403c23b9af6595160d316c9..4f3a1900f0dedd6813a9f137903d875f10b43b34 100644 GIT binary patch delta 16 XcmccJ&3wC?dBc7`M#0So{G`hPKwSp) delta 16 XcmccJ&3wC?dBc7`MuE)-{G`hPKvxFz