Update Z80 depackers changes history

This commit is contained in:
Emmanuel Marty
2019-09-26 11:42:52 +02:00
committed by GitHub
parent 681f78d1e8
commit 6a62f7d795
4 changed files with 32 additions and 20 deletions

View File

@@ -2,12 +2,12 @@
; Speed-optimized LZSA1 decompressor by spke & uniabis (111 bytes) ; Speed-optimized LZSA1 decompressor by spke & uniabis (111 bytes)
; ;
; ver.00 by spke for LZSA 0.5.4 (03-24/04/2019, 134 bytes); ; ver.00 by spke for LZSA 0.5.4 (03-24/04/2019, 134 bytes);
; ver.01 by spke for LZSA 0.5.6 (25/04/2019, -24 bytes, +0.2% speed); ; ver.01 by spke for LZSA 0.5.6 (25/04/2019, 110(-24) bytes, +0.2% speed);
; ver.02 by spke for LZSA 1.0.5 (24/07/2019, added support for backward decompression); ; ver.02 by spke for LZSA 1.0.5 (24/07/2019, added support for backward decompression);
; ver.03 by uniabis (30/07/2019, -1 byte, +3.5% speed); ; ver.03 by uniabis (30/07/2019, 109(-1) bytes, +3.5% speed);
; ver.04 by spke (31/07/2019, small re-organization of macros); ; ver.04 by spke (31/07/2019, small re-organization of macros);
; ver.05 by uniabis (22/08/2019, -2 bytes, same speed); ; ver.05 by uniabis (22/08/2019, 107(-2) bytes, same speed);
; ver.06 by spke for LZSA 1.0.7 (27/08/2019, +4 bytes, +2.1% speed); ; ver.06 by spke for LZSA 1.0.7 (27/08/2019, 111(+4) bytes, +2.1% speed);
; ver.07 by spke for LZSA 1.1.0 (25/09/2019, added full revision history) ; ver.07 by spke for LZSA 1.1.0 (25/09/2019, added full revision history)
; ;
; The data must be compressed using the command line compressor by Emmanuel Marty ; The data must be compressed using the command line compressor by Emmanuel Marty

View File

@@ -3,9 +3,9 @@
; ;
; ver.00 by spke for LZSA 0.5.4 (23/04/2019, 69 bytes); ; ver.00 by spke for LZSA 0.5.4 (23/04/2019, 69 bytes);
; ver.01 by spke for LZSA 1.0.5 (24/07/2019, added support for backward decompression); ; ver.01 by spke for LZSA 1.0.5 (24/07/2019, added support for backward decompression);
; ver.02 by uniabis (30/07/2019, -1 byte, +3.2% speed); ; ver.02 by uniabis (30/07/2019, 68(-1) bytes, +3.2% speed);
; ver.03 by spke for LZSA 1.0.7 (31/07/2019, small re-organization of macros); ; ver.03 by spke for LZSA 1.0.7 (31/07/2019, small re-organization of macros);
; ver.04 by spke (06/08/2019, -1 byte, -1.2% speed); ; ver.04 by spke (06/08/2019, 67(-1) bytes, -1.2% speed);
; ver.05 by spke for LZSA 1.1.0 (25/09/2019, added full revision history) ; ver.05 by spke for LZSA 1.1.0 (25/09/2019, added full revision history)
; ;
; The data must be compressed using the command line compressor by Emmanuel Marty ; The data must be compressed using the command line compressor by Emmanuel Marty

View File

@@ -1,6 +1,13 @@
; ;
; Speed-optimized LZSA2 decompressor by spke (v.2 02-27/08/2019, 216 bytes); ; Speed-optimized LZSA2 decompressor by spke & uniabis (216 bytes)
; with improvements by uniabis (30/07/2019, -5 bytes, +3% speed and support for Hitachi HD64180). ;
; ver.00 by spke for LZSA 1.0.0 (02-07/06/2019, 218 bytes);
; ver.01 by spke for LZSA 1.0.5 (24/07/2019, added support for backward decompression);
; ver.02 by spke for LZSA 1.0.6 (27/07/2019, fixed a bug in the backward decompressor);
; ver.03 by uniabis (30/07/2019, 213(-5) bytes, +3.8% speed and support for Hitachi HD64180);
; ver.04 by spke for LZSA 1.0.7 (01/08/2019, 214(+1) bytes, +0.2% speed and small re-organization of macros);
; ver.05 by spke (27/08/2019, 216(+2) bytes, +1.1% speed);
; ver.06 by spke for LZSA 1.1.0 (26/09/2019, added full revision history)
; ;
; The data must be compressed using the command line compressor by Emmanuel Marty ; The data must be compressed using the command line compressor by Emmanuel Marty
; The compression is done as follows: ; The compression is done as follows:

View File

@@ -1,6 +1,11 @@
; ;
; Size-optimized LZSA2 decompressor by spke (v.1 02-09/06/2019, 140 bytes); ; Size-optimized LZSA2 decompressor by spke & uniabis (140 bytes)
; with improvements by uniabis (30/07/2019, -1 byte, +3% speed and support for Hitachi HD64180). ;
; ver.00 by spke for LZSA 1.0.0 (02-09/06/2019, 145 bytes);
; ver.01 by spke for LZSA 1.0.5 (24/07/2019, added support for backward decompression);
; ver.02 by uniabis (30/07/2019, 144(-1) bytes, +3.3% speed and support for Hitachi HD64180);
; ver.03 by spke for LZSA 1.0.7 (01/08/2019, 140(-4) bytes, -1.4% speed and small re-organization of macros);
; ver.04 by spke for LZSA 1.1.0 (26/09/2019, removed usage of IY, added full revision history)
; ;
; The data must be compressed using the command line compressor by Emmanuel Marty ; The data must be compressed using the command line compressor by Emmanuel Marty
; The compression is done as follows: ; The compression is done as follows:
@@ -84,22 +89,22 @@
IFNDEF HD64180 IFNDEF HD64180
MACRO LD_IY_DE MACRO LD_IX_DE
ld iyl,e : ld iyh,d ld ixl,e : ld ixh,d
ENDM ENDM
MACRO LD_DE_IY MACRO LD_DE_IX
ld e,iyl : ld d,iyh ld e,ixl : ld d,ixh
ENDM ENDM
ELSE ELSE
MACRO LD_IY_DE MACRO LD_IX_DE
push de : pop iy push de : pop ix
ENDM ENDM
MACRO LD_DE_IY MACRO LD_DE_IX
push iy : pop de push ix : pop de
ENDM ENDM
ENDIF ENDIF
@@ -117,7 +122,7 @@ CASE01x: cp %01100000 : rl d
OffsetReadE: ld e,(hl) : NEXT_HL OffsetReadE: ld e,(hl) : NEXT_HL
SaveOffset: LD_IY_DE SaveOffset: LD_IX_DE
MatchLen: and %00000111 : add 2 : cp 9 : call z,ExtendedCode MatchLen: and %00000111 : add 2 : cp 9 : call z,ExtendedCode
@@ -150,7 +155,7 @@ CASE110: ld d,(hl) : NEXT_HL : jr OffsetReadE
CASE11x cp %11100000 : jr c,CASE110 CASE11x cp %11100000 : jr c,CASE110
CASE111: LD_DE_IY : jr MatchLen CASE111: LD_DE_IX : jr MatchLen
ExtendedCode: call ReadNibble : inc a : jr z,ExtraByte ExtendedCode: call ReadNibble : inc a : jr z,ExtraByte
sub #F0+1 : add c : ret sub #F0+1 : add c : ret