home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
617b.lha
/
P-Compress_v2.1
/
P-Compress.doc
< prev
next >
Wrap
Text File
|
1992-02-02
|
14KB
|
281 lines
PRE1
P - C O M P R E S S V2.1
INTRODUCTION
P-Compress is a compression/de-compression tool designed to meet the great
majority of the requirements of users efficiently and economically while
being very easy to use. It will compress single files, drawers or complete
disks, preserving disk and drawer structures. Individual files can be joined
into a single PACK, similar to an archive and by using PACKs two uncompressed
disks will normally fit on one. Drawers and disks can be copied from one
place to another, selected files or classes of files being compressed and the
remainder just copied. P-Compressed files, including sounds, pictures and
animations, can be displayed by P-Reader without prior decompression, and P-
Compressed texts can be loaded into and saved from P-Writer. The latest
version of P-Reader is being used to display this file.
Two important areas not covered at present are:
Hard-disk back-up. Use a specialised programme (eg BRU).
Self-extracting executables. Use Imploder from Fish 422.
One of the main uses of P-Compress may be to reduce the size of your own
personal library collection of utilities, data, games, code examples, stored
away for occasional reference. By just compressing all data, leaving icons
and executables untouched, and using P-Reader as the basic text reader and
display tool, my own "library" of 35 disks reduced to 25. Caution is needed
when doing this as data files used by the executables must be left
uncompressed. P-Compress is designed to make the selection process as easy
as possible.
P-Compress employs the latest LZH compression technique using code by
Barthel and Krekel, modified to limit memory requirements.
This release also includes the small utility P-Unpack, whose sole purpose
in life is to unpack Packs. Details are on Page 8.
COMPARISON WITH ALTERNATIVE PROGRAMMES
Whole disk compression tools: eg LHWARP, Zoom.
When used to PACK a complete disk P-Compress only compresses the files on
the disk and not such additional data as boot-blocks. As a result output
will be smaller than that of true whole-disk tools. P-Unpack can write a
standard boot-block to the re-constituted disk. Speed is comparable but
memory usage much lower. If you really need to include everything on the
disk, Zoom is recommended.
Archivers: eg LHArc, PKAZip.
To suit their role in the maintenance of archives these include a host of
facilities which are of little or no use to most of us. As a result they are
not easy to use. One effect of the complexity is that with some combinations
of commands and switches files can be lost. (Tip: always use the extended
filenames switch) As far as performance goes P-Compress is faster and uses
less memory than LHArcA and is much faster than LHArc. PKAZip is very fast,
efficiency sometimes worse, memory useage greatly excessive.
Large archived collections of files cannot be handled by single-drive Amigas
without expansion memory (unless a vast number of disk-swops are acceptable),
P-Compress PACKS can.
General compression tools: eg Power Packer
An excellent programme in its day the current PD version of PowerPacker is
completely outclassed by the new wave of LZH compression tools - although
decompression is fast. As far as ease of use is concerned users should form
their own judgement. PowerPacker has the ability to create self- extracting
executables which P-Compress does not do at present, however Imploder handles
this particular job better and more quickly.
Some comparative performance figures are given after these instructions.
INSTRUCTIONS
P-Compress
opens a window on Workbench showing:
On the left Progress window.
Top right Decompress window.
Centre right Compress window.
Bottom right Execute window.
If you have the Arp library installed the programme will use the Arp File-
Requester, otherwise a simple string gadget requester will appear.
If you
are using the latter to call a drawer the entry must end with a slash /, and
the entry for a disk must end :
.
P-Compress
can be started from the cli or by double-clicking its icon.
DECOMPRESSION
Click
From
. File requester will come up over the progress window.
Enter or select the drawer, or
file to be de-compressed. Click
OK
(or
cancel
). Selected reference
will be shown in the From box.
Click
To
. File requester will
re-appear. Enter/select a disk, file
or drawer as required. If an existing
file
other than a PACK is selected
but a drawer or disk was entered at From, a warning will appear. Otherwise
new files will be opened as necessary. A PACK can only be decompressed to a
disk or drawer - a file entered at
To
will be ignored and the programme
will look at its path to decide where to place the unpacked output.
Compressed files will be decompressed to the indicated location, uncompressed
files will be just copied. Name and size of the file being handled appears
in the progress window. On completion a summary will appear at the bottom of
the Decompress window (except where only a single file has been called).
#! 1 42 2 0 decompress.brush
The programme will recognise whether the input is a normal file or a PACK,
and will act accordingly. PACK in the execute window should not be switched
on.
If you run out of disk space before decompression is complete you will be
asked to insert a new disk. On completion delete any empty drawers on the
disks and transfer icons where necessary.
Before decompressing compressed files a checksum (CRC) is read and checked
- if an error is found an appropriate warning will be given and the
offending file passed over.
#! 1 42 15 0 compress.brush
Before an existing file is overwritten you will be asked to OK it.
Clicking
OVERWRITE
in the execute window suspends this feature, which is
also suspended when a PACKed file is being decompressed. Click
GO
in the
execute window to start decompression,
CANCEL
to cancel the process, and
QUIT
to close down.
COMPRESSION
Select
From
and
To
in turn as
before and enter or select the source
and destination references. Either a
disk, drawer or individual file may be
selected. If a disk or drawer is to be
compressed click on one or more of the
upper boxes to indicate the types of
file to be compressed, the remainder
will just be copied. Copied files are
not provided with Checksums.
DATA
"Project" type data files such as texts, IFF pics, animations etc.
ICONS
You may want to leave icons uncompressed.
EXEC
Libraries and all executables.
If you need to select specific individual files to be compressed or just
copied use
ASK
- the programme will halt at each file and ask for
instructions.
Normally when compressing a file or drawer each file is transferred to an
equivalent place at the output location, new drawers being opened as needed,
so that the original structure of drawers and their contents is preserved.
Alternately a PACK can be created in which all the files are joined into one
compendium file or PACK. An individual checksum is provided for each of the
files contained. The name PACK will be appended to any filename that may be
inserted at
To
. On decompression the original structure is re-created.
If you run out of disk space before compression is complete you will be
asked to insert a new disk (except where a PACK is being made - a file
cannot be split between two disks).
Click
OVERWRITE
,
PACK
as necessary, and then
GO
to start compression.
#! 1 42 7 0 exec.brush
Progress and final summary will be shown as before.
EXECUTION
Click
OVERWRITE
if existing files are to be overwritten.
CLICK
PACK
if you wish to put all the individual files into a single PACK.
Click
GO
to start compression or decompression,
CANCEL
to cancel the
process and
QUIT
to close down.
COMPARISONS
Three files have been used:
File 1 is a HAM picture. Length 92872 bytes.
File 2 is an executable file. Length 28792 bytes.
File 3 was made up by joining a general mixture of texts, executables
and icons into a single large file. Length 608440 bytes.
Size Compress Decompress
File 1
LHArcA 51812 1min.08secs 33secs
PowerPacker (fastest) 64412 2min.37secs 17secs
PowerPacker (best) 54196 23mins.45secs 16secs
PKAZip 53407 45secs 21secs
P-Compress 51832 51secs 19secs
File 2
LHArcA 15788 26secs 11secs
PowerPacker (good) 17122 2min.11 9secs
PKAZip 15919 24secs 7secs
P-Compress 15806 18secs 8secs
File 3
LHArcA and PKAZip failed - out of memory.
PowerPacker not tried - out of patience.
P-Compress 286854 6m.39 1m.46
In all cases compression/decompression was from disk to RAM: using an Amiga
500 with 1M of memory.
P - U N P A C K V2.1
When sending out a disk containing a PACK you will normally include on the
disk the means of decoding it. This can of course be
P-Compress
itself, but
the considerably smaller
P-Unpack
may be used instead. The end result is
the same but
P-Unpack
provides two further advantages:
It provides the efficient disk-swopping facilities needed by single-disk
-drive Amigas with memory that is not sufficient for the whole pack to be
copied to and decompressed from ram.
By writing the icon with the ToolType "boot" at the top of the tooltypes
Icon Information window the decompressed output disk is made bootable.
(Not functional for the single-floppy-drive user).
P-Unpack
is called as the Default Tool of a Project icon for a PACK file.
When the icon is clicked the PACK will be decompressed and the original
structure of files and drawers copied to a disk.
Preparation - Sender
The Pack should be created in the normal way with P-Compress. Prepare
a PROJECT Icon for the Pack, and write
P-Unpack
as the Default Tool. Include
a path (e.g
:c/P-Unpack
) if necessary. If the output disk is to be made
bootable write the single word
boot
at the top of the Tool Types space.
Include
P-Unpack
on the disk along with the Pack or Packs. It is a good
idea to name the pack "
CLICK-ME"
or incorporate "
click-me
" into the icon so
that the recipient knows what to do. The recipient should not need any other
instructions.
Use - Recipient
The recipient will boot the received disk normally and faced with an icon
that incorporates the instruction
Click-me
will double-click it. P-Unpack
will check the number of floppy drives connected.
If there is more than one floppy drive connected a requester will appear
asking the user to select one, insert an empty disk, and click go. Once
decompression is under way an
Abort
gadget is added. Clicking on this will
stop the programme on completion of the current file. If the pack includes
a disk icon, this will be adopted and seen if the disk is removed and
re-inserted. If the Tool Type
boot
was written into the icon the output disk
will be bootable. If the expanded PACK is larger than a single disk, a
notice will call for a new disk when the first is full.
Where P-Unpack finds only one floppy drive a different requester will
appear asking the user to insert the source disk and click go. Decompression
to RAM will continue for as long as memory is available and the user will
then be asked to insert the output disk - ram will be copied to this. Disk
swopping will continue until decompression is complete - four or five swops
may be needed. No early warning will be given of a full disk, but a new
disk can be inserted at any of the disk-swops. The output disk can not be
made bootable, otherwise the final result is the same.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
P-Compress and P-Unpack are Freeware. They may be copied and distributed
freely and used without charge for non_profit-making purposes. Authority
for profit-making use should be obtained from the author below.
No responsibility can be accepted for any loss occasioned by use of these
programmes.
Comments, suggestions, bug-reports all welcome.
Chas A. Wyndham,
1265 Canning Mills Road,
Roleystone,
WA 6111.
Australia