Dec 112017
Pascal 5 Source Code to create ARC files.
File CRUNCH10.ZIP from The Programmer’s Corner in
Category Pascal Source Code
Pascal 5 Source Code to create ARC files.
File Name File Size Zip Size Zip Type
CLEAR.ASM 790 314 deflated
CRUNCH.EXE 15504 9507 deflated
CRUNCH.PAS 47704 10660 deflated
LOOKUP.ASM 4231 1148 deflated
MEMALLOC.PAS 3180 1031 deflated
PUTCODE.ASM 3572 938 deflated
README 3583 1544 deflated
SQUASH.HOW 2357 1009 deflated
STRPROCS.PAS 8367 1884 deflated

Download File CRUNCH10.ZIP Here

Contents of the README file

Program Name: Crunch

Usage: Crunch outputfile[.arc] [inputfile [...]]

Purpose: Create archive files using LZW 12-bit compression that are
compatible with those produced by PKWare and SEA programs.

Program Notes:

* This program does NOT update or freshen an archive. It can only be
used to create NEW archives!

* If no input file specifications are provided on the command line, the
program assumes *.*

* Only two stowage methods are supported by this program...they are

Crunching: Input is first "packed" to remove repeated character
sequences and is then compressed using 12-bit LZW
compression techniques. Adaptive resets of the
algorithm's code table may also be utilized.

Storing: The input file is copied into the archive with no
compression applied.

* Files will be "stored" in the resulting archive if the program's
crunching routine does not produce a smaller result.

* 13-bit "squashing" has not been implemented in this program. It has
been left as an exercise for the student (see the file Squash.How for
some hints on how to proceed).

* I originally wanted to release full Turbo Pascal source code for the
program. Unfortunately, the "all TP" version was slower than
mollasses on a cold day. I therefore re-coded several routines
within the program using inline assembler. The asm stuff is heavily
commented, but if it still looks like gobbledygook to you, I
apologize. The intent was to release this package as both an
educational tool and as a program that did useful work. The only way
that the second objective could be realized was to replace certain
critical routines with something a little faster than what the TP
compiler could provide.

* Be careful...this TP 5.0 program was compiled with the "force far
calls" option turned ON. The inline routines rely on this fact. If
you compile with this option turned OFF, the results will be

* The author of the programs contained within CRUNCH10.ARC makes no
claim as to the correctness or suitability of these programs for any
particular purpose whatsoever. If you use these programs or the
algorithms from which they were derived, you must assume all
responsibility for the consequences of that use.

* The routines presented in Crunch.Pas were derived from the lzcomp.asm
and lzdcmp.asm programs written and released by Tom Pfau back in
1985. The programs in this archive are with them what you
will, but please note that System Enhancements Associates (SEA)
regards ARC as their trademark. Should you wish to use the Crunch
source code in your own program, I suggest you contact SEA for
licensing details and restrictions. I WILL NOT ACCEPT any
responsibility for any legal problems that may arise as a result of
the use or misuse of the ARC processing code contained in Crunch. I
do not have any agreement myself with SEA; SEA has indicated that
public domain programs may process .ARC files without any

Richard P. Byrne (rpb)

 December 11, 2017  Add comments

Leave a Reply