SMW Memory Map
RAM Address |
Length |
Type |
Description |
Details |
$7E0420
|
128 bytes |
Sprites |
OAM Extra bits table. Each Byte (also each of the 128-slot table) here contains two bits of: %000000SX, where:
S: Size: 0 = 8x8, 1 = 16x16
X: High bit of the x position (9th bit). Needed to allow sprites going past the left edge of the screen.
This gets copy-then-converted via routine at $008494 to write each 4 bytes of $0420 into each single byte of $0400 (%SXSXSXSX).
Note: bits 2-7 here MUST all be zeroes, else other OAM slots' extra bits will be affected when running $008494. |