News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_roudoudou

New cruncher ZX0

Started by roudoudou, 15:42, 02 February 21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Prodatron

Quote from: eto on 17:28, 07 June 23The compression rate of Exomizer seems to be slightly better than ZX0. However the speed of ZX0 is much better.

The compression rate is more or less the same (both very perfect). I am not sure, if Exomizer is based on bit-trees like Huffman, but the decompression of Exomizer is very slow compared to ZX0, which is completely byte-based + using Elias encoding for offset and length, which is still very fast. It's crazy, that ZX0 is able to have such a great compression ratio but is still byte-based.
For me Exomizer wasn't an option as loading speed was always very important for me. So ZX0 is like a dream, as it has an ultra-short, ultra-fast decompressor and (nearly) the best compression-rate.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

TotO

ZX0 is just unbelievable and ZX1 even faster to balance usages.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Prodatron

Quote from: TotO on 08:07, 08 June 23ZX0 is just unbelievable and ZX1 even faster to balance usages.
The only difference is, that ZX0 is using elias gamma coding for the upper (MSB) offset byte, which maybe only a few bits, while ZX1 is always using 1 (if within 127 bytes) or 2 (if more) full bytes for the offset.
Sometimes even ZX1 files are smaller (if a lot of offsets are <=127), but usually ZX0 wins in file size.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

TotO

Sure, I'm not speaking about the size but the speed.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

BSC

Quote from: Prodatron on 23:06, 06 June 23I loved the Crown Cruncher, thanks to Crown again, it was fast and familiar for me,
Are you aware that Crown stole most of "his" crunching related code? See http://memoryfull.net/articles.php?id=18 for details.
** My SID player/tracker AYAY Kaeppttn! on github **  Some CPC music and experiments ** Other music ** More music on scenestream (former nectarine) ** Some shaders ** Some Soundtrakker tunes ** Some tunes in Javascript

My hardware: ** Schneider CPC 464 with colour screen, 64k extension, 3" and 5,25 drives and more ** Amstrad CPC 6128 with M4 board, GreaseWeazle.

TotO

"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Prodatron

Haha, yes, but in this case Antoine is talking about the Crown Imploder, not the Crown Cruncher.
I didn't use the Crown Imploder, as decrunching speed was slow (probably very bit based huffman stuff), and I like to have a fast booting speed.
I am not sure, but I guess the Crown Cruncher code wasn't stolen as well, as this kind of compression is easier to implement compared to huffman.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

GUNHED

Let me do a real life test... (5 to 7 tries for every part done)

- Loading of an application of 39 KB size from floppy disc: 2,7 seconds
- Loading of an application of 39 KB size from M4 SD card: 0,2 seconds (*)
- Exomizer-Uncompression of an application of 39 KB size from ROM: 2,9 seconds

(*) Maybe faster, but my fingers are not.

Comparing that with the before posted values, the decompression speed of Exomzer vs. ZX0 seems not too bad. Well, i guess at the moment I can stay with Exomizer without having a too bad consciousness.  ;)

Any idea how quick a 39 KB file can be uncompressed using ZX0?
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

roudoudou

From my experience, Exomizer 3 can be 10% better than ZX0 on GFX (but never on code) and it's also slow to decrunch whereas ZX0 is fast everytime
ZX0 decrunch is very small and do not need an additionnal buffer where Exo3 is big as 260 bytes + 256 aligned buffer
My pronouns are RASM and ACE

eto

Quote from: GUNHED on 18:08, 09 June 23Any idea how quick a 39 KB file can be uncompressed using ZX0?
if you share the binary, I can try it. 

GUNHED

Quote from: eto on 19:14, 09 June 23
Quote from: GUNHED on 18:08, 09 June 23Any idea how quick a 39 KB file can be uncompressed using ZX0?
if you share the binary, I can try it.
Yes, of course. Here it comes...
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

eto

What DSK is that? Winape can't properly read it and neither does ManageDSK.

I could extract it with RetroVM. Hopefully that worked properly.

Original size: 39808 bytes
Compressed size: 16540 bytes
time to decompress (standard decompressor): 0.93s


GUNHED

#62
WoW! Less than a second!!! Great timing!!!
And thank you very much for testing.  :) :) :)

BTW: The DSK was from Caprice, WinApe likes no DSKs anyway  ;) Therefore I never use it. But maybe it was a problem of the extended file header.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

Powered by SMFPacks Menu Editor Mod