Doug Masten
27562f4761
Restructure code to eliminate one BRA instruction from loop in 6809 LZSA1 depacker
2020-06-27 02:02:33 -05:00
Doug Masten
f72133f4cf
Move instruction before branch to save one byte in 6809 LZSA2 depacker
2020-06-26 16:48:58 -05:00
Doug Masten
56ba563794
One byte saving for setting reg A to $FF in 6809 LZSA2 depacker
2020-06-26 15:59:24 -05:00
Doug Masten
c0f09db364
Delay clearing high part of literals count until we really have to in 6809 LZSA2 depacker
2020-06-26 15:56:28 -05:00
Doug Masten
99db30a732
Optimize handling of 9 bits offset in 6809 LZSA2 depacker
2020-06-26 15:18:53 -05:00
Doug Masten
061ca99838
Optimize handling of token's Z flag bit in 6809 LZSA2 depacker
2020-06-26 14:52:09 -05:00
Doug Masten
7b96368469
Optimize match offset code in 6809 LZSA2 depacker
2020-06-26 14:42:36 -05:00
Doug Masten
e9540b2e3d
Remove unnecessary "ADDB #$18" as register B will always have this value from 6809 LZSA2 depacker
2020-06-24 00:49:09 -05:00
Doug Masten
6a47ed7f41
Remove unnecessary "ADDB #$18" as B register will always have this value from 6809 LZSA depacker
2020-06-21 12:32:54 -05:00
Doug Masten
06d63de9d7
Rearrange "CLRA" instruction for slight speed optimization in 6809 LZSA depacker
2020-06-21 12:16:07 -05:00
Doug Masten
b5b8ca556a
Rearrange match offset code to save 2 bytes in 6809 LZSA depacker
2020-06-21 01:09:15 -05:00
Doug Masten
7f0316b81c
Update code byte counts for 6809 LZSA depackers
2020-06-20 12:45:51 -05:00
Doug Masten
e8edc3242d
Restructure code to eliminate one BRA instruction in unlzsa1.s 6809 LZSA depacker
2020-06-20 12:27:31 -05:00
Doug Masten
1dd65731c4
Remove unnecessary "ADDB #$12" as B register will always have this value from 6809 LZSA depackers
2020-06-20 12:27:22 -05:00
Doug Masten
f233d552ca
Remove unnecessary "TSTB" instruction from 6809 LZSA depackers
2020-06-20 12:11:35 -05:00
Emmanuel Marty
ee969968c1
Add backward depackers for 6809
2020-06-20 14:41:25 +02:00
Emmanuel Marty
f920485899
-3 bytes for 6809 LZSA2 depacker, slightly faster
2020-06-19 20:08:09 +02:00
Emmanuel Marty
2cdeda4784
-2 bytes for 6809 LZSA1 depacker, slightly faster
2020-06-19 20:07:41 +02:00
Emmanuel Marty
f198431a71
-2 bytes for 6809 LZSA2 depacker, speed unchanged
2020-06-19 18:26:25 +02:00
Emmanuel Marty
f80706ff7e
-5 bytes and faster 6809 LZSA2 depacker
2020-06-19 12:50:10 +02:00
Emmanuel Marty
c3b111cea6
-2 bytes and faster 6809 LZSA1 depacker
2020-06-19 12:49:46 +02:00
Emmanuel Marty
e253d3e628
-1 byte for 6809 LZSA2 depacker
2020-06-19 08:57:01 +02:00
Emmanuel Marty
26bf944d9f
Add 6809 depacker for LZSA2
2020-06-18 17:48:08 +02:00
Emmanuel Marty
1d0427ecae
Make 6809 depacker for LZSA1 smaller/faster
2020-06-18 17:46:42 +02:00
Emmanuel Marty
3ce9a2b36e
Add 6809 depacker for LZSA1
2020-06-18 13:26:25 +02:00
Emmanuel Marty
668204d953
Merge optimizations by Pavel Zagrebin
...
Manually merge PR #44
2020-04-04 13:29:25 +02:00
Emmanuel Marty
47e54ac110
Remove unused code
2020-03-24 20:18:22 +01:00
odzhan
5fddaca0f8
compact decompressors for x86
2020-01-13 18:14:11 +00:00
Emmanuel Marty
693618f100
More asm fixes
2020-01-08 13:11:43 +01:00
Emmanuel Marty
aa122d1e05
Fix assembly when not using LZSA_SHORT_CP
2020-01-08 10:40:26 +01:00
Peter Ferrie
9f020b3605
fix typos in original code
2020-01-07 17:02:43 -08:00
Peter Ferrie
22e2f80ae7
cut one byte
2020-01-07 16:57:49 -08:00
Peter Ferrie
45b91ddaa2
fasterer v2
2020-01-06 22:24:07 -08:00
Emmanuel Marty
fb7e03030f
Merge pull request #38 from specke/master
...
-2 bytes
2020-01-03 10:37:28 +01:00
Emmanuel Marty
29e8960e6f
Add faster LZSA1 6502 depacker by jbrandwood
2020-01-03 10:31:54 +01:00
Emmanuel Marty
410544f4e6
Fast 6502 LZSA2 depacker: smaller size, same speed
2020-01-03 10:01:23 +01:00
introspec
96b9933bd3
remove temporary label
2020-01-02 14:32:30 +00:00
introspec
9cd9fa5939
-2 bytes
...
(same speed)
2020-01-02 14:30:00 +00:00
Emmanuel Marty
8721c11041
Add faster LZSA2 depacker by jbrandwood
2019-12-24 12:02:34 +01:00
Emmanuel Marty
a46796b6a9
Fix assembling of 6502 fast v1 depacker
2019-12-24 10:16:01 +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
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
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
495a12216f
-1 byte
...
Very slightly faster too
2019-10-11 00:23:43 +01: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
Emmanuel Marty
6a62f7d795
Update Z80 depackers changes history
2019-09-26 11:42:52 +02:00
Emmanuel Marty
681f78d1e8
Rename
2019-09-26 07:48:59 +02:00
Emmanuel Marty
8015ab8650
Rename
2019-09-26 07:48:44 +02:00
Emmanuel Marty
2f15298343
Rename
2019-09-26 07:48:33 +02:00