Commit Graph

475 Commits

Author SHA1 Message Date
Emmanuel Marty 4c566286f5
Increase ratio 2019-12-09 09:54:56 +01:00
Emmanuel Marty 65a262ec95
Bump version 2019-11-27 15:26:34 +01:00
Emmanuel Marty 63da0eb49d
Small speedup 2019-11-27 09:47:32 +01:00
Emmanuel Marty 78ad147799
Don't systematically encode last byte as literal 2019-11-26 20:48:13 +01:00
Emmanuel Marty 88f563d84c
Secure last token decompression for non-raw blocks 2019-11-26 17:35:11 +01:00
Emmanuel Marty d37589cfdb
Expand forward repmatch candidates 2019-11-26 13:33:08 +01:00
Emmanuel Marty 0b5e915d83
Split non-rep from repmatch candidates 2019-11-26 11:58:34 +01:00
Emmanuel Marty a38e8b126c
Small LZSA2 compression speedup 2019-11-20 15:40:11 +01:00
Emmanuel Marty 5f4cf4dfc7
Fix for LZSA1 as well 2019-11-19 19:53:46 +01:00
Emmanuel Marty 8e4e7c06c7
Fix calculation for promoting literal+match seqs 2019-11-19 19:48:39 +01:00
Emmanuel Marty b1738b4003
Promote some literal+match sequences to a match 2019-11-18 12:10:23 +01:00
Emmanuel Marty e328f63feb
Bump version 2019-11-13 00:57:31 +01:00
Emmanuel Marty e0c42afac9
Increase LZSA2 ratio 2019-11-13 00:57:09 +01:00
Emmanuel Marty ce7fc33646
Reduce memory use 2019-11-12 00:30:24 +01:00
Emmanuel Marty 53b2013b73
Small improvement to merging large matches 2019-11-11 18:41:08 +01:00
Emmanuel Marty df9690a949
Merge pull request #36 from peterferrie/master
fast v1
2019-11-09 17:55:19 +01:00
Peter Ferrie 302234a91b fast v2 2019-10-31 23:01:00 -07:00
Peter Ferrie 9fc9a49d67 fast v1 2019-10-31 22:20:02 -07:00
Emmanuel Marty 7371486513
Bump version 2019-10-29 12:10:13 +01:00
Emmanuel Marty f249597dfd
Increase LZSA2 ratio 2019-10-29 12:09:14 +01:00
Emmanuel Marty 78f588a833
Clarify defines 2019-10-29 10:45:57 +01:00
Emmanuel Marty c790fb8ebe
Add link to Gabba ZX Spectrum demo, that uses LZSA 2019-10-28 09:21:57 +01:00
Emmanuel Marty 3c4f535e0b
Increase LZSA2 ratio by ~0.02% 2019-10-27 14:55:39 +01:00
Emmanuel Marty 8551c3ff8a
Merge pull request #35 from MobyGamer/decompressor/8086_speed_jumptable
Rewrite 8088 jumptable decompressor for maximum speed
2019-10-27 10:28:48 +01:00
mobygamer 30192238ea Rewrite 8088 jumptable decompressor for maximum speed
This is a rewrite of LZSA1JMP.ASM to use a 256-element jumptable, which
allows the code to handle all of the hot paths (common cases) without
any branching.  This not only reduces branches (which are very costly on
x86) to a bare minimum, but also grants us foreknowledge in a decode
path of what steps can be skipped.

The new code is 12.7% faster than the old code, and assembles to less
than 3K of object code and data.
2019-10-26 23:34:24 -05:00
Emmanuel Marty 53fcd3b1a8
Generalize merging very large matches 2019-10-24 13:05:32 +02:00
Emmanuel Marty f4cf97f176
Merge pull request #34 from specke/master
Added option for unrolled copying of long matches
2019-10-22 21:52:48 +02:00
introspec d5d788946e
Added an option for unrolling long match copying
Usually useless and costing +57 bytes, this option can bring dramatic performance improvements on very compressible data dominated by long matches
2019-10-22 20:11:46 +01:00
introspec e1e1276c96
Merge pull request #4 from emmanuel-marty/master
Re-sync with the main
2019-10-22 20:09:00 +01:00
Emmanuel Marty 16ac8c75af
Add link to PDP-11 depackers by Ivan Gorodetsky 2019-10-22 17:13:05 +02:00
Emmanuel Marty 05d77095ca
Bump version 2019-10-22 12:39:27 +02:00
Emmanuel Marty b84fe7c332
Further increase LZSA2 ratio by ~0.1% on average 2019-10-22 12:37:46 +02:00
Emmanuel Marty 7dd039a152
Delete shrink_context.h 2019-10-22 12:37:16 +02:00
Emmanuel Marty 9f6ca2c25f
Delete shrink_block_v2.c 2019-10-22 12:37:04 +02:00
Emmanuel Marty dbaa3fa921
Further increase LZSA2 ratio by ~0.1% on average 2019-10-22 12:36:41 +02:00
Emmanuel Marty 2926ad8436
Remove unused #includes 2019-10-21 12:29:38 +02:00
Emmanuel Marty d9156d3d2b
Reduce LZSA1 token count by 2.5% on average 2019-10-19 13:10:41 +02:00
Emmanuel Marty 6adf92fc88
Merge pull request #33 from specke/master
-1 byte
2019-10-11 10:18:05 +02:00
Emmanuel Marty 96df02c532
Remove unused code 2019-10-11 09:20:36 +02:00
Emmanuel Marty 89f1664ae6
Remove unused code 2019-10-11 09:14:19 +02:00
Emmanuel Marty c363ecf527
Remove unused code 2019-10-11 09:11:49 +02:00
Emmanuel Marty 5141ed7c59
Remove unused code 2019-10-11 09:11:41 +02:00
Emmanuel Marty c77c666568
Remove unused code 2019-10-11 09:10:07 +02:00
Emmanuel Marty 115a81cb71
Remove unused code 2019-10-11 09:09:42 +02:00
Emmanuel Marty 4436f216ce
Bump version 2019-10-11 09:06:50 +02:00
Emmanuel Marty baa53f6889
Newly compressed LZSA2 files depack 0.7% faster 2019-10-11 09:05:58 +02:00
introspec 495a12216f
-1 byte
Very slightly faster too
2019-10-11 00:23:43 +01:00
Emmanuel Marty b5117c3dfe
Fixes for -stats 2019-10-11 00:25:46 +02:00
Emmanuel Marty f5ef6bf868
Merge pull request #32 from specke/master
Slightly faster unlzsa2_fast.asm for Z80
2019-10-11 00:22:12 +02:00
introspec 566e3a94e8
+0.2% speed
also, added an option to unroll LDIR for longer matches (which adds 38 bytes, but can be significantly faster for files with many long matches)
2019-10-10 22:50:23 +01:00