Comment by fallat

7 hours ago

This is false. You can do it in 1. It just involves mid-frame tile switching IIRC or using characters / sprites to fill in the rest.

You need to do mid-frame tile updates just to show a full bitmap frame. There’s 360 8x8 tiles on the screen, but the tile indices are 8 bit. You can store only 384 tiles in VRAM - a bit more than a full screen.

You can update 1 tile per scan line, so 154 per frame (including 10 vblank). So you need 2.5 frames to replace all tiles.

If you are really smart about updates, you can “race the beam”, basically start updating tiles just as the frame starts rendering, just behind the active scan line. Then you can update maybe 280 tiles before the active scan line of the next frame catches up with you.