Contents | < Browse | Browse >
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Using XPK Compression                     By:  David Tiberio         %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

XPK is a compression program that stores files using a variety of methods,
including compressors such as NUKE, PowerPacker, and Imploder. While in
many ways similar, the advantage to XPK is that it supports more file
formats than other compressors, due to plug in modules (shared libraries)
that are written for XPK to use. If you are using Imploder or PowerPacker,
you should have no problem switching to the more flexible XPK.

But before going into the nitty gritty, there is also XFH, which is vital
for fluid OS integration. XFH allows the OS to use compressed files in
realtime, in the same way that PPLoadSeg works by modifying the LoadSeg
routines of the OS. This means that you can compress programs, C commands,
libraries, fonts, etc, and have them decompress to memory with using drive
space or manual decompression.

XFH requires XPK to perform its wizardry. The only drawback is that XFH
will produce a second icon for every icon in a compressed file system.
This allows you to access your partition's compressed files, as well as
access them transparently. In other words, they will appear as though
they are not compressed when in fact they really are.

Let's say we set DH0: as a compressing partition. We can select
individual files to be compressed using XPK, or we can ask XFH to
compress every file copied to that partition through XDH0:. Now,
if we list a compressed file in DH0:, it will show the smaller file
size, but it will not be accessible since it is a compressed archive.
But if we list a compressed file in XDH0:, it will not appear compressed,
and will show the original file size, although it really is compressed!
Access will be slightly slower, and some directory listings may not be
fully accurate (according to my tests), but it does work rather well.

Now XPK is going to look in its list of libraries for the correct
compressions or decompression method. If you have powerpacked or
imploded files, make sure you get those libraries. If you want to use
native XPK formats, NUKE is the most versatile format, even when
compared to powerpacker and imploder. There are also encryption
mthods such as IDEA, and optimized audio compression such as SQUASH,
which performs better compression on audio samples, music mods, and
other audio, than most other compressors.

XPK can be controlled using programs such as DirOpus (see my article
in an earlier Amiga Report which discusses how to set custom buttons
from DirOpus). All I do is click on a file or list of files from Opus
and select XPK to compress or XUP to decompress them. But recently I
purchased a new hard drive, so I am now decompressing most of my files
in order to gain more speed. But when my last 50 megs is used up, I
will surely revert back to XPK, even on my 16mhz 68030, which has decent
performance. A 68040 will surely have excellent performance.


- USENET REFERENCES -

term3.4-Libs.lha     comm/term  118K+Term 3.4 (XPK/XEM libraries)
MUGiff1_12.lha       gfx/show   110K+Tiny ILBM/Anim viewer, supports XPK
Most156.lha          text/show  150K+Textviewer w/ XPK, Pipes, locale, ARexx su
muchmore43.lha       text/show   91K+Soft scrolling text viewer with xpk-suppor
mumo40.lha           text/show   70K+Soft scrolling text viewer with xpk-suppor
xMore14.lha          text/show   23K+Fastest reader with XPK support
PackDisk11.lha       util/arc    34K+DMS repalcement. Uses XPK libs for compres
xVer371.lha          util/cli     1K+version command that supports XPK
shri.lha             util/pack    7K Version 1.0 of xpkSHRI.library
xData_11a.lha        util/pack   16K+lets progs read xpk-compressed files (bug-
xdrop2.21.lha        util/pack   23K Version 2.21 of xdrop. Requires xpk packag
XFH1_39.lha          util/pack  117K+(de)crunching Handler for XPK
xPack_1.5.lha        util/pack    9K OS 2.x Shell Interface for XPK
xpk25dev.lha         util/pack  141K+Compression package, developer's additions
xpk25usr.lha         util/pack  215K+Compression package, user's edition
xpkdisk37_4.lha      util/pack   75K+A compressing disk device v37.4; uses XPK
xpkdisk37_5.lha      util/pack   91K+A compressing disk device v37.5; uses XPK
xpkFAST_V1.03.lha    util/pack   20K+very fast LZ77 xpk compression library
xpkHFMN.lha          util/pack    4K+Dynamic Huffman xpk compression library
xpkRDCN22.lha        util/pack   30K Fast packer with low compression factor
xpkSMPL.lha          util/pack    3K+xpk library for packing samples
xpkSQSH1_1.lha       util/pack    6K+XPK compressor library for sampled sounds


As Edward Cayce might say, that is all for the present...