Random Rants
Rob Northen ProPack
Rob Northen created the copy protection system Copylock as well as the compression tools ProPack that were used on hundreds of Amiga games. On Aminet, you can download the last Amiga version of ProPack that was released. It also includes a very old non 64-bit compatible PC version of ProPack. Due to the nice decompression routines, many Amiga developers still like to use ProPack in their releases.
A few years ago, Jean-François Fabre located a C implementation of ProPack, but the code did not seem to compile correctly and contained several bugs. In June 2017 with the help of another member temisu, the final bugs were eradicated, and a working version of ProPack for the PC was released.
Because the program is a native compiled implementation, the packing speed is incredibly fast on the PC compared to the Amiga version. The code is not 100% identical to the original version, so the files that are created differ in size compared to the original ProPack, but the output files are fully compatible with each other.
As a quick comparison, I compressed a 292,320 byte data file containing graphics to see how they compared. As you can see, the original ProPack on the best compression settings results in the smallest file, but the new version is pretty good:
File | Size |
---|---|
Unpacked file | 292,320 bytes |
ProPack (best compression) | 79,288 bytes (27.1% of original) |
ProPack (fastest compression) | 93,954 bytes (32.1% of original) |
New C implementation | 83,714 bytes (28.6% of original) |
I also added some timing tests, to see how fast the various packers operate:
Software | Time | Size |
---|---|---|
WinUAE Amiga 1200 (original config, best compression) | Ages! | 79,288 bytes |
WinUAE Amiga 1200 (fastest CPU, JIT enabled, best compression) | 6 seconds | 79,288 bytes |
ProPack (best compression) using 286 emulation | 1 minute 24 seconds | 79,288 bytes |
ProPack (best compression) using 286_x86 emulation | 1 minute 29 seconds | 79,288 bytes |
ProPack (best compression) using 386 emulation | 4 minutes 7 seconds | 79,288 bytes |
WinUAE Amiga 1200 (original config, fastest compression) | 2 minutes 44 seconds | 93,954 bytes |
WinUAE Amiga 1200 (fastest CPU, JIT enabled, fastest compression) | 1 second | 93,954 bytes |
ProPack (fastest compression) using 286 emulation | 16 seconds | 93,954 bytes |
ProPack (fastest compression) using 286_x86 emulation | 17 seconds | 93,954 bytes |
ProPack (fastest compression) using 386 emulation | 46 seconds | 93,954 bytes |
New C implementation | 5 seconds | 83,714 bytes |
Download
You may enjoy these articles...
If you look inside many Amiga games, secret messages have been hidden by the programmers. Richard Aplin was the king of hiding messages in the startup-sequence file, and his Line of Fire and Final Fight startup-sequences have become legendary! The Sensible Software team were also prolific at hiding messages in their games.
A collection of technical interviews with Amiga programmers that worked on commercial software in the glory days of the Amiga (late 1980s to early 1990s!)
The Ultimate Amiga Graphics, Level and Map Ripper!
A random assortment of rants relating to the Amiga!
An explanation of how many famous Amiga games utilised sprites in weird and interesting ways
Post your comment
Comments
No one has commented on this page yet.
RSS feed for comments on this page | RSS feed for all comments