Language…
6 users online: bandicoot, Cameron, Mario's GameBase, marvisjj,  NinCollin, yv64n - Guests: 199 - Bots: 342
Users: 64,667 (2,404 active)
Latest user: DarthHylian

YI Memory Map

Displaying 100 out of 286 addresses.

View: moderated | waiting (27)

Filter

Link
SRAM Address Length Type Description Details
$700000 112 bytes Super FX Scratch RAM, used like "registers" for various operations on the Super FX, also used as additional parameters to Super FX routines
$700070 1 byte Controller Controller Data 1 (for gamemode 0F):
AXLR----
A = A; X = X; L = L; R = R
$700071 1 byte Controller Controller Data 2 (for gamemode 0F):
byetUDLR
b = B; y = Y; e = Select; t = Start; U = up; D = down; L = left, R = right
$700072 1 byte Controller Controller Data 1, on press/first frame (for gamemode 0F):
AXLR----
A = A; X = X; L = L; R = R
$700073 1 byte Controller Controller Data 2, on press/first frame (for gamemode 0F):
byetUDLR
b = B; y = Y; e = select; t = Start; U = up; D = down; L = left, R = right
$700076 2 bytes Sound Effect Mirror of $7E0051 (register $2141) for GSU player control routine, used for transformations
$70007A 2 bytes Sound Effect Super FX sound ID, returned by GSU to push into sound queue (play a sound effect)
$700082 1 byte Controller Controller settings ($00 = patient; $02 = hasty)
$70008A 2 bytes Misc. Yoshi's X subpixel position (high byte is spillage)
$70008C 2 bytes Misc. Yoshi's X position
$70008E 2 bytes Misc. Yoshi's Y subpixel position (high byte is spillage)
$700090 2 bytes Misc. Yoshi's Y position
$700092 2 bytes Misc. Pointer to next free slot in OAM buffer
$700094 2 bytes Misc. Layer 1 Camera X
$700096 2 bytes Misc. Layer 2 Camera X
$700098 2 bytes Misc. Layer 3 Camera X
$70009A 2 bytes Misc. Layer 4 Camera X
$70009C 2 bytes Misc. Layer 1 Camera Y
$70009E 2 bytes Misc. Layer 2 Camera Y
$7000A0 2 bytes Misc. Layer 3 Camera Y
$7000A2 2 bytes Misc. Layer 4 Camera Y
$7000A4 2 bytes Misc. X position of the leftmost tiles on the screen
$7000A6 2 bytes Misc. Y position of the uppermost tiles on the screen
$7000A8 2 bytes Misc. Previous frame Yoshi's X velocity
$7000AA 2 bytes Misc. Yoshi's Y velocity
$7000AC 2 bytes Misc. Yoshi state:
$0000: Regular (player control)
$0002: Cutscenes; screen transition (pipe going right)
$0003: In screen transition (pipe going left)
$0004: In screen transition (pipe going down); in prologue cutscene (Baby Mario mounted)
$0005: In screen transition (pipe going up)
$0006: Entering/exiting pipe; in transition (pipe going right)
$0007: In screen transition (pipe going left)
$0008: In screen transition
$0009: In screen transition
$000A: Entering door
$000E: Dying from spike
$0010: Transforming
$0012: Smashed by falling wall (sprite $036)
$0014: Activating goal
$0016: During level intro
$0018: Being thrown toward baby mario at end of transformation
$001A: Dying in pit / inside piranha plant / receiving boss key / shrinking during Prince Froggy
$001C: During prologue cutscene
$001E: Pushed away in Raphael Cutscene
$0020: Entering Raphael Boss room (moon)
$0022: Entering keyhole during boss key cutscene
$0028: Dying from lava
$002A: Being ejected vertically (after transition)
$7000AE 2 bytes Misc. Yoshi form:
$0000: Yoshi
$0002: Car Yoshi
$0004: Mole Yoshi
$0006: Helicopter Yoshi
$0008: Train Yoshi
$000A: Mushroom Yoshi (Beta)
$000C: Sub Yoshi
$000E: Ski Yoshi
$0010: Super Baby Mario
$0012: Plane Yoshi (Beta)
$7000B0 2 bytes Misc. Yoshi's X position relative to camera
$7000B2 2 bytes Misc. Yoshi's Y position relative to camera
$7000B4 2 bytes Misc. Yoshi's X velocity
$7000B6 2 bytes Misc. Angle of ground Yoshi is on
$7000B8 2 bytes Misc. Angle of terrain slope that Yoshi's top is colliding with
$7000BA 2 bytes Misc. Angle of terrain slope that Yoshi's middle part is colliding with
$7000BC 2 bytes Misc. Angle of terrain slope that Yoshi's bottom part is colliding with
$7000BE 2 bytes Misc. Yoshi's current animation frame
$7000C0 2 bytes Player Physics Yoshi's jump state:
$0006: Jumping
$0007: Peak of jump
$0008: Falling
$7000C2 2 bytes Player Physics Yoshi's ducking state:
$0000: not ducking
$0001-$0004: mid-duck / mid-duck release
$0005: fully ducked
$7000C4 2 bytes Misc. Yoshi facing direction ($0000: right, $0002: left)
$7000C6 2 bytes Player Physics Yoshi swimming state:
$0000: not swimming
$0001: landing in water, no player control
$0002: feet up briefly after landing
$0003: swimming
$7000CC 1 byte Misc. Direction player last accelerated from input:
$00: not moving
$01: right
$02: left
$7000CE 2 bytes Flag $004C: Player is holding Up while on ground, $0000 not
$7000D2 1 byte Misc. Yoshi fluttering state:
$00: After a flutter, midair
$01: Not in a flutter chain: resets to this upon hitting ground or ceiling
$02: Begin flutter
$04, $06, $08: Mid-flutter states
$7000D3 1 byte Flag $80: extended fluttering, $00 not
$7000D4 2 bytes Misc. Ground pound state:
$0001~$0006: init states
$0007: falling
$0008~$000B: hitting the ground
$000C: fully on ground, other actions enabled
$7000D6 2 bytes Misc. Frame counter for holding Down button in air to ground pound. When it reaches $0007, ground pound will initiate. Set to $FFFF when pressing down on ground
$7000DA 2 bytes Player Physics Yoshi's stair state/counter, counts down/up in between steps on stairs (only high byte is used):
$0800 to $0100 for left-facing stairs
$F800 to $FF00 for right-facing stairs
$7000DC 2 bytes Misc. Frame counter for pushing yourself against a wall / a pushable sprite. The pushing animation starts at $10, and it loops at $23. NOTE: For pushable sprites, the entire range is +1 so starts at $01, $11 is animation, stops at $24.
$7000DE 2 bytes Misc. Egg throwing state (decrements over time):
$0007~$000A: init
$0006: cursor out, ready to throw
$0001~$0005: has been thrown
$0000: not throwing
$7000E0 2 bytes Misc. Egg cursor distance from Yoshi:
Byte 1: Subpixels
Byte 2: Pixels
$7000E4 2 bytes Misc. Egg cursor X position

When spitting an enemy this is used together with player speed to set enemy X-speed
$7000E6 2 bytes Misc. Egg cursor Y position

When spitting an enemy this is used subtracted with constant $0200 to set enemy y-speed
$7000E8 2 bytes Misc. Frame counter for holding the Down button to cancel egg throw (up to $0007 then it cancels)
$7000EA 2 bytes Flag $FFFF = Egg cursor locked with L/R, $0000 = not locked
$7000EC 2 bytes Flag Egg aiming flag:
$FFFF: Have eggs, can aim
$0000: No eggs, can't aim
$0002: In water, can't aim
$7000EE 2 bytes Misc. Egg cursor angle, ranges from $0000 = lowest, to $2E00 = highest
$7000F0 2 bytes Misc. Angular velocity of egg cursor (fixed point)
$7000F2 2 bytes Misc. How much Yoshi is stumbling during fuzzied state, starts at $00 and increments or decrements by $02 until threshold point, then begins stumbling:
$001A: stumble forward threshold
$FFE6: stumble backward threshold
$7000F4 2 bytes Misc. Direction Yoshi is currently leaning during fuzzied state, relative to Yoshi's current facing:
$0002: forward
$FFFE: backwards
$7000F6 2 bytes Misc. Yoshi idle animation state:
$0000: Stepping in place
$0002: Blinking
$0004: Scratching nose
$0006: Turning around
$7000F8 2 bytes Misc. Running animation state:
alternates between $0000 and $0002 while running
pre/post-run: $0000 - $0012, increments by $02
$7000FA 2 bytes Misc. Current ground type Yoshi is on:
$0000: Ground
$0001: Water
$0002: ????
$0003: Ice
$0004: Snow
$0005: Mud
$7000FC 2 bytes Misc. Player collision with MAP16 terrain, format: 0000000L lRrTtBMb
L = left, head
l = left, body
R = right, head
r = right, body
T = top, left half
t = top, right half
B = bottom, left third
M = bottom, middle third
b = bottom, right third
$7000FE 2 bytes Misc. Player collision with water, same format as $7000FC
$700100 2 bytes Misc. Player collision with cross section tiles, same format as $7000FC
$700102 2 bytes Flag $0001 when on a Spiky Stake ($0000 means not)
$700104 2 bytes Misc. Current door exit type:
$0000: Regular door / boss door
$0100: Sewer pipe hole (like in 4-E)
$FFFF: Bandit mini-game door
$700106 1 byte Misc. Pipe entrance/exit transition type:
$02 = Going right
$04 = Going left
$06 = Going down
$08 = Going up
$700107 1 byte Misc. Pipe entrance/exit transition type:
$00 = Vertical, going in pipe
$40 = Vertical, coming out of pipe
$80 = Horizontal, going in pipe
$C0 = Horizontal, coming out of pipe
$700108 2 bytes Misc. Distance Yoshi has travelled so far in vertical/horizontal pipe entrance transition, in pixels & subpixels ($ppss), fade & exit begins at $1F00 for both (NOTE: for horizontal it's basically a constant $0080 increase)
$70010A 2 bytes Misc. Yoshi's vertical pipe entrance animation state:
$0001-$0006: going down a pipe
$0001-$0009: going up a pipe
$70010C 2 bytes Misc. Yoshi's vertical pipe entrance acceleration: $0100 = 1 subpixel, low byte is subsubpixels
$70010E 2 bytes Misc. Before entering pipe: Yoshi's horizontal distance from vertical pipe entrance
During pipe entrance transition: Current horizontal position of pipe entrance
$700110 2 bytes Misc. While walking on mud/snow: Mirror of $7000F8, used for generating mud/snow particles
While sliding on mud: Distance slid, wraps around at $1FFF, used to generate mud splashes
$700112 2 bytes Misc. Car transformation wheel extension height, increments by 2, maxes at $0030
$700114 2 bytes Misc. Address of ROM graphics (bank $52) to DMA into VRAM at $4200-$43FF:
-Yoshi's tongue
-Yoshi egg during Super Star Mario
-Yoshi during bubble transformation
$700118 2 bytes Sprite Tilemap Pointer to "above" layer's OAM in OAM buffer
$70011A 2 bytes Sprite Tilemap Sprite priority # for "above" layer (sprites that show above Yoshi)
$70011C 2 bytes Misc. Center of Yoshi X position (Yoshi X + Yoshi width / 2)
$70011E 2 bytes Misc. Center of Yoshi Y position (Yoshi Y position + Yoshi height / 2)
$700120 2 bytes Misc. Yoshi's hitbox half width
$700122 2 bytes Misc. Yoshi's hitbox half height
$700124 2 bytes Player Tilemap Yoshi's OAM palette, ----ccc- part of yxppccct (OAM low table byte 4)
$700126 2 bytes Player Tilemap Yoshi's OAM priority, --pp---- part of yxppccct (OAM low table byte 4)
$700128 32 bytes Player Tilemap Yoshi & star counter graphics DMA queue, first 6 entries are Yoshi, last 2 are star counter number graphics, 4 bytes per:
Bytes 1-3: Long source address to DMA from; aa aa bb (a = address, b = bank) for top row DMA
Byte 4: high byte of address + 2, for bottom row DMA
$70014E 2 bytes Misc. Transformation state:
$0000: Not transforming
$700150 2 bytes Misc. Mouth state:
$00: doing nothing
$01: tongue horizontally growing or spitting
$02: tongue horizontally retracting
$03: tongue vertically growing or spitting
$04: tongue vertically retracting
$07, $0B, $0F, $13, $17, $1B, $1F, $23: States of swallowing non-egg sprites (star, nipper seed, coin, etc.)
$2F, $33, $37, $3B, $3F, $43, $47, $4B: States of swallowing egg-forming sprites
$700152 2 bytes Player Physics Tongue X length in pixels
$700154 2 bytes Player Physics Tongue Y height in pixels
$700156 2 bytes Player Physics Yoshi's X tongue position, relative to camera
$700158 2 bytes Player Physics Yoshi's Y tongue position, relative to camera
$70015A 2 bytes Misc. Yoshi's X tongue position
$70015C 2 bytes Misc. Yoshi's Y tongue position
$70015E 2 bytes Misc. Blocked Tongue States (e.g. tonguing walls)
Values $00 to $0F
$700160 2 bytes Misc. Inedible Tongue state (e.g. tonguing sprites like piranhas / chomp rocks)
Starts at $0014 and decrements until $0002. Zeroes out when tongue retracts.
$700162 2 bytes Misc. When Yoshi catches an enemy or item (e.g. melon, egg) with his tongue, this is set to the sprite slot value. The value stays so until Yoshi either eats or spits out the enemy or has used the item. This SRAM gets cleared immediatley if the enemy or item in question is inedible.
$700168 2 bytes Misc. Current sprite slot index (+1) being tongued/in mouth - sign bit turns on when unable to swallow
$70016A 2 bytes Misc. Type of ammunition in mouth:
$0001: Fire melon
$0002: Bubble
$0003: Green watermelon
$0004: Ice melon
$70016C 2 bytes Misc. Timer for duration of spitting a projectile, starts at $0000 and increments up to:
Watermelon seed: $0008
Fire melon: $002A
Ice melon: $0038
Bubble: $0018
$70016E 2 bytes Misc. Timer for intentional game freeze while tonguing a watermelon
$700170 2 bytes Misc. Ammunition count in mouth:
Bubble decrements 10 each spit, watermelon decrements 1 each spit, ice and fire melons decrement 10 each spit