#@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: [ BDHI%} 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 ALLOWED228 FREE SECTORS COPYING---D1:DISKFIX.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- 128ɛ+,' 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 D8u''''''' ------- z:x:z:x:z:z:z: pp T} $$$'$$$$$' ,,,-,,,,, - 888:U}88888 : pp   $$$'$$$$$' ,,,-,,V},,,- 888:88888: pp  ''$'''W}'$'--,----,-:z:z8:::z:z8z:zpxX}'$'$''''$''- ,-, ----,-- : 8:8 ::::8:: Y} px   '$'$''''$''$- ,-, ----,-- Z},: 8:8 ::::8:: p8x   '''''''''[}- ------- -: :z:z:z:z::z: p:x  \}]}^}_}$$$'$''''`}''',, ,-,-------88 8:8::z:z:z:x:z:z a}$$'''$$$$$$,, ---, , , ,,,88 :z::8 8 8 888b}p    $''$$$$$', --, , , ,,-c}8p :z:z8 8 8 88:zp    ''''$$''$''--d}--,,--,-- :z:::8z8::z8::z p $''$'e}$'$''$'''',--,-,-,--,---- 8::8:8:8::8:::: pf} $''$'$'$''$'''',--,-,-,--,--- 8::8:8:8:g}:8z::: p $''$'$''''''',--,-,----h}---8::x8:8::z::z:::zpi}j}k}l}$'$'$''$''''',-,-,-m}- ,--- --8:8:8:: 8::z:z @:z:x  $'$'$''n}$'$$$$,-,-,-- ,-,,,  ,8:8:8:: 8:888 @ 8 o}  $'$'$''$'$$$,-,-,-- ,-,,  ,8:8:8:: 8:8p8p} @ 8   $'$'$'$'',-,-, -, q}--8:8:8z x:z@8 @:z:z  $'$'$''$$r}',-,-,- -, ,-8:8z:z8:p :8 x8:  s}$''$'$'$$',- -,-,-, ,-8: x:z8:p8:8 x8: t} '$'$'''''-,-,--- --:zp8:u}8:p:z:z x:z:z v}w}x}y}''''''---- --z}::z:p:z x:z:z '$$$$${}-,, ,, , :88p 88 8    '$|}$$$-,, ,, :88 88 }}  '''''''-------:::z:zz~}:z:z:xz'''$'''---, --}-:::8 @:::p ''$'''}--, ---:z:8 @:::@@ }'''''----- ::z:z@:z:p@}  }}}}}}}}}}}}}}@4+;  z '-:$,8x$,8z'-:z'-:'-:pРp '-: z$,8'-:$,8z$,8$,8'-: }zڠpФx$,8xؤx px'-:z'-:zڠpРpЧzڧzڧz'-:'z$,8z }z$,8 @@'-:  x$,8pЀ@'-:$,8 zڤx $,8x@ }@@ } } } } }         }    }       }     !"   #$ %& "' ' () }*  }'  + ',+  "+-+-.}./}0\ "X;-----------------------------pQ>(P2 Q>4DLIST<P0F Q>5DLISTPP1Z Q>4TEXTdPn Q>5TEXT}xP} X;--------------------------- CHKTXT%>$>LOOP1QLETTERS9R@7 FCHKOUT2 !LOOP1CHKOUTQ}ADDRESS9PQADDRESS9PX; COPY1" SCROLL,#6 HCONT1@#JCONT1 COPY2TQ^R>5ENDTEXTh H}NO.WAYrQ|R>4ENDTEXT HNO.WAY Q>4TEXTPˤ Q>5TEXTP̸NO.WAY!CHKTXT:!X;--------------------------}-- COPY1%>Q@7 PLINE1*%>Q@7 PLINE1+&%>(0Q@7: PLINE2*D%>)NQ@7X PLINE2+b}%>PlQ@7v PLINE3*%>QQ@7 PLINE3+%>xQ@7 PLINE4*%>yQ@7 PLINE4+:!X;------}---------------------- COPY2$>LOOP7QLINE19PLINE19$2.(>(8 HLOOP7B$>LLOOP8QLINE29VPLIN}E29`2j(>(t HLOOP8~$>LOOP9QLINE39PLINE392(>( HLOOP9$>LOOP10QLINE49PLIN}E492(>( HLOOP10 Q>4LINE1 PLOTXT1  Q>5LINE1 PHITXT1 Q>4LINE2( PLOTXT22 Q>5LINE2< PHITXT2F Q>}4LINE3P PLOTXT3Z Q>5LINE3d PHITXT3n Q>4LINE4x PLOTXT4 Q>5LINE4 PHITXT4:"X;-----------------------------}SCROLLQ> PTEMP2LOOP6!DELAYBACK"DUMMY1 QDUMMY1P;;Hscrol ILOOP6Q> PDUMMY1P #LOT}XT1HL1" #HITXT1,L1#LOTXT26HL2@ #HITXT2JL2#LOTXT3THL3^ #HITXT3hL3#LOTXT4rHL4| #HITXT4 L4"}TEMP2 QTEMP2R> HLOOP6: DELAY%>  L5$>L60HL61HL5 !BACKaLETTERS AABCDEFGHI}JKLMNOPQRSTUVWXYZ0123456789-?., A ADDRbADDRESS ADDR=ADDR=ADDR=ADDR =AD}DR=ADDR=ADDR=ADDR=ADDR =ADDR$&] ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR}=ADDR=ADDR0g ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR:g }ADDRX=ADDR\=ADDR`=ADDRd=ADDRh=ADDRl=ADDRp=ADDRt=ADDRx=ADDR|D ADDR N DUMMY1 }X TEMP1 b TEMP2 l!X;----------------------------vX; Mode E Dlist DLISTX; .BYTE $70,$70,$70 N=P=}3 AA3 AA AA N==}3 AA0 AA AA TLO}TXT1 LINE1HITXT1 LINE1 T LOTXT2 LINE2HITXT2 LINE2  T*LOTXT3 LINE34HITXT3 LINE3}> THLOTXT4 LINE4RHITXT4 LINE4\ Af DLISTp"X;-----------------------------zBLINE1 A } ABLINE2 A ABLINE3 A } ABLINE4 A A"X;-----}------------------------TEXT# AA TESTING THIS SCROLL A ENDTEXT A"X;-----N F=EIX;X;|BIG SCROLL ROUTINE |(X;|WRITTEN BY SAFERMAN OFER|<X;|PETAH-TIQVA, I}SRAEL 1992|FX;|TEL.:[972]-(0)3-9304403 |PX;ZX;--- DEFINE VARIABLES ---d CHn SCRBUFx}LENENDTEXTTEXTX;------------------- Q>4TEXTP˪ Q>5TEXTP̾ Q>LENP Q>4DLISTP0" Q>}5DLIST,P16X;-----------------@GTEXTQ>4CHJPT Q>5CH^PhQ>rPRO|%>;;GET CHARQ@7T?URO}T?UROT?UROOPQOROP# HMAIN#X;------------------- MAIN%>&Q@70PNU}M: DECBIND#NHL50X#b L50 MOVEv "CNT2 HMAINQ>PCNTQ> PCNT2 SCROL"Ѳ HGTEXT:H}X;----------------------RMOVE\$>f%>pL53QBYTES9z PBYTES28PBYTES28PBYTES28PBYTES28P}BYTES28PBYTES28PBYTES28PBYTES282C,O>?(>HL53LX; MOVING ROUTINEV$>` L}55%>jL56QBYTES29t PBYTES8~23)>HL56 &XDUM BINDEC%CNTQNUM PSPACE8#CNT $XDUM(>}@HL55:X;-----------------( DECBIN2$>< L57Q>FTNUMPO>Z PBYTES9d2n(>xHL57:X;-------}-------------- BINDEC$>L58QBYTES9V?UNUM2(>HL58:^X;---------------------hJTEXT ABIG SC}ROLLER BY SAFERMAN OFER. WRITTEN AND REWRITTEN IN 1993 Ar ENDTEXT|BYTES AANBYTES2 A}AMSPACE AA NU}M CNT ;;OFFSET INTO SPACE CNT2  XDUM  RO  CNT3  CNT4  X;--------------------------- SCR}OL$> L3Q>4SCR&P0 Q>5SCR:PD L2%> N TSPACE9X L1Q@7bU?lP@7v1IL1 DELAYA,O>}>QϬ,O> PϷQкO>Pм "CNT3HL2Q> PCNT3A;S>@> "CNT4HL3Q> PCNT}3  PCNT42 (>*HL34: X;------------------ DLIST LI1 I  BUF  I  BUF  I  BUF  I  BUF}  I  BUF  I  BUF  I  BUF  I  BUF LI2 I BUF  I BUF   I BUF   I BUF}   I BUF "  I' BUF ,  I1 BUF 6  I; BUF @ LI3 IE BUFJ  IO BUFT  IY BUF}^  Ic BUFh  Im BUFr  Iw BUF|  I BUF  I BUF LI4 I BUF  I BUF } I BUF  I BUF  I BUF  I BUF  I BUF  I BUF LI5 I BUF(  }I BUF(  I BUF(  I BUF(  I BUF(  I BUF(  I! BUF(&  I+ BUF(0 LI6 I}5 BUF2:  I? BUF2D  II BUF2N  IS BUF2X  I] BUF2b  Ig BUF2l  Iq BUF2v  I{ B}UF2 LI7 I BUF<  I BUF<  I BUF<  I BUF<  I BUF<  I BUF<  I BUF}<  I BUF< LI8 I BUFF  A DLIST "X;----------------------------- DELAY %> L1 HL :* }"X;-----------------------------4 /BUF AA> * AA:* yOF                   }                          }        BASIC TUTORIAL PART 3---------------------HELLO DEAR FRIENDS. THIS IS PART 3 OF OUR B}ASIC TUTORIAL AND THIS TIME I'M GOING TO TALK ABOUT BASIC LANGUAGES. SOMEONE AROUND THE WORLD WILL PROBABLY CURSE HARD AND A}SK HIMSELF WHAT HAVE I BEEN DOING TILL NOW, IF NOT TALKING ABOUT THE BASIC LANGUAGE. BUT, TODAY THE ARTICLE WILL BE ABOUT BAS}IC LANGUAGES WRITTEN BY OTHER PEOPLE, WHICH ENHANCE ATARI BASIC. THE ARTICLE WILL DISCUSS MAINLY TURBO-BASIC, WHICH I HAVE ME}NTIONED IN THE PAST, AND WHICH I THINK IS, TODAY, THE BEST BASIC AROUND FOR THE ATARI. I WILL ALSO DISCUSS IN GENERAL BASIC A}+ . I DON'T PRESUME TO KNOW ALL THE BASIC LANGUAGES EVER WRITTEN FOR THE ATARI AND I HAVE NO INTENTION OF COVERING ALL THOS}E THAT I KNOW, BECAUSE MANY OF THEM HAVE GRAVE COMPATABILITY PROBLEMS WITH ATARI BASIC, AND SOME ARE NOT SO ENHANCED AS TO BE} WORTHY OF DISCUSSION. AS I PROMISED LETS DISCUSS TURBO-BASIC, WHICH FROM NOW ON WILL BW REFERED TO AS "TB". THE FIRST ADVA}NTAGE THAT "TB" HAS IS THE COMPATIBILITY TO ATARI BASIC, WHICH MEANS THAT A PROGRAM WRITTEN IN ATARI BASIC WILL USUALLY LOAD }AND RUN WITH NO PROBLEMS ON "TB". THAT SOUNDS WONDERFULL BUT IT ISN'T AS SIMPLE AS IT SOUNDS BECAUSE ANOTHER BIG ADVANTAGE OF} "TB" IS IT RUNS ABOUT 3 TIMES FASTER THAN ATARI BASIC SO IF YOU HAVE A PROGRAM WITH SOME DELAY LOOPS OR OTHER TIME CONSIDERA}TIONS WHICH ARE IMPORTANT, THEY WILL HAVE TO BE CHANGED. MANY OF YOU NOW WILL START TO WONDER IF IT WORTH THE TROUBLE, BUT BE}LIEVE ME IT IS DEFINETELY WORTH WHILE, BECAUSE EVERYTHING RELATED TO GRAPHICS WILL DRAW FASTER, THUS CAUSING US TO WAIT LESS,} IN ADITION BECAUSE OF EXTENDED COMMANDS (WHICH WILL BE DISCUSSED LATER) "TB" ENABLES THE USE OF LESS MACHINE-LANGUAGE IN BAS}IC PROGRAMS AND THUS LESS INITIALIZING AND LESS TROUBLE OF UNDERSTANDING THE PROCESS OF USING MACHINE-LANGUAGE IN A BASIC PRO}GRAM. DUE TO EXTENDED COMMANDS IT IS POSSIBLE TO WRITE AN ORDERLY CONSTRUCTED PROGRAM IN THE SAME FASHION AS PASCAL AND OTHER} HIGHER LANGUAGES. UNTIL NOW WE HAVE DISCUSED ONLY GENERALY THE GREAT BENEFITS OF "TB" BUT LETS BE MORE SPECIFIC. NOW, I'M} GOING TO GIVE A FULL AND COMPREHENSIVE LIST OF ALL THE ADITIONAL COMMANDS, THEIR PURPOSE, AND THEIR UTILIZATION. NOW WE WILL} SEE THE REAL POWER AND VERSATILITY OF THIS GREAT BASIC.1) *L = "TB" CREATES INDENTATIONS ACORDING TO THE CONDITIONAL STRUC}TURE OF THE PROGRAM WITH THE OUTER MOST LOOP WITHOUT ANY INDENTATION AND THE INNER MOST LOOP WITH n INDENTIONS ACORDING TO TH}E NUMBER OF LOOPS. THIS SOUNDS VERY COMPLICATED AND VERY HARD TO UNDERSTAND BUT LETS MAKE IT SIMPLE WITH AN EXAMPLE:10 F.A=}1 TO 1020 ? NUMBER 30 F.B=1 TO 1040 ? NUMBER250 ? A60 ? B70 N.B80 N.ATHIS IS WHEN YOU TYPE IN DIRECT MODE O}R ON THE PROGRAM '*L', BUT IF YOU DON'T, IT WILL LOOK AS NORMAL ATARI BASIC WITHOUT ANY SPACES.2) *L- = THIS CANCELES NO. 1}3) TRACE = THIS A VERY USEFUL COMMAND. THIS COMMAND CAUSES THE COMPUTER TO TYPE THE LINE NUMBER IT IS EXECUTING WHEN RUNNIN}G AND THUS THE TRACING AND CORECTION OF ERRORS BECOMES MUCH MORE EASIER. THE COMMAND HAS ONE DISADVANTAGE - WHEN A GRAPHICS C}ALL IS MADE IT DISABLES ITSELF AUTOMATICALY.4) TRACE- = CANCELS THE TRACE MODE.5) RENUM A,B,C = WE HAVE REACHED HAVEN BEC}AUSE THIS ENABLES YOU TO RENUMBER YOUR ENTIRE PROGRAM USING THE FOLLOWING PARAMETERS:A - STARTING LINE, B - NEW STARTING LINE}, C - INCREMENT. THIS COMMAND IS ONE OF THE BEST RENUMBERING UTILITIES FOR THE MACHINE, BUT IT HAS SOME DISADVANTAGES THAT TO} MY BEST KNOWLEDGE NO PROGRA HAS EVER MANAGED TO SOLVE:IT CANNOT RENUMBER THE FOLOWING LINES:10 A=10020 GOTO ATHIS SEQUE}NCE WILL NOT BE HANDLE PROPERLY, BUT AS YOU WILL SEE LATER ON, YOU DONT NEED THIS KIND OF BAD PROGRAMING.ANOTHER DISADVANTAG}E IS THAT IF A PROGRAM HAS LINES FROM 10 TO 1000 WITH AN INCREMENT OF 10 AND YOU RENUMBER LINES 100-109 TO BE 0 TILL 9 YOU WI}LL FIND THEM AT THEIR FORMER PLACE BUT WITH NEW LINE NUMBERS AND THIS WILL CAUSE GRAVE PROBLEMS.6) DEL A,B = AGAIN, ONE OF }THE MORE USEFUL COMMANDS OF "TB". IT DELETES ALL THE LINES BETWEEN A AND B INCLUSIVE.7) DUMP = THIS COMMAND GIVES YOU A LIS}T OF ALL THE PROGRAM VARIABLES WITH THEIR TYPE, USAGE, OR LINE NUMBER FOR PROCEDURES AND LABELS (WHICH WILL BE DISCUSSED LATE}R ON).IF YOU TYPE 'DUMP "P:"', YOU WILL GET A PRINTOUT OF THE PREVIOUS.8) *B = THIS SMALL USEFUL COMMAND TRAPS THE BREAK K}EY. YOU PUT AT THE LINE YOU WANT THE COMPUTER TO JUMP TO WHEN THE BREAK KEY IS PRESSED AND IT WILL JUMP THERE.9)*B- = DISAB}LES NO. 8.10) ERR = WHO AMONG ALL YOU ATARIANS KNOWS HOW TO GET THE LAST ERROR NUMBER WITHOUT SEARCHING THE RIGHT 'PEEK' IN} A BOOK ? WELL IT IS NO LONGER NEEDED. ALL YOU DO IS TYPE:? ERRAND YOU WILL GET THE LAST ERROR NUMBER.11) ERL = SAME AS} ABOVE, JUST THAT THIS GIVES THE LINE THE LAST ERROR WAS FOUND IN. (SAME AS '? PEEK(186)+256*PEEK(187) IN ATARI BASIC)12) -}- = THIS IS VERY USEFUL FOR STRUCTURED PROGRAMING. IF YOU TYPE:10 --WHEN YOU LIST THE PROGRAM YOU GET:10 --------------}-----------------THIS IS A VERY USEFUL DIVIDER BETWEEN DIFERENT PARTS OF THE PROGRAM, ITS MUCH NEATER AND MORE COMFORTABLE }TO FIND THE PARTS YOU NEED.13) DPEEK = SAME AS '? PEEK(A) + 256 * (A+1)'. 14) DPOKE = SAME AS 'POKE A + 256 * (A+1),B15}) A$=HEX$(A) = A$ HOLDS THE HEXADECIMAL EQUIVALENT OF A. (DEC TO HEX CONVERSION).16) A=DEC(A$) = SAME AS BEFORE JUST THE OT}HER WAY AROUND - HEX TO DEC CONVERSION.17) MOVE A,B,C = MOVES A PORTION OF MEMORY FROM A TO B WITH THE SIZE OF C. THIS IS V}ERY USEFUL BECUASE IT ENABLES MOVING PLAYERS AND MISSILES WITHOUT MACHINE-LANGUAGE AND MUCH MORE (RELOCATING CHARACTER SET AN}D MUCH MUCH MORE). IF YOU USE -MOVE A,B,C THEN IT WILL MOVE CORECTLY ALSO OVERLAPPING AREAS OF THE SOURCE AND TARGET ADRESSES}.18) POKE $600,X = ALMOST EACH COMPUTABLE NUMBER CAN BE GIVEN TO THE COMPUTER BOTH AS A DECIMAL NUMBER, AND A HEXADECIMAL P}RECIDED WITH THE DOLLAR SIGN.19) A DIV B = GIVES YOU THE FULL NUMBER OF TIMES B IS CONTAINED IN A.20) A MOD B = GIVES YOU} THE REMAINDER OF THE DIVISION WITH A AND B. (THIS IS VERY USEFUL TO CREATE A REPEATING LOOP)21) TRUNC = TRUE FRACTION CUTT}ING.? INT(-5.7) = -6? TRUNC(-5.7)= -522) ? 5 & 7 = BOOLEAN AND BETWEEN THE BITS.23) ? 5 ! 7 = BOOLEAN OR BETWEEN THE B }ITS.24) ? 5 EXOR 7 = BOOLEAN EXCLUSIVE OR BETWEEN THE BITS.I HAVENT BOTHERED MUCH TO EXPLAIN 22-24 BECAUSE I HAVEN'T FOUN }D IT VERY USEFUL, BUT IF SOMEONE DOESN'T UNDERSTAND OR WANTS MORE INFO, JUST DROP ME A LINE.25) RND = GIVES RANMDOM NUMBERS } BETWEEN 0 AND 1. (PARALLEL TO RND(0) IN ATARI BASIC)26) RAND(N) = GIVES RANDOM VALUES BETWEEN 0 AND N.27) %0,%1,%2,#3 =  }SPECIAL PRE DEFINED NUMBERS WHICH SAVE MEMORY. A REGULAR NUMBER TAKES 8 BITES OF MEMORY WHILE THIS FOURSOME REQUIRES ONLY 3.  }(NOT VERY USEFUL, UNLESS THERE ARE MEMORY CONSIDERATION).28) A_B = IT IS POSSIBLE TO PUT A PSEUDO-HYPHEN INTO VARIABLES TO }MAKE THEM MORE INTELIGIBLE:PLAYER_STRING = 10.29) A$="HIS NAME IS ""DAN"" AND HE'S DEAD" = IT IS POSSIBLE TO USE THIS SIG}N('"')IN A STRING BY USING IT TWICE. IN ATARI BASIC THIS WOULD LOOK LIKE THAT:A$="HIS NAME IS ":A$(LEN(A$)+1)=CHR$(34):A$(L}EN(A$)+1)="DAN":A$(LEN(A$)+1)=CHR$(34):A$(LEN(A$)+1)=" AND HE'S DEAD".MUCH BETTER IN "TB", ISN'T IT ?30) INKEY$ = GIVES T}HE LAST KEY PRESSED.31) TIME = GIVES THE NUMBER OF SCREEN FLIPS SINCE TIMER RESET. SETTING IT TO ZERO RESETS THE TIMER.32}) TIME$ = GIVES THE TIME IN STANDARD FORM. HAS SIX SIGNS AND COULD BE SET THIS WAY:TIME$="233500" - THE TIME IS 11:35:00 PM}.33) PAUSE A = CREATES A DELAY EQUAL TO A SCREEN FLIPS (ONE SCREEN FLIP IS 1/50 OF A SECOND IN EUROPE AND 1/60 OF A SECOND }IN U.S.A.). THE COMMAND ACTUALLY GIVES A BIGGER DELAY BECAUSE IT TAKES RELATIVELY A LOT OF TIME TO BASIC TO PROCESS IT.34) }N=INSTR(A$,B$,A) = SEARCHES THE STRING IN B$, IN A$ STARTING FROM SPACE NO. A. IF A IS OMITTED THEN IT SEARCHES FROM THE BEGI}NNING. N IS THE POSITION IN A$ WHERE THE B$ WAS FOUND.35) CLS,CLS #6 = CLEARS SCREEN OR GRAPHICS SCREEN.36) CIRCLE X,Y,R1},R2 = DRAWS AN ELIPSE USING CENTER POSITION X,Y WITH THE RADIUSES R1,R2. IF R2 ISN'T SPECIFIED, IT WILL DRAW A CIRCLE WITH TH}E RADIUS R1.37) PAINT X,Y = FILL AREA STARTING FROM COARDINATES X,Y (IMPROVED ROUTINE, AND NOT THE 'XIO 18,#6,0,0,"S:"' ROU}TINE.)38) FCOLOR = COLOR FOR PAINT39) TEXT X,Y,A$ = WRITES TEXT ON GRAPHICS SCREENS WITH MACHINE LANGUAGE OR ANY OTHER SP}ECIAL KNOWLEDGE. X,Y ARE POSITIONS ACORDING TO GRAPHICS NUMBER.40) DIR = GIVES DISK DIRECTORY. DIR "P:" PRINTS DIRECTORY. D}IR "D:*.???" GIVES DIRECTORY OF CHOSEN FILES.41) DELETE "D:FILE" = DELETES A FILE. (CAREFULL, NO QUERY).42) RENAME "D:FIL}EOLD,FILENEW" = RENAMES FILENAMES.43) LOCK "D:FILE" = LOCKS A FILE.44) UNLOCK "D:FILE" = UNLOCKS A FILE.45) BRUN "D:FIL}E" = RUNS A BINARY FILE.(DOESN'T RUN EVERYTHING)46) BLOAD "D:FILE" = LOADS A BINARY FILE.47) BGET #1,LOCATION,X = MOVES X} BYTES FROM FILE TO 'LOCATION'.48) BPUT #1,LOACTION,X = RECORDS X BYTES FROM 'LOCATION' TO FILE.49) GET A = GET VALUE FRO}M KEYBOARD. (NO OPEN COMMAND IS NECASSARY)50) PUT A = PUT A BYTE TO SCREEN.51) CLOSE = CLOSES ALL CHANNELS (NO NUMBERS OR } OTHER ADDITIVES ARE NECESSARY)52) INPUT "NAME",A$ = THIS FORM IS NOW LEGAL.53) SOUND = SAME AS CLOSE, BUT FOR SOUND - TU!}RNS ALL SOUND CHANNELS OFF.54) DSOUND A,B,C,D = SAME PARAMETERS BUT ENABLES DOUBLE THE TIME FREQUENCIES.55) DSOUND = SAME"} AS SOUND.56) DO ... LOOP = CREATES AN INFINITE LOOP WHICH COULD BE EXITED BY THE NEXT COMMAND57) EXIT = EXITS THE DO ... #}LOOP.58) WHILE A=B THEN THE LOOP WILL CONTINUE TO THE FORST$} LINE AFTER THE 'WEND'.59) REPEAT ... UNTIL A?YN@`IA@B@6C`((D((EgFMG@!8}HIA "J@KRLM?NOPQRST 8By!9}  PAY@4 \O\$47@<@0,*"06-@<6-U9C:,%A@@)\6!:}.P$47@<@0,*"@06-A`I9C:,%A`@)P6.#P$47@<@0,*"A`06-!;}A@I9C:,%@@)P6.(H$47@<@0,*"A@06-A A9C:,@)H6.-Q2T7!<}O<p6-@6-@'56-%@@A@XF:%@@,"@l%@@pPAQF!=}TKOPT6.19C:,%A%%@@=6-I6-T6.UQZT_Od%2@!>}@P@@86-F:%&@@,X"@)"@)"@c6. 2@ib"6!?}-d:@,$@%A467@,.=:,H-%@@L(VM@b6-@n\ 6-%6.99C:,%!@}A%%@@E6-Q6-\6.s4@"@ 6-%@%.6-%@1A4Ax* P:,"!A}6-@'6-@*A}%!A* AS%6-@6- Ap/%&@@@#M@!B}/U(6-O:&+]@@$@@&@@,,=6-a@@&P:%,I @U6-@!@'6-@'!C}G"/67&@<%@,.=6-%@PG ApG"@/67&@<%@,.=6!D}-%@%G ApG"A`/67&@<%@,.=6-%@G Ap9"A@/67&@<%@!E},.9 Ap 6-%2@7-@@;(?PK6-!F}g2@@}%&@@2@@0@QTO6-@6-%@A!G}09C:,%@K9C:,%%@@@Y6-&@@e6-@2@@QTO9C!H}:,%@@(009C:,%@%@@(009C:,%@%A`@(0!I}09C:,%@%A@@(4 6-66-%@@0&!A )!Ay4PQT ] E86-F:A!J}d,4+(T:,*(,)+"@3*(,8Pl9C:,%@59C:,%%@@@NF:%&@@,Z6!K}-h%lP ?(#6-d:@4,%%%@,6-F:,;"@*(?P"@b*6-!L}"@c*(6-@ *(PL(*d:A,"@'6-36-@L9C:,%A!@"=-"!M}*"*"*"96-@$=P'"@P,> 6-%%9C:,+9C:,%@>9C:,%A!N}`1N!6-%@@-@>6-F:%@@,J"@NP6Q%*@**@9!O}%@@E6-Q;5!A `%)6-56-@@(a@22@A!P}@@@6-@E<(9C:,B6@"@99C:,B6@6-A "!^}J6-@N(`-@3@m(U:By,qPa #A!-@@%"367<,.>:,7 K-@@!_}O"]67<,.>:,a QTOk-@@0@267<%@,.E67<%@,.X67<%@!`},.k67<%@,.% 6-@)6-6-%6-QTO %%@#M@pE2!a}AU@@g2@AT@@2@AS@@B7h@6-U:By!b},!6-:By+@+AVA:6-U:@,9C:,B6@!T- (!c}@+(@I(@ YOU HAVE LOST !T(@&J#(@ :..(@8M@J@w!d}+G(@((@ press startG(@ to play again ..0k6-U:@,"-%A9.@!e}B&@kF:B2y,"@)(T:,@5/ M@ %&@/ A@:2?QD!f}TION2%%@S @$PXh6-@6-6?P26-A`%@@$@6-%@L6-!g}PP\6-h6-A "]x-@@%( - >9C:,A@%@@L6-%AVM@h-@!q}B%DOS SYSB*)DUP SYSB>SFONT1 MICB FONT1FNTSYSBFONT1DATSYSBFONT1 M65BBIGSCRL2ASM\BASIC3 TXT?1INVADERSTUR ySTRPMOVEASMFONTSCRLASMNIR @x( b6-AU @'6-@*@@!*!@ L6-@Z6-%@f6-A!r}`|%%@`@AgQlTqOv+-%@%@8'A(+ {QTOTAdA!s}U'-@@2(T2@@2KE6-F:Ad,-"@3)(T:,0G3@!t}E@wHFKANAdAU'-@@2( N2@@QTOh!u}6-69C:,%@`%@B6-A "P6-&@\"h6-@-@AD2!v}d:@,%@0@@H e-@@6?2@@P Q7716,24,!w}12,24,48,34,12,24,0,24,36,36,60,126,231,165ll0,0,0,1,14,26,26,14,3,60,102,231,66,36,126,195,129,0,0,128,112,88,88,112,192!x},36,24,129,90,90,129,24,36<<66,36,90,255,195,255,66,129,24,36,90,255,231,255,66,36 D:INVADER.BAS l0d#X;------------------------------n DLIVx DL0HSCROLԌ WSYNC Ԗ NMIENԠ#X;-------------------%z}----------- Q>4DLISTPDL Q>5DLIST PDL Q>4DLI PDLIV Q>5DLI PDLIV RESQ> PNMIEN%{}" L1!L1,RESQ>4SCL6P@ Q>5SCLJPT:^ X;---------------------------hDLI5rC|5%> L2QCLR8 PWSY%|}NCPЮQ@7;;SCROL TABLEPHSCROL;;$D4043)>HL2#HL4# L4Q R>4ENDSCLHL5Q& R>%}}5ENDSCL0HL5: RESDL57N?X7b9l"X;-----------------------------v DLIST ==W TEXT  A DL%~}IST"X;-----------------------------$TEXT A THIS IS A DEMO A"X;-----------------------------CLR  ="=$=%}&=( *=,=.=.=, *=(=&=$="  "X;-----------------------------SCL ============%}=================================== ENDSCL3 =%}=============="X;-----------------------------$Ld"X;-----------------------------npxQ>P Q>4DLISTP0 Q>5DLISTP1 Q>4TEXTP Q>5TEXT)}P Q>4DLIP Q>5DLIPQ>P"X;-----------------------------"$>, L8&BUF6 %BUF2@$>J)}L5QLETTERS9TR@7^FL6h2rHL5|L6QADDRESS9PАQADDRESS9PѤ3)>HL10%>#HL10)}# L10$BUF 'BUF2 COPY1%>Q@7 PLINE19&30Q@7:PLINE19D%>(NQ@7X PLINE29b3lQ@7v)}PLINE29%>PQ@7 PLINE393Q@7PLINE39%>xQ@7 PLINE493Q@7PLINE49X;--)}2 2(>* HL8*$>4Q>>PH L12QRHL12\QfR>5ENDTEXTpHL8zQ˄R>4ENDTEXTHL8 Q>4TEXT)}Pˬ Q>5TEXTP!L8!X;----------------------------DLI5Q>#P/QFL9"SCQSC$P.I)}L98Q>BPSCLQ>VP`L97j9t"X;-----------------------------~aLETTERS AABCDEFGHIJKLMNOPQR)}STUVWXYZ0123456789-?., A ADDRbADDRESS ADDR=ADDR=ADDR=ADDR =ADDR=ADDR=AD)}DR=ADDR=ADDR =ADDR$] ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR)}g ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDR=ADDRg ADDRX=ADDR\)}=ADDR`=ADDRd=ADDRh=ADDRl=ADDRp=ADDRt=ADDRx=ADDR| ADDR  SC  BUF  BUF2 )}!X;---------------------------- DLIST p=p=p= T  LINE1 T LINE2( T2 LINE3< TF LINE4P )}p=p=pZ Ad DLISTn"X;-----------------------------xBLINE1 A A)}BLINE2 A ABLINE3 A )} ABLINE4 A A"X;-----------------------------TEXTN A )} THIS A TEST FOR NIR'S SCROL AND I HOPE IT WILL WORKA ENDTEXT(MTO BARTCS CT HT PU FD 100 RT 90 FD 100 LT 90 PD PU FD 15 PD LT 135 REPEAT 5 [FD 15 RT 9]END,`/