aboutsummaryrefslogtreecommitdiff
path: root/scroll
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <mikisabate@gmail.com>2025-04-24 16:40:27 +0200
committerMiquel Sabaté Solà <mikisabate@gmail.com>2025-04-24 16:40:27 +0200
commitee183ebbdfdf407044948aefa06f8a131dd23213 (patch)
treeae92727d05269c8e63fed4c17b4832947594e09b /scroll
parent96b5af8c4e058f2d55a80add3208cfe4b02c453b (diff)
downloadcode.nes-ee183ebbdfdf407044948aefa06f8a131dd23213.tar.gz
code.nes-ee183ebbdfdf407044948aefa06f8a131dd23213.zip
Clear out wording on README files
Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
Diffstat (limited to 'scroll')
-rw-r--r--scroll/README.md23
1 files changed, 17 insertions, 6 deletions
diff --git a/scroll/README.md b/scroll/README.md
index e179d62..7f7c319 100644
--- a/scroll/README.md
+++ b/scroll/README.md
@@ -32,12 +32,23 @@ two cases:
It's easy to miss these points, but from a PPU perspective (and hence from the
perspective of a programmer interfacing with the PPU), it really makes sense.
All in all, the scroll register is relative to whatever base nametable is set on
-the control register.
-
-Overall, this example looks rather simplistic but some games used this
-technique. For example, in Dropzone it was used to perform some effects on the
-title screen. Hence, performing a simple scroll between two nametables is not
-just for learning purposes, it was also used in real life games.
+the control register. Note that games that scrolled diagonally like Super Mario
+Bros. 3 and Kirby's Adventure did not need to do this, since they were
+constantly wrapping on the same nametable. This is a more advanced topic, but it
+boils down to:
+
+1. Setup horizontal mirroring so we can scroll vertically (i.e. contrary to the
+ rest of examples from here).
+2. Mask out the leftmost 8 pixels (see bit 2 in the [PPU Mask
+ register](https://www.nesdev.org/wiki/PPU_registers#PPUMASK)).
+3. The "next" column will be put on the first one, which is always hidden by
+ step 2 and will only be visible when moving the PPU scroll register.
+
+Coming back to this first example, though, the approach being used here looks
+rather simplistic. That being said, some games used this technique. For example,
+in Dropzone it was used to perform some effects on the title screen. Hence,
+performing a simple scroll between two nametables is not just for learning
+purposes, it was also used in real life games.
## Scrolling multiple screens to the right