Emmanuel Marty
|
1a4f662360
|
Bump version
|
2019-09-20 12:26:16 +02:00 |
|
Emmanuel Marty
|
c12e20b7fb
|
Improve LZSA2 compression ratio
|
2019-09-20 12:24:27 +02:00 |
|
Emmanuel Marty
|
51644ad2f9
|
Speed LZSA2 compression up further; fix typo
|
2019-09-19 17:18:37 +02:00 |
|
Emmanuel Marty
|
1495b27f69
|
Speed up LZSA1 compression with forward arrivals
|
2019-09-19 12:57:39 +02:00 |
|
Emmanuel Marty
|
c052a188f2
|
Reduce LZSA2 forward arrivals memory use
|
2019-09-19 11:46:03 +02:00 |
|
Emmanuel Marty
|
e4076e4090
|
Speed LZSA2 compression up; tiny ratio increase
|
2019-09-19 00:11:26 +02:00 |
|
Emmanuel Marty
|
8b7d0ab04d
|
Increase LZSA2 ratio. Decrease token count
|
2019-09-17 08:10:52 +02:00 |
|
Emmanuel Marty
|
b1da9c1aee
|
Add extra bound checks in C decompressors
|
2019-09-12 16:19:14 +02:00 |
|
Francois Berder
|
4f2d7da136
|
Fix main return value if compressing
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
|
2019-08-28 09:41:54 +01:00 |
|
Francois Berder
|
a318ac2f83
|
Fix memory leak in comparestream_open
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
|
2019-08-28 09:40:49 +01:00 |
|
Francois Berder
|
da67938978
|
Set dictionnary to NULL in lzsa_dictionary_free
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
|
2019-08-28 09:39:07 +01:00 |
|
Emmanuel Marty
|
2d213bcff1
|
Bump version number
|
2019-08-27 13:18:23 +02:00 |
|
Emmanuel Marty
|
ef259e6867
|
Implement forward arrivals optimal parsers
|
2019-08-27 00:51:34 +02:00 |
|
Emmanuel Marty
|
1b368e71ad
|
Fix comments, header single inclusion defines
|
2019-08-04 16:42:30 +02:00 |
|
Emmanuel Marty
|
b3aae36ecc
|
Bump version
|
2019-07-28 00:25:51 +02:00 |
|
Emmanuel Marty
|
b613d01565
|
Test incompressible data with raw blocks
|
2019-07-26 13:30:41 +02:00 |
|
Emmanuel Marty
|
316dfdcdce
|
Fix comments, remove unused vars
|
2019-07-26 01:12:17 +02:00 |
|
Emmanuel Marty
|
4835e4c26c
|
Support backward decompression
|
2019-07-24 20:08:23 +02:00 |
|
Emmanuel Marty
|
0c4dbf2b72
|
Add files via upload
Show decompression safety distance for raw blocks
|
2019-07-24 15:43:44 +02:00 |
|
Emmanuel Marty
|
9f313d6ee6
|
Handle EOD in C depacker; fix #18; fix typos in usage
|
2019-07-23 23:28:52 +02:00 |
|
Emmanuel Marty
|
2d65f2a7c8
|
Bump version
|
2019-07-14 10:15:10 +02:00 |
|
Emmanuel Marty
|
12086b974a
|
Fix comments, remove unused vars
|
2019-07-08 17:57:36 +02:00 |
|
Emmanuel Marty
|
59eb891394
|
Improve LZSA2 compression ratio further and allow incompressible raw blocks
|
2019-07-01 09:25:19 +02:00 |
|
Emmanuel Marty
|
3c8c4283c7
|
Use real cost of rep offset when considering a reduction; fix small bug in repmatch handling when doing reductions.
|
2019-06-26 13:55:00 +02:00 |
|
Emmanuel Marty
|
2a265f9cf9
|
Remove erroneous comment
|
2019-06-25 11:13:13 +02:00 |
|
Emmanuel Marty
|
7867618f87
|
Fix matchfinder limitation
|
2019-06-25 11:09:19 +02:00 |
|
Emmanuel Marty
|
63c261ce2d
|
Small improvement of the LZSA2 compression ratio
|
2019-06-21 17:28:17 +02:00 |
|
Emmanuel Marty
|
71f262081b
|
Use -m3 as an upper bound for LZSA2
|
2019-06-11 10:38:47 +02:00 |
|
Emmanuel Marty
|
43ff88477f
|
Update tool version number
|
2019-06-10 14:09:23 +02:00 |
|
Emmanuel Marty
|
d564c1ecb8
|
Fixes
|
2019-06-08 19:03:33 +02:00 |
|
Emmanuel Marty
|
2e48e926a1
|
Fix self-tests, in-memory benchmarks in raw mode
|
2019-06-08 18:05:00 +02:00 |
|
Emmanuel Marty
|
659f6c14a9
|
Small improvement over 6502 LZSA2 depacker
|
2019-06-08 16:18:36 +02:00 |
|
Emmanuel Marty
|
6e1201e221
|
Moved
|
2019-06-08 13:36:40 +02:00 |
|
Emmanuel Marty
|
3008d47012
|
Moved
|
2019-06-08 13:36:20 +02:00 |
|
Emmanuel Marty
|
79ed7bf91e
|
Further update LZSA2 format; avoid name conflicts
|
2019-06-08 13:35:03 +02:00 |
|
Emmanuel Marty
|
ddd2ac4c56
|
Remove file after restructuring
|
2019-06-07 23:18:52 +02:00 |
|
Emmanuel Marty
|
8ef0396b50
|
Remove file after restructuring
|
2019-06-07 23:18:43 +02:00 |
|
Emmanuel Marty
|
ee6ab423fc
|
Remove file after restructuring
|
2019-06-07 23:18:14 +02:00 |
|
Emmanuel Marty
|
59d2383b03
|
Remove file after restructuring
|
2019-06-07 23:18:05 +02:00 |
|
Emmanuel Marty
|
74e8d82231
|
Remove file after restructuring
|
2019-06-07 23:17:56 +02:00 |
|
Emmanuel Marty
|
026537f7f2
|
Remove file after restructuring
|
2019-06-07 23:17:47 +02:00 |
|
Emmanuel Marty
|
998714d714
|
Remove file after restructuring
|
2019-06-07 23:17:37 +02:00 |
|
Emmanuel Marty
|
124adf8ade
|
Remove file after restructuring
|
2019-06-07 23:17:16 +02:00 |
|
Emmanuel Marty
|
59d7074da1
|
Remove file after restructuring
|
2019-06-07 23:17:07 +02:00 |
|
Emmanuel Marty
|
e924390c8e
|
Remove file after restructuring
|
2019-06-07 23:16:47 +02:00 |
|
Emmanuel Marty
|
47315447fd
|
Remove file after restructuring
|
2019-06-07 23:16:29 +02:00 |
|
Emmanuel Marty
|
b4e3c07d3a
|
Split code, add automated tests, update LZSA2
|
2019-06-07 23:15:40 +02:00 |
|
emmanuel-marty
|
45cb124c4d
|
Simplify and speed up in-tool decompressors; add in-memory benchmark
|
2019-05-17 08:57:01 +02:00 |
|
emmanuel-marty
|
a708a02048
|
Fix compilation warning
|
2019-05-14 12:18:35 +02:00 |
|
emmanuel-marty
|
277b5b1025
|
Move top-level streaming compression code to library
|
2019-05-13 22:22:53 +02:00 |
|
emmanuel-marty
|
0f4ffa7166
|
Clean up check for emitting a single raw block
|
2019-05-12 23:21:50 +02:00 |
|
emmanuel-marty
|
c96594680a
|
Use full BLOCK_SIZE for dictionary, and use last BLOCK_SIZE bytes rather than first
|
2019-05-12 14:44:28 +02:00 |
|
emmanuel-marty
|
3caa72c722
|
Clarify optimizer
|
2019-05-11 11:42:18 +02:00 |
|
emmanuel-marty
|
8b7b4a2b4f
|
Check in LZSA2 implementation (ratio competitive with ZX7, faster decompression)
|
2019-05-09 16:51:29 +02:00 |
|
emmanuel-marty
|
49b0739050
|
Isolate frame implementation details
|
2019-05-03 19:17:14 +02:00 |
|
emmanuel-marty
|
31ededcdf7
|
Rejoin large patterns
|
2019-05-03 13:45:37 +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
|
9e75a55dd3
|
Reduce token count by 1% without changing the ratio
|
2019-04-25 13:01:56 +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
|
6c4a86c9fe
|
Make compression 5% faster
|
2019-04-20 16:24:54 +02:00 |
|
emmanuel-marty
|
fb79d319cb
|
Speed up portable decompressor a bit
|
2019-04-20 10:27:24 +02:00 |
|
emmanuel-marty
|
3e5639afaf
|
Reduce token count further
|
2019-04-20 10:26:45 +02:00 |
|
emmanuel-marty
|
88054841cf
|
Add strict block checks when decompressing, comparing
|
2019-04-20 10:26:13 +02:00 |
|
emmanuel-marty
|
aa5dbe283d
|
Small optimization to the cost model
|
2019-04-13 12:33:39 +02:00 |
|
emmanuel-marty
|
4913fe5d48
|
Fix reporting of compressed size for raw mode
|
2019-04-13 12:33:25 +02:00 |
|
emmanuel-marty
|
cf51f1775a
|
Fix small literals cost estimate issue in optimizer, gain a small amount of compression and reduction of token count
|
2019-04-11 23:47:57 +02:00 |
|
emmanuel-marty
|
2451d5802e
|
Fix typo in lzsa tool
|
2019-04-10 17:38:22 +02:00 |
|
emmanuel-marty
|
9649073131
|
Speed up compression
|
2019-04-08 09:44:07 +02:00 |
|
emmanuel-marty
|
837b6895cf
|
Further reduce the number of tokens for even better decompression speed; increase compression slightly
|
2019-04-07 15:10:53 +02:00 |
|
emmanuel-marty
|
9c35d5115b
|
When verbose, display uncompressed bytes/token ratio
|
2019-04-07 15:10:17 +02:00 |
|
emmanuel-marty
|
6aa2dae4b3
|
Add context to libdivsufsort, don't allocate memory during compression
|
2019-04-07 00:01:22 +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
|
1ef1ad8111
|
Reorganize token byte for faster decoding on 8-bit CPUs, without affecting the compression ratio
|
2019-04-05 11:58:44 +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
|
c86d38ba63
|
Reduce the number of literals required at the end of a compressed block
|
2019-04-05 09:28:16 +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 |
|
emmanuel-marty
|
fcfdbe9745
|
Add autodocs to internal compressor functions
|
2019-04-02 15:03:21 +02:00 |
|
emmanuel-marty
|
8b992bb33a
|
Add autodocs to public functions in compressor and decompressor
|
2019-04-02 12:12:12 +02:00 |
|
marty-emmanuel
|
e216b0c544
|
Initial checkin
|
2019-04-01 18:04:56 +02:00 |
|