Rubi Account closed
Registered: Apr 2002 Posts: 48 |
Where is the sprite gap on NTSC machines
Hi.
I want to fix the NTSC related bugs in VICE but I have no NTSC machine here, so maybe some of you guys can help me with the following problem:
A sprite has 9 bits to address his x-coordinates so it can be placed in 512 different x-positions.
On a PAL machine with 63 cycles per row we have only 504 pixel, so sprites with x-coordinates >= 0x1f8 are not displayed. This is known fact.
But on NTSC with 65 cycles per row we have 520 pixel in a row, so there must be an area of 8 pixel where a sprite cannot be placed to. Where is this gap area? It is not the area left from the 0 coordinate, this is visible in the intros with buggy display in VICE. 0x1ff is just one pixel left from 0.
But where is this gap? I guess it is somewhere in the area where the sprite data is fetched. Could be constant for all sprites or depending on the sprite index.
Could someone with an NTSC machine try to find this out? Or is it known already?
A possible test without oppening side borders would be to shift two sprites with different x-coordinates but constant deltax and with patterns that let them collide only with this deltax and read the collision register. If you shift them to the gap area where only one of the sprite passed the gap, they shouldn't collide anymore. A big problem might be that sprites show strange patterns in the memory fetch area. But please give it a try. |