@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@W!( 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}NjL= ( 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 ;LHL1  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$}G 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(}rI|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) hK. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILEm M. RUN AT ADDRES+}SF. LOCK FILE 5N. CREATE MEM.SAVG. UNLOCK FILE: pO. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEuL !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}VCOPY--FROM, TO?OPTION NOT ALLOWED697 FREE SECTORS COPYING---D8:COPY32.COM[l# 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}GLLOWED 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}G,^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}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?@D|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 144ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}rDECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8wuR}r ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8wu$d0L 2L>%L-Lx%Lo(L(L(L(L4)L2)L%L%L%L%L%LU,L`,L(L)L,L(L+L$(L".L,L(L'L'L'Lm'Lv'L,L,L'L(L'L'L.L.LkT}.L.L.L.L.L.L.L#*L.*L&L&L.&L=&LF&LQ&Lk&Lr&L{&L&L&L&L)L)L)L)L,.L)L:'L'L&LL'L['LR'L*L*L.L&L&L&La'LB(LR(LU}.L(L/L9/L6/L/L/L/L/L0L0L+0LC0L/L^(Lj(L)'L@'Lo/Lr/LO/L%L'L%L% -膚 ɩҍD҅ 2 22V}2 a(2222 ` -Lq -l ԤՄԅ`ȱ`ȱ`ȥ`W}DŽԑȥՑ`ԤՄ`ԤԅդՅ` '0=D '04.5 '0.( '0 ' ' 8`ԅ`X} & & & &ѐ & &ʥ %аЪ %Зьɛ &0 &0 `Y}ԥ`Ɠƒ` % &LS* %LS* %օ0֥0 S*` %eԥe` %La* % % o*L% %Lo* % &L|* %L|* %Z}C L% % Ʌ` BLV䅆L' %ԅ`TU HH 'hhL, B VԩL%p v'P[}[ǁKJBDEL, &fL=) %ԅ`Ę eĘ +L4( % & %` %Ԅԅ`\} -``&eԅԥeՅ`L% o(ԨL%Ԅ & %eԥe` Ԅ &ɛ +0` d) ذI]}ǀ ( 8ԅԩՅL%L,ȹɛ꩛` d)f & 8fԆՅɛ摥0L^}?)$0`2 2L,(,ɛM(M( )ɛ )򩀅` %ԍ`ԄL%_}njԄL%ɛԆL% &󅐩f =) ؐL(L4,ԅԥՅL%82ԭ 2L%ԤՄԅե``}8ե`eեe` B* K+fL% B* +fL%8ԨՄԅL% & B*ԥՄԩՅօפԥFf G+a}ԥ K+ԅՅԥզЦ`ԅՅʩ0B+=+ B+ 08f$˹ `' d b}+1ԦԄզՄFԐ eਊe&Lh+Ԇ`hh L, +Ff&֐ݥ ԆՅԠ&&&8થc}օԈ`քע +Ե 8`晄 ,L,`GHFH` U,0ɛȄ ؐL,HI h 8d}ԅԩՅL%?S, ,򦅩DEBHIL,ɛ +` +` %HI BL,e}՝HIB VL,L%B Vú.hh -l. -0dd-8/ i - 0-- ,f}ǚ@ . ,... + x' $(.Ԏ.8ե ".LO-- , `,ɛD(C` ذ -L- -L 2 -- ,g}L- - -L-l lp '8`ERROR- ?Run address> BASIC exitTrace:P8Յթԅ` ,.L, .-h}ǍȘH *h00,)` & ҅ԭ ) |*օեׅ` L,0թԅթᨊઐi}r```Յ`8Յթԅ`0 ԩ`ԅ`` ' %`BԝK)I JD/ELVS:)H)hv yj}` & % & %TԅUՅV`&B ,NLսM` & %ԝL՝MN%BL, & /` BHIL, & /`k}:B JKL, %ԅUՅV & %ԅT`)ҩҊ> H) hҘ` %)xԩL% %))Lc&LZ& %l}G)pԩL% %)|LZ&Lc& V0L-$2~2'@'@DDhDDL 2 $ppҠD Z$1@ H$ ?$ $ <m}mnjG@vD $K@D $5@ !$PD '$5@ !$R22D '$N@hD $Z@D $a@n} !$ $D $ h9 Z$ ?$ Z$c@ H$ Z$ -$ᢐD <$2}3թ@D $L*3Lo}3ԩթ@D $LY3L3ԩթ@D $~33L3@wD $L3 h9p}L2 h9 Z$ ?$ Z$@ H$ Z$ -$ᢐD <$ԩթ@D $L43{4L%6ԩթ@q}ǍD $L/4L%6ԩթ@D $Ls4@D $Ly4 h9L3 h9|44 Z$ ?$ Z$@ r}H$ Z$ -$ᢐD <$ԩթڅ@D $L4LV5ppҠDԩթ@4z5D s}Ǯ$L5LV5ԩթ܅@D $LP5/@ !$PD '$LV5 h9Ly4 h9 Z$ ?$ Z$ޠ@ H$ Z$ -${55t}ᢐD <$ԩթڅ@D $L5L%6ԩթ@D $L5L%6ԩթ@u}Ǎ5y6D $L6/@ !$RD '$L%6 h9LV5 h9 Z$ ?$ Z$A H$ Z$ -$ hD <$ԩթ @hv}D $z66L6N@hD $L> h9 Z$ ?$ Z$A H$ ?$ Z$ ?$ Z$5A H$ ?$Щ r$LD '$LD !$C@w} $L6L7LD6x7 !$?@ $L7L 2L6 Z$1@ H$ ?$8 %vD{D $hD~D $ Z$x}DŽ{D f$ Q$ Z$y77ᢌD f$ Q$ppҠD =ԩթ@D $L8 Z$1@ y}H$ ?$ Z$ ?$ Z$ ?$ Z$ ?$ Z$Q7x8A H$ ?$ Z$ `$FD '$ԩթjAD $L?8 ~; Z$FD !$ z}$ᢀ K$FD !$a@ $L8 Z$y88ᢧD K$ ?$L8é r$HD '$RHD !$pA $L8 Z$ ?$ Z{}$rA H$ ?$ Z$ ?$L9 Z$ ?$ Z$A H$HD !$ E$8x9A H$ ?$ Z$ T$ Z$ T$0 Z$ T$ppҠD Z$A H$ ?$Щ|} r$LD '$LD !$C@ $L_9Lb9L69L 2L$5@ !$OA $$ $y99 Z$ؠA H$ ?$A !$B $$ $ Z$wD K$ ?$}}ԩթjAD $L9A !$A@ $$ $ Z$B H$9x: ?$ԩթ@D $LH:~}GA !$A@ $$ $ Z$ B H$ ?$PD !$5@ $L:A !$B $$ $ Z$By:: H$ ?$PD !$/@ $L:A !$}ǠB $$ $ Z$B H$ ?$RD !$5@ $L:A !$'B $$ $ Z$)B H$ ?$RD !$/@:v; $L$;A !$'B $$ $} Z$,B H$ ?$A !$'@ $$ $ Z$0B H$ ?$A !$'@ $$ $ Z$ hD K$ ?$5@ !$E@w;; $$ $`T r$JD '$}^D !$3@ $L; Z$ ?$ Z$ $L> Z$A@ !$ $ᢀ K$RD !$/@ $L> Z$)D !$ $ᢀ K$-D !$ $}ᢀ K$/D !$n>> $ᢀ K$` Z$1@ H$ ?$/@ !$^D '$8 %vDD $0 Z$ T$ R Z$1@} H$ ?$0 Z$ᢓD f$>l? Q$ppҠD Z$3D H$vD K$7D H$ ?$ Z$ ?$? %/@ !$ND '$0 Z$ }`$`D '$ Z$`D !$ $ᢀm?? K$`D !$a@ $L? Z$ᢧD K$ ?$ ~;ND $BD $LE?é r$HD }'$pA $L?L83@ !$^D '$ ~;R?b@ Z$ ?$0 Z$ T$5@ !$^D '$ Z$1@ H$ ?$ QǠER] ĭƭŠ Ҡ}ӠΠĠA/B! @ӠԠϠΠ͠h (SCREENPRINTER}!NORMALCONDENCEDNOYES0BB* cT ӠԠ ӠԠϠŠǠ}}C!BB|DRIVE NUMBER#.#/ ;||OUTPUT TOE.EQ `||FILE TO LISTg.gs |B`C| } 3| PRINTER OPTIONS @M|PRINT TYPEV.Vb |aCC|SKIP PERFERATION..}. |/3 PCCD | ΠŠҠ | | }頠 | <a@N DIRECTORY $}!}C!(L+L$(L".L,L(L'L'L'Lm'Lv'L,L,L'L(L'L'L.L.LkCǐ2595TURBO BASIC COMMAND LISTCompiled and Translated byDave and Laura YearkeThis documentation is provided by the }Western New York Atari Users Group and may be reprinted freely provided this credit is included.In case you've just landed } from Mars, or just plain haven't heard yet, TURBO BASIC is the exciting new Public Domain Basic Interpreter that we recieved } from the Atari Users Group in Holland. It works on the XL or XE series of Atari computers. It's almost too good to be true a }nd should be a definate must for all XE or XL Atari owners.Turbo BASIC, in addition to offering 42 more commands and 22 mor }e functions than Atari BASIC, gives the user 1603 more bytes of program space by "hiding" part of itself under the XL/XE's op }erating system. It also runs 3 times faster than Atari BASIC, includes most DOS commands, has advanced graphics and programm }^ing functions, and is insensitive to lower case or inverse characters for most commands.Named jSyntaxw Descri }ptionho30Name Syntax+ kDescriptionTURBO BASIC COMMANDS:35Disk I/Oo30BLOADp BLOAD "D:name }" @Binary loads file name (DOS option L with /N).o30BRUNF TBRUN "D:name"Z Binary load and run file name (DO }S option L).o30DELETE *DELETE "D:name"/ ^Deletes the file name (DOS option D).o30DIRe hDIRy Disk } directory (DOS option A).o30) 5DIR "Dn:*.*"= Directory of drive n, note that wildcard extenders may be used } .o30LOCK LOCK "D:name"$ TLocks the file name (DOS option F).o30RENAMEX RENAME "D:old,new" Renames the file }C!name (DOS option E).o30UNLOCK% 4UNLOCK "D:name"9 yUnlocks the file name (DOS option G).Graphicso30CIRCLE} } CIRCLE x,y,r HPlots a circle with center at x,y and radius r.o30R aCIRCLE x,y,r,r2f R2 is an optional "vert }2ical radius" for true circles or ellipses.o30CLS9 K-MOVE m,m1,m2R Same as MOVE but copies starting with the l }ast byte of the block.o30BPUT% 4BPUT #n,adr,len9 Block Put; same as FOR I=0 TO len-1:PUT #n,PEEK (adr+I):NEXT Io30B }GET BGET #n,adr,len fBlock Get; same as FOR I=0 TO len-1:GET #N,A: POKE adr+I):NEXT Io30%PUTl u%PUT #n,a} } Until now, there was no convenient way to put numeric values onto disk or cassette files other than by using PRINT, which }converted them to strings first, a slow and cumbersome process. %PUT puts the number to the device "as is," in 6-byte FP for } mat.o30%GET %GET #n,A' Get a number stored with %PUT from the device and store it in variable A. Again, th }Tis is much faster than using "INPUT #n, A".Structured Programmingo30REPEATX ^REPEATl Start a REPEAT-UN }TIL loop.o30UNTIL !UNTIL , WTerminate when condition met.o30WHILE\ eWHILE p Start a WHILE }2-WEND loop to end when condition met.o30WEND8 EXEC nameI Execute procedure name.General Programming }o30PAUSE PAUSE n! MPause processing for n/50 seconds.o30RENUMR ]RENUM n,i,jf Renumber the program st }arting at line n,first number is i, increment is j. This function will handle GOTOs, TRAPs, and all other line referen }Dces except those which involve variables or computed values.o30DELK RDEL n,i_ yDelete lines n-i.o30DUMP} } DUMP Display all variables and values. For numeric arrays, the numbers are the DIMed values plus one. For }strings, the first number is the current LENgth of it and the second number is the DIMed size of it. DUMP also lists procedu }0re names and labels with their line values.o30: CDUMP nameN DUMP to device name, such as "P:" or "D:DUMP. }DAT".o30TRACE TRACE( LTrace program during execution.o30V ]TRACE -j Turns trace mode of }f (Default).o30DSOUND )DSOUND n,f,d,v/ Form of SOUND which activates channel-pairing for increased frequency range. }o30 DSOUND! @Turns off all sounds.o30GO TOE LGO TO nY wAlternate form of GOTO.o30*L} } *L 9Turn line-indent on (Default).o30C G*L -W tTurns line-indent off.o30*F| * } F (or *F +) Special mode for FOR..NEXT loops which corrects a bug in Atari BASIC. Seems that in Atari BASIC, an "ille }gal" reverse loop like "FOR X=2 TO 1:PRINT X:NEXT X" will execute once even though the condition is met initially (X is alrea }dy greater than 1). Turbo BASIC fixes this bug, but leaves it available for Atari BASIC programs which may take advantage of }E it.o30 *F -' Turns off the special FOR..NEXT mode to make Turbo BASIC act like Atari BASIC.o30*B } *B (or *B +) yCommand which allows the break key to be trapped via the "TRAP" command within a program.o30} } *B - FTurns off the special BREAK key mode.o30--N P--b Special form of REM which p }:uts 30 dashes in a program listing.Line Labelso30#C I# nameW Assigns the current line number to the } label name. This is a convenient way to get around the problem of renumbering when using variables as line numbers. Labe }ls can be thought of as a special form of variable, as they occupy the variable name table along with the "regular" variables }. We also believe that the number of variables allowed has been increased from 128 to 256 to allow for the addition of these } labels.o30GO# GO# name+ fAnalagous to the GOTO command.Modificationso30CLOSEk pCLOSE} } Close channels 1-7.o30DIM$ ,DIM a(n)8 Will automatically assign a value of zero to all elements of the nume }ric array being dimensioned, and null characters to all elements of a string (The LEN is still variable, however, and initial }ly zero).o30GET GET name, Wait for a key press, assign the value to name. Same as "OPEN #7,4,0,"K:":GET }#7,name:CLOSE #7".o30INPUT! INPUT "text";a,b... Prints text as a prompt before asking for variable(s), same as Microso }ft-BASIC.o30LIST LIST n,, UList program from line n to end.o30ON] ON a EXEC n1,n2,... Variation of }U ON...GOSUB for procedures. N1, n2 and so on are names of procedures to be run.o30_ ON a GO# n1,n2,... Similar to }L ON...GOTO except that line labels are used instead of line numbers.o30POPS VPOPg This command now pops }6the runtime stack for all four types of loops.o30PUT= BPUT nQ Same as "PRINT CHR$(n)";o30RESTORE RESTO }RE #name LRestores the data line indicated by the label name.o30RNDS VRNDg Parentheses are no lon }CZger needed at the end of this command, but it will still work if they are there.o30SOUND_ dSOUNDs Turn off a }ll sounds.o30TRAP #TRAP #name- TRAPs to the line referenced by the label name.TURBO BASIC FUNCTIONS:A }rithmetic/Logico30HEX$ 'HEX$(n)4 TConvert n to hex string.o30DEC[ bDEC(a$)o Convert hex st }ring A$ to decimal.o30DIV" )n DIV i6 VInteger quotient of n/i.o30MOD] dn MOD iq Integer rema }inder of n/i.o30FRAC #FRAC(a)0 OFractional part of a.o30TRUNCT \TRUNC(a)h Truncates fractional }part of a.o30RAND RAND(n)- OGenerates random number 0-n.o30$X Y$]n]l Allows input of h }rexidecimal numbers, but they are converted to decimal. Ex: "FOR I=$0600 to $067F" => "FOR I=1536 to 1663".o30&{ n }& i *8-bit boolean AND.o30!3 8n ! iG a8-bit boolean OR.o30EXORg on EXOR i{ 8- }'bit Exclusive-OR.Memoryo30DPEEK, 4DPEEK(m)@ ^Double-PEEK of m,m+1.o30TIMEd hTIMEx Time }of day(numeric).o30TIME$ $TIME$3 Time of day string, HHMMSS. Unfortunately, the time commands don't work p }roperly because they were written for European Ataris which operate at 50 Hz, instead of 60 Hz like American ones, the net re }:sult being that they gain 12 minutes each hour.o30INKEY$> DINKEY$R yReturns last character typed.o30INSTR} } INSTR(x$,a$) Returns relative location of start of string A$ within X$ (returns 0 if not found). The match must be e }oxact; strings with the same letters but differences in case or type (normal or inverse) will not be found.o30y INST } R(x$,a$,i) Ji specifies the starting point of the search.o30UINSTRN [UINSTR(x$,a$)b Same as INSTR, does not dis }Xtinguish between case or inverse characters. Ex: UINSTR("HeLlO","hello") returns 1.o30b qUINSTR(x$,a$,i)v Specifi }#es optional starting point.o30ERR* -ERR> aValue of last error number.o30ERLh kERL| L }ine last error occurred at.Constants%0%1%2%3These four constants simply stand for the numbers 0-3, respectively. }G The difference with using these in a program is that "X=1" requires 10 bytes, whereas "X=%1" only needs 4 (numbers require 7 } bytes, 6 for the number plus an identifier preceeding it. It is always a good practice to make variables for numbers that a }re used more than three times in a program).NOTES:1. Variable, Procedure and Label names may contain the underscore (_ }) character.2. To print a double-quote (") in a text string, use two of them together, instead of the Atari BASIC method of } using CHR$(34). Ex: "TEST";CHR$(34);"TEXT" becomes "TEST""TEXT" in Turbo-BASIC, both of which produce the output => TEST"T }EXT.3. Upon initial boot-up, TURBO-BASIC looks for a BASIC file named AUTORUN.BAS. If it finds an AUTORUN.BAS file, it will } automatically load and run this file.4. Turbo-BASIC also prints out English descriptions of all errors, including several }new ones for errors involving the new commands:Error - 22 ?NEST = Loops not properly nested.Error - 23 ?WHILE = WEND with n }o corresponding WHILE.Error - 24 ?REPEAT = UNTIL with no corresponding REPEAT.Error - 25 ?DO = LOOP with no corresponding D }O.Error - 26 ?EXIT = EXIT is outside a loop.Error - 27 ?XPROC = Error executing PROC.Error - 28 ?EXEC = ENDPROC with no co }rresponding EXEC.Error - 29 ?PROC = Procedure does not exist.Error - 30 ?# = Label does not exist.Also, Error 15 has been }expanded to include an UNTIL which relates to a REPEAT which has been deleted.4. A multiline IF is constructed like this: }10 IF X > 1020 PRINT X-1030$ :GO# TOO_BIG40 ELSE50> HPRINT X60L GO# X_IS_OK70 ENDIFNote also the use of line l }:abels in the GOTO statements.---Dave & Laura YearkeE50> HPRINT X60L GO# X_IS_OK70 ENDIFNote also the use of line l 6 &PRINTING THE TURBO BASIC4 DDOCUMENTATION J The Documentation for TURBO BASIC is included on t}his disk in a text file formatted for the PaperClip word processor named TURBODOC.PPC. Loading this into PaperClip and pr}Pinting it will result in a nicely formatted easy to read 3 page document. V The other two files on the disk are ge}neric text ASCII text files that may be viewed or printed with the AUTORUN Doc Reader program provided on this disk. The f}Girst file, TCOMPILR.TXT contains the operating instructions for the Turbo Compiler and its accompanying Runtime system. } The second file TIDIER.TXT contains the operating instructions for Text Tidier, the first full-featured program wri}tten in the States in Turbo Basic. TEXT TIDIER may also be used to convert the text files on this side of the disk to the}4ir respective AtariWriter+ or PaperClip formats. C --- Dave Arlington es on this side of the disk to theZ THE TURBO COMPILER' CDocumentation and OperatingQ ^Instructionsj by Dave Arlington } Original Program by+ }em. One note: it will not add spaces to periods which have no spaces after them, because it can't tell if it is part of?} a decimal number. The next option, "PROMPT BEFORE WRITING (Y/N)", should get a "Y" response if you need to switch di@}sks between reading and writing, and an "N" response if you want to let it go without interruption. The "BREAK FILES ON A}SPACE (Y/N)" simply assures that a word won't be split over two files (this may not work if the last word before writing iB}s over 15 characters long, but that's pretty rare). The last option is a convenience to those with the AtariWriter or PaC}GperClip word processors. If you select either "A" or "P" at the prompt, it will write the "chain next file" command at tD}Dhe end of all files except the last one. In addition, it will put a paragraph symbol where it thinks it's appropriate, anE}d convert the ASCII formfeed character (^L) to its AW or PC equivalent. If you select "N" for "neither", then the paragrF}Faphs will be indented five spaces and formfeeds will be left alone.L By the way, the program only allows character coG}des within the range 26-127, plus CR (13) and FF(12). Characters higher than 127 have the high bit stripped to make themH} "normal," while control characters are ignored. If you want to allow inverse and control characters (although this can bI}e a potential problem with true ASCII files; control characters can have bizarre meanings, and true ASCII does not allow J}character codes higher than 127. If you get any, it's probably a transmission error), change line 215 to: 215 REPEAT :K}FGET #1,N:UNTIL (N<>LF) This will only filter linefeed characters.L This program was written out of necessity, but IL} h>also had a lot of fun doing it. If you have any questions, comments, or suggestions, please let me know (I can be founM}d lurking at the meetings or on BATES in the "Ask Dave Y!" message base). I'd like to correct any bugs you find (gasp!) qN}Vuickly, and any features I haven't thought of we'll make part of Text Tidier 2.0! w-) qzqgs you find (gasp!) quickly, and any features I haven't thought of we'll make part of Text Tidier 2.0! } co, /nvR Uerx te Q}! #dF Ithl oem} R} to; >sta dri} S} ng0 2sU Xfi{ rs T}$ 't,J Lao rsl} U}C ow> Aand fd} V}V cu2 5mbX [er} W} so' *meM Pprs voc} X} esB Es.h j%Prrw Name Y} Syntax Desc C FUTi lpu} Z} ts8 ;th^ `e} [} nu, /mbR Uerx to \}! $thG Iel ode} ]} vi; >cea d"a} ^} s/ 2isU X,"{ in _}$ '6-J Mbyp ste} `} FP? Bfoe hrm} a} at4 6.; ?%GETE O%GET #n,Ar vGet} b} GaB Enuh kmb} c} er7 :st] `or} d} ed, /wiR Uthx %P e}! $UTG Jfrm pom} f} th< >ea dde} g}C vi0 3ceV Yan| d q}hx39ddB%DOS SYSB*)DUP ISYSBBSAUTORUN SYSBbTURBODOCPPCBHELPM pTXTB'TCOMPILRTXTB)&TIDIER TXTCPb3SPIELE TURb IPUTGET TURb RTURBOIO BASb+\DIGILOO BASbPMMOVE TURq$ 'stJ Morp re} r} it> @inHHM QNameW ]Syntaxj nDescss} s} va? Brie hab} t} le4 7A.Z ]Ag} u} ai) ,n,O Rthu xis} v} !isD Gmuj mch} w} fa9 APrd gog} ~} ra3 6mmY \in} } g' (- 3REPEAT7 >REPEATa eSta} } rt1 3aV YRE| P }E% (ATK N-Uq tNT} } IL@ Clof iop} } . Nam%%* /UNTIL4 >UNTIL a eTer} } mi1 4naW Zte} }wh& )enL Ocor und} } itA Diog in} } Z ]me} } t. WHILE WHILE B FStai lrt} } a7 :WH] `IL} } E-, /WER UNDx lo }C! $opG Jtom pen} } d; >wha den} } co0 3ndV Yit| i }o% 'nJ M} } me> At.F JWENDP UWENDx Ter }" %miH Knan qte} } a< ?WHb eIL} } E-1 4ENW YD| l }o% 'op//4 8Name> DSyntaxQ UDescZZ} }. ELSE ELSE9 =Opt` cio} } na/ 1lT Wexz te }# &nsI Lioo qn} } fo= ?rb eIF} } .0 3ThV Xe{ IF }$ 'coJ Mndp sit} } io? And gmu} } st3 6noY [t} } be' *foM Plls vow} }C edB Ebyh ja} } "T6 9HE\ _N"} } ,* -buP Rtu xte} } !rmD Ginj mat} } ed9 Ared gth} } an3 6onY [e} } BA' *SIM OCr uli} } neA B,JJO SNameY _Syntaxl pDescuu} } prA Dovg jid} } ed6 9th\ ^e} } "I* -F"P Sstv yat} } "emE Henk mt} } is9 ea dst} } ar0 2tU Xof{ a } Name Syntax) -Desc22U XDO{ lo }$ 'opJ L.Q UEXIT[ `EXIT} } Exi- /tR Taw DO } #-LF IOOl nP} } lo: =op` b.g kPROCq PROC name }! %StaH Krtn qde} } fi= @nic fti} } on2 5ofX [pr} } oc' *edM Purs ve.{ EN }DPROC ENDPROC3 7EndZ ^Ede} } fi* -niP Stiv yon} } "ofE Hprk noc} } ed: =ur` ce.h lEXECr EXEC name }" &ExeI Lcuo rte} }C pr> Aocd ged} } ur3 6e Y \na} } me( ).116 :Name@ FSyntaxS WDesc\\} } & )GeL Oner ura} } l@ CPrf iog} } ra5 8mm[ ^in} } g) */ 4PAUSE9 APAUSE nd hPau} } se4 7prZ ]oc} } es) ,siO Rngu xfo} } rC Fn/i l50} } se8 ;co^ and} } s. RENUM %RENUM n,i,jH LReno rum} } be> @rc fth} } e1 4prW Zog} }ra& (mK Nstq tar} } ti@ Cngf iat} } li5 8ne[ ^n,} } fi* -rsP Rtu xnu} }C !mbD Gerj listty Name } Syntax Desc""E Hi,k nin} } cr: =em` cen} } t. 1isT Wj.z Th }# &isI Lfuo rnc} } ti> Aond gwi} } ll3 6haY \nd} } le( +GON QTOt ws,} } TRC FAPi ls,} } an8 :d] `al} } l+ .otQ Thew yr} } "liE Hnek nre} } fe: =re` cnc} } es/ 2exU Xce{ pt }$ 'thJ Mosp re} } wh> Aicd fh} } in2 5voX [lv} } e& )vaL NriVV[ _Namee kSyntaxx Desc }C' *abM Ples us} } orA Dcog jmp} } ut6 9ed\ _va} } lu+ .esQ S.X [DELb jDEL n,i} } Del7 :et] _e} } li+ .neQ Ssv yn-} } "i.' +DUMP1 6DUMPY ]Dis} } pl) ,ayO Ralu wl} } vaC Frii lab} } le8 :s] `an} } d+ .vaQ Tluw es } ".E HFok mr} } nu9 mba der} } s Name" (Syntax5 9Desc>>a dar} } e/ 2thU Wez DI }C# &MeI Kdn qva}  }  lu= @esc fpl}  } us2 5onX [e.}  } Fo' )rL Ostr uri}  } ngA Ds,g jth} } e5 8fi[ ^rs} } t) ,nuO Rmbu xer} } !isD Gthj le} } cu8 ;rr^ aen} } t, /LER UNgx th }! $ofG Jitm pan} } d; >tha ce} } se/ 2coU Xnd{ nu}$ 'mbJ Merp sis} } th? Aed fDInns wName} }Syntax Desc? BMee gd} } si3 6zeY \of} } it( *.M PDUs vMP} }C alB Esoh kli} } st7 9s\ _pr} } oc+ .edQ Turw ye} } "naE Hmek ms} } an9 ;d^ ala}  } be- 0lsS Vwiy th !}" %thH Kein pr} "} li< ?neb eva} #} lu1 4esW Y.h rDUMP name} $} DUM? APd gto} %} de3 6viY \ce} &} na( +meN P,s vsu} '} chB Eash k"P} (} :"7 9orAAF JNameP VSyntaxc gDescll} )} "D8 ;:D^ aUM} *} P.- 0DAS VT"y . +} TRACE TRACE6 :Tra] `ce} ,} pr, /ogR Urax m -}C #duF Iril ong} .}. ex; >eca dut} /} io0 3n.B JTRACE -m qTur} 0} ns= @trc fac} 1} e1 4moW Zde} 2}of& (fK N(Dq tef} 3} au@ Cltf i).n tDSOUNDx DSOUN4} D n,f,d,v- 1ForT Vmy of 5}" %SOH KUNn pD} 6} wh< ?icb dh} 7} ac0 3tiV Yva| t8}e% 'sJ Mchp ranz 9} Name Syntax #Desc((K Nneq tl-} :} pa@ Cirf iin} ;} g4 7foZ \r} <} in( +crN Qeat wse} =} dB Efrh keq} >} ue7 :nc] _y} ?}C ra+ .ngQ Te.c jDSOUND} @}@ Tur7 :ns] `of} A} f+ .alQ Slv yso} B} "unE Hdsk m.r wGO TO| GC}O TO n* .AltQ Terw na D} #teF Ifol orm} E} of; >GOa dTO} F} . *L *LA ETurh jn} G}EG li6 9ne\ _-i} H} nd+ .enQ Stv yon} I} !(D)). 2Name8 >SyntaxK ODescTTw ef J} #auF Iltl o).} K} *L -) -TurP Snsv yli} L} "neE H-ik nnd} M} en: eaa dte} p} r/ 2thU Xan{ 1)q}$ &.I LTuo rrb} r} o= @BAc fSI} s} C1 4fiW Zxe} t}s% (thK Nisq tbu} u} g,@ Cbuf ht} v} le4 7avZ ]es} w} it) ,avO Raiu xla} x} !blD Fei lfo} y} r7 :At] `ar} z} i+ .BAQ TSIw yC} {} !pr)). 2Name8 >SyntaxK ODescTTw og |}C #raF Imsl owh} }}} ic; =h` cma} ~} y. 1taT Wkez ad}# &vaI Lnto rag} } e= @ofc fit} } . "*F -E ITurl ons} } of; =f` cth} } e. 1spT Wecz ia}# %lH KFOn qR.} } .N= @EXc eT} } mo1 4deW Zto} }ma& )keL OTur urb} } o@ CBAf iSI} } C4 7acZ \t} } li( +keN QAtt war} } iB EBAh jSIrrw Name } Syntax Desc C FC.K M*BU b*B (or *B +)} } Com/ 2maU Xnd{ wh}C$ 'icJ Lho ral} } lo> Awsd gth} } e2 5brX [ea} } k& )keL Nyq tto} } be@ Ctrf iap} } pe5 7dZ ]vi} } a( +thN Pes v"T} } RAB EP"h kco} } mm7 :an] _d} } wi+ .thQ Tinw ya} } "prE Hogk nra} } m.& +*B -N RTuru xns} } !ofD Ffi lth} } e7 :sp] `ec} } ia, -l55: >NameD JSyntaxW [Desc``} } BR, /EAR TKw ke } "yE Hmok nde} } . --% (--K OSper uci} }C alA Dfog jrm} } of6 9RE\ ^M} } wh* -icP Rhu xpu} } !tsD G30j mda} } sh9 oba dle} } m/ 2ofU Xre{ nu}$ 'mbJ Merp sin} } g> Awhd gen} } us3 6inY [g} } va' *riM Pabs vle} } sA CasKKP TNameZ `Syntaxm qDescvv} } liB Eneh knu} } mb7 :er] `s.} } La, /beR Ulsx ca }! #nF Ibel oth} } ou; >gha ct} } of/ 2asU Waz sp}C# &ecI Liao ql} } fo= @rmc fof} } va2 5riX [ab} } le' ),L Oasr uth} } eyA Docg jcu} } py6 9th\ ^e} } va* -riP Sabv yle} } "naE Hmek nta} } bl: