home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
ENTERPRS
/
CPM
/
UTILS
/
A
/
CRLZH11.LBR
/
NOTES11.DYC
/
NOTES11.DYC
Wrap
Text File
|
2000-06-30
|
12KB
|
210 lines
CRLZH and UNCRLZH v1.1 are virtually identical to their 1.0 versions (the
Beta test versions) with the following exceptions:
1) The version number placed in the LZH-Encoded file (part of the header)
is now 11h instead of 10h (for 1.1 vs 1.0). Other than that minor
detail, the files produced by this official release and the Beta test
will be identical. (Files produced with the Beta version are acceptable
to UNCRLZH v1.1).
2) The CRLZH program is marginally faster. Some small speed enhancements
were made, but the algorithm is intrinsically slow.
3) The UNCRLZH program has been changed to default to the file extension
.?Y? when the extension .* is used (see CRUNCH 2.4 notes, below, under
the heading: 4. DETAIL INVOLVING FORCED "?Z?" EXTENSION [UNCR only].)
This means that to UNCRUNCH all ?Z? files, you must use .?Z? rather than
.* (.* will only find .?Y? files). HOWEVER, the character used has
been made a configurable item (see patch information), so you can tailor
it for your preference.
4) The display format differs slightly (a few extra CR-LF sequences).
-----------------------CRLZH/UNCRLZH v1.0 notes follow---------------------
CRLZH and UNCRLZH v1.0 (Beta test versions) are based upon S. Greenberg's
CRUNCH and UNCRunch programs (v2.4). The intent was to provide a user
interface identical to existing programs (similar function - similar
interface). CRLZH and UNCRLZH differ from Steve's programs in the
following areas:
1) CRLZH makes files with a 'Y' in the extension (as opposed to 'Z'). The
UNCRLZH program recognizes this as the extension for LZH encoded
files.
2) CRLZH progressively changes the file extension of the crunched file,
allowing for a bit more user insight into the original file name. It
operates upon file extensions as follows:
BLANKS - converted to .YYY
.123 - converted to .1Y3
.?Y? - converted to .?YY
.?YY - converted to .YYY
There was no reason to tamper with the format CRUNCH uses on the output
file. Therefore, with the exception of taking the 'next' file type in
sequence (SQueezed files begin with a 76h,FFh sequence; Crunched files with
76h,FEh; so LZH encoded files begin with 076h,FDh) and setting the revision
levels in the header to 1.0, there's no difference in the output file
format. You can probably coax your time/date stamping into operating
on LZH encoded files.
UNCRLZH preserves the capability to operate on CRUNCHED and SQueezed files,
so you can use it on your system as a replacement for UNCR. There were no
changes to these features (Uncruncing and Unsqueezing was supplied in .REL
file form) so fear not! The driving program was altered ONLY to recognize
the additional file type and branch to the new decompression code (version
number and sign-on message text was altered, too...but that's trivial.)
Since these programs are BASICALLY CRUNCH v2.4 and UNCRunch v2.4 the user
interfaces are the same. The the version 2.3 internal revision information
in the CRUNCH program has been preserved so that the program can be
configured by the same programs (if any exist).
----------------------CRUNCH/UNCRunch v2.4 notes follow--------------------
CRUNCH v2.4 processes and generates files identical to v2.3. A series of
enhancements have been made, and are summarized below (additional details
can be found at the end of this document).
o "TAG" MODE: This new option lets you select any number of files from a
group for processing. After all the selections have been made, the files
will be processed. Selections are presented and processed in alphabeti-
cal order. Applies to both CRUNCH and UNCR. (Even when this mode is not
active, all wildcard operations are sorted to proceed alphabetically).
o STRAIGHT COPYING: If CRUNCH ever creates a file larger than the orig-
inal, the file will automatically be erased and replaced with a direct
copy of the original. If the original is already crunched or squeezed,
or if the filetype matches a type on a [user configurable] filetype list
(eg .LBR or .ARC), no attempt will even be made to compress it; a
straight copy operation will be substituted. Thus ALL specified files
will transferred (in the most efficient manner), facilitating the use of
CRUNCH for the creation of LBR's or as a backup utility. Similarly, UNCR
will either uncrunch or direct copy all specified files for full restor-
ation.
o "SPANNING" DISKETTES: If CRUNCH ever fills an output diskette during a
wildcard operation, the last [partial] file will be deleted and the user
will be prompted to change diskettes. Operation will then continue,
starting with that last file. This will work from the output of either
CRUNCH or UNCRunch.
o OPTION "TOGGLES": UNCRunch and CRUNCH take as many as three and four
(respectively) command line options in any combination. Each option
corresponds to a mode which can be set to default to a user defined
state; then the command line toggle will flip the state back on or off.
The option toggles include "quiet" / "verbose", "tag mode" on/off,
"prompt before overwrite" on/off, and "archive bit" mode on/off.
o OTHER NEW MODES: The "archive bit" mode toggle, when turned on, will
only crunch files that have changed since they were last backed up
(based on the CP/M directory archive bit). When running in this mode,
each input file will be flagged as archived as soon as the crunch oper-
ation for that file has completed. The "prompt before overwrite" mode
toggle allows command line control of whether the program stops to warn
you each time it is about to overwrite a file with the same name.
o UNSQUEEZING: UNCRunch now also unsqueezes as an added convenience! Usage
is identical; UNCRunch will automatically recognize the file's format
and use the appropriate algorithm.
o FASTER OPERATION; MORE BUFFERING: Modest speed improvements have been
made through a variety of techniques, including more data buffering to
reduce disk activity. The extended buffers are dynamically allocated to
take maximum advantage of currently available memory on your system.
o INFORMATIVE: Messages inform you when the programs are crunching, un-
crunching, unsqueezing, or copying and why (eg "Already crunched" or
"Zero length"). Includes the old in, out, & compression ratio reports as
well as a final figure on the total number of files processed.
DETAILED NOTES ABOUT NEW FEATURES
Some of the new features mentioned above require, by logical necessity or
convenience, that the programs respond differently to different types of
command line specifications; ie respond differently depending on whether
the source and destination user areas and/or drives are different or wheth-
er the program is invoked with a wildcard file specification. Following is
an itemization of these details:
1. DIRECT COPY OVERRIDE [CRUNCH only]: If the source and destination drives
AND user areas are the same, then direct copying is inhibited (ie CRUNCH
will not bother attempting to copy a file onto itself); in this case it
will resort to the older method of asking the user whether he wants to keep
the larger "crunched" file.
2. "SPANNING" DISKETTE OVERRIDE [CRUNCH or UNCRunch]: If the source and
destination DRIVES are the same, then the prompt to change diskettes when
the diskette fills up is inhibited, since by changing the output diskette
you will also be removing the input diskette from which the program is
reading.
3. EXCLUSION LIST OVERRIDE [CRUNCH only]: While it is generally useful to
have CRUNCH skip attempts to compress certain filetypes when doing bulk
transfers, there may be instances where, for example, you WANT to create,
say a ".LZR" (crunched library) file. Therefore for CRUNCH will ignore the
filetype exclusion list if a filename is fully specified. The exclusion
list WILL be used whenever one or more wildcard characters ("?" or "*") are
used in the command line.
4. DETAIL INVOLVING FORCED "?Z?" EXTENSION [UNCR only]: UNCRunch used to
convert the wildcard spec "*.*" to "*.?Z?" as a convenience feature. This
conflicts with the symmetrical operation of the new programs, ie that you
can transfer all files from a disk or user area with, for example, the
command "CRUNCH A:*.* B:" & then restore them all with "UNCR B:*.* A:".
Thus the forced "Z" feature has been removed, and if such is your intent
you will have to type "UNCR B:*.?Z? A:". But in an effort retain maximum
convenience and compatibility with v2.3 where possible, the plain command
line "UNCR *.*", ie when uncrunching to the same drive and user area, WILL
automatically be converted to "UNCR *.?Z?" since direct copying is not
desired or possible in this case anyway. Also note an effect of this is
that a separate "UNCR *.?Q?" command would be required if squeezed files
were mixed in the group, but if going to a different drive/user area a
single "*.*" specification would do everything.
MORE DETAILS
1. MIXING /A and /C OPTIONS [CRUNCH only]: The /A, archive bit mode option,
works internally by "tagging" all files which do not have the archive at-
tribute bit set, and thus crunching only those files. This is useful, be-
cause if both options are specified, you will be presented with a list of
ALL filenames, just as if you had specified the /C option alone, but you
will notice that all non-archived files have been pre-tagged for you. You
are then free to either tag additional files or untag "pre-tagged" files as
you wish. You may wish, for example, to untag various .BAK files which,
though not archived, you consider superfluous to backup.
2. UNDOCUMENTED /T OPTION [CRUNCH and UNCRunch]: Though markedly improved,
the new tag mode achieves the same desired effect as the old v2.3 /C
(Confirm) option, namely selective processing of files from a group. It is
therefore still the "/C" option. But I personally always think of it and
refer to it as "tag" mode, so I have allowed the programs to accept /T as a
synonym for /C. (Not really "undocumented", of course...)
3. 255 MAXIMUM FILES [CRUNCH and UNCRunch]: Current program constraints
limit wildcard operations to a maximum of 255 files. If a wildcard spec
matches more than that many files, an appropriate error message will be
given. In this case you will have to split your job into several operations
by using using more selective wildcard specs.
4. CRUNCHED FILE OUTPUT [CRUNCH only]: v2.4 produces identical output re-
gardless of mode of operation (a few very observant people noticed that
v2.3 could output valid, but different, files when running in "quiet"
mode). The output of v2.4 should be identical to v2.3 running in verbose
mode, except for the embedded revision level byte.
5. "FILES PROCESSED" COUNT [CRUNCH and UNCRunch]: The v2.4 programs output
"<nn> File(s) Processed" each time they are run. The count is basically
equal to the final number of output files created. A crunch/erase/copy
sequence counts as one; A "no" answer to a "Overwrite existing file?" or
"Save file anyway?" question counts as zero.
6. ^C ABORTS, ^S PAUSES, ^W RESUMES [CRUNCH and UNCRunch]: Hitting ^C will
entirely abort either program immediately. It may be issued any time the
programs are waiting for input, or during actual operation. Use of ^C dur-
ing operation will generally result in zero length output file. Although
probably of limited usefulness, it is noteworthy that ^S will pause the
programs (in verbose mode) since it will be intercepted by the system and
prevent the running console output from continuing. ^W will then resume.