doing-large-map-scrolling.md
2026-05-09 by h2k1 #nesdev #assembly
Given a game level that is too big for 4 nametables. So how should we do scrolling?
It is not too complicated. Each frame, we fill new tiles on next row/column based on the direction the game camera is moving to.
To do it fast, we calculate the 32 tiles to be filled in the main thread into a buffer. During NMI handling, copy that buffer to nametable memory.
What about the status bar?
Put it at the bottom nametables. It will takes 28 last bottom rows. The main game view takes first 30 rows of the top nametables, plus 2 first rows of the bottom nametables.
