@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}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 D8u8<<  B JKIHiDiELV`L8 8 BLV`LxT}8t8l Lu8hihiHHȱȱL8c !#3`Lu8JJJJ`H 8h`HU}ȩh Q8L8 Z8L8 8L8 8L8 8L8S:@9E:E9H '9 H9I9 8 '9h)0ICV}9D9L8 L :::: :Lr:::IEL[::i:iIIL[:`:i::iX}::L:`L{:w:w: C`L:L: D8:MEM.SAV: 8| 9 '9`L:L: D:DUP.SYS:̩ 8Y} x:ɀL: '9`88 |9Y:X: '9L); D8:DUP.SYS; 8::88 9 '98? :`;WL`; 9Z}Ln; ` :Y;Y;L;L;)} Setting Up ATARI 130XE Ram Disk; 9L; ; -9  [} L;D8:; :9 :Y;L BASIC languager} OBJ > MACHINE language DOC > Documentation PIC/MIC/FNT/MVM > Graphics AMS/MUS/MBD > Music LST >s} BASIC listing -Some MACHINE language programs can only be run by booting the disk MENU "without" BASIC! -For somt}e programs, XL/XE models may require a "TRANSLATOR" program to be booted first! [Also available from BELLCOM.] -Mu}ost programs are relatively self-explanatory; however, some have separate DOCumentation files available. Some BASIC v}programs may contain instructions in their program listings. -To use this great MENU program on your own disks, sw}imply copy the MENU file "AUTORUN.SYS" onto your disk. ogram on your own disks, s` ************************** * TURBO BASIC / COMPILER * ************************** This diskette contains ty}he fantastic Public Domain programs TURBO BASIC and TURBO COMPILER. TO USE TURBO BASIC --------------z}---- [1] Format a blank disk and write DOS 2.5 files onto it. [2] Now copy "RAMDISK.COM" onto the new disk.{} [3] Copy "TURBO.OBJ" onto the new disk and then change the name "TURBO.OBJ" TO "AUTORUN.SYS" using the |}(E) function in DOS. Your new TURBO disk will now auto boot and load TURBO BASIC into your Atari. Be sure to boot your}} TURBO disk before you attempt to load and run any TURBO BASIC program. (It is not necessary to hold down the OPTION ~}button on your XL/XE.) TURBO BASIC / COMPILER DOCUMENTATION ---------------------- The Docum}entation for TURBO BASIC and TURBO COMPILER is included on this disk in text files formatted for the ATARIWRITER word } processor. "TURBO.DOC" contains the TURBO BASIC Command List, including additional notes on using TURBO BASIC. It i}s assumed that the reader has a knowledge of BASIC language programming. "COMMANDS.DOC" is a useful summary of all t}he TURBO BASIC commands. A printout of this list would be very useful when you are programming. "COMPILER.DOC" conta}ins complete instructions for using the TURBO COMPILER. PRINTING THE TURBO BASIC DOCUMENTATION } ------------------------ These files may be easily viewed or printed using the "DOCREAD.OBJ" program provided on} this disk. They may also be printed using the (C)copy command from DOS => Dn:Filename.ext,P:ogram provided onl **************** **************** **************** **** ***}* **** ************************** *TURBO BASIC COMMAND LIST* ************************** } **** **** **** **** Compiled and Translated by Dave and} Laura Yearke This documentation is provided by the Western New York Atari Users Group and may be reprinted freely p}rovided 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 and should be a definate must for all XE or XL} Atari owners. Turbo BASIC, in addition to offering 42 more commands and 22 more functions than Atari BASIC, gives} the user 1603 more bytes of program space by "hiding" part of itself under the XL/XE's operating system. It also runs} 3 times faster than Atari BASIC, includes most DOS commands, has advanced graphics and programming functions, and is} insensitive to lower case or inverse characters for most commands. In other words, programs may be typed in upper or } lower case. Plus...plus...plus... Turbo Basic is fully compatible with Atari Basic and can be used to run any Atar}i Basic program at 3-5 times faster speed! Simply boot up the Turbo Basic disk and proceed as usual to load your Atar}i programs. The only restriction is that you will need to re-boot after using DOS (although there are inbuilt DOS fun}ctions in Turbo Basic, so you would normally not need to use DOS). ==================== TURBO BASIC COM}MANDS ==================== The following Turbo Basic Commands are given in the form "Name", "Syntax", and "Des}cription" underneath. DISK I/O -------- BLOAD BLOAD"D:name" -Binary loads file name (DOS option L with /}N). BRUN BRUN"D:name" -Binary load and run file name (DOS option L). DELETE DELETE"D:name" -Deletes th}e file name (DOS option D). DIR DIR -Disk directory (DOS option A). DIR"Dn:*.*" -Directory of }drive n, note that wildcard extenders may be used. LOCK LOCK"D:name" -Locks the file name (DOS option F). } RENAME RENAME"D:old,new" -Renames the file name (DOS option E). UNLOCK UNLOCK"D:name" -Unlocks the file na}me (DOS option G). GRAPHICS -------- CIRCLE CIRCLE x,y,r -Plots a circle with center at x,y and radius r}. CIRCLE x,y,r,r2 -R2 is an optional "vertical radius" for true circles or ellipses. CLS CLS} -Clears the screen. CLS #6 -Clear screen opened in channel 6. FCOLOR FCOLOR n -Determines fill }color. FILLTO FILLTO x,y -A fill command analagous to the BASIC commands "POSITION x,y: XIO 18,#6,0,0,"S:" }PAINT PAINT x,y -Another type of fill command, this one is a recursive routine that will fill any closed object} as long as x,y are inside it. TEXT TEXT x,y,a$ -bit-blocks text in a$ at x,y. MEMORY ------ DPOKE }DPOKE m,v -Pokes location m,m+1 with 2-byte integer v(0<=v<=65535). MOVE MOVE m,m1,m2 -Block transfer; moves} m2 (number of bytes) from starting position m to new starting position m1. -MOVE -MOVE m,m1,m2 -Same as MOVE} but copies starting with the last byte of the block. BPUT BPUT #n,adr,len -Block Put; same as FOR I=0 TO le}n-1:PUT #n,PEEK (adr+I):NEXT I BGET BGET #n,adr,len -Block Get; same as FOR I=0 TO len-1:GET #N,A: POKE adr+I):}NEXT I %PUT %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 put}s the number to the device "as is," in 6-byte FP format. %GET %GET #n,A -Get a number stored with %PUT fr}om the device and store it in variable A. Again, this is much faster than using "INPUT #n, A". STRUCTURED PROGRAMM}ING ---------------------- REPEAT REPEAT -Start a REPEAT-UNTIL loop. UNTIL UNTIL -Terminate when con}dition met. WHILE WHILE -Start a WHILE-WEND loop to end when condition met. WEND WEND }-Terminate a WHILE-END loop. ELSE ELSE -Optional extension for IF. The IF condition must not be followed by }a "THEN", but terminated by end-of-line or colon. ENDIF ENDIF -Ends an IF-ELSE-ENDIF or IF-ELSE condition.} Note that this allows an IF condition to span more than one BASIC line, provided the "IF" statement is structur}ed as shown in Note 4. DO DO -Starts an "infinite" DO loop. LOOP LOOP -Cycle back to the start of} a DO loop. EXIT EXIT -Exit a DO-LOOP loop. PROC PROC name -Start definition of procedure. }ENDPROC ENDPROC -End definition of procedure. EXEC EXEC name -Execute procedure name. GENERAL PROGRAMM}ING ------------------- PAUSE PAUSE n -Pause processing for n/50 seconds. RENUM RENUM n,i,j -Renumber t}he program starting at line n,first number is i, increment is j. This function will handle GOTOs, TRAPs, and all} other line references except those which involve variables or computed values. DEL DEL n,i -Delete lines n}-i. DUMP DUMP -Display all variables and values. For numeric arrays, the numbers are the DIMed values pl}us 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 procedure names and labels with their line values. DUMP name -DUMP to device name, suc}h as "P:" or "D:DUMP.DAT". TRACE TRACE -Trace program during execution. TRACE- -Turns trace mode} off (Default). DSOUND DSOUND n,f,d,v -Form of SOUND which activates channel-pairing for increased frequency r}ange. DSOUND -Turns off all sounds. GO TO GO TO n -Alternate form of GOTO. *L *L -Turn} line-indent on (Default). *L- -Turns line-indent off. *F *F (or *F+) -Special mode for FOR..NEX}T loops which corrects a bug in Atari BASIC. Seems that in Atari BASIC, an "illegal" reverse loop like "FOR X=2 }TO 1:PRINT X:NEXT X" will execute once even though the condition is met initially (X is already greater than 1). } Turbo BASIC fixes this bug, but leaves it available for Atari BASIC programs which may take advantage of it. } *F- -Turns off the special FOR..NEXT mode to make Turbo BASIC act like Atari BASIC. *B *B (or *B+)} -Command which allows the break key to be trapped via the "TRAP" command within a program. *B- -Turn}s off the special BREAK key mode. -- -- -Special form of REM which puts 30 dashes in a program listing.} LINE LABELS ----------- # # name -Assigns the current line number to the label name. This is a conve}nient way to get around the problem of renumbering when using variables as line numbers. Labels 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 thes}e labels. GO# GO# name -Analagous to the GOTO command. MODIFICATIONS ------------- CLOSE CLOSE -C}lose channels 1-7. DIM DIM a(n) -Will automatically assign a value of zero to all elements of the numeric a}rray being dimensioned, and null characters to all elements of a string (The LEN is still variable, however, and }initially zero). GET GET name -Wait for a key press, assign the value to name. Same as "OPEN #7,4,0,"K:":G}ET#7,name:CLOSE#7". INPUT INPUT "text";a,b... -Prints text as a prompt before asking for variable(s), same as } Microsoft-BASIC. LIST LIST n, -List program from line n to end. ON ON a EXEC n1,n2,... -Variation of} ON...GOSUB for procedures. N1, n2 and so on are names of procedures to be run. ON a GO# n1,n2,... }-Similar to ON...GOTO except that line labels are used instead of line numbers. POP POP -This command now p}ops the runtime stack for all four types of loops. PUT PUT n -Same as "PRINT CHR$(n)"; RESTORE RESTORE} #name -Restores the data line indicated by the label name. RND RND -Parentheses are no longer needed at} the end of this command, but it will still work if they are there. SOUND SOUND -Turn off all sounds. TRAP} TRAP #name -TRAPs to the line referenced by the label name. ===================== TURBO BASIC FU}NCTIONS ===================== ARITHMETIC/LOGIC ---------------- HEX$ HEX$(n) -Convert n to hex string}. DEC DEC(a$) -Convert hex string A$ to decimal. DIV n DIV i -Integer quotient of n/i. MOD n} MOD i -Integer remainder of n/i. FRAC FRAC(a) -Fractional part of a. TRUNC TRUNC(a) -Truncates fract}ional part of a. RAND RAND(n) -Generates random number 0-n. $ $nnnn -Allows input of hexidecimal }numbers, but they are converted to decimal. Ex: "FOR I=$0600 to $067F" => "FOR I=1536 to 1663". & n & i} -8-bit boolean AND. ! n ! i -8-bit boolean OR. EXOR n EXOR i - 8-bit Exclusive-OR. MEMORY }------ DPEEK DPEEK(m) -Double-PEEK of m,m+1. TIME TIME -Time of day(numeric). TIME$ TIME$ -Tim}e of day string, HHMMSS. WARNING: Unfortunately, the time commands don't work properly for North American Ataris, b}ecause they were written for European Ataris which operate at 50 Hz, instead of 60 Hz like American and Canadian }ones, the net result being that they gain 12 minutes each hour. It may have limited use in some Game applications } though. INKEY$ INKEY$ -Returns last character typed. INSTR INSTR(x$,a$) -Returns relative location of }start of string A$ within X$ (returns 0 if not found). The match must be exact; strings with the same letters but } differences in case or type (normal or inverse) will not be found. INSTR(x$,a$,i) -i specifies the st}arting point of the search. UINSTR UINSTR(x$,a$) -Same as INSTR, does not distinguish between case or inver}se characters. Ex: UINSTR("HeLlO","hello") returns 1. UINSTR(x$,a$,i) -Specifies optional starting p}oint. ERR ERR -Value of last error number. ERL ERL -Line last error occurred at. CONSTANTS ----}----- %0 %1 %2 %3 -These four constants simply stand for the numbers 0-3, respectively. The difference} with using these in a program is that "X=1" requires 10 bytes, whereas "X=%1" only needs 4 (numbers require 7 byt}es, 6 for the number plus an identifier preceeding it. It is always a good practice to make variables for number}s that are used more than three times in a program). ADDITIONAL NOTES ---------------- 1. Variable, Procedure an}d 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"TEXT. 3. U}pon 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. This feature can be used for many useful applications.} 4. A multiline IF is constructed like this: 10 IF X>10 20 PRINT X-10 30 GO# TOO_BIG 40 EL}SE 50 PRINT X 60 GO# X_IS_OK 70 ENDIF Note also the use of line labels in the the GOTO s}tatements. ERROR MESSAGES -------------- Turbo-BASIC also prints out English descriptions of all errors, includi}ng several new ones for errors involving the new Turbo Basic commands: Error - 22 ?NEST = Loops not properly nested.} Error - 23 ?WHILE = WEND with no corresponding WHILE. Error - 24 ?REPEAT = UNTIL with no corresponding REPEAT. }Error - 25 ?DO = LOOP with no corresponding DO. Error - 26 ?EXIT = EXIT is outside a loop. Error - 27 ?XPROC = Erro}r executing PROC. Error - 28 ?EXEC = ENDPROC with no corresponding EXEC. Error - 29 ?PROC = Procedure does not ex}ist. 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. ---Dave & Laura Yearkexpanded to include an UNTIL which relates toO **************** **************** **************** **** **** } **** ***************************** *TURBO BASIC COMMAND SUMMARY* ***************************** } **** **** ****-- --! n!i# #name$ $nnn}n%0 Constant%1 Constant%2 Constant%3 Constant%PUT %PUT#n,a%GET %GET#n},A& n & i*L *L *L-*F *F (or *F+) *F-*B *B (or *B+) } *B-BGET BGET#n,adr,lenBLOAD BLOAD"D:name"BPUT BPUT#n,adr,lenBRUN BRUN"D:name"CIRCLE C}IRCLE x,y,r CIRCLE x,y,r,r2CLOSE CLOSECLS CLS CLS #6DEC DEC(a$)DEL }DEL n,iDELETE DELETE"D:name"DIM DIM a(n)DIR DIR DIR"Dn:*.*"DIV n DIV iDO } DODPEEK DPEEK(m)DPOKE DPOKE m,vDSOUND DSOUND n,f,d,v DSOUNDDUMP DUMP D}UMP nameELSE ELSEENDIF ENDIFENDPROC ENDPROCERL ERLERR ERREXEC EXEC nameEXIT } EXITEXOR n EXOR iFCOLOR FCOLOR nFILLTO FILLTO x,yFRAC FRAC(a)GET GET nameGO# } GO# nameGO TO GO TO nHEX$ HEX$(n)INKEY$ INKEY$INPUT INPUT 'text';a,b...INSTR INSTR(x$,a}$) INSTR(x$,a$,i)LIST LIST n,LOCK LOCK"D:name"LOOP LOOPMOD n MOD iMOVE M}OVE m,m1,m2-MOVE -MOVE m,m1,m2ON ON a EXEC n1,n2,... ON a GO# n1,n2,...PAINT PAINT x,yPA}USE PAUSE nPOP POPPROC PROC namePUT PUT nRAND RAND(n)RENAME RENAME"D:old,new"R}ENUM RENUM n,i,jREPEAT REPEATRESTORE RESTORE #nameRND RNDSOUND SOUNDTEXT TEXT x,y,a$}TIME TIMETIME$ TIME$TRACE TRACE TRACE-TRAP TRAP #nameTRUNC TRUNC(a)UINSTR } UINSTR(x$,a$) UINSTR(x$,a$,i)UNLOCK UNLOCK"D:name"UNTIL UNTIL WEND WENDWHILE W}HILE * Refer also to "TURBO.DOC" *)UNLOCK UNLOCK"D:name"UNTIL UNTIL WEND WENDWHILE W, ^^^^^^^^^^^^^^^^^^^^^ REVIEW OF TURBO BASIC ^^^^^^^^^^^^^^^^^^^^^ By Mark Dulcey Reprinte!}d from the January 1987 edition of A-BUG, the newsletter of the ATARI BOSTON USER GROUP. Turbo Basic XL is a public d!}omain BASIC interpreter from Germany. It was written by Frank Ostrowski for the German magazine "HAPPY COMPUTER". ! }The COMMAND SUMMARY lists only the new commands of Turbo Basic. Turbo also supports all the commands of Atari Basic, an! }d will load any SAVEd Atari Basic files. Turbo programs will load into Atari Basic only if none of the new commands a! }re used. Many of the new commands will be familiar to users of BASIC XL and BASIC XE. TURBO is not identical to eith! }er of those languages; however, Some of the new commands have the same syntax, and others differ. TURBO has commands th! }at the OSS BASICs lack (CIRCLE and PAINT, for instance); the OSS languages have commands that TURBO BASIC doesn't (!}player-missile graphics, for one). TURBO pays no attention of LOMEM; you get the same amount of space no matter what!} DOS you use. It is incompatible with the 850 RS-232 handler; the BASIC program loads right over part of it. You can!} also have 256 variables in your program, instead of only 128. Statement labels count as variables. Since TURBO uses!} the space under the O/S ROM, it will not run on an 400 or 800 Atari. It is also incompatible with under-the-ROM and !}under-cartridge DOS systems. There is also a compiler for Turbo Basic (the TURBO COMPILER), and it is also public doma!}in. The version currently available has all its prompts in German. An English version will be available soon (transla!}ted instructions are available). The compiler will handle most BASIC programs. None of the immediate commands (LOAD,!} SAVE, NEW, RUN, etc.) will compile; nor will FOR loops with more than one NEXT statement. The compiled code is large!}r than the BASIC source, so some big BASIC programs can't be compiled. Turbo Basic XL is an outstanding public domai!}n program! It offers many of the best features of other extended BASICs, plus a few of its own. It is fully compatibl!}e with Atari BASIC, and very fast. The price is right too! I recommend it to all XL and XE owners. I tried some simp!}le benchmark programs on various BASICs to compare their speed. TURBO BASIC is a very fast BASIC interpreter; it turn!}ed in times comparable to BASIC XE. The compiler is even faster. The BASICs tested were Turbo Basic XL version 1.5, !}BASIC XE version 4.1 with extensions 4.11, and ATARI BASIC Rev. B. Three times are recorded for BASIC XE. The FAST t!}ime is with the statement 0 FAST added to each program; the SLOW time is without that statement. The BARE time was ru!}n without loading the extensions file. (BASIC XL in slow mode will be about the same speed as the BARE times for BASIC!} XE. FAST mode times will be slower than the BASIC XE FAST times. BASIC XL with a FASTCHIP installed will be about as !}fast as BASIC XE.) TEST 1 ------ TURBO BASIC XL: 58.0 TURBO COMPILER: 54.1 BASIC XE FAST : 61.6 BASIC X! }E SLOW : 61.8 BASIC XE BARE : 237.0 ATARI BASIC : 237.0 TEST 2 ------ TURBO BASIC XL: 41.5 TURBO COMPIL!!}ER: 28.7 BASIC XE FAST : 57.1 BASIC XE SLOW : 62.2 BASIC XE BARE : 70.8 ATARI BASIC : 109.9 TEST 3 --!"}---- TURBO BASIC XL: 58.1 TURBO COMPILER: 12.5 BASIC XE FAST : 41.2 BASIC XE SLOW : 51.2 BASIC XE BARE : !#} 97.6 ATARI BASIC : 163.2 TEST 4 ------ TURBO BASIC XL: 59.4 TURBO COMPILER: 12.5 BASIC XE FAST : 43.7!$} BASIC XE SLOW : 5790.0 BASIC XE BARE : 5820.0 ATARI BASIC : 6060.0 TEST 5 ------ TURBO BASIC XL: 43.5 TU!%}RBO COMPILER: 20.7 BASIC XE FAST : 42.5 BASIC XE SLOW : 64.4 BASIC XE BARE : 83.6 ATARI BASIC : 104.5 !&}Following is a discussion on the various benchmark tests used... TEST 1: SAVAGE 500 ================== This benchm!'}ark is a version of the Savage floating-point benchmark. This version was scaled down to 500 iterations (instead of t!(}he standard 2500) to stay within my patience limits. The times on this test are determined almost totally by the spe!)}ed of the floating-point code! Note the nearly identical times turned in by BASIC XE (without extensions) and ATARI BAS!*}IC. TEST 2: FOR LOOP ================ This one is very simple; a FOR loop that goes around 50,000 times. 1 FO!+}R I=1 to 50000: NEXT I TEST 3: GOTO LOOP ================= This uses a different sort of loop; a GOTO statement in!,} an IF. This loop goes around 20,000 times. 10000 I=0 10010 I=I+1: IF I<20000 THEN 10010 TEST 4: GOTO LOOP PART !-}2 ======================== This is the same as Test 3, except that there are 5000 REM statements added to the beginn!.}ing of the program. The long times in the table were gotten by looping 200 times and multiplying the run time by 100.!/} This test shows the time spent searching for the line to branch to. The results suggest that TURBO preprocesses line !0} numbers in a manner similar to FAST mode in the OSS BASICs. TEST 5: DISASM.BAS ================== I ran the progr!1}am DISASM.BAS, a public domain disassembler. I disassembled the locations $0711- $087F to the screen. ------------!2}------------------ ENJOY YOUR TURBO-DRIVEN ATARI! ------------------------------$087F to the screen. ------------ W)6^^<s3>00x|73>00x`c6<9c` 33c366fffg~33>00xgfffff<%4}11111{!!\]_\ED!EOHI B V`}   %5} TURBO-BASIC XL 1.5 (c) 1985 Frank Ostrowski!  ӥL]""$$ (p%6}%J[WܠjeC /D%Zub2gTSt$8®݊Ò2% 5R%7}Ţtd.’$3@X7t5w5$?## $#L+D:*.*S:C:P:$#.#) `:#(6ENeU\l؏&/ؕ؄sأ$%8}LENeU\lأ$8آǔƐƉƐƇ4cY%٦rULۉCۄړp^gyض%iwܸJڅ*ܣ$ڭڞجئأأ%9}$ ,(""(222000000..222222222222222222222222222222**22*22(222(2222222222 ,(""(%:}0000000--**2*(22(2222222 V`hh@,lHH$HHHHHHӍl"%;}H$HHl $`GHFH\` ` 4ӭ l 4Lq ӠԪӅԆL} Ӡ L( %<}) ` b% +L:#HH 0 HHLj%ӥHlL{ee 8eee%=}eӦee褢%ƚƜ`88夅奅8%>}夕奕Ӡȱȱȱ㦢`L+`8` .E)))8@8e0 %?}*څۅ܅݅ޅ߄ԠF0y"ޥy"ݥy"ܥy"ۥy"ڥy"و0ǠF0y"ݥy"ܥy"ۥy"ڥy"٥y"؈%@}0ǠF0y"ܥy"ۥy"ڥy"٥y"إy"׈0ǠF0y"ۥy"ڥy"٥y"إy"ץy"ֈ0%A}ǠF0y"ڥy"٥y"إy"ץy"֥y"Ո0L-`8`E)))8i@0 *ڄԠ%B}"("!""" "L**""""""&О"("!""%C}" "L**""""""&О"("!""" "L**%D}""""""&О"("!""" "L**""""%E}""&О"("!""" "L**""""""&Оd%F}"("!""" "L**""""""&ОL-6"e"%G}"e""e""e""e""i""}"""}"""}"""}"""}"""}""ǭ"m"""m"%H}""m"""m"""m"""m"""}"""}"""}"""}"""}"""}""ǥՅօׅ؅مԅՅօ%I}ׅ؅`` ` ` `80 `ԥՅ +.JJJJ)iFiFi1FicFi'ȐȦoFiU%J}ȐFiiFi#iFiGi Fii@F iiFiiciՊFigi'iՊօשBL-`I%K}))83Ԥԥդե֤֥פץؤإ٤L,K6"ХL--L--L-%L}-E0:e٥eإeץe֥eՐ؅٥ׅإօץՅ֩L-8٥إץ֥հ'I8%M}م٘؅ؘׅטօ֘ՅL-ؤm\G0Q@Ն֩م؅2եمֆשم"ե؅֥م׆ةեׅ֥%N}؅ץم؆لԘ)q +` . |. &7i |. ,%!L?.`刱䈱㈱∱%O}ሱ`ԅՅօׅ؅م`ԍՍ֍׍؍ٍ`ԍՍ֍׍؍ٍ`L.L. Խսֽ%P}׽ؽ` L%/`ӽޕ &ԅ)@إ)JJJe)e - M%Q} 1. &Je0F 2 . /L(8`@ԠՈքׄ؄` . |. , . . |. , #/L(8`0 I@ԥ)%R} 2f / . & r 1. #/ &?P , .Iiԩ +)ԅ ,ӽޕL(`8`$%S})Ԧ61718191:1;1 (ť)8@0$Յ)e)e -F . / , . &1 1.%T} #/ &F I`U9>`D'RFuCU?b9dYdg@W2@?tS)%)@0)%ԅԢ / . &G %U} 1.Ӱ6 #/ &.ӽߕ ,ԅԥ B1 (`8``0?i? . . / , #/ &ԍՍ%V}֍׍؍ٍ . . ( / , O2 / ,0 .JeF 2`L+) .e٥eإeץe֥e%W}Պi؊؅٥ׅإօץՅֆե1ԥ'JffffJffffJffffJffffم`ԩ&&&&*&&&&*&&&&*&%X}&&&*`Pi`)JJJeԅԘ)Peԅ`եԆ8@EB)JJJeԅԥ)PeԅԘ)3eԅԽ3eՅ՘)JJJ}3%Y}}3`)JJJeԅԥ)PeԅԹ3eԅԹ3eՅդЧ` 0@P`'Nu pX@(#d,X L(  兢%Z}0襙 bɥ⥋㩀 50ɥ0DȱȱȄ   ik#ZMkVgğe拰ㅋ%[}⅊0 eee拰 L f5дƨħ 4LY4 f5К,樥ŧH 4h h5L4樤ܱ.* O %30%\}  5Ԅ +(fԤԈ`ř嚰Ԥ`ڥۥड़0-԰eڅڐۈ0eeL+58` %]}O#`,#5  6`]5 6DE 68DHEIHI V0$ 6Sл B%^} V,# 6` $#LllBHI V0HH V0Ԩh``{a$%Ȏ$$xө$Ѝ$ `%_} `@X a Ӆʢ ʎD  _ɠ %` ɩHH `өL: g% D%`}:AUTORUN.BASөjJHH`ՠԢӱԙ!ӹ!`֝DEIHB V0Y|ڝDa۝E%a}օܥׅݥܝHݝI V0+Ӡڑڑ0`l `  䅠 _ɠԐ%b}e拢 &L &Lħ © ¥4 䥝ň剰' k ɀ8@4= LY ĩ`OJ ]J?L%c} KԪȱLRHHצ R, hhLRHHHHHH /0ȑȑޠhhhhh%d}h`HHHHHHHHHH $H bɐhȥLHhhhhLň剰)%e}i桰` )``L(兢ħ #$ x Hҩ h$襚ҥ ԝ`%f} UV #T` ` `,H ¥ȍ` JKhLŢ  #)I L ¤Ȣ`L¦ ¦ Lĩ%g} ½J*K+ $LąLĩ …L~ …`H Ġh é`,H hH Ġ  ĭ 8}}%q}(B%DOS SYSB*)DUP SYSB SRAMDISK COMB \AUTORUN SYSBhHELP DOCBxREAD1ST DOCBmTURBO DOCBCOMMANDSDOCB-REVIEW DOCB3TURBO OBJB.COMPILERDOCBPCOMPILERCOMBXKRUNTIME COMBTEST TUR L n [h`LkL © 8倝偝 Ġ  ĥ󥃅  Lĩ LH%r} éLH#h ĩ`H hKJ L+ , H hHHħ s hKhJ  Lĩ# qL %s} ŘL ũ& QŽLM " ĽNL  ĥԝL՝M  ĥԝN%LV  ¤ħ` Ťħ` ƪ Ċ %t}Ťħ` ¢`届 x݅ L ĽCӠɀ L]Ɉ L] Ln LŠI%u}HEDBL$HH hh +L `ħ LĢl ¦`YDAER ԅՅ֦%v}󅗄`L+ ¢p 0 Hp hɈL` ,#,$,!Lé ,H ĥDEԝH՝Ih L%w}©L $`L© , k ĩԅ  + ĥ 夨ħ`2ƪƪ ! A!Ƚa!Ƚ!Ƚ!Ƚ!Ƚ!%x}``氤hhL1@$ƪư 0 0 n$P`L+FҐ֥װ綾إٰو LǠFf%y}ؐ ee&ee* &eeeԪeըee$.ƪ@!Ƚ`!Ƚ!Ƚ!Ƚ!Ƚ!`檦%z}!!!!`!@!^!` Ȅ 8 n奱 ٥Lǥ֤צưĘ=ŗ78֪א& %{} eԥe$`L: L ԅՅօׄ 1פ& ٤ţĢԅeՅe8包卅 ]&%|} 8Ԩժ%אְ`ֆL夨ħ` FҰg8&0ei֥i0Tׅiإi0BJe؅eم0&f%}}fff&0 &0 eeL+օפإ颎 %8包ԥ卅 L ɥ %~}ȱъŠe拰8``,ªȱȱI ѝ3ȥLɥHHO]%}  ȥe暰Х ȥL+ʅȱhh`Lħ OԪȱԨ``L :0%} `L(奷 bɥ󥋅ȱȱȱȄ#鈄0B8eeŶ%}ɛ,@LBˤ,ɛ`L?± ˤ樱f Oƨ x݅ + ~ [ˠ O樥0# +  L˥`%}LL :ɛ,$PH h $P润䧰 ʐLʦ䧐 +` ʐL3LBˢ%}ԝD՝E֝HםI L 兢L]& 兢L% ,L6 ,L6 &L6 (L6妪@!I@!` ؐb`P KW ؐRB ؐ%}=;G ؐ4@ ;+ƪƪ@!=A! (ƪƪ@!A! ƪ@! ,@@檦@!`!!!!!!`ƪ@! ǩjҤ%} /L.٤ƪƪ@!@!, 舽`!`!!ـ!!٠!!!!!`@!jI*` . ֪ (%}ϰ`(8` ֤ׅԄ +҅L: Lyƪ8吪周Ly sũ + ŐL Ly sŠԄ h L}%} L}٩    e쪽pLyL( + ڥHJJJJ h) 0:i`  ک; n +ȱ)ȥ%%}ݓ Lh ԍՅԄׅ֩өL:ƪ?Ԣ )ɠ )  -L &Lڦ@!)@!` n)8@%} -L:` / n)8@I= n)8@/ѩ֔$ሄ ,L: + n 0L8 n%} 0L8 n H1L8 n /L8 n /L8 n D/L8 n 1L8LLإL( &)ԥ)8@JjH@%}MC)JJJe)e .F / .P . &F . #/ &L.L(HHHHHH /hhhhhh &%} Y/hԅL:,` L _ܘ%ᨥ%Ly _ܘᨥLy _ܘEᨥELyٚ<|'g 0L`%}!!!!i ` &LإL٥LyɥLzvmZ ƨ!0 4 䦵 ¥ԝD՝E֝Heם%}I Lܤį eį L` x݅ƨLLLܤ ©`#ۢ Lĩ_,ߤ%} ڄ . eڅԥeۅհ"8څ֥ۅא8ܥݰL۠Q%0ԅإՅ٥ަ0%Q% %}L-ե0LޥڤLyمօנ6&֐ eו`L( Hħ hբՅ `ޥԢ `ޥՅ֠%}&&֐eܥeېڈ 7 \ 7 j N \ N j$0!ee80å/8ܥ۰uڕ0%}eUiV`TUV`8UV`eTi`8TȢ` $L„')Q ȱ8 e%}新`8`L齀).Q Ӱȱ8e新 O :L䅫# *$Ŭ%} Ʃ HL"䥫ș L` Ml/#樱0ZS'`ȱȱȱȱȱȱȄ`ȱօȘuԩׅu՘e֨҄`%}I 屝Ҡȱȱȱȱȱ` n$҅J?eԨe` L 兙 兛 n %3 Ԥ` ҩ,%} , , L檤 ٙ!ؙ!י!֙!ՙ`!ԙ@!ә !ҙ!` 䤪ƪ!ٹ!ع!׹!ֹ`!չ@!Թ !ӹ!`ƪ!!%}!㹁!a!A!Lp ґȥӑȥԑȥՑȥ֑ȥבȥؑȥّ` ***j)e)e`ʭȅiȅ%}iȅȩȩ Lfإ  4  \ +] ¥򄟄%}   넨ɛ$0L祔 Z f0#ڠ쩀 ߩ6ei$0 녖چ + !5%}ɛȑ @膔7 ɛ 襔!ɛL! _ɩ8$IȢ %e拢 %} &!$P* &8孨客 "&$ 1L~ L~ &L _ɰe拢 &L~ +0 %30Ԅ %}L 9:枢0 O L :H9Hhh tLHH`h%}hLCL馩`ʆLC枢0ְşLC`A枢Ɣ!L!L%}!T 򈩛LQLD ijq ߰,iŰD VD8` 覲`8` 넬 S( +饰%}0 S0:$$ p8`$p (ȩ@҅ҥ򄬤 ߰ A L8򨢄 %Ӥ򈦬ʽ ʽ % %}+HH 屝EҨhh$P0Ƭ 襯I `_A[`8`80 &Ոԅ%}` 넬$ +  + h갳 h) + , 褔ԙ!` "8` 襔 ɛ "ȱ"%}嫤!`! `) ɛ%)a{)_0:A[_դ`RE͕DATINPUԑCOLOҝLISԖENTEҚLEԛIƜFO%}NEXԑGOTϑGO TϑGOSU½TRAАBYŐCONԞCO͟CLOSŐCLҐDEǞDI͐ENĐNEנOPEΖLOAĖSAVŢSTATUӣNOTPOINԡXIϤOΒPOKťPRINԐRAęREA%}ĨRESTORŐRETURΩRUΐSTOАPOХGEԫPUԑGRAPHICӒPLOԒPOSITIOΐDOӒDRAWTϓSETCOLOҬLOCATŔSOUNĦLPRINԐCSAVŐCLOAĚERROR- %}DPOKœMOVœ-MOVŪ*ƐREPEAԑUNTȊWHILŐWENĐELSŐENDIBPUBGEԒFILLTϐDϐLOOШEXIDIҖLOC˖UNLOC˖RENAMŖDELETőPAUSŖTI%}ME$PROøEXEÐENDPROÑFCOLOҪ*̕-RENU͒DEDUMЪTRACTEXԖBLOAĖBRUθGO*’PAINԟCLӔDSOUNCIRCLū%PUԘ%GEԚG%}OTGOSUTSTETHEΣ<<>ުNOOANĨ<<>STRCHRUSASVALEADATCOPEESIRNFREXLOCLOSQSGABIN%}PADDLSTICPTRISTRIDPEE˦INSTINKEYEXOHEXDEDIFRATIMETIMMOEXERNRANTRUN%%%%GOUINSTERER+,%5%}&6(+8,<Xk`fghilm^deDѳHc?,Ќ,е,Y_Ҳ+7,/0%}1 2!3"4Ɛ"-"."-؂ٿ֐ː%}ĐאŐbj+9,+;,ʐͭ%}ͭ@ABC\=>[<+:е<,&%rvnnxc<\%}-78s_XV+@D&0d*"'2GJh N%}Rl~&2 +饰(+VWZ ]a8`L`  ¤ħ.H h L5 䄡 %} 䅭 bɠ04Ů .ŭ%) e拰 ĩ L+Ư0 Le%}`毤Hɛ) h`  L ȱ R @ʆ ȱȄ Iğ` :62T F :%}7 8 Lbԩ- L 8 8,I ɨ 8L.UH `ƨh $ %3   + \L L 8󅯩" %} 8" ©" Ư" L8q :Z#]abj(=) W같  L樤ħ`hh`H YhZ %}L<>EO ƹƹ0`H f5h`I&` =? FQA` L񄳱ȱI 䦐%}Ħ ąŅ T k /䧰 k ,Ǡ ĩJH ThĥȑĥȑĦʊȑ`HHąŅ%}H h hhhh ȱIELZ L`ȱI Hȱȱȱȱȱ %}, h @ $L+L.*ȱȱȱȱȱjEE `EjI `e`ħ ¥%}0 ` Lk 䦪`! 䧰L A@L `I&`L ©؅ L.%}0`STOPPED륺 bɠhhL :ʅ` k %3Hƹ h5h`hbjH h #%}ԤLQ #LLei  `LԑȥՑȥ֑ȥבȥؑȥّ``䈥剰%}#)iiLɠL4űI&`048ץğ=ȱȄ %}`L  L0e拠0ȱȄL  䦪`!' >?L (<ж`!  $Л +`,LőŐ78Ƒ8 Ƒ`8` - PѠ%}`,,L L PQ 8,L ȱI ѝߠȱ`ԩ%},L E  $EL+L],,,؍ 0âLɀL ©7 F󦹩 RbL g %}0g `Ո V fL{Ն + +􅕄L AT LINE?BLOAMEVALU>#VAR$LE?DAT>3276INPUDISTACOVERFLO?LIN?%}FOTOO LON?DE?GOSUGARBAG?CHMEͣ?LOA?NES?WHIL?REPEA?D?EXIXPRO?EXE?PRO?IS OPE?DEWR ONLCMNOT OPEΣRD ONLEOT%}RUNTIMEOUNA!FRAMCURSO!OVERRUCHKSUDONMODNOT IMPRA͠D?>#FILEDSK FULFATAL I/FILENAMPOINLOCKEDCM>DI%}?FILPOIN?APPNBAD SECTORӥHՄ +h & .hԩ + ,҅L: ƪn (@Մ$ 0` 0%}` 0LoH - . /h &@Յ՘JJJJ X) 0:i`AVC2 sŠ 5  <)  <%} L L + e +e`e`&&&&&&eee` &%}&eee&*`` 兙 䦪!0 4 ۄܱ **m ݤܱEۅڦڱ= %} ܥeƥiեLN@ ` **)]` 00`` ( ((((((((8%}`W)ߥ & &e &߽řِ׼JJJJ&eXޥeYߥ䥛 9 FfЎᰈ %} `  M 8*` 兙 󥐅i祣L{ &L%}  0 & L ȑ & L; # )ȱ L %})ȱ) )ȱ 8ƣŐő0eސ`ƙ8ް`)ȱJJJ`%}``=`]``` E߭H Ġ} hL±&Lv`[  ȱ R] %} L L  䅠 bɰhhğȱȄ L l"0e拱LjLx`[  ȱ R] $h ************* ************* **** **** **** ***************)}******* * THE TURBO COMPILER * ********************** **** **** **** )} ************* ************* Documentation and Operating Instructions by D)}ave Arlington Original Program by Frank Ostrowski This documentation is provided by the Western )}New York Atari Users Group and may be reprinted freely provided this credit is included. I know everyone is still r)}ubbing their hands in glee over TURBO-BASIC, the new public domain Basic interpreter imported from Holland and German)}y. We are proud to present an additional treat from our international friends overseas, the TURBO COMPILER. The TU)}RBO COMPILER will increase the speed of your TURBO BASIC programs 3-5 times and regular Atari BASIC programs can be s)}peeded up to 10-15 times faster! Unfortunately, like TURBO BASIC, the TURBO COMPILER will only run on the XL/XE series )}of computers. In addition, the finished compiled programs will also only run on the XL/XE series. The TURBO COMPILER)} is very easy to operate. It can be used with more than one disk drive, even Drive 8, the 130XE ramdisk. You will fin)}d several files on the TURBO BASIC/COMPILER theme disk, The files to use with TURBO COMPILER are COMPILER.COM and RUN)}TIME.COM. Before you begin, you should prepare two disks. The first one should be a blank formatted disk with DOS.SYS a)}nd DUP.SYS written on it. The second disk should contain your BASIC program (TURBO or ATARI BASIC). To begin, insert)} the TURBO COMPILER disk into your drive and turn your computer on. When it has finished loading you will be in TURBO)} BASIC. Type DOS to get to the DOS 2.5 menu. Choose DOS Option 'L', (L)Load Binary File and load the file COMPILER.COM.)} After a short while, you will see a screen full of German. If you do not read German, do not worry, that is what thi)}s documentation file is for! At any time that you are on this screen, you may reboot your system by hitting Control-R)} or you may return to DOS by hitting Control-D. You will be asked if you really want to do this. If you do, don't for)}get to type "J" for "Ja" and not "Y" for "Yes"!!! Your Atari does not realize that you cannot speak German. To com)}pile your programs, remove the TURBO COMPILER disk from the drive and insert the disk with the program you want to comp)}ile. (If you have two drives, insert your disk with the program to compile in Drive 2 and the blank DOS disk in Drive)} 1.) Press the number 1 key (Number 2 if you have two drives). A complete listing of all the files on that drive will)} appear on the screen with one highlighted in inverse video. Using the arrow keys, highlight the file you want to com)}pile and hit Return. That's all there is to it! Easy eh? At the top of the screen, you will see the line numbers fly b)}y as the program is compiled. When it is finished, you will be prompted for a file name to save your compiled program)} under. It has to have an extender of CTB (for Compiled Turbo Basic). The program will not let you use any other exte)}nder. At this time, if you have one drive, you should remove your disk with your original program on it and replace i)}t with your blank DOS disk. If you want your compiled program to be an AUTORUN file, you should name it AUTORUN.CTB. Th)}en the file will automatically load and run at bootup time. There is one more step that you must do to get a complet)}ely runnable compiled program. Go back to DOS and copy the file RUNTIME.COM from the TURBO BASIC/ COMPILER disk to th)}e disk with your compiled program on it. Rename the RUNTIME.COM file to the name AUTORUN.SYS. Your disk is now ready )}to go. Boot this disk and you are away! The TURBO COMPILER does not compile to runnable code, so you must run the RUN)}TIME.COM file to run your compiled program. If you do not rename your compiled BASIC program to AUTORUN it may be loade)}d from the RUNTIME program by using "L" at the on-screen prompt. At this prompt you may also re-run a program that ha)}s finished or quit to DOS. One technical note on the TURBO COMPILER: If you are not familiar with other compilers fo)}r the ATARI computers, you should know that many have trouble compiling certain types of statements or insist that yo)}u organize your program structure in a certain way. So far very few of these problems have occured on any programs we)} have tested with the TURBO COMPILER. The only statements that wouldn't compile so far are the END and NEW statements)}. The only program structure that we have had trouble with is a FOR-NEXT loop that has two or more NEXTs for one FOR. )} For example: 10 FOR X=1 TO 5 20 IF X=3 THEN NEXT X 30 NEXT X Other than thos)}e two examples, we have had no problems compiling any type of program, either TURBO or ATARI BASIC. If the compiler d)}oes encounter a problem it will indicate the type of fault and the line number. Simply check it out and try to rewrite )}that part of the program in a different way. Please, don't be discouraged, no compiler can cope with "every" problem)}! Whether you program in TURBO BASIC or just want to turbocharge your old Atari BASIC programs to super speed, you w)}ill find the TURBO COMPILER will fit all your speed needs without the need for an expensice commercial program., you w(v>><s3>00x|73>00x`c6<9c` 33c366fffg~33>00xgfffff<11111-}{UUUU *U@PTUTP@U* 0b1<=?<GD0EHI B-} V`}   Turbo BASIC XL                -}                                 -}Version 1.1 (C) 1985 Frank Ostrowski0} ! @} RLl LwD1:*.*P:E: VH) h(`h.}h@,lHH HHHHHHӍl"H HHl !`GHFHJ*K+\`* ` ӥԤ`pp@F]!B.}A8!452"/"!3)#8,#ompilerc &rank/strowski` a$%Ȏ$!%!xөˍ .} e` e`@X ` ~   ʎDL ՠԢӱԙӹ`֝DEIH.}B V0ZڝDa۝E8օܥׅݥܝHݝI V02Ӡڑڑ0 BLVl `= X.}ixD!YiE!80!1T  T \L/ 䥐 LZ Keine FehlerProgrammlaenge = 8o".} Bytes GL# ĩ 䛛Bitte eine Taste dr cken L# ĩjB JKD E 0٩̍` !.}0` StoppedLL '!`HHBHI ąhh`旽`L5 ' '0 ' å.}ȥȥȥ ,© ĥŔHȱhL`Ԅթօׅآ&եeօ֥eׅץe؅` ٥ ¥ ¥.} ¥`HJJJJ h) 0HHH hhh`  F¥ =¥HJJJJ Fh) !`:eileO™!BHIԝD. }E L¥ Kein Basic-ProgrammLڥ۰ 'ܥݰ- ' ' ? ' ' ' ' ' 'iڐ۰`o. }"ܙݙ `ŭJ++i2R|+\Ng\+++c|dHyks. }|cc.t++i+`bfzvR+++++C|"u . }Speicher vollLei8eieiee褩%Ʀƨ. }` B 0`H I/O Error - h L ' 'Ȧ䖐Ȅ !Å.}Թ"Å ť æّ`l Aƛƛ HiH Eh h L1ɭHisHL&Š Őƅڽ'.}ş`Ɯ ŅԽŅ L]ť<.ڈX"k87 9;?੃ 驏 饞7<:ƛƛșڥșڄLP H .}0.) ` &Ơ & H H` HIH hۆ `e (iLǽǽǽǽǽ".}"țILFFȕ ȦǛǦǦǛǛǡǛǛǦǛǛǛǛǛǛǛǰǰǰǰǡǡǡ#ǡǦǽǛǽțǛljȉȉȉ#.} ,(""(2000000..222222222222222222222222222222**22*22(222(2222222222 ,(""(0000.}000--**2*(22(2222222FL驃 ǩFL驃 驗 LFLj ǩL驀,.}ɏɓ ɕ LǩLjȩ 驗Lj FL驃 驟 jȩL`FƠƠ 驉 jȩL驫,,ee.}H 馜Ɯڹۅh LǠ EL1ɠ Eũ L1ɘH Ǥh8f@iiz (iLHLhhLm.}ؙěƛLȊȹؙěƛL8 ː#H Integer <0 oder >65535hԅթإԙإՙLȩ ƛgɻbɯ\[ɖX.}ɁSɌOɎKɔGɚXɜWɘ9ɀ<ɂNɃVɄYɈ\ɉcɊɋ-ɍɆɓ ɇoɅL;ě`ɃLLLˢ,,Ƀ.}LLL^LȹF ɗUЮ,L-ɩLLLɹɅ IL-ɹɅ積 ILȊ8$יL.}șؘHؙěƛh`Lɩ,,LȹɃ ˈiإԙLʹV W Zл,,ة.}L-I#HɠA6'؅չ؅ԢIL-ɹؙěƛLLɹ(iL-ɩL-ɘHȹ؅ȹ؅ *!h`'.} hhՠ L HH` 䅤 ř 轊轊) ½  nicht compilierbar`  ***.} MUELL ***LLISENTECONNELOASAV4CSAV5CLOA7ERROS*URENUVDEWDUMXTRACTOKEN  :, ,Lhh.}ՠ LHH`H QJSBh` L Compiler FehlerL%ɂɸɠؠL.}ěAت0װ)? Խչ L婢 ȹ )? !ěп`8P,,,,ȹ؅ȹ؅.}4@.f"g6hLiOj26FɀQɁJTPq,p,o,r,C,BL!sv@ ԩt,u,yH . }6hL!x,wH Lm楂ń兰!0$iԐń児ߩ àԈ 8 驠 (  ;.!}?L!F 橠L6ȹ؅ȹ؅ ذ А,  ,LL6hhH hLU L 8 驠 ( ȹ."}؅ȹ؅Hi⢆ àhL!U,,, 詄,L6 ,),I 驪 驘 驨 驊L.#} !"#$%&'()*/012346=>ADEFGHIJKLMNOPQRSTUVWXYZ[\]^_5789:kl†,-+ ÈƇ..$}L>.%}!.8NQ 驠,,$ ȹL L 颺,,ԩ 6詤L6 橱L6멢Ⱦ 6<,L!m,nH ȹ .&}hL!, L=,,,,,  QJSA`ު 阆٦` Ausdruck zu komplexLHH .'}àّٙhh`ئ`, 魁I& L= zȤɉ  L L XL L= .(}L- p L奝` LLL L꥝ 줗  Hdqr p> +HT V=,Ɂ%؅ԭ؅ՠ.)} ȱԪ 6+ L L $0 L 饙3 ` F HL L驅L驕,H zh ~.*} ɉ` E)  ذА جL- LL E2 ذ'#А ج -L2멄L.+} LL Zahl>255` zȩ LL!,,,H B LhL  hi  ` E멑 zȩ 륝 z L'L E LL.,}魁 H ,L L魁 LL #L餗 H , L HH 1hh`$,%H E LhL,H E멑 .-} ~ LhLLé,H hȥȥ`8Ƌ` `iȥi`H h DO fehlt` REPE..}AT fehlt` WHILE fehlt` ,H hгȱȱLLL,H pɄ 񩄠  L婥 hL饀HH ./}ĩ  hh`ԥՠ8԰ձ ĩ L{ h L  Ħ {` zȤؠ .0}馕䔰 'LB` Ħ {`:LȱHeȱih` h ` IF fehlt` 2 H 饝.1}٢ æّ` E멑 t$0= L&L ŤH L phH t Lh 6(() 驰 6 ĩL .2} Ƭ*L FOR fehlt` + 饝` p L, 饝`-,J,.H h,KH hH 饝h` B L.3}/ 0L E L1L 쭁2,6,4H hHi 饝h` p ة9,:;LH 렌 =h,8H .4} = 렊 = hL魁6=,TH! H h?7 驠 L L H HI.5} Hۅ` L魁?L@,A,B,C,D,E,F,GH p LhL 렌 =I,HH 레 = 렊 =L pɄƛ L ĥ.6}b:j3L_L,N(' zȥ7ج ٥`P,R(/ ٥` ON.GOTO/GOSUB expLƛ .7}1LL LƚƚƚWL } Turbo BASIC XL Compiler Version 1.1 ===================================Welches Programm soll.8} compiliert werden? Geben Sie zuerst die Laufwerksnummer zwischen 1 und 8 ein, und w hlen das Programm dann mit den Pfe.9}iltasten , ,  und . Dann RETURN dr cken.Control D = R ckkehr zum DOSControl R = Reboot )LL.:}19卣 H $!h)!! ĩBD EJK  '0$ '  'ɛ撦? Ǝ LhT .;}T ĩLXixYii Ǝ   ɛI'-#4=0+&*"1.<}9L)0dž )L䒰D :)i  . (8 !BDE.=}JK ĩ}  L ԠʯΠ J LL ӠʯΠ JL o")1 )  .>} eŀ偐LM' :'7? / LLLL6墄,ȱuuL ,Lȱȱ .?}LL,ҩȱӠ$0 ,Lȱ iiҠLՆԥ֥נȱհ .@} J Zeile fehltȱ֪ȱ`ܹ J Label fehlt`Ԇե֥נȱȱհ8ְױօօ`ȱ.A}ܑݑ 7L LH Nh-:H NEXT fehltL EXIT ohne ...L LOOP fehltL UNTIL fehlt.B}L WEND fehltL# N ENDIF fehlt` Filename fuer das compilierte Programm?1 D.C}  :.CTB@ !0A+19ߐ~ © ƥLɛ%0:A[H h У.C.D}TBD:TUZ[ oT"U8oX"Y .E} Noch einmal speichern (J/N) ? !)_JN`LG R 0`H I/O Error - h LG 0` éȑ.F}ȑȑ 驛 Ģ éȑȩ` ""!B+W!k!}Tɩf{KH-.G}2(*oi.LG;3609JNxPSPS.H};wU >kQt3J,HNjv;.I}>WToU!J 1!^u$`@!r4 %gs.J}}8 4"+F 1!^u$`@!r4 %gs,:} }  Lll L"! L"! VL"! l Lq!! "!LD:*.*S:P:E:l"!q"H) 2L}h(`ӅԄՠ`ӅԄՠԨ`L)ӑ) `Ӣhh@,lHH!HwHHHHHӍl"H!H2M}yHl !`GHFHJ*K+\`* `Ӧee褌%ƉƋL"!2N}Ӡȱȱȱ㦌L"! ` ` `2a$%Ȏ!!xө~!!2O} ` `@X ` ~  } Ӣ ʎDy` SLD1:AUTORUN.CTBՠԢӱԙӹ2P}`֝DEIHB V0Z3ڝDa۝E8օܥׅݥܝHݝI V04Ӡڑڑ02Q} BLVl `˩`80 ` .JJJJ)iFiFi1FicFi'ȐȦoFiUȐFii2R}Fi#iFiGi Fii@F iiFiiciՊFigi'iՊօשBL`I))832S}Ԥԥդե֤֥פץؤإ٤LK6"ХLaLaLa2T}E0:e٥eإeץe֥eՐ؅٥ׅإօץՅ֩L8٥إץ֥հ'I8م٘؅ؘׅט2U}օ֘ՅLؤm\G0Q@Ն֩م؅2եمֆשم"ե؅֥م׆ةեׅ֥؅ץم؆لԘ)q2V} ` ? 7i ? %!Ls`ԅՅօׅ؅م`ԍՍ֍2W}׍؍ٍ`ԍՍ֍׍؍ٍ``, Խսֽ׽ؽ` ,2X}`+ĕ ԅ)@ޥ)JJJe)e e Je0F g2Y} Lm8`@ԠՈքׄ؄`==W3>Tvb>2b'?h`06?2'A?%C4Vu?f'70P@U??CBH ? & ? QL2Z}m8`0 I@ԥ) oǢҠ 1  ؠ e Q ?P ¥Ii )ԅ +ĕ2[}Lm`@"wf?IWQpIG?9 Wa9cU? 0d? 9`?BXGB?7?()q?D>DIh8E?hyx? )D?@ (1V?2\}wD3331??xS48`$)Ԧƅƅƅƅƅƅ mť)8@0$Յ)e)e F2]} 䰃 e Q F I`U9>`D'RFuCU?b9dYdg@W2@?tS)%)@0)%ԅ2^}P 1 ;  e°0 Q (Vŕ ԅԥ  ƕ m`8``0?i? Q 2_}ԍՍ֍׍؍ٍ * m N ǥ N 0 -åJeF g`L ) e٥eإe2`}ץe֥eՊi؊؅٥ׅإօץՅֆե1ԥ'JffffJffffJffffJffffم`ԩ&&&&*&&&&*&2a}&&&*&&&&*``ۄܱ T **m ȰҠݤܱEۅڦڱ= bܥeƥ2b}iեL@ ` **)]P` 00`` ( ((((((((8`W)ߥ & &e2c} &߽aȅŊِ׼Ȅ⹕ȍqȅJJJJ&eXޥeYߥ䥈 9ȅFfЎᰈ Tȍ`Ȅ佘ȅ 2d}M 8*` Ȱi祍La L< ʘ0  L 2e} ȑ  L ʘ# ` |ʠ)ȱ Lt nʤ n |ʠ)ȱ)2f} `ʠ)ȱ ʆ8ƍ0eސ`Ɗ8ް`)ȱJJJ```=2g}`]``` H} h`Pi`)JJJeԅԘ)Peԅ`եԆ8@EB)JJJeԅԥ)Pe2h}ԅԘ)eԅԽeՅ՘)JJJ}˅ԥ}˅`)JJJeԅԥ)PeԅԹeԅԹeՅդЧ` 0@P`'Nu pX@(#2i}d,X L `8` ¥E)))8@8e0 څۅ܅݅ޅ߄ԠF0y ޥy ݥy ܥy ۥy2j} ڥy و0ǠF0y ݥy ܥy ۥy ڥy ٥y ؈0ǠF0y ܥy ۥy ڥy ٥y إy2k} ׈0ǠF0y ۥy ڥy ٥y إy ץy ֈ0ǠF0y ڥy ٥y إy ץy ֥y Ո2l}0L`8`E)))8i@0 ڄԠ ( !   L* 2m} &О ( !   L* 2n} &О ( !   L* &О 2o}( !   L* &О ( !  2p} L* &Оd ( !   L*2q} &ОL6 e e e e e i 2r} } } } } } } ǭ m m m m m m  } }2s} } } } } ǥՅօׅ؅مԅՅօׅ؅`hh !LHH`ؠ2t}ɀhhHH֥ץ?ȱȱӰ8ְױօօ0LB Fehler - à  in Ze2u}ile  ($8H h ) Programmende : os, un oder oad ?@ !D L RL L Filen2v}ame D: Jȱɛ):ȱɛ.ȩCȩTȩBȥ SLȹD:LKHJJJJ h) 0:iLp 82w}` B 0`L<馒撥ԝޥ՝*ޥ֝Tޥם~ޥ؝ޥٝ` ƒޅԽ*ޅսTޅֽ~ޅ׽ޅؽޅ`ƒޅ*ޅTޅ~ޅ㽨ޅ2x}`撝ޘ*` ӥԝإ՝٥֝ڥםۥ؝ܥٝݥ`LT؅Խمսڅֽۅ׽܅ؽ݅`؅مڅۅ܅݅`2y}ȱȱȱȱȱ`ȱȱȱȱȱ`٩@ةڝ۝ܝ`թ@ԩօׅ؅`  2z}LQȱȱȱȱȱ`ȥȥȥȥȥ` wLH wh LQԄՠԅք` L 2{} !ԝD՝E֝HeםI L`Laee 8厅叅eeL!)2|}L)`x,Ң⅌Ҙ襉ҥ `8$ L8$ ȍ` JKiLH h)2}}I ! SLJUVT`T L) ʥԤհ` L ` !L8, !L8 ` iLJ놈 LJ놈 ,LQ2~} HԝDEILꆓBJKԝD՝E CL8醈 B LJ놈& LM J릓N2}LJL)NLM%L L j L `L=! Sp D o 82} LpL ,#,$,!pLL ,HBDEhHIL oL8馓HIBL !L8ɅĈeɐ ň2}`֥ԅԅՅ,`$8n!?! D i\ iU?! iD iE=D iH ih8DHEI2}HI C ,!L `L= JhhlԄե֥נȱհ  ȱօȱօ` L=Ԅ՘0)2}ȱհ ȱe懰楆ƇƆ`L)L=醈ɛi懠,ɛ󥆦 Seօ` Lt Ԥբ2}H e" hLQL=醈 *? , DEHI ` DLr 4 e"ɛ ,ЬLQ DL2} 4eɛ SLtI L L L L L@ ; ` ; ` ; 2} ` ; m` L=@@ȅ@`I`)` ; USN ; FG ; ?: ; 2}201 ; &' ;  ;% ;L Lå ` : : :ڰ :ΰ :ǰ :оE%2} jE `0``֪ (ϰ`(8`8` 2}ԤՅ` e"4 L= Ԅձ80  &ԅ L  eԪp`L) HJJJJ 2}h) 0:i`Ԅ 0 ["ȱ)ȥ,  ՅԄ֩`?Ԣ )ɠڭ ) ڕL2} ^ L)8@L` )8@D:)8@-٩֔$ሄL` 2} ^Ű$` hŰ` &ư` Rİ` Vİ ` rð` ƐL=0L L ;&)ԥ)8@עJjH@M2}C)JJJe)e F ¥P & F Q LL)HHHHHH Vİhhhhhh ðh2}ԅ` L %ઘ%ᨊ` ઘᨊ` EઘEᨊ`<|'gԥ0L=`  *  &L_,2}ڄ  eڅԥeۅհ"8څ֥ۅא8ܥݰ`۠Q%0ԅإՅ٥ަ0%Q% L2}ե0Lڤ`օנ6&֐ eו`L)ԘբՅ Ԣ Յ֠&&֐eܥe2}ېڈ $0!ee80å/8ܥ۰uڕ0eUiV`T2}UV`8UV`eTi`8TȢ` !L8醊 æ f Ŋ :ƒޑȽ*ޑ2}ȽTޑȽ~ޑȽޑȽޑȥԑȥՑȥ֑ȥבȥؑȥّȥȩhihHiH&HHH wh Lhh`hh`82}` L=醊 f ŊHȱȱȱȱȱ妊 w Qh LhhHHe`*ȱȱ2}ȱȱȱjEE `EjI ` p D il ie o"p"q" i i i i i io"82}o" K膖  Lo"L=؝ٝڝ۝ܝ륄Lei  2}`L=饏őŐ%Ƒ8 Ƒ` f,L= fhhHH`, :hihHi2}H`` J :hihil  ¥Ӡ L  @Մ$ Q` Q` QLQH 2} h @Յ՘JJJJ y) 0:i`AVC2 5 - <) - < 2}L L e e`e`&&&&&&eee` &&eee&*` u2}8)Ӱ% hhȱԅȱԅl ʰԤզ`hhheӨhiHH` u u88Ӱڪ :(jheӑhi Lh2}פօۄڠ܄ݠFfؐeڅܥeۅ0&ۈ`L >ӆiHi0Hƒiֹ*i0Ѕ &ݤݥ &e܅ܘe݅2}hhLlӅ؄م܄0օצӽАԥեܤ Q `ƒ*ޅޅ wإ2}ٰ5֥װ+ eܥe*ݨ &eܪeeըeԐ`L L L ӆ 4Ԥզ L_ ӆ Ԥզ L2}_ L LL=ӦԆՆֆ׆Lw Y٤ ۘ` Y  L~ Y ې Hh`פōČԅe2}Յe &"8ӥب`ƒޅ*ޅ L=؅مƒ8*ޥ֥אeԥe`2} w㰶H wֆ׆h8Lԩ!HHֆ׊HHʽ޼*ԆեHL!àLLeԐ `8԰L)2} w㰶H wֆ׆h8Lԩ!HHֆ׊HHʽ޼*ԆեHL!àLLeԐ `8԰L)0  $JYSCREETIMBA a@AdAU A + %%6-F:@,%AV$F:@6},9@'@9@ )-A `%%@) BB6-+F:@,$B6}U6%F:@,$AV%F:@ ,,'@P!!( }TIME TAKEN  seconds(dii(`}This short program is written in 6} standard Atari BASIC. Run it with a standard DOS bootednKK(C and then run it again with Turbo BASIC booted. Whic6}h is faster?x0-@@ 0(PRESS ANY KEY FOR TEST F:Ad,"AUA0$D2:TESToted. Whic4s