0L0  UTILITY4(   Error: No DOS(0 )0 / 0/(0/)00ֹ/ / Ȅ`lL*0  1 1%7x0 1 1 18H 1(哅h k1 y0L0l00DEH B VL0@   Y0`0.` a000. 08&.` 0mm 8 L1ƕƔ 1擥`? (Main  Z2X32F DOS]9zREADME 1ST] DIRC COM]DIRC DOC]#KEYEDIT COM]LIBRARY COM]>LIBRARY DOC](KLIBRARYXCOM]+PFKEYLSTCOM]5 PFKEYSWPCOM]:SINIT COM] SINIT DOC] RSPARKEY COM] SUPERKEYCOM] "SUPERKEYDOC] : TEST256KBAS] RTEST256KDOC] XVBASIC COM] aVBASIC DOC] !mM#XDEL COM] #XDEL DOC] /XINIT25 COM Y $* AUTORUN SYS] 9N COUNT COM W@ FATBACK DOC]WFATBACK COM]!iM FATREST COM]'%CHKFRAG COM]+CHKFRAG DOC]_!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^~S28$HHH өH*HHllhhh@HHLH|)ӝtI)MӍ|hh`HH||)thh(`44DEPH BLV `)`` '4 4 4Ȣ4 4LI4 4 w4 4x '4 44X 4) ~`8 '4 4 4L4L4Error: Not an XL/XE Computer.4.4t5} SpartaDOS Ver 3.2f 25-Feb-94 Copyright (C) 1994 by FTe 4.4 4 4G)@}҅  EEF E x4 d5 d5" #   c5  M c5 , W5 4LL4 L LLHEi ȱEi `|40 `` 7 YL\ 2BHG H-G H ةHhJ \hBL\`@B 442@3Y45245324 `L1( (ҩmi:; < =x:23454 Μ ,  w ,P lνе X0`234 5` P21 ,350 2 9 4 2 9 LD1 9)ҢL1,350 &2 4 2 1`08` S< ACE,0ɋ8` `ύ&'0`e1i1`,07 ,ߍҩҭҍ )  `_ҩҩ,,,8`H)ҩh `#,ҍ ҩ(ҥA,ҩҩ`jj)?j)`Ң`H?ʎ @  0h ``@@B,~-32@3452453c24` ɔ FNot SpartaDOS disketteLɢ FDisk fullLɪ FFile not foundLɣ FIllegal wildcard in nameLɘ FNot binary fileLɤ FFile erase protectedLɕ FNot version II disketteLɩ FDisk write lockedLɖ FDirectory not foundLɀ FBreak AbortLɐ% FWrite protected or bad sectorLɥ FFile name errorLɨ FFunction not supportedLɧ FCan't delete fileLɗ FFile existsL` w  w(0   0a Y©ÍYh   N Y©  NΟ`L 8L`@D , ̍̍)̝BJJJJJ ̝D̝E0 KJ)̝JJJ)̝H̝I D@   Ϭ,0),~  FError -- L`(),! *+  -"#$./0_@ @CA똩)*K HJJJJ 9h) 0:iLhWhXWXͭ LNͭXHWH`, Nnn ͠H͎͌͢ͽ `Mܩ,0 N ͭO` P..*N  . 0PH0  ʩ `$%` Π vAG) ..ܭ` 7`  7`L @ ύ  ύ 乀` Ω* #* Z 0DLϠ ̠ ̭0L0f 0  LϮ Lϭ  /A ̠ LL~υCυD. yϠC  y 婛蝀`ȹ  ` ̢0 8̽ H̽I̠0 (ʢ 0L *)L* *M @ L ( `L(= # , 魗  筙`( L#() LLL I0   䍠 e , ʎi 0L CL] 0G   KQ;`) x뭤B L  ,  ,)ߍ "LLL  ,] 0 # K ح)  "L  밻) 멀 "L` ,L  Ld͙Lj魗  Lj$H0Ld88A e , s eECFD8  8  9L H ,C]Dah LꭖCD L譔  魙8L LL$H0 s ,LxECFD  鬙 9L謓CCC)` L_CC C`C`C`  EFL뭔 K`8mi` /L9 Z"C X `L ꭔ C8 CDC}TCȱC}UC`  eCCD`  _C``Ipi ͟? x0,)C) `II  08` CL # , 魗 `1@R H0>h0   * HH 0hh`hh,L L { P*)0 0*`*)& K9:*$+0;QG` {!*B sﭟͻͼ/ P {0*)((a,,,L ) *)  I0 , *)  I  0 I  K 䍝 ,) *I *c 0L U*) 0 @`L,0 K) MﭝI $ 0 zz  G L  Z v #(> sL L,0`H hɛ ,'L0,L P*H * {0h*L04*  0 )L Lq * { M {0Y) *LJ, -* { M {0 ,  ,) LkL, LLLL: * {, (] 0 # K M {0 LL8*  * 0I LL,H ) ") čɍҍ)*LB 0 ͠E 0)  0  63# ͌;QL   ͩ: ͭ ͩ: ͭ ͩa p ͩmLͭ ͩ- ͭ ͩ- ͭ L͢$ ` 6(ȭ(Ȣ(((ȭ(ȭ(` ȱCL,~LL # wL ʈ`1N@ 1!@1S@@8` v P  > Ȣ L >(ȩ(` (H(h `*$/ȱ$Aȩ *$$ `2Kd}j #H 0K 08}  )L ,08J mHh 8Jm , 3m L  8 L iL?EF,L譞)  #T 0N 0   Q 0` >$H s L)L  CȭC _ 1 /͓ hL\ s)H   EF 묓 hL\ KL\FА֐#eCCD$H0CELW `abcdefghijklmnopqrstuvwxyz{|}~EC$H _8m䍖L ``H譞=L `   hC̓ _`LK8EmEF8m䍚 W 0`8`8`CȱC`CȱC`  hCD ` / ?䭒,06/O)͒/?}` &O`)8O,0, } ,0} 8,0 8JHjmChmD`H)h)/ ?  &CD8 ` ` i͓ L?CC, CȭC CȭC _L 3 `),)   C&̓ͬ L,L   X,}T}U` .C   I1CC`   CC,0  L4L@ٯ` N j  ,0 z` _)8j`m K`, HJjhj`, H**hJ`_/]^/` 0 `y"U a ې;ݒ- ;m ; - ;  ]!K`Z6<` 2 @ ɛ  `  8)ɀɛ ȹ`COPLOASAVAPPENCWERASRENAMCREDIDELDICARUPRINTYPDIDIRMEPAUSVERIFBOOCHKDSPROTECUNPROTECLOCUNLOCXDIAINI?DIBASITIMDATTKE,,,,L̩` FFormat: Are you sure? )_H hY L W,P` 7l FNo cartridge` ̭8 F Volume:  ͭ   0ͩ   0 F͛Bytes/sector: 0 F͛ Total bytes:  l F͛ Bytes free:  lͭ ( F͛ Write lock: ,!0 FOFFL FONL  , ̠ 0  BLL `LX  ΍ 7 PL\l FPress any key to continue L FMemlo: $ 0ͭ 0 F Memhi: $ 0ͭ 0ͩL ̠ ̠L M)MӍӌj E L ̭O NF FParameter ErrorL` *L *L  FCurrent date is   F͛Enter new date: - 3_ɛX KJLL  FCurrent time is  F͛Enter new time: : 3 ɛ F`ɛ )_PAϩ, mJ  J JLO WMJ`:8`M {)pM mM iM {`ȹ 0:`8`L ` 7 VL\ 7 L\%H$H`LPLI L2 X  UD1:autorun.sysstartup.batQ*.*.COM.BATD1:Volume: Directory: FREE SECTORS LI z)͒}`This is the fourth in a series of sixdisks containing public domainutilities specifically for SpartaDOS.No two disks contain the same file.Disks 1 through 4 contain genericutilities, with each disk having agood assortment. Disk 5 containsspecific files for MIOs andhard drives. Disk 6 is my version ofthe SpartaDOS Tool Kit--only usingpublic domain files. This disk was formatted with, andhas the DOS.SYS of, DOS 2.5 to enableall users to view its contents, notjust those lucky enough to haveSpartaDOS. Please use the text reader (theAUTORUN.SYS file) to becomeacquainted with the files beforeusing them. Any Share-Ware files that may be onthese public domain disks are agratuity--the disk space they takewould be blank if not for them. If you would like more public domainutility disks for SpartaDOS write to: H. Brewer 4010 Ridgedale Granite City, IL 62040-5741As of Summer 1988, disks are $5 eachor $12/set of 3, with two sets available.PW`S iS iS S S SSSSR SSi8R SS S! Sɛ$ /ɛ$*S.S*S詛S$ /#LQ$ȱ ɛ ><LPȘ8!L_P S$ ɛ /LQLQ S8S SLPX pWSLURTSUZ VSɖL=V1SMRTi SSTmSTS/TSUXY VSS SгS TSS BS Ti S1DSE SHI1Sɛ VSSLP R VS SR`LRȱ ɛȱ NT'S+ɛLP#L R SRةR SLQSLQSLQȱ ɛS Sȱ ɛS Sȱ ɛ S Sȱ ɛX S SS80 SS80S***ySySm S SLPS80S** S***S*m SmSm S SLQSTE" RSEi0ɀS SRLQH BSDI V` `&D1:DIRT*.SRC DIRT60 SRC 0421 FREE SECTORS SECTRS Valid Parameters are: N-No sector Count T-Tree of all following directories and files S-Suppress printing pathnames #VAL-Columns on output device (THE '#' IS REQUIRED) The # parameter must be lastDirectory not fo΅̍XYͅϢSYɛ >LU̽Y>YiXLVS@Y@YX WYɛ>Y詛YLV*X.XXXXX /WSɖUEPS0 R SRLQ IWX>XɛXX ,轀X LzV>ȩȘe̩̅eͅLTV $WUSXɛXLVȘe΅ΩeυϭXLVXSXɛ hW /W/T PLVX SR`XYϩLV R V`XUTZR V`XUTYXR V`S` BDXE@HI V`0RPTYUXYY V`  FF                                                    DIRC CommandSyntax:DIRC [Dn:][path>][fname[.ext]][ /[T[S]][N][#val]] If no file spec is specified, all files will be listed(i.e. the filespec becomes *.*). If no pathname is specified the current directory is used. Without specifying parameters DIRC returns a DIRS style listing in as many columns as will fit on the monitor screen with the current margins. The N parameter provides the same style listing without the sector counts("N"o sector count). This allows listing three columns wide on a 40 column monitor. The default 38 column screen is one space shy of allowing a three column listing so DIRC will, if the left margin is two, move the margin one space left when the "N" parameter is specified. The original margin is restored at the end of the listing. The T parameter gives a "tree" style listing showing the current (or specified) directory path and a listing of the files in that directory which meet the filespec. This is repeated for each directory downward in the hierarchy of subdirectories. The S parameter Supresses the printing of pathnames in the "T" listing, thus showing only the filenames which match the filespec. This parameter is ignored if the "T" parameter is not specified. The #val parameter permits the user to override the default line width. This would be useful when the output is directed to a printer. The "#" MUST precede the decimal width and this parameter MUST BE THE LAST ONE SPECIFIED. Any additional parameters after the "#" will cause the value specified to be improperly read and the additional parameters will be ignored. Values over 255 will produce improper responses.Ps (c)1983 Action Computer Services  B JKIHiDiELV`L9P 9P BLV`!LPPl LP &` Fj`8冨凪` PEӅӥ P`ʆǪƩ Ɛee` PƦʆǢ &Ɛeǐ Q QLP P'&&&8儨児祂*LP&&*ń8&&LP WQ`hihiHHȱȱLPc !#3`LPJJJJ`H Ph`Hȩh nPLQ wPLQ !PLQ )PLQ /PH8`HhHh [RLQ BHI V䅠LQ LR 9PLQԆ ؠPIPP` RP )PLQ RLR RLR SLRH- R8塪墨hLS SLR "SLR RȹP`텠8堨塪 R芨Oȩ-`PP RP棩 Ѥģ0-ģ6000:,80H & &ehe&eģ0ʥ 8堅塅`$ R&*i0:0i RƦ`¢ 护°ڱ%ȱ%E RL\T担CS NRL\TI SL\TH TL\T RL\TS:TE:TH HR TT R HRh)0ITTLR[\ZUVT` TTT`HhƣĢ``'Pn9m usoU1)9m Middle_Window (1)9ma Ef Ch = 'Q then9mG Done = 19m1 Endif9m! Until Done > 0 End9mReturn9m9m9m;=============================9mProc Get_Filename ()9m 9m Byte X,Y,Idx,Ch,s"9mL{VwVwVvV`yLVVVILVV)VVaLVzͅVLV8V `V`mLV RVV VVV)VVIY VINLVV`FLV RVV VVV)VVIR VIALVV`itL6W2W1W2W( "QXeYem1Wi8XUYU`14LW|W|W)}W}W LW}Wi@}WLW}W`LW8}W }W|WLW}W }W}W` LW QWWW 3WWWWXXWLEXmWmWWi ~WWXUYUXUYUWWLW`hars(1LOX QFXGXFX 3WHX ~WKXJXIXXXJXLXEXUYUXUYUKXJXLtX`(21,LX QXX X cILX`bXeXdXiXh Vih`rs(2LX QXX XLY` bXeXdXiXh Vc` LBY>Y T R>YILZLY%| Activated by: |Y`  WLY%| Key Is Currently: |Y  WLY%| |Y̢ WL&`>YILZL5Z%|  |Z  WLkZ%| Ԡ䠠 |ZE  WLZ%| Π堠 |Z{ WL&`>YIL`[LZ%| 堠 |Z  WL[%| נ |Z  WLP[%| |[* WL&`>YIL\L[%| 堠 |[m  WL[%| 婠 |[  WL[%| 堽 |[٢ WL&`>YIL\LB\%| |\  WLx\%| 󠠠 |\R  WL\%|  |\ WL&`>YILm]L\%| ҡ堠 |\ˢ  WL']%| |]  WL]]%| |]7 WL&`>YIL^L]%| |]z  WL]%| Ơ󮮮 |]  WL ^%| |] WL&`>YIL^LO^%| |^)  WL^%| Ơ󮮮 |^_  WL^%| |^ WL&`>YI Lz_L^%| |^آ  WL4_%| 箮 |_  WLj_%| |_D WL&`>YI L&`L_%| ҡ堠 |_  WL_%| |_  WL`%| |_ W`L*`LS`%`- WL`%|堠١|`c WL`%|򠠠|` WL`%|㩠󠠠|`Ϣ WL+a%a WLaa%| Function Key Definition Editor |a; WLa%aq WLa%| |a  WLb%| PF 4: |aݢ  WL9b%b  W ?YLtb%| |bN WLb%b WLb%| | Select A PF Key |b WLc%| E | Edit This PF Key |b WLLc%| D | Enable / Disable this PF Key |c& WLc%| P | Print Template for PF Keys |c\ WLc%| Q | Exit and Save These PF Keys |c WLc%cȢ W`Ldc LXc moV*(mpV W  LX  TcL_d Rci R  TcLdLdControl/d  WccicLdLdShift/Control/d  W$c8cc c TcI Ldcc RcZULeL ee  WL5eL(eActive e  W`====oV============9mProc CrL[e6e6eZU9e:eȌ8e LX ?Y LXe: WXUYUXUYUILeI ILeILe9eL^fIL1f8eL.f  R7e LX88e8e8:e:eL^fL^f R7e8eL^f7e8e:e:e8e9eLe ?Y6e moV*(mpVe: AU`ad_PLfff ?YvV HRLfP:f RvVLf HR ?Y VIALffLjfLg f BRLg g  BRfILjLrgL+-------+------+-------+------+-------+------+-------+------+-------+------+g% BRf͛fLgLgL! !g BRfLgL9hL! Fold Here Fold Here !g BRLhL+-------+------+-------+------+-------+------+-------+------+-------+------+hE BRLhL! 1 ! 2 ! 3 ! 4 ! 5 ! 6 ! 7 ! 8 ! 9 ! 10 !h BRf͛fLbiLSiL! ! ! ! ! ! ! ! ! ! !i BRfLhLiL!-------+------+-------+------+-------+------+-------+------+-------+------!ie BRf͛fL)jLjL! ///// ! //// ! ///// ! ! ! ! ! ! ! !iͩ BRfLiLyjL+-------+------+-------+------+-------+------+-------+------+-------+------+j, BRLjLj j BR͝fLf`o (LjuVj ?YuV c Rjj VjjI-LjjLjjI=LjjjILk8uVuVuVILkuVLkjIL1kuVuVL.kuVLkjIDLRkuVZUuVZU)uVZULkjIELekuV XeLkjIPL|k f ?YLkjIQLkj͠jLj`09mboVmLk ?YkkkLk D :PFKEYS. kUs AUkLkĠkݢ WkILlL lߺl WLkmkILUlL3l ĠӮߩl' Wk LXLkmkILlLol ĠӮߩlb Wk LXk LXLkmkILmLl ĠӮߩl Wk LXk LXk LXLkmLmĠӮߩm Wk LXk LXk LXk! LX Rkk VkkILm͘kLmkL\nkI~ kILm͘kLm8kkL\nkILnk1Lm8͙kLmkuUsUk kkkkL\nkALnZ͙kk1L\n8͙kL\nkL\nki ksUki sUk kkkkk͚kLk`LnnhngningnhnnninLnoUmmVpUmnVgnminhnimVnVinLnoUmmVpUmnVmVnVȌjn8inoojnL'ooUmmVpUmnV mVnVjnLn`L2o Q(o(o "QoUe-opUe.o)o*o-o.oILo)o*oi)o*o)oq*oi-o.o-o.oLno`oVLonVmVooL.po moV*(mpV knoLoUso AUooQpQpoLfpoo oooLFp ?Y TL}p%Sߩo̢pw ?T VIYLLqo ?YvV HRUs RvVLp HR ?Y VIALpoLBqUZ XooILqnVmVpUoU Xo HRoIL=q ?Y VIAL:qoLBqooLp`LQq ?Y RMq ?YMqMqLqMqZUMq moV*(mpVLq (unassigned)q AUMqLjq`Lq k ?YvV HRUs RvVLq HR Nq`UZ XqqqI qILL5LS?Ln.L6L4L6L 7LS6LM6L1Lf6L>.Lf.L4L`>L3?LC?L7L7L7L7L9L7L/L%/L./L7/L@/L/L/L<9LA9Lr5L/L[/L/L.L4L/L/L85Lj4L4L4L4L?L?L?LK9L]9Lr9Lg9L9LT5L/L=LW=L,Ls,L>>L6L6L6L-6L96L?5L7L8L>8LS8L{8L8L8L8L8L8L8L=L8L8L8L9L/L/L/LE9L9L9L9L:L:L:LK9LU4LP4L1=L;L;L04L;L%=LP4LP4LP4LP4LP4LP4LP4L5LK5 ~6 80`` v62F 2G2 22ƅȱƅL1҅Ɉƅȩ 2<22Ȅʩ=΅ϩ======% 2=L1 2=L1`(L<ȱ% 6?N=N-=L2.=L2AL2ȱ: 0蝀懲詛= ٭= ԅά==L2ԅϬ=L2=UD L\3ȱL2ȱ=IՈIiL2Ոƅ ح=+0=Ȍ==έ=ΐ 2 3L3 3Υ 2L 3= - 2Π0. 2=L,3)L2=`XL3Ȍ=ƅՈƅԥ=H)JJJJi0:i 2h)i0:i 2= =L{3=L1C ʱ 2L3SL.ʱƅȱƅŭ= 4L3===ΰ 2 4L4 4=ΰ 2L3 2`ƠƠƠ ; ȊLr5``LP4 ~6L?7ƅVȱƅTƅU` j4 qHqƪh`L`6 f6H `6h` <`* <`L6 `ƅˈƅʈƅɈƅ` v6ƝB EƝD IƝH ƝJ ƝK V Ii`` v6LS6BHIL6ȱ G17F070717() t䦾L6 ~6ձʑ `ƙȄͦʥ``ƅɈƅȢ`ƅȱƅ̠ƅȱȪ̑Ȋ` 7HȱȪh` ~6ȅȱȅͥˑȥʈȦͥ`ƅƅ إԅ) ٥0Ԧ`IIi` v6ƙNȩ̽LʈM` v6ƝLȱƝMȱƝN%BL6 6 H 6h`L6 7ƈL 7HpƝDȱƝEhBL6#$ ީ!8ȩ8`8 282ƅȱƅL180H1h`eHȱeǪh`0`` ` 96iȥi 96Ȇ ȅɅL8`Т   ```````/ =/B`=/B` 9 BL6 9B V()`` v6ƝIƝHƝEƝD` ~6 ``` ƪТ`ƪƨ0 =Т` ƪ Т`ƪƨ0 = Т` !:` !:`ƪ q`ƅȱƅȄ`̽ɛ ,`̽ɛ ,` :hhL6̮֩2:HIDEB V8``ʅ͍2:ȩɱ v62:ƅɈƅȄ {:ʱ` 6?% L6 H _:hD$̅ 3:ԑȥՑ D:L:F$̅ 3:ԑΈ D:L:S%̅ D: 3:̪ʊ8ĨȩΈʈL:CL: 3:̽ D:L:HHƠƠƠȩQȩ=hhƠL88=ƍ;ȭ=ƍ;ǐ ;=;=``m==ȱm==`L@%dL== iȥ iɠ H |=h `lƅɈƅ i!ʥ i˱ɛȩ`=ƅɈƅȱȥȦ >" < D :=L > D :="=1©> 8==@@L{$@";>>>B"/ =@l ~6Π 6? :< =  0 >ș..Ȅ̤αʤ̑`D1: ~6̄ͱʅαͥ``ȱܱƅɈƅȢ`{a `A[i L@?@i`ƝDȱƝEBȱƆ 6?ARWUD`   JK V0JJJJ`L6ƨx`ƨТ`ȭ Ȑ Ң`L? i `@A00A003B00VB00B00gC60f7@0gCB?0gCw0 #CfY@gC,Ax<#C'0x:#C'0B00CA&A#CB'Cn00#C'0Cx!C0 %C%C@$ A%Cx@%C<#C'0%C:#C'0$@#C0C%C#C0%Cx A$@!C!0$~@#C'0#C!0 0Br00300 &A'C0&`AB'C00$wAB00'C60fwA 'C C?0'Cr0 !CfAC'C00$CA $CA}This program combines files into asingle library file. The programDELIBR will reseperate the files.Versions of DELIBR exist for boththe 8 and 16 bit Atari computers.Placed in the public domain byRalph E. Walden 1986Library filename:LBRPress RETURN if no more files to add.%sFatal I/O error with %sAdding %sEnter filename to add: =ҠǺ%s0?@ABCDEFGHIJLIBR and DELIBR work together to combine and seperate files. There are versions for both the 8 and 16 bit Atari computers, and the files generated be each are compatable with each other.LIBR creates a single library file. The default extension is .LBR if you don't include one. If you run it from a command driven DOS such as Sparta or DOS XL, then you can pass some or all of the files to combine on the command line. For example:LIBR EXP850.COM EXP850.DOCThe above would run LIBR.COM, which would then ask you for the name of the library file to create. It will combine EXP850.COM and EXP850.DOC and then ask you to add another filename. If you press return, it will close the library file and exit. The default drive (the drive you are logged on to) will be used if you don't specify otherwise. If you are using a menu driven DOS such as Atari 2.0, then you willbe asked to enter the name of every file to combine. In either case, the only limit is the size of the library file being created.DELIBR takes the library file created by LIBR and seperates it into the individual files. If you are using a command DOS then enter the library filename on the same line. If not, you will prompted to enter the library filename once the program is running. You will then be asked for the drive to send the files to. DELIBR will tell you the name of each file as it is seperated from the list.LMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~$BiàL{$…ȱ…ťiÈԑL{$…ȱ…ťiåՑĈԑL{$ȱňĥԑĥ8ê7-$8-$Lt…ȱ…ťiÈąԄL{$…ȱ…ťiñąՈąL{$eȱeL$ȱňĥԑĥȑĈLp$ԅԄL{$ԪȱԈՆL{$i‘ȱ‘L$…ȱ…L$iԑȑL{$ԱԊȦձՊL{$iȱª¨„ iiȑÈL{$q…q…ȱÍ%8L{$±ŠȦñÊL{$ªȱ…ƈL{$ L%L$ ȥLp)LZ)q…q…L$&L{$&ձeԅȱeՅՈLp$8ԅȱՅՈLp$ԅՅȱ ,ԥLp$ &L_& &ԥLp$ȱդLs,ԅȱՅՈLp$EԅȱEՅՈLp$%ԅȱ%ՅՈLp$ȱJfՈLp$ȱLp$ȱ*ՈLp$ԱLp$8ԅԩՅL{$EԅԩEՅL{$L{$L{$8Ԫȱ`ȱLp$ȱԄLp$ F'0 F'0 F'0ʊ F'0ȱՐɱԐȱՐзԐЭȱՐЎԐLa'ȱՐ԰Lv'…ԄL{$ԄL{$i‘ȩL{$…ȱ…ťiÈią ȱiąՈL{$ȱĈL{$…ȱ…ťiñąՈąiȱiĈL{$…ȱ…ťi8ą԰ ȱąՈL{$ȱąՈL{$…ȱ…ťiñąՈą8ĐL{$ȱĈL{$rkLV)N[LV)…ȱ…8ԈĥBLV)…ȱ…8ԈĪ0(Lj)8¥ԥiàL{$Ԅՠªȱ…Æ L{$8ª0ƊLj)˥ԈLj)ФԈLV)q…ԥq…L$…ȱ…ťiåqąԥqąՈL{$eȱeťiåiđđL{$eȱeťiL9(eȱeťiLo(eȱeťiL(eȱeťiL(eȱeťiőđL$eȱeňeԅȱeՅL$eȱeťiñ‘ąՈ‘ąL$eȱeűąՈąL$eȱeňąԄL$ ԄL{$L{$lȱňı88必ƥDZ…ȱ…ťi V+ԆL%eԅԐL{$e…ȱ…ňiȱiĠªȱ…Æ L{$eȱeL+…ȱ…ťiÈ8ȱ0Lj)iàL{$eȱeťiL,&&& Lm, `ɀE ɀf8ਊ D,$ 8$P 8`E0 IIL,8L-Ff eeFfff$ 8`Y+$$$&$B$b$$$%%'%3%%K%b%%%%% &&'&9&K&l&r&&&&&&'#'2';'S'h'}''''''''%%([(((J)))))))&*B*^*z****+())+)+6+L+-.'((++%#&+(,++…ȱ…ťi -L{$l8…iƥiȱ(.ȱ). tԆՠiL{$ƝEƝDBI VL6($` v6L@. v6B0ƝKƝDȱƝEL?FL3ʱƪȱƨ ؠ0.)ȩ.ȩ0ȩL2ȱ)L.ƅƅƅ͈ƅ̄ L/ƙșʙ`̈` . L/ . (L/ . fL/ . `L/ ~6ș ޠʈ`) 4Ԇՠƅȱƅ ٥΅LP/ . ަʤ L/ ~6ș LP/ƅɈƅȠș ٥Ԧ`S:ƅȢ`BƅDž B VBō/ȝK)IJL6``L=LX4Lc1L87L?LQ7L>L5LS?Ln.L6L4L6L 7LS6LM6L1Lf6L>.Lf.L4L`>L3?LC?L7L7L7L7L9L7L/L%/L./L7/L@/L/L/L<9LA9Lr5L/L[/L/L.L4L/L/L85Lj4L4L4L4L?L?L?LK9L]9Lr9Lg9L9LT5L/L=LW=L,Ls,L>>L6L6L6L-6L96L?5L7L8L>8LS8L{8L8L8L8L8L8L8L=L8L8L8L9L/L/L/LE9L9L9L9L:L:L:LK9LU4LP4L1=L;L;L04L;L%=LP4LP4LP4LP4LP4LP4LP4L5LK5 ~6 80`` v62F 2G2 22ƅȱƅL1҅Ɉƅȩ 2<22Ȅʩ=΅ϩ======% 2=L1 2=L1`(L<ȱ% 6?N=N-=L2.=L2AL2ȱ: 0蝀懲詛= ٭= ԅά==L2ԅϬ=L2=UD L\3ȱL2ȱ=IՈIiL2Ոƅ ح=+0=Ȍ==έ=ΐ 2 3L3 3Υ 2L 3= - 2Π0. 2=L,3)L2=`XL3Ȍ=ƅՈƅԥ=H)JJJJi0:i 2h)i0:i 2= =L{3=L1C ʱ 2L3SL.ʱƅȱƅŭ= 4L3===ΰ 2 4L4 4=ΰ 2L3 2`ƠƠƠ ; ȊLr5``LP4 ~6L?7ƅVȱƅTƅU` j4 qHqƪh`L`6 f6H `6h` <`* <`L6 `ƅˈƅʈƅɈƅ` v6ƝB EƝD IƝH ƝJ ƝK V Ii`` v6LS6BHIL6ȱ G17F070717() t䦾L6 ~6ձʑ `ƙȄͦʥ``ƅɈƅȢ`ƅȱƅ̠ƅȱȪ̑Ȋ` 7HȱȪh` ~6ȅȱȅͥˑȥʈȦͥ`ƅƅ إԅ) ٥0Ԧ`IIi` v6ƙNȩ̽LʈM` v6ƝLȱƝMȱƝN%BL6 6 H 6h`L6 7ƈL 7HpƝDȱƝEhBL6#$ ީ!8ȩ8`8 282ƅȱƅL180H1h`eHȱeǪh`0`` ` 96iȥi 96Ȇ ȅɅL8`Т   ```````/ =/B`=/B` 9 BL6 9B V()`` v6ƝIƝHƝEƝD` ~6 ``` ƪТ`ƪƨ0 =Т` ƪ Т`ƪƨ0 = Т` !:` !:`ƪ q`ƅȱƅȄ`̽ɛ ,`̽ɛ ,` :hhL6̮֩2:HIDEB V8``ʅ͍2:ȩɱ v62:ƅɈƅȄ {:ʱ` 6?% L6 H _:hD$̅ 3:ԑȥՑ D:L:F$̅ 3:ԑΈ D:L:S%̅ D: 3:̪ʊ8ĨȩΈʈL:CL: 3:̽ D:L:HHƠƠƠȩQȩ=hhƠL88=ƍ;ȭ=ƍ;ǐ ;=;=``m==ȱm==`L@%dL== iȥ iɠ H |=h `lƅɈƅ i!ʥ i˱ɛȩ`=ƅɈƅȱȥȦ >" < D :=L > D :="=1©> 8==@@L{$@";>>>B"/ =@l ~6Π 6? :< =  0 >ș..Ȅ̤αʤ̑`D1: ~6̄ͱʅαͥ``ȱܱƅɈƅȢ`{a `A[i L@?@i`ƝDȱƝEBȱƆ 6?ARWUD`   JK V0JJJJ`L6ƨx`ƨТ`ȭ Ȑ Ң`L? i `@(CA00A00B03@ BBB$0, BB<1 &C@RB00300aB00BqB 0Bn*0 0@$@-0BnB$0 &A BBpBB$0 &@$@B@$@Bw0 Bf ABAuBB00B$0> BBB$0, BBhTA&CBB0 B$gA&CBB0 B&CBB0BBH&A$AB!0$@B!0 0Br00300 }This program seperates filescreated with either the 8 or 16 bitversion of LIBR.Placed in the public domain byRalph E. Walden 1986Library filename:LBRBad LBR file!Output drive #?D1:Writing %sFatal I/O error with %s0P`r$+(ice]W PROC PNum=*()W [$50`Press a key to continue.../P  B JKIHiDiELV`LdP dP BLV`0$0LP QPl LP &` Fj`8冨凪` PEӅӥ P`ʆǪƩ Ɛee` QƦʆǢ &Ɛeǐ 0Q 0QLP Q'&&&8儨児祂*LP&&*ń8&&LP Q`hihiHHȱȱLPc !#3`LPJJJJ`H Ph`Hȩh PLR PLR LPLR TPLR ZPH8`HhHh RLR BHI V䅠LR LR dPLRԆ ؠPIPP` RP TPLR SLR RLS 2SLRH- R8塪墨hL2S KSLR RSLRPP RP$ R&*i0:0i RƦ`¢ 护°ڱ%ȱ%E RLS担CS ~RLSI KSLSH SLS SLS8ƣţ`棅ţ ȑƤ藍i`) BHIJKED VP`Hh`h oTHI`LTILTLT`6LTTTP`B0LUTTTT ~RPIL'UTT R`$A)UL0U(U(U(UI` (UI{LWULPU^UN U(UI{LyU+Ui,Ui;LU(UI`LU+Ui,Ui.LU+Ui,Ui(U,U+U U` ULUU"ULU RUU ~RPILU RUU RUILVLVV UL?XUL5VL+V<^,>V& UL?XUILRVLHVVB UL?XUILnVLdVV_ UL?XUILVLVV{ UL?XUILVLVV UL?XUILVLVV UL?XUI}LVLVV UL?XUI~LVLVV UL?XUILWLWW UL?XUIL6WL,WW% UL?XUILTWLJWWC UL?XUILrWLhWWa UL?XUILWLW<^tab>W UL?XUILWLWW UL?XUILWLWW UL?XUILWLWW UL?XUILXLWW UL?XͻUL9XLXX- UL?XU -U` Key A/D Definition for @X ^x \X sh^x eXa,b)' --------------------------------------rXLX+PinX,PioXLXPrinter or Screen? X ~RLXK:Xѩ AR TILX` RPP R R xRPIP PIpLYPLHY$Prepare printer, hit a key (or ESC).Y# kR TIL\Y`PLgYP:Yd ARPLYLY&Error %B, can't print; using screen.%EPY SKPJP ~R T R xRPLYP} RXX kRPILYXX rR[XZX ~RPILZ[XZX RP kRPIL6ZP rRXX kRPILTZXX rRpXpXL[pXLZlXimXipXi*pXILZlXimXi0mXlX ULZcXidXipXi4pXILZcXidXi0dXcX U+PmpX,PiL[L[dis [ UL([L![act [ UqXqXLv[nXmqXoXiILU[Lv[nXmqXoXi UqXL-[$UL[ RPIL[ RL[ ~RL\PL\Ll\Error \e ~RP S. R RPL\L\ No action taken.\ kR xR[P[P`Ѕ,P+P T[[ xR[P[P[I [ILl]L]ERROR: File too \ ~R[˭[L:]L0]small!]) kRLI]LB]big!]= kRL]]No action taken.]L kRPL]L]File loaded successfully.]o kRP RP`L]L]Insert disk, then enter name of] kRL]PFKEYS file (or ESC): D?:] ~R R R xRL^K:^ AR TILL^ RL;^Request cancelled.^( kR xR` RP0PLm^P5Lm^Lp^L^ xRP RL^ :PFKEYS.?^~ ~R R@ TIL^ RL^Request cancelled.^ kR`P RPL^PDP 0TPP 0T:P 0TPP 0TFP 0TKP 0TEP 0TYP 0T SP 0T .P 0TPI Lr_ PPiPPP`L_R_R RL_ Show PFKEYS.xxx key definitions._ kR R ]__IL_P [__IL_ X RL`Show another file? _ ~R@ TIL*`L`L0`K:`- AR R__IY _IyLl`Y R_L|`Ly`N R_L|`LA` xR R R_L`L`L__R RKPJP ~R T``_PZP  B JKIHiDiELV`L.P .P BLV`LP Pl LP &` Fj`8冨凪` PEӅӥ P`ʆǪƩ Ɛee` PƦʆǢ &Ɛeǐ P PLP P'&&&8儨児祂*LP&&*ń8&&LP QQ`hihiHHȱȱLPc !#3`LPJJJJ`H Ph`Hȩh cPLQ lPLQ PLQ PLQ $PH8`HhHh URLQ BHI V䅠LQ LR .PLQԆ ؠPIPP` RP PLQ RLR RLR RLR8ƣţ`棅ţ ȑƤ藍i`) BHIJKED VP`Hh`h TSHI`ƥĤ`LSSSeSMSLS`LSILTLT`LTTTTTLhTTmTTiPmTPiQLbT`TL(T`LtTnTmT8mTzoTnTpToTpTMmTMnTLT`8mTmoTnTpToTpT8mT黅nTEELT``LT8TTTTPPQL8UTT TTTILPUTT qTTTITI TILkULU8TTTTL UTLU`8T黅T`LUUUP` ZPress a key to continue...ULU QUPUPUUPUPP BRUU RPIL = Carriage Return): For you Action! programmers: PrintE (" SET $495=14CR Or, how about this one. Ever get tired of setting OPTIONS with all of those keys just to turn the screen and bell off? ONN Now you can do it with just ONE keypress! Or for those of you who use SpartaDOS (or any command line DOS): DIR D1:*.* DATE TIME CAR Or for those of you who use 850 Express! version 3.0 (or any other terminal program for that matter): ATH ATS11=50 ATZ or you can just use them as 17 'Generic' macro keys! The limits are really simple; ANY keypress combination that you can do from the keyboard can be simulated with a PF Key definition. What Will It Work With? --------------------------- As I said above, SuperKEY! will work with any 'well-behaved' program. What exactly is a 'well-behaved' program? Well, for it to work with SuperKEY!, it must follow these rules: 1. It must properly recognize the setting of MEMLO. 2. It must not steal the keyboard vector. 3. If it steals the deferred vertical blank vector, it must jump to the OLD VBI address when exiting its routine (instead of just jumping to the OS). 4. If it steals the 'Reset' vector, then it must jump thru the OLD reset vector before doing its own reset processing. Luckily, numbers 2, 3, and 4 will rarely be violated. The big one here is number 1. For example, 1030 Express! WILL NOT work with SuperKEY! (sorry, it's not my fault!! ) UNLESS YOU ARE USING SpartaDOS 2.3. This is because the Atari T: handler that 1030 Express! uses does not 'relocate' itself to MEMLO. It just kind of loads and says 'to hell with whatever else is here'. That wouldn't be a problem in itself, except that it loads into memory at address $1E00. So, since most DOS 2.0 type DOS's have a MEMLO of around $1DE0 or so, the handler will just totally wipe SuperKEY! out. But, if you use SpartaDOS 2.3 with its incredibly low MEMLO setting, then SuperKEY! will work great with 1030 Express! v2.1. While we are on the subject of SpartaDOS, there is one other thing that you must do if using SpartaDOS (well, maybe TWO other things). First, if at all possible, you should try to make SuperKEY! the LAST external routine that you load in. This is because SuperKEY! -DOES- do all of the above things properly, so you can be well-assured that things will go OK. Secondly, you MUST NOT do a KEY OFF command once SuperKEY! is loaded into memory. This is because when you do a KEY OFF command, SpartaDOS replaces the keyboard vector with the OS's old location, thus rendering SuperKEY! useless (nothing will crash -- it's just that SuperKEY! is no longer getting first crack at the keypresses). So, if you need to do a KEY OFF because you are, for example, using Action!, then you must do the KEY OFF command PRIOR to loading in SuperKEY!. Finally - The Good Stuff! --------------------------- To use SuperKEY!, you need two programs. First, there is the actual SUPERKEY.COM file, which is what you would run at bootup time (as an AUTORUN.SYS file if you are using DOS 2.0 / DOS 2.5). The second file is the KEYEDIT.COM program. This is the program that you use to create your PF Key definition datasets. When SuperKEY! is loaded, it attempts to load a file from the current disk drive called PFKEYS.DAT. If this file is not present, then SuperKEY! -will not- install itself. Using KEYEDIT.COM, you can create many definitions called, for example, PFKEYS.ACT, PFKEYS.BAS, PFKEYS.EXP, etc., and then copy the file that you want to use to PFKEYS.DAT. The Key Editor is very 'user-friendly', so I'm not going to spend much time explaining what to do. What we'll do is just cover the different keypresses and what they do: Up/Down Arrows - These keys move you up/down thru the 17 PF Key definitions. As each key is displayed, you will be shown two additional pieces of information: the keystroke that invokes this keypress, and whether this key is currently active or disabled. The active/disabled flag is mainly for use with the Express! terminal programs (see below). E - Pressing E will allow you to Edit the PF Key currently shown on your screen. Use the OPTION key if you need to backspace, and the START key when you are finished. D - Pressing D will toggle the Active/Disabled setting of this PF Key. This is used to 'turn off' a PF Key so that SuperKEY! will not treat it as a special key. Where this is mostly needed is for those of you who use the Express! terminal programs. Since both SuperKEY! and Express! use the Shift/Control/1-3 keypresses, then you will want to DISABLE those keys in your PF Key definitions to be used with Express!. That way, when you press Shift/Control/1-3, SuperKEY! will treat them as a 'normal' keypress, allowing you to use your Express! logon macros. P - Pressing P will print a 'PF Key Template' on your printer (it must be capable of printing 80 columns). You can cut this template out, fold it to 'stand up' behind your keyboard, and then write you3456789r PF Key definitions on it. That's It Folks! ------------------ I hope this little utility comes in handy for you. If you experience ANY problems with SuperKEY!, please document as closely as possible what you were doing and leave me Easyplex mail on CompuServe. Also, for those of you interested, the source code for SuperKEY! is also available on CompuServe under the name SUPKEY.ASM. It is well-documented, and should make for interesting reading if you have never messed with the keyboard vector before. Enjoy! Keith Ledbetter CIS # 76703,4061 ;<=>?@ABCDEFGHIJKLMNOPQ@ @@@@APAe Extended memory test13 February 1986Mark J. Dulcey($$This program is public domain.2<""This program tests the extraFmemory in extended-memoryP8-bit Atari computers.Zd##Each bank gets different datan!!values, so select errors inx the modification should bedetected.!!This is not a very rigorousmemory diagnostic, but it""should be sufficient to testyour memory expansion forcorrect operation. You""should also run the built-in memory test; it tests only the first 48K, but is muchmore thorough.Move screen memory downto avoid conflictA@d +"(Loading M/L routines,(6 A @(Select type of machine:J(T( 130XE^( 130XE/320K Petersonh( 130XE/320K Andrewsr( 800XL/256K Buchholz|( 800XL/256K Rice( 800XL/256K Newell( 800XL/256K ICD( 800XL/256K MAAUG( 800XL/512K MAAUG((Choice: < @)!@,(Invalid choice/(2(< A OOAAAAA A0A@APA`/6-@6-@%#A @/ Ap/6-6-@%#A @/ Ap/6-6-@%#A / Ap/6-@6-@%#A @/ Ap/6-@6-@%#A @/ Ap/6-@6-@%#A @/ Ap/6-@6-@%#A @/ Ap&/6-@6-@%#A @/ Ap0&(Not yet implemented& A0:(D A NXUSR(1664,DATA,BANK) loadsb""DATA into every byte of BANKl -v( Loading bank 6-?:Ad<$@<, (""USR(1692,DATA,BANK) compares every byte of BANK to DATA!!Value is 0 if all locations""were correct, or the address""of the location of the error -( Testing bank 6-?:A<$@<,"( OK( BAD   1664,1749* 104,104,104,168,104,104,324197,6,145,208,200,208,251>!!230,209,166,209,224,128,208H243,169,253,141,1,211,96R169,0,133,212,133,213,104\ 104,104,168,104,104,32,197f6,209,208,208,13,200,208p!!249,230,209,166,209,224,128z!!208,241,240,218,132,212,165209,133,213,76,150,6,170189,214,6,141,1,211,16964,133,209,152,160,0,132 208,961750,1765!!131,135,139,143,163,167,171!!175,195,199,203,207,227,231 235,2391750,1765!!161,163,165,167,169,171,173!!175,225,227,229,231,233,235 237,239 " -" $ .$D:MEMCHEC3.BASSTUVW Documentation for TEST256K.BASThis program tests the extra memoryin extended-memory 8-bit Ataricomputers.Just RUN TEST256K.BAS from BASIC andchoose which extended-memory computeris being used. Each RAM bank getsdifferent data values, so selecterrors in the modification should bedetected.This is not a very rigorous memorydiagnostic, but it should besufficient to test your memoryexpansion for correct operation.You should also run the built-inmemory test; it tests only the first48K, but is much more thorough.YZ[\]^_`PPLZP өi ji ji ` B V`B JKLJPS:GDPE Vl L_P B]DPEHI VLPVerified BASIC ON/OFF BDPEHI VLPby Craig S. Thom 12/20/87 BDPEHI V LLQLPQP BDPEHI VL=QThis program only works with B DQEHI VLnQICD's SpartaDOS B^DQEHI VLWPL0RLQ BDQEHI VLQExternal cartridge installed. BDQEHI VQRLROperation aborted. BDQEHI VLWP  iS iS SLRLRR BPDREHI VLRArgument error! BsDREHI VLRTry VBASIC OFF or VBASIC ON BDREHI VLWP SLMR!ȱ ORSoLMRȱ Ff NnLMR)LWPLP)LWP)ө8 8j j8 ` B V`B JKLpSS:mDSE VLWPLSbcdefghijklDocumentation for VBASIC.COM,Verified BASIC switching for XL/XEcomputers. by Craig S. Thom 12/20/87VBASIC.COM is a utility intended foruse with SpartaDOS, but it may wellwork with DOS XL. It, of course, onlyworks on XL/XE machine.VBASIC.COM is operated as is theinternal BASIC command, accepting thearguments VBASIC OFF and VBASIC ON(actually VBASIC OF* and VBASIC ON*,but that doesn't matter). Thedifference is that VBASIC will NOT doanything if an external cartidge isinstalled and will NOT warmstart thecomputer, terminating BATCHoperation.The program was written so that anautomatic BASIC disabling could beincluded in the standard STARTUP.BATfile on hard drive partition D1:,without having problems when an OSScart was installed. Those don't likeBASIC OFF commands very much.A side effect is that users ofSpartaDOS 2.3 can now disable BASIC ina batch file without a warm start,something the internal BASIC OFFcommand of that DOS can not do.I tested this thing pretty thoroughly,but if you have a problem with it, letme know on GEnie, the ICD BBS (I don'twork for them, but I call thereoften), or any of the Atari BBS's inthe Atlanta area. Craig S. Thom C.S.THOM 12/20/87nopqrstuvwxyz{|}~&@I86AIC&&D&E&+ 5B&&&© 1 V-L*B&˜ ' h4&0& 1&& *L*& & 1 ,& & 1 , , *`RUNTIME ERROR AT LINE &&Lk*+ +L&` '& &L&PROGRAM STOPPED&&Ńł ȱ`iL'HH **La/ k* r. 1 {+ - . - 1 - ' 1 {+ - 'hhL-ʥ`HHhh`8L'u`Huh` Lk*L' Lk*L' ( - ( - ' k* -Lh* ( - ' + ( - ' {+ ' k* ' {+ 1 + - h*Lk* ( ' ' + ( - ' {+ ' k* ' {+ 1 + - !( - h*Lh* ' ** -La/` ( k* -L- ( r. - {+ ' - ' +L' ( ' + ' - {+ 'L'C&D&E& ) 1 1,E&eC&iD&`E&8LF& - -E&`ʔȱȱȱ **Șe惠 惨06%*16&* L*HHhh```Lh*ʱ`p B V8+* &)L&l Lw TO BOOT FOR DOS TO RERUN *ȱLk*&&8c5d58凅刐SJj)ee`ффiiL+8L+ LF&uuuLk*8` +Lk*iLk*豂Hȱh`p +Lk*+H+ BHI+ [4h`8` +Lu, +#` +0 +0Lu, +0` +0L,L},`޵` `Ȕ`ʔ惥u`+ BHIDEH [4hLh*L+ލ1-+2- +- 0-0 0-Lk* -Lk*` 3-H -h 0 0-`L+8 0ƅ`66&L;-HH` B VhH)Kh)0 IJD-EB [4hLk*S:+Lk*TUVLh* -`++L+ L+ʱȱȱ`ȵȵLk*Lk* - - -ʥ - - - -LK3 - - r. r. **uȱuȱu P* ** -0 ,,LB3 ȱLk* @,LT.ʵ`eeLF&HHhh`ؐHH **La/ k*HH r. r.6 {+i i .i i -hh - - 'hh -`HH **% k*HH 1L. ** - LF& r.6 {+ - {+` ** -ޠ - 1 {+Lf/  h*Lk*H+ B Vh` ҵ  h*Lh*H+BHI [4+h+L1 0+KJB@D0EH+ [4h h*Lk* k* -@0Ɔ򩛙@0` -H`B [4h`w0w0L1Lk*Lk* +`H h*hL10HH eHHƆeiH -lꦆ 1Օ`0  L,`8`21(1-12- ,@ 1021L121@021`1 k* -1 1`+6-1L1801LF& + 1 r. 1 1 {++ 1 {+Ɔʭ1 +`ʕ`66`HHH66666uuuhhhLk* +愵 ' + 'I 1 T280/66&&&`uuu` T2 a2Ј a2 h* +`@\32@2 .22222 LF&ȥΖ2i22\3`L*J32 J3`LF&2@82ƅJ3 ȱ222` -3L2J3L2H\3 2h`1+ %  88L]3 h* h*` h* h*`  h* h*` ]3$' ]3"0 ]30 3Lu, 3Lu, 3Lu,L1L1d4 1 - .c4d4g4g4`H+ ++HIc4De4d4Ef4B [4Hg4h` VLF&g4` 3e4 1f4g4g4 1Lh4 3g4LF&e4f4, g4g4e4 1f48ee4f4g4 11L81  'Lk*hhLk* 4L2 4L*d42&&ȱ0 W5L5 W5c5d5&& L25&&`i`C&&D&E&` *ȱ&&%8e慱HȱhױE&iC&iD&Lk*+ BH Vh 1LP*+&BH [4hN 1 P*L 1MLP*+%BNLMH [4hLh*)v***G*P*o*11{++2+u,M,_,,,,@,%,4,,**++++,,,-,V-----..-/W/y/2231c0x0{00y)///0//333333Q0&='9(_(( )")O)n44h4045005B3e5s5&55 6 1 888 99#I9(g9-92979<9A9FR:KS:P:U:Z:_;dH;i;n;s;x<}@<<<<=J=m===>>^>>>!?L????&@,@B@@@@@@A IAXA[AA:B"oB'B,B1B6B;?C@CECJCODTVDYD^DcDhEm:ErFEwRE|hEEEEEIFFGrGGH2H`HHHHHII@IX8[8^8a88d8g8<8$^8! 9X8g8j8[8 9+8%X8g89(j8g8I9m8m8g8m8 I9m8g8j8g8g9"p8"m8p8s89X8X8v8X8a8 9X8p8y8g89"X8|89g8<8$8%X8v8y8[89[8mX8v8y8g8R:y8[8|8g8 8$g8d8" 8%88DAs+8Q'B8x8DB8y' TARGET FILE > *.* B88DB8'B88DBg88|88$88D/g8' | B88D/g88DB8%88D/g8'B88D/g88DB}8Dj8[88p8"TARGET DRIVE==> m88 " Return to DOS88" Select Item 88g8" to Change88v8" Directory of 88" Source Files88" Change Item88g8" Selected /"88DAj8[8v8v8"ԠŠ >*X8g8=[8&v8" X8g8J=8v8"8GAI&v8"~8D <m=88DB88|8EBv8v8" TARGET FILE g8X8p8=j8g88p8"ԠŽ m8*8s8s8m8WC8p8"TARGET DRIVE==> m8X8p8>8p8v8" Change 8|8|8" Parameters88" Move to Next88g8" File 88v8" Delete Files88" 88" Tag/Untag 88g8" Selected Filey8g8v84?v8v8v888D7g8s8s88$v88GAI8%8 A8 B8s88DB8g88j8[8?v88GAI8D5 ?88s88F=?88g88FA8  .C888 8DC88888g8v848 8[88g88|88888$g88" 8d8d8 F88g88%8[8@888g8g88"==>8|8@g88g8 " *X8g8@X8|8A88g888IA8888888g8IA88XA88(g8A88DA888g888 8$88d8d8F58 88D/g88-B8%88([888DA888g888 8$88d8d8F5888D/g88-B8%88(g8888 8DCs8s88"8DX8|8Rs8}s8s8"CONFIRM INDIVIDUALLY ٯݠ ^8a8^8a8g8 B'^8+B8g8ӡ}88D/d888v8888F>9?C88g8 888FA68[8m?88 EA8D58g8C8 SKIPPING... 8g88F8D5 Cm8g8C;?88g88FAC8g88C$8888F58 8888-CC%88g8FA88D/888F =VD88g8 88g88FAO88DA8d8g88DB88 8FA8D5 Dc88D/888F =D88g8 88g88FAY88D/g8.B88D/g88DB Ǯm 8D8[8E^8a8rv84!v8[8[88D7;} ٯ^8a8g8 hEw^8+E h SKIPPING... 8D;}CANNOT OPEN 8DR[8}g8s8v8s8g8|8s8v8p8|8g88p8s8888s88|8|88a8m8g8^828@@8@8@8@8@8@8@8&8D1:*.*Ag88-A8'A8(8DB8)' SpartaDOS II MultiFile Deleter V1.5 B8P8DB[8g8"8D'ĠǠĠŠ'ӠƠȠӠ'Ŭϱ'----------------ﬠ''Ӡݠ'p8HK }ERROR: g8|88$d848%[8^8a8d88s8 8g8 a8g8a8d8J&̨婮͠ This utility has the look and feel ofthe SpartaDOS II utility, XCOPY.COM. It can only be used with SpartaDOSversions 2.X and above. It is quite easy to use. Here aresome tips for using XDEL.COM 1. It's best, though not essential,to turn BASIC OFF. 2. With XCOPY, you select your sourcefile specification first. Similarly,with XDEL, you select your TARGET filespecification-in the same manner-PRESSthe SPACE key to change the file speci-fication from "*.*" to any directory orfilespec you choose. Next, pressSELECT to select your TARGET drive. 3. Selecting the TARGET drive worksthe same way as XCOPY. Press SPACEuntil the appropriate drive number isdisplayed. 4. When the right TARGET filespec anddrive number is set, press SELECT todisplay the directory from the TARGETdrive. As in XCOPY, subdirectorieswill not be displayed. They cannotbe deleted unless they are firstcleared out. 5. Press START to discontinue select-ing files for deletion. You may also,at this point, press OPTION to changeeither your TARGET filespec or drivenumber. 6. After you've pressed START, theprogram will clear your screen and giveyou the option of CONFIRMing deletionon each file (with a YES/NO prompt) orchoosing to delete all previouslyselected files. --------------------------------------- It's really that simple! I hope youenjoy using XDEL. It represents about16 hours of effort-programming in BASICand then compiling it with the ABCCOMPILER, and then, refining thecosmetics to insure it "felt" just likeXCOPY. Paul FieldsCIS: 72465,1260GEnie: SAAEBBSSan Antonio Atari Exch * (512) 658-7223AO 8 M MO iA iA ! 2O$XiLLYiLLLXiȍLMYiLMӪ)ӭLȌO J vK J E= ȩB  vKO GO HO HO I KVolume Name? O@ CJO@ LBL RK KInsert Diskette to FormatPress When Ready... Jɛ J LM M MO1^QN@   M0wO ,P0f O)^QOaQOeQ0dQOcQO) *bQOʊ OXCOYCjQ,PC ML-J,P02N MO",!O @   ML-J D E,O0PN MBDPE 0PJ VL-J BDWEPHPI V0 MUN M LR}Nx RK JυR JH LhN LN7 RK J J3O ED HT HS IC GПɛЛLBOPOPNPnPjJJJJJPPP,O H*hJP@i @iP@i@,O)(@8O @P @O @@O@O@ ҍ'@` ʎ @ E@PPJJJPP)GOITP,TPPGOPTT EΧPөUV @UU E ?NfqhihiHHȱȱ`8Hh` {fE…¦ {f`L{f` f"Ff ee&8Lf f_Wń児0 &&86.ń児8儅充FfFf8Lf f` Fj` &`p B V8l g VhhlgHHJJJJhh`hhlg `iDiE`Hhg`Hh`Hh`Hh` gIHiDiE B gHI B g`*      !"#$%&'()$d0L 2L>%L-Lx%Lo(L(L(L(L4)L2)L%L%L%L%L%LU,L`,L(L)L,L(L+L$(L".L,L(L'L'L'Lm'Lv'L,L,L'L(L'L'L.L.Lk.L.L.L.L.L.L.L#*L.*L&L&L.&L=&LF&LQ&Lk&Lr&L{&L&L&L&L)L)L)L)L,.L)L:'L'L&LL'L['LR'L*L*L.L&L&L&La'LB(LR(L.L(L/L9/L6/L/L/L/L/L0L0L+0LC0L/L^(Lj(L)'L@'Lo/Lr/LO/L%L'L%L% -膚 ɩҍD҅ 2 222 a(2222 ` -Lq -l ԤՄԅ`ȱ`ȱ`ȥ`ԑȥՑ`ԤՄ`ԤԅդՅ` '0=D '04.5 '0.( '0 ' ' 8`ԅ` & & & &ѐ & &ʥ %аЪ %Зьɛ &0 &0 `ԥ`Ɠƒ` % &LS* %LS* %օ0֥0 S*` %eԥe` %La* % % o*L% %Lo* % &L|* %L|* %L% % Ʌ` BLV䅆L' %ԅ`TU HH 'hhL, B VԩL%p v'PKJBDEL, &fL=) %ԅ`Ę eĘ +L4( % & %` %Ԅԅ` -``&eԅԥeՅ`L% o(ԨL%Ԅ & %eԥe` Ԅ &ɛ +0` d) ذI ( 8ԅԩՅL%L,ȹɛ꩛` d)f & 8fԆՅɛ摥0L?)$0`2 2L,(,ɛM(M( )ɛ )򩀅` %ԍ`ԄL%ԄL%ɛԆL% &󅐩f =) ؐL(L4,ԅԥՅL%82ԭ 2L%ԤՄԅե`8ե`eեe` B* K+fL% B* +fL%8ԨՄԅL% & B*ԥՄԩՅօפԥFf G+ԥ K+ԅՅԥզЦ`ԅՅʩ0B+=+ B+ 08f$˹ `' d +1ԦԄզՄFԐ eਊe&Lh+Ԇ`hh L, +Ff&֐ݥ ԆՅԠ&&&8થօԈ`քע +Ե 8`晄 ,L,`GHFH` U,0ɛȄ ؐL,HI h 8ԅԩՅL%?S, ,򦅩DEBHIL,ɛ +` +` %HI BL,՝HIB VL,L%B Vú.hh -l. -0dd-8/ i - 0-- ,@ . ,... + x' $(.Ԏ.8ե ".LO-- , `,ɛD(C` ذ -L- -L 2 -- ,L- - -L-l lp '8`ERROR- ?Run address> BASIC exitTrace:P8Յթԅ` ,.L, .-ȘH *h00,)` & ҅ԭ ) |*օեׅ` L,0թԅթᨊઐ```Յ`8Յթԅ`0 ԩ`ԅ`` ' %`BԝK)I JD/ELVS:)H)h y` & % & %TԅUՅV`&B ,NLսM` & %ԝL՝MN%BL, & /` BHIL, & /`B JKL, %ԅUՅV & %ԅT`)ҩҊ H) hҘ` %)xԩL% %))Lc&LZ& %)pԩL% %)|LZ&Lc& V0L-$2~2'@'@DDhDDL 2 $ppҠD Z$1@ H$ ?$ $ <G@vD $K@D $5@ !$PD '$5@ !$R22D '$N@hD $Z@D $a@ !$ $D $ h9 Z$ ?$ Z$c@ H$ Z$ -$ᢐD <$2}3թ@D $L*3L3ԩթ@D $LY3L3ԩթ@D $~33L3@wD $L3 h9L2 h9 Z$ ?$ Z$@ H$ Z$ -$ᢐD <$ԩթ@D $L43{4L%6ԩթ@D $L/4L%6ԩթ@D $Ls4@D $Ly4 h9L3 h9|44 Z$ ?$ Z$@ H$ Z$ -$ᢐD <$ԩթڅ@D $L4LV5ppҠDԩթ@4z5D $L5LV5ԩթ܅@D $LP5/@ !$PD '$LV5 h9Ly4 h9 Z$ ?$ Z$ޠ@ H$ Z$ -${55ᢐD <$ԩթڅ@D $L5L%6ԩթ@D $L5L%6ԩթ@5y6D $L6/@ !$RD '$L%6 h9LV5 h9 Z$ ?$ Z$A H$ Z$ -$ hD <$ԩթ @hD $z66L6N@hD $L> h9 Z$ ?$ Z$A H$ ?$ Z$ ?$ Z$5A H$ ?$Щ r$LD '$LD !$C@ $L6L7LD6x7 !$?@ $L7L 2L6 Z$1@ H$ ?$8 %vD{D $hD~D $ Z${D f$ Q$ Z$y77ᢌD f$ Q$ppҠD =ԩթ@D $L8 Z$1@ H$ ?$ Z$ ?$ Z$ ?$ Z$ ?$ Z$Q7x8A H$ ?$ Z$ `$FD '$ԩթjAD $L?8 ~; Z$FD !$ $ᢀ K$FD !$a@ $L8 Z$y88ᢧD K$ ?$L8é r$HD '$RHD !$pA $L8 Z$ ?$ Z$rA H$ ?$ Z$ ?$L9 Z$ ?$ Z$A H$HD !$ E$8x9A H$ ?$ Z$ T$ Z$ T$0 Z$ T$ppҠD Z$A H$ ?$Щ r$LD '$LD !$C@ $L_9Lb9L69L 2L$5@ !$OA $$ $y99 Z$ؠA H$ ?$A !$B $$ $ Z$wD K$ ?$ԩթjAD $L9A !$A@ $$ $ Z$B H$9x: ?$ԩթ@D $LH:A !$A@ $$ $ Z$ B H$ ?$PD !$5@ $L:A !$B $$ $ Z$By:: H$ ?$PD !$/@ $L:A !$B $$ $ Z$B H$ ?$RD !$5@ $L:A !$'B $$ $ Z$)B H$ ?$RD !$/@:v; $L$;A !$'B $$ $ Z$,B H$ ?$A !$'@ $$ $ Z$0B H$ ?$A !$'@ $$ $ Z$ hD K$ ?$5@ !$E@w;; $$ $`T r$JD '$^D !$3@ $L; Z$ ?$ Z$ $L> Z$A@ !$ $ᢀ K$RD !$/@ $L> Z$)D !$ $ᢀ K$-D !$ $ᢀ K$/D !$n>> $ᢀ K$` Z$1@ H$ ?$/@ !$^D '$8 %vDD $0 Z$ T$ R Z$1@ H$ ?$0 Z$ᢓD f$>l? Q$ppҠD Z$3D H$vD K$7D H$ ?$ Z$ ?$? %/@ !$ND '$0 Z$ `$`D '$ Z$`D !$ $ᢀm?? K$`D !$a@ $L? Z$ᢧD K$ ?$ ~;ND $BD $LE?é r$HD '$pA $L?L83@ !$^D '$ ~;R?b@ Z$ ?$0 Z$ T$5@ !$^D '$ Z$1@ H$ ?$ %>Ć5%/E)ԵH膇hCI4HLponLpoioLpnooi*noonoi.noonoi*noongogorogqogn >kogogoo koLCq fk8ooo hLq entries in directoryqn i go``oABCDEFGHIJKLMNOPQRSTUV FATBACK v1.1 By J. Williams, 1987-------------------------- FATBACK is a utility to backup and restore Sparta Dos control sectors.That is, the actual data sectors that belong to the directories and thefiles in those directories. It does not back up the files themselves. It willalso backup the free sector bitmaps. Running FATBACK.COM------------------------ Load FATBACK.COM without basic or any other catridge. You will be promptedfor the source and destination drives. Insert a blank formatted disk when soprompted. The program will then copy all the directory sectors, theirsector maps and all the sector maps for all the files in those directories. Itshouldn't take more than a few minutes unless you have a 60 meg hard drivewith a zillion files. The file it produces on the target drive is thefile you'll need to run the restore. Running FATREST.COM------------------------- Load the program without basic or any other cartridge. You'll be prompted forthe source and target drives. The source drive is the one with theFATBACK.AJW file on it, and the target drive is the one to be restored.The first prompt is do you want to restore the bitmap. This is the freesector bitmap, and if you restore it, you could have serious trouble whennext you write new files to the drive. If you don't restore and it's in erroryou could again suffer problems with overlapping files if you restore adirectory that is not indicated in the bitmap. Whether or not you restore the bitmap, the first boot sector will berewritten to point to where the bitmap and first main directory sectors wereat the time the backup was made.Generally the safest thing to dois not restore the bit map unless you're sure it's in error. Better tohave wasted space than overlapping files. After that, you'll then be prompted as to whether or not you want to restoreeach directory that was backed up. If you say N, then that directory isbypassed. If you say Y, then the directory, it's sector maps and thesector maps of all the files it owns will be restored. If the files in thatdirectory are different than what they were at the time of the backup, the extra ones will disappear. So copy them out before you restore the directory. Again, it may take a while if there are a lot of sector maps to restore. Ifan error occurs while writing to the target drive, the program will print anerror message and continue processing. Miscellaneous Notes------------------------- Both programs operate under the assumption that the drive that isbacked up and restored to, is a double density device. The output file canreside on any density device. Esc or at any prompt will exit either program.XYZ[\]^_`abcdefghE:K: ɛ`  <`&B VLMN`%BLMN V` BDEHI VHI(` BHI V`V 2~$ɛV&LVV LVV `V~ LV B V`{U`a` `VR  `V񬙠V`HHH H HH BJEhDK V`XHȊXșXȌh`XXX`X V8VWW V` 0 ߡ ڡ`Fatback94D1:FATBACK.V11} Fatback v1.1 Written by J. WilliamsEnter source drive #Enter output drive #Insert output disk and press anykey or Esc to exitI/O error writing output fileBackup file sector maps ? Error on source driveProces5fsing completeLoading boot sectorsSaving bit mapnoupPR@1gh    Y` 8W>VH XWV X 2ɛ0  `1980s ghC ~LniqliΟԩq0rqr0WV X 2ɛL19: W3V X 2L WV X 2 Y 9 ߡ ᠤ L  ᠤ L ¢âsmh ~Lnȱii ̥ijqr}pȱȌt s ~iitpǠȱ iiLqr8qr  ᠤ LijkȱlȱmL੠id)Lੱ)  L xLȱȱss ~Lns  ᠤ Lst еm lk1k8kllmm l kiiLfnoLdqriiȱnnonLee/ L LȱHh8no`X ɢʢȢpghss ~ pȢss  ᠤ hhLpЩ`jklmnopqrstuvwxyz{|}~E:K: ɛ`  <`&B VLMN`%BLMN V` BDEHI VHI(` BHI V`V 2~$ɛV&LVV LVV `V~ LV B V`{U`a` `VR  `V񬙠V`HHH H HH BJEhDK V`XHȊXșXȌh`XXX`X V8VWW V` 0 ߡ ڡ`Fatback94D1:FATBACK.V11} Fatrest v1.1 Written by J. WilliamsEnter source drive #Enter output drive #Insert Fatback disk and press anykey or Esc to exitError reading index fileNot a Fatbackup fileError updating target driveProcessing 5-completeFile sector maps not restoredFile sector maps restoredLoading boot sectorsRestore xxxxxxxx ? Restore bit map ? Ǻ Bit map will be restoredǺ Bit map not restoredBit map in error, not restoredǺ Error writing bit map67@;PR@1./    Y` 8Wâ?٨0 Lç > LȨ\ ./  ࠤ Lçȱii з129:}8ȱ83< 4./  ࠤ Lçii<8ȱ iiL%12WV X0 2Lç Y0 123ȱ4ȱ5L)L)  L MLȱ4/;./  ࠤ Lç0;; @ ;< Ъ5 4313834455 4 3iiL 679: u uL9L99: u9:ii>ȱ?660+76LȨ* Lç LçȱHh867`0`>?12; @ }8ȱȌ< %; @ii( <8ȱ iiL`ɢʢ./,'Ȣ8=WV X 2hhLç H hY= LzҠ ;  ࠤ hhLç8Ȣ; ==;; @ 8Ж;;./ IɢKʢLȢJƢHǢIĢF(LŢG¢DâE; @./`@ede@  B JKIHiDiELV`LA A BLV`LB Bl LB &` Fj`8冨凪` GBEӅӥ GB`ʆǪƩ Ɛee` XBƦʆǢ &Ɛeǐ |B |BLCB XB'&&&8儨児祂*LCB&&*ń8&&LCB B`hihiHHȱȱLBc !#3`LBJJJJ`H Bh`Hȩh ALiC ALiC ALiC ALiC AH8`HhHh CLiC BHI V䅠LiC LD ALiCԆ ؠPIPP` CDP ALiC eDL+D CDLjD ~DL9DH- 4D8塪墨hL~D DL+D DL9D CDȹP`텠8堨塪 CD芨Oȩ-`PP DP棩 Ѥģ0-ģ6000:,80H & &ehe&eģ0ʥ 8堅塅`$ -D&*i0:0i -DƦ`¢ 护°ڱ%ȱ%E -DLE担CS CLEI DLEH ELE eDLE &B V iCNLMȑ` MLN%B VLiCHhƣĢ`ƥĤ`Ѣ F`ȱѢĦ`膡``ťƤe8夰LG Ƥ8`ŦeѠe桊L GLG`LG )CGGGGGGiGiGiGiȱGiGiGiGiȱ`LH )CGHխGԩٍGG ~GHH G`L8H4H3HԮ4H3H G ٥Յԅ`LbH )CYHԮZHYH G\H[H G ڭ^H]H G`LH )CHԮHH GஜHH G (ۭHH G`LHLHHHHHLIHH @ILI@LI@@`L$I8 I II IHH H`LVI )CNIAA1AiAiNIAiAiRIȑQIAiAiȑAi AiPIȑOIAiAiHHPIOI Hhh B !IAiAi`L/J )C'JAiAiRAiAi@+J*J)J(J'J SI` DEBHI VHI`LtJLJISLJ``LJ i?J iJJJJILKJ@LKJJJLJJ`LK i K iKKK JK i iHHKKKKLK HKLbK8K`LK )CK KKK͊KLKKK` i K iKKK i iHHȌKK L L͑KLL HKLL H i!K iKKKKILzLK@LzLKmKKiKKKKKL-LKK8K`LL )CLLLL KLLѮLMLLѮLMLiLiLiLiLL8 FLL8`L'M MM i?"M i#M!M"M#MILM!M@LMMm!M Mi"M#M"M#M!MLAMM M8!M`ALMMMMMM LMMM FLM`MMLM`L N@@L'N@ C@LN`L0N,N,N@@LN LtNLcN%EPrinter Error: %U%E@NM ELN@ILNLN%EBreak Abort%EN ELNLN%EDisk Error: %U%E@N E N@B@B B@`LNN CLNK:N C DN CN`LO )COOȌO NOOL?OO"OI}OLWOO OLdOLOOI~LzO8OOLOOILO8OOLAPLOO)OOmOOiOOOiOOLOO 0DOLOOOiOEL/P8OO NOOI OI~LOOIL'PLAPL/PO 0DOiOEL&OOOO +D`L`P )CVPVPWPZPXPYP[PȌ\P[PPP\PLPZPm\PVPeWPiXPm\PYPi\PLPVPWPm[P`LP )CPPPPP FP PLQPPPP ]PP PLQPPPP ]PP PLQPPPP ]PP PLQPPPP ]PP PLQPPPP ]PP PLQPPPP ]P`A LQQ @Am @AiI LR @I LRAm @Ai @Q @LQAi AiI LR. @Q @iQ @Am @AiI LR @I LRAm @AiQQ @QLGRQ @8 @QQLRQ@i@mQ@ >G@@ @> @@LRQAA`LR8@ @ @@I>LS8@@8 @ @LR8@@`AALkS )CSfSgSS SL V@@~SS@ ,J@@LS@ -N@ B~@eSeS@ SSS S"S!S$S#SSLU CLTLySfS`LV )CVViViViVi BeeV hSLV@LV +DViViViVi BeeV hS +D`VLVVA~ J @AA~AAV~V @AALWLWVLWAA)LWAA)LWAAAAA QVV V @ @LWAA) LWAAAAA @ @`LV`AALXW WLJXW mA*(mAWLX@A@AWWILY C@LuX*.*XqW PWҩ CW mA*(mAIILXAA~AAA V VW mA*(mA ZF VLTYWЩ 3FW mA*(mAWW QWLY RW mA*(mA8WWL[X C`LY )CYYYY HYYY HYd HYYY HYYY _HY 5H`A(A(AAe e L{ZnZoZLZNo fragmentationZ mnZ*(moZLZLittle fragmentationZȑ mnZ*(moZL[Moderate fragmentationZȑ mnZ*(moZL:[Heavy fragmentation[ȑ& mnZ*(moZLq[Fragmentation critical[ȑZrZsZL[No action required[ȑ mrZ*(msZL[No action suggested[ȑ mrZ*(msZL \Backup/Format when convienent[ȑ mrZ*(msZL@\Backup/Format soon\ȑ- mrZ*(msZLo\Backup/Format!\ȑ` (Z F (Z: FZb @ @ DZh @ @ DL\ Directories:\ZbZ PL\ Other Files:\ZhZ: PL!] Fragments:]Z >GLD] Fragments:]9Z: >G@@ @ @ YwZvZL](%E------------- Summary --------------%E]w EL] %E%S%U-%U%%%EZ@@wZvZ] E@@ @ @ YwZvZL^ %E%S%U-%U%%%EZ@@wZvZ:] E @m @ @m @Zb DLT^ Total Files:^ZbGZ PL^Total Fragmented:^"tZ >GL^ %E-Totals-%E^ EL^%E%S%U%EZ@m@@m@^ E @m @ @m @@m@@m@ YwZvZvZ wZL$_@L}_vZwZ0L;_@L}_vZ3wZ0LR_@L}_vZLwZ0Li_@L}_KvZwZ0L}_@L_ %EPercentage of Fragments:%U%%%EwZvZ_ E (Z FZb@@ DL_ Directories:_ZbӢZ PL ` Other Files:`Z >GL;`%E-Extra Fragments-%E`% ELN`%E%S%U%EZ@@`E EL`$------------------------------------`h CL` Status: %S%E@ mnZ*(moZ` EL`%EAdvice: %S%E@ mrZ*(msZ` E`L aL.a Usage: CHKFRAG Dn:[path] [/LMOP]a C +DLKa L: List Filesa; CLma M: Display Sector MapaU CLa O: Output To Fileaw CLa P: Printer ONa C +D B`La +DLaCHKFRAG v1.0 01-Sep-89a CLa (c)1989 Tim Lowerya C +D`Lbaaaa C a`rZ(rZ LYb N JLbLb&%ERequires SpartaDos 3.2 or Greater!%Ebi E @ @ @ @Lb @ @Lb B ab$ KbL LLbLbMbI/Lb@Lb@ KLb @IL c a$b@D%b@$bI>L,c8$b$bbL5c>c3$@ P8&b0@@@@ @ @ @Ȍ @@@@@@@@@@Lbcc@L!d@LbIP @LbIpLc@Ld@LbIM @LbImLc@@Ld@LbIL @LbIlLc@Ld@LbIO @LbIoLd@@LcB@B@/NB.NB@~@ ,J@@L`d@ -N@@@I LdLdNot a SpartaDOS disk!%Eds ELe@LdLdP:d bLe@LeLd%EEnter output filename%Ed ELdDn:[path]filename.ext%E%Ed E(b$ O +DD%bb$ b@@@I @ILme@I @ILEeLaeStandby, checking...%E%EeH E@ X xZ NLe%ECHKFRAG complete!%Eey E@B@B B``Vb  Documentation CHKFRAG.COM v1.0 02-Sept-89 By Tim Lowery Requirements: SpartaDOS 3.2 or higher SpartaDOS formated drives I borrowed idea for this program from the August '89 issue of PC Magazine. Although at this point we don't have a hard disk optimizer for the Atari 8 bit, I thought it would still be useful to know the degree of file fragmentation on the hard drive. What are disk fragments? Well ideally when all our files get written to the disk it would be nice to always have all the sectors written consecutivly. That way when the drive has to either read or write to the file, the head would not have to jump around the disk platter to get all the data. This speeds up reads and writes. But after a while, when files get erased and different files of different sizes get written back, DOS tries to utilize the disk space as effeciently as possible. So for example you may have a file 2K long that you erased between say 2 other files. Now when you write a new file to the disk that is say 3K, the first 2K of the file go into the newly created 2K of space. Since there is not enough room to fit all the file and there is another good file in the way, DOS will go to the next available open spot to finish writting the file. This becomes your first fragment in the file. Depending on the next available space to write to, again if there is not suffucient space to finish writing the extra 1K, you might end up with multiple fragments. You get the idea.. So what's the solution? Well you can keep track of the condition of your drive with chkfrag. If the situation gets real bad. Then your only option at this time is to backup the disk, reformat, and restore. This will unfragment your files. The program is very simple to run. From the dos prompt, type CHKFRAG Dn:[path] [/LMOP]. You may specify either just Dn: (drive number) or to check subdirectories you may specify a drive path as well. If you don't specify any drive number you will be shown the 'Usage' parameters. The second parameter(s) are optional. If you only specify the drive, the program will then proceed to go through and check each directory and file. When complete, will report its findings which I will detail later on. Now for the options. To get a listing of fragmented directories/files specify '/L' in your run command. So for page 2 example I wanted to check drive 1 and at the same time get a listing of the files it finds, I would type: CHKFRAG D1: /L. The 'M' paramater indicates to the program to display the file listings and also the sector maps. As the sector maps are displayed, when a fragment is encountered the word 'Fragment-->' will be inserted. The reason you might want to get the full listing is to see the extra fragments the file might have in it. Depending on the file size, this method of running chkfrag will slow down the process considerably due to the fact that each file sector map will be scrolled down the screen for viewing. The last two options are for re-directing the output. If you include 'O' in the options paramater you will be prompted to enter and output disk file name. All results from chkfrag will then be redirected to an ASCII file for later viewing/printing. Or you may re-direct your output directly to the printer by specifying 'P in your run parameter(s). When chkfrag has completed checking your files, a summary of the results will be displayed. You might want to run the program on a drive without any optional parameters to get the summary screen and follow along with the discussion. The first entry will be the total number of directories/sub- directories contained on the drive. To the right of the directories number will be the word Fragments and 2 numbers seperated with a dash. The first number represents how many directories that were encountered that were fragmented. The second number is a percentage of fragmented directories to the total amount. The second line contains the total amount of other files and number of fragmented files, percent etc. 'Other files' represent all other files contained on the drive. Next, Totals are given with represent the total number of files/directories and the total percentage of fragmented files which is really more of an accurate representation of the percent of fragmented files to total files. After the totals are displayed, two more entries are displayed representating 'Extra Fragments'. A real example will probably make is eaiser to understand what these mean. I did a check on a floppy and here are the results I got. Directories:4 Fragments:2-50% Other Files:58 Fragments:18-31% Total Files:62 Total Fragmented:20 Percentage of Fragments:32% Extra: Directories:6 Other Files:12 Ok, now is says I have 4 directories on the disk (counting MAIN as number 1). page 3 Of those 4 directories, 2 of them are fragmented. I have 58 other files of which 18 are fragmented. My total percentage of fragments to total files is 32% (Not too bad). Now of those 2 directories that are fragmented, there are another 6 fragments. At this point I really don't know where they are. The first fragmented directory could have the extra 6 fragments, or vice versa, or the could be split between the 2. At any rate in order to find out for sure, I would want to run chkfrag again and specify the map option and I could see where they are. Now I can also see that out of the 18 'Other files' fragmented, I also have 12 extra fragments contained in those files. Last, a status of the disk is given in which case the program returned the statement "Moderate fragmentation" and Advice: Backup/Format when convienent. The advice is just a suggestion, as such is not set in stone. One thing to keep in mind is that even with a backup/format/restore, you will be able to de-fragment your files but most likely, as new directories get written, they will automaticly be fragmented a little due to the nature of the way SpartaDOS writes directories. But that's not serious. I hope you find the program useful in your hard drive maintence program. Tim Lowery