-=* LZSS.E - A compression library for Euphoria 2.1+ *=-
                   By Mic, 2000/2003
                      


Updated 2003-05-27
------------------
Major speed improvements in the encoder by Matt Lewis.
Additional improvements (though not as radical), along with some
cleaning up of the code was made by Mic.


Introduction
------------
LZSS is a variant of the popular LZ algorithm wich gives decent 
compression ratios at reasonable speeds. On a P-II 450 MHz and
384 MB 100 MHz SDRAM this library can encode a 983kB bitmap in
8.5 seconds and decode it in 0.5 seconds.

If you're interested in how it works, you could probably find the algorithm at
programmersheaven.com. 



How to use it
-------------

procedure Encode(sequence source,sequence dest)
 Encodes the file "source" into file "dest".
 Example:
  Encode("c:\windows\system\rundll32.exe","c:\rundll32.lzs")
  (EXE-files usually don't compress very good, but this is just an example..)

procedure Decode(sequence source,sequence dest)
 ..guess..

global atom bytes_in,
            bytes_out

These two variables contains the number of bytes read/written after a call to Encode().
You can calculate the compression ratio (in percents) using the below formula:
 compressed = ((1.0 - (bytes_out / bytes_in)) * 100)

--the end



