XPK is an interfacing standard between application programs and packer libraries. Every XPK application program can pack data with any XPK packer.

XPK is copyrighted, but freely distributable for non-commercial use. Some parts of XPK have a different legal status, ie. PD, GPL or shareware.

The author
Starting with version 3.10 I (Dirk Stöcker) am the programmer of xpkmaster.library. I continue the work of Urban Dominik Müller and Christian von Roques with their permission!

The distribution
Xpk supporting programs
Motivation The solution to all these problems is xpk.

The xpk standard is to data compression what xpr is to file transmission. It consists of three layers:

In addition, there is an optional standard xpk file format.

All parts of the xpk standard are implemented in shared libraries. There is one master library for archive level access, one master library for file level access, and one library for each compression algorithm.

Xpk File format:
Offers checksums, chunks (important when Seek()s on a compressed file become necessary) and automatic handling by the xpkmaster.library. This means that any new packer that can only pack mem to mem has its own file format immediately. And most important: The name of the packer library is contained in the file. Therefore, copying a new sub library to LIBS: is all you have to do to install a new packer (easily done in installation scripts); xpkmaster.library recognizes the new file type immediately. No changes to xpkmaster.library or the application programs necessary. In case the xpk file format is not used, the introduction of a new packer requires a change the xpkmaster.library.

It is planned, that libraries of a lower level can offer higher level functions. They should be able to override the automatic functionality expansion by the higher level library. xpkmaster.library, for example, enforces the use of the xpk standard file format. It should be possible to override this by a sub library. Therefore an new library interface will be created, the xex libraries.

Porting to other operating systems
The sources of xpkmaster.library, its tools and some libraries are freely available. This enables programmers to create ports of the XPK systems, which run on different operating systems.

Different parts of XPK system are under different copyright states. As the original authors want to encourage ports to other operating system, I think it will be fine to assume all XPK packets are under GNU license (a copy of it is included in user archive). But in general this must not be fully true. To be on secure side contact the authors or me to get deeper information. Please always contact me first before doing really much work.

There have been different attempts of XPK ports. I only know one working version done by Vesa Halttunen. He ported the master XPK system, most of the example tools and some sub libraries to UNIX (working on different plattforms). Check his XPK page. This software is still in BETA state! Any help would be fine. He is the maintainer of this port, so contact him if you have problems related to that port!

If you have any comment, problems, suggestions or WWW addresses concerning XPK, mail me at webmaster@dstoecker.de.

This page was [count] times accessed since 24.02.2001. Information about last update you can see in source of the HTML file.