FCRUNCH is a functional replacement for CRUNCH23 by Steven Goldberg, and executes on Z80,8080,8085 and V20 processors. It performs LZW encoding of files, with full DU addressing. When executed without parameters, the following display appears: A>fcrunch FCRUNCH v1.0 by C.B. Falconer keep old quiet input file output file \ \ \ \ FCRUNCH {-{c}{k}{p}{q}} {d{u}:}afnin.aft {d{u}:}{afnout.aft} {[id]} / / / / / confirm purge source destination idstring [idstring] is anything enclosed in [] default destination is source name with modified "typ" ex: FCRUNCH -p b5:fcopy.* c6:',t,'(crunches to C6: and erases)' A> The 'du' addresses may have the forms 'du:', 'u:', 'd:', or be omitted to use the default drive/user. d is a drive letter, and u is an integer from 0 to 15 (or 31 for some systems) specifying the user area. They control the directories and drives which hold the files. 'afnin.aft' is a REQUIRED entry (ommision produces the help message), and is a normal filename specification with wild cards. All matching files will be processed. 'afnout.aft' is an optional destination filename. Any wild cards must match those in the input filename. If included, the normal generation of an output filename (with a middle Z in the file type) is over-ridden. '[id]' is any sequence of characters starting with '[', and terminating on ']' (up to 40 at present). They are recorded in the output file and are normally displayed when the output is uncrunched. The use is up to you. The option characters (the string preceded by "-" at the start of the command line) have the following functions: c Confirm before crunching. Allows selections from a wildcard input specification to be discarded 'on the fly' k Keep old files. No output will be generated if a previous output file with the same name exists p Purge (without asking). Any previous output file with the same name will be deleted. (Normal operation is to ask whether to delete) q Quiet operations. Suppresses the running display and output relative size final display. The running display is: in out ratio ca cr == === ===== == == where 'in' and 'out' are the count of input/output 128 byte records, 'ratio' is the size of output compared to input (a percentage), 'ca' is the number of codes assigned (at 4096 the internal table is full), and 'cr' is the number of codes re-assigned. At completion the size of input and output files in Kbytes is shown. FCRUNCH uses large i/o buffers (up to the available memory), and thus will not access the disk too often. The input buffer is always twice the size of the output buffer. If a wild card specification covers many files the buffers sizes are reduced to hold the (internally generated) file lists. Most of the file handling procedures are from BUFFLIB.REL (.SLR) (in BUFFERS.LBR), and can be re-used for other programs. The cruncher proper is from CRN.REL (.SLR), and is also re-usable. '.SLR' files are in SLR systems relocatable format, and '.REL' files are in Microsoft format. SLR files are much faster to link, specify 16 character names, contain module date/time stamps, and can handle fairly complicated relocatable expressions. They require SLRNK or SLRNK+ for processing. '.REL' files can be processed with L80. C.B. Falconer, 680 Hartford Tpk., Hamden, Conn. 06517 (203) 281-1438.