From e2fff8a4ee40fda45549942ab6368f91bd0f3d3e Mon Sep 17 00:00:00 2001 From: 4am Date: Sat, 10 Nov 2018 08:36:36 -0500 Subject: [PATCH] . --- res/attract.conf | 2 +- res/demo/PITFALL.II | Bin 0 -> 32520 bytes res/demo/SPARE.CHANGE | Bin 0 -> 19699 bytes res/demo/SPARE.CHANGE.A | Bin 0 -> 2048 bytes res/demo/SPARE.CHANGE.B | Bin 0 -> 2048 bytes res/demo/SPARE.CHANGE.C | Bin 0 -> 2048 bytes res/demo/SPARE.CHANGE.D | Bin 0 -> 2048 bytes res/demo/SPARE.CHANGE.E | Bin 0 -> 2048 bytes res/demo/SPARE.CHANGE.F | Bin 0 -> 2048 bytes res/demo/SPARE.CHANGE.G | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.H | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.I | Bin 0 -> 6144 bytes res/demo/SPARE.CHANGE.J | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.K | Bin 0 -> 6144 bytes res/demo/SPARE.CHANGE.L | Bin 0 -> 6144 bytes res/demo/SPARE.CHANGE.M | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.N | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.O | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.P | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.Q | Bin 0 -> 6144 bytes res/demo/SPARE.CHANGE.R | Bin 0 -> 6144 bytes res/demo/SPARE.CHANGE.S | Bin 0 -> 6144 bytes res/demo/SPARE.CHANGE.T | Bin 0 -> 3072 bytes res/demo/SPARE.CHANGE.Z | Bin 0 -> 256 bytes res/demo/SPY.HUNTER | Bin 0 -> 34169 bytes res/demo/_FileInformation.txt | 24 +++++ src/4cade.a | 15 +-- src/4cade.init.a | 4 +- src/parse.prefs.a | 169 ++++++++++++++++++++++++++++++++++ src/ui.attract.mode.a | 2 - 30 files changed, 198 insertions(+), 18 deletions(-) create mode 100755 res/demo/PITFALL.II create mode 100755 res/demo/SPARE.CHANGE create mode 100755 res/demo/SPARE.CHANGE.A create mode 100755 res/demo/SPARE.CHANGE.B create mode 100755 res/demo/SPARE.CHANGE.C create mode 100755 res/demo/SPARE.CHANGE.D create mode 100755 res/demo/SPARE.CHANGE.E create mode 100755 res/demo/SPARE.CHANGE.F create mode 100755 res/demo/SPARE.CHANGE.G create mode 100755 res/demo/SPARE.CHANGE.H create mode 100755 res/demo/SPARE.CHANGE.I create mode 100755 res/demo/SPARE.CHANGE.J create mode 100755 res/demo/SPARE.CHANGE.K create mode 100755 res/demo/SPARE.CHANGE.L create mode 100755 res/demo/SPARE.CHANGE.M create mode 100755 res/demo/SPARE.CHANGE.N create mode 100755 res/demo/SPARE.CHANGE.O create mode 100755 res/demo/SPARE.CHANGE.P create mode 100755 res/demo/SPARE.CHANGE.Q create mode 100755 res/demo/SPARE.CHANGE.R create mode 100755 res/demo/SPARE.CHANGE.S create mode 100755 res/demo/SPARE.CHANGE.T create mode 100755 res/demo/SPARE.CHANGE.Z create mode 100755 res/demo/SPY.HUNTER create mode 100644 src/parse.prefs.a diff --git a/res/attract.conf b/res/attract.conf index 072ce3612..b82418255 100644 --- a/res/attract.conf +++ b/res/attract.conf @@ -1 +1 @@ -# # Mega-Attract-Mode configuration file # # Mega-Attract-Mode is split into modules. Each module can be a # short slideshow or a self-running demo (like a game's built-in # 'attract mode'). Modules are run in the order listed here, one # after the next, until interrupted by user input. The last-run # module is tracked in the master prefs file. # # Format: # key=value # # value must be one of # 1 for HGR slideshow (key is a file containing a list of HGR graphics) # 2 for DHGR slideshow (key is a file containing a list of DHGR graphics) # 3 for self-running demo (key is an executable binary file) # # Blank lines and lines beginning with '#' are ignored (like this one!) # A line beginning with '[' terminates the parsing # DHGR.CONF=2 FAVORITES.CONF=1 #SHORT.CONF=1 #SNEAKERS=3 EFG.CONF=1 #WAVY.NAVY=3 ACTIVISION.CONF=1 CD.CONF=1 BRODERBUND.CONF=1 T.CONF=1 ATARI.CONF=1 SIERRA.CONF=1 PQR.CONF=1 DATAMOST.CONF=1 MNO.CONF=1 DATASOFT.CONF=1 S.CONF=1 MICROFUN.CONF=1 AB.CONF=1 PICCADILLY.CONF=1 HIJKL.CONF=1 SIRIUS.CONF=1 [eof] \ No newline at end of file +# # Mega-Attract-Mode configuration file # # Mega-Attract-Mode is split into modules. Each module can be a # short slideshow or a self-running demo (like a game's built-in # 'attract mode'). Modules are run in the order listed here, one # after the next, until interrupted by user input. The last-run # module is tracked in the master prefs file. # # Format: # key=value # # value must be one of # 1 for HGR slideshow (key is a file containing a list of HGR graphics) # 2 for DHGR slideshow (key is a file containing a list of DHGR graphics) # 3 for self-running demo (key is an executable binary file) # # Blank lines and lines beginning with '#' are ignored (like this one!) # A line beginning with '[' terminates the parsing # SHORT.CONF=1 SPARE.CHANGE=3 DHGR.CONF=2 FAVORITES.CONF=1 #SNEAKERS=3 EFG.CONF=1 #WAVY.NAVY=3 ACTIVISION.CONF=1 CD.CONF=1 BRODERBUND.CONF=1 T.CONF=1 ATARI.CONF=1 SIERRA.CONF=1 PQR.CONF=1 DATAMOST.CONF=1 MNO.CONF=1 DATASOFT.CONF=1 S.CONF=1 MICROFUN.CONF=1 AB.CONF=1 PICCADILLY.CONF=1 HIJKL.CONF=1 SIRIUS.CONF=1 [eof] \ No newline at end of file diff --git a/res/demo/PITFALL.II b/res/demo/PITFALL.II new file mode 100755 index 0000000000000000000000000000000000000000..efbf0bbb6e79385be25d12b60402a3471385b04f GIT binary patch literal 32520 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 literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.C b/res/demo/SPARE.CHANGE.C new file mode 100755 index 0000000000000000000000000000000000000000..7b4b5062d4fb6bbd2230f1cf390167f97b3ee7ab GIT binary patch literal 2048 zcma)6Z)g)|7=Ln?#LLB+T-&s@)%iBA{;A69f}7Ko%COAZx1;LHrc6BqKj>B{xQY%s zuYXdV_L7^IGG&S(nBj#+;s>V#t8O1QqvFDbxG@I7R;?&mT!(a`xjlE+Ne6z|?|Jk5 zzvq45d!Af!i3vexnPPMMq~Sdw zEGMQ?sa6CziMz^MB)KRgCYMSXo{WZWY>{$klH7CcT!?UCV_lq7#MtSmlYSS9`J=o0 zU46V5n-dMwpF*)^(QwG#J>cvXW6h|}?HQ=)5%EZ5!dRkFU{d=vMEpJEM#wm7MOY-3 zjfb}E_}wNkcvrNQ_J&Vf((jFAO^n>rFP#YY+Dfw%PYe3^NUw>JalP<#B5NztUkJ?6 zM-1oyU~}tMDU+MF5t$k{Y%2%zqi(YiOwUJtI zy?+$z#a;K=pzC{Hdnntx<+(kYB0Ia~nx6P*#*Q}@u~*T&Syr6v*H<&OJ6DGo>9RX- z*ZgB+726@`iZc~Eii5n!I*$Fe|LZS%t#vHa+v4~fU$F&2sIK<={U9Lu!7msx5D0)E z2*?9Q5}Kwobf1B;@H;2OkzmR|z!ODhod+-D z@c{A|XzMDr^QW|iitR44;#25f3@?LoG2?N+gj57Ua3BSXi;z#NEP`pgd&UxQ6uSU= z-IcDyB-)N{KJwldw;sR&q*Jh9-2lpsE$5+i>(&#mz=1YAd+P^tt|uU2tVG+!&Fx*o z&kAr5{FkH9(}og`+`J8qoxYejCPy3lSN*DW|CC!WYfNE5dQGLjsPv3VyH#4Pl7yk-nTruFUyqE5nggF_f_yB2Gu)wS zIKhUnnL^YS%L^k~M6Qj{2WqUgf7DE09OQAIf+{~$$#E6`Po^qrjZ>1f`XEows@ifa zZ9LbA1+S@bzGBC0JkK>e>Dj5-IQLle+bOOnkg5oFJz)x-2wgG5gSWbqF66z&R9Fc( z7WA1a<`zbh3nOXBu({euQrAWO3BI`@7?LhX7qUayA!+D|o~zrJE8vIC4Q>V)H{<4b zjt3o9HA6GAifLw=xwYI{ba< zhQh4$oK)#)LCU65MMKYnIJO4xOJtFyS>Gen@t=&p**^yc;|_UbFkUI=2jf-pqrs$G qlK&h`&X(lyK};#3w+5*s)7FnD3{aR!p`5}l3hIWA;^LB$V*5X{ZQe%! literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.D b/res/demo/SPARE.CHANGE.D new file mode 100755 index 0000000000000000000000000000000000000000..66b6fc7b1dec217c79a8d10bd013b1748ddaeeed GIT binary patch literal 2048 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 literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.G b/res/demo/SPARE.CHANGE.G new file mode 100755 index 0000000000000000000000000000000000000000..a7478c8ca99d4597a846c8a484b52d52097e1cc1 GIT binary patch literal 3072 zcmchZPe>eB9LGnaX4m~Uv%9YADxGHyH6#HaO=v9>hcICh( zzg#0vu6d80_e_sDQzp?&?^1<(OO-!7R(VdeB{3`{n`k%uUzsx^7HOOBw%Ff3_>fhi z56VnVxHG~^=h=nH>3@96 zuv-3z%#&f^Jtx=6n0{T?j>K>9v$?t1-`~#d3^%(Bah)t{wLELqauPdCk!+;Bw-PA52>;6%ZRfD-}dI5-{Pbb!+iP8&FF4QHUOtG-8rZMk}U z8u$?Kv%ud3ejfN3@V9|q06qbH68IGGY2cTETfnaXp96js_&o3h;ETYQfv*5x1HKNt z3VZ|jMth>Zh8rEPK&&_7Ssaqv!MD} zQ2i{ZepXohTC{#{h1E~SVf72*X?41GWt_?ff8(yL>HM-TV;aPkinSn~gLnbr6^Pd% zURLpHaPQ*FTt0IRc=hG@q5aV2HO@8uZ}F?aT*CiBmj{W2>36z3W3|z5nn%BC9{sX; z^o!^bLkLfVw)Ah7W&rv=Rr1B+gN+}kMizhK3pqG^OUC&M!1qEX_oR#B2imsstY-0gu8HprYSdLMz}{(9*7y?4xXVo z$_HacxWDqrgQ`KFqXjXf8uY1PNe5Mf9+I(Y(2A=Dt+;B?imL{#xN6Xfs|KyOYS4pKTrgeCm;dAb`=SlZUV6=1QW8TF`H;2N$sT% z3~1Jv=p-g4GmR!n5TmP(8bd%ZBt3Yrmj*A!gF&K&1BXJ42SviqH#7Ubtj04t&E)(0 ze13gz=gr&QX==_H&-uo4&U(#R=bYz!>pADWrqp0nus=RN0&YoB)Q1@|OL8jkCSL;7->MOV(`%So=da-OKq z{>`1gePi$|v+=i#ja#-kQ$6nbvh|GT%f54-{fArK>^4uxshd~jY^jp%V6qsp^7T^NE%g-7gm1%i6`xr7LdjqpS1w#hAZ$uI4{EC#%P6 zjjJ{Lrz7^SN1B(NC(2FFnJn8{xw*eV&6&nuO|Nm&)@G!ZO*LCP?*HOB+vOt7(?z}Z z>4m4fM)!rf7f!ga-K%c%cJ1ExpTBy&e(2Dl0|yRNtJR%5caDvXjaSM{t4#7W@d>^v zu2rJ?AYUI3n5r+?FWFmU-%b0dJc?T0PG_Q4ilbFf+1 z3@n4~h3$b&!6so7uyNRBuwAe**iP6ESWQ_9Ucm}!bmyQ>tI%4Rq?K=_EZ6|pFxXnK zjbPirc7RQQO@ciQ_AJ;7U{hcMOsr7XBueUHtCkiBdoO|6ujE^8BJ-rB=V4{qt!K~cM?rhvWgow38u= z!Ny<>*e=*E*k!PB*f?xAYyvg`n~-lZnm0(%d;b3JV%A)<#v`UR?n)FQTHUzeZ(Tl1~>4I7G zGD<_FO?pL@rY~_(a&fO zr6EcdeXq*2E>@WI14=_!jDA*SMi;h4izp2-Xws4@v$_~!^e0L~j9`Uxx>$)7&KYXq z^YTVVw;&Hz04sp?f%S!KNZzz!$cBRyvJshm_Ufjt1W8Eh-qgJ9dhwu3zcHU>5hRsnlBNWlkX@DZdPNRPJCYn9vK z5B%LZ)#)(b!f78XzRAMx<~rZRX(A|7!B=&Sb57$Z_w#j}Hlp0aS94m6@-aTbX&7aN z+nfe^i|?>}Fw_=a;?&nu^jIM%IWKbRHPi1!b~Vp&%9`c}k+nIK&B^qKksaX~PUU3! z{ej|$-NuqWd3 t!2!H0?1{L1i~u*<#)-9!6KfksK4PH1qir1dzyYq`87F`gobKKZ_y@1#bb|l@ literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.I b/res/demo/SPARE.CHANGE.I new file mode 100755 index 0000000000000000000000000000000000000000..02f8fd63021f3a88a6637a8210494b8290423d2c GIT binary patch literal 6144 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 QsNc!0?)jnti@odp3%A+?h5!Hn literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.K b/res/demo/SPARE.CHANGE.K new file mode 100755 index 0000000000000000000000000000000000000000..ab1d613187b2e455cc7b733bc89f35c4a8e177df GIT binary patch literal 6144 zcmeHLdu$xV8J~Oj9_w?wXZy~3_TBB|DToAw7)YuFa#fp#G%F>6hR~>_n?S;aXCy-# z;-HL8wm}V(7^l87r4c7nLnihXLn9zm7KT2Q>mxcsTcxd_7BwLxaJg1(1u13w&Ft;@ z&OD@+{?R|W9+d znaqGE6P&!60YA15|0$FIurzbD!T1L}8Xw?>omzLs1nIL`6LiP2_^%o5stn74Yjzr( z>%56oYNBBRPc*>q7{#@tnKIL01i2{*=Q_0$8Qrw3;$-FrlbH!r@D$(7=tHOTxZpLv zGOnBJ#sRI=jng_lwF|$oi%rn$RFap69~rwLYXryAS>f=+(yX>5yJGeFX(gRbZ`!nJ!-fr-rY&E-{F-a7S(Z{|l)8Sw z{J^RO^8zSkNIk2 zi|XK1eX$X@1nSzG!x5L;9jZGY9%AiS} zEmr`Ktp!d+n=-IXLmS!Zl0t%Ms0KpjFvw%i)sPmc+ROI0!1P&3SF;uW=GfYp}&vzR!e z5HWFph=~JuOqweIVj??$$E48#JUPp`Fnv~(>5T53ilaw%PXXl2ikLiSCO>)dLNli( zuZx3%;;Whw%V4&CSI1a!E41feq+JMKvwg!v@=`#f&eWm~( zw&*pNwOZ>p@d+&ndp5M^h_fN9GNHD3wGi9>Kn(Cx#4BpW06$S&>65>KdoA}UkQ88C z%veAc;3WZqvjlj#8rXvhwAcp32m#b%h@>2aE(754ipVV-!0QG~v)p6@o(y4G1`uqp z7aDtFlhr`32IZV_=3iu!Gyflblbxii$y$*N6^1861@L6B2Uku8u}V3~AXg`YT%8PZ zbutJ8PBK&gPlgKMu@=Ayya4}Z;ANgZPT*|={|`KWKgC;EiS_?r;N7xYybF!+E+99u zfecCE^_D@nnrY(c;>emY{JOE~9AOJA7HMGl;s|*f5o|>q6|Bz@x7M;sxoz2JOt5}O z+*ZrB*S3udHsFX8wQRDstt!}hM~rLPnYC?a2{z=2XVFh!deNi$&F?R2#cM~wg?E>W5YH9A%6fiyO9kcg8-(yWe7P`4ecyybyz!# zwmWU@Ec$e4f4yLUws=`;VM=tvhVxVW$4Z4=1wZJk;KEvVV`^13yR4SIJGHTzU6n%B z@ct4?eJJ(-|Am{qso^`H?R@9cSGDt506U*PvGZXm*aq6WpU<{yNulZck@D`#xjQAP2i9w-&IAI}t}Z1dp@FY3s~!!ZEbo)|r9lKwm`)iXq) zPF662l3|42zMt)w^Zi~ppeuk$qn`XKz+DL z2}PpO*49W%0ExeVeJxUo9g5k(-M(uM$D~urHbgrV)5#Z_wy_C?)2!5rVD@tS{Fj{};+K0v_$f47OA>QC^!^J15 zyguCChM^d3rHhMog!i|u5EkjcGeEe~P#ZpePr+w*4-j;$;NhCCHoT)v%eLXkcHDRn z-`S4Owd)*&4&p~_@SPa#7ksiG2!?cs#b)RTy@b$CLN^h56QLUk-A?EnVz><12pdh* zO$>$JK#W!zCG={F1-=@B9SarSK*wYPt z{5!$P{+tV6{R}^S(+55HNc*77Z&7}m$1G!V>_8tJH9g#CNMpTy7dMu|c~^-aa}5QR zZ2>s-%5~~s>1#Z4_Yit7VG{j1aZb2ukG;nAaUBYMD}FdHl|p&76v&5r{rSkKrx+ml zU?DK*!y6J>XFMM&Nch%7$(?KCsHISkJL4w;BqzvL5C+OZr7(NY56`x`9b^K6y=} zf&^WXpkGSRNP;`NJVBQx=!yi5CcqiqLf0fd-WlGq(z@Js_i>LC9is=i%XmWHzd2!s z$>O*Da89Y40dlcRM{9DWRPV$BQh*Xj?HE0SZ|pse7C(6SIKruGNs5fa(gqhC6>i?V z`R1E%zJ*^~;M&TsTlqCKG=z}23FA6})!3WXzM9nYFBO_#=DlflC-tRs1I62j)|$+} zTxeu#rfRk3WPZGG($t~3k3#dD!?Bxk16nKzvvUPo1xY+KS-QwvOCUL1r7OVjTB6;Q z9IDF?m;7dk0(uj zsEolQYX<-yw4EwmtLBS^M)=2%nBguVtxeT7t7pZv_-&UYNpy#5N{F9C-=jjBgMgnl zU#E^-r;hW}=Id2Gf4f>p(Pu1TLZCQKS|M$0=uqf&T=eF|c{;p~U?<$^DM^37F?*CQczghTyPQ|a39fMBS H=kx1d;j#h- literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.L b/res/demo/SPARE.CHANGE.L new file mode 100755 index 0000000000000000000000000000000000000000..8abfbf9972b8a22ec2dad8998da295ad5fc0f30d GIT binary patch literal 6144 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 literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.M b/res/demo/SPARE.CHANGE.M new file mode 100755 index 0000000000000000000000000000000000000000..7f37c6140a94bacbfa0486fdee99252ed976102c GIT binary patch literal 3072 zcmbuBPiP!f9LHapgzm1B?QF97BNpccBnuHqh**`D-9?G3WN?d7SEAHeB6T5$C?SMq z+nB0b4`uKm%mh4GDk7_l^-x<|3FP7-2SYA`9uk91g6$#A!HZS;^Y`AHdGjV+gU}=l zzwdm$zu)h@nKwUDC-xQB{@%5(y7dM7nrr{y+SlDWsWs8K>#e&rpa)z!+zBvw%K&BlZQ>V9PA@} z^oFy1cenT3w%Xqq*8ZVwv*uaHL+cgSL*F%*{^^)UocaZ9UEjv$7E6KMb~`nXksV`K zN)DTs9iOz-;;dAHUYIgh9LodP*>t|ybT-Ip^UjuIeX+evS6jT7mn`p~ry1rq*WYk@I)S$$uzgC0#Z0)bQTf0NaEMhcSl$`Z`bM0gJkd|S!$@*&XRks#j zthl`4$}!hG>K2NnJ%5!-rCctLjg6V6IXpa^&1Q3XLnrys!T#9DU|)>ng+4Jj5M%cO zy-p|TQ|P-x&(NHHMkl-Y%YGIX7J7SI!Ri2`Glkb;g#Mtaq{7#QRQNiPp5Qc% zRQS?Jg|7qYB&Y32g|8i{@THInpDz3AvhN|J!k3hNld^A{?5oMXn(X_4?3<8%6S8kY zgHjfr;p<9tv-k-SYfzkqq4|M%sN(%X7W!!)4dPyEusG@|4Tm0#8+wY02jhmGg5trr zp{Hajz0Ag*qT<0=t&_|5=fz%3AUb>7Y>zV5E+sqJ_5<6cWEYgir1NW}q13)as+d1# zxuN+pMy1p~jaGJ%79{Qd1ZgO>kE4~(v%Y1yjE|6pQu`oU`8}2!nyZXTsa2Ew-31$D zvLI=9R5mh~Dsmaj9Lh%KV$>YUM&?4)97=A6#|DYTP9E#Zj_R%yY!v)|!S@KnKli+v zf51g)JT3fGa6&9`^zYXuN@LUg7usNLeO7>&Qpu!BCRFmaO2$?4rb=E{Nl7K6Dk-XD#3$?_Y6YKg z@vKU6YR*x$+LJ1ITqOf4c~m7Cm1Nlb4xUbijqu>5l^j$j#?LjFc1t^!;KxM0X*npqk7bnY?Kb?Xe>Qh65AK!t)id=jPI;c*0 KF4FJbfPVo$*RDAL literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.N b/res/demo/SPARE.CHANGE.N new file mode 100755 index 0000000000000000000000000000000000000000..eb2023ae734b69f58f7f5f1f0cdc6d5f91107d36 GIT binary patch literal 3072 zcma)-Z%h+s9LJwhD5YNECV%#-uU^yD?{)RMo*^j*Ez^zLdJ1TfPPgmkKBK6l zOWoCFkg06){(V)R!t^ltMi(1U03gD^omBOwNb#cysp7Z8aT|nh9em`$Q=#G zF@1DS%dRYK8uzCD#xV7Sdb?tMnt|4+3^1L=na?Zs&nliSKrMY6`ttrLWH-+@Nl3Gyc zZzt&=Co{9^o1u)ZwuC4NW!_0arYrR*qo*EI(uFdb6iWJx-*t62E>ae94&|H4xAj!n zWQWcNoZhX+>hxEe_pkbQbab@0x3{*o#$vI?#>V>k`e;K)CJim&7u`+aEpF0aa$9(t zo1M$^ZF-c}qVF;7rct?DCQJBZ+xhe7H*G2br3ymTmAG&2AbIwO@=P6z71Zx8*-%yO zlYM1XB@Z4}PS4(iDcoTJCA$o*KbZ!#!qh zHTN9k9zXZAnKAcl=W!MHn6Zz0YWaB|_n2{|FdtbMOXePOj?J@zd(608@RSSl@p4ZK zuP=50EIsw~3^ zOC3P9(hJ>IZZE37AoN*k0#%<3XRO@gs8)Gl&{8|slY~DALvi2>#ZiVY1+4bMS8?FW z!ql1|q(zkBQXIP3B)KZtF#wl70_;~yMf^}eG#>^c=AtSh=8A}Gl}Bv0i`LTdIfvka zb@?3q>=O9WF~qL>+`4>**m$a-V(;PN@MUKzw%>rDVh8q$=x58$Z#pw$AI1g5Ry@WB za`4r_Zp0fJJx5H$hCIyYY$EpL0TKPIRd{c(%GjCj3W&|QPeklb5qT>Xa?LJ%ioAgf zccILDcBpkz+`R2c0eR;au+(mL+08Dyxx{WRwwsIXW~bd;WH%St%?`Vn*v#ya%uhHU zukcso|JfOB$)zn>$C5KPn8p`+(Rk^|@~KDow&x#-HAZ)`_MSuSPM+JR7|vwYk!u`V zmo3gk$K-5jZr7METat@pi0VvciqwZm`cs-tq!&EY*~h{gX1Lgvyxg0db&We0dy|u& zrm>tdK0dw|H~KY>s4O6ELtK0V!*TtuXcg=iv8-NWpE!wQtq%OkGX59!g( zBcGfuJLOSELnFhnU(%y5j|_iS+;`U1r;IjX_+0P5?yA0g%z-(TWPwvpH8RQ zR0G2bH5n&uvh`JT_y>kA-h{hzvwWMo3pXzg4LJO>%THF|;oJb<<{rYzljT`Q4Loy; z;6@@lcSh^#A|%Kt5+tEWB;<5DO|GlwT(N=arNLU%qY~c;w&7O-AW zC3wS*%?#c6HDbBdz%gHH6=E){oLBLIWVxkQE{-c!UWF3u#atO5S3Xca*P5h-t11&q z4cIF`(@aaZdH9*3jM{8S|(p7>9-=U*zj1fdk7_;#?qDbJGxmEaz}RQV@{;aa$N1mprr z@aG{Y7jWSKNCM8agGa#G1K<|$_92@(bHtWA6Sq~K>9LJFa~gd4QlUyfoKo?{j^J^=x0sUZn|{1`S0IC&7Ns7!e-s^7i`{{YrBwu1lw literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.O b/res/demo/SPARE.CHANGE.O new file mode 100755 index 0000000000000000000000000000000000000000..3afd8508fff52ecae3c1c4ae971adfdd9415d07b GIT binary patch literal 3072 zcmbVO4Q$-x8TRFVa=D%pJLmjdC}*cFUD|Dml~q&GpiKuMKs}N*Frd>aS7IX4rn0Fz zO~kFZs=IX>b%~fb7oo;h(AK!Es{$3QKaq0FZi`2HXD*j@VH!jutqM}FnKm?081G*H zq;V=CO*qka-}64t`{VcXXMZ{&zp2Q-Q{=Z4{iu9SkuNCnc||9(0j^Fl-cz!`)hJw- z;*Po~6GQUdLk2NnWjW@zLMk4=D1>R6wvC#HJp$Jrdh~g zCIgdP$zdK>$9<49KVNJ=LuNn4Y4$UY91;%X43xg97^pj^aR1H;-^}S6rq-`wa?y5y z#YUOV;7pF%BS)+j&gMLZ%+}eVVw|>DDCR^1pt_Jdy^xzHtYGy@PW;VPle0p`qZ6X> z*aV`7#Ozg(`|CdLAN%xqc?YX2@&L;bto}q6^r7r0x{|%g5kp9$NaTnE#`}tV4>rjJ zD*|KG8H%k%S1N_G5 zc7A=7=yvfgzB6jumhgMrGu&p>-Q@OjTdDmNv50^6b@b@b_VzG{31FLO9Qy`|CCso( zmCj){ivU>XvM8+D2BjT_?-oeR}jH9w~WA_gEOX>^6HB1?hP%Gz^cn6T%JJs%J^ z;=IMtY!}z#yxFH|b~LVUlcRBc8AtP!*oAt=(d-gCah~vL8XZlS*oO8-N8|d^j%KrX zC)z1rF3Ojy!Hpx@b=Lbd^}aZyFIU{BiMtxdca@`Y>yP;~F-POxdn|7E!M*ob%W{8g zd)n*UDiQ|LUf<#=csvbHi9{DjaSDErhFv1j39qz;B$9;Po=jxT$ktQv zBaeLn*#;7xNyE3rb_$+HmP)~1k3EDeMZvRactBiB!9iqc683xSbI3NP;D84uWE&|s zDyX_3~V z7h3qGI4#l|^x6ZR{6>B$@)`zy`!uZQ+g(c&Ew$5dLIjpy?OGUC;#hd&Nw|Y=^(>6U zF);oZH1P@7lAtA)hN&kZ!8f^?L@C{@+ zZ>7UDboyY3g|GS{19$mgkcM_2tYP6!KV+cA2Lm)De2`$FVHsjy>NC{v(@)^fUN% zl$@_)b;F22kKla-~cx_%A{useu5JVjy5JALO{N#_-V~3Ee8~#|x zCv`$TmE?$4j>uI{C5=-_Gd{ei2jr7UIh^6BR)J`%o=jH58RKNq3=dz|$y<74IpPQ= zsD`3g@Ycnk@ROLZHmDKKfo1p;EN>!wrhYCNw7x$j)C4D|3i-@-tG#AyXYX54gFrsQ89=@r1 z>g$fWsvh~5I{Fn|I|lG)>gFh1n{Va+jzS`o2@&B;n22N|L~W+FBQzH32#$%R?w&%=-;-ZN4xLA zZIAT!c%1RY7m3$or95p+p0=;!voo{#>EoKSLT2$#+NHweRK94=Tq6B>^3&6$%QITB zRKAp-)~xCLoS(gHR;IKWt5mVWOumg_Ze__kS@N@$l2)EAVp)E_vDb9lI-^yl%Cj2g z&?fWcN~u(wS)qE}Q~kbd7XCOr=c+H|-z}_^z2V6wOT|jLgjME?h3OT6&U%XDm(8M< z*WN9Z-_~ZPN|%p2s$!{9I8TmYn0)aM+L$dayfbT-3)<{Vp^V|m6?4+G@)fgGT(P(R GAMiiOWfngG literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.P b/res/demo/SPARE.CHANGE.P new file mode 100755 index 0000000000000000000000000000000000000000..3753705092e75176279d7b82c9b4a9a1dd54c8a5 GIT binary patch literal 3072 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 l{+Sf77@WN-UA`)53*R4T2DV{AexpbHJ< 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 aD<(g=exKK`;ProQqW7G_ptG#|*yn%By4%tK literal 0 HcmV?d00001 diff --git a/res/demo/SPARE.CHANGE.S b/res/demo/SPARE.CHANGE.S new file mode 100755 index 0000000000000000000000000000000000000000..e4cb1e261801a109d05863cf080a9f53d6d5a0f7 GIT binary patch literal 6144 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 literal 0 HcmV?d00001 diff --git a/res/demo/SPY.HUNTER b/res/demo/SPY.HUNTER new file mode 100755 index 0000000000000000000000000000000000000000..a2931173186d0d503159b7f232f6da2794ae6d2b GIT binary patch literal 34169 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 literal 0 HcmV?d00001 diff --git a/res/demo/_FileInformation.txt b/res/demo/_FileInformation.txt index 12a2c5945..7e2170cfb 100644 --- a/res/demo/_FileInformation.txt +++ b/res/demo/_FileInformation.txt @@ -5,3 +5,27 @@ WAVY.NAVY.1=Type(06),AuxType(0000),Access(C3) LODE.RUNNER=Type(06),AuxType(1F00),Access(C3) LODE.RUNNER.1=Type(06),AuxType(0000),Access(C3) LODE.RUNNER.M=Type(06),AuxType(0000),Access(C3) +PITFALL.II=Type(06),AuxType(08E5),Access(C3) +SPY.HUNTER=Type(06),AuxType(0B87),Access(C3) +SPARE.CHANGE=Type(06),AuxType(2700),Access(C3) +SPARE.CHANGE.A=Type(06),AuxType(8E00),Access(C3) +SPARE.CHANGE.B=Type(06),AuxType(8E00),Access(C3) +SPARE.CHANGE.C=Type(06),AuxType(8E00),Access(C3) +SPARE.CHANGE.D=Type(06),AuxType(8E00),Access(C3) +SPARE.CHANGE.E=Type(06),AuxType(8E00),Access(C3) +SPARE.CHANGE.F=Type(06),AuxType(8E00),Access(C3) +SPARE.CHANGE.G=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.H=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.I=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.J=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.K=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.L=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.M=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.N=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.O=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.P=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.Q=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.R=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.S=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.T=Type(06),AuxType(9600),Access(C3) +SPARE.CHANGE.Z=Type(06),AuxType(B400),Access(C3) diff --git a/src/4cade.a b/src/4cade.a index aeb2e69f7..35134a9bb 100644 --- a/src/4cade.a +++ b/src/4cade.a @@ -4,11 +4,12 @@ !source "src/constants.a" !source "src/macros.a" + + ; first-run initialization, relocates code to language card and continues from Main !source "src/4cade.init.a" FirstMover !pseudopc $D000 { -!zone Reenter ; self-running demos should call this to exit back to 4cade +READ_RAM1_WRITE_RAM1 Main @@ -19,18 +20,6 @@ Main jsr AttractMode jmp - -Reboot - ldx #(@end-@start-1) -- lda @start,x - sta $300,x - dex - bpl - - jmp $300 -@start - +READ_ROM_NO_WRITE - jmp $FAA6 -@end - ; these routines will only be called after relocating to language card !source "src/ui.attract.mode.a" !source "src/prodos.path.a" diff --git a/src/4cade.init.a b/src/4cade.init.a index 09715ab54..6f1be4e8b 100644 --- a/src/4cade.init.a +++ b/src/4cade.init.a @@ -1,4 +1,4 @@ - sta $C00E + sta $C00E ; 40-column sta $C00C sta $C004 sta $C002 @@ -42,8 +42,8 @@ ; ProRWTS2 has its own function to relocate itself !source "src/prorwts2.a" - ; these routines will only be called once, from main memory, before relocating to language card ProRWTSBuffer + ; these routines will only be called once, from main memory, before relocating to language card !source "src/hw.memcheck.a" !source "src/hw.joystick.a" !source "src/hw.normfast.a" diff --git a/src/parse.prefs.a b/src/parse.prefs.a new file mode 100644 index 000000000..33320f4cb --- /dev/null +++ b/src/parse.prefs.a @@ -0,0 +1,169 @@ +;license:MIT +;(c) 2018 by 4am +; +; Parser for global preferences file +; +; Public functions +; - SaveGlobalPreferences +; +; Public variables +; - gGlobalPrefsStore word address of prefs okvs +; +; Public constants (all length-prefixed strings) +; - kGlobalPrefsFilename +; - kLastPlayed +; - kNextAttract +; - kNextFX +; - kNextDFX +; + +gGlobalPrefsStore + !word 0 + +kGlobalPrefsFilename + !byte 10 + !raw "PREFS.CONF" + +kLastPlayed + !byte 10 + !raw "LASTPLAYED" +kNextAttract + !byte 11 + !raw "NEXTATTRACT" +kNextFX + !byte 6 + !raw "NEXTFX" +kNextDFX + !byte 7 + !raw "NEXTDFX" + +;------------------------------------------------------------------------------ +; SaveGlobalPreferences +; save global options and state to file +; +; in: none +; out: all registers and flags clobbered +;------------------------------------------------------------------------------ +SaveGlobalPreferences + +LDADDR kGlobalPrefsBuffer + +STAY $FE + + +LDADDR @kFluff1 + jsr @addString + + jsr @addBooleanFromStore + !word kForce40 + + jsr @addBooleanFromStore + !word kForceUpper + + jsr @addBooleanFromStore + !word kScriptToFile + + jsr @addBooleanFromStore + !word kAutoScript + + +LDADDR @kFluff2 + jsr @addString + + jsr @addStringFromStore + !word kLastPlayed + + +LDADDR @kFluff3 + jsr @addString + + jsr okvs_iter + !word gGamesListStore + !word @addGameToPrefs + + +LDADDR @kEOF + jsr @addString + + lda $FE + sta @filelen + lda $FF + sec + sbc #>kGlobalPrefsBuffer + sta @filelen+1 + + jsr SaveFile + !word kGlobalPrefsFilename + !byte 4 ; filetype=TXT + !word 0 ; auxtype=0000 + !word kGlobalPrefsBuffer +@filelen !word $FDFD ; SMC + !word kProDOSFileBuffer + + stz gGlobalPrefsDirty +@exit rts + +@addGameToPrefs + +STAY + + jsr @addStringFromStore ++ !word $FDFD ; SMC + rts + +@addBooleanFromStore + lda #$24 ; BIT opcode + +HIDE_NEXT_2_BYTES +@addStringFromStore + lda #$80 ; BRA opcode + sta @skipOverBooleanLogic + +PARAMS_ON_STACK 2 + +LDPARAM 1 + +STAY @key + jsr @addString + +LDADDR @kEquals + jsr @addString + jsr okvs_get + !word gGlobalPrefsStore +@key !word $FDFD ; SMC +@skipOverBooleanLogic + bra + ; SMC (opcode may become BIT) + +STAY PTR + ldy #1 + lda (PTR),y + ora #$30 + sta (PTR),y + +LDAY PTR ++ jsr @addString + +LDADDR @kLF + jmp @addString + +@addString + +STAY $00 + lda ($00) + inc + sta @len + ldy #1 +- lda ($00),y + sta ($FE) ++ iny + inc $FE + bne + + inc $FF +@len=*+1 ++ cpy #$FD ; SMC + bne - + rts + +@kEquals !byte 1 + !raw "=" +@kLF !byte 1 + !byte $0D +@kFluff1 !byte @kFluff1_e-@kFluff1_b +@kFluff1_b + !raw "# 4cade preferences file",$0D + !raw "# Do not edit by hand.",$0D + !raw "# Or do. I'm a comment, not a cop.",$0D,$0D + !raw "# value=game directory listed in GAMES.CONF, or empty",$0D +@kFluff1_e +@kFluff2 !byte 24 + !byte $0D + !raw "# value=game directory",$0D +@kFluff3 !byte 58 + !byte $0D + !raw "# key=game directory, value=filename of selected version",$0D +@kEOF !byte 7 + !byte $0D + !raw "[eof]",$0D diff --git a/src/ui.attract.mode.a b/src/ui.attract.mode.a index 99f4c8f8a..9e1e63aea 100644 --- a/src/ui.attract.mode.a +++ b/src/ui.attract.mode.a @@ -71,7 +71,6 @@ AttractMode bpl - jmp $106 ; jump to pre-launch code -!pseudopc $100 { @prelaunch ; this runs from main memory lda $C088 ; entry point used by some self-running demos jmp Reenter @@ -89,7 +88,6 @@ AttractMode txs jmp (ldrlo2) ; jump to game @end_prelaunch -} @Slideshow ; HGR or DHGR slideshow pha ; save module type (1=HGR, 2=DHGR)