G@L|}6CD l0C)HCC WhL/h `CmCDiD`  R@WG1  Y0@R !L` D  C D     G)16CS S)  C)D1 p p 0 C9DI pCDL~CiCDiD`G D  C D     )16CS S)  C)D1 p p }G0 C9DI pCDL~CiCDiD` DD˙` d J)L !}GD L(( LL()  L| L( S LH 0p n  }G CY?  q  L L  ` )}G `A! d߰")-݆ "  $G@LLL&0") $G% } GH0 3S8`G ȱG ȱG   Gȭ Gȭ GG}GHiH8(()) G$H% `(0 } G)8` d)L ݆ & LGȘ ݆LL d  ! LL d)N>Q  HH) } G  hyhyB q L> Lm JJ  Ln*` dB%' } G8  H H` 1 { LL   !L     Hh SY?  q  1L } G  !? S   q 1 L   Ll  Lg E`L   !L)  q 1L}G) `L0AM݊L݉ ML  N݆LLLNLMLHG!@}G1F GȱGLLEEȩÑEȑEEȑE Ed E7EȩE  q}G L !,0,0SGɛ L 1 !L EHEh W G gLLSROTCES EERF }G G) *Gȩ GȽG GȌd q q G`  8   0G  `D}GCEDC0X:Ȣ Y ȱC* ? 0.. , 0%n ?A[ 0 : L`L  `, 0`Y}G`piH n0)բY? 08`0 }G  0$L GGȽG L `8L`L}G8`  05G)݁,G)ȱGȱGHh0})Hh` B! 8`8iiiLE`}GE8FEh( l0`ɃLL L8^~jj8jHi hEEEiEȱEiE` dTE}G H8EEȱEEȩEh J E8   . m  i`LI!)E1FR}G1LJ舩9GIH`LJJ`HGHh l`}G S gL   8 rii `дCDCG W  }C#C  Lq` X٨`DOS( ySYS IIIIIIIIIIIIIIIC`0 ߩ0}}~}C HE %|+-3G||DDOS PVDOSDOS[ `SYS sx}~}C}~}C CDOS SYS~}CV 0`BDELV !B }G`LVUQ   ]   TU J ]L!T  #      TU  } G L ? .  t`GBJ V~DEHI B V0dV!}!GQDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}"GDEL8HI   0 HI,0 0  9 .G VLO#}#G,0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$}$G V0 0`B;DELV䌚 !B y`@ʆ v s? F0Ξ05: [ BDEHI%}%G VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}&GSTILL RUN DOS B;DE J V (` 9 V⪍ ઍ  -'}'GLLu DEHILV 9 .l 9 .l  `` s$B VBH(}(GI|DE V BLV nB,DE J V* \*` B V BLVDEHI BLVL)})G1u H232435; 1 ;  hh@2 e1i1LHҍ 00) 08 109hh@ Ҡ2e*}*C)1i1232435ޥ<<823Z\}}+G 3E:}DISK OPERATING SYSTEM II VERSION 2.0SCOPYRIGHT 1980 ATARIA. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDGE J. D,},CUPLICATE DISKC. COPY FILE ^K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILEb M. RUN AT ADDRESSF. LOCK F-}-CILE )N. CREATE MEM.SAVG. UNLOCK FILE- RO. DUPLICATE FILEH. WRITE DOS FILESW9!&x#!7&p))'&X*./)L''-؆莟.}.GR'S  vW DEHHI 1A#! @ ~0ɛ8A0.) ȅ 1 1i/}/Gil ! 1L NO SUCH ITEMSELECT ITEM OR FOR MENU! 0 .{z:*{}.|~ 1 0 00}0GJB 18L^%|DLl%DIRECTORY--SEARCH SPEC,LIST FILE? # 0 0 n&|D! 1L NOT A DISK FILE1}1GN !B 1L " 1 !BDED:}:1BJ|DE 1DEBH2}2GI 1 h0ߢ 0.  0?詛 1 ~0YЛ 1 "L<" "L 3}3CS BL1TYPE "Y" TO DELETE...DELETE FILE SPECCOPY--FROM, TO?OPTION NOT ALLOWEDjy COPYING---DN:}4}4C # 0|D .L$A#B#C#JB|DE 1BHIDD#E 1D#0: B5}5G 1L B#C#C#B# B 1N#$0SYS1}:e#D# d# D# .d#ȽD# d# 𩛙d#X# 1,A#6}6GPdD#ELO- A.BJdD#E 1 1HH 0hh|DL^%1}:e# Lt% e#dD#EL%7}7G 1 0 . .0% 1L WILD CARDS NOT ALLOWED IN DESTINATION 0 A.|K@C}>G//3Hu ξL/L DRIVE TO WRITE DOS FILES TO?WRITING NEW DOS FILESTYPE "Y" TO WRITE DOS TO DRIVE 2.?}?GD2:DOS.SYSERROR - NOT VERSION 2 FORMAT. , &* բ( 1L `[) 0NΞ 0 L1M) 1@}@G L BAD LOAD FILELOAD FROM WHAT FILE?) 0 0#B 1L WHAT FILE TO LOCK?) 0 0$B 1L WHAT FILE TO UNLOCK?DUA}AGP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO USE PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV. h  ,B}BG  `)  <0 2 2 0  ,   ,,ޢ* 1L ,K* 1 ~0 0C}CGFINSERT BOTH DISKS, TYPE RETURNERROR - DRIVES INCOMPATIBLE., 1 ~038  , 1L D}DG, &*  Lz+, 0 , 1 ~0 + Y,0!,0 ,L+ ,mm  v,"ǭE}EG0Ξ, 05,Lt+L +,Hh` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNF}FGINSERT DESTINATION DISK,TYPE RETURN`    `L,8,0( rG}GGL1(`ߢ) 1* 1 ~0Y`hhL S SL1) 8`NAME OF FILE TO MOVE?- 0 0|DLtH}HG% A., 1 <0 0 .@L# .BJ 1  DEHIB V L1 ,5 1 <0,L. I}IG JB|,A#Pd#DE 1 HI BDEHHII 1 B 1 , 1 <0,0Lf- B VJ}JG,A#P, 1 <0 0L#L ߢ) 1* 1 ~0Yj383}mm ݭK}KG}`8}``|* ? ɛ,`|:(|/ 1L `DESTINATION CANT L}LGBE DOS.SYS0 0H{ $22Δ $28/L /) $2 Π $2 0 ξM}MGhAΞB,0 J 1 BޝDEHI,HDE 1HIHIDELSAVE-N}NGGIVE FILE,START,END(,INIT,RUN)O X0 1`BDEPHI V` X0H 1 L O}OG0 0 1L0`PLEASE TYPE 1 LETTER,0`hhL <0 1L0LA1 ,;ɛ7,"ɛ:ݦ1ݥP}PGA"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{Q}QC?NAME TOO LONG B VL ` L1I H1EӝDL1DEI|mDiE` V0`8d/8 i:"2!22 1R}RG L ERROR- 128ɛ+,' 20*.. өw2 1``2TOO MANY DIGITSINVALIDS}SG HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4uT}TG HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4uUC .SERVTOTEM%&-.56<H'@L 6-F:,$6-F:Ad,$AdAUV}VC "@6-%@'"@+56-&@9B Hj)! A   @"n A W}WC D:ROBOT.BASERVTOTEM%&-.56<H'@L 6-F:,$6-F:Ad,$AdAUXC Q(ABCLRELM')/189@AHIPQXYaVARISORTBY JERRY WH Y}YC-ITEANTIC MAGAZINEdf&;AG,;@918,;@9<^,.6. ?67AG,. N67@b,.U6.\6.f A Z}ZCn=6-P:'@,%@$,-@(6&=-@:J6xSS7$@9NR&@8V\<$@9`m,/7+%,$@9qu&@8y<+% [}[C,$@9 ",A`n&6.7$@9&*&@8.4<$@98C,n67$@9GK&@8OU<$@9Yf,.7+%,$@9jn&@8r<+%,$@9 \}\C,..67+%,$@9&@8!+<+%,$@9/L,. A $@P_ +!@co!B2yu+ A ]}]CIA @e Ap"(E(TYPE HEADING FOR PRINTED LIST:I( A@33 Bi( Ap\-@ ^}^C237$@9&@8#<$@9'F,6 93J3 VARIABLES\@JN@Rv((BASIC(ISl6-| _}_C;@ @1D:VARIABLE.DATE+@5;W-@?C@GNl(@RpREADING{ A0@t(6-% `}`C@ :-@ @ G(@$0j67$@948&@8<B<$@9Fi,.q6.{ A D 6-+@ms%-@w@ a}aC :(@ qsortingD A<(>:AS,<(& CHECK PRINTER, PRESS START WHEN READY F:B2y,@uAP b}bC A4 +&A,21@68>T4$ D:VARISORTXYaVARISORTBY JERRY WH TcCoEiͩkΩ͙kCop j`j {j`Hi͝Νh`}d}dCoL"UNEM:D"NURͩkΩ͙kCop j`j {j`Hi͝Νh`}eC?u, < AXLPB0NZ<( ((@%DG@LMSmd,"( tu | Xf}fCA  +-AdAU0@139=@AG70@KMSW@[aQ0@egmq@uc@Xg}gC@ u@@70{(}AR@4=++(#^++(#| ANTIC MONTHLY DISK Xh}hC JUN. 1984 |++(#7A++(#bl @ p-@Xi}iCA  $ GG;@@ ',;@ +2,;@@6=,;AAH,;@LS,;@@Wq, "D1:MENU" &&@uy@}Xj}jCD:*.* 6,6."< B6 @0FSi6-%@Wa(6.7@ei<@mv,A67@ z<@Xk}kC ,..i67@<@%,.7@)-<@1J,3 6.|67B:,%@N^,.367B:,%@bp,.G67@tx<@|,Xl}lC .(--@GB:,:7<,4 G67<,..] 6.=:, @KSD67@W[<@_f,.7@jn<@r,]67@Xm}mC<@ ,.0$@#0(''7@48<@<H,4FREE@LU- @ Yr2() <@vF''Xn}nC7@ <@,4FREE@"+K @ /:P(7@>B<@FW,)|U @0[dW'!-@6ho+'@sx,%@|Xo}oC' |Z++(#|/ 9|[ ( |A F O Y|\++(#zdXp}pC3E(-(" Select HELP.BAS for information.A-@7;A?RE xARXa[@ei@9ms'-@w@"Xq}qCC( 2SELECTIONM A0Q[ B6UP:,A00"@Yc&6.7@gk<@o,0 AEXr}rC LB6.7+&@,$@%@")<+&@-2,$@6:%@>E,L BIT37@X\<@`o,4 36.7@sw<@{,Xs}sC !7@<@2,4DOS!.0 6.-@6`B:,07<,4 AH67B:,%@d,.7<,   6.!Xt}tC 6.D1:!67B:,%@.,.?AR@28'-@<@@"DJ? R eLOADING ? Aio@sw@9{1Xu}uC@ @5%? B'K-@+/@"39- > QCANNOT RUN 7 @U[A B_K A0D1:MENU. XzvC%J WELCOME TO THE ANTIC MONTHLY DISK n Most of the \w}wGprograms on this disk arewritten in Atari BASIC. Some requirespecial hardware or specific instruc-tions. We recommend you \x}xGrefer to thecorresponding issue of ANTIC forcomprehensive documentation. If youwish to order a back issue, or needsubscri\y}yGption information, contact usat (415) 957-0886 or, for credit cardorders, dial (800) 227-1617, Ex. 133.In California,(800)\z}zC 722-3545, Ex. 133XXXThe menu that appeared on the screenwhen you booted the disk will onlyrun programs with a .BAS ex\{}{Gtender.If you try to run a program and the response is 'cannot run Filename',then check the file extender withthe followi\|}|C4ng list:XXX.BAS BASIC saved program, use menu; sRUN or LOAD and RUN..LST BASIC listed program, ENTERz the\}}}C*n RUN..EXE Assembly language 'Load and1 NGo' file. Remove BASIC, bootU pDOS, type L then enter thew filena\~}~C)me..ASM Assembly language source code0 Mfrom Atari Assembler Editor.T Must be assembled..M65 Same as .ASM on\}CRly MAC/65..SYN Same as .ASM only Synassembler.AMC Same as .ASM only AMACXXXV.OBJ Machine language object file. \}C $Same as .EXE but not 'Load and+ GGo'. Refer to correspondingN article..ACT ACTION! source code..SYS Res\}CBerved for DOS system files..PLT Pilot language, requires PilotI xcartridge..LGO Logo language, requires Logo} \}C0 cartridge..TXT Text file. Usually accessed7 Nby another program.XXXRAll programs from ANTIC issues datedprior \}Gto August 1984 were reproducedfrom ANTIC's Archive. We have up-dated them from our HELP columns and most are compatible wi\}Gth the XLmachines. We have worked to insurethat our programs operate as pub-lished, but we consider all our software lis\}Cytings to be works in progress which we encourage you, thereader, to personalize and enhance.Good luck, and ENJOY! } \}C J-ANTIC ED WELCOME TO THE ANTIC MONTHLY DISK n Most of the \"CiwLINEA;xx ;A ,;@?P,; (}@T[;@_c@gio D:DOC.TXT`}C A (@)2lB:,!@-5-7@9=<@AT,4XXX0(3(E-@X\@"`X( ӠΠ\b(}`}Cl @@ <( @@%da@)/ B39*-@=A@"ER("ΠҠՠҠˠҠVa%D:MENU`}CD:HELPLINEA;xx ;A ,;@?P,; (}@T[;@_c@gio D:DOC.TXT`C0100 ;FILENAME: GREQU.M650110# E.TITLE "GRAPHICS EQUATE FILE"0120J .PAGE "GRAPHICS EQUATES"0130 ;0140 ; CURSOR0150 (}C ROWCRS = $54 ; FULL SCREEN0160 COLCRS = $550170 TXTROW = $0290 ; SPLIT SCREEN0180 TXTCOL = $02910190 ;0200 ; SCREEN (}CMEMORY0210 SAVMSC = $58 ; FULL SCREEN0220 TXTMSC = $0294 ; SPLIT SCREEN0230 ;0240 ; GRAPHICS MODE0250 DINDEX = $57 (}G ; FULL SCREEN0260 TINDEX = $0293 ; SPLIT SCREEN0270 ;0280 ; SCREEN MARGINS0290 LMARGN = $520300 RMARGN = $530310 ;0(}G320 ; DISPLAY LIST0330 VDSLST = $0200 ; VECTOR FOR DLI0340 SDLSTL = $0230 ; START OF DL0350 WSYNC = $D40A0360 ;0370 ; (}GMISC.0380 BOTSCR = $02BF ; # LINES IN SCREEN (4 OR 24)0390 SPARE1 = $02F5 ; SPARE BYTES0400 SPARE2 = $02F60410 SPARE3 =(}G $02F70420 SPARE4 = $02F80430 SPARE5 = $02F90440 ATACHR = $02FB ; USED BY FILL & DRAW0450 ;0460 ; CHARACTER SET0470 CH(}GBAS = $02F4 ; SHADOW0480 CHBASE = $D409 ; HARDWARE0490 CHACT = $02F3 ; CHAR. MODE REG0500 ;0510 ; COLORS0520 ; SHAD(}GOW REGISTERS0530 COLOR0 = $02C40540 COLOR1 = $02C50550 COLOR2 = $02C60560 COLOR3 = $02C70570 COLOR4 = $02C80580 ; HARDW(}GARE REGISTERS0590 COLPF0 = $D0160600 COLPF1 = $D0170610 COLPF2 = $D0180620 COLPF3 = $D0190630 COLBK = $D01A0640 ;0650 (}G; INTERRUPT CONTROL0660 NMIEN = $D40E ; NMI ENABLE0670 NMIST = $D40F ; NMI STATUS0680 NMIRES = $D40F ; NMI RESET0690(}C ; BIT: 7 6 !5 432100700 ;& 4DLI VBI RESET 9.0710 ;0720 ; SCROLLING0730 HSCROL = $D4040740 VSCROL = $D405075(}G0 ;0760 ; CIO COMMANDS0770 CDRAW = $110780 CFILL = $120790 ;0720 ; SCROLLING0730 HSCROL = $D4040740 VSCROL = $D405075(ACj67<%@5,.m$4F:B2T,6-%@9E167<%@Ic,.4$'$F:AF,)"io) @s'$t6}EC-6-&@&1B2T%@*4P-&@8<@@E6@IUt67<%@Y`,.7@dh<@l,j+F:B2X,}C!*F:B2X,@(.'<6-%@,:NAW@'>PS(g67<,.>:V,j$*F:B2P,''67<,.>:}C,*$. +67%@"<%@&+,.>:1B,.$r6-%@F^B2Q067<%@bm,.D-@qu@yH }CUF:B2c,c6-&@DoB2Qr$-F:B2U,6-&@Hk*B2Q-$'$F:AG,)"qw) @{'}C $6-6-&@.1B2U%@2<U67%@@F<%@J`,.>:A,u-%@dj%@nr@vB2}CUz+F:B2Y,!,*F:B2Y,@0=.'<6-%@AONAW@7SbS(w67%@fl<%@pu,.>:{,}C)z$DF:B2Q,)!A'A67%@-3<%@7<,.>:BW,D$. +67%@[a<%@ej,.>:p,.$r6-}C&@ B2Q067<%@$/,.D-@37@;VH UF:B2c,c6-%@ZoB2Qr$-F:B2U,6}C-%@ -*B2Q-$'$F:AG,)"39) @=I'$f6-OY6-&@]gA67%@kq<%@u,.>:A}C,Z-&@6@;fB2Uz+F:B2Y,!AP*F:B2Y,@Ta.'<6-%@esNAW@7wS(}C w67%@ <%@,.>:"<,z$DF:B2Q,) @F@M'A67%@QW<%@[`,.>:f,D$. +67%@}C<%@ ,.>:(,.$m6-%@,8$67<%@<G,.8-@KO@Sn< IF:B2c,W6-&@rj67<%@}C%,.m$4F:B2U,6-&@)5167<%@9S,.4$1.F:AG,)"Y_)!@tci) @my1$s6-}}C 6-&@ 1B2U%@$.O-%@26@:>@BNs67<%@RY,.7@]a<@ex,z+F:B2Y,!}}C*F:B2Y,@!.'<6-%@%3NAW@77FS(w67%@JP<%@TY,.>:_,z$:F:B2Q,'767%}C@ <%@,.>:4,:$ 67<,.>::K,$m6-&@O[$67<%@_j,.8-@nr@v< I}CF:B2c,W6-%@$j67<%@(H,.m$4F:B2U,6-%@LX167<%@\v,.4$'$F:AG,)"|)}C @ '$t6-%6-&@)91B2U%@=GP-&@KO@SX6@\ht67<%@ls,.7@w<@}C,j+F:B2Y,!**F:B2Y,@.;.'<6-%@?MNAW@7QcS(g67<,.>:i,j$*F:B2Q,}C''67<,.>:+,*$. +67%@/5<%@9>,.>:DO,.$%%2UaA@ei@m6-%@}C 6-F:A5,++"@#,%@'.$+"@27,%@;B$+"@FK,%@OV$+"@Z,,A@APA`Ap}C B2x@6-%@"; 6-F:A4,++"@?D,%@HO$+"@SX,%@\c$+"@gl,%@pw$+"@{,,}CA.AA A0B2x@2?6-%@C\ 6-F:A3,++"@`e,%@ip$+"@ty,%@}}C$+"@ ,%@$+"@%,,@`)-@p15@9=@AOB2x@S`6-%@d 6-F:A2,++"@}C ,%@ $+"@,%@!($+"@,1,%@5<$+"@@F,,@ JN@0RV@@Z^@PbpB2x@t,q=!}C@  )!@ )!@  )!@ $.)%%%"4HC(UAV@LZgAW@^dq Ahq@wuw}}C A 1!@ 4$(BROWN COMMANDER!. A8F1/!@ Jc"(RED COMMANDER!, Agu/0!@ y#(}CBLUE COMMANDER!- A(01!@ ,G$(GREEN COMMANDER!. AK1 ( STALEMATE! A ))( CONGRAT}C%ULATIONS ON YOUR VICTORY!\-@)-A 1; /-AE@IWCB2a%]mG YB2ws\$0uj +}C@$ +@#.6-F:A,&@':BByH6-AV$j6-F:A4,%AV$F:A5,?uU%6-F:A@,%AV}C$F:AA,16-=6-#)I6-/5U6-;VXuh 6-&#B )-\`@do;6-%+@s$,?"G6}C1-%X6-P:'AV,h6-&AV$bu%@5?%@CM3%@QaA(G%@egmu[%@yA}C (o%@$s 6-@(3luC-@7;@?x"?B`BpBBC qu'6-%@|}C @ &' B`vu{B2H@U*8'B2I@U<h9B2PAKB2QAW6-@Ultc6-@Uxo6-}CA{6-A{u-"&@*8+B2R%>J/ ;6-@0NVG6-@0ZbS6-@0fn_6-@0rxk6-}}Cw6- 6-6-%0u67@(48<@7<G,.167@tKO<@S^,.H67@(bf<@7ju,._67@ty<@}C,.k6-@(w6-@t'6-@(+36-@t7@uA-FJ@N\+B2V%br/ AB2`xu]}C A@@'A@r"B9AA6KAAFR]AXiu9AR@my'AV}}C9AW@Iu,,(#BROWN 0 RED 0 BLUE 0 GREEN 0ug @MQ,WY_e1/@yikqwC/@y{}C@9 U/@9g/"$*3u-9=@AG+,@KQ%@U[?/@_e%@ioS,@csy%@}}Cg/@c %@{,@c$%@'(./@c28%@3<EuS,@IO%@'SY+/@]c%@3gm?,@8qw%@{S}C/@8%@$uW,@#@'/%+/@37@;C%?,@fGK@OW%S/@r[_@cs%W uS6. y}C +6. ?6. $% +2S6. 89?Pu*AY@FTb'B2w@f*$|67<,.>:,$}G|67<,.>:,$|67<,.>:,$|67<,.>:,$}512,640,768,896,384 }hh0,0,0,8,73,93,127,127,127,93,65,0,}G0,0,0,0,0,65,93,127,127,127,93,73,8,0,0,0,0,0,0,127,28,62,254,62}<<28,127,0,0,0,0,0,0,0,254,56,124,127,124,56,254,0,0,0,0}G D:TANKGAME1T2T3MSLUPDWLFRTHTSHTHTHTPPMBASVSASSSVVOFVVTMMMMMSL0MSL1MSL2MSL3DC[MND1T1OOSTQTGDOTTDWGOLDDMMSKKKKSCLDENOGEefmnuv}}C  !() 01 89 @A HI PQXY`ahipqxy}}C #$+,34;<CDKLST[\cd kl!st"{#}C$ %&'&'(./)67*= ESCAPE FROM EPSILONBY J.D. CASTENANTIC MAGAZINE}C ( A dW- @$&,8%/@2<L5,C,%@P^I6-W6-@bs&i  @2w,}C6-n' !@2#!,%@'j'6-s_AbP&@P$,3@P&@P$%A,%@nP6-F:B@,}C&_6-F:B2d,xW"AG6-@*4)6-%@8J11A1%@NZW%@d^bAf}X"AQ6-6@}C*6-&@%21B1%@)5X%@d9=AAMj(*"SY*@2]e(6-@is66-&@wD6-}C@&L1X@2(^6-j6-.O(AP>6-&@SY12@]a@ei@m>(AP}C A`'1%@''@2+@A%6-%@D` 6-?:A6, Ad A}C A ?1%@$@2(<+ A`?!@@^Au Z 6-@2bj,@nt)@x16-}C %=,@S"@!)"@%;Z6-6="*"@?M6-%6-@Qe+6-=B7b@ix$' }}C@2 ',@"%M @ &66-%#,@:D%F"@HN)"@Ry&P:'@P,M6-6$i6-%@}}C'"@ &$@36-",7I,@04@8>[/@BF@JRi6-@AV&$,"AtAP1)"}CAu6-?) A`6 6- APE"@CrAuJ- B7gA5-B7gxO }C A`^ 6-6--@#7'Aa;,%@;?@"CIE@MUY,%@Y]@#ak] g@2ow{,%@ {}C@",%@ @##c")-A 1:h A>Gw @2K[,!,%@_5AbP&@P$C,%@}CQ6-&@e-@0"A&,2@06@:>@BK|'2@OU%@Y]@ae@i+ 5 APU6-}C@ %@$+!@ ",6-@&*%@.5$+!@9>,%@BI$+!@MV,6-@Z^&@bi$+"@mt, AxG }C A/6-%@&@#$+ )2,=6-@6>&G ABKG @2O],6-@aq)At;,@ uy@"}}CG6-  #AP!!-@%)@-9'"C2@=C@GK@OUY-[_@%co$] 2@su{}C   @2#),@-1@5;1/@?C@GMC,@QU@Y_U/@cg@kqg,@uy@}}Cy/@ @,@  @"$*#A@.K% "#APP'-@OS@Wc-"I2@gm@qu@y_}C- @%$c 2@ "(*028Y  6-F:A,&@]c$+@gs6AYyu6}CC-?:C: hhhhh͢ˑ͈`,<BsD<$AV,6-@G\x+-$AV%@`$AV%A'/"5}C 9 Q;@,;@%,`6-F:@)T,t-A6A0x"%$+"@Xp, & AP+@t! A}C+C6-F:A`,%AV$F:Aa,W%@/3@7?k%@CG@KW}A]a-gk@oy+$(@}}CŠ͠@-"&@*.?P2LTA$@ h-RV@Zl2Ap%@p 0r }C()6-?:C:hiЎ `,,;-@,0@4;U(@?V by jd castenr-@ Z\bg6? kt5j-z@}C/2Ap%@)3 7 I-/3@7>j(@Bapress start to play:j#A`ey%"--@}}C@D(@)SELECT:R"&@-3f-9=@PA_j ?N6-F:B2y,"@cm@6-%@qu&@y$+"}C@,N6-&@!D@%8ApI6-@<D6-@HP'6-@T\36-@`f?6-lrK6-xW6-}C@ y2@@!#)/ A39@=?EK@OQW]@ acirX3%2@vx}}C 3"A(Y7 +@,> A+%@&B_A476-@:7,,Z6-e"Ah1,@}C@ C/@@,MAu_,@04@8>q,@BF@JP,@TX@\e[ @9im,su{1}C/@ C,@"(U/@,0@4:g,@>B@FLy/@PT@X\,bf@jp,@tx@|}C,@ @\,@"@&*',04@8>9/@BF@JNK,TX@ \b]/@fj@ nro,x@}C ,@ @,@#@'-,@15@9=,CG@KT]i/@X\@`d',jn@!rx9/@|}C@!E"@W,%)i//3@!7H^ A6,NR@V\1/@`d@hnC,@rv@zU/}C@ @_@q,#'@+1/@59@=A,GK@ OU/@Y]@ aj_c-@nr@"v*(@}CC(@-&O6-3^c A(Ac6-&A(@bh-,@lnt?/@}C I@2[,@!@%+m/@/3@7=,@AE@IO/@SW@[a@end,@rv@z'/}C@ @1@9C,@#'@+1U,@59@=C_@GMq,@QU@Ya}6-@em6-@qy6-@}}C 6-6@ em!@"@2&,+,@04@8>=,@BF@JRI"@V\[,@`d@hnm,@rv@zg}C#6- # @d-A h6-&@d17@2;A-,@EI@MS?/@W[@_eQ,@im@qwc/@{}C@ m@,@@"(/@,0@4:@9>Gi{,@KO@SY',@]a@ek9,@os@wK,@}C@ W6-@ c6-@$,o6-@08{6-@<El#6-KS# @2WlA0m6-&@2pv@9z-,}C@ @?,@@!'I@2+1[,@59@=Cm/@GK@OU,@Y]@ag/@ko@sy@}}C,@ @n9/@#@'/!6-@3;-6-@?G96-@ KVv @ZoA@w%6-&@sy%"}}CA5x @9,@!#)/1/@35;AC,@EI@MSU/@W[@_eg,@ im@qwy/@ {}C@ ,@@/@"&@*0@24=y},@AE@IYA61,@]a@ekC/@os@wU,@}C@ g/@@$s6-*=} A@{ @9AG,@KO@SY1/@]a@ekC,@os@wU/@}C@ _@2q,@ $@(.,@26@:@,@DH@LR,@VZ@^d,@hl@py|,@}}C@',@ @ 9/@ $(@,2K,@6:@>D]/@HL@PVo,@Z^@bh,@lp@t@}C,@ @,@!@%+,@/3@7@},@DH@LW @[pAE6-&@t@2}C /-@ @!5,C/@%3&G Q@97=c,@AE@IOu,@SW@[a,@ei@ms,@w@}C 6-@#6- (# @,AAP6-&@EK@9OU-,@Y]@ ag?/@ko@syQ/@}}C@c/@@ *mA6,@.2@6</@@D@HP6-@T_ @cxAU6-&@|}C@9 -,@@ !?/@ %)@-3Q/@7;@?Ec/@IM@ QamA6,@ei@ms/@w@}C 6-%@W"@%!,@)-@ 173/@;?@ CIE,@ MQ@U[W,@_c@gp#6-v# @}CA`6-&@$@2(.-,@26@:@?/@DH@LRQ,@VZ@^dc/@hl@pvu,@z@}C /@@'A6,@+/@3>6-@BH!/@LP@TX3,^b@flE,@pt@xW,@}C @ i/@@%{,@)-@17,@;?@CK-@OS@ W_,@%cn&/@rx&@%|&}C  '@99,@!'K,@+/@39]/@=A@EKo/@OS@W[/ae@io,@sw@{}C,@ @'/@!@%+9/@/3@7=K,@AE@ IO],@SW@[ao/@ ei@ms,@w@}C/@ @,@"@ &3#@ 7=#,@AE@IkAd Ar,@os@w3/@ } C %@E,@ @ &Y/@*0%@48k,>B@FL/@PV&@Z`,@dh@lsO,y@ } C )/@&@;,@"&@*0O/@4:&@>K%"@O_A6-,@ cg@kq?,@uy@} } CI@9 [,@ @"m/@ &*@.4,@8<@@F/@JN@Ra+ "#A0e%"%At+, } C#At#,@ @"#0% @4EA @9IO,@SU[a1/@egmsC,@ w@ } CU/@ @g,@"@&,y/@04@8>@2BH,@LP@TZ,@^b@fl6-rx6-}}C @w) AP +@-E A)AAIa;AA0E@9eiW,os@wi/@}C@ {,@$/@(,@04,:>@BK/@OS@WgA61,@ko@syC/@}}C@U/@@ g,@$(@,2y,@6:@>D,@HL@PV/@Z^@bh/@lp@t-}C @@3,%@"&@*2G/%@6:@>F[/%@JN@RZo/%@^b@fn/%@rv@z,}C%@ @| -@"&@*0%#A`4A%)"6(@EU@AaL,[cV@gkj,qw%@{|}C-@ @\(@/TIME:P:+F:@3B,$BU6%F:@FU,$AV%F:@ Yg,,'A56F%?Pkr,n-@v@ }C(@ #  #AQ'-!-37@1;E'"C2KQ@UY@]c_2@gm@qu@ys}C- @} A+  /-15A9?! ACe% / A% %F:B2y,"@i'% AP%$}C4*AAF'A A"9A@8FKA@PJdWAViA@yhv{A@z}CBBA$R:-!%@)/3257=?E7 :$nn0,0,48,104,126,60,16,56,40,100,56,120,112,5}G6,112,120,104,54,56,120,108,230,140,206,0,0,12,22,126,60,8,28ll20,38,28,30,14,28,14,30,22,108,28,30,54,103,49,115,255,189}G,255,223,251,255,191,236,255,255,255,255,255kk255,255,255,255,16,40,68,130,1,255,0,34,34,34,34,34,34,119,255,56,16,16,16,}G16,124,254,130,255,129,129nn255,0,0,0,0,124,92,92,92,68,124,16,254,0,0,0,224,160,190,170,234,255,255,231,195,195,231,231,}G255,104,160nn0,190,112,1,169,0,153,112,1,200,192,20,208,7,138,153,111,1,76,41,6,185,112,1,201,140,208,8,153,111,1,169m}Gm0,153,112,1,76,11,6,160,20,190,251,1,169,0,153,251,1,136,192,0,208,5,138,153,252,1,96,185,251,1,201,140ff208,8,153,252,}C[1,169,0,153,251,1,76,51,6,72,169,28,141,10,212,141,22,208,169,78,141,25,208,104,64-@_c@"gn0(@ru y }C M(@ 4PRESS STARTW#AQPc6-@8@o6-@DL-@PT@'X^ Abl6-&@pyS"}}C12 $.7"S24:@>B@FSa6-&@W]"ci?2@mouw} } CE"a2@@"&@*3U-9=@%AY  ) AP=-_cAgmG AqK U A !}!G 19,17 18,10 1,10 18,10 1,10 18,17 1,10 18,17 1,10 18,10 1,10 1"}"G5,4 18,10 0,0 9,15 11,14 13,25 19,20 16,22 29,30 28,34 39,41 38,40 #}#G 42,50 56,57 60,63 64,71 76,80 0,0FF60,2,72,2,60,4,60,2,72,2,60,4,53,2,60,2,64,2,72,2,81,2,72,2$}$G,64,4ZZ60,2,91,2,91,1,91,1,91,2,91,1,81,1,72,1,64,1,60,4,60,2,81,2,81,2,64,2,72,2,81,2,91,4jj47,121,53,121,60,121,53,%}%G121,47,121,45,121,40,121,40,121,45,108,40,108,47,121,45,121,53,128,45,128,60kk144,53,128,47,121,53,121,60,121,53,121,47,1&}&G21,45,121,40,121,40,121,45,108,40,108,47,121,45,121,53,16253,128,60,121,0,0ll72,2,121,8,91,4,71,2,91,3,144,4,91,1,1'}'G08,1,128,1,121,3,144,3,91,1,144,1,91,1,144,1,91,1,144,1,91,1,144+331,72,1,121,1,72,1,121,1,81,2,128,2,91,3,144,3q(}(G,6,2,5, r,11,5,7, @ @ Ps'',21,4,9, @ @ @ t<<,41,3,12, @A@@ ! ! 0 )})G @&A @ 'țuee,81,6,8,'P FP F @ A2 0 ' '@ ' ' ' ' P G ! &ɚA *}*C[D:ESCAPE1T1OOSTQTGDOTTDWGOLDDMMSKKKKSCLDENOGEefmnuv} +C%P>THIMEINSTAHLORIGI/078?@GHOPWX^f +@ju-@y@2,},C@ !!+&@!,'@%)%@-6(,<V2/A<,%@Z\bmF/%@qAPA-}-C-@ @!%/,%+M=/%AA Z _ @QuD:FINETUNE.DMO-@y@2h.C $%,-45<=DELMTU\]delmtu| /}/C!"# $'(%/0&78'?@(GH)OP*WX+_`,gh-op.wx/}0}0C0 123"#4*+5236:;7BC8JK9RS:Z[;bcz?1}1C@ ABC%&D,tSTARSECTOR DEFENSEBY JOHN WILSONANTIC MAGAZINE z6-z62}2C -d9@,9@!,9@%,,9@07,9@;B,9@FM,9@Qw,j6-p6-z A &6-@{3}3C 6-'& AP6-P:$?`$8,(} -AP@<A6@EK<2@OU@Y]@ag`2@kq%@uy@}4}4C@y0@H:,$@!0} 2-@p4@AP@DJ;2@NT@X\@`f_2@jp&@tx@|5}5C@ ~0@"H:,$@&3 <42@7C#2@GS10@Wg4$F* @ ks @w'6-6}E6C&@*$P6-%@($Z6 @ ,4!@8@% @Dr36-&A`6$d6-%A`$n90@v@7}7C.6-P:$?p.,96-%8,x0@2F$=,6-%@JW$8P:H:,$@[`,%@d,=F:,A0S 8}8C-A @u6@<2@#)@-1@5?@ P2@ChS$S -AUA@6@lr<2@v@9}9C@ @ P2@/S$6-&@3H 6-)-@LP@#T[&(@_s )$( @wH::}:C,!? J( A F:Ad,AU T:,A0D@wN6-# AP,6-8,46-%:6-D;};C ApD!@l6-# AP,6-8,46-%:6-D AT A`6-R:,$6-%@pxN!@ |)<}<C"@ )"@ )"@.T6--6-@2:"@>[!6-'6--6-5"@_i6-%@mu)!@y56=}=C-@5"@!6-&@%-) @1956-@=+ 6-%8,6-F:,+"A@k "6-%@0>}>C92@ A@ @$4C A S2@8Ha6-&@Lpk A@"(6-&8," @pt( A@?}?C, " @F A@6 " A0@# "6- A Jy# A0J3 " A"6-) A }@}@C3 A0T6-%@7^2 8,$-@;?@Cb( 2 Ah1 !@fn!6-@r'6-1 AA}AC>rY 6-%6-F:,6-F:&,%)+6-36-&= ABJI6-@NwO6-Y A|A$6-%@{B}BC )-@@8 ) A01 !@<D!6-@H'6-1 A0Y 6-%6-F:,6-F:&,%)C}CC+6-36-&= A I6-@$MO6-Y A0A$6-%@Q^%6-%@bj% @nA) 6D}DC -6-%@!)6-@"^F:8,, Ap9 6-8,'6-+8,&,'@ bp96-+&,'@ t16-PE}EC$:,&P:,16-++&P:,,&+&P:,,,$@ ([!A  AP !6-@_e Ait6-@x AF}FC !6-@5 A   6-@9N A 6-@Rm A& !6-@q A 0G}GC  6-@( A :6-@,:DO:, @>F6-@JeN A0XO:, @iq6-@ub AH}HC0l*O:,"O:,O:, @#+*6-@/v,68,-8,%8, 6-F:8,,,A@J 8,6-8,%8,$6I}IC -@2@u@@>J Ap A:DW6-%8,&!@[02: A3 6-F:,J}JC"8,)6-%@H3 A`1 2"A$'6-%@La1 A`H"@`eo>6-%@s$8P:H:K}KC ,$@ ,%@6,H Ap! 2!!@:MAh -AQU@Y^6@ bwD&8,A%H:}L}LC,$@ Z2@@F^ h2V&8, 6-&+@J_&,* A`6 @cu<6-BL A yV M}MC3A0 A"A`k "+2@7CAU@GK@OY96-&@]qC A Q6-&@ua2@N}NC5k A@@68,-8,&8,06-P:H:,$@9>,%@Bb66-@ A0<<68,-%@"fq%P:H:,$@u,$@ O}OC %P:H:,$@1, F:8,,Apt-@ 59@=T(8,A(%T2@X\A`f&$@jn@rv@zX P}PCa8,q2@qt$ # "6- AP# A * "6- AP4  6->Y-@uy@#}Q}QC"(@ 2!A%*">6-@)1J6-@5=Y68@AW,-H$R|6-%@[c%-@ gk@o3A%R}RC_2@ A%$@ @$(@,<c iy2@@Y|$\<<68,-%@"]h%P:H:,$@lq,$@ u%P:H:,$S}SC@],f(F:8,,"8,6-( Ap A`zEXPLOSION ROUTINE%2@amAP@qu@y9T}TC-@ @E6-@$Y-@(,@0=x68,-P:@A$H:,,%A68,-8, W 6-%6-&#6-&@ U}UC$36-%@ $E6-%@ #1$&W6-&@ 5D$%o68@HV,-F:,'68@Zh,-F:,968@l,-F:,K68@V}VC,-F:,]68@!,-F:,o68@%8,-F:,?8@<G,!8@KV,08@Ze,?8@i, !8@W}WC, !8@,,;-@04@8e'68,-8,+ 16-; A 0J 2@iw+-@{X}XCA/ ;6-@G6-@"2J$6-%@6CJ96-%@"GR%P:H:,$@V[,$@ _j%P:H:,$@n,JF:,A Y}YC/  $GAdAU$R:,@3942@=ID2@M_G$Q%2@coAP@sw@{GZ}ZC2@AR@@ 3Q At +@7IAV+-@MQ@U\C(@`s GAME OVERU-@w@[}[C t(@ ,ԠӠ6-@0<&B:=:,,'@@KF-@OV(@Zb.-@fj@nuF(@y \}\C#$ !6-.86-@'3&B:=:,,'@7?+-@CJ8(@NY8Q-@]a@!el/(@ps } ]}]C 92M-@@ AQ BT:,"ApLm-@EI@!MT/(@Xw hit triggerK2A@{^}^C@_-@@@Zc m AVLET'S INITIALIZE`Y AF:A,&@^d*+@h4 A K6-F:A_}_C,%@ ;Y6-$AVjJ6-A6-AU'Am1 A@; AJ6-?:Ay,tT-@qu@y-(`}`C@ STARSECTOR?-@ "@&-T(@1DDEFENSE~-@HL@PW%(@[f7-@jn@ryP(@}a}aC john wilsonb-@@# '(@+gŠԠGO REDEFINE CHARACTER SETr AkAV+-@b}bC@# J(@+ T2^ Ar%AdAQM%AVAQ+%AAQc}cC.?%A%AQM6-%At%@2BA#@FN@-@RV@Z_6@cN%A t2APd}dC&$@ @@%M-@)-@1= )%Cc- 72=C6-M A gr-@v@e}eC -@@2(@!9ŠT2@=IA@MQ@Uep2A@im@qy-@}f}fC@ -@@!(2(@,/> DT2@HTAP@X\@`pp2AS@tx@|g}gC-@ @&.   22@2C-@GKAO ??READ IN SHIP'S GRAPHIC CHARACTER FORq}hC"#/07<JMcdiCb'DOS SYSb*+DUP SYSbUROBOT BASb XVARISORTBASbcAUTORUN SYSbdESCAPE BASb+FINETUN3BASbVARIFILELSTjGb ALPHAMUSBASbdPMTANKS BASb MACRO2 M65bMACRO4 M65b ROBOT 4THb&MACRO3 M65b =MACRO1 M65bGSCROLL1 BASkCib"[SCROLL2 BASb)}SCROLL3 ASMbFREAKIO BASbDEREXL BASbFINETUN1BASbFINETUN2BASbeMENUp xbvDOC} TXTlC bHELP BASqC* ALL EIGHT DIRECTIONSR #A!-@.2@6O%".68,-2 >6-@PS[R-@_c@g2,3,6,4,8,5,7,1r}rC- READ LASER GRAPHICS: #A!-@15@9%"668,-%A: 29,28,31,30,29,28,31,30(33READ IN s}sCuP..SET UP SCREEN AND FIND UPPER LEFT CORNERZK +@y u}uC&A #AV- AK6-%@ *.$@ 26%@ :xd//DRAW BORDER AND INITIALIZE VARIABLES ETC.n?-%@|v}vC 5-%A:%A;? x{-%A>B@ FT!/%@Xf3 G6-@aj%A([6-@Yw}wC%Ag6-@`{6-@b!%%@d)6:6-%@:B6-@FW&8,:-@[_@cy[J6-%++P:H:,$@}x}xC,%@ ,$@!,$8P:+H:,$@%*,%@.V,,[F:,A +  6-AZ+AdAUq 6-6-Ay}yC6-!3-@@"")H(@-?T-@"CJg(@Nkq A 16-@co%A6-z}zC1-@ @*[J6-%++P:H:,$@.3,%@7<,$@@O,$8P:+H:,$@SX,%@\,,[F:,A`  {}{C 66-@6-")-@&h268,-6 GO TO START OF LOOP A(%6-F:@l,%AV$F:@|}|C,($b0@@#10@'+@/3@7?E0@CG@KQ_0@UY@]a@eb$!!VERT BLANK ROUT}}}G ON PAGE SIX2 #AP!-A6A%"+/ 2$[[206,114,6,208,60,169,3,141,114,6,173,254,6,240,50,201,255~}~G,208,22,169,15,141,254,6,141WW0,210,141,255,6,169,111,141,1,210,141,115,6,76,65,6,206,254,6,173,255,6,24,105,16"AA141,}G255,6,141,0,210,206,115,6,173,115,6,141,1,210,76,95,228,2 #A!-AyA%"+/ 2$6((104,162,6,160,}CE0,169,6,32,92,228,96@T #A-A"E2A0&'@IM@QU@YM%Q T$JII0,0,0,0,0,0,0,0}G,60,36,24,24,36,219,255,153,6,7,43,116,216,172,24,48TTT224,96,83,237,237,83,96,224,153,255,219,36,24,24,36,60,7,6,202,183,}G183,202,6,7^RR48,24,172,216,116,43,7,6,96,224,212,46,27,53,24,12,12,24,53,27,46,212,224,96hGG0,16,0,66,103,33,8,0,0,136}G,12,4,112,48,4,128,0,0,12,14,32,48,48,0rDD0,24,48,0,0,16,24,48,0,0,132,230,66,0,0,0,0,0,112,96,12,12,8,0|12,24,8,0,64}G,12,24,0MM127,99,99,99,99,99,127,0,56,24,24,24,62,62,62,0,127,3,3,127,96,96,127,0OO126,6,6,127,7,7,127,0,112,112,112,}G112,119,127,7,0,127,96,96,127,3,3,127,0QQ124,108,96,127,99,99,127,0,127,3,3,31,24,24,24,0,62,54,54,127,119,119,127,0}G127,99,99,127,7,7,7,0KK129,129,129,255,255,129,129,129,255,0,0,0,0,0,0,255,0,0,0,255,0,0,0,0??1,2,4,8,16,32,64,128,8}G,8,8,8,8,8,8,8,128,64,32,16,8,4,2,10,0,24,36,36,24,0,0YY63,51,51,127,115,115,115,0,126,102,102,127,103,103,127,0,12}G7,103,103,96,99,99,127,0[[126,102,102,119,119,119,127,0,127,96,96,127,112,112,127,0,127,96,96,127,112,112,112,0XX127,}G99,96,111,103,103,127,0,115,115,115,127,115,115,115,0,127,28,28,28,28,28,127,0WW12,12,12,14,14,110,126,0,102,102,108,127,}G103,103,103,0,48,48,48,112,112,112,126,0]]103,127,127,119,103,103,103,0,103,119,127,111,103,103,103,0,127,99,99,103,103,1}G03,127,0[[127,99,99,127,112,112,112,0,127,99,99,103,103,103,127,7,126,102,102,127,119,119,119,0VV127,96,127,3,115,115}G,127,0,127,28,28,28,28,28,28,0,103,103,103,103,103,103,127,0\\103,103,103,103,111,62,28,0,103,103,103,111,127,127,103,0,1}G15,115,115,62,103,103,103,0<<103,103,103,127,28,28,28,0,127,102,108,24,55,103,127,0&TT16,84,56,254,56,84,16,0,126,195,}G129,129,129,129,195,126,0,56,40,40,124,40,56,006656,62,110,255,187,254,118,60,0,0,16,56,16,40,0,0 D:STARSECTLIMMwG32000 GRAPHICS 0:POKE 82,0:POKE 710,0:? ,"DEFINE VARIABLES:":? :DIM JF$(39),JP$(39),JD$(39)32002 JP$=" ":JP$(39)=" ":JP$(2)=}GJP$:JF$="":CLOSE #1:OPEN #1,8,0,"D:VARIABLE.DAT"32004 FOR JC=PEEK(131)*256+PEEK(130) TO PEEK(133)*256+PEEK(132)-132006 IF P}GEEK(JC)<128 THEN JR=JR+1:JF$(JR,JR)=CHR$(PEEK(JC)):GOTO 3202032008 IF PEEK(JC)>=128 THEN JR=JR+1:JF$(JR,JR)=CHR$(PEEK(JC)-12}Cj8)32010 TRAP 32012:IF JF$="JR" OR JF$="JP$" OR JF$="JC" OR JF$="JF$" OR JF$="JD$" THEN 3201832012 TRAP 4n0:? JF$;:INPUT J}GD$:JR=JR+LEN(JD$):JF$(LEN(JF$)+1)=JD$:IF JR>=39 THEN 3201632014 JF$(JR+1,39)=JP$(JR+1,39)32016 ? #1;JF$32018 JR=0:JF$="":J}GD$=""32020 NEXT JC:CLOSE #1:RUN "D:VARISORT"NE VARIABLES:":? :DIM JF$(39),JP$(39),JD$(39)32002 JP$=" ":JP$(39)=" ":JP$(2)=.C I,> !()0189@AHIPQWALPHABET MUSICBY RICHARD SE!}C$LTZERANTIC MAGAZINE (6-@d(06-@4=(6-6@AK##@OS@WY_mK:"+@qu%@y !}CA"#(,6-%@""@&.)6-@e2B,#276-%@FN"@RX)6-^h76-%@lw<-!@{!!}C+@ %@-6-@/F -P(@3C>:,Z)@GRd'@VZ@d^l'B7t@dpn "(!}C@+>:,x ""'"*@/5*@9?*@CGC2MS@W[@_gQ-@kuU w2{!}C @@ /"*"@3;'-@?C@GKC2QW@[_@ckQ-@oyU w2}!}C ${  @@(7"*"@;C'-@GK@OSC2Y_@cg@ksQ-@wU !}Cw2 ",{  @@0?w"*"@CG/2MS@W[@_g=-@kuA c2{!}Cm A &w @@*3 @7ff136,100,136,100,91,100,91,100,81,100,81,100,91,200,102,100,102,1!}G00,108,100,108,100,121,50,121,50gg121,50,121,50,136,200,91,100,91,100,102,200,108,100,108,100,121,200,91,50,102,200,108,1!}C00,121,300t#-@ @$. "<24:@>B@FNJ-@R\N p2bdjlrtzt !}C w-@@92".A!@26@:BM-@FJANVQ s2\^dflntw b%!}C2A6@@ (9-@,0A4<= _2BDJLRTZb$ D:ALPHAMUSBY RICHARD SE pGxy11T0T1T2T3MSLUPDWLFRTHTSHTHTHTPPMBASVSASSSVVOFVVTMMMMMSL0MSL1MSL2MSL3D%}CWDDD5~66~7~5!/ A[^ @(cg A@kn @sw A{@%}C) A`@1AD!@S&)@.2AH6QBxB"gBEx@VY@^a@fi@nwB"}%}C B6@S A&!!$"@),#@)14$@(9<%@'AD&@)Hm'= (J )W *d +Aqu,Ay-@c%}C.A /0fPLAYER/MISSILE TANKSBY FRED PINHOANTIC MAGAZINE ;@jq,;@u,;@%}C ,;@,;@ ,;@$+,;@/6,;@:A,;@EL,;@PW,;@[b,;@fm,;@q, A%}C APr6-%@5B2H067<%@9D,.D-@HL@PkH UF:B2`,c6-&@ooB2Hr%}C$(-F:B2R,6-&@B*B2H-$2'$F:AD,)"HN) @R^'$<6-dn6-&@r1B2R%}C%@ U67%@<%@!(,.>:@,7,u-%@;A%@EI@MmB2RFgF:B2V,!@q')6-%@%}C;AW@&@(d67%@*0<%@49,.>:?j,g$PDF:B2H,)!A'A67%@nt<%@x,.>:%}C,D$Z. +67%@%<%@).,.>:4E,.$dr6-&@IaB2H067<%@ep,.D-@tx@|%}CH UF:B2`,c6-%@GoB2Hr$n-F:B2R,6-%@Kn*B2H-$x'$F:AD,)"t) @%}C '$f6-6-&@!+A67%@/5<%@9@,.>:@DQ,Z-&@UZ6@^fB2RgF:B2V,!@%}C')6-%@$;AW@(7@(d67%@;A<%@EJ,.>:Pj,g$DF:B2H,) @Fn'A67%@%}C<%@ ,.>:,,D$. +67%@06<%@:?,.>:EV,.$m6-%@Zf$67<%@ju,.8-@y@%}C< IF:B2`,W6-&@#/j67<%@3S,.m$4F:B2R,6-&@Wc167<%@g,.4$1.F:AD,%}C)" )!@t) @*1$s6-0:6-&@>N1B2R%@R\O-%@`d@hl@ps67<%@%}C ,.7@<@+,gF:B2V,!@/<')6-%@@N;AW@Ra@(d67%@ek<%@ot,.>:z,g%}C$:F:B2H,'767%@"(<%@,1,.>:7O,:$ 67<,.>:Uf,$m6-&@jv$67<%@z,.%}C8-@ @/< IF:B2`,W6-%@3?j67<%@Cc,.m$4F:B2R,6-%@gs167<%@w,.4$%}C'$F:AD,)" ) @$0'$t6-6@6-&@DT1B2R%@XbP-&@fj@ns6@wt67%}C<%@ ,.7@<@2,WF:B2V,!@6C')6-%@GU;AW@Yk@(T67<,.>:q,W$"*F:%}CB2H,''67<,.>:3,*$,. +67%@7=<%@AF,.>:L],.$6r6-%@ayB2I067<%@}%}C ,.D-@@2H UF:B2a,c6-&@6_oB2Ir$@-F:B2S,6-&@c*B2I-$J'$F:A%}C E,)") @%'$T6-+56-&@9I1B2S%@MWU67%@[a<%@el,.>:@p,u-%@%}C%@ @2B2S^z+F:B2W,!8G*F:B2W,@KX.'<6-%@\jNAW@nS(w67%@%}C <%@,.>:D,z$hDF:B2I,)!A'A67%@HN<%@RW,.>:]r,D$r. +67%@v<%@%}C,.>:,.$|r6-&@#;B2I067<%@?J,.D-@NR@VqH UF:B2a,c6-%@uoB2I%}C!r$-F:B2S,6-%@%H*B2I-$'$F:AE,)"NT) @Xd'$f6-jt6-&@xA67%}C%@ <%@,.>:@+,Z-&@/46@8VfB2Sz+F:B2W,!\k*F:B2W,@o.'<6-%@%}CNAW@$S(w67%@(.<%@27,.>:=W,z$DF:B2I,) @F[h'A67%@lr<%@v,.>:%}C,D$. +67%@#<%@',,.>:2C,.$m6-%@GS$67<%@Wb,.8-@fj@n< IF:B2a%}C ,W6-&@j67<%@ @,.m$4F:B2S,6-&@DP167<%@Tn,.4$1.F:AE,)"t)!@t%}C) @ 1$s6-'6-&@+;1B2S%@?IO-%@MQ@UY@]is67<%@mt,.7@x<@%}C,z+F:B2W,!+*F:B2W,@/<.'<6-%@@NNAW@RaS(w67%@ek<%@ot,.>:z,z%}C$:F:B2I,'767%@"(<%@,1,.>:7O,:$ 67<,.>:Uf,$m6-&@jv$67<%@z,.%}C8-@ @/< IF:B2a,W6-%@3?j67<%@Cc,.m$4F:B2S,6-%@gs167<%@w,.4$%}C'$F:AE,)" ) @$0'$&t6-6@6-&@DT1B2S%@XbP-&@fj@ns6@wt67%}C<%@ ,.7@<@0,0j+F:B2W,!6E*F:B2W,@IV.'<6-%@ZhNAW@lS(g67<,.>:%}C+,j$:*F:B2I,''67<,.>:1F,*$D. +67%@JP<%@TY,.>:_p,.$Nr6-%@tB2P%}C067<%@,.D-@"&@*EH UF:B2b,c6-&@IroB2Pr$X-F:B2T,6-&@v*B2%}CP-$b'$F:AF,)""() @,8'$l6->H6-&@L\1B2T%@`jU67%@nt<%@x,.>:%}C@H,u-%@%@#@'EB2Tvz+F:B2X,!KZ*F:B2X,@^k.'<6-%@oNAW@'%}CS(w67%@<%@!&,.>:,W,z$DF:B2P,)!A'A67%@[a<%@ej,.>:p,D$. +%}C67%@ <%@,.>:!2,.$r6-&@6NB2P067<%@R],.D-@ae@iH UF:B2b,c6%}C-%@ 4oB2Pr$-F:B2T,6-%@8[*B2P-$'$F:AF,)"ag) @kw'$f6-}%}C 6-&@A67%@"<%@&-,.>:@H1>,Z-&@BG6@KifB2Tz+F:B2X,!o*F:B2X,@%}C.'<6-%@$NAW@'(7S(w67%@;A<%@EJ,.>:Pj,z$DF:B2P,) @Fn'A67%@%}C<%@ ,.>:,,D$. +67%@06<%@:?,.>:EV,.$m6-%@Zf$67<%@ju,.8-@y@%}EC< IF:B2b,W6-&@#/j67<%@3S,.m$4F:B2T,6-&@Wc167<%@g,.4$1.F:AF,%}C)" )!@t) @*1$s6-0:6-&@>N1B2T%@R\O-%@`d@hl@ps67<%@%}C ,.7@<@),z+F:B2X,!/>*F:B2X,@BO.'<6-%@SaNAW@'etS(w67%@x<%@%}C ,.>:1,z$ :F:B2P,'767%@5;<%@?D,.>:Jb,:$ 67<,.>:hy,$ m6-&@}%}C $67<%@,.8-@#@'B< IF:B2b,W6-%@FRj67<%@Vv,.m$*4F:B2T,6-%@z16%}C 7<%@ ',.4$4'$F:AF,)"-3) @7C'$>t6-IS6-&@Wg1B2T%@kuP-&@y@%}C 6@ t67<%@$,.7@(,<@0C,Hj+F:B2X,!IX*F:B2X,@\i.'<6-%@mNAW@'%}CS(g67<,.>:>,j$R*F:B2P,''67<,.>:DY,*$\. +67%@]c<%@gl,.>:r,.$fr6%}C-%@ "B2Q067<%@&1,.D-@59@=XH UF:B2c,c6-&@\oB2Qr$p-F:B2U,%}C6-&@ /*B2Q-$z'$F:AG,)"5;) @?K'$6-Q[6-&@_o1B2U%@sU67%@%}C <%@$,.>:A,u-%@(.%@26@:XB2Uz+F:B2Y,!^m*F:B2Y,@q.'<6-%@%}CNAW@7&S(w67%@*0<%@49,.>:?j,z$DF:B2Q,)!A'A67%@nt<%@x,.>:%}C,D$. +67%@%<%@).,.>:4E,.$r6-&@IaB2Q067<%@ep,.D-@tx@|%}CH UF:B2c,c6-%@GoB2Qr$-F:B2U,6-%@Kn*B2Q-$'$F:AG,)"t) @%}C '$f6-6-&@!+A67%@/5<%@9Q,.>:A,Z-&@UZ6@^fB2Uz+F:B2Y,!%}C*F:B2Y,@%.'<6-%@)7NAW@7;JS(w67%@NT<%@X],.>:c,z$DF:B2Q,) @F%}C'A67%@<%@$,.>:*?,D$. +67%@CI<%@MR,.>:Xi,.$m6-%@my$67<%@}%}C ,.8-@@2< IF:B2c,W6-&@6Bj67<%@Ff,.m$4F:B2U,6-&@jv167<%@z,.%}C4$1.F:AG,)"#)!@t'-) @1=1$s6-CM6-&@Qa1B2U%@eoO-%@sw@{%}C@s67<%@,.7@!%<@)<,z+F:B2Y,!BQ*F:B2Y,@Ub.'<6-%@ftNAW@7xS(%}C w67%@<%@,.>:#D,z$$:F:B2Q,'767%@HN<%@RW,.>:]u,:$. 67<,.>:{,%}C$8m6-&@$67<%@#.,.8-@26@:U< IF:B2c,W6-%@Yej67<%@i,.m$B4F:B2U%}C ,6-%@167<%@ :,.4$L'$F:AG,)"@F) @JV'$Vt6-\f6-&@j1B2U%@%}C P-&@@6@ ,t67<%@07,.7@;?<@CV,`j+F:B2Y,!\k*F:B2Y,@o.'<6-%@%}CNAW@7'S(g67<,.>:-Q,j$j*F:B2Q,''67<,.>:Wl,*$t. +67%@pv<%@z,.>%}C:,.$~%%2%A@)-@1>6-%@B[ 6-F:A5,++"@_d,%@ho$+"@sx,%@|$%}C+"@ ,%@$+"@N,,ApA @AAB2x@R_6-%@c 6-F:A4,++"@%}C,%@ $+"@,%@ '$+"@+0,%@4;$+"@?],,AA`A0AaoB2x@s6-%%}C@  6-F:A3,++"@$),%@-4$+"@8=,%@AH$+"@LQ,%@U\$+"@`,,AAAPA%}C B2x@$6-%@(A 6-F:A2,++"@EJ,%@NU$+"@Y^,%@bi$+"@mr,%@v$+"@%}C ,,@0A4ApA@B2x@8Cq=!@ GM)!@ QW)!@ [a)!@ eo)%%%"uC(U%}C AV@gAW@"5q A @w9;AV A`1!@ Z$(BROWN COMMANDER!. Ap1%}C /!@ 9"(RED COMMANDER!, Ap/0!@ =i#(BLUE COMMANDER!- Ap01!@ m$(GREEN COMMA%}CfNDER!. Ap1 ( STALEMATE! A ))( CONGRATULATIONS ON YOUR VICTORY!\-@jnA r /-%}C @ CB2a%!1G YB2w7C\$ j +@$GM+@Qd.6-F:A,&@h:BByH6-AV%}CR$j6-F:A4,%AV$F:A5,U%6-F:A@,%AV$F:AA,16-X^=6-djI6-pvU6-|%}Ch 6-&#A )- $@(3;6-%+@7r$,?"G6-%X6-P:'AV,h6-&AV$(%@v%%}C@3%@%A(G%@)+19[%@=MA(o%@QSYes 6-@it2C-@x@%}C"?AAA#<AC <'6-%@@H @Lg' A0F{B2H@Uky'B2I@U}%}C,9B2PAKB2QAW6-@U08c6-@U<]o6-A{6-AP-cg@ky+B2R%}%}C/ ;6-@0G6-@0&S6-@0*2_6-@06<k6-BHw6-NT6-Z`6-fqZ67@(uy<@7}%}C ,.167@t<@",.H67@(&*<@7.9,._67@t=A<@EP,.k6-@(T\w6-@t`h6-@(lt6-@txdA%}C- @ +B2V%&6/ AB2`<Mn]A@@Q_'A@rc9AA6KA%}CA ]A-x9AR@1='AVCQ9AW@U,,(#BROWN 0 RED 0 BLUE 0 GREEN%}C 0g @,#)1/@y-/5;C/@y?C@9GKU/QU@9Y]g/cekt-z@&}C +,@%@?/@#)%@-3S,@c7=%@AGg/@cKQ%@U[{,@c_e%@'io/@csy%@3}&}C S,@ %@'+/@!'%@3+1?,@85;%@?ES/@8IO%@$S\W,@`d@hp%+/@tx@|%&}C?,@f @%S/@r#@'7%W S6. =>DK+6. QRX_?6. ef lsS6. y&}C*AY@F&'B2w@**$67<,.>:,$67<,.>:,$67<,.>:,$67<,.>:,$&}G512,640,768,896,384hh0,0,0,8,73,93,127,127,127,93,65,0,0,0,0,0,0,65,93,127,127,127,93,73,8,0,0,0,0,0,0,127,28,62,25&}G4,62<<28,127,0,0,0,0,0,0,0,254,56,124,127,124,56,254,0,0,0,0 D:PMTANKSVVOFVVTMMMMMSL0MSL1MSL2MSL3D$RC0100 ;FILENAME: GREQU.M650110# E.TITLE "GRAPHICS EQUATE FILE"0120J .PAGE "GRAPHICS EQUATES"0130 ;0140 ; CURSOR0150 *}C ROWCRS = $54 ; FULL SCREEN0160 COLCRS = $550170 TXTROW = $0290 ; SPLIT SCREEN0180 TXTCOL = $02910190 ;0200 ; SCREEN *}CMEMORY0210 SAVMSC = $58 ; FULL SCREEN0220 TXTMSC = $0294 ; SPLIT SCREEN0230 ;0240 ; GRAPHICS MODE0250 DINDEX = $57 * } G ; FULL SCREEN0260 TINDEX = $0293 ; SPLIT SCREEN0270 ;0280 ; SCREEN MARGINS0290 LMARGN = $520300 RMARGN = $530310 ;0* } G320 ; DISPLAY LIST0330 VDSLST = $0200 ; VECTOR FOR DLI0340 SDLSTL = $0230 ; START OF DL0350 WSYNC = $D40A0360 ;0370 ; * } GMISC.0380 BOTSCR = $02BF ; # LINES IN SCREEN (4 OR 24)0390 SPARE1 = $02F5 ; SPARE BYTES0400 SPARE2 = $02F60410 SPARE3 =* } G $02F70420 SPARE4 = $02F80430 SPARE5 = $02F90440 ATACHR = $02FB ; USED BY FILL & DRAW0450 ;0460 ; CHARACTER SET0470 CH* } GBAS = $02F4 ; SHADOW0480 CHBASE = $D409 ; HARDWARE0490 CHACT = $02F4 ; CHAR. MODE REG0500 ;0510 ; COLORS0520 ; SHAD*}GOW REGISTERS0530 COLOR0 = $02C40540 COLOR1 = $02C50550 COLOR2 = $02C60560 COLOR3 = $02C70570 COLOR4 = $02C80580 ; HARDW*}GARE REGISTERS0590 COLPF0 = $D0160600 COLPF1 = $D0170610 COLPF2 = $D0180620 COLPF3 = $D0190630 COLBK = $D01A0640 ;0650 *}G; INTERRUPT CONTROL0660 NMIEN = $D40E ; NMI ENABLE0670 NMIST = $D40F ; NMI STATUS0680 NMIRES = $D40F ; NMI RESET0690*}C ; BIT: 7 6 !5 432100700 ;& 4DLI VBI RESET 9.0710 ;0720 ; SCROLLING0730 HSCROL = $D4040740 VSCROL = $D405075*}CE0 ;0760 ; CIO COMMANDS0770 CDRAW = $110780 CFILL = $120790 ;0120J .PAGE "GRAPHICS EQUATES"0130 ;0140 ; CURSOR0150 (AC0100 ;FILENAME: GRTEST.M650110$ .OPT NO LIST ;Don't list ]INCLUDE files0120 ;0130 ;These files are on MAC/65 disk.0140.}C .INCLUDE #D:SYSEQU.M650150% f.INCLUDE #D:IOMAC.LIB0160 ;0170 ;See text for these files.0180k .INCLUDE #D:GREQU..}CM650190 =.INCLUDE #D:GRAPHICS.LIB0200 ;0210 GRMEM = 460B h;Bytes of memory for GR. 30220 ;0230m *= $30000240 ;.}C0250 D.OPT LIST0260 ;0270 ;Set top of applications memory0280I `LDA # <$BFFF-GRMEM0290e tSTA APPMHI0300y LDA .}C# >$BFFF-GRMEM0310 OSTA APPMHI+10320 ;0330 ;This looks like BASIC...0340U eGRAPHICS 30350k xCOLOR 10360} .}C SETCOLOR 4,0,40370 0SETCOLOR 0,4,1403806 DPLOT 5,50390J [DRAWTO 5,150400a sDRAWTO 15,150410y DRAW.}C TO 15,50420 YDRAWTO 5,50430 ;0440 ;Loop until SYSTEM RESET0450 END JMP END0460^ .OPT NO LIST MAC/65 disk.0140,kGScr # 100 0 ( Port setup and variables ) 1 DECIMAL 2 3 54016 CONSTANT PORTA 4 54018 CONSTANT PACTL 5 6 : PORTSE2}GT ( -- ) 7 PACTL C@ DUP 4 - PACTL C! 8 16 PORTA C! PACTL C! ; 9 10 128 VARIABLE SERVO 11 120 VARIABLE OPULSE 12 2}C:150 VARIABLE TOP 13 14 : LABEL 0 VARIABLE -2 ALLOT ; 15X [-->aScr # 101 0 ( Driver routi2}Gne ) 1 HEX ASSEMBLER 2 100 DP C@ - ALLOT ( PAGE BNDRY ) 3 4 LABEL DRIVER ( -- ) 5 OPULSE LDX, INX, 6 10 # LDA2}G, PORTA STA, 7 BEGIN, NOP, NOP, DEX, EQ 8 UNTIL, ( END FIXED LENGTH ) 9 SERVO LDX, INX, 10 BEGIN, NOP, NOP, NO2}C P, NOP, 11 DEX, EQ 12 UNTIL, ( END VARIABLE LENGTH ) 13 0 # LDA, PORTA STA, 14 E463 @ JMP, ( EXIT VBLANK ) 15 2 } C -->&Scr # 102 0 ( Oscillating Demo ) 1 DECIMAL 2 3 : DEMO ( -- ) 4 PORTSET 5 2!}!Ck 0 54286 C! DRIVER 548 ! 6 64 54286 C! ( INSTALL VBI RTN ) 7 BEGIN TOP @ 0 8 DO I SERVO C! 9o 100 0 DO LOOP 2"}"C:( DELAY ) 10 LOOP 11 0 TOP @ 12 DO I SERVO C! 13> 100 0 DO LOOP ( DELAY ) 14 -1 +LOOP ?TERMINAL 15 UNTIL ;2#}#CnScr # 103 0 ( Keyboard control demo ) 1 2 : KEYBOARD ( -- ) 3 TOP @ 2 / SERVO ! 4 BEGIN 5r 764 C@ > R 2$}$C255 764 C! 6 SERVO C@ 7" +R 6 = 8/ 9IF 1 + 9= KELSE R 7 = 10P ZIF 1 - 11_ hENDIF 12l ENDIF 0 MAX TOP @2%}%C MIN 13 SERVO ! 14 3R > 22 = 15 UNTIL ;}0}&C!0100 ;FILENAME: GRAPHICS.LIB0110& D.TITLE "GRAPHICS LIBRARY"0120I k.PAGE "GRAPHICS MACRO"0130 ;0140p .IF .NOT .DEF6'}'C ROWCRS0150 3.ERROR "GREQU.M65 missing!"0160: F.ENDIF 0170K d.IF .NOT .DEF CPALOC0180k .ERROR "SYSEQU.M656(}(C missing!"0190 .ENDIF 0200 ;0210 ;MACRO: GRAPHICS0220 ;0230 ;FORM: GRAPHICS N0240 ;If N is <9, then N is a memory6)})C10250 ;location, else N is a literal.0260 ;02706 R.MACRO GRAPHICS 0280 ;0290W oJMP @CONT0300 @AX10310t .BYTE 006*}*C 320 @AX20330 ).BYTE 00340 @CONT0350/ FXIO 12,6,0,0,"S:"0360K X.IF %1<90370_ kLDA #%10380r .ELSE 03906+}+C LDA %10400 %.ENDIF 0410* 7STA @AX20420< IAND #$F00430N [EOR #$100440` mORA #$0C0450r STA @AX1046,},C60 #OPEN 6,@AX1,@AX2,"S:"0470( 3.ENDM 04808 .PAGE "COLOR, POSITION & PLOT MACROS"0490 ;0500 ;MACRO: COLOR0510 6-}-Cf;0520 ;FORM: COLOR N0530 ;If N<16, then N is literal.0540 ;Else N is a memory location.0550 ;0560k .MACRO COLOR 05706.}.C .IF %1<160580 &LDA #%10590- 8.ELSE 0600? JLDA %10610Q ].ENDIF 0620b qSTA SPARE10630v .ENDM 6/}/G0640 ;0650 ;MACRO: POSITION0660 ;0670 ;FORM: POSITION X,Y0680 ;X and Y must be literals, not0690 ;memory locations0700 60}0C;0710 .MACRO POSITION 0720% 3LDA # <%107308 GSTA COLCRS0740L ZLDA # >%10750_ pSTA COLCRS+10760u LDA #%261}1C0770 STA ROWCRS0780 .ENDM 0790 ;0800 ;MACRO: PLOT0810 ;0820 ;FORM: PLOT X,Y0830 ;X and Y must be literals, not62}2C"0840 ;memory locations0850 ;0860' 8.MACRO PLOT 0870> RPOSITION %1,%20880X c@CH 60890h xLDA #CPBINR0900} 63}3CSTA ICCOM,X0910 LDA #00920% 6STA ICBLEN,X0930; NSTA ICBLEN+1,X0940S bLDA SPARE10950g sJSR CIO0960x .ENDM64}4C 0970 .PAGE "DRAWTO & SETCOLOR MACROS"0980 ;0990 ;MACRO: DRAWTO1000 ;1010 ;FORM: DRAWTO X,Y1020 ;X and Y must be li65}5C'terals as in1030 ;POSITION1040 ;1050, ?.MACRO DRAWTO 1060E YPOSITION %1,%21070^ mLDA SPARE11080r STA ATACHR66}6C1090 @CH 61100 )LDA #CDRAW1110. >STA ICCOM,X1120C SLDA #CCLOSE1130X iSTA ICAUX1,X1140n yLDA #01150} 67}7C STA ICAUX2,X1160 #JSR CIO1170( .ENDM 1180 ;1190 ;MACRO: SETCOLOR1200 ;1210 ;FORM: SETCOLOR REG,HUE,LUM1220 ;Any68}8C@ parameter <16 is considered1230 ;a memory location1240 ;1250E Z.MACRO SETCOLOR 1260_ m.IF %1<161270t LDX #%1169}9C280 .ELSE 1290 'LDX %11300. :.ENDIF 1310? M.IF %2>161320T _LDA %21330f pASL A1340w ASL A6:}:C1350 ASL A1360 &ASL A1370- 8.ELSE 1380? NLDA #%2*161390U a.ENDIF 1400f t.IF %3<161410{ LD6;};C Y #%31420 .ELSE 1430# .LDY %314405 A.ENDIF 1450F WSTA COLOR0,X1460\ eTYA 1470j wAND #$0E1480| C6<}<CLC 1490 ADC COLOR0,X1500# 4STA COLOR0,X15109 M.ENDM 1520 ;1530 ;T* END OF GRAPHICS.LIB *** .IF .NOT .DEF4m=C 0350 #COLOR 1' ,=00012 3M< O.IF %1<163000 A901U VMa iLDA #%1x yM} :>}>C .ELSE  M) 0LDA %1? @MK ^.ENDIF 3002 8DF502b cMl wSTA SPARE1} :?}?C M .ENDM * .03604 DSETCOLOR 4,0,4H M=0001S TM] p.IF %1<163005 A204v wM} :@}@C LDX #%1 M( /.ELSE > ?MJ QLDX %1` aMl t.ENDIF x y=}0:A}AC M .IF %2>16) *M5 LDY %3M NMY l.ENDIF 300B 9DC402p qMz STA:E}EC COLOR0,X300E 98 M# 1TYA 300F 290E7 8MA QAND #$0E3011 18Y ZMc sCLC 3012 7DC402w xM} :F}FC ADC COLOR0,X3015 9DC402 !M* 7STA COLOR0,XF GMP W.ENDM a iLDA #%1x yM} 8WGC>./Z k SCRPSCRNDFMACCDMMEMMXYOFEGMOVW^_fgnovw}>H}HC   !" )* 129:ABIJQRYZabijpSCROLLIN>I}ICBG EXAMPLELBY CHRIS CHABRISANTIC MAGAZINE@8AYHP8;@)T[,;@)_f,;@Yj,??See Listing >J}JC63 for following machine language subroutines:5 #A:B!-@FJ@)N%"167,.>:,5 l104,104,104,133,203,1>K}KCh620,189,4,6,24,1014203,157,4,6,144,3254,5,6,232,232,232224,36,208,235,96` 5 #A%lt!-@x@)>L}LG%"167,.>:,5  104,104,104,133,203,162( 0,189,4,6,56,229 203,157,4,6,176,3 222,5,6,232,232,232T >M}MC224,36,208,235,96 5 #A1!)!-@-1@Y5%"167,.>:,5  104,201,4,208,39,104 104,10,10,10,10,170>N}NG 104,104,157,66,3,104H 157,69,3,104,157,68 3,104,157,73,3,104157,72,3,32,86,228t152,133,212,169,0,133>O}OG213,96,170,104,104,202<208,251,169,22,133,212169,0,133,213,9677Reserve memory; load map and character se>P}PCt files:hd6-F:A,&@":(6-$AV66-%@>\D6-$AVXA&@`vdAV_.@z@>Q}QC , D1:SCROLL.CHRT6-?:C:,<@04<@8J<<A,_@NX0_.@\`@dfl D1:SCROLL.MAP>R}RCT6-?:C:,<@<@,<<A `,_@0S]AA'A @8Ww9AA0KA@f{]>S}SC A@L''Build new display list on Page 6:\K6-A6#%RbA7%@fvAK%@zA>T}TCO-@@6 @$.-%@q2<O6-%@@@G$+'@KO&@S,$H6-P:'AV,$6-&$AV4%>U}UC%@ D%%@*H c%@9.2@e6>+%@@BDJR?%@AVZ@^jQA`pcAa@>V}VC-AY@4"!6-@ &.-6-@2[P Main program loop follows:>6-ag6-mu*6-R:{,>W}WC>"@ AS/#"@"()"@,2)"@6>/6-@BM|0#"@QW)"@[a)"@ en06-6@r/#"@ >X}XC )"@)"@ /6-@$/D0#"@39)"@=C)"@GP06-6@Tt 6-%6-% QQ++ @ x)!@>Y}YC) ,*,)++ @#)!@',,*27,AS;Fp76-@@JT$%!Zn-6-?:C:,<,7 Abr6-?:C>Z}ZC:,<6,8 6-6- AS > D:SCROLL1XYOFEGMOVW^_fgnovw}<2[C%^izHDATHEXCLINL,.46=>EFMNUV]^eflFILE GENERATB\}\C7ORBY CHRIS CHABRISANTIC MAGAZINED&;@;B,;@FM,;@#Qc,D6.@ABCDEFGHIj#JKLMNO!!ProcessB]}]C character set data:ly.@"&@*,2H D1:SCROLL.CHR8#A)LRD6-X``-A)dhA9lpAtj A$B^}^C n y@1Process map data:4y.@59@=?E[ D1:SCROLL.MAP8#AA_eD6-ks`-AAwA`B_}_CA j A$n y@#(FILES GENERATED33Subroutine to convert data and write to disk:` 5 ""B`}`C-@ B:,@%56.7<%@)3, [6-9A#-@EI@MWO6-$@[k%@:7@:7,,&@Gou,,&@dyS Ba}aC[6-%( 8*@ 5(BAD DATA AT LINE # 8 $ ..Hexadecimal data for character set file:T kk000Bb}bC 09107040DC740C1830101808183020301810181CCC6C38=0I103038EB6E06Q0x10D878180C18,2155 kk10180E1F190C0C18|0EBc}cC 0B33A0E040'C3C76E381810101808F9633E+0+,%@BH9-NR@V^M-@bf@jw`28,@{J}Cd A$%$@.F:B7p,r-@26@e:N :A%%$@RF:B7p,> SAF:B7p,hAJ}CF:B7p,r @ q(DD243,217,193,182,162,144,128,121,108,96,91,81,72,63,60,52,48,45 D:FREAKIO@u@-@HnCJ BFA "(*129:ABHOLD TO NEW OSBY MATTHEW RATCLIFFANTIN}CC MAGAZINE 11;I: ,&A$+,;@ /6,;@ :B, +HQ AU\( +b((READING 2 AN}C<1)@!'67B:,%@%1,.>:,1 @`5?d-@C^#F:A,"A6- Abn$$(NOT END OF FILE FN}C,:A,xD(* END OF FILE *#6-2D(Total length =B:, BYTES##(NOW SEARCHING FOR CALLSN}C-@B:,&@$[7<%@(;,4 167<%@?l,. M( FOUND AT BYTE#[6-%@p[7<%N}C@,4 >167<%@J,. JM( FOUND AT BYTE#[6-%@N W#(FOUND & MADE  CHANGES/"N}CT( NO CHANGES, NEEDS SOME OTHER FIXW&&(PRESS KEY WHEN NEW DISK( IS READY (New file tN}C;o write to"?$((press only if )(?B:,"ApA, 6. A6F A`*@tx@|N}C F( Writing file %.0@--@4@B:,)*@D\@:7<,,- J@`T( ALL DONE^,,(N}G$OLD ATARI OS TO נ̠Ӡ 'XLATOR))(!* : THIS PROGRAM Ԡ *))(!* WORK, BUT IS NOT A SURE FIX *++N}G(#IT WILL READ ANY UNPROTECTED BINARY''(DOS FILE AND REPLACE ALL OLD OS++(#CALLS TO THE ԭ AND ԭ$--N}G(% ROUTINES TO THE NEW ROUINES.$$(IN THE 'XL OPERATING SYSTEM.8++(#ĠӠ Ӡ Πנ̠ӠB**(N}G"JSR $F6A4 > JSR $F2B0 OUT PUT CHARL,,($JSR $F63E > JSR $F24A GET KEYBD CHARV(`--(%Definitely works on the SYNASN}GSEMBLER.j++(#I have not modified any other progst++(#with this,but may work. If you have~++(#binary program that scrN}Golls & locks++(#up when should print to GR.0 screen))(!or does the same when keybd input,,($expected, then this fN}CEix should work.('#(PRESS Π to continue'4 +K(4(PUT DISK WITH FILE TO +'(In N}C*DRIVE #1 and press Π+''@.2@68>^D1:*.* A`@b( AP@N}CD##(Type filename to 'xlate and"(press Π " AHQ - AU\*@`d@hjp-$2( N}CI/O ERROR F:A,(@ 32 Ap A7I3B:, @Mj)(INVALID FILE NAME3 Any637@}N}C<@,4:)7@<@8,4:6$6 6.$67@<@<@DS,.D1:367@Wn,.6$D:DEREXL}N}C@,4:)7@<@8,4:6$6 6.$67@<@<@DS,.D1:367@Wn,.6$D:DEREXL}LC/INSTAORIGI&'./67=C_*G VCOLOR FINETUNERZ *`* BY STEPHEN MALINOWSKI *aR}C* ANTIC MAGAZINE f*d6-A6..(&Takes a couple of seconds to install..6-%@js-yAR}G"% , 6-?:,169,7,162,6,160,1132,92,228,104,96,17331,208,201,7,16,87168,R}G165,20,170,41,1208,79,152,41,2,2405,138,41,15,208,69$174,9,210,189,254,254.24,105,198,176,58,10581R}G0,144,54,170,152,41B4,208,21,138,201,9L208,8,238,111,2,173V111,2,176,32,254,192`2,189,192,2,144,24j1R}G52,41,1,208,22,138t201,9,208,8,206,111~2,173,111,2,176,6222,192,2,189,192,2157,18,208,76,98,228 R}CD:FINETUNEINSTAORIGI&'./67=C_*G VCOLOR FINETUNERZ *`* BY STEPHEN MALINOWSKI *aP C(K*@HIMEINSTAHLORGIORIGI23:;BCJKRSYad +@en%%6-F:AA,%AVV}CN$F:AB,x6-&A6-P:'AV,6-&+$AV, +TAAAB6-P:'AV}C&V,6-&+$AV,%@*7%@;TD:FINETUNE.MODYad +@en%%6-F:AA,%AVTTCCCCCCCCE