@L|}6CD l0C)HCC WhL/h `CmCDiD`  R@P1  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}}} HE |||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- 138ɛ+,' 20*.. өw2 1``2TOO MANY DIGITSINVALIDS} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4uT} HEXADECIMAL PARAMETER800 0 8 00`,0'D800H,ɛh`2L1NEED D1 THRU D4u^L\  B JKIHiDiELV`LvL vL BLV`LLLV}l LL &` Fj`8冨凪` MEӅӥ M`ʆǪƩ ƐeW}e` MƦʆǢ &Ɛeǐ =M =MLM M'&&&8儨児祂*LM&&*ńX}8&&LM M`hihiHHȱȱLLc !#3`LLJJJJ`H LhY}`Hȩh LL*N LL*N ^LL*N fLL*N lLH8` BHI V䅠LZ}*N LN vLL*NԆ ؠPIPP`S:OE:OH N O O NN Nh)0IOOLNN[\ZUV[}T` AOOO`ȱ`` tOȥ`HhƣĢ`\}ƥĤ`L  ʎD 3|iop34;<X]1w]}sv    k G H%G  GH q rq8GorHpop GGHo8op^}po L}llssv )  L HLlst ) u sw`R@  Y_}8`LlO`}a} 123456789ABCDEFGHIJKLMNOPQRSTUVW\@L~RzRzRqR`LRRRaLRz͈RLR8R RRb}`LRLR`LR MRRR@R RRRR R  Y`LS MSSSL7c}SPL?Wi N NcVcVI1cl}VI2 cVI3LWcVI2LWwRvRLWwRvR} N N SpRLW NLWNo Files On This Disk!W xN` N NL XWhich File Dm}o You Want To BeX xNLCXLoaded At Bootup Time ?X* NeV NcVcV R)cVdVpR|X|XdVLXcVdV]KRLXn}eV8dV mlR*(mmRyRxRLXdVLqXeVLOX N NLX ߢX xNLY o}򮮠X xNiVsRhVrR ULAY ߢY' xNLeY 䡠YK xNLY p}Yo xN R`LY} NLY%Y xNLY%|򠠠|Y xNL%Z%q}Y xNLUZ%| If you are using this along with |Z/ xNLZ%| my QKMENU.SYS file, don't forger}t |Z_ xNLZ%| that [1] Any file with an extender|Z xNLZ%| of .SYS will not show up on the |Z xNL[%| menu, and [2s}] Any place that a 0 |Z xNLE[%| (zero) appears in a file name, the|[ xNLu[%| zero will be replaced by a space. |[O xt}NL[%| Ie: 'RETRO0FI.RE' will show up as |[ xNL[%| 'RETRO FIRE' on the menu, and |[ xNL\%| [3] QKMENU automaticalu}ly disables |[ xNL5\%| BASIC. If you have an XL, you |\ xNLe\%| DON'T have to hold down OPTION! |\? xNL\%v}\o xN N`L\LuRLtR}RL|RL O NL\K:\ȩ NN Y jVL\uRLtRLw} N``\  B JKIHiDiELV`LvL vL BLV`LLL /  - ӢjCDCCDD c H(i  F   y} L  Ed0W ESȱEYȱESAECE0& 0i    Л z}ІȌ 0x01"/! L:ݣ L:  {}  F c= FC ȱC L`ii`CD`CiCDi |}D`FEF`EiEFiF`R@ Y8`LYiii` }}H`pp`B0G0B0Ax4(%5,4)-!4%!4!2)02% ~}33.5-"%24/,/!$0!'%/&"9+%)4(,%$"%44%2'2!30 }!" P !`||8x88|p ||||.SYS so that it will not show }up. - Automatically disables BASIC in the XL machines - no need to hold down OPTION! - Files are displayed u}sing the ENTIRE 11 positions of the file name, and any 0's (zeros) in the name will be replaced by spaces on} the menu. So, a file named "LIVE0WIR.E" will appear as "LIVE WIRE" on the menu. - Handles up to 32 filenames per} diskette! - To load another game, simply hit SYSTEM RESET and the menu will be re-loaded (re-disabling BASIC}). Unless, of course, the game that you are running steals the Reset Vector. Tips On Installing QKMENU ------}------------------- There are pros and cons of having amenu as a file like this. The dis-advantage is that you will use }a fewmore sectors per diskette than most"boot" menus. This is because bootmenus normally "steal" 4 or 5 of thecatalog se}ctors to hold their code. The advantage is that you can installAuto-Boot / QKMENU to ANY disk, no matter what is on the d}isk, with noworry about destroying data or having"garbage" in your catalog sectors:[1] If you have a disk with DOS.SYS } and/or DUP.SYS on it that contains games (normally with an AUTORUN.SYS menu), do the following: - Boot up }and go to DOS. - DELETE DOS.SYS and DUP.SYS (since you no longer need DOS!), and also delete the } AUTORUN.SYS menu (if present). - Copy QKMENU.SYS over to this disk. - Run MAKEBOOT and tell it} to boot QKMENU.SYS.[2] If you have a disk that already has a "boot" menu on it (like "Quick Loader" or my} old "Quick Boot Menu"), then just: - Copy QKMENU.SYS over to this disk. - Run MAKEBOOT and tell }it to boot QKMENU.SYS. [3] If you are starting with a fresh disk, just: - Boot up your favorite DOS an}d format the new disk in either single or double density. - Copy QKMENU.SYS over to this d}isk. - Copy your binary-load files to this new disk. - Run MAKEBOOT and tell it to boot QKM}ENU.SYS. Piece of cake!!Interfacing to Auto-Boot ======================== If you aren't the hacking type, thenyo}u can skip this section. The followingwill tell you how to interface withAuto-Boot, in case you want to writeyour own men}u. There is only one minor rule thatyou must follow if you want to write amenu that uses the Auto-Boot routines.This is} that the Auto-Boot routines areat locations $0700 thru $086F, so yourprogram must not use this area of memory (I TOLD you} it was simple!) There are only 3 memory locationsthat you need to know about to useAuto-Boot in your own program. Thes}eare: $0709 - This location contains the current DENSITY of the disk just loaded. 0=Double Density, } 128=Single Density. This should not be modified by your program, but you will need} to check it to see what density to read the catalog sectors in. $070A - This 2-byte location contains} the STARTING SECTOR of the file to boot. $0714 - This is the "warm-start" entry point of Au}to-Booter. Jump to here after setting the starting sector, and the load of the file will take } place! Examples ======== Assembler: ---------- DENSITY = $0709 ;Disks density STSECTOR = $070A } ;Start sector AUTOBOOT = $0714 ;Entry Point <..... ..... process the menu and get the starting sect}or of the requested file ..... .....> LOADIT LDA SECTOR ;lo byte STA STSECTOR LDA }SECTOR+1 ;hi byte STA STSECTOR+1 JMP AUTOBOOT ;you're done!Action! (with run-time module only!})======= Byte Density =$0709 ;Disks densityCard StSector=$070A ;Start sectorProc Auto_Boot = $0714 ()Proc Loadit}() StSector = Sector ;Set up start Auto_Boot() ;Go load it!ReturnProc Get_Selection() <..... .....} process the menu and get the starting sector of the requested file ..... .....> Loadit () On}ce you jump to the loader routine,control will NOT be passed back to your program. But, before running theprogram just lo}aded, the Auto-Booterdoes the following things: - Resets the character set to the system ROM set. - Resets the }background color of the screen. - Resets the stack, so don't worry about jumping out of a subroutine.}%% ) ) %) %)Ѕ % `%%)G& & .`&&&&&'L&) }l JJJJ0W!ʎ)))+))"@* ) 6)) ) A)0 )(` 6)@} A)`)Hԝ))ԭ)h)@+)֩)8ɛL]') n)J) i@`8  &׈ׅ֭נ)֬)}IJHjhΦ))ɛԈi)Ԑ)))k))cԌ)).))@L )JJJJʽ))ک)} 6)ڙɛ)(i(ڐ A)) ))(`) &Q)X؍))Yٍ))")@2))})خ) &))( O)έ)L&* )! )0 )@))))))ح)٢؝))) O})*0 [))) &)) &*)) &))))(Ѝ)m))))m)))))Ͷ)Li(})L&)*+,-)))))`'` )LYi(ؐ`)))JH*~)~)~)(hΧ)}`))@W(NLLKK &&<(Px@NMA%}fg/+?FRONTBACKBUFFDIRSPOWNERTITLEDENSITYDSDISKNOFCOM1FCOM2BCOM1BCOM2TKBFMODBMODFCN}h5  & / 3 N i  @@}@@A A@ A@@SAVE "D:GLABEL.BAS"$$}$$|Ǻ|$$|򠠠|$$|Prints disk labels thru the |$$|G: handl}er (from Analog Mag)|$$|which MUST be installed as |$$|an AUTORUN.SYS file. | $$} ss;A,;A,;A,;@%,;A,;@,;@ ,;@,;@ ,;@,<<};@',;@',;@',;@',;@ ,467@,. %67A,. 467@,.V 6.6.6}.Double,6. SpartaDOS26.86.>6.J6-@V6-@(@K:7@G:3}>:@',@>:@',0>:@,>:@',W1>:@',O( 26-6-dn}x A PLOT LABEL APLOT LABEL DATA@-@@@(& . Owner . Disk Titl}e . Disk #/,($ . Density . DOS Type . Test/(O,($ . Front Files . Back FilesO( . Print Lab}el . Exit( ?,6 )@ AJG"@:1,  Owner's Name$3B:, @}G67B:,%@,.T""@:2,  Disk Title"^F"@:3,  Disk Number#2B:, @F67B:,%@},.h"@:4, ArC"@:5, DOS Type /B:, @ C67B:,%@,.w6"@:6,"-@@}- XXX1 6 |!"@:F,)"@:f,! A !"@:B,)"@:b,! A!!"@:P,)"@:p,! A}$"@:X,)"@:x,!+$ A0㠛 +@@} 00('00('| ˺ |00('|Dens: DOS: } F: |00('||H-@@D('| } |H 00('5-@@ ƺ.-@@ 5(º$}!!!!Ƥ!!젛!!}Ƥ2&@@D:*.*26-@@^7@<@,4FREEG67@<@},.7@<@,P67,.[@^$!AxA&&7@<@,4SYSA<-@@}/7<,40)7<,4_<67<,.  67,.7@<@,$6-%@ AJK}᠛L<AR@'-@@<(7@<@,VC-@@$B:,!@9(7@<@},C A [(`-@5@(j*-@@*(7@<@,t-@@(~A-@1}@A(7@<@,/7@<@,"@A`"A9-@@(}+-@@/(9 Ar-@@r(7@<@, 7@<@!, 7@&<@2,} 7@7<@C,r-@@r(7@H<@T, 7@Y<@e, 7@p<@v, 7@}<@,r-@@r(7@<@, 7A<A , 7A<A , 7A%<A1,}r-@@r(7A6<AB, 7AG<AS, 7AX<Ad, 7Ai<Au,"@}A"AP9-@@(+-@@/(9 APr-@@ r(7@<}@, 7@<@!, 7@&<@2, 7@7<@C,r-@@r(7@H<@T,} 7@Y<@e, 7@p<@v, 7@<@,r-@@r(7@<@, 7A}<A , 7A<A , 7A%<A1,r-@@r(7A6<AB, 7AG<AS,} 7AX<Ad, 7Ai<Au,AR$%-@@" }%$x󠛂 4Double6.Single $ 4Single6.Dual  $6.Double$}젛Q 6.B:,!6.96-+@ &B:,,'@Q67%@<%B:,,.##   }ˠϺ bb  Density:  DOS:  Free Sectors: 7@<@,/7@<@,AA 6}:"@ ƺ#3 -3 03: Aii ƺ 7@}<@, 7@<@%, 7@&<@6, 7@7<@G,ii  7@H<@X, }7@Y<@i, 7@p<@, 7@<@,"ii  7@<A, 7A<A,} 7A<A$, 7A%<A5,,ii  7A6<AF, 7AG<AW, 7AX<Ah}, 7Ai<Ay,1:"@ º#3 -3 03: A06ii º 7@<@, 7}@<@%, 7@&<@6, 7@7<@G,@ii  7@H<@X, 7@Y<@i, } 7@p<@, 7@<@,Jii  7@<A, 7A<A, 7A<A$,} 7A%<A5,Tii  7A6<AF, 7AG<AW, 7AX<Ah, 7Ai<Ay},^  h$ From isk or ext Entry= )"@:D,)"@:d,( A.6.:6-@=$I A}  Comment 1 * A9  Comment 2=I6-@1 6.$67@<@,.---. A 1$4 From }isk or ext Entry>= )"@:D,)"@:d,( A.6.:6-@=$HI A  Comment 1 * A9  }Comment 2=I6-@R1 6.$67@<@,.---. A 1$ D:GLABEL.BAS` This program will print anice looking disk label thru the G:handler, which was originally publishedin Analog. The prog}ram will allow up to16 file names per side (or a 2-linetext entry per side), and will also print a header showing: - Th}e owner's name (that's you!) - Diskette Title - Free Sectors (Front/Back) - Density of the diskette - Type of DOS on }this disk - A disk "number", up to 4 characters This program WILL ONLY RUN ON EPSON ANDGEMINI PRINTERS! (Since }that is all theG: handler will run on). Don't beworried if the data you enter is "cutoff" on the screen, because each fie}ldhas to be compressed to fit into thelabel graphic on the screen -- ie: youmay enter "Modem Disk II" for the title,but i}t may display as "Modem Di" on thescreen -- but it is all there and willbe printed fine on the label. This program is wri}tten for use with 4" wide x 1 1/2" high labels. Enjoy! Keith Ledbetterthe label. This program is wri] Hope you enjoy it - Keith Ledbetterts the stack, so don't worry about jumping out of a subroutine./B'DOS SYSB*+DUP SYSB#UMAKEBOOTOBJB xQKMENU SYSB?MENU DOCB GHANDLEROBJB2GLABEL BASBGLABEL DOC