[zxspectrum] Re: (de)compressione e Z88DK

  • From: Paolo Ferraris <pieffe8@xxxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Fri, 28 Jul 2006 12:41:36 +0200

Marcello Zaniboni ha scritto:

Poi la faccenda si è evoluta e ho fatto la parte di decompressione
sotto forma di funzione ANSI C. Qui l'idea era di comprimere prima i
dati da PC e poi il programma compilato può decomprimerli in un'area
di memoria a sua scelta. Purtroppo mi sono scontrato con le
performance del codice compilato :-( le prime prove sono scoraggianti:

http://www.geocities.com/marcellozaniboni/zxdecompression.zip

ho compresso uno screen da 6912 a 3499 byte (-49% ...fin qui molto
bene); la lunghezza complessiva del compilato è diventata di 4741,
cioè 3499 di dati + 1242 di programma... un pò molti, ma va bene lo
stesso.
Il problemone sono le performance: più di un quarto d'ora per
decomprimere tutto!!! Guardando i risultati dello stesso algoritmo su
PC mi ero fatto un po' di illusioni... a questo punto mi sa che mi
tocca riprendere il linguaggio macchina dello Z80!!! :-)

Per darti un'ulteriore "pugnalata" :-), ti do' qualche statistica relativa alla compressione di altri compressori. MegaLZ riduce l'immagine a circa 2610 bytes, mentre la mia compressione scende a 2570
bytes. Mentre la mia decompressione e' lenta (ma non lenta come la tua - qualche secondo), quella di megaLZ e' velocissima (quasi istantanea).


Che tipo di compressione usi? Dal fatto che il .tap e' ancora comprimibile, credo LZ, vero?

-p

Other related posts: