| |
crl
Registered: Mar 2020 Posts: 19 |
Cycle tables
I read about cycle tables in regard to one of Upfront’s demos can someone explain this concept to me? |
|
... 10 posts hidden. Click here to view all posts.... |
| |
Martin Piper
Registered: Nov 2007 Posts: 645 |
My really naive approach years ago was to hand tweak delays for each raster for each animation frame. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11145 |
also see <shameless plug>Victimer</shameless plug> |
| |
Oswald
Registered: Apr 2002 Posts: 5026 |
hmm maybe lft's collision register trick could be used here to find out what sprites are active per line ? so instead of d021 use d022 and multicolor charset filled with d022 'color'. (or whatever causes collision with sprites)
then just read out sprite-backgr collision register per line and look up cycle table with it.
edit:oh and ofcourse we need the 63 cycle stretch routine (linecrunch?) to have the d022 fill repeated without badlines |
| |
Krill
Registered: Apr 2002 Posts: 2854 |
Hmm, what does that trick do originally?
Because afaik, the collision registers reflect collisions only after the fact, once a sprite has been drawn (and depend on the actual sprite bitmap pattern), and then update only once per scanline.
I guess this prevents offsetting variable sprite DMA early enough/in the correct places within a rasterline. |
| |
Oswald
Registered: Apr 2002 Posts: 5026 |
you are right, the register must be only valid when the sprites have been drawn on that line, and thats too late. |
| |
tlr
Registered: Sep 2003 Posts: 1723 |
Quote: Hmm, what does that trick do originally?
Because afaik, the collision registers reflect collisions only after the fact, once a sprite has been drawn (and depend on the actual sprite bitmap pattern), and then update only once per scanline.
I guess this prevents offsetting variable sprite DMA early enough/in the correct places within a rasterline.
The collisions do reflect collisions after the fact as you say. However the registers update "immediately" and can update more than one time on a scanline. |
Previous - 1 | 2 - Next |