Commit Graph

19 Commits

Author SHA1 Message Date
emmanuel-marty
49b0739050 Isolate frame implementation details 2019-05-03 19:17:14 +02:00
emmanuel-marty
bab5225e4c Implement dictionary support 2019-05-02 18:38:57 +02:00
emmanuel-marty
ef6b43a296 When using -m, decompress ~7% faster by trading ~0.5% of compression ratio 2019-05-02 11:23:57 +02:00
emmanuel-marty
2b9780bd65 Finalize lzsa1 compressed format, speed up and simplify decompression 2019-04-24 09:47:40 +02:00
emmanuel-marty
593110ae5d Fix parsing of -m option 2019-04-22 14:16:25 +02:00
emmanuel-marty
331d6f9911 Add --prefer-ratio, --prefer-speed, -m options 2019-04-21 09:41:12 +02:00
emmanuel-marty
88054841cf Add strict block checks when decompressing, comparing 2019-04-20 10:26:13 +02:00
emmanuel-marty
4913fe5d48 Fix reporting of compressed size for raw mode 2019-04-13 12:33:25 +02:00
emmanuel-marty
2451d5802e Fix typo in lzsa tool 2019-04-10 17:38:22 +02:00
emmanuel-marty
9c35d5115b When verbose, display uncompressed bytes/token ratio 2019-04-07 15:10:17 +02:00
emmanuel-marty
1353573af1 Small cleanup for end-of-data handling in decompression, check commands 2019-04-06 00:02:11 +02:00
emmanuel-marty
a785010448 Revert token to O|LLL|MMMM; revert to always shifting the match offset by 1; set raw block end marker as a large zero-size match 2019-04-05 23:16:05 +02:00
emmanuel-marty
06e6a14871 Add optimization pass to reduce the number of command tokens in the compressed data blocks without changing the compression ratio 2019-04-05 16:32:11 +02:00
emmanuel-marty
f05359b63d Don't write an unnecessary footer byte when emitting a raw block 2019-04-05 12:13:51 +02:00
emmanuel-marty
c7692cf688 Store 16-bit lengths and match offsets directly, to simplify decompression on 8-bit CPUs without affecting the compression ratio 2019-04-05 10:42:06 +02:00
emmanuel-marty
18fc4da994 Implement raw block mode 2019-04-03 13:05:10 +02:00
emmanuel-marty
11d1ff8cd7 Use 3-byte file header 2019-04-03 11:26:36 +02:00
emmanuel-marty
1f04705845 Fix degenerate case; use full 32 bits for suffix array intervals; make EOD parsable by a decompressor as a long 0 match offset as well; use more aggressive compression settings. 2019-04-03 10:16:12 +02:00
marty-emmanuel
e216b0c544 Initial checkin 2019-04-01 18:04:56 +02:00