Banner
The Questionable Level Design Contest ends in…
8 DAYS, 3 HOURS, 2 MINUTES AND 54 SECONDS
Views: 915,312,757
Time:
23 users online:  AmperSam, Anas, Bench-kun, chickaDEE Magazine, codfish1002, crocodileman94, EpicBrave_YT, EvaTheWingdale, Fermín Acosta Jr., Infinity, Katrina, Mogu94,  Noivern, RollingRigatonis,  RussianMan, SAMYR DUTRA ARAUJO, SilentSnake20,  Telinc1, The_Uber_Camper, TheBourgyman, UTF, Worl, wulv257 - Guests: 71 - Bots: 161 Users: 51,270 (2,253 active)
Latest: daerhan
Tip: Read Lunar Magic's help file and SMW Central's F.A.Q., as they cover most of the basics of SMW hacking.
Not logged in.
YI Memory Map
Displaying 100 out of 286 addresses. Show Waiting Addresses (24)
Filter
Link
Address
Hexadecimal number for a partial address. 6-digit number for a full address. Use - to denote a range. Use , to list more than one address.
Length
Type
Enable JavaScript to use multiple regions.
Region
Hold control to select multiple. Check "All" to select all at once.

Type
Description
Separate each individual keyword with spaces. Surround a phrase with quotes to look for the exact phrase, or with / to use a PCRE regular expression. Prepend with - to exclude a keyword or phrase, with + to require a whole word or phrase, or with -+ to exclude a whole word or phrase. ? matches any character, * matches any amount of characters.
 
Pages: « 1 2 3 » Per Page: 25 50 75 100 150 500 All
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)
$700EBA 1 byte Misc. Spriteset file # 5 ($FB index)
$700EBB 1 byte Misc. Spriteset file # 6 ($FC index)
$700EBC 2 bytes Misc. Previous frame X coordinate of sprite currently being processed
$700EBE 2 bytes Misc. Previous frame Y coordinate of sprite currently being processed
$700EC0 64 bytes Sprite Table 16 4-byte entries, one ambient sprite per:
Word 1: Flag for whether it exists currently or not (usually $000E for active)
Word 2: $0000
$700F00 96 bytes Sprite Table 24 4-byte entries, one sprite per:
Word 1: Sprite state
$0000: nonexistent (used for skipping processing)
$0002: newly spawned
$0004: same as $02?
$0006: pop sprite (turn into other sprite based on this table)
$0008: in yoshi's tongue and/or mouth
$000A: riding Yoshi
$000C: colliding
$000E: yoshi head bop
$0010: active / alive
$0012: burning to death from lava/fire melon

Word 2: Angle of ground that the sprite is walking on
$700F60 64 bytes Sprite Table 16 4-byte entries, one ambient sprite per:
bitwise flags:
Byte 1: ????????
Byte 2: ??
Byte 3: terrain collision flags
Byte 4: ??
$700FA0 96 bytes Sprite Table 24 4-byte entries, one sprite per:
Byte 1: tc?hhhhh
t = Can be tongued (into mouth)
c = Tongue collision is ignored
h = hitbox setting (index into hitbox tables)
Byte 2: ??
Byte 3: terrain collision flags
Byte 4: ??
$701000 64 bytes Sprite Table 16 4-byte entries, one ambient sprite per:
Byte 1: ????ddmm

d = Index into despawning x,y threshold table (00 means no despawning)
m = drawing method index

Byte 2: Count/# of bytes taken up in OAM buffer
Byte 3: Partial OAM low table mirror
yx00ccc0 (c = palette 0-7, x&y = flip)
Note: X-flip and Y-flip is conventionally set by facing direction

Byte 4: ??
$701040 96 bytes Sprite Table 24 4-byte entries, one sprite per:
Byte 1: sf?bddmm

s = automatic swallow
f = can be frozen
b = can be burned by flame
d = Index into despawning x,y threshold table (00 means no despawning)
m = drawing method index

Byte 2: Count/# of bytes taken up in OAM buffer
Byte 3: Partial OAM low table mirror
yx00ccc0 (c = palette 0-7, x&y = flip)
Note: X-flip is conventionally set by facing direction

Byte 4: ??
$7010A0 64 bytes Sprite Table 16 4-byte entries, one ambient sprite per:
Ambient Sprite X coordinates, format:
Byte 1: 00
Byte 2: X subpixel
Byte 3: X pixel
Byte 4: X screen
$7010E0 96 bytes Sprite Table 24 4-byte entries, one sprite per:
Sprite X coordinates, format:
Byte 1: Sprite priority override flag (puts sprite farthest back if $40)
Byte 2: X subpixel
Byte 3: X pixel
Byte 4: X screen
$701140 64 bytes Sprite Table 16 4-byte entries, one ambient sprite per:
Ambient Sprite Y coordinates, format:
Byte 1: 00
Byte 2: Y subpixel
Byte 3: Y pixel
Byte 4: Y screen
$701180 96 bytes Sprite Table 24 4-byte entries, one sprite per:
Sprite Y coordinates, format:
Byte 1: Index into OBJ Tiles (override)
Byte 2: Y subpixel
Byte 3: Y pixel
Byte 4: Y screen
$7011E0 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: X speed
Word 2: Y speed
$701220 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: X speed
Word 2: Y speed
$701280 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: X delta, or pixels moved since last frame (curr X - prev X)
Word 2: Y delta, or pixels moved since last frame (curr Y - prev Y)
$7012C0 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: X delta, or pixels moved since last frame (curr X - prev X)
Word 2: Y delta, or pixels moved since last frame (curr Y - prev Y)
$701320 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: Ambient sprite ID (list of valid values with their names)
Word 2: Pointer to first entry within OAM buffer
$701360 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: Sprite ID (list of valid values with their names)
Word 2: Pointer to first entry within OAM buffer
$7013C0 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: Facing/direction: 00000yx0
y = Y flip
x = X flip
Word 2: Current animation frame
$701400 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: Facing/direction: 00000yx0
y = Y flip
x = X flip
Note: Y-flip conventionally set by OAM mirror

Word 2: Current animation frame
(High byte is used as a special flag for shyguys when spat upwards)
$701460 64 bytes Sprite Table 16 4-byte entries, one ambient sprite per:
Byte 1: Stage-wide ID (is always $FF as ambient sprites do not respawn)
Byte 2: Background layer # of ambient sprite (unused?)
Byte 3: Ambient Sprite Prioirty (0-7) - higher means further back - $FF used to disable drawing
Byte 4: 00 (unused)
$7014A0 96 bytes Sprite Table 24 4-byte entries, one sprite per:
Byte 1: Stage-wide ID ($FF means no respawn)
Byte 2: Background layer # of sprite
Byte 3: Sprite Prioirty (0-7) - higher means further back - $FF used to disable drawing
Byte 4: 00 (unused)
$701500 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: X acceleration (e.g. gravity, friction)
Word 2: Y acceleration
$701540 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: X acceleration (e.g. gravity, friction)
Word 2: Y acceleration
$7015A0 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: X acceleration ceiling (max speed for acceleration to apply)
Word 2: Y acceleration ceiling
$7015E0 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: X acceleration ceiling (max speed for acceleration to apply)
Word 2: Y acceleration ceiling
$701640 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: X coordinate relative to camera
Word 2: Y coordinate relative to camera
$701680 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: X coordinate relative to camera
Word 2: Y coordinate relative to camera
$7016E0 64 bytes Sprite Table 16 2-word entries, one ambient sprite per:
Word 1: vertical terrain collision offset in pixels (signed)
Word 2: Index into reserved dynamic tiles table, often used for SuperFX graphics ($FFFF means disabled) (unused for ambient sprites?)
$701720 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: vertical terrain collision offset in pixels (signed)
Word 2: Index into reserved dynamic tiles table, often used for SuperFX graphics ($FFFF means disabled)
$701780 64 bytes Sprite Table 16 2-byte and 1-word entries, one ambient sprite per:
Byte 1: 00
Byte 2: Timer, used for whatever that sprite needs. (unused in game?)
Word 2: Timer, zero removes ambient sprite (every sprite?). Often used for duration of each animation.
$7017C0 96 bytes Sprite Table 24 4-byte entries, one sprite per:
Yoshi collision information:
Byte 1: ??
Byte 2: Timer, used for whatever that sprite needs. Only sprite timer active during pause flags. (unused in game?)
Byte 3: $00: Yoshi is to the left of the sprite; $02: Yoshi is to the right of the sprite
Byte 4: $00: Yoshi is above the sprite; $02: Yoshi is below the sprite
$701820 64 bytes ASM 16 4-byte entries, one ambient sprite per:
Byte 1: ???????G (on ground flag)
Byte 2: ??
Byte 3: init $FF, ?
Byte 4: init $1F, ?
$701860 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: Terrain collision flags,
???????? ????LRUD, high byte is unused;
L = Left
R = Right
U = Up
D = Down
Word 2: Lava and water collision flag
???????? ??LW???
L = Lava
W = Water
$7018C0 64 bytes Sprite Table Wildcard table; 4 bytes per ambient sprite to be used as each one pleases (never initialized or cleared on spawn)
$701900 96 bytes Sprite Table Wildcard table; 4 bytes per sprite to be used as each one pleases.
$701970 2 bytes Misc. Random number generator (RNG) address, adds horizontal & vertical scanlines per sprite per frame
$701972 2 bytes Misc. Sprite slot # of sprite being currently processed
$701974 2 bytes Timer Frame counter, only counts when sprites are being processed - includes gamemodes $07, $0C (only in level fade-in), $0E, $0F, $10 (inside level, not score screen), $15, $39
Controls tileset animation
$701976 96 bytes Sprite Table Wildcard table; 4 bytes per sprite to be used as each one pleases. Commonly used for AI state, graphical state, or other purposes.
$7019D6 96 bytes Sprite Table Wildcard table; 4 bytes per sprite to be used as each one pleases. Common usages:
Byte 1: AI state
Byte 2: Index for which Super FX graphic/animation frame
Byte 3: "Next" animation frame
Byte 4: Custom per sprite
$701A36 96 bytes Sprite Table 24 2-word entries, one sprite per:
Super FX morphing values to be used as each Super FX sprite needs, most common is scale then rotation.
$701A96 96 bytes Sprite Table 24 2-word entries, one sprite per:
Each word is a timer, used for whatever that sprite needs. Common uses are AI and skeletal animations.
$701AF6 96 bytes Sprite Table 24 2-word entries, one sprite per:
Each word is a timer, used for whatever that sprite needs. (Additional general purpose timers if needed)
$701B56 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: X offset for hitbox center
Word 2: Y offset for hitbox center
$701BB6 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: Width of hitbox from center (both sides)
Word 2: Height of hitbox from center (top & bottom)
$701C16 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: X distance from Yoshi (+ means to the right of Yoshi)
Word 2: Y distance from Yoshi (+ means below Yoshi)
$701C76 96 bytes Sprite Table 24 2-word entries, one sprite per:
Word 1: On collision with another sprite, X delta from that sprite (this X - that X)
Word 2: On collision with another sprite, Y delta from that sprite (this Y - that Y)
Pages: « 1 2 3 » Per Page: 25 50 75 100 150 500 All

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2021 - SMW Central
Legal Information - Privacy Policy - Link To Us


Menu

Follow Us On

  • YouTube
  • Twitch
  • Twitter

Affiliates

  • Super Mario Bros. X Community
  • ROMhacking.net
  • Mario Fan Games Galaxy
  • sm64romhacks