pouët.net

Go to bottom

Chromatic Destination by Resource [web]

chromatic destination 

another 4K intro for the Plus/4

by resource and friends

credits:

oswald         - code (effects, cordic implementation, texture generation, possibly other stuff)
edhellon       - code (a bit of everything)
jammer         - music and incrdibly small and fast player
poison         - script, palettes, design
blala          - extremely short 6502 unpacker for upkr (edhellon did the original, longer version)

thanks:

exoticorn      - upkr
cordic authors - atan2 and sinus algo https://www.eit.lth.se/fileadmin/eit/courses/eitf35/2017/CORDIC_For_Dummies.pdf
bubis          - original zoom4 routine

again random notes

So here we go for the third time. A new musician on board, first time working with Jammer but I have to say it was 
absolutely smooth sailing and I remain impressed both by his multicore "jammicro" player and his professionalism. 
Unfortunately our music size budget went down pretty much constantly as well as our time budget for scripting so 
he had to cut it a bit short in the end. He made a version with a better ending but due to about 10 bytes missing 
(and nowhere to be found) we eventually used the shorter version without a proper ending but that's partycoding 
and life. Kudos mate and I hope we will work together again on some other project!

Note that it only sounds correct on Plus4emu and of course on the real thing and does not sound correct on any
other emulator!

This was actually the tech we wanted for last year but could not quite make it (and it would have not fit into
4K anyway). I am very proud of the tech in this intro, probably our most advanced 4K yet and I don't think there
are many 8 bit 4Ks (or even demos) out there with comparable math inside. We actually had to implement a fairly
complete collection of 32 bit math routines (some were taken from old magazines and some from 6502.org actually).
I was toying with the idea of releasing this collection geared towards 4Ks on the good old 6502 after a bit of
cleaning up. Ping me if interested.

Ferris told me about upkr a while back but it didn't have an unpacker for 6502 and I really didn't want to write
one so I was hoping someone else will. Noone did, so about a month ago while Oswald was implementing some of 
the math32 stuff I did the unpacker. While upkr usually beats p4kbar v2 by about 100-150 bytes on the blob, my
first version was so naive that this gain was almost lost conpletely. Later I optimized it for size so we were
gaining about 20-30 bytes, then Blala came along and after some crazy bytegolf we were suddenly gaining about 50
bytes. Then he got overexcited and decided to rewrite it completely based on the C unpacker and his rewritten
version was almost on par with the p4kbar unpacker sizewise, so we got the net gain on the blob! We needed every
byte here because the code in this 4K is much more complex than in our previous one so this time it's really the
code that takes up most of the net size. BTW we definitely plan on releasing the source for this unpacker.

Upkr seems to be the king of the playground right now for 4K intros even on 8 bit hardware, beating p4kbar and
probably Shrinkler as well (although I haven't tested that due to the lack of a 6502 unpacker). But I'm sure
Ferris will have a word or two about this so there are still bytes to be gained!

Oh and we actually managed to use double buffer this time for less tearing. The memory is so full that we
even have to generate the used texture/palette combination on the fly so there was no space for triple buffering.
We even have to regenerate a lot of data when changing between the scenes - hence the black screens.

We also had to make of the scenes simpler because the calculation for the more complex version needed almost
200 bytes more which we didn't have so we made it simpler on Thursday with a heavy heart. Maybe we'll include
the original version in a future 4K somewhere...

Finally, do come to Arok -- this is the 25th edition this year which makes it the longest running party serie ever!

See you soon!

- edhellon

Resource and friends signing off.
Go to top