YI Memory Map
Displaying 50 out of 286 addresses.
View: moderated | waiting (30)
SRAM Address | Length | Type | Description | Details |
---|---|---|---|---|
$700172 | 2 bytes | Misc. | For ice and fire melons: X position of where flame/ice was spat For watermelon seeds: # of seeds spat in succession during holding Y (loops from 0 to 6 then back to 0) |
|
$700174 | 2 bytes | Misc. | Ice and fire melons: Y position of where ice/flame was spat |
|
$70017A | 1 byte | Cutscene | The value in it is stored in Controller Data 1 during cutscenes. | |
$70017B | 1 byte | Cutscene | The value in it is stored in Controller Data 2 during cutscenes. | |
$70017C | 1 byte | Cutscene | The value in it is stored in Controller Data 1, one frame during cutscenes. | |
$70017D | 1 byte | Cutscene | The value in it is stored in Controller Data 2, one frame during cutscenes. | |
$70017E | 2 bytes | Player Physics | Car Yoshi: left wheel X position All other transformations: Rotation angle (mario low byte only) |
|
$700180 | 2 bytes | Player Physics | Transformation value: Helicopter: Rotation speed when hit. Starts at $1000, decreases by $20 each frame until $0700 Submarine: Rotation angle when hit. Starts at $0000, increments by $10 each frame until $0800 Train: Size counter when entering track. Starts at $00FF, decrements one per frame until $0070 Car: X-position in pixels Super Baby Mario: $0007 when running on ground allowing for vertical climb Mole: Orientation of vehicle: $0000: 0° $0001: 90° $0002: 180° $0003: 270° Ski Yoshi: Snowball State, starts at $0080 when hit and increases by 2 every frame on the ground until value reaches $0100 |
|
$700182 | 2 bytes | Player Physics | Car Yoshi: right wheel X position Helicopter: Animation frame (0-3) (turning around) |
|
$700184 | 2 bytes | Player Physics | Car Yoshi left wheel Y position | |
$700188 | 2 bytes | Player Physics | Car Yoshi right wheel Y position | |
$700198 | 2 bytes | Player Physics | Transformation value: Car: Y position of player / car Super Baby Mario: Y scale, normalized at $0100 |
|
$7001AE | 2 bytes | Flag | Disables control & animation of Yoshi | |
$7001B0 | 2 bytes | Flag | Disables updating & animation of sprites | |
$7001B2 | 2 bytes | Misc. | Baby Mario state info (set up like bit flags but never more than 1 on simultaneously): $0000: Off of Yoshi, floating & crying $2000: Super Baby Mario / Bonus challenge Mario $4000: Seized by toadies/bandits/frogs $8000: Riding Yoshi |
|
$7001B4 | 2 bytes | Flag | Currently on a platform sprite (Chomp rock, Hint block, rotating platforms, etc.) - also counts the total number currently standing on | |
$7001B6 | 2 bytes | Sprite Number | Slot of platform sprite that Yoshi is on. Does not apply to every platform sprite, for example it does for some moving sprites such as Pinwheels, Chomp Rock, Poochy, Flatbed Ferries, Lakitu clouds etc., but not for Hint Blocks, Donut Lifts etc. | |
$7001B8 | 2 bytes | Flag | Previous frame's value of $7001B4 | |
$7001BC | 2 bytes | Sprite Physics | Where the water line starts for sprite physics Only used for BG3 tilesets $13 (value $07B0) and $1D ($0700) Value is left at $4000 when disabled This doesn't affect regular water objects, only hardcoded water for certain BG3 tilesets. $ssyy ss = vertical screen number yy = Y-position of water line |
|
$7001C6 | 2 bytes | Misc. | Timer/index into camera Y offset table for small camera shaking (used by ground pounds, big egg ground impact, etc.) | |
$7001C8 | 2 bytes | Misc. | Timer/index into camera Y offset table for large camera shaking (used for falling chain chomps, chasing chain chomp hitting wall, etc.) | |
$7001CA | 2 bytes | Layer 1 Tilemap | Special Offset-By-Tile Modes $00: None (normal) $01: Level Mode 2 (1-7, 6-4, 6-3) $03: When Fuzzied $05: Unused |
|
$7001D0 | 2 bytes | Misc. | Timer for Yoshi's turning pose. Starts at #$0004 when you change direction while in movement (ground or air), remains with this value for a brief time if you keep holding this direction until it starts decrementing each frame. |
|
$7001D2 | 2 bytes | Misc. | Timer for each walking (not running) animation frame. | |
$7001D4 | 2 bytes | Misc. | Timer for each animation frame of the landing, start of falling and fluttering. | |
$7001D6 | 2 bytes | Misc. | Invincibility timer (starts at $00A0 on hit and decrements) | |
$7001D8 | 2 bytes | Misc. | Timer for each Yoshi idle animation state. | |
$7001DC | 2 bytes | Misc. | Timer for bopping head in solid blocks animation. It's the exact time with zero y speed during the bop. | |
$7001DE | 2 bytes | Misc. | Timer for ground pounding animation. | |
$7001E0 | 2 bytes | Misc. | Timer for mouth/tongue related animations. | |
$7001E2 | 2 bytes | Misc. | Egg throwing state timer | |
$7001EA | 2 bytes | Timer | Particle generation timer for mud & snowy trees, initially set to $08 and zero means spawn in (if conditions met) | |
$7001EE | 2 bytes | Misc. | Timer for sprite in Yoshi's mouth to be automatically swallowed. Starts off at $04B0 upon sprite entering mouth (even for inedible ones like the shell), counts down to $0000 | |
$7001F4 | 2 bytes | Misc. | Transformation timer, counts down | |
$700200 | 2048 bytes | Misc. | OAM buffer. Split into 256 4-word entries, each one representing a possible entry in OAM: Word 1: Screen-relative X coordinate (low byte copied into byte 1 of OAM low table mirror entry) Word 2: Screen-relative Y coordinate (low byte copied into byte 2 of OAM low table mirror entry) Word 3: Copied into OAM low table mirror entry bytes 3 & 4 (see OAM low table mirror $700A00 for details) Word 4: -p----sx------sx, p = priority (0=forward, 1=reverse), s = size, x = 9th x bit (low byte copied into high table buffer entry) NOTE: First 16 sprites are reserved for high priority items such as text and these are NOT handled by this buffer, thus copying begins at $700A40 for low table mirror and $700C30 for high table buffer. Copying will continue until either the last entry of the OAM low table mirror ($700BFC) or the last entry of this buffer ($7009F8). |
|
$700244 | 2 bytes | Player Physics | Yoshi's X subpixel position on a spinning wooden platform, unaffected by the rotation. | |
$700246 | 2 bytes | Player Physics | Yoshi's X position on a spinning wooden platform, unaffected by the rotation. | |
$700A00 | 512 bytes | Misc. | OAM low table mirror. 4-byte entries with format xxxxxxxx yyyyyyyy tttttttt yxppccct (x = X coordinate, y = Y coordinate, t = tile number, c = palette 0-7, p = priority, x&y = flip) | |
$700C00 | 32 bytes | Misc. | OAM high table mirror. 2 bits per entry, most significant X and size flag. | |
$700C20 | 128 bytes | Misc. | OAM high table buffer. Each entry is one byte which corresponds with one OAM entry. The 2 lowest bits of the byte get copied into the high table mirror ($700C00-$700C1F) and shifted into the correct spot for the entry. | |
$700CA0 | 2 bytes | Map | Island angle. Only low byte is used. | |
$700CAA | 128 bytes | Misc. | Screen ID table: maps raw screen # ($00-$7F) to screen ID ($00-$3F). The sign bit on indicates "empty" screen (has no object at all), or camera is unable to scroll into the screen due extended object $FE, or tiles are erased in that screen by extended object $FF. | |
$700DAA | 64 bytes | Misc. | BG1 - Left half of newest column spawned in, 32 SNES VRAM tilemap words, stored as a column but DMA'd to VRAM with increments of $40 to get to the next row each write and line up properly | |
$700DEA | 64 bytes | Misc. | BG1 - Right half of newest column spawned in, 32 SNES VRAM tilemap words, stored as a column but DMA'd to VRAM with increments of $40 to get to the next row each write and line up properly | |
$700E2A | 68 bytes | Misc. | BG1 - Top half of newest row spawned in, 34 SNES VRAM tilemap words, split into two separate DMA's - one for tilemap 1, one for tilemap 2 | |
$700E6E | 68 bytes | Misc. | BG1 - Bottom half of newest row spawned in, 34 SNES VRAM tilemap words, split into two separate DMA's - one for tilemap 1, one for tilemap 2 | |
$700EB6 | 1 byte | Misc. | Spriteset file # 1 ($F7 index) | |
$700EB7 | 1 byte | Misc. | Spriteset file # 2 ($F8 index) | |
$700EB8 | 1 byte | Misc. | Spriteset file # 3 ($F9 index) | |
$700EB9 | 1 byte | Misc. | Spriteset file # 4 ($FA index) | |