JLPAK compares two files (an old file and a new file) and makes a difference (patch) file of it. Note that the files are not required to be text files. It can be plain binary. JLUNPAK recreates from the old file and the difference file the new file. To be sure that the new file is correct a crc-32 check is done. The practical purpose of this program is to make a difference file that is much smaller than the original file and then send this file to the person who wants your new file. He then runs JLUNPAK with this difference file and the old version of the file and he gets the new version. If the differences are not too big, then the difference file can be much smaller than the complete file which can be usefull if the file must be send via a slow medium to another person. JLPAK and JLUNPAK were originally designed by Prof J Larmouth as Microsoft QuickBasic programs. Because I needed this program also on diverse UNIX systems, I translated them to C. This translation brought also the advantage that the programs became a lot faster (especially the compression program benefits from that conversion). I also changed the command line interface so that it is more consistent with other DOS and UNIX commands. This archive only contains the DOS executables of the program. The programs are compiled with Microsoft Visual C++ version 6 and the programs are console applications. The source code is also included so you can recompile and modify them. Feel free to use and modify it as much as you want. Note that you must define JUNIOR (/D JUNIOR) to be able to compile this. These programs are provided as is. The author(s) can not be held responsible for computer or data damage or loss of data because of using this program. You use it at your own risk !!! Just type JLPAK or JLUNPAK to find out the usage. If you have any questions, remarks or suggestions, please send me a mail: Peter Notebaert peno@telenet.be Prof J Larmouth can be reached at: J.Larmouth @iti.salford.ac.uk I don't remember where I found his sources, but I remember that I found an older version on the internet (1.0) and it contained some bugs. I asked for an update and I got version 1.1 which seemed to work well. My program (version 2.0) is based on the latest version. Following is a description of the program by Prof J Larmouth: These programs use "forward compression" to compress a file for distribution. The principle is very simple - we assume an old version of the file (text or binary) is already held on the receiving system. The compression algorithm compares the new version with the old and ships only instructions to reconstitute the new version using the old version, resulting in typical compression ratios of between 5 to 1 and 10 to 1, although where there are almost no changes between the two versions, a ratio of almost a thousand to one is possible! JLPAK and JLUNPAK provide the starting point for efficient distribution of versions of a package when the earlier version is already held. The normal procedure would be to pack first with JLPAK, then use a conventional packing program like PKPAK, then convert to ASCII with MKBOO. The receiver reverses the process. The term "forward compression" is used for compression based on an assumption that an earlier version of a file is held at a receiving system. It is thus mainly intended for regular software or text-file updates. The approach has been successfully applied for compression of successive frames of a television transmission, but the author is not aware of any existing general-purpose software package supporting the use of this technique for PC software distribution. Note that programs such as PKPAK usually talk about "percentage gains" - maybe as much as 60% with a following wind, but often only twenty or thirty percent. JLPAK talks about the "compression ratio" - maybe very high, but figures of between 5 and 10 occur regularly for practical distribution of new versions. The IT Institute University of Salford Salford M5 4WT England