As promised, here is a BlitzMax module based on my LZMA module that handles automatic compression of streams. By using it reading and writing compressed files is as easy as using "lzma::" as a prefix to OpenStream.

It should also work fine with other types of streams, eg. IncBin streams (using "lzma::incbin::"). It requires that the stream supports seeking, so it won't work with network streams as is.

It requires the LZMA module. Here are source and win32 versions with and without the LZMA module:

  1. Source only
  2. Source only with LZMA
  3. Windows build
  4. Windows build with LZMA

To install, unpack the zip to BlitzMax/mod. See test.bmx for a simple example.