At 10:53 PM 11/11/2001 +0100, you wrote:
You should move the TombstoneIndexer routine at the end of the loop.
That way you save the extra JMP TombstoneScanline (3 cycles).
But the downside of that is you can't do important sprite stores at the end
of the scanline. You need to be able to do that to avoid the tearing problems.
That problem can be solved with enabling/disabling VDEL quite easy. The
Even with VDEL I still have to be mindful of where I perform the update to
GRPx. I have to do it either before or after the sprite is displayed.
What I'm doing now is building two kernels where both cars are updated
either right before the start of graphics for line 1 or right before the
start of graphics of line 2. That's why I have the indexing stuff where it
is, because otherwise it would eat up all the important cycles at the end
of line 2 which I need to prep the sprite stores.
The only time I will need VDEL is if the startposition of either car is
offset. I will then need a 3rd kernel that handles the sprites with VDEL
in mind (the style where the sprites get manually zeroed out).
With those three kernels I will have more than enough time to wedge the
missile code for one missile in there, and then I just need to find a safe
spot to store the enable and width writes. The movement register should be
safe to rewrite anywhere as long as it's not right after the HMOVE.
I can update just one missile per line-pair and that should do it, at the
cost of vertical missile movement resolution.
I know this doesn't sound exactly like what you are suggesting, but given
my level of skill with the 2600 right now, it's the best I can actually
code for.
----------------------------------------------------------------------------------------------
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/