@L|}6CD l0C)HCC WhL/h `CmCDiD`  R@W1  Y0@R !L` D  C D     )16CS S)  C)D1 p p 0 C9DI pCDL~CiCDiD` D  C D     )16CS S)  C)D1 p p }0 C9DI pCDL~CiCDiD` DD˙` d J)L !}D L(( LL()  L| L( S LH 0p n  } CY?  q  L L  ` )} `A! d߰")-݆ "  $G@LLL&0") $G% }H0 3S8`G ȱG ȱG   Gȭ Gȭ GG}GHiH8(()) G$H% `(0 })8` d)L ݆ & LGȘ ݆LL d  ! LL d)N>Q  HH) }  hyhyB q L> Lm JJ  Ln*` dB%' }8  H H` 1 { LL   !L     Hh SY?  q  1L }  !? S   q 1 L   Ll  Lg E`L   !L)  q 1L}) `L0AM݊L݉ ML  N݆LLLNLMLHG!@}1F GȱGLLEEȩÑEȑEEȑE Ed E7EȩE  q} L !,0,0SGɛ L 1 !L EHEh W G gLLSROTCES EERF } G) *Gȩ GȽG GȌd q q G`  8   0G  `D}CEDC0X:Ȣ Y ȱC* ? 0.. , 0%n ?A[ 0 : L`L  `, 0`Y}`piH n0)բY? 08`0 }  0$L GGȽG L `8L`L}8`  05G)݁,G)ȱGȱGHh0})Hh` B! 8`8iiiLE`}E8FEh( l0`ɃLL L8^~jj8jHi hEEEiEȱEiE` dTE} H8EEȱEEȩEh J E8   . m  i`LI!)E1FR}1LJ舩9GIH`LJJ`HGHh l`} S gL   8 rii `дCDCG W  }C  Lq` X٨`DOS SYS IIIIIIIIIIIIIIIC`0 ߩ0}}}CE  |||DDOS DOSDOS SYS }}} }CDOS SYS} 0`BDELV !B }`LVUQ   ]   TU J ]L!T  #      TU  } L ? .  t`GBJ V~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI   0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DELV䌚 !B y`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J V (` 9 V⪍ ઍ  -'}LLu DEHILV 9 .l 9 .l  `` s$B VBH(}I|DE V BLV nB,DE J V* \*` B V BLVDEHI BLVL)}1u H232435; 1 ;  hh@2 e1i1LHҍ 00) 08 109hh@ Ҡ2e*}1i1232435ޥ<<8} 3E:}DISK OPERATING SYSTEM II VERSION 2.0SCOPYRIGHT 1980 ATARIA. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDGE J. D,}UPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRESSF. LOCK F-}ILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES9!&x#!7&p))'&X*./)L''-؆莟.}R'S  vW DEHHI 1A#! @ ~0ɛ8A0.) ȅ 1 1i/}il ! 1L NO SUCH ITEMSELECT ITEM OR FOR MENU! 0 .{z:*{}.|~ 1 0 00}JB 18L^%|DLl%DIRECTORY--SEARCH SPEC,LIST FILE? # 0 0 n&|D! 1L NOT A DISK FILE1}N !B 1L " 1 !BDED:}:1BJ|DE 1DEBH2}I 1 h0ߢ 0.  0?詛 1 ~0YЛ 1 "L<" "L 3} BL1TYPE "Y" TO DELETE...DELETE FILE SPECCOPY--FROM, TO?OPTION NOT ALLOWED COPYING---DN:4}# 0|D .L$A#B#C#JB|DE 1BHIDD#E 1D#0: B5} 1L B#C#C#B# B 1N#$0SYS1}:e#D# d# D# .d#ȽD# d# 𩛙d#X# 1,A#6}PdD#ELO- A.BJdD#E 1 1HH 0hh|DL^%1}:e# Lt% e#dD#EL%7} 1 0 . .0% 1L WILD CARDS NOT ALLOWED IN DESTINATION 0 A.|K@C}//3Hu ξL/L DRIVE TO WRITE DOS FILES TO?WRITING NEW DOS FILESTYPE "Y" TO WRITE DOS TO DRIVE 2.?}D2:DOS.SYSERROR - NOT VERSION 2 FORMAT. , &* բ( 1L `[) 0NΞ 0 L1M) 1@} L BAD LOAD FILELOAD FROM WHAT FILE?) 0 0#B 1L WHAT FILE TO LOCK?) 0 0$B 1L WHAT FILE TO UNLOCK?DUA}P DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO USE PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV. h  ,B}  `)  <0 2 2 0  ,   ,,ޢ* 1L ,K* 1 ~0 0C}FINSERT BOTH DISKS, TYPE RETURNERROR - DRIVES INCOMPATIBLE., 1 ~038  , 1L D}, &*  Lz+, 0 , 1 ~0 + Y,0!,0 ,L+ ,mm  v,"ǭE}0Ξ, 05,Lt+L +,Hh` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNF}INSERT DESTINATION DISK,TYPE RETURN`    `L,8,0( rG}L1(`ߢ) 1* 1 ~0Y`hhL S SL1) 8`NAME OF FILE TO MOVE?- 0 0|DLtH}% A., 1 <0 0 .@L# .BJ 1  DEHIB V L1 ,5 1 <0,L. I} JB|,A#Pd#DE 1 HI BDEHHII 1 B 1 , 1 <0,0Lf- B VJ},A#P, 1 <0 0L#L ߢ) 1* 1 ~0Yj383}mm ݭK}}`8}``|* ? ɛ,`|:(|/ 1L `DESTINATION CANT L}BE DOS.SYS0 0H{ $22Δ $28/L /) $2 Π $2 0 ξM}hAΞB,0 J 1 BޝDEHI,HDE 1HIHIDELSAVE-N}GIVE FILE,START,END(,INIT,RUN)O X0 1`BDEPHI V` X0H 1 L O}0 0 1L0`PLEASE TYPE 1 LETTER,0`hhL <0 1L0LA1 ,;ɛ7,"ɛ:ݦ1ݥP}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{Q}NAME TOO LONG B VL ` L1I H1EӝDL1|mDiE` V0`8d/8 i:"2!22 1R} L ERROR- 128ɛ+,' 20*.. өw2 1``2TOO MANY DIGITSINVALIDS} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D42uT} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D42uEiͩkΩ͙kCopj`j {j`Hi͝Νh`V}L"OLLEH:D"NUR:81.RGkΩ͙kCopj`j {j`Hi͝Νh`56 NUMBERPROGRAMLOADMCHOICNUMBELODEICBLANLL$$ @!0 X}@A @ @$ @1 ?&&##MENU FOR ATARI BASIC ROUTINES&&VERSION 2.1 (c) 1982 Jerry White'' Y}*********************************NNDATA WITHIN QUOTES IN LINES 50 AND 70 AND (##) ARE INVERSE VIDEO''******** Z}*************************w +AR@90@@@S0@@@e@@ [}w@@9b1;@6,;@,;@,;@8,>(>:A%,P-@bAU@(K67 \}@,.>:AF,367@8,.>:AF,K67@,.7@,2D.(&ɠàӠ٠٠Š2(DB2y ]}<b-@@ ""(+6-B:,A-%@%@W-%@@0^(.b ?J-@B ^}:,*6-@:7<,,%A(2(>:,6 J"@ @e@#-@(>:A`,# AB2y( F} _}AR(9( Ԡ͠ҺK@f@Y(>:AS,k@f}AU@K- `}AdAU @#- BP% 6-P:," @)!@ %%Z!@A[:#@%$@ a}"&6.D::67B:,%@,.\`AR@'@@4(>:A%,7(R( LOADING FROM \ @ b}`%]%d$$COMMON SUBROUTINES,ENGLISHn%%USING THE JOYSTICK,JOYSTICKx""USING THE PADDLES,PADDLE c}USING A TIMER,TIMER++INTERPRETING THE KEYBOARD,KEYDEMO##SETTING TAB STOPS,TABDEMO**RIGHT JUSTIFIED d}AMOUNTS,RJUSTIFY&&DICE GAME GR.0 GRAPHICS,DICE&&MIXED GRAPHICS MODES,MODE123))TEXT IN GRAPHICS MODE 8 e},GR8TEXT!!MONTHLY BAR GRAPH,GRAPH##SORTING A STRING,SORTDEMO&&MUSICAL END ROUTINE,MUSICEND##D f}EEP BASS SOUNDS,BASSNOTE SOUND EFFECTS,SOUNDEMO++BINARY/DECIMAL CONVERSION,BINCONV''PLAYER MISSILE S g}TRINGS,PMDEMO%%DISK BASED INVENTORY,INVENT""DELETE BASIC LINES,ASCII"$$BASIC DISK UTILITIES,ASCII,a h}(>:A%,"@@4@@97(a(%DELETE LINES AND BASIC DISK UTILITIES6W(0(%ARE DESIGNED TO BE ENT i}ERED WHILE YOUR3(W(OWN BASIC PROGRAM IS IN MEMORY.@Y(1(&SEE DOCUMENTATION FOR FURTHER DETAILS.Y(# PRESS ANY KEY j}TO RERUN THE BASICJ+(( MENU PROGRAM+AdAUT@+F:Ad,AU)F:B2y,@=AdAU@% k}^ A@D:MENULOADMCHOICNUMBELODEICBLANLL$$ @!0  XPITCHOLTIMQUARTERNOTCTRLA@@ @7&&BASSNOTE TUTORIAL m}BY JERRY WHITE;;ORIGINALLY PUBLISHED IN A.N.A.L.O.G. 400/800 MAGAZINE! A AP! A(e%2n})"56-@A6-@U0@e2*<-@@ 9( SOUND 0,o},, <$2n-@A =2I6-U6-a6-k @p}Bn$F-@@P $P@-@@% =2@$d<<102,90,85,82,75,7q}2,67,67,60,57,60,67,75,67,51,60,75,90i5-@@! @@+ @P5 @Pn+ @@ @p! @@+r} @px! @@ @P! @P+ @@ @p! @@+ @p! @@ @P! @P/-s}@@! @@+ @p/ + @@ @! @@+ @ @@ @# m# @@t} @P,ARL( PRESS OPTION TO RERUNm( PRESS START FOR MENUF:B2y,"@%u} F:B2y,@A00(>:A%,(%( LOADING MENU0%D:MENU#(( PITCH = NOTE# A,'('(2v}5=E27=D#28=D 30=C#6%%(31=C 33=B 36=A#37=A @%%(40=G#42=G 45=F#48=F J%%(51=E 55=D#w}57=D 60=C#T%%(63=C 67=B 72=A#75=A ^%%(82=G#85=G 90=F#97=F h (102=E A|+(+( THx}E ATARI BASIC SOUND COMMAND:;(.(#SOUND VOICE,PITCH,DISTORTION,VOLUME8 A;$XP +AR@) Ay}P(" THE THEME FROM BARNEY MILLERl;(.(#BASSNOTES USING SOUND DISTORTION 128 A;$,-@@6z}%(>:@,) ,$##***************************** ##* D=DISTORTION V=VOLUME **##* GOSUB 50 FOR WHOLE NOTE *{}4##* GOSUB 70 FOR QUARTER NOTE *>##* GOSUB 80 FOR EIGHTH NOTE *H##* GOSUB 700 TO DRAW A LINE *R##**************|}*************** D:BASSNOTEERNOTCTRLA@@ @7&&BASSNOTE TUTORIAL "h\ m BDHGDLDDIGIDD@f @@BI~}NARY TO DECIMAL AND DECIMAL TO BINARY CONVERSION PROGRAM(c) 1981 by Jerry White//ORIGINALLY PUBLISHED IN COMP}UTE! MAGAZINE**P.O. BIX 5406, GREENSBORO, NC, 27403*;@,;@,*6.00000000K +'0@}9AR@K-@@ N%(TYPE B TO CONVERT FROM BINARY((N(! TYPE D TO CONVERT FROM D}ECIMAL";#@@K:0)@;@$"@f@P&"@hA( @4}2(>:A%,*0@66-HAR@K(u(%BINARY TO DECIMAL CONVERSION PROGRAM: AU}`a55LINE 100 HAS 8 INVERSE VIDEO SPACES FOLLOWED BYb77TWO NORMAL VIDEO SPACES FOLLOWED BY TWO UP ARROWScWITH}IN THE QUOTESd(( enR( ((7@<@,4E2+5(G( LOADING MENUR%D:MEN}Up7@<@,4R%x6- A`$$7@<@,40A 6-%A($$7@}<@,40A@6-%@d$$7@<@,40A`6-%@2$$7@<@,40A}6-%@$$7@<@,40A"6-%@,$$7@<@,40A 66-%@}@$$7@<@,40A@J6-%@T$$7@<@,40AU^6-%@c+-@@}(+(BINARY =d/-@&@( /-@@h((DECIMAL VALUE=rL(( TYPE E TO END}.(TYPE R TO RERUNL(OR TYPE A BINARY NUMBER. B As(>:A%,*0@<AR}@?(i(%DECIMAL TO BINARY CONVERSION PROGRAM:s A@@LINE 510 HAS 5 SPACES THEN TWO UP ARROWS WITHIN TH}E QUOTES(( U( ((+7@<@,4E5+8(J( LOADING MENUU%D:MENU}7@<@,4R%$ A$A:,!AUA! 6-A:,6.&-@@06-A:,'@}6-P:,:3 "P:,)67@ &<@ &,.03 AD 67@ &<@ &,.1N 6.=:,X  0-@@}(0(DECIMAL = *(( BINARY VALUE=4M(( TYPE E TO END.(TYPE R TO RERUNM(OR TYPE A DECI}MAL NUMBER.> B A D:BINCONV@f @@BI4ab DDTIMCLICSTAKBEWAIROLTOTAPPOINBUZPITCOFVOLUMWONTWOTHREEFOURFIVESIXDICIERAS@@}@AAA@ @ @! AQ @ "}3DUAAH@D +AR@) @DDICE DEMO BY JERRY WHITE( $}1( $2( $3( $4( $5( $6 GG;@,;@,;@,;@},;@,;@, AA160,160,160,29,30,30,30,160,148,160,29,30,30,30,160,160,160 AA148,160,160,29,30,30,30,160,16}0,160,29,30,30,30,160,160,148 AA148,160,160,29,30,30,30,160,148,160,29,30,30,30,160,160,148AA148,160,148,29,30,30,30,1}60,160,160,29,30,30,30,148,160,148AA148,160,148,29,30,30,30,160,148,160,29,30,30,30,148,160,148AA148,148,148,29,30,30},30,160,160,160,29,30,30,30,148,148,148=-@@")67<,.>:,- 7 @:(=(=-@@}")67<,.>:,- 7 @:(=(=-@@")67<,.>:,- 7 @:(=(=-@@"})67<,.>:,- 7 @:(=(=-@@")67<,.>:,- 7 @:(=(7-@@")6}7<,.>:,- 7 @-@A o +'0@@9@@K@@9}]A@oAR@-((TEXT MODE GRAPHICS!(-6-A(#(( CRAP GAME# Ad-}@@nG%6-P:H:,$@,%@G6-P:H:,$@,%@x2 A0-@@# 26}-?:BG(,2 A@-@"@# 26-?:BG(,  B$Q0@@)6-;-}@@Q( YOU HAVE $ ;-@@)-@@7(>:AV,; W-@@'AR};(PLACE YOUR BETE A WAdAUG A B-AR@3( G"A0}* 6-P:,* @)!AA%6-%@%!@A= A6-%="@)"@})"@A!!"@)"@A8 6--@@8(YOUR POINT IS   A  }A0,) A6-%)"@A6  A  A0@ A.0@@@.CRAP}S YOU LOSE9-@@1( YOU LOSE $ 96-&W-APAP32@@W2@}%@@@ O'2@%@@@K2@%@@@O  7-}@327  C A #+&(=(EASY COME, EASY GO@(C A  A}X80@@@87/11 OR POINT....YOU WINb9-@@1( YOU WIN $ 96-%l@ -}AP@6@<2@@@ nX -@6?P<2@X2@}@@p?2@@@;2@@@? v A  A-@A} $`AR@'-@@B(BET FROM 1 TO 100 L A V A ` A0-@@ })B2y- 0$ - +("( LOADING MENU-%D:MENUD:DICEURFIVESIXDICIERAS@@XZERWOTETIMESECONDKOLOQUIEANOTLOCATIOSETWOFVOLUMPITCBLINKEBUTTOBUZCOUNBLINKWAISTALSUBS}UHEADINGTIMVOICDISCOUNSNREVERSIJ@@@ @!@%@0@5@! }@ @t8H @@@@E@P@UA@`A@ }  @e!"A`#@377ATARI BASIC SUBROUTINES IN ENGLISH BY J}ERRY WHITE11ORIGINALLY PUBLISHED BY ZAPATA MICROSYSTEMS??THIS IS A TUTORIAL PROGRAM DESIGNED TO DEMONSTRATE ITS}ELFGGBEGINNERS WILL FIND THE SUBROUTINES USEFUL IN DEVELOPING PROGRAMSMMLIST THE PROGRAM TO DISK OR CASSE}TTE AND START A LIBRARY OF SUBROUTINES VARIABLE DEFINITION c6-6-@'6-@36-@ ?6-}@!K6-@%W6-@0c6-@5 S 6-%6-@@#6-@E/6-@P;6-@UG6-@`S6-@e} 77OPEN IOCB #4 AS THE SCREEN THEN SET TIMER TO ZERO-#@@S:- @ 11DIMENSION STRINGS }AND SKIP OVER SUBROUTINES;,;@0, A<<LINE 20 RESETS TIMER AND LINE 21 GETS THE CURRENT TIME$-}@@ ! $$N6-#-@@ 66-$AV%F:,: K6-P:'@`,N$,,SET GRAPHICS M}ODE AND BACKGROUND COLOR+0$TURN OFF ALL SOUNDS"-@2 "$"PING SOUND ROUTINE}#-62 $'BLINK INVERSE VIDEO(J6-@0-@/AU@3 ?AUC G} J$,..GET FROM KEYBOARD AND RETURN NUMBER AS K-6@K:#)(66-&@H.!@ (}(>:,$/(( OPTION $1SENSE BUTTONS (B)2/AR(/(PRESS OPTION FOR OPTIONS3N6-F:B2y,}"@0-@@ K( N$4F"@!-@@ <(SELECT KEY WAS PRESSEDF @Q}5F"@!-@@ <( START KEY WAS PRESSEDF @Q6 @Q7MAKE CONSOLE BUZZER SOUND8$-}@PB2y! $$;HESITATION ROUTINE< - $@TURN ON A SOUNDA 2$c==IF YOU GOT HER}E, YOU DIDN'T ENTER THE PROGRAM CORRECTLYdK(0(%CHECK YOUR PROGRAM. YOU SHOULD NEVER3(H(GET TO LINE 100.K&KKRES}ET ANY TRAPS, PICK A RANDOM COLOR, GOSUB, THEN TURN OFF THE CURSOR. B6-H:,$@" .ARLLSUBROUT}INE MENU (LINE 220...TYPE ALL WITHIN QUOTES USING INVERSE VIDEO""6.ŠŠҠ+@@ '-@ }@+(((1 SET CLOCK TO ZERO((2 PRINT SECONDS((3 SHUT OFF ALL SOUND"("(4 ONE SHORT }CLEAR SOUND" ( (5 BLINK INVERSE VIDEO,((6 SOUND THE BUZZER6((7 TURN ON A SOUND@((8 EXIT THIS PR}OGRAM22READ FROM SCREEN AND CHANGE TO INVERSE VIDEO3 A 6-$@# 3-@ $%<-@ @2}!-$%.)@<6-%A( -$%*@ 6-A  $A  AO } -@ @4(THE CLOCK HAS BEEN7(H( SET AT ZERO.L O$<  -@ @5( SECONDS ELAPSED}.9 <$ <  -@ @5(ALL SOUNDS ARE OFF.9 <$P -@ @1(TYPE PITCH (0-255); A@}?I BM P$   $p   $X;  ( (#(TYPE VOICE (0-3)- Ap1; Bb )!@Ap}6((TYPE PITCH (0-255)( Aq,6 B )!AUAq P((TYPE DISTORTION AS8(0 2 4 }6 8 10 12 OR 14B ArFP B* )!@Ar4'P:',Ar6((TYPE VOLUME (1-15)( }As,6 B )!@As   $?GGRESET LEFT MARGIN TO TWO, RESET GRAPHICS MODE TO CLEAR THE SCR}EEN@9@+(9( Your wish is my command!J%D:MENU>>SET THE BACKGROUND COLOR TO DARK BLUE, CLOSE }SCREEN IOCB%0@@"@% D:ENGLISHOFVOLUMPITCBLINKEBUTTOBUZCOUNBLINKWAISTALSUBSB0dvPP@@@@@ %%JOYSTICK by Jerry White 11/6/81(A +@(@ }#(@A(@ JOYSTICK DEMO2-(@-(@ BY JERRY WHITE<E(@(@$(@ }E(@ PLUG JOYSTICK INTOF.(@.(@ JACK NUMBER ONE.PF(@(@$(@F(@ }HOLD TRIGGER TO DRAWZ##(@ RELEASE TO ERASEd R:,@A0n T:,@A0x } A/6-@6-@/STARTING POSITIONd +@AdAU1AR@K0@ }Z6-R:,d Ac6-R:,'F:Ad,AU1+CAdAUF(X( LOADING MENUc% }D:MENU"@AP+"@6-%@+6-%@+"@6-&@+6-%@" }@6-%@+"@ 6-&@+6-%@+"@6-&@+6-&@"@6 }-&@"@6-%@"@6-&@ 6- 6- }!@96-@9!@6-@"( STICK(0)=,%B2y%CLICK SPEAKER6 T: },"@A0@) 6-6-@,) APJTRIGGER PRESSEDT ,^ @,h 6 }-6- AP D:JOYSTICK@@@ %%JOYSTICK by Jerry White 11/6/81(A +@(@ %YZr AAMTJWPPDDDDJMOHAMJTAMKKKKKJVOJAFEMAAPMAJUJUAUSEOCNODEA Ab $}@@fBB@Bu B @ @ @0 ?F8F@1fffg@0@@$$}@@@@@@ @0@ @@ @0@ @ @ !@0$}"@ d##GRAPH (c) 1980 by Jerry Whiten//ORIGINALLY PUBLISHED IN COMPUTE! MAGAZINEo**P.O. BOX 5406, GREENSBORO, NC$}, 27406px0&;@ ,9@,9@,0 A[ +@'0@@@A0@@@$}[0@@96-@6-/6. MONTHLY GRAPH9 Apg @,@@ 1/AX$}@ C/AX@uU/@@ug/@@  AK%6-F:A`,%F:Aa,$AVK6-F:%@$},%F:%@,$AVZ-@B:,>6-BsD%++@:7<,,&@2,$@,Z6-%$@ %%&@7-$}@,%$@ F:%,0 4 7$)-@@ 8,!)6-8, 6-'@e<-@$}@,6-@u&+8,',868,-P:,< *B 6-P:'A,* A*A 6-P:'A,* A$}*A 6-P:'@,* A 6-P:,16-'@6-P:&,16-P:&+$@,,"-6-P:&+$@$},,-6-P:&+$@,,,3 6.=:,6-@&B:,)6-@3 Ap6!! @)!@A`@3 6.=:,$}6-@&B:,)6-@$3 ApJ3 6.=:,6-@&B:,)6-@83 ApT3 6.=:,6-@&B:,)6-@R$}3 Ap^3 6.=:,6-@&B:,)6-@f3 Aph9@'@@@9AR@r$}2(2(' K J F M A M J J A S O N D|//(' E A E A P A U U U E C O E//(' Y N B R R Y N $}L G P T V C%-@@%6-&@,@%+$@,8,/@%%+$@,8,!!/@%$}%+$@,@u!!/@%+$@,@u-@%+$@,8,=Ae@=@@$}S:A -@6@928,@= A 9@@'@@9$}9AdAUg+F:Ad,AU)F:B2y,@5+GAdAUJ(\( LOADING MENUg%D:MENU $} A[ +'0@A0@@[0@(( MONTHLY GRAPH$}-(*( TYPE AMOUNTS FOR EACH MONTH:-()&( DO NOT USE NEGATIVE AMOUNTS)(&5 AP(JAN=+68@$},-5 B05 A`(FEB=+68@,-5 B:5 Ap(MAR=+68@,-5 BD5 $} A(APR=+68@,-5 BN5 A(MAY=+68@,-5 BX5 A(JUN=$}+68@,-5 Bb5 A(JUL=+68@,-5 Bl5 A (AUG=+68@,-$}5 Bv5 A0(SEP=+68@ ,-5 B5 A@(OCT=+68@,-5 B5 A$}P(NOV=+68@,-5 B5 A`(DEC=+68@,-5 B$D:GRAPHAb $wNOGSECBYTRECDESCBLANRECORARRASECTOBYTCHOICERWAICHOICNUMBEITEML@@(} FFINVENTOR(}Y TUTORIAL PROGRAM TO DEMONSTRATE RANDOM ACCESS UPDATING*** BY JERRY WHITE ***(;;ORIGINALLY PUBLISHED IN A.N.A.L.O.G(}. 400/800 MAGAZINE2R<9A,9A,;@0,;@0,;@,H6-R APd&&*** CREATE INITIAL (}DATA FILE ***n(-@@0$67<,. ( x6@6@@ D:DATAFILEK67@<@(},.,K67@<@0,.,ITEM DESCRIPTION FIELD-@AM @)67@<@,.00C6(}7@<@,.=:,M A L A(67@<@,.0B67@<@,.=:,L A 67@<(}@,.=:,6667@<@,.=:H:,$A%A,) @(!(RECORD %() @ (}AP,*** CREATE INDEX ***6%"@6-A% A@J A @@@@ D:(}DATAFILEJ Bh&-@A&@|.(.(RECORD  SECTOR  BYTE & 68,-68,-"(}@& %@@%6-@$$*** RANDOM ACCESS DATAFILE ***6@6@@(} D:DATAFILET(>:A%,(2(TYPE D TO DISPLAY A RECORD5(T(TYPE U TO UPDATE A RECORD04DA(}D4UA X(>:AS, A@A()(TYPE RECORD NUMBER TO DISPLAY3 A7A B"" *!)}*"P:,A`4(>:AS,*(INVALID RECORD NUMBER4 A@8,8, 5@(>:A%, )}(.(RECORD 1(5( B(%(PRESS ANY KEY FOR OPTIONS:7AdAUB@4G+F:Ad,AU)F:B2y,)}@=AdAUG APH A D(,( TYPE RECORD NUMBER TO BE UPDATED6 A :D B"" *)}!*"P:,A `4(>:AS,*(INVALID RECORD NUMBER4 A @8,8,@(>:A%)},((RECORD ((X($(TYPE 1 TO UPDATE QUANTITYE(TYPE 2 TO CHANGE DESCRIPTIONX(TYPE 3 TO EXIT )}A B7  @)!@)P:,-(>:AS,7 A$AAA8:@8)},8,% @0@: APL\(1(&TYPE POSITIVE NUMBER TO INCREASE ITEMS\(&TYPE NEGATIVE NUMBER TO DECREAS)}E ITEMSt A B%6-A:7@<@,,%6-%B!A (>:AS,8(ITEMS CANNOT EXCEED 9)}99B AK (>:AS,A( ITEMS CANNOT BE A LESS THAN ZEROK A M @)67@<@,.) }00C67@<@,.=:,M AL A(67@<@,.0B67@<@,.=:,L A'67@) }<@,.=:,' A((>:A%,(!(RECORD $((((2(2('TYPE NEW DESCRIPTION UP TO 22 POSITIONS<) }6-B:,P>!@"(>:AS,>(FIELD TOO LONG, EXTRA IGNOREDd"@"A x+-@"'67B:,%@) },. + $67@ <@0,.$ A7(>:AS,(7(DATAFILE NOT ON DISK:TRAP 40000%-@A) } % AP((*** INITIAL DISPLAY OF OPTIONS ***b +@(@9(@ INVENTORY OPTIONS:D(@)}b(@ 1= CREATE FILEX(@/(@ 2= DISPLAY/UPDATE:(@X(@ 3= END PROGRAMT)}@.@@K:;)@F@T6-&@H!! @)!@APU +)}@@90@UAAA`p? +@@"(4( LOADING MENU?%)}D:MENUD:INVENTRECDESCBLANRECORARRASECTOBYTCHOICERWAICHOICNUMBEITEML@@(@WHQEHOLOF@@@@@@MUSICEND BY JERRY WHITEdK +'0@-}@9@@K@@9nE( (-( MUSICAL END OF JOB ROUTINE0(E( by Jerry White-}x1( (1("ENTER THE DURATION OF A WHOLE NOTE A  B!AU6-AUSAR@-}(,( WHOLE NOTE==6-P:'@,@(S( HALF NOTE=-6-P:'@,(-( QUARTER NOTE=66-P:'@-},(,( EIGHTH NOTE=6 AA@ F:A@,!A$5%2@H@@-}+6-5 A5%2+6-5 A5%2@c@@+6-5 A-}5%2+6-5 A5%2@c@@+6-5 A5%2-}+6-5 A5%2@W@@+6-5 A5%2+6-}-5 A"5%2@c@@+6-5 A,5%2+6-5 A6%2-}@@Q@@G2@G@@i2@@7@@2@@1@-}@@'( (( THAT'S6-' AJ& A`( ALL6-& AT%2@@H@@G2-}@E@@i2@@5@@2@@)@@^Q 6- A A`-}/@@AARD(G(Q Aph:-@327 :$rG(&( -} PRESS OPTION TO RERUNG( PRESS START FOR MENU|F:B2y,"@% F:B2y,@A- +- }("( LOADING MENU-%D:MENU D:MUSICEND@@@MUSICEND BY JERRY WHITEdK +'0@,8Z[[*,*CERASEPMBASPMGDATPMADDATSYNVVVBNBBOMPLLINENUMNAMELINLNUMBE1"} 1#}99PLAYER MI1$}SSILE DEMO/UTILITY (c) 1981 by Jerry WhiteGGNOTE REMARKS BEGINNING AT LINE 9500 FOR PROGRAM ENTRY INFORMATIONCCIF YOU1%} DID NOT PURCHASE THE DISKETTE VERSION OF THIS PACKAGE.&&******************************** ;@, PLAYER CURSOR1&} 6.(p 1B2w'B2H1 A*** SUBROUTINES ***6-?:C:,<,6-?:C:,:@$F:@,%@@,[B2HF:@,$@%@He @:0)@(-F:@1)},F:@,0(>:,<h667@<@,.>:@$F:@,%@@,[B2HF:@,$@%@He @h1*}$>%%*******************************?%%STRINGS FOR ALPHABET OF PLAYERS@%%*******************************A!6.d1+}<>````nnff>>!$H!6.dffff~~ffffff!1-}$I!6.d~~~~!$J!6.dff<<!$K!6.dffllxxxxllff!$L!6.d``````````1.}~~!$M!6.dccwwkkcccc!$N!6.dffvv~~~~nnff!$O!6.d<:A(,6 @0J-@@@VB2H14}Z l-@@{(@J @% @:E,667@<@,.>:A(,HB2HA R @0o-15}A @6@{B2H s-@@$(@E. @%7 @:R,W67@<@,.>:A(16},iB2HA s @0e -A @6@,B2H0 B-@@Q(@R[ @%e 17}@0{-@A#B2H' 9-@@H(@RR @%[ @:Y,{67@<@,.>:A(18},wB2HA  @0<-A A6@HB2HL ^-@@m(@Yw @%19}kA@'-@@6(@@ @%R-@@a(@k @%k-@@1:}$(@. @%@-@@O(@Y @%kA@ @:E,B2H@>67@1;}<@,.>:A(,H @0d-A(AD@~67@<@,.>:, @0p -@A`1<}'B2H+ H-ADA(6@b67@<@,.>:,l @0p .-@@$(@. 1=}@%"-@A 8-AP@6@T2@@X z21>}B2H,_-)-@@I(@ M _A@16Z-@1?}@)(@PLAYER;-@@P(@MISSILEZ @%@Z @:T,,67@<@,.>:A',1@}6 @0J-@@AVB2HZ E5-@@$(@T+6.5 @%J @:E,B2HA1A}R>67@<@,.>:A,Z-AA(@t67@<@,.>:,~ @0 M0 -ARA1B}6@,B2H0 O.-@@$(@E. @%Tc @:X,,67@<@,.>:A(,6 @01C}S-A A 6@_B2Hc Y.-@ @$(@X. @%^b @:T,B2HA:1D}-A'AD@T67@<@,.>:,^ @0b c'-AA(#B2H' hH -ADA(1E}6@:67@<@,.>:,D @0H m.-@@$(@T. @%|-@@+01F}@G-@AP@e2@$@2@$@A  1G}%2G2@S6-@eB2wwA-@1H}AUA E @%+)AA@;A ARE AP *** SETUP P/M G1I}RAPHICS ***8A8;AU,;@,;@$,$6-F:A,&@$PM AREA(AY@1J}b(SINGLE LINE RES.BBy&A@1&PLAYER 0 COLOR&6-+%@,$AV&PM0 BASE""6.1K}hhh̢`[[6.Qhhhhhhh˙e΅ѥ`!B21L}w@!ENABLE PM"@A *** CREATE P/M STRINGS ***(Pb(>:A%,"A @1M}-@M@@K:_AR@b(UL;AU,;@,'6-I( CREATE PLA1N}YER STRING:L(d0(0($ENTER PLAYER MISSILE NUMBER (0 TO 3)i9 @P6-&@H9 )!@AR k61O}-%@67<,.>:,n9 Ap((9( ENTER VERTICAL POSITION (40-230)p9 @P6-&@H9 @)!1P}@ AR0q? 6- @P!6-&@H? )!@ AR0r9 6- @P"AU/6-$@%1Q}9 AR9s/6-&@H/ )!@ AR0u;6-$A%$@%; @@)!A0AR0w6-%1R}@67<,.>:,x/ Ap((/(HOW MANY BYTES (1-255)y9 @P6-&@H9 @)!@ AR@1S}z/ 6- @P"AU%6-/ ARP{G6-&@H6-! @P-"AU=6-$@%G ARP|/61T}-&@H/ )!@ AR@;6-$A%$@%; @)!AUAR@6-%@67<,1U}.>:,;(>:A%,(-( ENTER  BYTES:;-@& Ap(&( BYTE = 9 @P6-&@H1V}9 )!@ ARp/ 6- @P"AU%6-/ ARy/6-&@H/ )!@ ARp1W}9 6- @P"AU/6-$@%9 ARy/6-&@H/ )!@ ARp;6-$A%1X}$@%; @)!AUARp16-%@67<,.>:,# 16-%@B(>:A%,((B(&ANOTHER 1Y}DRWG IN THE SAME DISPLAY (Y/N)D @P"@-67<,.>:A(,:(>:A%,D AR @xAR1Z}67<,.>:,dB2H'Af4(>:A%,7(a(%ϠҠŠǠΠҠͺd(*1[}(*((1) FIX LINE # AND STRING NAMEH)(!(2) MOVE THE CURSOR OVER THE LINEB( AND PRESS E(H("s3(ź IF1\} DATS$ CONTAINS A (>:@4,),R( CHANGE IT TO A BLANKs( AND ADD THIS NEW LINE:,T%( NNN DATS$(X,1]}X)=CHR$(34)((Q($WHERE X IS THE POSITION OF THE BLANKT(&6-P:'@,&Af@@"6( 996 DATS$1^}=>:@4,>:@4,@ A`W"@M(996 DATS$(1,90)=>:@4,7@<@,>:@4,W AU`1_}A(996 DATS$(1,90)=>:@4,7@<@,>:@4,(997 DATS$(91,180)=>:@4,7@<A,>:@41`},J@(998 DATS$(181,)=>:@4,7A<,>:@4,J A`??( 997 DATS$(91,)=>:@4,7@<1a},>:@4,pQ @%AR1B2wCAfN@QX" @%AdAU1b}"$(#e +A1AR@CA@F(I(e( ҠŠϠ<#](0(% This pr1c}ogram demonstrates the use3(](%of Player Missile Graphics and can beP#D(0(%used to create strings from decimal3(D1d}( player data.d#](0(% Special thanks to Fernando Herrera3(](%for his contribution of the assemblerx#I(0(%routin1e}es used to put players on the3(I(screen and erase.#:((( Press to begin.:A @#FF:B1f}2y,@*AU@<AU@F A #5AU@!6-@++@5 AP%*******1g}*************&%CONVERT PROGRAM DATA+%* TO STRING FORMAT *0%********************:%ffENTER EACH LINE OF DATA AS S1q}b'DOS SYSb*+DUP SYSbUAUTORUN SYSbWMENU blBASSNOTE b}BINCONV bDICE b!ENGLISH b JOYSTICK bGRAPH bINVENT bMUSICEND bU!PMDEMO b RJUSTIFY b SORTDEMO b*SOUNDEMO b TIMER bHELLO bMODE123 bTABDEMO bGR8TEXT bPADDLE bKEYDEMO bDELETE LSTb A LSTbB LSTbD LSTbF LSTbG LSTbI LSTbE LSTBDATAFILE HOWN IN THE DOCUMENTATION LABELED "PMDEMO DATA FOR CREATING STRINGS.D%N%ooIN EACH CASE, THE DATA LINE NUMBER WILL BE 991r}00 (NOTE: DATA FOR PM$ WILL USE LINES 9900, 9901, AND 9902).X%b%KKAFTER CREATING DATA FOR EACH STRING, TYPE GOTO 9700 A1s}ND PRESS RETURN.l%v%\\TYPE THE LINE NUMBER FOR THE STRING (NOT 9900). EXAMPLE: THE FIRST LINE NUMBER IS 10.%%QQ1t}TYPE THE STRING NAME INCLUDING THE $. EXAMPLE: THE FIRST STRING NAME IS C$%%EEREPEAT THIS PROCEDURE FOR EACH STRING1u} TO BE ENTERED (TOTAL=29).%%EXAMPLE FOR C$ IN LINE 10%%##*****************************%GGSTRING DIMENSIO1v}NS FOR PROGRAM DATA TO STRING CONVERSIONS%##*****************************%Q A Q;@,;@,;1w}@,;A,;@$,;@,%!((ENTER LINE NUMBER!&4 A 6-A:,4 @)!APA 1x} &!((ENTER STRING NAME!&+ 6-B:, A@+7<,0$A@H&< #AAf@"(<( =1y}>:@4,\&# AP"(>:,# A &0,40,2,136,112,0&4(>:@4,'!@d* @4(:RETURN&C1z}Af#(>:@(,1(>:@(,CAd@&  ''EESEE DOCUMENTATION FOR INFORMATION ON CONV1{}ERTING DATA TO STRINGS$'.'DDTHE FOLLOWING IS A LIST OF LINE NUMBERS AND PROGRAM TEXT WHERE8',,TEXT MUST BE ENTERED IN1|} INVERSE VIDEO.B'L'LINE# INVERSE VIDEO TEXTV'===== ==================`'110 demo byj'180 W Ht'1}}190 I T~'220 E'115370 TO ENTER THE STRING IN YOUR PROGRAM:'5400 RETURN'5410 NOTE:' 9000 1~}PLAYER MISSILE DEMO'9100 STARTD:PMDEMOVVBNBBOMPLLINENUMNAMELINLNUMBE06*+{)RJATEMPBAMOUNTDSWORAMOUNBUZTOTAD    ( BU#BU#@B5}U# @dRJUSTIFY BY JERRY WHITEn<<;@,;@,;@,;@,;@,x 6. 6.5} 6.] +'0@9A@K@@]@@91(1(&ENTER AMOUNTS 5}OF LESS THAN ONE MILLION>(1(&PRESS RETURN FOR TOTAL RIGHT JUSTIFIED4(> AC 6.#6-P:A$,'A/5}"@6. 0.00C$ 6-&?6.=:%>P,L6.7@<@&B:,,I67B:,%@5},.7@:A%,K(*** SORTED DATA ***6-@2(7$@0&@)<$@0,6 9}*** CONTINUE OPTION ***K(*( PRESS OPTION TO ADD DATAK( PRESS START FOR MENU F:B2y,"@9}A0"BF:B2y,"@"+%(7( LOADING MENUB%D:MENU, A6*** DATA ENTRY ***@0(0(%ENTER9} UP TO 100 RECORDS TO BE SORTED:J<6-%@((( ENTER RECORD /6.3<6-B:,TH"6-&@#69}->(*** S O R T I N G ***H A`^0067$@0&@)<$@0&@)%,.h A0 D:SORTDEMOIC STR8wG);OFTIMVT@A @ &&SOUNDEMO (c) 1981 by Jerry White =}W +A1@@CAR@M @@W ATURN OFF SOUNDS:-@=}327 :$$$TIME DELAY T=60ths of a secondA@ F:A@,@1 =} @ $'NEW SCREEN HEADING(B(>:A%,(9(! SOUND ROUTINES BY JERRY WHITE<(?(B$2E-@@!3=}( PRESS START TO CONTINUEEB2y4 F:B2y,@@R5$dW-(% One simple clear sound can be =}madeW(%to sound differently just by alteringnT+(#it's duration and volume. Each ofT($the following routines play the=} samexS,($note (middle C). Notice the how theS("sound is altered, just by changingI (the volume and duration.#(I=}(! The sound command used to playk,($middle C is SOUND 0,121,10,8. The 4?(variables are:B(k($SOUND VOICE,PITCH,=}DISTORTION,VOLUME.! @P @@!A`;%2A!@@16-@; @0&6-A =} @0(&AS-@@92A!@@E6-@O @0S &6-A  =}@0(&A;%2A!@@16-@ ; @0&6-A  @0(&A S-=}@@92A!@@E6-@ O @0S ! @P @@!A@-@@=}+-@@G2A!@K h-@6@2A!@  =}&6-A  @0(&A`X-@@4-@6? P2A!@T X =}r6-A  @P# @@J(" The following routines also user(#the clear distortion level 10. Thed-(%diffe=}rence will be changing the pitchF(with FOR NEXT loops.P @PZ @@dA"~-AU32@=}@7 T-AU6@p2@@t ~ @ ,#6-A  @0#A6=}-AU@;2@@? \-AU6@x2@@|  =}@ @g @P @@>(" Now we will use multiple voicesg($which will force us to use more thanJQ+(#one lin=}e in many routines. We willQ(!still use only the clear sound ofTR*("distortion level 10 and change theR(#pitch, the v=}olume, or both with the^5(FOR NEXT loops.! @P+ @@5A`he-@AU32@@=}W2@AU&@@[ e @ r&6-A  @0(&A|m-AU@;2=}@@_2@AU&@@c m @ ) @P @@)AAN -@=}6?P4-@@J2@N =-@@%@52@@9 =}= +6-A  @0+A0A`M-@3-AA@I2@M =}9-AA@52@@9 9-AA"@52@@9 G-A$=}A2@52@@9 = G @ f @P @@>(" The key to using Atari's soundsf(=}#with Basic is the FOR NEXT loop andN(( experimentation. These last fewN(!routines will create a variety ofN,($sou=}nd effects by combining differentN(distortion levels and voices.X(/($ I hope you've enjoyed this littleX($demons=}tration and that you will soonI+(#be creating your own sound effects.5 @P? @@IA -@@=}4-@6@J2@f2@@@|2@   @ &=}6-A  @0(&A@[ -@6?P=-@6@S2@W [ =}&) @P @@)A`Ap0-@@092@%@@[2@@=}@o-@@2@%@@2@@@ :%2=}G2@K h-@6?2@%@2@=}@ D&6-A  @0(&AN -@6? <2@%@X2@A@=}@~2@AU&$@ X) @P @@)AA bV -@6@=}<-@@`@R2@V lt-@pA@@52@@9 V-A=}@6@Pl2@@p t v&6-A  @0(&A@ -@6?<2=}@Q@X2@A@t2@@Q@2@A@ W @@(=}((5( PRESS OPTION TO RERUN8(W( PRESS START FOR MENUF:B2y,"@% F:B2y,@A=}`,(!( LOADING MENU.....,%D:MENU D:SOUNDEMO&&SOUNDEMO (c) 1981 by Jerry White <DlP1P1P2HMISETSETTT  A} @0 L"6-F:@,$AV$AV;6-%F:@,$AVL6-%F:@ , J6-P:'B!`,%6-P:'A6,J6A}-P:'@`,&$@`&$@` 226-P:'@,&$@&$A&$B`\6.  @867@A}<@,.0R67@<@,.=:,\ @67@<@,.=:,L @(67@<@,.0B67A}@<@,.=:,L @67@<@,.=:,L @(67@<@,.0B67@<@,.=:A},L @ 67@<@,.=:,67@<@,.=:,4-@@"(@4"*"@P A} @M +AdAU1A4(7(M(SET TIMER HOURS 8 @0 B$6-P:,8A} @0(((SET TIMER MINUTES*B @@ B$6-P:,B!@Y) @@,9@A}'@9@ .@ +@;@,,-@@@(@Һ0T-@@A}*(@<-@@Q(@T$2AdAU<BF:Ad,AU"+%A}(7( LOADING MENUB%D:MENUF3)(>:AS,PRESS ANY KEY FOR MENU3 @`NP##TIMER TUTORIAL BY JERRY WHITERA}T,,USE INVERSE VIDEO FOR THE FOLLOWING...UV%%LINE 14 THE THREE COLONS IN T$XLINE 46 TIMER:ZLINE 48 A} hour=\LINE 48 mins=D:TIMER  @*''HELLO INTRODUCTION by Jerry White AY+@*(@*(@ ADVENTURE}E!!(@ INTERNATIONAL((@ 2((@((@ <(@ E} F (@ ӠP (@ JERRY whiteZ0@@70@@E}Q0@@@k0@@@0@@ AY@4%D:MENUD:HEE}LLO''HELLO INTRODUCTION by Jerry White AY+@*(@*(@ ADVENTURD/0DINDISPLAYLISCHANGWAITHREVOLUMLOOBAC@AB@"@@@@@I} @ d""MODE123 (c) 1981 Jerry WhitenDISPLAY LIST MODIFICATIONx% +@6-%6-I}AMODIFY DISPLAY LIST TO DEMONSTRATE GRAPHICS MODES1, 2, AND 3 ON THE SCREENAT THE SAME TIMI}E--6-F:A`,%F:Aa,$AV%@&@@q%@@%@@)I}-@@!%%@) %@"@e%@#F:A`,%@$F:Aa,0I}@@"0@@@,0@@@60@@@@0@I}J@@T2-@. @ THREE LINES2 ^2-@@. @ OF GRAPHICSI}2 h0-@@, @ MODE TWO0 r-@A |@@3-@@/ I}@ two lines of3 8-@@4 @graphics mode one8 -@A GG17,13,18,12I},19,11,20,11,21,12,22,13,21,14,20,15,21,16,22,17,21,1820,19,19,19,18,18,17,17)@@)-@@I} @",B -@6@>2$@@B  -@@?I}-@9/P:H:,$@,;,@!?   -AU6@'A#-@I}@'  #6-@ 6-@# &- +("( LOADING MENU-%D:MENU0:DING SUBROUTINEI}D= -@6? 62@: =$ D:MODE123B@"@@@@@HOETeBLANKTANUMBERA@@A@TABS DEMO BY JERRY WHITE & +M};@,&6.  NAR@'@@9@@8KA@N(4-@@M}0(>:A',>:AX,4 @@((+-@@'(>:AY,+ F#(>:A%, ( TAB M}DEMO#(P1-@A16-P:H:,$A,Z @( d(>:A', n8(@@M}8( PRESS START FOR MENUx F:B2y,@A - +("( LOADING MENU-%D:MENU D:TABDEMM}O( PRESS START FOR MENUx F:B2y,@A - +("( LOADING MENU-%D:MENU D:TABDEMLQ{WWMTEXTWB1B98@ @@@0Bt$& A&GR8TEXT BY JERRQ}Y WHITE(N%6-F:@,%F:@,$AV76-%$@@%NB:,"A*<-@B:,"6-@:7<,,.!Q}A'<6-&A(,1!@1* @'6-&@21 @H. @26-%@d067<,.>:, 2wQ}-@B:,"6-@:7<,,86-BsD%$@L-@a%$@@F:%,e s6-%@w <*!AQ}#-@A' *%Fh( }ENTER TEXT$6-@26-%@ ^(&}DISPLAY RATE= 6 CHARACTERS PER SECONDQ}h @@dz;@0,6-@(6-@ 2+@V6. *** Graphics Mode 8 Text ***p0@zQ}@ng,@@'/A@9/A@0K/@@0]/@@g @@- +(Q}"( LOADING MENU-%D:MENU D:GR8TEXT@ @@@0Bt$& A&GR8TEXT BY JERRP/GcsVOLUMDISTORTIODELAPITCWAI--PADDLE (c) 1981 by Jerry White 11/U}6/81??DEMONSTRATION USING PADDLES TO MANIPULATE A SOUND COMMANDb +@AR@1AAECU}AAEUA@b(>:@(,(PADDLE(0)=PITCH(PTRIG(0)=DISTORTION(PADDLE(1)=VOLUMEU}(PRESS ANY KEY TO ENDAdAU6-@6-@6-A 6-Q:,*S:U},"&6-%@* "@6-6-P:Q:@,'@,!@6-@TF:AdU},AU"+4AdAU7(I( LOADING MENUT%D:MENU"@-@@@(@sound 0,,U}, ,26G0@+0@@=@wG A0@-@AU} $D:PADDLESTORTIODELAPITCWAI--PADDLE (c) 1981 by Jerry White 11/TLM ^ TESBUTTOKEKEYWAIDELETdKEYBOARD DEMO (KEYDEMO)nbY}y Jerry White 10/13/81'A@'PRINT TAB WIDTH#@@#LEFT MARGIN$@@9$Y}RIGHT MARGIN! Ap!BYPASS SUBROUTINE$$CLEAR SCREEN & TURN OFF CURSOR +AR@Y}DISABLE BREAK KEY6-F:@,5!A(6-&A()@5B7t$FROM SUBROUTINEY} A-(-(" THIS PROGRAM READS THE KEYBOARD"++(# AND DISPLAYS THE KEY PRESSED PLUS,(IT'S ATASCII VALY}UE.6)( (#(PRESS START FOR MENU&()(JT OPEN KEYBOARD AS DEVICE #1^TO READ ONLYh##@@Y}K:r| DISABLE CONTROL CHARACTERSAf@##POKE LAST KEY PRESSED TO NULLAdY}AU""WAIT FOR KEY OR BUTTON PRESS33F:Ad,"AU*F:B2y,"@AP6-F:B2y,"@Y}A"@A)@"@'(ESC"@((UP"@)(DY}OWN"@0(LEFT&"@1(RIGHT0"@2(SPACE:"AU(RETURNDZ}"A%(CLEARN$"AW$( INSERT SPACE X#"AU#( INSERT LINE b#"AV#( DELETE CHAR Z}l#"AT#( DELETE LINE v"A'(CLR TAB"AX(SET TAB"AY(TABZ} (>:,%6-%@%@A-@@P POSITION CURSORENABLE CONTROL CHZ}ARACTERS36-!-@@ 3AfDELETE OLD DISPLAY)-@@%(>:AV,Z}) ""GO TO BEGINNING OF MAIN LOOP  A ENABLE BREAK KEY*'@@d'B7tAGZ}4>ENABLE CONTROL CHARACTERSHAfR\TURN ON CURSOR AND ENDfARpzZ}RESET PRINT TAB WIDTHA@""CLOSE KEYBOARD DEVICE & EXIT8@+(-( LOADING MENZ}U8%D:MENU D:KEYDEMOWAIDELETdKEYBOARD DEMO (KEYDEMO)nbX32000 GRAPHICS 0:POKE 82,2:TRAP 32000:? "STARTING LINE TO DELETE";:INPUT SD:IF SD>31999 THEN 3200032002 TRAP 32002:? "LAST L^ }INE TO DELETE";:INPUT ED:IF ED31999 THEN 3200032004 DEL=ED-SD:SC=INT(DEL/20):TRAP 3201632006 FOR ME=0 TO SC:GRAPH^ }ICS 0:POKE 559,0:POSITION 2,3:FOR D=0 TO 19:LINE=ME*20+SD+D32008 IF LINE>ED THEN POP :GOTO 3201232010 ? LINE:NEXT D32012 ?^ } "CONT":POSITION 2,0:POKE 842,13:STOP 32014 POKE 842,12:NEXT ME32016 TRAP 40000:GRAPHICS 0:POKE 559,34:? "SAVE NEW PROGRAM ^ }WITH LIST COMMAND.":END 32020 REM DELETE.LST (c) 1981 by Jerry White - Version 1.0 10/13/813200032002 TRAP 32002:? "LAST L\]32000 CLR :GRAPHICS 0:DIM R$(20):OPEN #1,6,0,"D:*.*":? :? " DISK DIRECTORY":? 32010 TRAP 32030:INPUT #1,R$:IF R$(5,16)="FREb}E SECTORS" THEN 3203032020 ? R$:GOTO 3201032030 ? R$:CLOSE #1:END ECTORY":? 32010 TRAP 32030:INPUT #1,R$:IF R$(5,16)="FRE`E32000 GRAPHICS 0:? :? ,"BASIC DISK UTILITIES":? :? ,"A= DISK DIRECTORY":? :? ,"B= LIST OF UTILITIES"32010 ? :? ,"D= DELETE Ff}ILE":? :? ,"E= RENAME FILE":? :? ,"F= LOCK FILE":? :? ,"G= UNLOCK FILE"32020 ? :? ,"I= FORMAT DISK":? :? ,"ENTER PROGRAM ?.Lf}ST":? :? ,"TYPE GOTO 32000 RETURN":END TIES":? :? ,"A= DISK DIRECTORY":? :? ,"B= LIST OF UTILITIES"32010 ? :? ,"D= DELETE Fd(32000 CLR :GRAPHICS 0:? :? ,"DELETE FILE":DIM F$(20)32010 ? :? "ENTER D#:FILE";:INPUT F$:XIO 33,#1,0,0,F$:END ,"D= DELETE Fhp32000 CLR :GRAPHICS 0:? :? "LOCK FILE":DIM F$(20)32010 ? :? "ENTER D#:FILE";:INPUT F$:XIO 35,#1,0,0,F$:END D ,"D= DELETE Flm32000 CLR :GRAPHICS 0:? :? "UNLOCK FILE":DIM F$(20)32010 ? :? "ENTER D#:FILE";:INPUT F$:XIO 36,#1,0,0,F$:END ,"D= DELETE Fpo32000 GRAPHICS 0:? :? "FORMAT DISK":? :? "INSERT DISK TO FORMAT IN DRIVE 1":? :? "PRESS START WHEN READY"32010 IF PEEK(53279v})<>6 THEN 3201032020 ? :? "PRESS OPTION KEY TO FORMAT DISK"32030 IF PEEK(53279)<>3 THEN 3203032040 XIO 254,#1,0,0,"D1:":ENv}D 00 GRAPHICS 0:? :? "FORMAT DISK":? :? "INSERT DISK TO FORMAT IN DRIVE 1":? :? "PRESS START WHEN READY"32010 IF PEEK(53279t32000 CLR :GRAPHICS 0:DIM FIN$(20),FOUT$(20),X$(40):? :? "RENAME FILE"32010 ? :? "ENTER OLD NAME";:INPUT FIN$:? :? "ENTER NEz}W NAME";:INPUT FOUT$32020 X$="D:":X$(LEN(X$)+1)=FIN$:X$(LEN(X$)+1)=",":X$(LEN(X$)+1)=FOUT$:XIO 32,#1,0,0,X$:END 32030 ? R$:z}CLOSE #1:END PHICS 0:DIM FIN$(20),FOUT$(20),X$(40):? :? "RENAME FILE"32010 ? :? "ENTER OLD NAME";:INPUT FIN$:? :? "ENTER NEx001,180,ITEM DESCRIPTION FIELD002,179,ITEM DESCRIPTION FIELD003,178,ITEM DESCRIPTION FIELD004,146,ITEM DESCRIPTION FIELD0~}05,103,ITEM DESCRIPTION FIELD006,180,ITEM DESCRIPTION FIELD007,170,ITEM DESCRIPTION FIELD008,183,ITEM DESCRIPTION FIELD00~}9,125,ITEM DESCRIPTION FIELD010,151,ITEM DESCRIPTION FIELD011,105,ITEM DESCRIPTION FIELD012,149,ITEM DESCRIPTION FIELD013~},162,ITEM DESCRIPTION FIELD014,195,ITEM DESCRIPTION FIELD015,143,ITEM DESCRIPTION FIELD016,140,ITEM DESCRIPTION FIELD017,~}159,ITEM DESCRIPTION FIELD018,151,ITEM DESCRIPTION FIELD019,143,ITEM DESCRIPTION FIELD020,118,ITEM DESCRIPTION FIELD021,1~ }29,ITEM DESCRIPTION FIELD022,189,ITEM DESCRIPTION FIELD023,129,ITEM DESCRIPTION FIELD024,156,ITEM DESCRIPTION FIELD025,15~!}7,ITEM DESCRIPTION FIELD026,152,ITEM DESCRIPTION FIELD027,160,ITEM DESCRIPTION FIELD028,157,ITEM DESCRIPTION FIELD029,150~"},ITEM DESCRIPTION FIELD030,178,ITEM DESCRIPTION FIELD031,115,ITEM DESCRIPTION FIELD032,171,ITEM DESCRIPTION FIELD033,123,~#}ITEM DESCRIPTION FIELD034,146,ITEM DESCRIPTION FIELD035,123,ITEM DESCRIPTION FIELD036,168,ITEM DESCRIPTION FIELD037,114,I~$}TEM DESCRIPTION FIELD038,176,ITEM DESCRIPTION FIELD039,171,ITEM DESCRIPTION FIELD040,117,ITEM DESCRIPTION FIELD041,111,IT~%}EM DESCRIPTION FIELD042,149,ITEM DESCRIPTION FIELD043,116,ITEM DESCRIPTION FIELD044,145,ITEM DESCRIPTION FIELD045,117,ITE~&}M DESCRIPTION FIELD046,188,ITEM DESCRIPTION FIELD047,163,ITEM DESCRIPTION FIELD048,141,ITEM DESCRIPTION FIELD049,157,ITEM~'} DESCRIPTION FIELD050,175,ITEM DESCRIPTION FIELD051,184,ITEM DESCRIPTION FIELD052,193,ITEM DESCRIPTION FIELD053,171,ITEM ~(}DESCRIPTION FIELD054,185,ITEM DESCRIPTION FIELD055,140,ITEM DESCRIPTION FIELD056,166,ITEM DESCRIPTION FIELD057,149,ITEM D~)}ESCRIPTION FIELD058,186,ITEM DESCRIPTION FIELD059,192,ITEM DESCRIPTION FIELD060,138,ITEM DESCRIPTION FIELD061,127,ITEM DE~*}SCRIPTION FIELD062,132,ITEM DESCRIPTION FIELD063,106,ITEM DESCRIPTION FIELD064,154,ITEM DESCRIPTION FIELD065,116,ITEM DES~+}CRIPTION FIELD066,114,ITEM DESCRIPTION FIELD067,100,ITEM DESCRIPTION FIELD068,126,ITEM DESCRIPTION FIELD069,176,ITEM DESC~,}RIPTION FIELD070,198,ITEM DESCRIPTION FIELD071,160,ITEM DESCRIPTION FIELD072,108,ITEM DESCRIPTION FIELD073,156,ITEM DESCR~-}IPTION FIELD074,148,ITEM DESCRIPTION FIELD075,160,ITEM DESCRIPTION FIELD076,150,ITEM DESCRIPTION FIELD077,187,ITEM DESCRI~.}PTION FIELD078,194,ITEM DESCRIPTION FIELD079,111,ITEM DESCRIPTION FIELD080,184,ITEM DESCRIPTION FIELD081,124,ITEM DESCRIP~/}TION FIELD082,116,ITEM DESCRIPTION FIELD083,136,ITEM DESCRIPTION FIELD084,110,ITEM DESCRIPTION FIELD085,153,ITEM DESCRIPT~0}ION FIELD086,199,ITEM DESCRIPTION FIELD087,199,ITEM DESCRIPTION FIELD088,136,ITEM DESCRIPTION FIELD089,135,ITEM DESCRIPTI~1}ON FIELD090,105,ITEM DESCRIPTION FIELD091,145,ITEM DESCRIPTION FIELD092,160,ITEM DESCRIPTION FIELD093,104,ITEM DESCRIPTIO~2}N FIELD094,100,ITEM DESCRIPTION FIELD095,104,ITEM DESCRIPTION FIELD096,111,ITEM DESCRIPTION FIELD097,101,ITEM DESCRIPTION~3} FIELD098,147,ITEM DESCRIPTION FIELD099,194,ITEM DESCRIPTION FIELD100,114,ITEM DESCRIPTION FIELD097,101,ITEM DESCRIPTION|d