@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `8  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D8:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D8:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG*}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES+}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N',}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT.} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL/}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0.1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC2}COPY--FROM, TO?OPTION NOT ALLOWED697 FREE SECTORS COPYING---D8:COPY32.COMl# 0|D .L/%#3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US@}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! ,B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,HhD}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURNE}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <.F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#PH},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DOJ}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξK}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L!M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥN}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAMEO} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 164ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uR} ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8u05  15 2 2151^116115ύ011$r2ԭ5 3)5)5ԭx GT}@@L00)+& 2 L0=ɛ -L!1LV1L1 /3 3ȹ441L-4 v3 25 2H 2h͔5U}L3L3 2 k3U hh`DOC`QL3P1Lk0S1H /3h0B k3@ VL0LU!#$53 1181118V}1111Ε5 1Lk0552 1Ȍ1i111i11115Lk0pppB4f5&&&&&&&&^6f^6&&&&&W}&&A1@BJ D2ELVK@BHILV^Щ6 2BD2EJ VBD5EHI0 V0%5X}5 2iХiL[2 25 25`D:*.*` i@`8 ``@i `8@`0 BLV525<4Y}5`HH i ԍΗ552 ԍhh@ Lح1Э1Ѣ 24.4 24Z}4`D4E` 2BJ k3LVRH` 2BD4EhK)I JLV333 BASIC LANGUAGE OBJ > i}MACHINE LANGUAGE DOC > DOCUMENTATION PIC/MIC/FNT/MVM > GRAPHICS AMS/MUS/MBD > MUSIC LST > BASIC LISTING j}-SOME MACHINE LANGUAGE PROGRAMS CAN ONLY BE RUN BY BOOTING THE DISK MENU "WITHOUT" BASIC.-FOR SOME PROGRAMS, XL OR XE MOD k}ELS MAY REQUIRE A "TRANSLATOR" PROGRAM TO BE BOOTED FIRST. [AVAILABLE SEPARATELY FROM B E L L C O M.]-MOST PROGRAMS ARE l} RELATIVELY SELF-EXPLANATORY; HOWEVER, SOME HAVE SEPARATE DOCUMENTATION FILES AVAILABLE. BASIC PROGRAMS MAY CONTAIN INSTR m}UCTIONS IN THEIR PROGRAM LISTINGS.-TO WRITE THIS GREAT MENU PROGRAM ONTO ANOTHER DISK, (Q)UIT MENU, BOOT DOS, AND USE TH n}E "O" COMMAND TO COPY THE MENU FILE "AUTORUN.SYS" ONTO YOUR DISK. < MENU by DAVID CASTELL >U, BOOT DOS, AND USE TH e8  PASCHECKSU BASIC BUG EXTERMINATOR=(>:A%,:(%p} àǠҠ=(OO(GTHIS PROGRAM CREATES AN AUTORUN.SYS FILE WHICH CORRECTS THE NASTY BUGJG(?THAT q}PLAGUES THE VERS B BASIC RESID- ENT IN SOME 800XL MODELS.J(PP(HPLACE A FORMATTED BOOT DISK CONTAIN- ING ATARI DOS IN Dr}RIVE #1 AND THENe(PRESS [START].(e(GA FILE ή WILL BE WRITTEN TO YOUR BOOT DISK. NOW, WHENEVER YOUEB(:s}BOOT YOUR COMPUTER, YOUR RESIDENT BASIC WILL BE FIXED.E())(!PRESS [] WHEN DISK IS READY! F:B2y,@t}@'#(#(CHECKING DATA STATEMENTS(:""6@"6-%@&":"@@`2 6-% @@<u}K (>:AS,4(DATA STATEMENTS INCORRECTH(RECHECK PROGRAMKFQ6-A6#A&(>:A%,)(Q(#DATA Sv}TATEMENTS CORRECT--PROCEEDINGP""6@AZ! 6-%@! @d..@@ D:w}AUTORUN.SYSn""6@A0x*@ A6-?:A6,""6@A`*@x} A@O@(>:A%,(5(NOW GO TO DOS MENUO(AND REWRITE DOS FILES'AaVA)'Aa`Ay}UYY104,169,0,133,203,169,160,133,204,162,16,169,11,157,66,3,169,205,157,68,3,169,0,157SS69,3,169,0,157,73,3z},169,1,157,72,3,160,0,177,203,133,205,32,86,228,24,165,203[[105,1,133,203,144,2,230,204,165,204,201,192,208,3,76,234,6,20{}1,169,208,41,165,203,201]]76,208,217,169,76,133,205,32,86,228,169,120,133,205,32,86,228,169,155,133,205,32,86,228\\24|},165,203,105,3,133,203,144,187,230,204,76,36,6,201,172,208,30,165,203,201,168,208,64YY169,76,133,205,32,86,228,169,96,133}},205,32,86,228,169,155,133,205,32,86,228,76,96,6VV201,188,240,3,76,36,6,165,203,201,130,240,3,76,36,6,169,76,133,205,32,8~}6,228,169YY110,133,205,32,86,228,169,155,133,205,32,86,228,76,96,6,201,87,240,25,201,100,240,3ZZ76,36,6,169,220,133,2}05,32,86,228,24,165,203,105,1,133,203,144,2,230,204,169,220,133HH205,32,86,228,24,165,203,105,1,133,203,144,2,230,204,76,}36,6,96,-1"RR255,255,65,0,65,0,0,0,6,61,6,169,129,133,12,169,155,133,13,169,0,133,204,169,__188,133,205,169,0,133,206,1}69,156,133,207,160,0,177,204,145,206,200,192,0,208,247,230,2056QQ165,205,201,192,240,7,230,207,160,0,76,26,6,169,1,133,9,1}69,0,141,68,2,76,0@[[160,96,155,255,155,32,242,171,165,212,240,4,73,128,133,212,76,177,172,32,81,218,169,7JYY133,192,76},134,188,208,4,202,208,1,96,76,84,169,169,255,133,8,208,17,173,158,23,201TVV32,240,243,32,64,21,169,0,133,8,76,155,155,32,}64,21,32,213,155,169,0,133,204,169^__156,133,205,169,0,133,206,169,188,133,207,160,0,177,204,145,206,200,192,0,208,247,230},205h[[165,205,201,160,240,7,230,207,160,0,76,176,155,169,129,133,12,169,155,133,13,76,0,160rWW83,58,169,152,133,106,16}2,48,169,3,157,66,3,169,211,157,68,3,169,155,157,69,3,169|PP8,157,74,3,169,0,157,75,3,32,86,228,169,12,157,66,3,32,86,228,}96,226,2,227 2,213,155,0,160,255,191,-1**65,0,65,0,1,224,2,225,2,0,6,-1,61046D:BASICFIX.BAS,66,3,32,86,228,m46 J6L+4̬˭̠à4 "6LZ4ʮ׮栠54 "6@L4̠}ŠԠi4 "6L44 "6`L4Press proper number and key:4 "6L4[1] BASIC Πؠ4 "6L5[}2] BASIC Ơ4 "6 u62+ өj J6L55àƠ$5 "6`1L5)өj J6Lc5àΠV5 "6`N}L5ATARI BASIC, REV.Bt5 "6L5Contact ATARI for REV.C update!5 "6`"L5ATARI BASIC, REV.CƠ5 "6`L5Ġ}5 "6L6PRESS TO RETRY5 "6 u6L4DЌEѠHIH BLV` B V`BrD6EK}JLVS:BDEHI V`44DЌEѠHIH BLV` B V`BrD6EK2%&N4J@} @ @} !"#$ (} RR9@,;}A ,;@ ,;@0,9A,9A,;A ,E-@A&68,-568,-9 E6-}%%( ***Š***mm(eWill prevent your 'BASIC' program from being read or changed,by writi}ng over the basic statementsRR(Jwith Control Characters.MAKE SURE YOU HAVE A BACKUP COPY OF YOUR ORIGIONALjj(bPROGRAM}! There is no need to enter a 'D:' at FILE NAME prompt. **********************#(ENTER INPUT FILE NAME#} 6.D: 67B:,%@,.( @@2#(ENTER OUTPUT FILE NAME#< 6.D: 67B:,%@},.F @@P1-@@$)@-68,-1 Z//6-8@,%AV$+8@},&@,d//6-8@,%AV$+8@,&@,n//6-8@ ,%AV$+8@,&@,x//6-8@,%A}V$+8@,&@,//6-8@,%AV$+8@,&@,-@')@'67B:,%@,.}>:,1A(*AV'6-%@1 B   ( A$ ( ENTER CHARACTER NUMBER$-@} 68,-   6-1 6-&6-&6-&#6-&+6-&16-(''68@,-&P:'AV,}$AV%%68@,-P:'AV,%@''68@,-&P:'AV,$AV%%68@,-P:'AV,%@'}'68@ ,-&P:'AV,$AV%%68@,-P:'AV,%@"''68@,-&P:'AV,$AV,%%68@},-P:'AV,%@6''68@,-&P:'AV,$AV@%%68@,-P:'AV,%@J-@@T} 6-8,*@^ h-@r 6-8,*@|  B )@*@ } A3/(&FILL TABLE WITH SPECIAL CHARACTER(Y/N)3 4Y A7#(CHANGE VARIABLES ONE BY ONE'74}YBm#!@&)!)!U6-+%,$@%+&@&&&,$@%@&a6-@m6-@}-@ &8,"@ AP& A&8,"@ A`& A!@&Ar$*68,-@d}%%A(*6-%@. A076-%@!@&)6-@76-%@368,-%@e86-%}@B68,-%@d%A(L6-%@ ( A   8,"@ 6-%@}B6-%@"68,-@d%06-%@?68,-AdB$pB6-%@"68,-@d%06-%@?68,-Ah}B$'6--@'6-%@$'Q)@:7<,,A*@:7<,,AG67<,.>:@:7<,,&A(,Q }BP)'Q)@:7<,,Av*@:7<,,AG67<,.>:@:7<,,&A(,Q BP.'Q)@:7<,,"Ad)@:7<,,"Ah}G67<,.>:@:7<,,&A(,Q BP8' *9 6-B:,-@+68,-@:7<,,/ 9 A :+(+( OLD VA}R NAME: 7&%@<,:( ENTER NEW NAME: :MB:,"%(7&%@<,C67<,.>:@:7<,,%A(,M }BP5:--67B:,:@:7B:,:@(,READING VARIABLES16-6 A@"APJ6-%@T A^G"}D(0[}] NO VARIABLES OR CONSTANTS IN THIS PROGRAM[}]Gh-@r-@@|)@ } > +@-@> @CROSS REFERENCING.-@. @ LINE NUMBER7 B}6-A# B07** HEADER PAGE***READ ALL LINE NUMBERS6-)@)@4}A(A 4IMMED. MODE LINE WAS FOUND6-@11X1,X2 ARE LOW AND HIGH BYTES OF LINE NUMBER6-AV$}%"-@@" @>>CBYTE IS CURRENT POSITION OF THE READ CURSOR IN THE LINE)@6-%}@ !6- A )@)@6-%@##IF COMMAND IS REM READ TO EOL9}")"@U# A /6-9 A )@6-%@#"@ A0# A&#}"@ A`# A0-@a*@# AP- A:A( A@D!AuN }A0** PRINT RESULTS **$$ @END OF FILE REACHED Ap 3 3 3 3--3 REFRENCES MADE T}O  VARIABLES3>:@, *READ UNTIL BYTE IS > 128*6- A 226.( } )@6-%@"6-$' A(67<,.>:,'} A@67<,.>:&A(, ,>:,4,67%@<%@,. )$$B66(.HIT END OF FILE WHILE LOOKING FOR }VARIABLES[}]K&""** READ UNTIL END OF LINE ** -)@ $CBYTE CHANGED UPON RETURN} ##READ 6 BYTES OF NUMERIC CONST -@@ )@   6-%@ $** ADD LINENUM TO} LIST **6-%@6-&A(%@8<@,"$68<@,-58<@,"+68}<@,-5 AA@6-8<@,))6-F:%@,%AV$F:%@,6- A@`//FOUND }END OF LINKED LIST, INSERT NEW LINK&&%@&P:'AV,$AV"%@P:'AV,,%@P:'AV},1&P:'AV,$AV6+%@+%@@INCREMENT 'NEXT' POINTERJ 6-%T66C}HECK TO SEE IF STILL INSIDE AVAILABLE WORKSPACE^T  )%@=%@Q%@}T$h OUT OF AVAILABLE MEMORYr''** READ LEFT PAREN OF FUNCTION **)@6-%@@}@X= )LEFT PARENTHESIS NOT FOUND AFTER FUNCTION@&$p""** BYPASS STRING CONSTANT **z)@6-%@}-@)@6-%@ $X!!** PRINT RESULTS OF XREF **bGO BACK TO VARIABLES}l@q6-Ap  Bv6-w3>:@,xbb3D>:@,>:@,>:@$,>:@2},>:@@,>:@H,>:@V,>:,|6- ** START MAIN LOOP HERE **6- BpP}6-%@ ! $! A!GET VARIABLE NAME B!@V BpP6363>:@',>:@i},>:@',>:@p,6-%@ 6-6-8<@,C8<@, +3 NO REFRENCES96-%@}C Ap`!!6-F:,%AV$F:%@,"8<@,6- B!@` BpP))6-F:%@},%AV$F:%@,Aq Ap`'** HEADER **$'3.'((3>:@,>:@,PAGE 8' }3 3B'6-%@L'$j'** PRINTER ERROR TRAP **k'+@%@m'-@n'$$ @PRINTER }UNAVAILABLEo'-@@t'%%2@p@@~'ELONGATE SOUND WITH REM'-@@} '%%2' ' +@' *** PRINT A LINE NUMBER **+6-%@ +7!@}36--6-%@7 B +67$@%@,.=:,*+1 " 36-'6-%@1 B }4+$.-@@.67<,. . .$2 PRINT THE HEADER 2-@@ 3 2((3>:@}, VARIABLE232++3>:@, CROSS REFRENCE2 3 32""3>:@, FILE:2} B@3$6 OTHER ERRORS HERE 6 +6##  E R R O R # F:A,622  AT LINE F:A,%}AV$F:A,6&B6-%@B6-B BB$D:XREF,622  AT LINE F:A,%Z1 FOR JRZQ=1705 TO 1779:READ A:POKE JRZQ,A:NEXT JRZQ:FOR I=1536 TO 1702:READ A:POKE I,A:NEXT I:GOTO 290352 DATA 104,169,0,17 }0,168,133,207,133,204,177,205,221,244,6,208,19,32,222,6,200,169,0,197,204,240,1,96,2323 DATA 228,203,208,233,230,207,96,32,2 }22,6,177,205,200,56,233,128,48,245,230,207,162,0,76,178,6,192,255,2084 DATA 2,230,206,152,101,205,197,134,208,8,165,206,197, }135,208,2,230,204,965 DATA 104,160,0,177,205,133,207,32,141,6,177,205,133,208,32,141,6,177,205,170,133,203,32,141,6,202,169, }146 DATA 209,205,208,71,197,204,208,29,32,148,6,138,72,162,0,177,205,221,159,6,208,4,169,6,133,209,232,32,1417 DATA 6,224,8 },208,239,76,93,6,138,72,162,0,32,141,6,224,6,240,17,232,196,204,208,244,189,243,6,209,205,2088 DATA 237,230,209,76,69,6,104, }233,7,170,165,209,201,6,240,29,152,133,209,196,204,240,6,177,205,197,204,2409 DATA 16,224,3,208,158,32,141,6,165,208,201,113 },240,11,76,3,6,32,141,6,202,224,2,208,248,96,230,205,20810 DATA 2,230,206,96,198,205,165,205,201,255,208,2,198,206,96,4,10,1 }2,13,23,24,27,3529000 CLR 29005 REM PROGRAM NAME "FINDVAR.LST"29010 REM ROBERT EYERMAN,JR. 4/15/8429015 REM 29030 GRAPHI }CS 0:F=1:GOTO 129035 DIM A$(10),Z9$(10)29040 NAMSTRT=PEEK(130)+PEEK(131)*25629045 NAMEND=PEEK(132)+PEEK(133)*25629050 IF }F=0 THEN 2907529055 ? :? :? "29030":? "29055":? "1":? "2":? "3":? "4":? "5":? "6":? "7":? "8":? "9":? "10":? "CONT"29060 PO }SITION 0,029065 POKE 842,13:STOP 29070 POKE 842,1229075 GRAPHICS 0:F=029080 REM BEGIN,END VAR. NAME TABLE29085 ? :? " }***VARIABLE LOCATE PROGRAM***":? :? 29090 ? "DO YOU WANT LIST OF VARIABLES(1)":? " LOCATE A VARIABLE(2)"29095 ? }" LOCATE A CONSTANT(3)":? " LOCATE LINE REFS.(4)":? :? :? "HIT 1,2,3,OR 4"29100 INPUT A$:IF A$<"1" OR }A$>"4" THEN ? "INPUT EITHER 1,2,3 OR 4":GOTO 2910029105 IF A$="1" THEN 2929529110 IF A$="3" THEN 2936529115 IF A$="4" THEN } 2944029120 GRAPHICS 0:? :? :? "INPUT VARIABLE NAME"29125 ? "ARRAY NAME MUST END WITH ("29130 INPUT A$29135 ALEN=LEN(A$) }29140 A=ASC(A$(ALEN,ALEN))29145 A=A+128:REM SET LAST CHAR. TO IN VERSE VIDEO29150 A$(ALEN,ALEN)=CHR$(A)29155 REM FIND } VARIABLE NO. IN TABLE29160 POKE 205,PEEK(130):POKE 206,PEEK(131):POKE 203,ALEN:POKE 208,PEEK(132):POKE 209,PEEK(133)29165 }C=129170 FOR I=1780 TO 1779+ALEN:POKE I,ASC(A$(C,C)):C=C+1:NEXT I29175 A=USR(1705)29180 NAME=127+PEEK(207)29185 IF PEEK(2 }04)=1 THEN ? :? "**VARIABLE ";A$;" NOT USED**":GOTO 2926529190 GRAPHICS 029195 POKE 204,NAME:POKE 205,PEEK(136):POKE 206,PE }EK(137)29200 IF A$="N" THEN END 29205 A=USR(1536):REM FIND LINES29210 LINEN0=PEEK(207)+PEEK(208)*25629215 IF LINEN0>28999 } THEN 2926529220 IF LINEN0=LSTLIN THEN 2923029225 REM AVOID PRINT DUPLICATE LINES29230 LINELOC=PEEK(205)+PEEK(206)*256-PEE }K(203)29235 IF PEEK(LINELOC+4)=0 THEN 2920529240 REM SKIP LINE STARTING WITH REM29245 IF NAME=155 THEN IF PEEK(LINELOC+PEE }K(LINELOC+2)-1)=155 THEN 2920529250 REM SKIP EOL CHARACTER IF ONE AT END OF LINE29255 LIST LINEN0:LSTLIN=LINEN02 }9260 GOTO 2920529265 ? "WANT TO CONTINUE? Y OR N":GOTO 2927029270 INPUT A$29275 IF A$="N" THEN END 29280 IF A$<>"Y" THEN }2926529285 GOTO 2900029290 REM LIST ALL VARIABLE NAMES OF USER PROGRAM29295 GRAPHICS 0:C=1:? " ***VARIABLE NAME } LIST***":? 29300 FOR I=1 TO 10:Z9$(I,I)="0":NEXT I29305 FOR I=NAMSTRT TO NAMEND29310 IF PEEK(I)>128 THEN A=PEEK(I)-128:Z9 }=PEEK(I):Z9$(C,C)=CHR$(A):GOTO 2932029315 Z9=PEEK(I):Z9$(C,C)=CHR$(Z9):C=C+1:GOTO 2934529320 IF Z9$(1,4)="JRZQ" THEN 29350 }29325 C2=C2+129330 IF C1=2 THEN 2934029335 ? Z9$(1,C)," ";:C=1:C1=C1+1:GOTO 2934529340 ? Z9$(1,C):C=1:C1=029345 NEXT I2 }9350 ? :? :? " TOTAL NUMBER OF VARIABLES=";C229355 GOTO 2926529360 REM **************************29365 REM FIND CONSTANT2 }9370 REM **************************29375 XXX=1780:POKE 209,0:POKE 204,029380 POKE 205,PEEK(136):POKE 206,PEEK(137)29385 C=!}1:C1=1:GRAPHICS 0:? :? "INPUT CONSTANT"29390 INPUT A:A$=STR$(A):ALEN=LEN(A$):Z9$=A$29395 I=ALEN/2:IF I<>INT(I) THEN I=INT(I!}+1):ALEN=ALEN+1:A$(2,ALEN)=Z9$:A$(1,1)="0"29400 POKE XXX,63+I29405 Z9$=A$(ALEN-C,ALEN-C+1):A=VAL(Z9$(1,1))*16+VAL(Z9$(2,2))!}:POKE XXX+PEEK(XXX)-63-C1+1,A29410 IF ALEN-C=1 THEN 2942029415 C1=C1+1:C=C+2:GOTO 2940529420 FOR I=6 TO C1+1 STEP -1:POKE !}XXX+I,0:NEXT I29425 A=USR(1536)29430 LINEN0=PEEK(207)+PEEK(208)*256:IF LINEN0>28999 THEN 2926529435 LIST LINEN0:GOTO 29425!}29437 REM ****************29438 REM FIND LINE REFERENCES29439 REM ****************29440 GRAPHICS 0:POKE 205,PEEK(136):POK!}E 206,PEEK(137)29455 POKE 209,0:POKE 204,1429460 A=USR(1536)29465 LINEN0=PEEK(207)+PEEK(208)*256:IF LINEN0>28999 THEN 2926!}529470 LIST LINEN0:GOTO 294550:POKE 204,1429460 A=USR(1536)29465 LINEN0=PEEK(207)+PEEK(208)*256:IF LINEN0>28999 THEN 2926 32500 CLR :DIM VAR$(80),NUM$(5):CA=PEEK(130)+PEEK(131)*256:CC=1:POKE 1690,032502 ? "}":? "CROSSREFERENCE UTILITY"32503 ? :?%} :? "VAR LINE NUMBERS":? :GOSUB 3254232504 TP=PEEK(CA):IF TP>=128 THEN TP=TP-128:POKE 1690,132506 VAR$(CC,CC)=CH% }R$(TP)32508 IF PEEK(1690) THEN GOSUB 3252632510 CA=CA+1:CC=CC+1:GOTO 3250432512 ? :? "# OF VARIABLES=";PEEK(1681)-1283251% }3 END 32526 IF VAR$="VAR$" THEN POP :GOTO 3251232527 FOR X=CC+1 TO 15:VAR$(X,X)=" ":NEXT X:GOTO 3253032530 A=USR(1536)325% }32 IF PEEK(1680) THEN GOTO 3253632534 VAR$(X-1,X-1)=" ":IF X<=16 THEN VAR$(LEN(VAR$)+1)="NO REFERENCES"32535 ? VAR$:? :CC=0% }:POKE 1690,0:VAR$="":NUM$="":RETURN 32536 CL=PEEK(1683)+PEEK(1684)*25632538 NUM$=STR$(CL):IF LEN(VAR$)+LEN(NUM$)+2>39 THEN % }? VAR$:VAR$=" "32540 VAR$(LEN(VAR$)+1)=NUM$:VAR$(LEN(VAR$)+1)=", ":X=LEN(VAR$):GOTO 3253032542 RESTORE 32546:%}? "Ǡ̠":FOR X=1536 TO 1684:READ TP:POKE X,TP:NEXT X32544 ? CHR$(125):? "ġ":RETURN 32546 DATA 169,0,205%},144,6,208,8,165,136,133,205,165,137,133,206,16032548 DATA 0,177,205,141,147,6,200,177,205,141,148,6,201,126,208,732550 DAT%}A 173,147,6,201,244,240,82,200,177,205,141,143,6,160,4,17732552 DATA 205,201,20,208,5,200,200,76,101,6,205,145,6,240,49,201,%}0,240,39,201,1,240,35,201,1432554 DATA 208,8,152,24,105,7,168,76,101,6,200,201,15,208,13,14032556 DATA 146,6,177,205,238,14%}6,6,24,109,146,6,168,204,143,6,14432558 DATA 197,32,130,6,76,15,6,141,144,6,32,130,6,76,128,632560 DATA 136,238,145,6,140,1%}44,6,104,96,165,205,24,109,143,6,13332562 DATA 205,144,2,230,206,96,0,0,128,0,0,0,6,76,128,632560 DATA 136,238,145,6,140,1$S26900 REM Ҡͬ٠Π ٠ĠΠά Ơӻٛ26910 REM )}ΠҠŠŠƠ ɠҠӛ26930 REM ͠ԠŠENTERED Š͠)}Šŭ ĠӠΠ٬26940 REM Π٠GOTO 27000Ġ ̠͠ŠҮ27000 A)}=FRE(X)/13:DIM LN1(A),LN2(A)27020 V1=1:V10=10:V16=16:V100=100:V256=256:V2=2:V3=3:V4=4:OIF=7:V7=OIF27040 BEG=PEEK(137)*V256+)}PEEK(136)27050 PRINT "ENTER STARTING LINE NUMBER";27060 INPUT START27070 PRINT "ENTER INCREMENT";:INPUT INC27080 ADD=BEG)}27090 LEN=PEEK(ADD+V2)27100 LNUM=PEEK(ADD)+PEEK(ADD+V1)*V25627110 IF LNUM>25000 THEN 2725027120 CNUM=START+COUNT*INC27130)} LN1(COUNT)=LNUM27140 LN2(COUNT)=CNUM27150 COUNT=COUNT+V127160 POKE ADD+V1,INT(CNUM/V256)27170 POKE ADD,CNUM-INT(CNUM/V25)}6)*V25627180 ADD=ADD+LEN27190 GOTO 2709027250 LOC=BEG27260 MLT=0:IF PEEK(LOC+V2)>PEEK(LOC+V3) THEN MLT=V127262 LINE=PEEK)}(LOC)+PEEK(LOC+1)*256:IF LINE>25000 THEN ? :? "":STOP 27270 OPC=PEEK(LOC+V4)27280 IF OPC=OIF THEN 2740027290 PONT=LOC+)}V4:GOSUB 2790027300 IF MLT=0 THEN LOC=LOC+PEEK(LOC+V2):GOTO 2726027310 MT=LOC+PEEK(LOC+V3)27320 OPC=PEEK(MT+V1)27330 IF O)}PC=OIF THEN 2760027340 PONT=MT+V1:GOSUB 2790027350 MT=LOC+PEEK(MT):IF MT20 THEN 274302742) }5 IF PEEK(A-V1)=27 AND PEEK(A-V7)<>14 THEN 2743027427 CHNPT=A-V7:GOSUB 31260:GOTO 2730027430 GOTO 2730027600 A=LOC+PEEK(MT)!})-V127611 IF PEEK(A)<>20 AND PEEK(A)<>22 THEN 2762027612 IF PEEK(A-V1)=27 AND PEEK(A-V7)<>14 THEN 2762027613 CHNPT=A-6:GOS)"}UB 31260:GOTO 2735027620 MT=LOC+PEEK(MT):GOTO 2734027850 ? "MULT IF SCREWED UP":STOP 27900 OPC=PEEK(PONT)27905 IF OPC=10 )#}OR OPC=12 OR OPC=13 OR OPC=35 THEN 2798027910 IF OPC<>30 THEN RETURN 27915 PONT=PONT+V127925 OPC=PEEK(PONT):IF OPC=23 OR O)$}PC=24 THEN PONT=PONT+V1:GOTO 2795027930 IF OPC=14 THEN PONT=PONT+7:GOTO 2792527935 IF OPC=15 THEN PONT=PONT+PEEK(PONT+V1)+V)%}1:GOTO 2792527940 PONT=PONT+V1:GOTO 2792527950 OPC=PEEK(PONT):IF OPC=14 THEN 2796027952 GOSUB 3130027954 OPC=PEEK(PONT):I)&}F OPC=20 OR OPC=22 THEN RETURN 27955 IF OPC=18 THEN PONT=PONT+V1:GOTO 2795027956 IF OPC=14 THEN PONT=PONT+7:GOTO 279542795)'}7 IF OPC=15 THEN PONT=PONT+PEEK(PONT+V1)+V1:GOTO 2795427958 PONT=PONT+V1:GOTO 2795427960 A=PEEK(PONT+7):IF A=20 OR A=22 THE)(}N CHNPT=PONT+V1:GOTO 3126027965 IF A=18 THEN CHNPT=PONT+V1:GOSUB 31260:PONT=PONT+8:GOTO 2795027970 GOTO 2795227980 IF PEEK))}(PONT+V1)<>14 THEN GOTO 3130027982 IF PEEK(PONT+8)<>20 AND PEEK(PONT+8)<>22 THEN 3130027985 CHNPT=PONT+V2:GOTO 3126028000 )*}NUMBER=0:X=PEEK(SADD)28200 M=0.128300 FOR Y=0 TO (X-64)*228400 M=M*V1028500 NEXT Y28600 FOR X=SADD+V1 TO SADD+528700 N=)+}PEEK(X):P=N28800 N=INT(N/V16)28900 N=N*V10+(P-N*V16)29000 NUMBER=NUMBER+N*M29100 M=M/V10029200 NEXT X29300 RETURN 3000),}0 FOR Y=1 TO 530600 Z=V130700 IF NUMBER1>99 THEN Z=V10030800 IF NUMBER1>10000 THEN Z=1000030850 IF Y=V1 THEN POKE ADDR,64)-}+CLOG(Z)/2:IF Z=0 THEN POKE ADDR,6430900 DIG=INT(NUMBER1/Z)31000 NUMBER1=NUMBER1-DIG*Z31050 IF DIG<0.1 THEN DIG=031060 DI).}G1=INT(DIG/V10)31080 POKE ADDR+Y,DIG1*V16+(DIG-DIG1*V10)31100 NEXT Y31200 RETURN 31250 REM 31260 SADD=CHNPT:ADDR=CHNPT:G)/}OSUB 2800031270 FOR A=0 TO COUNT:IF LN1(A)<>NUMBER THEN NEXT A:GOTO 3128531280 NUMBER1=LN2(A):GOSUB 30000:RETURN 31285 ? ")0}ҡ NO LINE ";NUMBER;" IN LINE ";LINE:RETURN 31300 ? " GOTO VARIABLE IN ";LINE:RETURN 31310 END ETURN 31285 ? "(m30000 REM --> LINE RANGE MANIPULATOR UTILITY <--30005 D=200:DIM A(D),B(D),A$(1),L$(25),ER$(5)30010 TRAP 30580:? "}":? " LIN-2}E RANGE MANIPULATION UTILITY":? :? :? L$:? :L$=""30015 ? "SELECT ELETE, OVE, OPY,":? " OUNT, OR ND":? :? "SELECT"-3};:INPUT A$30020 IF A$="D" THEN 3010030025 IF A$="M" THEN 3020030030 IF A$="C" THEN 3030030035 IF A$="K" THEN 3040030040 -4}IF A$="E" THEN 3006030045 L$(1,1)="'":L$(2,2)=A$:L$(3,25)="' UNKNOWN. REENTER.":GOTO 3001030060 STOP 30070 GOTO 300103009-5}0 ? CHR$(125):? :RETURN 30091 ? :? :? "CONT":? "CONT":POSITION 0,0:POKE 842,13:STOP 30092 POKE 842,12:? CHR$(125):? :RETURN-6} 30095 ADDR=ADDR+PEEK(ADDR+2):LNUM=PEEK(ADDR)+PEEK(ADDR+1)*256:RETURN 30100 REM ś30105 ? :? "DELETE";:GOSUB 30500:IF -7}C=0 THEN 3015030110 X1=INT(C/15):X2=C-(X1*15):IF X1=0 THEN 3012030115 FOR Y1=0 TO (X1-1):GOSUB 30090:FOR Y2=1 TO 15:? A(Y1*-8}15+Y2):NEXT Y2:GOSUB 30091:NEXT Y130120 IF X2=0 THEN 3013030125 GOSUB 30090:FOR Y1=1 TO X2:PRINT A(X1*15+Y1):NEXT Y1:GOSUB -9}3009130150 L$(1,LEN(STR$(C)))=STR$(C):L$((LEN(L$)+1),25)=" LINES DELETED.":GOTO 3001030200 REM ś30205 ? :? "MOVE";:GOSU-:}B 30500:IF C=0 THEN L$="NULL RANGE SPECIFIED.":GOTO 3001030210 ? :? "MOVE TO";:GOSUB 3055030215 FOR X1=1 TO C:GOSUB 30090:L-;}IST A(X1):POSITION 2,3:L1=LEN(STR$(A(X1))):L2=LEN(STR$(B(X1)))30220 FOR Y1=1 TO L1:PRINT " ";:NEXT Y1:IF L2<=L1 THEN 302303-<}0225 FOR Y1=1 TO (L2-L1):? "";:NEXT Y130230 POSITION 2,3:? B(X1):? :? :? A(X1):GOSUB 30091:NEXT X130250 L$(1,LEN(STR$(C)))-=}=STR$(C):L$((LEN(L$)+1),25)=" LINES MOVED.":GOTO 3001030300 REM ٛ30305 ? :? "COPY";:GOSUB 30500:IF C=0 THEN L$="NULL RAN->}GE SPECIFIED.":GOTO 3001030310 ? :? "COPY TO";:GOSUB 3055030315 FOR X1=1 TO C:GOSUB 30090:LIST A(X1):POSITION 2,3:L1=LEN(ST-?}R$(A(X1))):L2=LEN(STR$(B(X1)))30320 FOR Y1=1 TO L1:? " ";:NEXT Y1:IF L2<=L1 THEN 3033030325 FOR Y1=1 TO (L2-L1):? "";:NEXT-@} Y130330 POSITION 2,3:? B(X1);"":GOSUB 30091:NEXT X130350 L$(1,LEN(STR$(C)))=STR$(C):L$((LEN(L$)+1),25)=" LINES COPIED.-A}":GOTO 3001030400 REM ԛ30405 ? "COUNT RANGE (FROM,TO) ";:INPUT L1,L2:IF L2>32767 THEN L2=3276730410 IF L2LNUM THEN-C} GOSUB 30095:GOTO 3042030425 IF L2>LNUM THEN C=C+1:GOSUB 30095:GOTO 3042530490 L$(1,LEN(STR$(C)))=STR$(C):L$((LEN(L$)+1),25-D})=" LINES COUNTED.":GOTO 3001030500 ? " RANGE (FROM,TO) ";:INPUT L1,L2:IF L2>32767 THEN L2=3276730505 IF L2LNUM THEN GO-F}SUB 30095:GOTO 3051530520 IF L2HHHɛ%$  " s  M! C"L "hhh(`@+ȱɛ#D EX"L͍ H+`ꍯ5}S T Lt5 H ɛ)" R a{I 0L. `H5  5 H Lq 5 H h`y t! 0/. 'Lw 5}. 0 L (` ( Lu 8`REN.UMBER"DEL.ETE"&DI.RECTORY &RENA.ME 'ERA.SE!'LOCK.#'UNL.5}OCK$'QR.EF'REP.LACE@(XR.EF)SI.ZE*MAR.GIN#+DO.SG+H - -)@) )&) m, U,u!p"L!h`5} h8`+B"+ #,ɛ0:L!N+B"+莟+ɛL! إH ٮ+ԝ+՝+hMB"L!,ɛ! 5}"L!L!ȱPESL!A"Lx!I J, , hhh &-LLx!˩̩ͩΩnϩ .=- m, U,q"l# B V 5}}, a, H+` H H`++0E+0@+0;) ,ˍ+ȱˍ+) ++++) ++L"L&-+ +橛U , , +5}L* % +L!#ˑȱˑȩȑ % +L"ȑ %͍.͍.+.+. -Ln#ͩ͠͠͠+ % %L"m#h$%5}+18ͥΠ͍.͍.+.+. -L*% %+ͭ+ȑ %+m+++m++L%% % , %iϥiРϑȱ5}ϑȱˍ+iϥiбˍ+ȱ #I#L$+͞+L$ +L"%ȱȘHihLZ$h /%L"$ $L"$ȱ5}i$d% L`$ , ,ȱ,Hi hL$h /%iL"$ $L"$ $L$ L$ , 5},ИH˅ȱ˅h %`+L%8 ȱ /%L"$L*L&-L&-He˪i ٥Ս.ԍ.+.+. -I %5}e%`&ȱ %L[%ˍ+ȱˍ+ %L%ͅȱͅ hHe˪i %h`iͥi`i`8``"&5}#UH ++ԭ+L&"&VUH +"&i"&$ U , -h`)`) ++++ , +L& &LW& +L5}&˅ͥ̅ a&\'& Lt& +Lt& +8˅ϥ̅8͍+΍+8++ . H+`ˍ.ˍ.+.+. -`5}ˍ.ˍ.+.+. -` ')+L&-i01' D'EBJ V0H"& - r'0"&  UȌ"&"5}& ,ک"&U ]'X(, J, ' }, a, H+`L&- iUDiEHIB V` B V`D1:*.* m, J," -ȘeDiE5}" -ѝB V0 }, H+`L&- R- ++ ", ,0Ο+ ]-L' J, a, }, H+`ɀL&-ȩ" -LR)Ș+Β+Δ++A5}[L&-̔+ [Y(T)A:1($̔+լ+$( +LG(+$( +LG(+ + 5}+ a)LW)+ a)L\)8+++m+˭+i8+++m+ͭ+i8˅ϥ̅ . 8+m+i୛+˭+5}̭+ͭ+έ+ϩ . H+`LU)P*&-L&-L&-eύ+iЍ+ + N+L)00Șeͥͅi N+إ͍+΍+5}`8` R- ++ ",L*+ ,L* - , +L)+˅ȱ˅ȱˍ+ȱˍ+ȱ60)ȱ0$̚++͙+L) , ,͗5}++L*+="&+ԩթ +Q*L+ѥυԥЅ +"&i"& U ,0: - +L)"&婛U ,0 L)"& U , J, 5}}, a, +`ɀL&- m, U,A"ԅ + ", - +8刅ԥ剅թ +80劅ԭ1勅թ +U , }, a,lͩ+ ,5}`)+)9++R+S H+`.M+o+`)A[ńŅ8``CLR+,e˅˥i̥̍.5}... -``ͥ`)/UHH) h0U)Uh`˥`i`Șq˨` N+!)U(05}eͥͅiΩU`8` B V`@+`@+` p++`p+ +`,- -(+ ,`mD$Ei5}%8H+(I)`A"ߝD,EJB V`P:A" BxHIUDE V`( U"&`+`` }, 5}a,;ͩ- ,8`?"ERROR- ";PEEK(203)A"} `A"BU B V䩥D-ExHI B -t.V R-+`5}-͠0-L-0L-8L-`.. .. p `..p`I `8˪̨Ϙа B.L . !.`5}ˑˑ`e̥̅e΅Τ ˑΈˑ``8˪̨Ϙа B.L . !.`4Y&_D^8=7`Dc?J&&K&L&ʩ * d5I&&&© 1 -L*I&˜ ' 4&0& 1&& *L9}*& & 1 -& & 1 - - *`RUNTIME ERROR AT LINE &&Lr*+ +L&` '9}& &L&PROGRAM STOPPED&&Ńł ȱ`iL'HH 1*L/ r* . 1 + '. . . 9}1 . ' 1 + . 'hhL.ʥ`HHhh`8L'u9}`Huh` Lr*L' Lr*L' ) . ( . ' r* .Lo* )9} . ' , ( . ' + ' r* ' + 1 , . o*Lr* ) ' ' , ( . ' + ' r* ' + 9}1 , . (( . o*Lo* ' 1* '.L/` ) r* .L. ) . . + ' . ' ,L' ) ' ,9} ' . + 'L'J&K&L& ) 1 1,L&eJ&iK&`L&8LM& . '.9}L&`ʔȱȱȱ 1*Șe惠 惨6,*6-* L*HHhh``9}`Lo*ʱ` ** &JL&J *HHl JLw TO BOOT FOR DOS9} TO RERUNp B V8+` +ȱLr*&&8558凅刐SJj)ee`ф9}фiiL#+8L#+ LM&uuuLr*8` +Lr*iLr*豂Hȱ9}h`p +Lr*+H+ BHI+ 4 -h`8` ,L, ,#` ,0 ,0L, ,09}` ,0L,L,`޵` `Ȕ`ʔ惥u`9}+ BHI DEH 4 -HyhLo* + -`+JJJJ`d-+e- +- c-0 c-Lr* J-Lr*9}` f-H J-h 0 c-`L+8 0ƅ`66&Ln-HH` B VhH)Kh)0 IJD-EB 4hLr*S:+Lr*9}TUVLo* -`++L+ -8ɰɅ +`ʱȱȱ`ȵȵLr*Lr* '. . .ʥ9} . . '. .L3 '. . . . 1*uȱuȱu W* 1* .0 @,L3 ȱLr* T,L.ʵ9}`eeLM&HHhh`ؐHH 1*L/ r*HH . .6 +i i9} .i i .hh . . 'hh .`HH 1*% r*HH 1L'/ 1* '. LM& .6 + 9}. +` 1* '.ޠ . 1 +L/  o*Lr*H+ B Vh` ҵ  o*Lo*H+BHI 4+h+L1 g9}0+KJBD0EH 4h o*Lr* r* '.0Ɔ򩛙0` -H`B 4h`009}L1Lr*Lr* +`H o*hL11HH eHHƆeiH '.lꦆ 1Օ`0  9}L,`8`|1rd-1e- (- 10|1L1|10|1`1 r* '.1 1`+6-1L1809}1LM& + 1 . 1 1 ++ 1 +Ɔʭ1 +`ʕ`66`HHH66666u9}uuhhhLr* +愵 ' + 'I 1 280/66&&&`9}uuu` 2 2Ј 2 o* +`@32@2 .22222 LM&ȥ2i9}223`L*32 3`LM&2@82ƅ3 ȱ222` w3L?33L?3H3 2h`9}1+ %  88L3 o* o*` o* o*`  o* o*` 3$' 3"0 9}30 !4L, 4L, 4L,L1L14 1 '. .4444`H+? ++HI4D44E4B 4H9}4h` VLM&4` D44 14α44 1L4 D44LM&44, α44ﭯ4 148e44α4 9}11L1  'Lr*hh iLr* (5L2 (5L*42&&ȱ0 5Lw5 555&9}& L5&&`i`J&&K&L&` +ȱ&&%8e慱HȱhױL&9}iJ&iK&Lr*+ BH Vh 1LW*+&BH 4hN 1 W*L 1MLW*+%BNLMH 4hLo*)}*1*N9}*W*v*11+,J2+,a,s,@,/,T,9,H,),**++++,,-------6.c./x///2:3}10000)///0090.444(4!4440&D'@(9}f(()))V)4440T5\5A1+1d5355&(6@6j6S1d^8nw8x8}889b9999:3:k:::::::;":};,j;6;@;J;T<^:>>>?0u&?:u2?DuE?Nu\?u`?u?u:}(@u}@u@u0AuAuAu=BuBuBuECuCuC_D 0u*% :}PRESS ANY KEY TO CONTINUE!8x " This program allows you to step!through all the SE:}TCOLOR and POKE&statements for graphics modes 1 and 2! 1)FROM THE BEGINNING..:}%..START SETCOLOR 4,0,14 = POKE 712,14%2)START SETCOLOR 3,0,14 = POKE 711,14%3)START SETCOLOR 2,0,14 = POKE :}710,14%4)START SETCOLOR 1,0,14 = POKE 709,14%5)START SETCOLOR 0,0,14 = POKE 708,146)ENDCH:}OOSE AN ITEM FROM 1-6*=8@80 =8=8 :=8:6=8:C8=8:C8=8:C8=8:};C8=8;C8 1)GRAPHICS 1 2)GRAPHICS 2CHOOSE A GRAPHICS MODE 1-2*F8@8:}0 F8F8 ;"=8@K;@K;@K;@K;@K;K;..F8 " GRAPHICS F8J: }*r"CAPITAL LETTERS*"lower case letters*"Š*": }*+C8<%}THIS VIEW WITHOUT SETCOLOR OR POKES! PRESS SPACE BAR OR B TO CONTINUEC8=: }OR M TO GO TO MENU!C8=*4K:7@864+@8MF=P@8 g=C8C8C8g=+@8: }B=C8C8 C8C8  =+@8B@8 =r*I8C8  L8C8 C8    O8C8: } C8    R8C8  U8C8C8 C8    [8U8C8   +I8L8O83 }S:}ETCOLOR I8, L8, O8  # C8POKE R8, [8PRESS SPACEBAR OR B TO CONTINUEO:}R M TO GO TO MENU!* ?X8 >$>%+P }-uRI81,I8 E?Q+I8I8 I8-::}u?c104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104?(@Y104,104,104,10:}4,104,104,104,104,104,104,104,52,56,104,52,56,104,52,56,104,52,56,104,52,56+@}@O104,52,56,104,52,56,104,52,56,104,52,56,104,:}56,48,48,48,48,48,48,48,56,56,56,56@@J56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56@0A]92,2:}68,212,272,256,252,236,212,92,64,200,292,64,272,212,208,64,236,252,212,224,240,212,264,523AAO52,56,56,56,56,56,56,56,56,56,:}56,56,56,56,56,56,56,56,56,56,268,212,256,272,212AAR244,200,212,264,64,132,164,160,140,52,52,56,56,56,56,56,56,56,56,56,56:},56,56,56,56A=BZ56,56,56,56,56,56,56,204,252,244,256,228,240,212,208,64,276,268,228,248,220,64,244,252,248@BBR196,264,204:},224,92,268,64,196,200,204,52,56,56,56,56,56,56,56,56,56,56,56,56,56,56BBX56,56,56,56,56,56,56,56,56,204,252,244,256,228,2:}40,212,264,64,216,252,264,64,196,272,196BECL264,228,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56HC:}CO56,56,56,56,48,48,48,48,48,48,104,52,56,104,52,56,104,52,56,104,52,56,104,52,56CC[104,52,56,104,52,56,104,52,56,104,52,:}56,104,104,104,104,104,104,104,104,104,104,104,104,104C_D^104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,1:}04,104,104,104,104,104,104,-1&,104,104,104,104C_D^104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,18&  K AB@AxBp&@A6ǠøǸ } +>}AR@90@Q(FUNCTION KEY DRIVERk(BY STEPHEN PROKOPCHUK}ARO+F:A >},%F:A!,$AV"AL(FUNCTION ALREADY IMPLEMENTEDO--A6Ay"#6-%)- $Bp&>}!( ERROR IN DATA$W(/($ THIS PROGRAM WILL DEFINE CTRL 4 - 0W(#AND SHIFT+CTRL 4-0 AS PHRASES WHICH#++(#YOU MAY E>}NTER. THESE PHRASES CAN BE(E,($CALLED AT ANY TIME BY SIMPLY PUSHINGE(THE APPROPRIATE KEY.2;@,;@,<> }-@@Fb('(FUNCTION KEY # - CTRL 3 @b(>:@H%$+@,%@$+@,,Kc>!}!@c(+ SHIFT >:@H%+&@,$+&@@,%@$+&@@,,P&"&(DEFAULT SETTING IS [>"}]Z( YOUR PHRASEd4B:,!@*(PHRASE IS TOO LONG.4 @n 46.xH-@B:,DA>#}%+&@,$@%&@@:7,,H 73A%+&@,$@%&@7 ((PROCESS IS COMP>$}LETE.6-?:A6,104,173,8,2,141,82,6,1739,2,141,83,6,169,50,1418,2,169,6,141,9,2,17333,3,13>%}3,207,173,34,3,133 !!208,160,6,177,207,141,123,6(##200,177,207,141,124,6,238,12306,96,165,66,208,27,160,08 185>&},137,6,205,9,210,240,25@9,64,205,9,210,240,13,200H!!192,7,208,236,169,0,141,241P2,76,190,255,152,24,105,7X""1>'}68,173,241,2,208,243,152,10`""10,10,24,105,144,133,203,169h 6,133,204,160,0,177,203,56p""233,32,133,93,177,203,240,>(}10x$$132,206,32,164,246,164,206,200 16,242,169,1,141,241,2,104$$64,152,157,155,179,181,176,178YYLOAD ",SAVE ">)},LIST ,RUN ,POKE ,PEEK(,DATA ,PLOT ,DR. ,LOC. ,POS. ,COLOR ,SE. ,GR. , D:FNXNKEY55,179,181,176,178YYLOAD ",SAVE "<X )+TONU NUMERIC KEYPAD'6-#-A6A'"( B+}6-%% 2!"B6-?:A6,!<(ERROR - CHECK DATAF104,162,006,160,011,169P007,032,092B,},228,096,174Z016,208,240,006,202,134d204,076,051,006,165,204n240,002,208,023,230,204x173,000,211,041,015,B-}170173,001,210,201,001,240002,162,016,189,054,006141,252,002,076,098,228052,024,029,027,035,051B.}053,048,043,031,030,026050,034,012,014,028,155D:KEYPAD1,252,002,076,098,228052,024,029,027,035,051@E )*;TONUBAAUA6 ##NUMERIC KEYPAD (WITH FOR )'6-#-A6AF0}'"( 6-%% 2!"B6-?:A6,!<(ERROR - CHECK DATAF104,162,006,160,011,169PF1}007,032,092,228,096,174Z016,208,240,006,202,134d204,076,051,006,165,204n240,002,208,023,230,204x173,0F2}00,211,041,015,170173,001,210,201,001,240002,162,016,189,054,006141,252,002,076,098,228052,024,029,02F3}7,035,051053,048,032,031,030,026050,034,012,014,028,155 D:KEYPAD2,252,002,076,098,228052,024,029,02DU#$NABEBUBBLESORTTIMBSBSBS J5} SORT ROUTINE TESTj#(}TEST ROUTINE GENERATES TWOJ("IDENTICAL LISTS OF 12 DIGIT RANDOMj(NUMJ6}BERS AND THEN SORTS THEM-()(ENTER NUMBER OF RANDOM NUMBERS-4( (LOAD SORTING ROUTINES* B 4 B! J7};@$,;@$,7($(GENERATE LIST OF 12 DIGIT7(RANDOM NUMBERS-@$@--67<,.=:P:FJ8}:B7p,$@'AV,,$   6..C-@6-@$?(7&@<,7&@<,C 8S(( START SJ9}ORT1 AS6-?:C:,}<$ { {ŠŠ{Ԡś{))FROM COMPUTE!, ISSUE #22 (MAR 1982){{??GOSUB 3J?}1520 FROM MAIN PROGRAM TO LOAD ML SORT SUBROUTINE,{,,THEN CALL SORT FROM BASIC PROGRAM WITH{99POKE 203,P1-1:POKE 204,P2J@}-1:POKE 205,P3:POKE 206,P4{&&IF P6>1 THEN BSX=USR(1568,P5,P6){{SORT PARAMETERS{99-P1: POSITION IN RECORD OF FJA}IRST BYTE OF SORT FIELD{88-P2: POSITION IN RECORD OF LAST BYTE OF SORT FIELD{&&-P3: RECORD LENGTH (<=150 BYTES){$$-PJB}4: 0=ASCENDING, 1=DESCENDING{<<-P5: ADDRESS OF STRING CONTAINING RECORDS TO BE SORTED{))-P6: NUMBER OF RECORDS TO BE SOJC}RTED {2 #Bh!-AhA%"+/ 2$P{104,104,133,217,104,133V{216,104,133,209,104,133\{208,169JD},0,133,218,133b{207,162,1,165,216,133h{214,165,217,133,215,24n{165,214,133,212,101,205t{133,214,165,215,133,2JE}13z{105,0,133,215,164,203{165,206,240,10,177,214{209,212,144,44,240,12{176,19,177,214,209,212{144,13,JF}240,2,176,30{200,196,204,240,227,176{23,144,223,169,1,133{218,164,205,136,177,214{72,177,212,145,214,104JG}{145,212,192,0,208,241{232,224,0,208,2,230{207,228,208,208,172,165{209,197,207,208,166,165{218,201,0,JH}208,144,96d}e}Ԡf}ŠŠԠg}FROM ANTIC, OCT/NOV 1982h}i}BBGOSUBJI} 32120 FROM MAIN PROGRAM TO TO LOAD ML SORT SUBROUTINE,j}22THEN CALL BUBBLESORT FROM BASIC PROGRAM WITHk}77BSX=USR(ADR(BUJJ}BBLESORT$),P1,P2,P3,P4.1,P4.2,P4.3)l}m}SORT PARAMETERSn}<<-P1: ADDRESS OF STRING CONTAINING RECORDS TO BE SORTEDo}JK}%%-P2:RECORD LENGTH (<=256 BYTES)p}((-P3:NUMBER OF RECORDS TO BE SORTEDq}..-P4.1,P4.2,P4.3:DEFINITION OF SORT FIELDr}GGJL}-(THESE THREE NUMBERS ARE ONE SORT FIELD SET. ANY NUMBER OF SORTs}EE-FIELD SETS MAY BE SPECIED, IN MAJOR TO MINOR ORDER OJM}F SORTING)t}66--POSITION IN RECORD OF FIRST BYTE OF SORT FIELDu}//--LENGTH OF SORT FIELD (<= RECORD LENGTH)v}!!--0=ASCEJN}NDING, 1=DESCENDINGw}x};A,}}: #B!0!-@A%"367<,.>:,7 :$}ll216,104,56,233,3,133JO},217,104,133,204,104,133,203,104,133,215,104,133,214,104,133,210,104,133,209,162,0}kk104,104,157,0,1,232,228,217,208,246,5JP}6,165,209,233,2,133,209,165,210,233,0,133,210,48,108,165,209,133}ll211,165,210,133,212,165,204,133,206,133,208,165,203,133JQ},205,24,101,214,133,207,165,208,101,215,133,208}ll160,0,185,0,1,190,2,1,134,218,190,1,1,200,200,200,132,216,168,136,177,20JR}5,209,207,240,12,165,218,208,4}kk144,16,176,46,144,44,176,10,200,202,208,234,164,216,196,217,208,210,198,211,169,255,197,2JS}11,208,6,166}jj212,240,11,198,212,165,208,133,206,165,207,24,144,172,165,213,240,4,134,213,208,148,96,134,213,160,0}II1JT}77,205,170,177,207,145,205,138,145,207,200,196,214,208,241,240,203 D:BBLSORT.BAS4,213,208,148,96,134,213,160,0}II1HXtu] ZTXTROZYCUZTXTCOZXCUZCURSOZZQZZCZRZCARREACURSOZDEZCZFZLZUZ12SHFLOZ9Z3Z6INVFLPOKMSNAMNV}EAG NW}##THIS ISNX} A PROGRAM TO TEST OUT THE GENERAL INPUT ROUTINE.<<THE INPUT ROUTINE ITSELF IS IN LINES 150 - 195.NY}@@THE MAIN BODY OF THE PROGRAM STARTS AT LINE 1000.22INITIALIZATION BEGINS AT LINE 32000. $NZ}$ B <<*** THIS IS THE GENERAL INPUT ROUTINE ... N[} K:6- 6.$ A" !$$Au"Ae"  6N\}-&""A`6.7<, Ae 6.>:,6-%'+"%) )!,6-&' Ae 67,.  AeN]} )"A !6-&F:,"*!6-& $??*** THIS IS THE BREAK KEY N^} DISABLE ROUTINE ...CALL THIS ROUTINE AFTEREVERY GRAPHICS STATEMENT2 6-F:,!A' 6-N_}&&2B7t$44*** THIS IS THE MAIN PROGRAM BODY ...<<AFTER INITIALIZATION, CONTROL N`} WILL RETURN HERE2 +2  WELCOME TO THE SOLID GOLD BULLET)) !PROOF INPUT ROUTINE TEST PROGRAM.Na}" " LET'S START OFF SIMPLE.77***FIRST JUST GET A TEXT STRING.....;@,I6-@6-@Nb}36.ENTER YOUR NAME: ?6-@I AU"A 0 6. 0 THANKS FOR YOUR COOPERATION,  ***NNc}OW GET A NUMBER....... W6-@)6.HOW OLD ARE YOU? : 56-@A6-@HM6-@WW AU"A5Nd} 6-A:,$$***NOW BACK TO TEXT INPUT ....q6-@6-@C6.!DO YOU LIKE THE INPUT ROUTINE? : O6-@Ne}[6-@eg6-@q AU"AP$$$7@<@,4YAp)E ; 0I'LL BET YOU COULDN'T BRNf}EAK IT THOUGH. BYE, BYE.E Au.) )  YOU KNOW, , YOU'RE PRETTY0  SMART FOR  YEARS.3&}==*** THISNg} IS THE INITIALIZ- ATION SECTION ...}" }&&;@,;@@,;@@,}"Nh}}+6-@e6-@% A+W AX0,1,4,32,64,96,128]""155,126,702,694,84,85,752,16 D:SNi}GINPUT.BAS6-@% A+W AX0,1,4,32,64,96,128]""155,126,702,694,84,85,752,16 D:SL SVjABV <;AR,;A ,/AR@Rk}< >:A%,R6-@R6.>2_-@@4(@* *?(@_(^}@ CREATE AND READ <4-@@4(@ F7-@!7(@___________^}_________P7-@"7(@press start to beginZ"F:B2y,@" @d A`n' +@^}'0@@x7-@7(@____________________6-@6(@ WRITE OR ^}READ FILE7-@7(@____________________1-@@ 1(@ = write file5-@^}@5(@ = read or print 7-@7(@____________________3-@@ 3(@^}PRESS '' OR ''7-@"7(@____________________##@@K:%)@^}@% AP!"@ Ap!WRITE "@ A READ@ A@^} A' +@'0@@@0-@@0(@ instructions?(-@@((^}@(Y/N)";#@@K:0)@;@, AP6"@x A@"@^} APJ@x AT@ A^A +'0@A0@^}h$$( *** INSTRUCTIONS ***r-(-(" This program will allow you to |++(#write documentation files and als^}o 44(,read these and any other documentationfiles.-(-(" You may give the documentation **("files any filename^} you wish, e.g.,++(#'D:FILENAME.DOC'. You may use any $$(extender, e.g., DOC. or TXT.p(p(e The program will^} also allow you theoption of printing your DOC. file or viewing it on the screen..( ( (.( Ӡ٠٠Ϡ^}O#@@K:0)@;@E APO AC +A 1A^}@CAA+(NAME YOUR FILE+((ENTER AS D:*.*)@#@@E:@@@^}9A 'A@9AArP(H Press RETURN to end each line. ---- Press ST^}ART + RETURN to end file.o( ϠԠŠĠr(C-@@7$)@9F:B2y,"@C A^}"AU' A`&67,.>:, %67,.>:AU,B-@@@6@i2@ @P:^}'@,m 2 Ap0m -@@@6@G2@ @P:'@^},K m2:9 @$-@@8/67,. 9 A0D0(@@^}&@0 ANE( (( END OF FILE$@'(E(Write another file? (Y/N)XE#@@K:^}0)@;@E APb#"@)"A!# Apl"@x)"Av7-@x)@)^}A!)A7 AM +A 1A@CAAM Ap4 A*@^}@4 A^(>:A%,$-@@ 1@5 9 <(P( PRESS RETURN T^ A`^}E@!(WHAT DOC. FILE7((ENTER AS D:*.*) ;E APS( (( END OF FILE$@'(S('Do you wish ^}to read another file? (Y/N)D@!(WHAT DOC. FILE6((ENTER AS D:*.*):D APR( (( END OF FILE$^}@'(R(&Do you wish to read another file?(Y/N)E#@@K:0)@;@E AP^}"@ A@"@x#@x)@# AC -@6@<2@^}@@ C$-#@@P:- ApM +A 1A@CAA^}M A 4 A *@@4 A0'@ @' A E@!(WH^}AT DOC. FILE7((ENTER AS D:*.*) ;E A*/@(/(Print another file? (Y/N)4O@@,(^}WHAT DOC. FILEA((ENTER AS D:*.*)EO A>D( (( END OF FILE$@'(D(Print another file?(Y/N)HE#^}@@K:0)@;@E APR"@x@\"@ Apf#@^}x)@# APp' +@'0@@z7-@7(@____________________5-^}@5(@ PRINTER OF SCREEN7-@7(@____________________.-@@ .^}(@ = printer.-@@.(@ = screen 7-@7(@____________________^}3-@@ 3(@PRESS '' OR ''7-@"7(@____________________:"@@^}K/)@:@"@ A`"@ A@#@)@# A^}' +@'0@@7-@7(@____________________6-@6(@^} WRITE OR READ FILE7-@7(@____________________1-@@ 1(@ = write file^}5-@@5(@ = read or print  7-@7(@____________________3-@@ ^}3(@PRESS '' OR '' 7-@"7(@____________________D:READWRIT.BAS-@@ \p%?Rq)(!}M(ˠb}q(IIANYTHING PRINTED USING INVERSE AFTER THIS PROGRAM IS RUN WILL BLINKIITHE TWO b}1'S IN THE DATA STATEMENT(22ND&24TH) AFFECT THIS SUBROUTINEpp23,1-INV.LEFT ON DURING BLANK:3,3-INV.DURING CHAR.,BLANKS NOb}RMAL:2,2-CHAR.ALTERNATE BETWEEN INV.AND NORMAL884,4-ALTERNATES CHARS. UPSIDE DOWN AND RIGHTSIDE UPJJTHE LAST 30 IN THb}E DATA STAT. CONTROLS BLINK FREQUENCY BETWEEN 1-255qqTHIS PROGRAM MAY BE RUN AND THEN CLEARED W/NEW AND IT WILL STILL WORb}K UNTILL RESET.REENABLED BY A=USR(1536) -A6A6%@2"  6-?:A6,(2ll104,169,b}17,141,40,2,169,6,141,41,2,169,30,141,26,2,96,173,243,2,41,1,73,1,141,243,2,169,30,141,26,2,96 D:BLINK.BASll104,169,`r FVSCRODBBwB@BQ@@Q@ * SCROLL.GR26-BBw +@f}%%6-F:A`,%AV$F:Aa,#)-@@)(@ TLe(-%@%@-@9f}2 <-@A F-@A  K P-%@@T @U3 F:,Zf} _AU@`6-%@a"@ @5b!6-!AU@d @5 D2:SCRf}OLL.BASAU@`6-%@a"@ @5b!6-!AU@d @5 D2:SCRd