emmanuel-marty / lzsa

Byte-aligned, efficient lossless packer that is optimized for fast decompression on 8-bit micros
Other
236 stars 30 forks source link

Make 6502 decompress_faster_v2.asm (& v1) 3-4% faster at the cost of 1 byte extra. #63

Closed jbrandwood closed 3 years ago

jbrandwood commented 3 years ago

Hi there!

I reorganized my 6502 "decompress_faster" LZSA1 & LZSA2 decompressors to optimize for lengths < 256 bytes, and this has sped them up by 3-4% at the cost of 1 extra byte of code.

They both use self-modifying code now, but that could be removed (at a small % cost) if you wanted.

BTW ... thank you for the Salvador compressor! Its high speed compression makes the ZX0 format actually usable.

If you are interested, I can give you the links to my ZX0 decompressors for the 6502 and HuC6280.

Best wishes,

John

emmanuel-marty commented 3 years ago

Sorry for the late testing - the compressed (synthetic) LZSA2 file attached here does not seem to decompress correctly with the latest improvements; the previous version works fine with it. Can you take a look when you get the chance - happy to merge the changes once fixed. Thanks!

depackfail_6502_lzsa2_faster_20211121.zip