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 - %|+-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- 165ɛ+,' 20*.. өw2 1``2TOO MANY DIGITSINVALIDS}SG HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4;uT}TG HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4;uUC$B5GDUPITCICVVV@),@ 14?9J?$@a7P EXPLOSIONDUR=LENGTH OF EFFECT,1-10V}VC 6-@(6-@ $ @(12G%2@57=?EGMSG2@WY_agiox< @0|W}WC F*** SUBROUTINE ***P%%2@$(@u,0@48@<GZ6-?yKQ%'AU`d$6-@dl6-@p$VOLUMEnX}XC2 @x!!2@"(%@ ,0@4?!!2@CI%@PMQ@Ur 6-$6-$+%?v,6Y}YC -$+%?,!@-A(%235;=CEK($ D2:EXPLOSNDUR=LENGTH OF EFFECT,1-10aZC,ZfvDULHSTTIMPITCWAIX@14@59<@PAD@IL@QT@5Y\@ad@Ph SIRENDUR=T [}[CIME IN SECONDS6-@(((6-@P,46-@58A(6-6@EP2-@Tj< -F2pv@z@ \}\CP-@@Q Z d 6-6-6-6-6n x/%2WY_agiou/ @0y ]}]C,D2:SIRENDULHSTTIMPITCWAIX@14@59<@PAD@IL@QT@5Y\@ad@Ph SIRENDUR=T ^C(N?RDULHPITCTIMWAI@-0@W58@E=@@EEH@MNUX@d\ EUROPEAN SIRENDUR=SECO_}_CNDS RUN6-@!(!6-@W%-6-@E1@!6-2-FL$@P]<2@ae@itF-@xA`}`C* P 6-6-6-Z d/%2028:@BHN/ @0R D2:EURSIRENEAN SIRENDUR=SECOfaC(NDUVPITCWAIVVIC@-8@fDR@R=@@EX?2H(?sD?\ WHISTLE & BOMBDUR=LENGb}bCTH OF EFFECT6-@&(#6-@*2#-@06:@u>E22KQ@U`<))2@dj%@nr@v$?pc}cCF-@$@> P6-$@ Z%%2@BF@5JN@RV@Zed'6-@iq6-@u'6-@d}dCn'6-%@'6-?y!'%'A+2x28>@BM!!2@QW%@ [_@cn!!2@rx%@P|e}eC@$ 6-$6-$+%?(9,6-$+%?=I,!@M\A G%2bdjlrtzG2f}fC@ (/%2@,.46<>DJ/ @0N D2:WHISTLEWHISTLE & BOMBDUR=LENGagC(NDUTIMSVPITCWAI@-0@58@=@@EH@MP@&UV\SAWING WOODDUR=SECONDSh}hC RUN(6-@2-@"/<%6-@3;6-@?E% @ITF%6-@X`6-@dj% @nP   $Zi}iC-%@ 6@7d A` n-%@;Sx Ap G%2Y[acikqwG2@{j}jC!-@%)@%-:  @@>K2@OZ!!2@^d@hn$?pr6-+'k}kC@ ,$@($D2:SAW@-0@58@=@@EH@MP@&UV\SAWING WOODDUR=SECONDS"lG32000 REM Type Your Program Once -- "TYPO"32100 CLR :DIM Q$(20):QF=7:CLOSE #QF:? "File for output ";32110 INPUT Q$:OPEN #QFm}mG,12,0,Q$:QREM=032130 QCNT=1:FOR QADDR=PEEK(130)+256*PEEK(131) TO PEEK(132)+256*PEEK(133)-132140 QSUM=QSUM+PEEK(QADDR)*QCNT:n}nGQCNT=QCNT+1:NEXT QADDR32150 ? #QF;"Variable checksum = ";QSUM:? #QF32160 QADDR=PEEK(136)+256*PEEK(137):? #QF;" Line num ro}oCange Code Length"32170 QLINE=PEEK(QADDR)+256*PEEK(QADDR+1)32180 IF QLINE>=32000 THEN END 32190 QLEN=0:QSUM=QLEN:QCNT=Qp}pGLEN:? #QF;" ";QLINE,"- ";32200 IF NOT (QCNT<12 AND QLEN<500 AND QLINE<32000) THEN 3227032220 QLEN=QLEN+PEEK(QADDR+2):QCNq}qGT=QCNT+132230 IF PEEK(QADDR+4)=0 AND QREM THEN QADDR=QADDR+PEEK(QADDR+2):GOTO 3226032240 FOR QADDR=QADDR TO QADDR+PEEK(QADDr}rGR+2)-132250 QSUM=QSUM+PEEK(QADDR):NEXT QADDR32260 Q$=STR$(QLINE):QLINE=PEEK(QADDR)+256*PEEK(QADDR+1):GOTO 3220032270 QSUM=s}sC]QSUM-676*INT(QSUM/676):QCNT=INT(QSUM/26)32280 ? #QF;Q$,CHR$(65+QCNT);CHR$(65+QSUM-26*QCNT);"a ";QLEN32290 GOTO 32180SUM=ytGUV^ o SPIDERSSPIDERERASEMEMTOPMBASXSPIDEYSPIDEDAATAVTAOFFSEMMXLINYLINDESp u}uCARByBA #@U(+@60< B Awb@L B2 APT A`X[@`c@dhk@Bps@!x@ v}vC * SPYDER *bBY JOHN AND MARY HARRISON(FOR ANTIC JUNE 1982<&&;@fm,;@qx,;@|, w}wCSF!!ԠŠ٠ҠқPĠԠӠŮZ6-F:A,&@WdAnҠ٠Ҡ x}xCқxP@!)-'+@/5?@9?%@C_%L(>:A%,P +@cg%@kx6-%@| y}yGԠƠҠٛBBy&&̠ӠƠҠٛ6-AV$%%ŠŠҠ z}zCŠț'AY@F,'B2V@0YŠ͠ӛB2w@]̠ҠΛ {}{C6-A6-@HM((ҠǠҠ̠ԛ6. WΠқ"B2H, |}|Gנқ6-%A%%A%@"J T ^36,36,90,60,60,90,36,36h##ӠƠ٠Ġ }}}Gśr""ӮӠΠƠś|!!ӠՠϠŠӛ##ҠҤԠǛ""Ԡ ~}~G٠ΠŠͮ%%6-F:A@,%AV$F:AA,%%6-F:A4,%AV$F:A5,6-AV$%A& }C-6-P:'AV,6-&AV$%@1;%@?L+%@P`A(+%@dflw+%@{ }CA(+%@CԠРנҠқ''67@GK<@OZ,.7<%@^,##ŠҠĠ }CŠϭӮ'6-$,6-@y08'6-@5<E/0@IKQSYg/A@kr70x@ }C@ 70@@!@%. 0@26@ :>@B& A0: ,DŠҠśN }C T: ,"@)A`X6-%@-8b!@<B6-H_l##A$@Hcg%@kvv-@z@ }C U ""ĠˠĠԠқӠٮ6-R:[g,"@kA?#"@ }C )"@)"@#16-&@'1?6-&@5@5!@DJ* @NX'6-%@\f56-%@ju?#"@y)" }C@ )"@ 16-%@(?6-%@,75!@;A* @EO'6-&@S]56-&@a̠ΠƠ }Cқ67<%@&,.67&@*0<&@4D,.67%@HN<%@R,.##ˠҠҠԠƠś) }C @A 6-@A )6-%@$I )!A6-A)6-&@MX) @\d6-@hr)6-%@v ) }C!A6-A)6-&@"*!!̠ΠƠқ4B2H>נҠ̛H /R A }CI\!!ŠϠנŮӛfӠӠƠήp @MTz`,Z\bf'/lp@t9/AY }C@ K/AY]/%'-`$ D2:SPYDERTAVTAOFFSEMMXLINYLINDESp BCd89*<WORDYWORDATOCHBASOLDCNWCPFLTLTLSSTIM  AA`hlAVpBsDBR$}C@ @ @ @#' A+, 36 @;>@CF@KLSV@P[^cf@Qjo w* ZAHRC$}CON *@**BY L.M. SCHREIBER FOR ANTIC MAY 1982(&&;@DK,;@OV,9@&Zd,2. +@h.GRAPHICS 2 WITH NO$}CS TEXT WINDOW<:6-F:A,:FIND OUT HOW MUCH MEMORY IS AVAILABLEFF6-&@WFPLACE CHARACTER SET 1024 BYTES BELO$}CqW TOP OF MEMORYPY6-BsD6-$AVYSTARTING BYTES OF OLD CHARACTER SET AND NEW CHARACTER SETZJ-wA$}GJMOVE THE NUMBERS, SYMBOLS AND UPPER CASE LETTERSd96-F:%,9GET A BYTE OF THE CHARACTER SET FROM ROMn % R$}C%ELOCATE IT IN RAMx E6-%@)EDO NOT REPLACE THE SPACE OR THE EXCLAMATION POINT>-%A>BYTES IN T$}GHE CHARACTER SET TO BE REPLCED.".READ THE NEW BYTE FROM THE DATA BASE1 1REPLACE THE OLD BYTE WITH THE NEW ONE$}G ##255,255,255,255,255,255,63,63129,66,66,36,36,36,24,24 128,224,120,62,31,31,15,1515,31,63,127,25$}G5,0,0,0##63,63,127,127,255,255,255,255##255,255,255,255,255,255,60,60%%252,252,254,254,255,255,255,255##255,2$}G55,255,255,127,127,63,63%%255,255,255,255,255,255,255,255%%255,255,255,255,254,254,252,252!!255,126,60,24,24,60,1$}G26,255 1,7,30,124,248,248,240,240240,248,252,254,255,0,0,0%%255,255,255,255,255,255,252,2521AV1C$}EC'HANGE TO THE NEW CHARACTER SETE@w+-3:$(@>H}6-@LP@T[E(@_l#1-@pt@x1($}C@$&'(- (-@$(@,3((@7H%)*+.$-@LP@T[$(@_l,&-@pt@x&($}C@&*(0-@@!(0(@,4 & , (9 E(-@IM@ QX((@\m, * ,X-@qu@y*($}C@ZAHRCON66-@%B6-@)/N6-5HX A "i-@LU(@Yc *-@gp9(@t>iER$}C8ASE THE LAST ARROW AND POSITION THE NEW ONE,36-%@<D @uHP)6-@9Ti3 A06M"@umu6-@By56$}C-P:H: ,$@,A"@"*M6-@4.9@"@=E6-@GIRJ=-@VZ@^e%(@iv>:,1!Az=6$}C- T7 T:,"!IA7CHOICE HAS BEEN MADE^A R:OT,"@X\A`ACHECK FOR MOVEMENT ON JOYS$}C TICKhn@w*R:%*,"@.>06->6-&@BJJ @NVV6-@ZnCHECK FOR TOP OF MENUr_R:$}C ,"@ 6-,6-%@!)8!@-5D6-@9t_CHECK FOR BOTTOM OF MENU| A  A-@wx$}C !"@%*6-I:,-k(@)5}&-@9=@AG2-@KTJ(@X^>:@cb%,N kPRINT LETTERS ON $}CTHE RIGHT?-@@ &#-@*3;(@7=>:@rAS%,? ?-@W[@ _e#-@ir;(@v>:@$}C%,? )6-P:H:",$@&-,)#A1N%"J 6-B:,"6-@RX&'@\JPOSITION TO CENTER THE QUESTIO$}CN MARKSU-%&@$!-@(/0(@3g?4 UQUESTION MARKS FOR THE LETTERS-@ko@&s&68,-$}C* ;67@",. L67@&3,. [67@7B,.g6-@FNs6-@RX6-^d6-js6-yE$}C %6-+&@,$@ %@.%+-;(@2J>:,E A wR:PU,"@Yf-C(@jr>:&@2v%8&@$}C,,Q6-&@]"@!)i6-@-7w6-&@;D'"JR6-@V^'6-@ bkR:qv,"@z-$}C C(@>:&@2"%8&@&2,,Q6-%@6>]"@BJi6-@NXw6-%@\d"@hp6-@t1"$}C@ *"@%6-@$16-@(1=+R:7<,"@@D)R:JO,"@SY=@w]_en T:tw,"}$}CA`& A04@w"$*448&@8V,"A(A:868&@Z,-A(8KEEP LETTER BLUE ON SC$}CREEND,6-&@2;,GET TRUE CHARACTER VALUENb-@?\B:,"@:7<,,"8-%&@`d@hoH(@s>:,V67$}C<,.>:,b6-@'X b"@+KA0l A@v16-@POY6-%@]m1 A0%$@qO-@$}C@ $(@&6-@"&@*1E(@5L,O AO-@PT@X_$(@cm,6-@qu@yE($}C@*O AO-@ "&@*1$(@5?(6-@ CG@KRE(@Vm,O A0-@qu@y&($}C@ &*(0 A.-@$(@,3$(@7N,. AS-@RV@Za&(@eq)*+8-@uy@}$}CI(@ $&*(S AO-@(,@07$(@;E$6-@IM@QXE(@\s%O AO-@ w@$}C $(@ -6-@ @#*E(@.E.O A.-@IM@QX$(@\s'. AL-@w@$}C $(@ #*-B(@"D>:%A(,L A16-@HR6-%@Vf1 A@%$@jsO-@w@$}C $(@ 6-@@#*E(@.EO AO-@IM@QX$(@\f6-@jn@ryE(@}$}CO AO-@@#*$(@.86-@<@@DKE(@OfO A 0-@jn@ry&(@}$}C0 A.-@!@%,$(@0G. A S-@KO@SZ&(@^j8-@nr@vI(@$}CS A*O-@!%@)0$(@4>6-@BF@JQE(@UlO A4O-@pt@x$($}C@6-@@#E(@'>O A>.-@BF@JQ$(@Ul. AHB-@pt@x$($}C@*-B(@3>:%A(,Rj-@7>(@BH>2NRAVZ@^b@ftH A j2z$}C \>T:$',"-;" A 4-ACIk> Af A`p: -@oqw6@$}C62 @(: z7@,D<,0A% @HgA0%FINISH BODY-@ko@s+(@$}C 5 A G-@ $@(/](@3JHURRAY!!6-P:H:@NS,$@W\,%@`A A 0A @$}C 6-@B# A P6-@G'< A P6-@4@I,T:OR,"Xu" A , A4-@y@$}C %(@9>:,4PRINT AN EYE A 8-@=A@EL$(@Ps'. A 8 A -@w@P$}G $ COULD COUPLE KENNEL KINDSCROCODILEFRECKLESBACKWARDS PACKAGE NICKEL$}CdMECHANICLEPRECHAUNORCHESTRA SKUNK TRAGIC ANTIQUE D2:ZAHRCON`hlAVpBsDBR$cCD !P1MTONWAICHBROUTINTdARHLA0PSAXkBB@ps@Pxy }(}C A@  A @ ))'*: TUNING YOUR ATARI B*y,,BY L.M.SCHREIBER FOR ANTIC AUGUST 1982(;@ }(}C,;A ,24 +@<"AF:A,4AA@V<j6-F:A,&@Z&A8AA$jST(}C_ORE THE BEGINNING OF NEW & OLD CHARACTER SETSFl6.h͑`*6-A066-AclMACHINE LANGUAGE SUBROU(}CnTINE MOVES THE CHARACTER SETPE6-?:C:,,6-$AV)AVEINSTALL NEW CHARACTER SETZM-%@rx%@q|(}G"%) MCHANGE THE CHARACTERS FROM ! TO $d^^0,254,124,254,124,254,124,254,108,0,254,254,124,254,124,254,40,108,0,2(}G54,254,254,124,254nWW186,40,108,0,254,254,254,254,56,108,56,16,254,56,40,108,0,56,108,56,146,124,56,40x440,0,56,108,56,(}C*16,254,56,0,0,0,56,108,56,16,124@#@.2@68>iK:@OPEN THE KEYBOARD FOR READ-@mq@ u2(@(}C! ! ! ! ! ! ! !D-@#@'.a(@2r% % % % % % % %THE ! AND % ARE THE NEW CHARACTERSI-@v@(}C2(@ Fc d e f g a b cIPLACE THE TONE NAMES(AAJf(RESTORE THE MENU3-@jlry3(@}(}C ٠3-@ $@(/3(@3O Ԡ2-@SW@[b2(@f ٠T(}C6- )@#.A)xTGET THE KEY PRESSED-REMOVE THE MENUW!A'6-&A(/A}(}C4WINVERSE FLAG IS ON RESET IT TO NORMALP @I8>)!@RBZ+AdAU5 A^PNOT A NUMBER FROM 1 TO 4#(}C 6-&@H #GET THEN NUMBER''APA@A A`* 6.*REMOVE CONTENTS OF THE STRINGI6-A`(}C 6-%@F1"AA`IONLY ACCEPT 100 NOTESW)@JT$"@'XA`WGET THE KEY PRESSED-RETURN(}C? TO MENU ON ESCAPE KEY"W!A'6-&A(/AExWINVERSE FLAG IS ON RESET IT TO NORMAL,P @I|)(}C!@V !+AdAU5 A%MPNOT A NUMBER FROM 1 TO 86F6-&@HQ67<,.=:,FGET THEN NUMBER-PUT IT IN T(}CHE STRING@56-$@I5OFFSET IT FOR THE PROPER POSITIONJOO'@MyAPA`ApAAA}(}CTAA T ^6-A! 'C'h6-A 'D'r6-@Xm 'E'|6-@q 'F'(}C 6-@ " 'G'6-@r&; 'A'6-@d?T 'B'6-@`X'C'ZZLINES 430-450 MAKE THE CH(}CFARACTER APPEAR TO PUSH DOWN ON THE BELLOW AND MAKE THE TONEs6-@JR-@V]1(@at>:A4,=-@ xS((}C@>:A0,o2!@%)@-<s g-@@G%(@K^>:A5,1-@ biG(@m>:A1,c2(}C @@&g K-@*1%(@5H>:A6,1-@ LSG(@Wm>:A2,K 2sy@}(}C@g-@%(@"5>:A5,1-@ 9@G(@DS>:A1,c2Y_@cg@kg KKLINES 47(}CH0-490 RETURN THE CHARACTER AND BELLOW TO THE CORRECT POSITIONg-@LS%(@Wj>:A4,1-@ nuG(@y>:(}C Ab,c2@@#2g ^-@6=(@AM%*-@ QX9(@\d![2jlrtz(}C^$&-@ $&TIMING LOOPPLAY A SAMPLE TUNE6.11556654433221--ROUTINE TO PLAY BACK THE (}C'MELODY ENTEREDi6-A@6-%@+&B:,46-A:7<,,> A iKEEP PLAYING UNTIL THE END OF THE STRING& (}CDA`0D2:TUNECHBROUTINTdARHLA0PSAXkBB@ps@Pxy }(Cd01OSOJUPDOWNPMBASCANDLFLAMJAOFJA3A \ i A(hsB'h@xBA,}C@  B9% BCt @ #& @t+, 34;>@CF@RKVB(#@Z ''*** BURNING CANDLE SIMULATION ,}C=***//BY LINDA M. SCHREIBER FOR ANTIC DEC. 1982AA9@PAE<@IP,9@TX<@\c,;@gn,;@r,([6-F:,}C A,&@2[SET ASIDE 2K FOR PLAYER/MISSILE GRAPHICS - GRAPHICS 7 NEEDS 4K26. hȱ͈`<6. hȑ͈,}C `F0 +@0HIGH RESOLUTION WITH TEXT WINDOWPCBBy6-$AVCTELL ANTIC WHERE P/M GRAPHICS BEGINZXA,}C Y@b 'B2w@XENABLE P/M GRAPHICS FOR SINGLE LINE RESOLUTIONd&AA&COLOR OF FLAMEn',}C AA'COLOR OF CANDLEx$AA $COLOR OF JAR'AAT'COLOR OF OXYGEN%A @,}C4%COLOR OF DISHG-%A$%A C':c+ GCLEAR MEMORY FOR GRAPHICSU @gm,Aqu@uy1/,}C A@pC/@@@p &U-@P*.@u2C=Ae@GM=@QV@Z\bdjS:46-%A&,}C94LOCATION OF CANDLE IN P/M MEMORYO #A!-?C@%G%"-%1 OREAD IN THE DATA FOR CANDLE,B,}G2IA ,PUT CANDLE ON SCREEN36-%AW3LOCATION OF FLAME IN P/M MEMORYr6-%A0AP:%A6,}Cc,'AVeA+%A6,&P:+%A6,'AV,$AVrJAR IN P/MDAU#-@gk@Po1%A),}C$5 DDRAW THE JARCB2X@(_'B2PACPUT THE JAR ON THE SCREEN8 @ck!-@os@Pw8PUT,}C OXYGEN ON SCREEN06-P:H:@$P,$A`,0COLUMN OF OXYGEN-6-P:H:@TY,$@]y,-ROW OF OXYGENI!@`},}C* @ -!@CEApIDON'T PLACE IT IN THE JAR"<!@@I[* A-!@i_Ap<OR ON SAUCER,N6,}C8<@ ,-%68<@p,-NPLACE THE OXYGEN LOCATION IN THE ARRAY6 , DO IT 50 TIMES@'-@tx@|,}C'OXYGEN IN JARJU%6-P:H:@"',$@#+0,%@c4@G6-P:H:@DI,$@#MR,%@FVqUAREA OF JART:68<@u,-%68,}C<@ 6,-:PLACE IN JAR ARRAY^* , 6-@:\*DO IT 10 TIMESheAR@`1(PRESS TO MOVE JAR,}CG4(V(PRESS TO LIGHT CANDLEeINSTRUCTIONSrN F:B2y,"@KOASNNO KEY PRESSED - MOVE OXYGEN & FLAME IF,}C LIT|h@w*FF:B2y,"@.2*"8<*"BAhTURN OFF ATTRACT - LIGHT FLAME?lF:B2y,",}C@" A0."#8@'/L-@37@;Eh,8<@IR,8<@Vd,l 3"j A@# Ap,}C3FLAME NOT LITE6-@ l!B2HA + A EANIMATE FLAME ON SCREEN ApR"r#-@,}C@Q !/6-?:C:,,3 ?6-@%CB$RMOVE JAR DOWNP-@GK@QOe#6-?:C:,,' 36-ks?6-@wB$P,}GMOVE JAR UPDATA FOR CANDLEcc8,8,12,28,28,30,62,62,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,1,}C26,126I%6-P:H:@,$@"',%@+dIPICK ONE OF THREE FLAME POSITIONSP#A0%#-jn@ r'"/%,}G3 PREAD IN THE DATA FOR FLAME 16,8,12,28,62,62,28,24,8,48,4,6,12,60,60,28,48,16,8!!32,16,24,56,30,30,12,1,}Cp2,4,2``DECREASE THE OXYGEN IF FLAME IS ON AND JAR IS DOWN. FLAME GOES OUT WHEN THERE IS NO OXYGENz"@t*"@,}C#@ ?,8<@",8<@&1,M6-&@5;Y"AGe6-MYwB2H_kz$&*"qA*N,}CO OXYGEN IN JAR0-@$@(4;6-P:H:@8=,$@#AF,%@cJV]6-P:H:@Z_,$@#ch,%@Flrg@v,8<,}C@,8<@,68<@#0,-68<@4@,-: @DY, Dr-@]a@Pei@ms)@wE,8,}C<@,8<@",_6-P:H:@&R,$A`,rGET A NEW COLUMNNU6-P:H:@V[,$@_h,3!@`lr* @vG!@,}CC&AUIN THE JAR!X?!@@*<* A-!@i@gA?ON THE SAUCER!!b<68<@kx,-%68<@|,,}C-/@ d5,9 <$ D2:CANDLEFLAMJAOFJA3A \ i A(hsB'h@xBA,+C ALOO '(.Z""ROUTINE TO CRUN NEXT PROGRAM;@ ^h,@elntA0}Cd@2 -@@#"67<,.>:, 6-?:C:,,HH162,253,154,169,183,72,169,84,72,169,4,322x}C)O  NPLAPITCDUPPEXI@.1@69@>?FI@NQ@VY@] --ATARI BASIC MUSIC by Jerry 5}CTWhite 5/4/82 AMAIN PROGRAM LOOP("A 2 "6-%@Xa<"gk@oF A05}C@P REST TIME DELAY SUBROUTINEZA@d F:A@,FJANWn @@[xPLAY NOTE SUBROUTINE+A5}C@6-%@+6-&@#;&6-F:A@,&"ATAp!@X`6-@dkO2qw@{5}C/2@ @E2@ &@*=O A@s%2CEKMSU[aG2@egmouw}5}Ci2@ "(s @@,""DATA FOR POP GOES THE WEASEL??121,6,91,6,0,6,91,6,81,6,0,6,81,6,72,6,605}G,6,72,6,91,6,0,6::121,6,91,6,0,6,91,6,81,6,0,6,81,6,72,18,0,6,91,6,0,6@@121,6,91,6,0,6,91,6,81,6,0,6,81,6,72,6,60,6,75}G2,6,91,6,0,18//53,12,0,12,91,12,0,6,68,6,72,18,0,6,91,12!!DATA FOR TEN LITTLE INDIANSLL121,18,121,6,121,6,121,18,5}G121,6,121,6,96,18,81,6,81,6,96,6,96,6,121,18QQ108,18,108,6,108,6,108,18,108,6,108,6,128,18,108,6,108,6,128,6,128,6,162,185 } GQQ121,6,121,6,121,6,121,6,121,18,121,6,121,6,96,18,81,6,81,6,96,6,96,6,121,18,,108,18,108,6,108,6,162,6,162,18,121,485 } GDATA FOR EXIT ROUTINE"@@91,12,0,6,121,6,128,6,121,6,108,24,121,24,0,24,96,24,91,24,SETUP/DISPLAY/OPTIONS6t +5 } C 20@H:,$@#%+9DAR@=CV@GK@O]hA@agt6-m@ ( ( (A5 } GTARI BASIC MUSICJ!(( by Jerry White(!(T)()(Type 1 for POP GOES THE WEASEL^((((Type 2 for TEN LITTLE IN5 } CNDIANSh5(#(Type 3 for PROGRAM EXIT5AdAUrYF:Ad,"@1RX*-@\`@d1(1CAdAU5}CO6-@C Y @@*|QF:Ad,"@0.4*-@8<@@O1(2=6-@DScG#A@Q @@goF:Ad,"@&5}C*-@ @51(3CAdAUO6-@9KY#Ae6-@OUo @@Y ApEXIT/RERUNF5}C@ @+AR$Y.(1(;(BASICC(ISF% D2:BASMUS@] --ATARI BASIC MUSIC by Jerry 4WCX  BNEAAMOUNTNSMLJJLEPPP?P8 AB_b@gj@ or@w @9}C @ @c @(\d99TRANSLATE 5/28/82 BY JERRY WHITE for ANTIC MagazinenDD;@`r,;AR,;@v,;@9}C ,9@'<@'+,x; 6. 67@/<,. +67@@j,.16.; A0+ 6.6. 6-px+-@|9}CL7<,4.167B:,%@"X,. DOLLARS AND B( DOLLARS AND L A%"@\b6-h% A&7<9}C ,4,6-@.& ApS A6-4N'6-A:7<,,86-8<@R_,I6-8<@cj,S Bnw%"}9}C6-@ '% AAA")"&@+3)"&@7?)"&@CK)"&@ObA@!!"@fl*"@pA@9}C7<,01A0Q6-@"2%6-A:7<%@6D,,66-8<@HU,G6-8<@Yq,Q A@36-%@u"6-89}C<@,36-8<@*,&67B:,%@.M,.7<,&(7<,F"&@QU*[h867B:,%@l,. HUNDREDF(9}C HUNDRED+@%%67B:,%@)?,. +(G"@CP-67B:,%@Tg,. THOUSAND 96-mG( THOUSAND 9}C ":7&@+<,400167B:,%@/L,.NO :(NO ,E7&@Pe<,401267B:,%@i,.CENT;(CENTE 9}CA 6'67B:,%@E,.CENTS'(CENTS@D 6-B:,((7@IS<,6(@W]7@ak<,A(@oD$Jdd6.ZO9}CiNETWOTHREEFOURFIVESIXSEVENEIGHTNINETENELEVENTWELVETHIRTEENFOURTEENFIFTEENSIXTEENSEVENTEENTVV67B:,%@m,.>EIGHTEENNINE9}GTEENTWENTYTHIRTYFORTYFIFTYSIXTYSEVENTYEIGHTYNINETY^ff1,3,4,6,7,11,12,15,16,19,20,22,23,27,28,32,33,36,37,39,40,45,46,51,529}Ct,59,60,67,68,74,75,81,82,90hRR91,98,99,106,107,112,113,118,119,123,124,128,129,133,134,140,141,146,147,152rU +z9}C@ @1@@9!ACAA`UAR@E|-(-(" This program translates numeric0(0(%9 } Gdollar and cent amounts into English.0(0(%Input must be numeric so do not enter0(0(%dollar signs. Always include9!}!G decimal/(/($point between dollars and cents, and/(/($a comma between the thousand and the-(-("hundred colu9"}"C@mns when the amount is((greater than 999.99.C-@DH@'L\".68<@`m,-?68<@q,-C G9#}#CV(.(# Make sure your printer is ready,1(G(then press START. F:B2y,@ZvAa A`@z89$}$C@ @#P:B B'3TAR9a(>:A%,L(-("Enter numeric amount or just press0(L(th9%}%C+e RETURN key to quit$6-B:,$"1NApF APF @RX)!@ \d)7&@hn<&@r,0.AP9&}&C   @$A0 j*!@(0*7&@4:<&@>,0,7(>:AS,`($A , MUST SEPERATE THOUSANDS,HUNDREDSj 9'}'CAD B@(>:A%,(0( CONVERTING $3(D(@D]$ A0 Aa&.(>:AS,$(INVALI9(}(CD AMOUNT. AY0@(>:AS,6(! READY PRINTER THEN PRESS START@ A:% +_((BASIC"(IS%:y})CVFGg/SPSIASITSCLLINTAPFPLLLASOLINFRTSBE^_egmouw}=*}*C !" )* 12 9: AB IJQRYZabijqry=+}+C $%,-45<=DELMTU\] de!lm"tu#{=,},C* TINY TEXT *Stan Ockers Sept-81ACE Newsletter Nov-81Mod by Jim Carr 01-OCT-82 =-}-C 5;@@ ,$-@@@">167<,. 5 l&;@EBa,;A ,;A(,=6-I:gl,&@PpD;,X-=.}.C@ @E\"h67,.>:,l gg104,104,133,204,104,133,203,104,133,206,104,133,205,104,104,168,162,0,161,203,145,203=/}E/G,198,203,165RR203,201,255,208,2,198,204,165,203,197,205,208,236,165,204,197,206,208,230,96(%-A6AC"!=0}0G% 2^^104,104,133,204,104,133,203,104,133,206,104,133,205,162,0,169,240,32,53,6,169,40,32,91,6<__165,207,208,8,169,1=1}1G60,32,91,6,24,144,10,169,40,32,53,6,169,120,32,91,6,169,240,32,53,6,96F]]133,208,161,203,201,96,176,11,201,32,176,5,24,105=2}2G,64,208,2,233,32,129,205,230,203,208,2PZZ230,204,230,205,208,2,230,206,198,208,208,221,96,133,208,169,0,129,205,230,205,20=3}3C>8,2Z 230,206,198,208,208,244,96n6-AA!ADJ3@NPV]S@ae@ikqE:d67@=4}4C#,..u67A,..67@'7,.x-6-F:@;J,%AV$F:@N_,%A 96-@5ckE6-@owQ6-@{]=5}5C6-@ i6-@fu6-@"( A,c"00((INSERT TEXT OR ... PRESS SELECT TO EDIT,L-ikq)(&B:,=6}6C FREE 86-R:,L"@#6A01,"@:S* B:,&A ,6-%@@Wb6'"@f*!A'6-&@@=7}7C ;,"@)* B:,&A,6-%@-8@'"@<P*!AA'6-&@TJ##6-?:A6}>CAdAU AR A P76-F:A`,%F:Aa,$AV%@V^K&@bf@pjr_%@v@=?}?C s%@ A%@!%@)1%@59@=H%@$LP@eT_1%@%cvF:A`,1%@&zF:=@}@CAa,)6-%@!"@%-)6-@1G7(>:A%,"-@ KMS[."@_s7(LOAD "@w(E=A}ACDIT"@'(PRINT"@+?(SAVE"@CV(DISPLAY.-\`@d.(PRESS START TO BEGIN=B}BC &-@@0, +2B2y@0A2F:B2y,"@EaA- F:B2y,@eAU0rAdA=C}CC U'-@ @(4(>:A%,F-.2@6>rA BVAAAZmANg-@qu@y0(>=D}DC$:A',>:AX,4 7(K-@(,@0Sc( >:AY, g Ra-Y]@a-(SET FORMAT CONTROLS?-=E}EC @a(LINE LEFT IN- TAB PAGE FORMSf%(SIZE MARG DENT STOP SIZE FEEDf(>:A',,>:A',,>:=F}FCFA',,>:A',T;)(,>:A',,>:A',;-LP@TX36-A@)6-A@=G}GC/3 Ab6-A@ A 76-59+?C+-IM@QW76-] 6-6-6-@:7<,,=H}HC%%6-&$+"@ ,&$+"@ !-,5!"@17*"@;S*+&,'3 56-%@Wb"@fl*"@p(?"@=I}IC *"@)-@/&/3 3 ?6-5@."@DJ*"@N](("(.6-cl6-rx6-}=J}JC56-%@6-%@ *5"%@.RAe*!B:,&AA 6-@Vy* A36-@:7<,, @2}=K}KC)6- !3 A"@2%/6-%@3I A@B"O[*6.7%@_e<&@it,86-&@xB A=L}LC!57<,4 +6.7%@%+<&@/G,5 A. 7&@KQ<&@Ud,4 .6-&@hs6-@w66=M}MC-&@ "7<,0 ,6-%@&=6 Au !"%@Ae6-! A 6.6-%@iy167B:,%@}=N}NC(,.7<,17<,0 Aa!@,:%6-P:'%H:@H,,1!NV?-@ZiU67B:,%@m,. Y a6-&=O}OC 6-&@"A"@!%*!+3'-@7F=67B:,%@J`,. A %6-%@d A*""6=P}PC.7%@ <&@",/K"@&06-%@4F'!+&,36-@JRA-@VrG3 K 4ZB6-%+"@ v,$%+"=Q}QC@ ,$%+"@#,$+&B:,,'@'/N!@@3;Z6-@@?J> "@NV 37@Zj<,H "@nv (7@z<,=R}RC RA>\ 6- A:6-F:A,"@BN0ATg: A 00"m* B:,&Ay=S}SC 0A@<>#6-?:A6$i>(ERROR F:A, AT AV$F:A=T}TC7,%F:A,[(PRESS RETURN TO CONTINUE_i A;^|( ENTER FILE NAME9@bf@jlrM6-P:B:=U}UC,'A(,Z(@f"$*r6-0E| A =-@I`6-A($9(@d7&A'<,= 5 (=V}VC@7%@!@WuC(L67,.P H@y!=X}XC67%A(,.,@2>A6AH A6V D2:TINYTEXTSBE^_egmouw}<JYG9:2 3BKMSMAINNAMETEMPSEARCHNAMESEARCHCITYFIRMADDCITYZIPPHONEQ2CATCCAT1CAT2CAT3CAT4CAT5CAT6CIVAZ}ZGCIV2NAME2B4BFLAGFLAGFLAGOOPMENDISBRREBRTITLLQDUMMMARNLFLAGFLAGLXXLQLABELCLQFLAGSTSTRENNL1A[}[COL1L2L2QPAGL1LNKEL1L1L2L1QL1L1IVLLLLTERERRLVERRXYBWX_`fhnpvx}A\}\C  !# )+ 13 9; ACIKQSY[acikqsyA]}]C $&-.56=>EFMNUV ]^!ef"mn#uv$}A^}^C% &'( !)()*01+89,@A-HI.PQ/XY0`a1hi2pq3xy4}A_}_C5 678#$9+,:34;;<ST?[\@cdAklBstC{DA`}`CEFGH&'I./J67K>?LFGMNONVWO^_PfgQnoRvwS}Aa}aCT UV ""** CHRISTMAS MAILING LIST **BY BILL LUKEROTHd##REVISION 0.3,WRITTEN 10/07/82Ab}bCXMEMORY USED:32K==DESCRIPTION:mailing list,prints labels or address booksX;@(\e,$-@im@(q167<,.Ac}cCN_5 A6-BTXallows for 140 namesWW;,;A,;A,;@(RY,;@(]d,;@(ho,;@(s,;@(Ad}dC ,~~;@,;@#,;@'.,;@29,;@=D,;@%HO,;@%SZ,;@%^e,;@%ip,;@%t,;@%Ae}eC,Q<;@,;@/,;A,;@3:,;@>F,I6.L ]Q6. D6-c 6. CATAGORY #,6-Af}fC 86-D6-&76-A*26-A6B +6-AF[76-AP+@_c%@gm)0@qu@yCAg}gC0@ @]0"&@*,29h(@=D(@Hd ӡ(@hrM!(@vy} Aq}hCVYZ?ddiCb'DOS SYSb*+DUP ,SYSbUEXPLOSN0 :bZSIREN@ \b^EURSIREN baWHISTLE` hbgSAWp yblTYPO} LSTjC btSPYDER b4ZAHRCON )bTUNE0 ;b!CANDLE@ JbCLOADP [bBASMUS` bTRANSLAT b0)TINYTEXT kCbgYXMASLIST b SCROLL1 ,b SCROLL20 :A{}{C AS,A(67B:,%@$?,.6.( Ap%2EI@`MQ@UY@]e9-@iyAP= _2}A|}|C hb((2TURN RECORDER OFF,THEN PRESS 'START' TO CONTINUE. F:B2y,@lA@A}}}C +. ''A AA2oAp&&(WHAT NAME ARE YOU LOOKING FOR?6-@(sy A}A~}~CR 6.6.&33(*WHAT CITY?(OPTIONAL.IF NOT NEEDED TYPE'N')06-@(V\ A`: 6.6.?6-@A}C)D-B:,&A AI& Ax-5"@9B'& AFbN"6.7<%A ,"6-hS@@line 600 comparA}C6es name$ and search$ character by characterX<-@:B:,6.7<,*6.7<,36-@:,<6-@:,]!*%A(A}C!6-@ b "@A0l,6-%A' A,names matchv ))(!NO RECORD FOUND.ARE YOU SUREA}CS THAT.($(IS THE CORRECT SPELLING?. A4NAP&6.7@WW[<@_f,&6-lw-@{BA}C :,! Ax!"@ A$?7<,07<,6-@CP "VAPM( FOUND ONE IN:(@("SA}C;TILL SEARCHING FOR THE RIGHT ONE.C(M Av6.7@?C<@(GR,16.7@)VZ<@V^i,H6.7@Wmq<@u,_6.7A}C@ <@,v6.7@H<A,6.7A <A,O +NT'0@X\@`d@h+ 1(7(=(A}CC(I(O( t-@ $@()(DO YOU WANT TO:>( .PRINT A LABELY( .DELETE THIS LISTINGt( .CHANGE THA}CLIS LISTING( .RETURN TO MENU (CHOOSE 1,2,3 OR 4*!! @PV)!@ZuA4''A@A yA A}CPA 1Clabel printing routineH Ap5?R/#@CG@KMS^P:/6-dm\ Arqf AA}Gfile deletion routineH(D(8ARE YOU SURE THAT YOU WANT TO DELETE THIS(ENTER Y OR N)H0YA A}CAu AI[# 6.[(IIF LINE IS O.K. PRESS RETURN.IF NOTM MAKE CHANGES AND THEN PRESS RETURN-#((HERE A}CARE YOUR CATAGORIES:)- Ab(-@,.4?-@CG@KX! Ax\d!"@hAp ")A}C> B:,!(>:AS,#') Ap, B:, "67B:,%@BZ,. , A@ A^n67B:,%@r,.$ A}C.(67&A<&@#,.( A'TB$$new data base creation routineLc0@X\@`d@hc(ATHIS IS GOING TOA}C[ ERASE ANY ADDRESSES NOW IN MEMORY.IS THAT O.K.?V((ENTER Y OR N)`0YA_j\ 6.\(IYOU'RE GOINA}ChG TO HAVE TO FURNISH THE NAMES FOR 6 CATAGORIES.IF YOU DON'TtAA(9WANT TO NAME A PARTICULAR CATAGORYl JUST PRESS 'RETURA}GN'~((1 (2 (3 (4 (5 (6Z(V(JDOUBLE CHECK A}CQTHE CATAGORIES,IF THEY ARE O.K. ENTER 'Y',IF NOT ENTER 'N'.Z7 0Y+W-(LET'S TRY IT AGAIN:7 A0A}Cadd a file routineM +!''0@+/@37@;C36-@GO?6-@SF6.I#M ) B:,"(ALL FILES FA}GULL) A<<(YOU MAY NOW ADD UP TO +&B:,,'A ADDRESSESm(ź(Ժ,(ٯԺM( A}C ź7@<@,,m(Š7@04<@8P,$$( ٺ7@TX<@\o,( ( ( Abs##@A}C@ $K:-@(,@09& Ax=E"@IR#& AV8 "-(8move cursor toA}C correct position AP. 67B:,%@2F,. @JZE67B:,%@^,.(A(!WANT TO ADD ANOTHER(A}C1ENTER Y OR N)E(#4YA2 A5Xnaddress book routinexU0@\`@dh@lU(3DO YOU WANT A}CTHE BOOK SORTED ALPHA- BETICALLY BY:4( .LAST NAME(.CITY%(OR4( .UNSORTED((ENTER 1,2 OR 3)! A}C Ax!"@A#P +)/'0@37@;?@C^+ <( DO YOU WANT:F AbbsP Ab4 +y(A}C(0( .PLEASE STAND BY4 O6-@2:6-@>F'6-@JR36-@(VnOA`APAr/6-@WA}C 6-@W'6-@</city$%%-B:,&A@@R6A0@Vk'A"q' AA}C 6--@bAE6.7<%A ,16.7%A<%A,E"@fyA7-@}A}C@(:"6.7<,1@:,!AY76- 7-@>B@(F"6.7<,1@:,!AY76- 7<,/7A}CD<,A0=67<%A ,.167%A<%A,.=6-@Ht  sorting completedn +z6A}C-@ !6.Y.6-6@$:6-*1Z@59@=?EPP:d ARTZn Ae^8($(DO YOU WANT ANOTHER A}C COPY?8"@AC((ENTER Y OR N)&4YAGP0 ATwDmass mailing routineNA0@{A}C@ @;A(DO YOU WANT MAILING LABELS FOR:X Ab?R Abb ApVbl:6-6Afm0@qu@yA}CP:: Aev A )80@-1@59@=J$6.8"PAIee(]SINCE YOU HAVE CHANGED SOME FA}C+ILES(OR CREATED NEW ONES)YOU MUST NOW SAVE/ jTHE DATA ON TAPE.aa(YINSERT THE CASSETTE,REWIND TOn START,PRESS 'PLA}CmAY' AND 'RECORD' AND HIT 'RETURN'.MC(;MAKE SURE THAT YOU USE THE DATA TAPE, NOT THE PROGRAM TAPE.M AUq##@A}C@ "C:.-@&5A(**@9;AO. Q(@S\(@`i*(@mv7(@zA}CD(@ Q(@EH"P:B:,'A,B:,'A>6.7@IR:AS,$@z*A}CcH(D(8DO YOU WANT TO MAKE A/ANOTHER BACK-UP TAPE(ENTER Y OR N)H44YA >"@gkAov+ +|A}C/(((PROGRAM TERMINATED.+ 6.6-@3=:)@A$"AUAP:check return buttonG"A&*A}C!@ '6-&@B367<,.;(>:,GbackspaceE!@FZ* A#'6-&@2^Econvert lower case to upperA}C 6! @2)!A#AP6mask out bad input)!!A"* A`AP)ditto567<,.>:,(>:,'6-A}C%@<5!AP AP, B:, "67B:,%@@_,. , AP$P7,(@cfs CATAGORY IA}C NDEX7(@Zo(@+1.'(@/=2.9(@AO3.K(@Sa4.](@es5.o(@w6.A}C dq-@@ "(@#/& :-@37@@;BJ(@FW-N b-@[_@cjm(@nq n$|]A}C B7u@5'B7h@@".9B7d4@KB7fF]B7sA%H$Hper Atari this routine is neA}C.cessary to help prevent tape errorsp:-@2<(>:@1@,# :move cursor to rightz$89 (.(.(A}Cq.'(.0(.9(.=$B=(.ALL OF THE ABOVE.9((ENTER 1,2,3,4,5,6 OR 7)=L$d*6-w*priA}C nting control routinen$$-@$BB:,&A As AxFN"@Ry'$x6.7<%A ,}$$7@}A}C<@ ,4@Ae`"@$^AeP%%A:7A <A ,,Ae`t6-%@bj"@nt)6-z=A}C-@ @@M(@--Q e-@15@9@p(@DSt J-@WB:,6.7<,(6-@:,4!AYA}CkJ67<,.>:&A(,M Mthis changes inverse characters back to normal,so we can print them Aro A}C@$XI(E(9DO YOU WANT THE PHONE NUMBER ON THE LABEL(ENTER Y OR N)Ib(HOW MANY COPIESl$ -A}C@% Ax"@"2'$*#(@6>7@BF<@(JR,C(@V^7@)bf<@Vjr,c(@v7@A}CW <@ ,(@!7@%)<@-9,46-@=O>J 4Y>(@S[7@_<A,7A <A ,JA}C6-@ C"@!6-@%0H -@4=(@AZ R   $L*6-@^67<,.@*delete fileVA}C $xF6-"$F:B2y,"@&.06-@2Fcheck option button$/!99routine to convert lower case letters to A}Cupper case4!H-@4B:,"6-@:7<,,.!@8ID67<,.>:&@2Mh,H 9! B:,!6.7@l<,>!$(#erA}Crror trapping routine2#36-F:A,3error # stored in location 195<#i%6-F:A,$AV%F:A,16-xierA}C:AS,. Yturn screen pink,sound buA}Czzer,reset trapP#!!!@,* A8A0CZ#"AAAGRd#!!@V\*@`An#OO(GINPUT ERROR.EA}CITHER THE VALUE WAS cOUTSIDE THE EXPECTED RANGE OR YOUs#H9(1INPUT A LETTER WHERE A NUMBER WASh CALLED FOR.<(H &@A}Cx#A8A#SS(KPRINTER OR TAPE ERROR.MAKE SURE THAT THE DEVICE IS TURNED ON AND ALL CABLE#5+(#CONNECA}CDTIONS SECURE,AND THEN CHOOSE:5 A0#!! A@)!ACAH#**("TAPE ERROR.REWIND AND THEN CHOOSE:#( A}G.RETURN TO MAIN MENU#( .END#O(((ENTER 1 OR 2) !Oreset trap before returning to main program#AA}CpA#46-"@&-%@180@<G4 # +MW# +]c'0@gk@oqw9AA}CR@ M-@@ \turn screen red,turn cursor off;all hope is lost#\-@`d@h%( FATAL ERRORG2A}C @G @@=\make warbler sound$-@AE@%IV $G-@Z^@bv%( ̠G2|A}C@d @@"$-@&*@%. "$ ,$G('( FATAL ERROR  AT LINE =(DEBUG AND RESTART@(DA}C2G%""routine to disable break key%D6-F:@6W,!A',6-&A(8@[DB7t%$'!!suppliesA}G data for line 1270'$$6,28,8,28,9,28,10,10,9,14,10,2 D2:XMASLISTPHONEQ2CATCCAT1CAT2CAT3CAT4CAT5CAT6CIV@KCHFDLISLMSLMSDISPLAYDISPLAYBhBrBsAMNT $$COARSE VERTICAL SCROLLING DEMO66E}GPRESS UP/DOWN ARROWS TO MOVE DISPLAY THRU MEMORYA%6-F:A`,%F:Aa,$AVAGET START OF DISPLAY LIST-6-%@E}C.-POINTER TO DISPLAY MEMORY(6-%@2;266-A6INITIALIZE ADDRESS OF DISPLAY MEMORY7READ KEYBOARD*AdAU4 A@CLEFT ARROW ?P. @PB.ONLY ARROWS ARE LEGAL RESPONSEZSCROLL RIGHTd36-I}CF:%@ ,%@@3MOVE DISPLAY TO LEFTn)!AU6-FP)6-%@T]x @UaSCROLL LEFT46-F:I}C%@ ,&@24MOVE DISPLAY TO RIGHT) 8>6-DN)6-&@R[ ag6-mv @UzI}CB!"j>ODLSDMEDLISSKIPSKIPVALVALBhBBIMAWQT@0Y\6abil@qt@x //M}C]FINE SCROLLING HORIZONTALLY AND VERICALLY%%6-F:A`,%AV$F:Aa,))6-F:%@aj,%F:%@n,$AV66M}C9-P:+%A,'AV,66-%A&$AV#6-?G6-@KV(3%@ZjA%%@nx3%@|M}C -3%@@f %%@$.3%@2R22F:Ad,"AU" @PV2SCAN KEYBOARD7AF:Ad,"@M}C*AdAU4 A>AUP ARROW ?<CF:Ad,"@B*AdAU4 APCDOWN ARROW ?A1F:Ad,M}C"@" A51LEFT ARROW ?F2F:Ad,"@9\" AP2RIGHT ARROW ?K& @P`&IGNORE OTHER RESPONSES'M}C 6-%@  @' A#,6-2?6-%@@CX)!A@6-^h)6-%@l APM}C 6-&@ !6@# A'26-@6C 6-&@@Ga AE,(6-&@en!6@r( AM}C 16-@66-F:%@!&,%@*DE AE^'6-%@HP @Tg' Ac6-mh6-F:%@M}C,&@ ) !6-'1)6-&@5> DJ6-P[3%@_oA%%@s3%@M}CHROLL1FDLISLMSLMSDISPLAYDISPLAYBhBrBsAMNT $$COARSE VERTICAL SCROLLING DEMO66DC? D:SCROLL2LSDMESKIPSKIPADDRADDRVALVALBhBDHAWLO@TgBB@lms &&COARSHCe*BBw*VERTICAL SCROLL REGISTER,BBv,HORIZONTAL SCROLL REGISTER @Pi D:SCROLL3/L{CL>? LSMEMRINSINLMVSCRHSCRPEELEELJMOMSJVMODRAMTOHSCVW^_fgnovw}Q}C @@ !" )* 12 9: ABIJP *** PROG1 ***77MEMORY AND DISPLAY LIQ}GST VARIES WITH GRAPHICS MODE''DUMP AND DISASSEMBLE DISPLAY LIST(d"( INPUT GRAPHICS MODE "nB%6-F:A`,Q}C?%F:Aa,$AVBFIND START OF DISPLAY LISTxF)6-F:%@CL,%F:%@P,$AVFFIND START OF DISPLAY MEM.G6Q}G-F:A,$AVGNUMBER OF PAGES IN MEM DEFINED AT POWER ON LIST3 OS GRAPHICS MODE %%3 RAM AVAILABLE Q}GAT POWER ON !!3 START OF DISPLAY LIST ##3 START OF DISPLAY MEMORY 88DUMP DISPLAY LIST WITH DISASSEMBLY OFQ}C INSTRUCTIONSK6-@d06-A('6-@4<36-@2@H?6-@eLTK6-@Xg-&@k3 F:,Q}C5! 6-F:,!DISPLAY LIST VALUE#A( A9?# AC A@ &L& 6-&&GET RID OF INTERRUQ}C5PT BITQ&&3 INSTRUCTION INTERRUPT ENABLE t% A 9Z%FIND JUMPS AND BLANKS~"`l$ ApGO FIND LMQ}C S A(GO FIND VSCROL) A,Q)GO FIND HORIZONTAL SCROLL8 AU8TRANSLATE ANTIC MODE TO OS GRAPHICS MQ}CODE$x @fH$NO LMS}>>3 LOAD MEM SCAN FROM F:%@LU,%F:%@Y,$AV 6-& GET RID OF LMQ}CS BIT76-%@M7INCREMENT LOOP AROUND ADDRESS BYTES$% @4Q$%NO VSCROL ENABLE% 6-&%GET RID Q}C?OF VSCROLLL BIT3VERTICAL SCROLL ENABLED$@& @C$&NO HSCROLL ENABLEJ. 6-&.GET RID OF HORIZONTALQ}Cb SCROLL BITT$$3 HORIZONTAL SCROLL ENABLED ^$3 ANTIC DISPLAY MODE $_U"hn)"@rx)"@2|)Q}C"@H )"@d)"@#)"@'7)"A_ A!;F"@JP A"T_"@eci A#m$4..3 BQ}C LANK P:'@,%@- LINES >6-3a$H@@3 JUMP INSTRUCTION TO F:%@eo,%6F:%@s,$AVQ}C 26-%@x2INCREMENT AROUND ADDRESS BYTES 6-&$MM3# JUMP & WAIT FOR VERTICAL BLANK TO F:%@|,Q}C%F:%@ ",$AV 26-%@&i2INCREMENT AROUND ADDRESS BYTES  6-&$ D2:DISASEM1novw}PiC  %cvDLSINSTRC$%,-3 *** PROGRAM 2 ***66THIS WILL CREATE A DISPLAY LIST WITH DLI ENABLU}CEED66THE SCREEN WIDTH IS NARROWED AT DLI TIME AS WELL(-: +KQ'0@UY@]a@ e:SET BORDER COLOR2B%U}CH6-F:A`,%F:Aa,$AVBFIND START OF DISPLAY LIST<>$%@LTF:%@X,%A(>TURN ON INTERRUPT BIT 7FU}C>- @)>POKE DLI SERVICE ROUTINE INTO PAGE 6P"A6%Z d3372,138,72,169,40,162,48,141,10,U}C`212,141,23,208nCC142,24,208,169,33,141,0,212,162,140,142,26,208,104,170,104,64xPAft'A@xPPOU}GINT TO DLI INTERRUPT SERVICE ROUTINE"BBA"ENABLE DMI!!*** DLI SERVICE ROUTINE ***PHA SAVEU}G REGISTERS TXA PHA""LDA #$28 CHARACTER LUMINENCELDX #$30 BACKGROUND COLOR))STA $D40A WAIT FOR HORIZONU}GTAL SYNCHSTA $D017 PLAYFIELD 1STX $D018 PLAYFIELD 2LDA #21 NARROW PLAYFIELD))STA $D400 DMACTL ENABLE NAV}GROW WIDTHLDX #$8C BORDER COLORSTX $DO1A COLBKPLA RESTORE REGISTERS TAX PLA!!RTI RETURN FROV}CM INTERRUPT D2:DISASEM2$%,-3 *** PROGRAM 2 ***66THIS WILL CREATE A DISPLAY LIST WITH DLI ENABLTG0 ; ** PROGRAM EXAMPLE 1 **20 ;PROGRAM SETS UP A VVBLKD ISR30 ;40 ; SET UP NEW VECTOR WITH A BASIC USR CALL A=USR(1536)50Z}C7 ; NEED TO DO THIS WHENEVER SYSTEM IS RESET60 *= $600= _PUT IN PAGE 6 DECIMAL 153670 PLAi NULL VALUE FROM BASIZ}C C80 LDA #7 3INDICATOR FOR VVBLKD90 LDX #069 HIGH BYTE FOR VECTOR ADDR0100 LDY #$40 LOW BYTE FOR VECTOR ADDRZ}C0110 JSR $E45C *SET UP DEFER0120 RTS2 RETURN TO BASIC0130 ; ** ** ** **0140 ; ROUTINE AT DECIMAL 1600 IS DESZ}GIGNED TO WASTE TIME.0150 ; PUT A NUMBER FROM 1 - 5 IN DECIMAL 1568.0160 ; USE POKE 1568,N0170 ; THIS IS THE ISR WHICH SIMPZ}C)LY WASTES TIME.0180 *= $6400190 LDX 02 ZINIT COUNTERS0200 LDY 00210 LOOP1 INX_ xINCR COUNT0220 CPX $620} Z}C& DELAY VALUE0230 BEQ LOOP20240 CLC1 kFORCE BRANCH0250 BCC LOOP10260 LOOP2 INY0270 CPY $620q DELAY VALUEZ } C0280 BEQ EXIT $DONE ?0290 CLC/ NO-FORCE BRANCH0300 BCC LOOP10310 EXIT JMP $E93E TAKE NORMAL VBLANK EXIT50X{ G10 ; This is a position independent subroutine20 ; found in DATA statements line numbered 250 and 26030 ; Calling Sequence ^ } C?from BASIC is:40 ; A = USR(ADR($STR),Start Addr,Count)50 ;60I e*= $600 ;can go anywhere70o rPLAw ;ignor^ } Ce argument count80 PLA% B;save lo-byte of dest addr90L YSTA $CC0100a PLA ;save hi-byte of dest ad^ } Cdr0110 STA $CB0120$ 'PLA, H;save total to be moved0130P eSTA $CE ;*0140 PLAj ;save total to be m^}C oved0150 #STA $CD ; *0160+ RLDX $CE ; count of bytes to move0170Z uLDY #0 ; init index0180} ^}C/LDA #0 ; init character to be moved0190 MOV3 QSTA ($CB),Y ; move data0200Y \DEYc y; decrement index0210} ^}C +BNE MOV ; go move next character02203 ZINC $CC ; incr dest addr l0-byte0230b eDEXl ; decr lo-byte co^}Cunt to move0240 &BMI EXIT0250. UBNE MOV ; go move next character0260] LDY $CD ; hi-byte of count to ^}C move0270 gBNE MOV ; go move next character0280 EXIT DEC $CC ; decr lo-byte dest addr0290o LDY #00300 ^}C STA ($CB),Y0310 "RTS) ?; return to BASIC0320G .END line numbered 250 and 26030 ; Calling Sequence \LC!  ZSIMJ*,34;<CDKLST[\cdkl st { b}C  I @5!IԠٯϠ٠٠Šàś!!ӠŠb}C śN- AU167@$(<@,v,.>:,G6-?:C:,<<A `,K N$ ͽΠ٠ýқ# +|b}C@ ,;@B,,>AR@0Vh6-F:A`,%F:Aa,$AV%@Zk6-F:,%F:%@o,$AV6-b}GB2y-AAڤҠŠǠΠҠϠũ2''ڽҨڤԠҬנ٩<z-@b}C@B %")67<,.>:,- ?@)+1>F(X@BF@9JNz2TV\^dflwAk#67@{<b}C@@,.>:A(,96-?:C:,<<A `,KAA]-@9DFLbk(>:A`,K]0((f This demonstrates b}Can assembler ](( 5MOVE routine called from BASIC.: BP]0((F dPossible uses would be to movej o]((s blanks or b}C"special characters to an U]0((& Oarea of screen memory, or to clear ]((S rRAM used for player missiles orw Z00(b}C( page flipping etc.* 2_g0((<@B,.>:,CB7aAhUB7cAhiB7`AUb%}%C&{B7h@@AvB7b#B7b'@DR5B7h@VxK6-?:C:,<<A `,]B7a}b&}&C oB7cKs v$ ԠŠȠěo -AUQV6@Zb:67@fj<@n,.>:,FB7`b'}'Cc-AuA`6@ oB7aDB7h&A` 'A=6-?:C:,<<A `,A D$ˠb(}(CڠǛr-#@'5)AU@9?5EMA@Q[E Y-ae@iwkAU@{ob)})G r$,,ϠŠڤҠśYY104,104,133,204,104,133,203,104,133,206,104,133,205,166,206,160,0,169,b*}*Cn0,145,203,136OO208,251,230,204,202,48,6,208,244,164,205,208,240,198,204,160,0,145,203,96 D2:MOVEITst { `n+C)ZSORTFILENAMELANTI129:@BHJQRYZabjm22u* SORT UTf,},CILITY DEMONSTRATION *ll216,104,56,233,3,133,217,104,133,204,104,133,203,104,133,215,104,133,214,104,133,210,104,13f-}-G3,209,162,0oo104,104,157,0,1,232,228,217,208,246,56,165,209,233,2,133,209,165,210,233,0,133,210,48,108,165,209,133,211f.}.Gll165,210,133,212,165,204,133,206,133,208,165,203,133,205,24,101,214,133,207,165,208,101,215,133,208,160ll0,185,0,1,190,f/}/G2,1,134,218,190,1,1,200,200,200,132,216,168,136,177,205,209,207,240,12,165,218,208,4,144oo16,176,46,144,44,176,10,200,202f0}0G,208,234,164,216,196,217,208,210,198,211,169,255,197,211,208,6,166,212,240nn11,198,212,165,208,133,206,165,207,24,144,172f1}1G,165,213,240,4,134,213,208,148,96,134,213,160,0,177,205,170==177,207,145,205,138,145,207,200,196,214,208,241,240,203$f2}2C;A,$-@>A "67<,.>:, d##[-iINPUT A FILE TO BE SORTEDnf3}3C;Ap,;@=,s 6. 67Ap,.x67@AK,.} +Q$$(ENTER THE NAMES OF 9 FRIENDS--f4}4C @-6-$@0!%@%0#(%@4W FIRST NAME #67<%@[i,."(%@m LAST NAME f5}5C"67%@<%@).,. ##K-kPRINT UNSORTED FILE$ +q$(UNSORTEf6}6CD NAME LIST--@",-6-$@004%@8G(7<%@)KY, ,##v-1Sf7}7C4ORT AND PRINT THE FILE6$6-F:AY,$AY:Q;TT6-?:C:,}>C!CENT RECORDS.0185 RECNBR = 209' M;NUMBER OF RECORDS0190 SCOUNT = 211S v;RECORD COUNTER0195 BUBLE = 213| ;j?}?C#OUT OF SEQUENCE0200 RECSIZ = 214) L;SIZE OF RECORD0205 FLDNDX = 216R y;SORT FIELD COUNTER0210 FLDCNT = 217} j@}@C, ;NUMBER OF SORT FIELDS0215 SORTAD = 2182 [;ASCENDING/DESCENDING0220 STACK = 256a ;SAVE SORT FIELDS HERE0225 jA}AC.;0230 ;DETERMINE HOW MANY FIELDS TO SORT02356 >CLD0240F IPLAU l;ALL BUT THE FIRST0245t wSEC} jB}BC ;THREE PARAMETERS0250$ *SBC #33 F;ARE FIELDS TO0255N XSTA FLDCNT] ;SORT0260 ;0265 ;PICK UP SORT jC}CCPARAMETERS0270 PLA& 6;FILE START0275> HSTA FILE+1M Z;ADDRESS0280b ePLAq w;0285} jD}DC STA FILE ;0290 "PLA. A;RECORD LENGTH0295I ^STA RECSIZ+1 ;0300f iPLAu ;0305 jE}EC STA RECSIZ ;0310# &PLA2 I;NUMBER OF RECORDS0315Q fSTA RECNBR+1 ;0320n qPLA} jF}FC;0325 STA RECNBR G;0330 ;0335 ;PICK UP FIELDS TO SORT0340O jLDX #00345 PICKFIELDS0350r uPLA} jG}GC ;GET ALL THE SORT0355" %PLA1 K;FIELD PARAMETERS FOR0360S ^STA STACK,Xb x;POSITION, LENGTH0365} jH}HC INX &;AND DIRECTION.0370. 8CPX FLDCNT= K;ANY MORE0375S BNE PICKFIELDS ;GO GET THEM0380 ;0385 ;SjI}IC$ET UP NUMBER OF RECORDS TO SORT0390, 4SEC0395< FLDA RECNBRK a;MUST BE AT LEAST0400i oSBC #2x ;TWO jJ}JCRECORDS TO0405 !STA RECNBR& 0;SORT04108 MLDA RECNBR+1 ;0415U [SBC #0d j;0420r STA RECNBR+jK}KC 1 ;0425 BMI ENDSORT! m;ELSE GET OUT0430 ;0435 ;MAIN LINE SORT LOOP0440 ;0445 SORT LDA RECNBRr ;RESET NUMBjL}LC ER OF0450 STA SCOUNT! 6;RECORDS TO SORT0455> SLDA RECNBR+1 ;0460[ pSTA SCOUNT+1 ;0465x LDA FjM}MCILE+1 ;SET UP POINTERS0470' 2STA PNTR1+16 I;FOR THE FIRST0475Q \STA PNTR2+1` i;AND0480q yLDA FILE} jN}NC( ;SECOND RECORDS.0485 BUMPRECORD04900 9STA PNTR1? N;PUT PNTR20495V YCLCe p;AHEAD0500x ADC RjO}OCECSIZ ;OF0505 #STA PNTR2) 4;PNTR10510< GLDA PNTR2+1K S;BY0515[ rADC RECSIZ+1 ;ONE0520z STAjP}PC PNTR2+1 D;RECORD.0525 ;0530 ;SEQUENCE CHECK RECORDS0535 ;0540L RLDY #0[ ;RESET STACK INDEX0545 NEXTFIELDjQ}QC0550 LDA STACK,Y 0;FIELD POSITION.05558 [LDX STACK+2,Y ;SORT DIRECTION0560c mSTX SORTADr ;SAVE IT.0jR}RC565 -LDX STACK+1,Y ;FIELD LENGTH.05705 8INYD N;BUMP0575V YINYe p;STACK0580x INY jS}SC ;INDEX0585 'STY FLDNDX, >;AND SAVE IT.0590F ITAYU n;FIELD POSITION TO Y0595v yDEY} jT}TC 1;MAKE RELATIVE TO ZERO0600 SEQCHECK06059 ^LDA (PNTR1),Y ;COMPARE ADJACENT0610f CMP (PNTR2),Y ;RECORDSjU}UC0615 BEQ SEQNDX 3;= KEEP ON LOOKING0620; ELDA SORTADJ b;GET SORT DIRECTION0625j sBNE DSNDGy ;GO jV}VCCTO DESCENDING0630 ;0635 ; SORT IN ASCENDING SEQUENCE0640 ;0645K rBCC BUMPINDEX ;< BUMP NEXT RECORD0650z BCSjW}WC SWAP d;> SWAP POSITIONS0655 ;0660 ; SORT IN DESCENDING SEQUENCE0665 ;0670 DSNDG BCC SWAPk ;< SWAP POSITIONSjX}XC0675 EBCS BUMPINDEX ;> BUMP NEXT RECORD0680 ;0685 SEQNDX INYQ j;CHECK THE LENGTH OF0690r uDEX} jY}YC ;THE SORT FIELD AND0695$ PBNE SEQCHECK ;KEEP SEQUENCE CHECKING.0700X bLDY FLDNDXg ;ANY MORE FIELDS0705 jZ}ZC CPY FLDCNT #;TO SORT0710+ BNE NEXTFIELD ;YES, GO TO IT0715 ;0720 ;INDEX THROUGH THE SORT FILE0725 ;0730j[}[C BUMPINDEX0735 !DEC SCOUNT& >;COUNT DOWN RECORDS0740F NLDA #255U h;AND CHECK FOR0745p CMP SCOUNT j\}\C ;END OF FILE.0750 &BNE NOTEOF+ 1;07559 NLDX SCOUNT+1 ;0760V `BEQ CKSWAPe k;0765s DEC SCOUNTj]}]C+1 ;0770 NOTEOF LDA PNTR2+1" 6;BUMP PNTR2 AND0775> ISTA PNTR1+1M _;PNTR1 TO THE0780g pLDA PNTR2v ;NEXT Rj^}^C ECORDS.0785 CLC0790$ BCC BUMPRECORD0795 ;0800 ;AT END OF FILE SEE IF A SWAP WAS MADE0805 ;0810 CKSWAP LDA j_}_CBUBLE &;IF NO RECORDS SWAPPED0815. 9BEQ ENDSORT= W;THEN IS END OF SORT,0820_ hSTX BUBLEn ;ELSE SEQUENCE j`}`C CHECK0825 BNE SORT! C;THE FILE AGAIN.0830 ENDSORT0835K NRTSZ ;BACK TO BASIC0840 ;0845 ;SWAP REja}aC5CORDS IF OUT OF SEQUENCE0850 ;0855 SWAP STX BUBLE; V;STILL OUT OF SEQUENCE0860^ vLDY #00865 SWAPLOP0870} jb}bC" LDA (PNTR1),Y ;THIS ROUTINE0875* -TAX9 L;EXCHANGES THE0880T yLDA (PNTR2),Y ;POSITIONS OF TWO0885} jc}cC (STA (PNTR1),Y ;OUT OF SEQUENCE08900 3TXA? U;ADJACENT RECORDS0895] rSTA (PNTR2),Y ;0900z INYjd}dC0905 CPY RECSIZ 2;KEEP LOOPING FOR0910: EBNE SWAPLOPI d;THE LENGTH OF RECORD.0915l BEQ BUMPINDEX ;Gje}eCO GET NEXT RECORD0920 .ENDSIC0105 ;0110 ;ENTRY PARAMETERS:0115 ;0120 ; 1. FILE ADDRESS0125 ; 2. RECORD LENGTHh#fCoEiͩkΩ͙kCop j`j {j`Hi͝Νh`}ng}gCoL"UNEM:D"NURͩkΩ͙kCop j`j {j`Hi͝Νh`}lhC>lAXLPB0NZ<( ((@)CF@KLRld\"( st |ri}EiC + >AdAUcAA`'A @BH9@LP@TZK@^b@7fQ(}cAR@rj}jC ++(#+`++(#| ANTIC - VOLUME #1 - UTILITIES |++(#}rk}kC++(#/9 @ =H-@LPATf $ GG;@@jq,;@ u,;@@rl}lC ,;A,;@ ,;@@$>, "D1:MENU" &&@BF@JLRdD:*.* 6,6."} rm}mC 6 @0 i6-%@$.(6.7@26<@:C,A67@ GK<@ O\,..i67@`d<@ho,.7@sw<@{,rn}nC3 6.|67B:,%@+,.367B:,%@/=,.G67@AE<@IV,.(--@ZB:,:7<,4 G67<,..]ro}oC 6.=:, @ D67@$(<@,3,.7@7;<@?H,]67@LP<@Ti,.0$@m(''7@rp}pC<@ ,4FREE@"- @ &?2() <@CPF''7@TX<@\h,4FREE@luK @ yPrq}qC(7@ <@$,)|U @0(1W'!-@65<+'@@E,%@IX' |Z++(#|y |[rr}rC ( |   &|\++(#GWxAR]f[@jn@9rx'-@|rs}sC@" C( 7SELECTIONM A0Q[ B;ZP:,A00"@^h&6.7@lp<@t,0 AErt}tCLB6.7+&@,$@#%@'.<+&@27,$@;?%@CJ,L BNY37@]a<@et,4 36.7@x<@ru}uC,!7@<@7,4DOS!.0 6.-@;eB:,07<,4 AH67B:,%@i,.7<,   6.rv}vC! 6.D1:!67B:,%@3,.?AR@7='-@AE@"IO? W jLOADING ? Ant@x@9rw}wC 1@ @5%? B#,K-@04@"8>- C VCANNOT RUN 7 @Z`A BdK A0D:MENUp}xC),182,187,169,255,76,4,187D:CLOAD.Z""ROUTINE TO CRUN NEXT PROGRAM;@ ^h,@elntA0)yCX D:TRANSLAT BNEAAMOUNTNSMLJJLEPPP?P8 AB_b@gj@ or@w @8 zCGS510 *INSTRUCTIONS520 R:530 T:540 T:NOTES ARE: C D E F G A B550 T:M AND 0 FOR OFF560 T:570 T:DURATIONS ARE:580 T:v{}{C 1=WHOLE 2=HALF590 T:& /4=QUARTER3 B8=EIGHTH600 T:H S=SIXTEENTH 0=NONE610 T:620 T:ENTER & TO QUIT630 v|}|C T:700 R: ENTER710 *ENTER720 R:730 C:#A=#A+1740 POS:1,12750 T:ENTER 4 NOTES + DURATION FOR CHORD #A [SPACE, ESC-CTv}}}GRL-LEFT760 POS:17,15770 A:$NOTES780 M:&790 JY:*ENDER800 EY:810 U:*CHECKNOTES820 SO:20 [BEEP ON COMPLETION830 PA:784v~}~CS0 SO:0850 WRITE(#A=10):$FILESPEC,$PLAYVALUES860 C(#A=10):#A=0870 J:*ENTER900 R:Z ENDER910 *ENDER920 R:930 C:$PLAYv}CUVALUES=$PLAYVALUES!940 WRITE:$FILESPEC,$PLAYVALUES950 CLOSE:$FILESPEC960 T:970 T:[ SAVED IN FILE $FILESPEC980 T:990v}C T: )SESSION ENDED1000 E:1100 R:0 CHECKNOTES1110 *CHECKNOTES1120 R:1130 A:=$NOTES [MOVE $N. TO ACCEPT1140 Mv}CS:, M[MATCH ON 1ST BLANK1150 A:=$RIGHT!/[ADD/,MOVE TO ACCEPT1160 C:#C=0Q [SETS NOTE COUNTER TO 01170 C:$NOTEVALUES=v}C"1180 C:#G=01190 *LOOP1200 MS:,& [SKIPS 2 SPACES1210 CN(#G=0):$PLAYVALUES=$PLAYVALUES$NOTEVALUES1220 POSN(#G=0):2,221v}C 230 TN(#G=0):3  [ESC-CTRL-UP1240 EN:1250 MS:$RIGHT[MATCH W/O 1ST LETTER1260 C:$SAVE=$v}C?MATCH [SAVE ALL1270 A:=$LEFT [$L. HAS BLANK+LETTER1280 MS:_D [SKIP BLANK & LETTER1290 R:$LEFT HAS THE LETTER WE NEEDv}C[1300 C:$NOTE=$LEFT1310 U:*TRANSLATE1320 A:=$SAVE [PUT ALL IN BUFFER1330 J:*LOOP1400 R:b TRANSLATE1410 *TRANSLATE1v}G420 R:1430 C:#C=#C+11440 E(#C=7):1450 A(#C<5):=$GOODNOTES1460 A(#C=5):=$GOODDURATION1470 M:$NOTE1480 POSN:2,221490 TN:v}GERROR IN THIS VALUE: $NOTE1500 R:SET G FLAG FOR BAD NOTE1510 CN:#G=11520 EN:1530 A(#C=6):=$NOTE1540 M(#C=6):!1550 EY(#Cv}G=6):1560 POSN(#C=6):2,221570 TN(#C=6):TOO MANY VALUES:$NOTE1580 CN(#C=6):#G=11590 EN(#C=6):1600 POS(#C>6):2,221610 T(#Cv}G>6):TOO MANY VALUES: $NOTE1620 C(#C>6):#G=11630 E(#C>6):1640 A:=$NOTETABLE1650 MS:$NOTE.1660 A:=$RIGHT1670 MS:/1680 C:v}C*$NOTEVALUES=$NOTEVALUES$LEFT1690 E:50 R:1 CPILOT PLAYER60 R:J dANTIC, VOL. 1, NO. 470 R:k K. W. HARMS80 R:v}C300 R: FILE310 *FILE320 R:330 T:ENTER DEVICE TO PLAY MUSIC FROM340 T:D=DISK, C=CASSETTE350 A:$D360 R:NEXT, CHECK Tv}GO SEE IF CASSETTE370 M: C380 CY:$FILESPEC=C:390 JY:*FILEDONE [IF CASS JUMP OUT400 M: D410 TY:ENTER FILE NAME420 AY:$FIv}CLE [GET FILE NAME430 CY:$FILESPEC=$D:$FILE440 TN:I DON'T KNOW THAT DEVICE450 JN:*FILE460 *FILEDONE470 T:} [ESC-CTRL-Cv}CLEAR .. CLEARS SCREEN1000 R:# ?TEMPO & PLAY1010 R:1020 R:E TEMPO1030 *TEMPO1040 T:} [ESC-CTRL-CLEAR CLEARS SCREENv}C91050 POS:9,51060 T:PLEASE ENTER A TEMPO1070 T:1080 T:C W256 = Adagio1090 T:a v128 = Andante1100 T:} v}C 64 = Allegro1110 POS:17,111120 *RESTART1130 A:#T1140 J(#T=256)+(#T=128)+(#T=64):*READ1150 T:PLEASE ENTER NUMBER AGAIv}CN1160 J:*RESTART1170 R: =READ1180 *READ1190 T:1200 T:C PLAYING FILE $FILESPEC1210 READ:$FILESPEC,$PLAYVALUES122v}G0 R:THIS DEMOS WORD PARSING1230 *LOOP11240 C:#N=01250 *LOOP21260 C:#N=#N+11270 A:=$PLAYVALUES1280 MS:_1290 JN:*READ1v}G300 C:$PLAYVALUES=$RIGHT1310 A(#N=1):#A=$LEFT1320 A(#N=2):#B=$LEFT1330 A(#N=3):#C=$LEFT1340 A(#N=4):#D=$LEFT1350 A(#N=5)v}G:#L=$LEFT1360 A:=$LEFT1370 M:!1380 EY:1390 J(#N<5):*LOOP21400 SO:#A#B#C#D1410 PA:#T/#L1420 J:*LOOP120 C:#A=0130 C:$NtkC50 R: PILOT PLAYER60 R:% ?ANTIC, VOL. 1, NO. 470 R:F ^K. W. HARMS80 R:300 R:d FILE310 *FILE320 R:330z}G T:ENTER DEVICE TO PLAY MUSIC FROM340 T:D=DISK, C=CASSETTE350 A:$D360 R:NEXT, CHECK TO SEE IF CASSETTE370 M: C380 CY:$FIz}CZLESPEC=C:390 JY:*FILEDONE [IF CASS JUMP OUT400 M: D410 TY:ENTER FILE NAME420 AY:$FILE^ [GET FILE NAME430 CY:$FILESPECz}Cu=$D:$FILE440 TN:I DON'T KNOW THAT DEVICE450 JN:*FILE460 *FILEDONE470 T:} [ESC-CTRL-CLEAR .. CLEARS SCREEN1000 R:{ TEz}CMPO & PLAY1010 R:1020 R: TEMPO1030 *TEMPO1040 T:} [ESC-CTRL-CLEAR CLEARS SCREEN1050 POS:9,51060 T:PLEASE ENTER A Tz}CEMPO1070 T:1080 T: 2256 = Adagio1090 T:< Q128 = Andante1100 T:\ 64 = Allegro1110 POS:17,111120 z}Cq*RESTART1130 A:#T1140 J(#T=256)+(#T=128)+(#T=64):*READ1150 T:PLEASE ENTER NUMBER AGAIN1160 J:*RESTART1170 R:v READ11z}C80 *READ1190 T:1200 T: PLAYING FILE $FILESPEC1210 READ:$FILESPEC,$PLAYVALUES1220 R:THIS DEMOS WORD PARSING1230 *LOOz}GP11240 C:#N=01250 *LOOP21260 C:#N=#N+11270 A:=$PLAYVALUES1280 MS:_1290 JN:*READ1300 C:$PLAYVALUES=$RIGHT1310 A(#N=1)z}G:#A=$LEFT1320 A(#N=2):#B=$LEFT1330 A(#N=3):#C=$LEFT1340 A(#N=4):#D=$LEFT1350 A(#N=5):#L=$LEFT1360 A:=$LEFT1370 M:!1380z}C^ EY:1390 J(#N<5):*LOOP21400 SO:#A#B#C#D1410 PA:#T/#L1420 J:*LOOP1K. W. HARMS80 R:300 R:d FILE310 *FILE320 R:330xFC+1 R:EQ&10 R:CHRISTMAS TREES20 R:30 R:0 ANTIC, VOLUME 1, NO. 540 R:50 J:*DRAWTREES100 R:110 R: PARSE120 R:13~}CT0 *PARSE140 A:=$MESSAGE150 MS:,160 MS:$RIGHT170 A:$MESSAGE=$MATCH$LEFT180 MS:y,18~}G5 R: LINE 180 IS 37 RIGHT ARROWS AND COMMA190 MS:$RIGHT200 C:@B656=1210 T:$LEFT220 E:300 R:310 R: COLORS320 R:330 ~}G*COLORS340 C:#B=#B+1350 C(#B=1):@B709=146360 C(#B=2):@B709=66370 C(#B=3):@B709=26380 C(#B=4):@B709=18390 C(#B=4):#B=04~}G00 E:500 R:510 R: LLOOP520 R:530 *LLOOP540 U:*COLORS550 U:*PARSE560 SO:0570 E:600 R:601 R: MAINLOOP602 R:60~}G3 *MAINLOOP604 U:*PARSE605 R: 1ST PARSE TO GET TEXT606 R: NOTE NUMBER SEQUENCE607 SO:22608 PA:16609 U:*LLOOP610 SO:22~}G611 PA:16612 U:*LLOOP613 SO:22614 PA:32615 U:*LLOOP616 SO:22617 PA:16618 U:*LLOOP619 SO:22620 PA:16621 U:*LLOOP622~}G SO:22623 PA:32624 U:*LLOOP625 SO:22626 PA:16627 U:*LLOOP628 SO:25629 PA:16630 U:*LLOOP631 SO:18632 PA:24633 U:*LL~}GOOP634 SO:20635 PA:8636 U:*LLOOP637 SO:22638 PA:48639 U:*LLOOP640 SO:0641 PA:16642 U:*LLOOP643 SO:23644 PA:16645 ~}GU:*LLOOP646 SO:23647 PA:16648 U:*LLOOP649 SO:23650 PA:24651 U:*LLOOP652 SO:23653 PA:8654 U:*LLOOP655 SO:23656 PA:1~}G6657 U:*LLOOP658 SO:22659 PA:16660 U:*LLOOP661 SO:22662 PA:16663 U:*LLOOP664 SO:22665 PA:8666 U:*LLOOP667 SO:2266~}G8 PA:8669 U:*LLOOP670 SO:25671 PA:16672 U:*LLOOP673 SO:25674 PA:16675 U:*LLOOP676 SO:23677 PA:16678 U:*LLOOP679 SO~}G:20680 PA:16681 U:*LLOOP682 SO:18683 PA:48684 U:*LLOOP685 SO:0686 SO:0687 PA:64688 C:@B77=0689 J:*MAINLOOP1000 R:~}G1010 R: DRAWTREES1020 R:1030 *DRAWTREES1040 GR:CLEAR1050 C:#X=-401060 C:#Y=-281070 U:*TREE1080 C:#X=401090 U:*TREE~}G1100 R: NOW PUT SOME STARS ON THEM1110 C:#X=-401120 C:#Y=321130 U:*STAR1140 C:#X=401150 U:*STAR1160 R: OK THAT DID THE~}G TOPS, NOW FOR A FEW MORE1170 C:#X=-481180 C:#Y=161190 U:*STAR1200 U:*MIRRORSTAR1210 C:#X=-321220 U:*STAR1230 U:*MIRR~}GORSTAR1240 C:#X=-561250 C:#Y=01260 U:*STAR1270 U:*MIRRORSTAR1280 C:#X=-241290 U:*STAR1300 U:*MIRRORSTAR1310 C:#X=-65~}G1320 C:#Y=-201330 U:*STAR1340 U:*MIRRORSTAR1350 C:#X=-131360 U:*STAR1370 U:*MIRRORSTAR1380 R: HOW BOUT A FEW BALLS?139~}G0 C:#X=-431400 C:#Y=81410 U:*BALL1420 U:*MIRRORBALL1430 C:#X=-501440 C:#Y=-101450 U:*BALL1460 U:*MIRRORBALL1470 C:#X=~}G-331480 C:#Y=-121490 U:*BALL1500 U:*MIRRORBALL1510 R: TREES DRAWN, SET UP TYPING, COLOUR AND MUSIC LOOP1520 R:SPACE BETW~}GEEN EACH CHARACTER, HIT SPACE,ESC,ESC,SPACE BETWEEN EACH WORD AND SPACE,ESC,ESC,SPACE,ESC,ESC AT E1530 C:$MESSAGE=H A V E  ~}GA  H A P P Y  H O L I D A Y !  1540 J:*MAINLOOP1600 R:1610 R: TREE1620 R:1630 *TREE1640 R: NEXT LINE SETS "BLUE"~}G PEN TO GREEN1650 C:@B710=(12*16)+61660 GR:PEN BLUE1670 GR:GOTO #X+28,#Y+51680 GR:TURNTO 01690 GR:TURN -261700 GR:DRAW~}G 631710 GR:TURN 2321720 GR:DRAW 21730 GR:FILL 611740 R: DRAW THE TRUNK1750 R: NEXT LINE SETS "RED" PEN TO BROWN1760 C:@~}GB708=(14*16)+(4)1770 GR:PEN RED1780 GR:GOTO #X+4,#Y1790 GR:TURNTO 01800 GR:DRAW 41810 GR:PEN ERASE1820 GR:GOTO #X-4,#Y-~}G11830 GR:PEN RED1840 GR:FILL 51850 E:1900 R:1910 R: STAR1920 R:1930 *STAR1940 GR:PEN YELLOW1950 GR:GOTO #X,#Y196~}G0 GR:TURNTO 01970 GR:DRAW 41980 GR:TURN 1801990 GR:DRAW 22000 GR:TURN 902010 GR:DRAW 22020 GR:TURN 1802030 GR:DRAW 42~}G040 E:2100 R:2110 R: MIRRORSTAR2120 R:2130 *MIRRORSTAR2140 C:#X=(#X*-1)+12150 U:*STAR2160 E:2200 R:2210 R: BAL~}GL2220 R:2230 *BALL2240 GR:PEN YELLOW2250 GR:GOTO #X,#Y2260 GR:TURNTO 02270 C:#A=02280 *STARTBALL2290 C:#A=#A+12300 G~}GR:4(DRAW #A;TURN90)2310 J(#A<3):*STARTBALL2320 GR:TURNTO 270;PEN BLUE;DRAW 12330 GR:1(TURN 90;PEN YELLOW;DRAW 2;PEN BLUE;D~}GRAW 2)2340 GR:3(TURN 90;DRAW 1;PEN YELLOW;DRAW 2;PEN BLUE;DRAW 2)2350 E:2400 R:2410 R: MIRRORBALL2420 R:2430 *MIRROR~}GBALL2440 C:#X=(#X*-1)+12450 U:*BALL2460 E: ANTIC, VOLUME 1, NO. 540 R:50 J:*DRAWTREES100 R:110 R: PARSE120 R:13|.CCCCCCCCCCCCCCCCCE