Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > DYPP
2017-03-29 13:36
Rudi
Account closed

Registered: May 2010
Posts: 125
DYPP

Hi,
DYPP - Different Y Pixel Position.
I don't seem to find an explanation on this effect on C64 on codebase or anywhere. Maybe its in another thread here on csdb, then please provide an link.

I know the basics of sines, ive made sinescroll on PC, but its easier there since you can look up the framebuffer directly, via sine-tables and so on.

Im wondering how this effect is easily made on C64. I believe there are more than one way, but i guess one way is slower than the other; for example moving each column-bit (inside a char) in realtime. The other way I think is having the chars animated, similar to a twister. Though, im thinking each angle is used for lookup table. I just dont seem to get it right in my mind to start coding on this effect. I've seen several early cracktros and demos that does this very fast, but haven't had the time to reverse-engineer the binaries. If you have any tips and info i'd appreciate it, or even better; write an explanation for codebase.
Thanks
 
... 43 posts hidden. Click here to view all posts....
 
2017-03-31 13:28
HCL

Registered: Feb 2003
Posts: 728
Quote: mekanix is cheating as far as I'm concerned, lda sta code, no ORA.

Mekanix is using precalculated fonts for a range of angles. It is still calculating individual sinus-values for each pixel-column, and then mapping it to best possible font.. The accuracy is ok i would say :). Also this way it can do more funny sinuses than VSP-stuff.
2017-03-31 20:32
Compyx

Registered: Jan 2005
Posts: 631
Gotta admit those DYPP's look really smooth, and using a movement you can't get with VSP-trickery.

Never had seen that demo before even, I'm lagging behind badly :)
2017-03-31 20:35
ChristopherJam

Registered: Aug 2004
Posts: 1409
Ah, so that's how they managed such a large area. It's effectively caching intermediates, so that still counts in my book; just restricted to reasonably smooth functions :)
2017-04-01 00:36
Codey

Registered: Oct 2005
Posts: 79
I believe The Larch III The Larch 3 had a mega-DYPP in it. The same effect using a 1x1 charset and 8 splits per char without pre-plotting chars would take a massive amount of raster time. Plotting the bits in pairs resulting in 4 different Y positions per char still looks pretty impressive.
2017-04-01 09:26
Dr.Science

Registered: Oct 2011
Posts: 41
We are in 2017 and you are talking about keeping lamers out? Sounds like 1989... :-)
2017-04-01 11:36
ChristopherJam

Registered: Aug 2004
Posts: 1409
Well, The Larch 3's from 1989, so I guess that fits at least..

But yeah, I think a somewhat more welcoming attitude to newbies is more important than ever.
2020-01-16 14:25
Sam

Registered: Aug 2010
Posts: 21
I'm too stupid to figure out the trick in the multi-dypp-part of "Crest Avantgarde". Would anyone care to share any thoughts on that? I did a couple of dypp-routines in 1989-1992, but I always sucked in "vic tricks", amongst a lot of other things I sucked and keep sucking in.

The DYPP in Anal Intruder uses the same trick than mekanix, based on what I read about Mekanix here, no VSP (is vsp = vertical screen position here?) involved, but a lot suckier code optimizations.

Wouldn't a VSP trick to create a dypp just generate a static "road" of text? Unless the VSP is there just to save cycles when scrolling, but the pixel-per-pixel-sine has to be created in other ways, to have the text moving/animated.
2020-01-16 15:37
Oswald

Registered: Apr 2002
Posts: 5094
Mekanix does a true dypp when only 1 is shown, and fake char anim when 2 AFAIK.
2020-01-16 16:21
Krill

Registered: Apr 2002
Posts: 2980
If the multi-DYPP part in Crest Avantgarde uses VSP, it only does so for the scrolling (and/or the moving colour gradient).

As for the actual DYPP effect, i guess there's a lot of copying of pre-rendered animated characters going on.
Note how the sine period is rather short, so there aren't so many frames to cycle through until wrap.
Also note how parts of many different characters are identical, possibly reducing the amount of animation data so that everything just barely fits into 64 kilobytes.
2020-01-17 08:29
Sam

Registered: Aug 2010
Posts: 21
Thanks, Krill! I can sleep at night again :-) I had a memory of the wave being bigger, but looking at the effect again I realise that it was a much tighter loop than I imagined. The biggest trick, to me, here is the clever font. I should have noticed the lack of special characters right away *shame*.

BTW, my dypp in "Typical" had no special chars because each character shape was a speedcoded lda ora sta and I was too lazy to do all the chars. IIRC there was still memory left though.
Previous - 1 | 2 | 3 | 4 | 5 | 6 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
alien^pdx/desire, ti..
Chesser/Blazon
Didi/Laxity
Shogoon/Elysium/MSL
Guests online: 100
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 Edge of Disgrace  (9.6)
6 What Is The Matrix 2  (9.6)
7 The Demo Coder  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 No Listen  (9.6)
3 Party Elk 2  (9.6)
4 Cubic Dream  (9.6)
5 Copper Booze  (9.6)
6 Rainbow Connection  (9.5)
7 Dawnfall V1.1  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Triad  (9.3)
5 Censor Design  (9.3)
Top Graphicians
1 Mirage  (9.8)
2 Archmage  (9.7)
3 Pal  (9.6)
4 Carrion  (9.6)
5 Sulevi  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.054 sec.