Memory Full

Forum / Development

256b demos

Targhan * 06 Apr 2021 00:03:55

I'm pretty sure I know the answer, but I'm asking to be sure (and out of laziness): I don't think there is an existing cruncher with a depack code so small it would actually be worth using for a 256 bytes production?

toms * 06 Apr 2021 20:10:40

I never tried it but ZX0's decruncher is 69 bytes long. I absolutely don't know if it is worth using it for a 256b intro. Share your tests with us!

Targhan * 06 Apr 2021 21:31:29

I will, thanks!!

toms * 07 Apr 2021 11:09:36

I tested it on Twither: it crunches it from 252 to... 251 bytes :)

BSC * 07 Apr 2021 12:44:00

I have had a look at some of those popular MS-DOS 256 byte demos. None of them were compressed. For obvious reasons, I suppose :)

Zik * 07 Apr 2021 18:38:08

The author of ZX0 also designed ZX2 to minimize decompressor size:
https://github.com/einar-saukas/ZX2/blob/main/z80/dzx2_nano.asm
I did not try. As said above, 256B demo is probably too small to take advantage of advanced compression.

Targhan * 07 Apr 2021 19:10:38

« it crunches it from 252 to... 251 bytes :) »
Yes, but... can these 251 bytes be crunched into 250? :)

Thanks for your answers. I'll check all this out. You know, my code mostly consists of NOPs, so it can be crunched quite easily.

Hicks * 09 Apr 2021 14:09:07

Ok for Twither, but if you want to crunch something, you must write it in another way... Unroll the loops, repeat some sequences & cie, and it will be probably less than 250.

BSC * 10 Apr 2021 11:33:02

Actually, I think the 40 years CPC megademo could be a collection of 256b screens. Limitations boost creativity, as we all know, and it might be much less work on the organizational end, because everything would easily fit within one file.

krusty * 10 Apr 2021 12:52:49 * Modified at 12:53:05

Targhan suggested to write a 4k for next revision that would be a collection of 256 bytes demo, isn't it ? ;)

Hicks * 10 Apr 2021 13:47:37

@Krusty: HellMood style!

Targhan * 10 Apr 2021 14:10:52 * Modified at 14:11:25

I thought it was a good idea. Should there be music? :)
HellMood stuff is actually well thought. It's basically shaders. A main loop goes through all the X/Y on the screen, and the current "shader" can do its work, for each coordinate. So an effect can indeed take 10 bytes to code. Of course, "they" have much more interesting instructions to perform cool math operations, so a lot can be done with only a few instructions.

BSC * 11 Apr 2021 22:01:12 * Modified at 22:02:47

This one might be worth a look:

https://github.com/einar-saukas/ZX2

Ahhh! Zik already mentioned it :D