| |
Iapetus/Algarbi/Wood
Registered: Dec 2004 Posts: 71 |
Help with timings
Hi,
I am thinking of using a software gfx mode in game(fixed screen)to add some more color, of course I will need to have splits to do the alterations and I will be using sprites so they will cross over the splits. I know that when a sprite or more will be over one of these splits they will eat raster time and mess the splits. As I don't want to reinvent the wheel, I would like you masters of VIC timming to tell me if you are willing to do so, how would you do it.
I think I will have to check if somesprites are over the line and then adjust the timing (less NOPs or something).
How you pros do it? Thx |
|
| |
TWW
Registered: Jul 2009 Posts: 545 |
My 5 cents is that Software gfx modes (I am reconing you are talking about fli + use of sprites) in many cases is a bad choice for a game.
However if you are serious and f.ex. only use 1 sprite for a cursor or a character you might get away with stretching the first / last y pixel of that sprite to achieve a fixed amount of rastertime over the visible screen while using others for more colours etc.
otherwhise you'll need timing tables and shiz which would be more complicated.
Remember however there are a lot of limitations @ work here so perhaps it would be better if you explain a bit more in detail what you want to achieve. (How many sprites / how many colours / display area / etc.)
|
| |
Iapetus/Algarbi/Wood
Registered: Dec 2004 Posts: 71 |
I want to have fli every 4th line. 32 splits.
hires or mcm bitmap with 8(4)x4 attribute cells, instead of the normal 8(4)x8 attribute cells.
I want to use all 8 sprites :P if possible but it seems from what you that this might be too tricky. Perhaps better settle on the normal hw modes :) |
| |
TWW
Registered: Jul 2009 Posts: 545 |
A long time since I have messed with sprite stretching and such but of the top of my head;
If you want to use 8 sprites freely moving in X & Y direction, this is a possible solution;
Stretch the first and last line of the sprites so the total number of pixels amounts to 32x8 in Y. If the vertical position increases the uppers stretch should increase while the lower stretch should decrease maintaining an exact amount of Sprite R-Time consumption (The maximum Y size of a sprite will decrease to 21-2=19 pixels though).
Then you need to trigger a badline every 4 pixels to change the graphic bank and include this into your stretch code. You will however NOT get full freedom since the $d800 char-colour will be universal on both 8(4)x4 blocks....
Maybee there isn't enough r-time on a badline to both change graphics and manipulate the spritestretching (I have not checked but I am sure someone more into raster/sprite timings can elaborate more!) and you might need to settle for a narrower viewport... Unless you can find some tricky code to account for this aswell :)
Doubt this helped but what the hell :-D |
| |
Iapetus/Algarbi/Wood
Registered: Dec 2004 Posts: 71 |
Thanks TWW, it seems too complicated. |