V1.04-JL (11/7/2020): cp104.zip (86,556 bytes). Includes source and binaries for RISC OS (3.5+).
CodePressor compresses Absolute and Untyped files. It performs best on small programs and is really only suitable for 1K, 2K and 4K coding competitions.
Changes from the last Topix version (1.02):
- Change: Added basic support for compressing Thumb binaries; if the bottom bit of the Exec address of the input file is set (representing an interworking branch into Thumb mode), CodePressor will now generate correctly an interworking branch from the (ARM-mode) decompression code into the Thumb payload. Future releases may include special Thumb versions of the decompression routines, to reduce their size.
- Fix: Methods 4 and 5 would sometimes generate corrupt output, due to the compression code not being aware that the decompression code overwrites the first byte of itself.
- Change: Binary recompiled using GCC 4.7.4 for compatibility with latest machines (and now uses Shared C Library instead of UnixLib).
- Change: Decompression code made 26/32bit neutral. This has added up to 3 instructions to some of the decompression routines.
- Fix: Program now reports correct version number (was reporting 1.00).
- Fix: Register corruption bug in method 0 would result in broken output if input file load address required more than two instructions.