@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `1  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ 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  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu  } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG*}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES+}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N',}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT.} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL/}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0.1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC2}COPY--FROM, TO?OPTION NOT ALLOWED736 FREE SECTORS COPYING---D1:DIRECK.COMl# 0|D .L/%#3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US@}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! ,B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,HhD}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURNE}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <.F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#PH},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DOJ}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξK}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L!M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥN}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAMEO} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 138ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uR} 0}V1.4 ALFCRUNCH 07/10/88Input filemask:Output filenameCrunching: CreaT}ting new file: Adding to file: Processing complete.Error reading directoryCan't add to a non-crunch fileError readingU} input fileError writing output fileMemlo must be under $3000Screen off for speed ?   V}@/0K$  Y!L] Xy/ 0 @ /Sl `# L yP K yW}PP0 0TP{|}~ 0;PQ Π L 0 ċ- Lz 0X}   L  YLL @ Xy7 yP KyPP@ ɋ L!> Y} XP Y! Ȉn P !/ -L/L mn# K  ` Z}L΄ T  K L^  . L^   [}[{|} ~N~n})}~0em}efm~fgig  `  \}i`8 &  hFfmm)ȥL ]}8庪.. mm Ff8帅幅``{|}~em}^}efm~fgig0   LMee) h` f#8`{|}~ _}#a} ~Э}~}moo~mppmqqmmmmnn` hhhhL ;`} Ѱ8` ȱ ;Ų ` ȱ8`ȱLy ȥ` a};`8鍍Nn mm`&&eb}emm` Ffee)潭mm` 8`c} F ɛ>:򊨽PzP z0ʩ.P zPz󩛝PQd}P>:PXɛ X ȝX P L͈`@{|}~ `0 S ˌH8Pzhz e}ij0 svtwux0 늩V{|}~ 0 0 ċ` i? iS" ɛ@8`ɛf} @"`"P ɛ@y`K:P3: ` BHI V䭃g}`&B VLvMwNx`%BvLwMxN V`  B{D|E}H~I VH}I~(`h} BHI V`y E~ɛyNPyL]yP`y~L] B V`{`a` `yR P P`HH i}H H H BJEhDK V` ` `V{|}~0 Ίvswtxu0 j}eo`PD :Q)R$yiyPPD1:PQR`.ALFyP. yPʎy`ˌk}SȌɌʌ>`0BDEJK V0 LҌ0{|}~ 0ݭ)(ܢX. ٴ l}X ٴз0 Hh`ȌɌ`vw)xNwnvv)yNwnvvyx`Hvwvv.wm} vvv.wh vvvw`LvL-LP< AlfCrunch Documentation Revised 7/10/88 ----------------------- AlfCrunch is o} an implementation of the Lempel-Ziv compression algorithm. Although it produces files that have the same structure as tho p}se produced by the Arc program, the two are not compatible. Arc cannot uncrunch AlfCrunch files, nor can AlfUnCrunch unarc n q}ormal Arc files. The current version of the LZ/DZ files is 1.4. Versions 1.1 through 1.3 are compatible, but not with r}1.0. If you have 1.0, you should discard it and use 1.4. The reason for this is that 1.0 used the same header as normal Arc s} crunch. Because of possible confusion over this, the header used by AlfCrunch was changed. Since 1.0 had very limited dist t}ribution, this situation should not often arise. For those who wish to be able to detect the AlfCrunch format, the first t u}wo bytes of the file will always be $1A $0F. This version fixes an annoying bug in both v1.2 and 1.3. If you had asubd v}irectory entry amongst the filenames you were crunching, LZ wouldstop at the subdir entry. Also the stack errors will now ca w}use a properexit to Dos rather than re-execution. Enhancements to v1.4 are the addition of time/date support. If youar x}e running under Sparta 3.2, LZ will store the Sparta date/time from eachfile into the header. DZ does not use this informati y}on, it's just there toprovide a reference point. When running either LZ.COM or DZ.COM, Memlo must be under $3000. This z} should not normally be a problem unless you have a lot of handlersinstalled. A cartridge may be present, as it only affect {}s the size of the buffer available to AlfCrunch. Maximum speed will be achieved without a cartridge being present. A fi |}nal note ------------ Well I think this is about as far as AlfCrunch is going to get for now. Idon't really believe th }}ere are any more features to add without modifying thecommand line parameters. So this version (1.4) will be the last forso ~}me time to come. Except for bug fixes (few if any I hope) the 1.x line willnot change. I hope to add command line parameters } similar to ARC and maybeadd the ARC compression methods to finally resolve the compatibility issue. Alfred Program }mer's Aid BBS (416) 465-4182 Running AlfCrunch ----------------- To crunch files, l }oad LZ.COM. The title will be displayed, along with the version which should be 1.4. You will then be prompted for the outp }ut filename. This may be up to 80 characters long, including subdirectory names. If the output file already exists, it }is checked to see if it is anAlfCrunch file. If the first header is correct, then the new files will beappended to it. If t }he header is wrong the program will print an errormessage and exit to Dos. If the file is shorter than the header length(29 } bytes), then it is simply opened for normal output, which erases it. Next you will be prompted for the input filemask. }This is what will be used to select the files. This may also be up to 80 characters long, including any subdirectory names. } Wildcards are allowed. If selecting all files, the mask must end in *.* . Finally, you have the option of turning the }screen off. Selecting this option will speed up the program by 15-20%. Once selected, you will not again be prompted for th }is option. If you do not elect to turn the screen off, the program will continue to present this prompt until it is selecte }d. The program will then select files using the mask and compress them, displaying the filenames as it progresses. When } it has finished, it will prompt you for additional input filemasks. You may either enter another mask or simply press retu }rn to exit back to Dos. LZ and SpartaDos 3.2 -------------------- If you are using Spar }taDos 3.2, you may invoke LZ.COM and specify the output file and input filemask on the command line. The format is: [Dn:]L }Z Dn:[path>]filename[.ext] [Dn:[path>]filename[.ext] ] The square brackets denote optional parameters which may be omitte }d. The first filename is the output file. The second is the input filemask. If you do not specify the input filemask, the }program will prompt you for it. The program will automatically turn the screen off. When it is finished it will prompt you } for more input filemasks. To invoke LZ as part of a batch file, the format is almost identical. The lines in the batch } file would be: [Dn:]LZ Dn:[path>]filename[.ext] [Dn:[path>]filename[.ext] ] Dn:[path>]filename[.ext] <- Addi }tional Dn:[path>]filename[.ext] input masks The program will read each input filemask, compress the files } selected and continue until all the input masks have been used. You will then be prompted for more input masks. If this is } part of a larger batch file, leave a single return after the last input mask to force LZ to return control back to the bat }ch file. Example: [Dn:]LZ Dn:[path>]filename[.ext] [Dn:[path>]filename[.ext] ] Dn:[path>]filename[.ext] Dn:[path>]filen }ame[.ext] (single return here) [Dn:]LZ Dn:[path>]filename[.ext] [Dn:[path>]filename[.ext] ] Dn:[path>]filename[.ext] Dn }:[path>]filename[.ext] (single return here) At the end of this, you will be left at the Dos prompt. Because of the way } i/o redirection is handled, an alternative form is available: [Dn:]LZ Dn:[path>]filename[.ext] <- The output fi }le Dn:[path>]filename[.ext] <- The input filemask Y <- Turn the screen off Dn:[ }path>]filename[.ext] <- Additional Dn:[path>]filename[.ext] <- input filemasks (single return here) } Notice that the Y was only supplied once. When LZ is run in this manner, it behaves exactly as if you were pressing the ke }ys yourself. If you turn the screen off, then you need only enter the Y once. If you said N, then you would need an N after } every input filemask until you said Y. Example: [Dn:]LZ Dn:[path>]filename[.ext] <- The output file Dn:[path> }]filename[.ext] <- The input filemask N <- Leave the screen on Dn:[path>]filenam }e[.ext] <- Additional mask N <- Leave the screen on Dn:[path>]filename[.ext] } <- Additional mask Y <- Screen off now Dn:[path>]filename[.ext] <- Additi }onal masks, but no Y Dn:[path>]filename[.ext] <- is necessary (single return here) Getting Them }Back ----------------- To extract the files from an Alfcrunch file, load DZ.COM The title will be displ }ayed, along with the version number. The first prompt is for the name of the file to uncrunch. This filename may be up }to 80 characters long, including subdirectory names. Wildcards are not allowed. The next prompt is the output directory }. This is the directory where the files will be placed when extracted from the crunch file. If the directory does not exis }t, an attempt will be made to create the directory. This may involve creating a number of subdirectories to get to the last } one, so care should exercised with this feature. If errors occur during the directory build stage, an error message will be } displayed, and the program will return to DOS. You may specify a wildcard toonly extract certain files or use '*.*' to ext }ract them all. *.* is the default. Auto directory creation is only available under SpartaDos. Under any other Dos, if y }ou specify a subdirectory, you will probably geta single file with the name of the first pathname. Assuming all is well }, you again have the option of turning the screen off while files are being extracted. The program will then extract ea }ch file and place it in the output directory specified. If any errors occur, an error message is printed and the program re }turns to Dos. When all files have been extracted, you will be prompted for another input file. You may enter another filenam }e or press Return to exit to Dos. The situation may arise where the crunch file has been corrupted. This may occur due } to errors during download, or failure of the disk on which the file resides. There are several error messages which are as }sociated with bit errors. Msg: Not An AlfCrunch File! --------------------------- If this message is issued befo }re any files were extracted, then either the first two bytes of the file are corrupt, or else the file was not created by A }lfCrunch. If the message is issued after several files were extracted, then the file has been damaged somewhere in the last } file extracted. You may also get the message which is described next. Msg: File Checksum In Error ----------------- }---------- DZ has detected that the checksum calculated for the filename just extracted does not agree with the checksum } in the header block. Either the header block has been damaged or more likely, the file itself has been corrupted. If the }file is a text file, it may be partially correct. Object file types should be discarded, as it must be assumed they are cor }rupt. Msg: Stack Overrun ------------------ This is an internal DZ error. The file being processed has been cor }rupted, and DZ has exhausted all free memory in attempting to extract the data. The output file produced is incomplete, corr }upt, and should be discarded. Msg: Extra Bytes At Eof, Don't Add To File ------------------------------------------ } This means that the file has extra data at the end which is not valid.This may arise from downloading where the last bl }ock is padded. Do not addnew files to it with LZ as you will not be able to get them back when you runDZ again. You will ge }t the 'Not An AlfCrunch File!' message at that time. DZ and SpartaDos 3.2 ------------------ }-- If you are using SpartaDos 3.2, you may invoke DZ.COM and specify the input file and output directory on the command }line. The format is: [Dn:]DZ Dn:[path>]filename[.ext] [Dn:[path>][*.*] The square brackets denote optional parameter }s which may be omiited if you wish. The first filename is the file to be processed. The second filename is the directory in } which the output files are to be placed. Remember, if any of the directories in the output path do not exist, an attempt w }ill be made to create them. Remember, you can use a wildcard tolimit the files or take the defaultwhich is '*.*'. The }program will automatically turn the screen off, and extract the files. If any errors occur, the appropriate error message wi }ll be printed and control will return to Dos. When DZ is finished with the current input file, it will again prompt yo }u for another input file. You may continue uncrunching files, or simply press return to exit back to Dos. As part of a }batch file, the form for DZ is almost identical to the LZ form. Accordingly, only brief examples will be shown: [Dn:]DZ D }n:[path>]filename[.ext] [Dn:[path>][*.*] Dn:[path>]filename[.ext] <- Second input file Dn:[path>][*.*] } <- Second output path Dn:[path>]filename[.ext] <- Third input file Dn:[path>][*.*] <- Th }ird output path (single return) <- Return to Dos The second format is: [Dn:]DZ Dn:[path>]filename[ }.ext] <- First input file Dn:[path>][*.*] <- First output path Dn:[path>]filename[.ext] <- Secon }d input file Dn:[path>][*.*] <- Second output path Dn:[path>]filename[.ext] <- Third input file } Dn:[path>][*.*] <- Third output path (single return) <- Return to Dos The third fo }rmat is: [Dn:]DZ Dn:[path>]filename[.ext] <- First input file Dn:[path>][*.*] <- First output }path Y <- Screen off Dn:[path>]filename[.ext] <- Second input file Dn:[path>][*.* }] <- Second output path Dn:[path>]filename[.ext] <- Third input file Dn:[path>][*.*] } <- Third output path (single return) <- Exit to Dos Nsq7~0 }V1.4 ALFUNCRUNCH 07/10/88File to decom}press:Output Directory: Processing completeUncrunching: Screen off for speed ? Not an AlfCrunch file!Output Directo}ry Is Too LongOutput Directory Is InvalidError Opening Input FileExtra bytes at EOF. Don't add to fileError writing o}utput fileError reading input fileInput buffer overrunFile checksum in errorError, memlo must be under $3000 {/}sq0Pq z@ { |qLs zݠq z {yz* {r zsq/0 H{Sl `8s zLs ^{ } ~yz qp {} |Lsq z {yztq ^{ } } wr zLsyz qPpq)r z { q Q{Y /莳qp v{ r zLs{zq|z}}z~z z!׭~z}zqĢr zLsq Ar zLsqtq |tqPpɛ Yr zLsPp>: w}r zLsPppȢqp0pp ~LPt0p {{ ՠr zLsr zp zqq q q q Nu0 H{LPtq}qqqqqqqq qqq` xyq{zq|zq}zq~z zq y}z ~z` v! yqqq̀q} s z`*$ x v}qyq~qzqwqxq &xLu}quq~qvq|q{qyq}qzq~qxq x~q*}q~q} x x}qȱ~qLAv}qxqwq~q xq q Dy &xLv xuqyqvqzq{q|qͮqͭqq qq.}qLuqqFfqqq8帅q幅 qLw zLxqqqeqeq8弍}z}q~zqe{zqi|z zqLx yqq&q8帍qq幍qLvmqmqq)*ȱ8q}Ffqmqqmqq`qq)q.q.qqqLw qqq{q|q`mqqmqq}qqq̈́qGq̓q?q{zq|zq}zq~z0 zՠr zhhhhLsqqqq`&eemqmq}`{q|q xwqyqzqȥ{q|q`ȥi淥p %y zLxqq`STACK OVERRUNSTACK UND}ERRUN8ȱ` 4y zLxqΰqίq`8܍qqNqnqq qq܍qqmqqmq}q`q q`q{zq|zq}zq~z0 z`{zm}z|zm~z0͈q륾͇q`q q z ]z`q~zq}}z᭜q}zq~z}z ~z z ]z`q8}zqq~zqqq`K:P3:zzz z`zzz BH}Iz V䭃zzz`  B{zD|zE}zH~zI VH}zI~z(` BHI V`yz {~ɛyzN} qyzL{yz q`yz~L{ B V`{`a` `yzR q Q{ q`HH H H Hzz H{BzJzEhD}K V` H{ z v{` H{ H{` i? iS|qɛ @8`ɛ @팵q`q qɛ @} qyz`Error reading main directoryCREDIR failed for the above pathOutput path cannot be builtCREDIR issued for:*.*}||Lk}|Pp>"ɛ| r| zL|2| zhhLs|Ppp|莧||p@p {@ H{(0Lk}|ʽPp:詛}pp| zp z@*BDpEHIJK V P| zL|@Pp {@ H{(0`L|*.* }`ʽ q> :8` }qɛ `} qʎyz` qɛ8`` qD :!q)"q$yziyz q qD1: q!q"q`.ALFyz q. yz}~ qʎyz`N~ 8~C~q.8~ `PpɛPp>:Pp*?C~Pp.ɛ}. C~`Ppɛ* ?C~ `C~ ` N~ v~C~?8~ ` zq z z =8`Skipping: Err}or During Locate܍{z|z8܍qqq q q`q#q͝qq͜qq}zq~zLq}zq~z z ( zL}xq8}zqq~zqqqLXLZsLNuL qppPp:B%DOS SYSB*)DUP SYSBSALF1_4 COMBcnALF1_4 DOCBUNALF1_4COM