- Horizontal Scrolling
- Vertical Scrolling
- Horizontal & Vertical Scrolling
It includes diagrams to help explain the relationship between VRAM, the screen, and your level data, and it walks the reader through writing the code for each different scrolling configuration line by line, explaining things as much as possible. The scrolling is bi-directional, it only loads data for a row and/or column when absolutely necessary, always loads the tiles into the hidden areas of VRAM, and it allows you to scroll the screen by up to 8 pixels per call to the Camera_update function.
It doesn't cover everything, but it should be a pretty good start for people who want to learn how to use this video mode.
There are full projects available for all the examples in the guide in its git repository.
Here's a couple thumbnails of pages in the guide: Edit v2: Add additional bounds check I removed in haste in the code for horiz-vert.c
Edit v3: English grammar fix "goes" -> "go" on page 2