Skip to content

VRAM Maps

BrunoValads edited this page Feb 7, 2018 · 5 revisions

Yoshi's Island VRAM layout depends on the scene. Graphics are copied in on scene loading, and the tables beginning at $00AD6D are used to govern what gets loaded in where, at least initially. This static loading during scene init is the bulk of what's in VRAM at any given time, and most of it never changes during a given scene. There are however some dynamically changing parts of VRAM and some exceptions to the rule.

Gamemode 0F (In Level)

VRAM word address Size (words, hex) Description Compression
$0000 $0400 BG1 Tileset Slot $F0 LC_LZ1
$0800 $0400 BG1 Tileset Slot $F1 LC_LZ1
$1200 $0200 File $12 (gradient?) LC_LZ16
$1500 $0300 File $76 (global junk)& LC_LZ16
$1800 $0800 BG2 Tileset Slot $F3 LC_LZ16
$2000 $0800 BG2 Tileset Slot $F4 LC_LZ16
$2800 $0400 BG3 Tileset Slot $F5 LC_LZ1
$2C00 $0400 BG3 Tileset Slot $F6 LC_LZ1
$3400 $0400 BG3 Tilemap None
$3800 $0800 BG2 Tilemap None
$4000 $1000 File $72 (global sprites) LC_LZ16
$5000 $0200 Spriteset Slot $F7 LC_LZ16
$5200 $0200 Spriteset Slot $F8 LC_LZ16
$5400 $0200 Spriteset Slot $F9 LC_LZ16
$5600 $0200 Spriteset Slot $FA LC_LZ16
$5800 $0200 Spriteset Slot $FB LC_LZ16
$5A00 $0200 Spriteset Slot $FC LC_LZ16
$6000 $0400 File $4F (number fonts) LC_LZ1
$6800 $0400 BG1 Tilemap, left screen None
$6C00 $0400 BG1 Tilemap, right screen None
$7000 $0400 BG1 Tileset Slot $F2 LC_LZ1
$7800 $0800 File $19 (global objects) LC_LZ16