
It can happen anywhere, but most of the time when going right and up or down, and it will get worse if you remove the speed cap.
To summarize MarkeyJester's explanation on the matter, the 68k is too slow to transfer all the blocks soon enough if that transfer happens too long after the v-blank interruption.
Among the possible fixes proposed, rewriting the routine to make the block/tiles loading faster or making the transfer happen sooner seemed too technical and long for me. So rather than doing that, I decided to give the map plane redrawing some advance, one column should be enough after all.
This fix is far from being complicated: we have 5 lines to change.
Go in Draw_FG and Draw_BG1, and find this:
move.w #$140,d5
You'll find it twice in Draw_FG and twice in Draw_BG1. Replace those lines with:
move.w #$150,d5
If you do only this, there will be holes in the planes when going up or down, one block per line.
In order to fix this, we have to load one more block per line.
Go in DrawTiles_LR (this routine is used to redraw a line of blocks) and replace
moveq #$15,d6
with
moveq #$16,d6
That's it, the problem should be gone.
Thanks to Vladikcomper for his commented version of the redrawing routine which helped me a lot.



This topic is locked








