Views: 31,384,104
Time: 2009-02-14 10:31:53 AM
4,822 Registered Users
Newest User: zait12
Tip: Don't put a coin over a question block. It will create an invisible solid block above the ? block if the block is hit first.
RAM Addresses
The list currently contains 423 addresses which is approximately 83.56% of the RAM. 0 addresses are waiting to be moderated.
Submit RAM Address - RAM Addresses Waiting To Be Moderated - Graphical RAM Map
Address AscendingLengthTypeDescription
$7E:00001 byteSpritesXpos For Sprite Creation, Low Byte
$7E:000016 bytesMisc.Scratch RAM
$7E:00011 byteSpritesYpos Used For Sprite Creation, Low Byte
$7E:00031 byteBlocksBlock # from LM Map16 Editor
$7E:00032 bytesBlocksBlock # from LM Map16 Editor
$7E:00044 bytesSpritesSprite GFX table - Used for when uploading sprite GFX files to VRAM
$7E:00041 byteMisc.Sprite GFX table - Used for when uploading sprite GFX files to VRAM, also used as high byte for block number
$7E:00081 byteSpritesXpos Used For Sprite Creation, High Byte
$7E:00091 byteSpritesYpos Used For Sprite Creation, High Byte
$7E:000E2 bytesMisc.Used by the game to store the level number briefly while deciding which Level and Sprite Pointers to use (during Overworld->Level transitions).
$7E:00121 byteMisc.Image loader. (Value must be divisible by 3)
$7E:00131 byteMisc.Frame Counter (Increases by 1 each frame)
$7E:00141 byteMisc.Alternate frame counter (same as $13 but sometimes stops)
$7E:00151 byteI/OController data 1 - 01=Right, 02=Left, 04=Down, 08=Up, 10=Start, 20=Select, 40=Y and X, 80=B and A
$7E:00161 byteI/OController data 1 (one frame) - Same values as $15
$7E:00171 byteI/OController data 2 - 10=R, 20=L, 40=X, 80=A
$7E:00181 byteI/OController data 2 (one frame) - Same values as $17
$7E:00191 bytePlayerPowerup
$7E:001A2 bytesMisc.x position of screen boundry
$7E:001C2 bytesMisc.y position of screen boundry
$7E:001E2 bytesMisc.Layer 2 X position
$7E:00202 bytesMisc.Layer 2 Y position
$7E:00222 bytesMisc.layer 3 X postion
$7E:00242 bytesMisc.layer 3 Y position
$7E:00362 bytesMisc.Mode 7 Rotation. It will rotate layer 1/BG1 clockwise as you increase it.
$7E:00382 bytesMisc.Mode 7 scaling. Byte 1 scales it horizontally, while byte 2 scales it vertically.
$7E:003E1 byteMisc.Layer 3 Priority Flag
$7E:003E1 byteMisc.BG Mode select ($2105) applied with IRQ below status bar.
$7E:00401 byteMisc.CGADSUB setting: abcdefgh a = 0 for Addition, 1 for Subtraction, b = 1/2 Enable c = Back Enable, d = Object Enable, efgh = Enable BG 4, 3, 2, 1 (bit 3 only affect below the status bar)
$7E:00411 byteMisc.BG 1 and 2 Window Mask Settings: aaaabbbb a = BG 2 Window Settings b = BG 1 Window Settings.
$7E:00421 byteMisc.BG 3 and 4 Window Mask Settings: aaabbbb a = BG 4 Window Settings b = BG 3 Window Settings.
$7E:00431 byteMisc.OBJ and Color Window Settings: aaaabbbb a = Color Window Settings b = OBJ Window Settings.
$7E:00441 byteMisc.Initial Settings for Color Addition: aabb00cd a = Main Color Window On/Off, b = Sub Color Window On/Off, c = Fixed Color Add/Subtract Enable, d = Direct Select.
$7E:00452 bytesMisc.Playfield scroll amount in tile units instead of pixel units. Is 8 tiles behind actual display (starts at FFF8).
$7E:005B1 byteMisc.Screen mode: C00000vV
C=Collision with layer 2
v=Vertical layer 2
V=Vertical layer 1
$7E:005D1 byteMisc.# of screens in level
$7E:00641 byteMisc.Unknown, level mode-related
$7E:00653 bytesMisc.24bit pointer to Level Data.
$7E:00711 byteMisc.Misc. movements of mario

03=game stops for a while, after that Mario is flashing
04=get flower animation
05=enter a door
06=enter a vertical pipe
07=shoot from a diagonal pipe
08=shoot into the sky (like when yoshi get's wings from a ?-block)
09=end the level without activating events on the OW
0A=seems to be the castle entrance moves(?)
0B=Mario stop until $0O is writen
0D=game freezes
0E-FF= crash
$7E:00721 byteMisc.Mario's image while in the air.
$7E:00731 bytePlayerMario is Ducking flag.
$7E:00741 bytePlayerMario is climbing flag
$7E:00751 bytePlayer"Mario is in water" flag
$7E:00761 byteMisc.Mario's direction
$7E:00771 bytePlayerPlayer blocked status - Used to check if player is blocked in a certain direction. Format: xxxxUDLR
$7E:0078UnknownPlayer01= hide Mario's lower half
02= hide Mario's upper half
$7E:007B1 bytePlayerMario Xspeed
$7E:007D1 bytePlayerMario Yspeed
$7E:007E2 bytesPlayerMario's X position (screen)
$7E:00802 bytesPlayerMario's Y position (screen)
$7E:00841 byteMisc.Unknown (Swimming related. Is 255 in water levels.)
$7E:00851 byteMisc.Water Level flag
$7E:00861 byteMisc.Slippery Level
$7E:00881 bytePlayerHow long Mario goes into a pipe until he warps to another level.
$7E:008A1 byteMisc.Number of options to select in a blinking cursor menu.
$7E:00942 bytesPlayerMario's X position (level, next frame)
$7E:00962 bytesPlayerMario's Y position (level, next frame)
$7E:00981 byteSpritesSprite creation: Y position (low)
Custom Block: Y position of contact(low)
$7E:00991 byteSpritesSprite creation: Y position (high)
Custom Block: Y position of contact(high)
$7E:009A1 byteSpritesSprite creation: X position (low)
Custom Block: X position of contact(low)
$7E:009B1 byteSpritesSprite creation: X position (high)
Custom Block: X position of contact(high)
$7E:009C1 byteBlocksGenerate Map16 tile
$7E:009D1 byteSpritesLock sprites timer
$7E:009E12 bytesSpritesSprite Type (table)
$7E:00AA12 bytesSpritesSprite Y Speed Table
$7E:00B612 bytesSpritesSprite X Speed Table
$7E:00C212 bytesSpritesSprite Misc Table
$7E:00CE3 bytesSprites24bit pointer to level's sprite data.
$7E:00D12 bytesPlayerMario's X position (level, current frame)
$7E:00D32 bytesPlayerMario's Y position (level, current frame)
$7E:00D812 bytesSpritesSprite Yloc Low Byte (table)
$7E:00E412 bytesSpritesSprite Xloc Low Byte (table)
$7E:01001 byteMisc.Game Mode
$7E:01014 bytesMisc.Currently loaded sprite GFX files (stored in reverse order)
$7E:01054 bytesMisc.Currently loaded layer GFX files (stored in reverse order)
$7E:01091 byteMisc.When set to a non-zero value, the OW loading routine is overridden by loading level value stored here-$24. This means levels 0-FF can be used with the exception of level DC.
$7E:010A1 byteMisc.Save File #
$7E:010B245 bytesMisc.Stack
$7E:0200672 bytesI/OOAM
$7E:03131 byteSpritesMario's upper tile's OAM.
$7E:03171 byteSpritesMario's lower tile's OAM.
$7E:031A79 bytesMisc.MARIO START tilemap.
$7E:04A0448 bytesMisc.HDMA table for windowing effects (keyhole, level end, etc.)
$7E:0660160 bytesEmptyEmpty
$7E:068021 bytesMisc.Used for the lightning effect.
$7E:07012 bytesMisc.BG Colour. Is not actually used during gameplay, actual BG color as seen on screen comes from this value being loaded in CGSEL
$7E:0703254 bytesMisc.The whole palette, except color 00. Seems to only be used in the level loading routine.
$7E:0D822 bytesPlayerPointer to Mario/Luigi pallete. B2C8=Mario B2DC=Luigi, B2F0=Fire Mario, B304=Fire Luigi
$7E:0D8520 bytesSprites2 byte pointers in bank 7E for uploading Player's onscreen tiles. 2 sets of 10 bytes (top half, bottom half) for Mario's head, body, cape, Yoshi head / Fireball, Yoshi body / Fireball.
$7E:0D9B1 byteMisc.Unknown, level mode-related
$7E:0D9D1 byteMisc.Main Screen Setting of Current Level Mode (000abcde a = Object b = BG 4 c = BG 3 d = BG 2 e = BG 1). Appear as TM in LM
$7E:0D9E1 byteMisc.Sub Screen Setting of Current Level Mode (000abcde a = Object b = BG 4 c = BG 3 d = BG 2 e = BG 1). Appear as TD in LM
$7E:0D9F1 byteMisc.H-DMA Channel Enable: abcdefgh a = Channel 7 .. h = Channel 0: 1 = Enable 0 = Disable
$7E:0DA01 bytePlayerCurrent Player (0 - Player 1, 1 - Player 2). Used by controller Routine.
$7E:0DA2UnknownMisc.Copy of controller data 1
$7E:0DA31 byteI/O2nd Player Controller data 1 - All the same values as $7E0015
$7E:0DA41 byteMisc.Copy of controller data 2
$7E:0DAE1 byteMisc.Brightness (0-F)
$7E:0DB01 byteMisc.Related to screen fade and blur effect.
$7E:0DB21 byteMisc.2-Player Flag
$7E:0DB31 bytePlayerCharacter
$7E:0DB41 bytePlayerMario's Lives
$7E:0DB51 bytePlayerLuigi Lives
$7E:0DB61 bytePlayerMario Coins
$7E:0DB71 bytePlayerLuigi Coins
$7E:0DB81 bytePlayerMario Powerup
$7E:0DB91 bytePlayerLuigi Powerup
$7E:0DBA1 byteYoshiMario Yoshi Colour
$7E:0DBB1 byteYoshiLuigi Yoshi Colour
$7E:0DBC1 bytePlayerMario Item Box
$7E:0DBD1 bytePlayerLuigi Item Box
$7E:0DBE1 bytePlayerCurrent player's lives
$7E:0DBF1 bytePlayerCurrent player's coins
$7E:0DC01 byteMisc.Bonus Block Count Counter (starts at 30, decrements for each coin)
$7E:0DC21 bytePlayerReserved item
$7E:0DC71 byteMisc.OW X position of Mario (Same as $7E:1F17, Low Byte (?))
$7E:0DC81 byteMisc.OW X position for Mario (Same as $7E:1F18, High Byte)
$7E:0DC91 byteMisc.OW Y position of Mario (Same as $7E:1F19, Low Byte (?))
$7E:0DCA1 byteMisc.OW Y position for Mario (Same as $7E:1F1A, High Byte)
$7E:0DCB1 byteMisc.OW X position of Luigi (Same as $7E:1F1B, Low Byte (?))
$7E:0DCC1 byteMisc.OW X position for Luigi (Same as $7E:1F1C, High Byte)
$7E:0DCD1 byteMisc.OW Y position of Luigi (Same as $7E:1F1D, Low Byte (?))
$7E:0DCE1 byteMisc.OW Y position for Luigi (Same as $7E:1F1E, High Byte (?))
$7E:0DD51 byteMisc.FF = activate secret event on level exit
$7E:0DDA1 byteMisc.Music
$7E:0DDE3 bitsMisc.Wich file to erase on the erase file screen: 0000123
$7E:0DE516 bytesSpritesOW Sprite Type (table)
$7E:0E3516 bytesSpritesOW Sprite XPos Low
$7E:0E4516 bytesSpritesOW Sprite YPos Low
$7E:0E6516 bytesSpritesOW Sprite XPos High
$7E:0E7516 bytesSpritesOW Sprite YPos High
$7E:0E9516 bytesSpritesOW Sprite X speed
$7E:0EA516 bytesSpritesOW Sprite Y speed
$7E:0EF954 bytesMisc.Status Bar Tilemap
$7E:0F301 byteMisc.Timer Frame Counter
$7E:0F313 bytesMisc.Timer
$7E:0F343 bytesMisc.Mario Score
$7E:0F373 bytesMisc.Luigi Score
$7E:0F481 byteMisc.Mario Bonus stars
$7E:0F491 byteMisc.Luigi Bonus Stars
$7E:13BE1 byteMisc.Item Memory settings from header
$7E:13BF1 byteMisc.Level number (if >$24, add $DC)
$7E:13C11 byteMisc.Current overworld tile the player is standing on.
$7E:13C31 byteMisc.Current player's submap (0 = Main Map, 1 = Yoshi's, 2 = Vanilla, 3 = Forest, 4 = Bowser's, 5 = Special, 6 = Star)
$7E:13C61 byteMisc.Unknown, boss-related
$7E:13C71 byteMisc.Yoshi colour (4=yellow, 6=blue, 8=red, A=green - refreshes on level change)
$7E:13CC1 byteMisc.Increase coin flag. If value != #$00, coins are increased by 1 each frame. Otherwise, nothing happens.
$7E:13CE1 byteMisc.Midway Point flag
$7E:13D21 byteMisc.When level ending flag is set, acts similarly to when the ! Switches are pressed if value != $00.
On the OW, it will temporarily spawn ! blocks.
(#$01 for Yellow, #$02 for Blue, #$03 for Red and #$04 for Green, all others unused)
$7E:13D31 byteMisc.Timer that disables Start from flipping the Pause flag, if value isn't 0.
$7E:13D41 byteMisc.Pause flag(01=Paused)
$7E:13DF1 byteMisc.Cape Image
$7E:13E01 byteMisc.Mario Image
$7E:13E31 bytePlayerMario is wall-running flag.
0=not wall-running;
4=on the left wall;
7=on the right wall.
Note that custom blocks CANNOT be activated while wall-running!
$7E:13E41 bytePlayerMario Dash Timer. Increases by $02 every frame Mario is walking (and on the ground) with the Dash button held, decrements until at $00 otherwise. $70 indicates Max Running Speed, and means you are ready to take off with the cape.
$7E:13E8UnknownPlayerSet to $01 if the game is suppose to run the cape spin interraction with sprite
$7E:13ED1 bytePlayerPropably a Player Is On Slope flag or a Player Is Sliding flag
$7E:13F3UnknownPlayerRelated to Mario is inflated flag
$7E:13F91 byteMisc.Mario goes behind stuff flag
$7E:13FB1 bytePlayerMario is frozen flag. This includes controls and animation. Other sprites still move and can interact with Mario, but cause the game to mess up if they touch him. This may be useful for cutscenes to eliminate the jumping sound.
$7E:13FD1 byteMisc.Related to Pause. If #$01, everything on screen is frozen, but music still plays, and you can leave level by pressing start+select if beaten.
$7E:14071 byteMisc.Caped Mario Fall Status
$7E:140D1 byteMisc.Spin Jump flag
$7E:14101 byteMisc.Yoshi Has Wings flag # 1. The value 02 enables it. This doesn't handle the flying ability.
$7E:14111 byteMisc.Horizontal scroll settings from header.
00 = Disable horizontal scrolling.
01 = Enable horizontal scrolling.
$7E:14121 byteMisc.Vertical scroll settings from header
$7E:14131 byteMisc.Horizontal scroll setting (0 = None, 1 = Constant, 2 = Variable)
$7E:14141 byteMisc.Vertical scroll setting (0 = None, 1 = Constant, 2 = Variable, 3 = Slow)
$7E:14191 byteSpritesSomewhat of a "Sprites go behind stuff" flag.
00-No effect
01-Any sprite Mario is holding will go behind objects (includes riding Yoshi)
02-Same as 0x01, but the sprite has the same XY coordinates as Mario.
$7E:141C1 byteMisc.Secret Goal Sprite flag (not checked in vertical levels)
$7E:141E1 byteYoshiYoshi has wings flag. The only possible value for this address in the original is #$02, but setting to #$01 will allow Mario to throw fireballs if on Yoshi (even if he is not Firey Mario)
$7E:14201 byteMisc.Yoshi Coins
$7E:14211 byteMisc.Counter used by the invisible 1-up checkpoint (starts from 0, increases after touching each block)
$7E:14221 byteMisc.Yoshi Coins
$7E:14251 byteMisc.Bonus game - If set, Mario will be sent to the bonus game when the level ends.
$7E:14261 byteMisc.Message Box Trigger (1=Message 1, 2=Message 2, 3=Yoshi thanks message)
$7E:14331 byteMisc.Scaling factor of the growing circle before the Titlescreen starts.
Starts at 0, circle gets bigger when the value increases.
Loads titlescreen when value becomes #$F0 or higher.
$7E:14341 byteMisc.Set to $30 to end level via keyhole
$7E:14361 byteMisc.Keyhole position
$7E:14381 byteMisc.Keyhole position
$7E:143A1 byteMisc.When set to $01 or higher, it will load the "Mario Start!" tiles (Mario GFX will be replaced with the letters)
$7E:143B1 byteMisc.Death Message. $1D = "Time up!" Message. $14 = "Game Over" Message
$7E:143C1 byteMisc.Death Message Animation timer.

(For example, when "Game" and "Over" come to each other like this: Game --> <--Over)
$7E:143D1 byteMisc.How long the Death Message lasts timer.
$7E:143E1 byteSpritesScrolling command number. Basically the sprite value you find in Lunar Magic - #$E7. 0F-FF are incompatible.
$7E:14601 byteMisc.Layer 3 scrolling direction
$7E:14628 bytesMisc.Layer positions (level)
Layer 1 X position (level) (16-bit)
$7E:14642 bytesMisc.Layer 1 Y position (level) (16-bit)
$7E:14662 bytesMisc.Layer 2 X position(level)
$7E:14682 bytesMisc.Layer 2 Y position(level)
$7E:14701 byteMisc.Carrying enemy flag
$7E:14711 byteMisc.Determines what type of platform you are on. I.E., 01 is for the floating rock. It enables you to jump and run in the air. Followed by a sinking effect. The same effect you get when standing on a floating rock. This is on Yoshi's Island 4 stage.
$7E:148F1 bytePlayerFlag used to detect If Mario hold a object
$7E:14901 byteMisc.Star timer ($FF=16 sec on game timer)
$7E:14921 byteMisc.Mario Peace Image (level finished march) timer.
$7E:14931 byteMisc.Set to $FF to end level (? sphere)
$7E:14951 byteMisc.Something related about the fadeout after you defeat a boss. Seems to stop increasing when it reaches $40.
$7E:14961 byteMisc.Mario Hurt Frame Counter
$7E:14971 byteMisc.Flashing Invincible Timer
$7E:14981 bytePlayerTime to show Mario's Ducking while holding an item pose.
$7E:14991 bytePlayerTimer for Mario to face the screen.
$7E:149A1 bytePlayerTime to show Mario's kicking Pose.
$7E:149B1 bytePlayerTime for Mario to change through palettes (Used for fire animation)
$7E:149CUnknownPlayerTime to show Mario shooting a fireball pose (Includes in air and on ground)
$7E:149F1 byteMisc.Related to Vertical Screen Scrolling. #$00 = No effect. $%01+ = Vertical Screen Scrolling. Possibly related to flying or running fast?
$7E:14A61 bytePlayerSpin timer.
$7E:14AD1 byteMisc.Blue POW Timer
$7E:14AE1 byteMisc.Silver POW Timer
$7E:14AF1 byteMisc.On/Off Switch Value
$7E:14B21 byteSpritesUsed when Bowser is scaling (before the flames fall out of the sky).
0 = shrinking
1 = growing
2 = disappear
3-FF = completely random.
$7E:14C812 bytesSpritesSprite Status Table
$7E:14D412 bytesSpritesSprite Yloc High Byte (table)
$7E:14E012 bytesSpritesSprite Xpos High Byte (table)
$7E:14EC12 bytesSpritesAccumulating fraction bits for fixed point Y speed.
$7E:14F812 bytesSpritesAccumulating fraction bits for fixed point X speed.
$7E:150412 bytesSpritesThrow timer
$7E:151C12 bytesSpritesRelated to Vertical Sprite Direction Table
$7E:15204 bytesSpritesReznor killed flag. If a byte is set to $01, the Reznor will disappear.

Byte 1 is for Reznor 1, Byte 2 for Reznor 2 and so on.
$7E:152812 bytesSpritesChargin' Chuck Hit Count
$7E:153412 bytesSpritesUnknown Sprite Table
$7E:154012 bytesSpritesSprite Spin Jump Death Frame Counter
$7E:154C12 bytesSpritesTime to disable sprite's contact with Mario
$7E:155812 bytesSpritesUnknown Sprite Table (reduced by 1 each frame)
$7E:156412 bytesSpritesTime to disable sprite's contact with other sprites
$7E:157012 bytesSpritesRelated to calculating sprite's frames
$7E:157C12 bytesSpritesHorizontal Sprite Direction Table (0=Right, 1=Left)
$7E:158812 bytesSpritesSprite blocked status table - Used in the same way as $77
$7E:159412 bytesSpritesUnknown Sprite Table
$7E:15A012 bytesSpritesSprite off screen flag, horizontal
$7E:15AC12 bytesSpritesUnknown Sprite Table - Related to sprite frames. Setting it makes the current frame freeze, but the sprite is still mobile. It decreases every frame.
$7E:15C412 bytesSpritesUnknown Sprite Table
$7E:15D012 bytesSpritesSprite Being Eaten Flag Table
$7E:15DC12 bytesSpritesTable Related to sprite interaction with objects. Set and the sprite falls through objects.
$7E:15E91 byteSpritesSprite index for sprite being processed
$7E:15EA12 bytesSpritesSprite's index to OAM
$7E:15F612 bytesSpritesSprite Palette/GFX High Byte Table - (Tile#Hi - 2) + 2 * (Palette# - 8)
$7E:160212 bytesSpritesSprite Image Table
$7E:16051 byteSpritesScore/1up Sprite Inital Ypos (table)
$7E:160E12 bytesYoshiTable related to Yoshi eating stuff
$7E:16161 byteYoshiYoshi's mouth flag
$7E:161A12 bytesMisc.Sprite's index to level table - set to FF to prevent from reloading it once it goes offscreen
$7E:162612 bytesSpritesConsecutive enemies jumped on table.
$7E:163212 bytesSpritesSprite Interaction Disable Flag
$7E:163E12 bytesSpritesJump timer
$7E:164A12 bytesSpritesSprite Follower Table (0=None, 1-7F=Clouds, 80-FF=Fire)
$7E:165612 bytesSpritesSprite properties, first Tweaker/MWR byte
$7E:166212 bytesSpritesSprite properties, second Tweaker/MWR byte
$7E:166E12 bytesSpritesSprite properties, third Tweaker/MWR byte
$7E:167A12 bytesSpritesSprite properties, fourth Tweaker/MWR byte
$7E:168612 bytesSpritesSprite properties, fifth Tweaker/MWR byte
$7E:16921 byteSpritesSprite Memory setting from header
$7E:16931 byteMisc.Block # in custom block code (low byte; high byte is Y register)
$7E:16971 byteMisc.Consecutive enemies stomped
$7E:16994 bytesMisc.Block Bounce Sprite Image Table
$7E:169D4 bytesMisc.Block Bounce Sprite ? Table
$7E:16A14 bytesMisc.Block Bounce Sprite Xpos Low Byte Table
$7E:16A54 bytesMisc.Block Bounce Sprite Ypos Low Byte Table
$7E:16A94 bytesMisc.Block Bounce Sprite Xpos High Byte Table
$7E:16AD4 bytesMisc.Block Bounce Sprite Ypos High Byte Table
$7E:16B14 bytesMisc.Block Bounce Sprite YSpeed Table
$7E:16B54 bytesMisc.Block Bounce Sprite XSpeed Table
$7E:16C14 bytesMisc.Block Bounce Sprite Turns Into Table
$7E:16C54 bytesMisc.Block Bounce Sprite Bouncing Flag Table
$7E:16C94 bytesMisc.Block Bounce Sprite ? Table
$7E:16CD4 bytesMisc.Block Bounce Sprite Exists Flag Table
$7E:16E16 bytesMisc.Score/1up Sprite Type (table)
$7E:16E76 bytesMisc.Score/1up sprite Ypos low byte (table)
$7E:16ED6 bytesMisc.Score/1up Sprite X-pos low byte (table)
$7E:16F36 bytesMisc.Score/1up Sprite X-pos high byte (table)
$7E:16F96 bytesMisc.Score/1up Sprite Y-pos, high byte (table)
$7E:16FF6 bytesMisc.Score/1up Sprite Movement/Speed (table)
$7E:170B8 bytesSpritesType of extended sprite (0-12): 01 - Puff of smoke with various objects, 02 - reznor fireball, 03 - flame left by hopping flame, 04 - hammer, 05 - mario fireball, 06 - bone, 07 - Lava Splash (doesn't hurt, parabolic down), 08 - Torpedo Ted shooter's arm, 09 - Red thing that flickers from 16x16 to 8x8, 0A - coin from cloud game, 0B - piranha fireball, 0C - lava lotus fire, 0D - baseball, 0E - Flower of Wiggler, 0F - Trail of smoke, 10 - Spin Jump star, 11 - yoshi fireballs, 12 - Water bubble
$7E:17131 byteMisc.Fireball 2 Status (0=Doesn't Exist, 1=Hit Something, 5=Exists)
$7E:17141 byteMisc.Fireball 1 Status (0=Doesn't Exist, 1=Hit Something, 5=Exists)
$7E:17158 bytesSpritesExtended sprite Y position, Low Byte
$7E:171D1 byteMisc.Fireball 2 Ypos Low Byte
$7E:171E1 byteMisc.Fireball 1 Ypos Low Byte
$7E:171F8 bytesSpritesExtended sprite X position, Low Byte
$7E:17271 byteMisc.Fireball 2 Xpos Low Byte
$7E:17281 byteMisc.Fireball 1 Xpos Low Byte
$7E:17298 bytesSpritesExtended sprite Y position, High Byte
$7E:17311 byteMisc.Fireball 2 Ypos High Byte
$7E:17321 byteMisc.Fireball 1 Ypos High Byte
$7E:17338 bytesSpritesExtended sprite X posistion, high byte
$7E:173B1 byteMisc.Fireball 2 Xpos High Byte
$7E:173C1 byteMisc.Fireball 1 Xpos High Byte
$7E:173D8 bytesSpritesExtended sprite Y speed
$7E:17451 byteMisc.Fireball Y Speed (2nd fireball)
$7E:17461 byteMisc.Fireball Y Speed (First Fireball)
$7E:17478 bytesSpritesExtended sprite X speed
$7E:174F1 byteMisc.Fireball #2 X Speed
$7E:17501 byteMisc.Fireball #1 X Speed (Default is 3 for right, $FD for left)
$7E:175B1 byteMisc.Fireball Hit Flag Table
$7E:176F1 byteMisc.Fireball Hit Frame Counter Table
$7E:17811 byteMisc.Fireball 2 Goes Behind Stuff Flag
$7E:17821 byteMisc.Fireball 1 Goes Behind Stuff Flag
$7E:17C0UnknownSpritesSmoke image (for Bullet Bill shooter and such...)
$7E:17C41 byteSpritesy-pos of smoke image
$7E:17C81 byteSpritesx-pos of smoke image
$7E:17CC1 byteSpritestime to show the smoke animation
$7E:18601 byteBlocksLOW BYTE of "block acts like" map16 number setting of the block the sprite is touching, this is set after the object interaction routine is called or the update speeds with gravity routine is called.
$7E:18621 byteBlocksHIGH BYTE of "block acts like" map16 number setting of the block the sprite is touching, this is set after the object interaction routine is called or the update speeds with gravity routine is called.
$7E:186C12 bytesSpritesSprite off screen flag, vertical
$7E:187A1 byteYoshiRiding Yoshi Flag (0=No, 1 or 2=Yes)
$7E:187B12 bytesSpritesSprite Stomp Immunity Flag Table
$7E:18871 byteMisc.Time to shake ground
$7E:18882 bytesMisc.Layer 1 Image Y position, used by RAM $7E1887 (Shake ground)
$7E:188B1 byteMisc.Something related about Mario's Image Y position, used by RAM $7E1887 (Shake Ground)
$7E:18911 byteMisc.P-balloon's timer
$7E:18AC1 byteYoshiYoshi Swallow Frame Counter/Status
$7E:18BD1 bytePlayerTime to stun mario. Mario will face the screen and be unable to move.
$7E:18BE1 bytePlayerRelated to Mario climbing. If > #$01, climbs if pressing up.
$7E:18C21 bytePlayerMario is standing normal flag. Set above #$01 and his image stays at normal, but can still move.
$7E:18D21 byteMisc.Number of consecutive enemies killed by star
$7E:18D41 byteMisc.Berries eaten
$7E:18D51 byteMisc.Pink berries eaten
$7E:18D61 byteMisc.Berry Type (0=Coin (no eggs), 1=Red, 2=Pink Berry, 3=Green)
$7E:18D91 byteMisc.How far the castle door is open in the castle intro screen.
$7E:18E21 byteYoshiLoose Yoshi Flag (if set, any Yoshis spawned become 1ups instead)
$7E:18E41 byteMisc.1up Handler Address: Write a number to give that many lives. Handles everything except '1up' sprite.
$7E:18E71 byteYoshiYoshi ground stomp flag. (This is set to #$01 for a Yellow Yoshi or Yoshi with a yellow shell)
$7E:18F71 byteMisc.pointer to next place in table at $16E1 that can be overwritten if the table is full. (that is, this value is only changed if there are already 6 Score sprites on screen)
$7E:19001 byteMisc.Star Points Gained @ level end (decrements to 0)
$7E:19051 byteMisc.Iggy's Platform holds the total number of tilts made counter. It will increment everytime the platform will be at a maximum tilt.
$7E:19061 byteMisc.Iggy's platform stationary phase counter. It will stop rotating the platform when you set it to anything higher than $01, and will stay so until it decrements to $00.
$7E:19071 byteMisc.Iggy's platform rotation phase counter. Resets when it is about to reach $06.
$7E:190C1 byteMisc.Directional coin timer.
$7E:190F12 bytesSpritesSprite properties, sixth Tweaker/MWR byte
$7E:19251 byteMisc.Level Mode settings from header
$7E:192B1 byteSpritesWhich Sprite GFX set to use
$7E:192D1 byteMisc.FG Palette settings from header
$7E:192E1 byteMisc.Sprite Palette settings from header
$7E:192F1 byteMisc.BG Colour settings from header
$7E:19301 byteMisc.BG Colour setting from header
$7E:19311 byteMisc.Tileset
$7E:19321 byteMisc.Tileset again
$7E:19B832 bytesMisc.Exit Table, low bytes.
$7E:19D832 bytesMisc.Exit Table, flags + high bit.
Bit 0 = High bit of level # (1=level 1xx, 0=level 0xx)
Bit 1 = Is Secondary Exit Flag
Bit 2 = Is Exit Present Flag (set if any exit is on this screen)
Bit 3 = Make Destination Water Flag (Secondary Exit only)
Bits 4-7 = Unused
$7E:1B861 byteMisc.Determines which pointer to use for the routine that runs events.
$7E:1B881 byteMisc.Message box expanding (0) or shrinking (1) flag.
$7E:1B891 byteMisc.Message box expansion and shrinking timer/size. Note: Setting expanding timer above #$04 will cause the message to be blank.
$7E:1B911 byteMisc.Blinking cursor frame counter (file select, save prompt, etc.)
$7E:1B921 byteMisc.Blinking cursor position (value 00-03)
$7E:1B951 byteYoshiPlayer::Yoshi has Wings Flag
$7E:1B961 byteMisc.Side Exit Enabled flag
$7E:1B9A1 byteMisc.Level::BG Scroll Activated Flag
$7E:1BE31 byteMisc.Layer 3 settings
$7E:1DE91 byteMisc.Overworld::Ending enermy presentation screen (Count to 0x0C)
$7E:1DEA1 byteMisc.Overworld event to run at level end ($FF=None)
$7E:1DEB2 bytesMisc.Event tile to load to the overworld. A starting value is set to this at level end, and it increases until it reaches the value of $1DED.
$7E:1DED2 bytesMisc.Last event tile to load to the overworld during a given event, set at level end.
$7E:1DF41 byteMisc.Index to intro control sequence data table.
$7E:1DF51 byteMisc.Frame counter to use the same controller bits for intro sequence.
$7E:1DF61 byteMisc.StarRoad and Tunnel handler (Map). Controls where you warp to. I've tested 00-88 (Dec). The values load by adding +2 to the previous one. This is starting from 00 and so on.
$7E:1DF71 bytePlayerUsed by the Star Road Warp Star on the overworld. It is the speed of Mario getting launched in the air during warping. The higher the value, the faster he gets launched in the air.
$7E:1DF81 bytePlayerUsed by the Star Road Warp Star on the overworld. It is how long Mario stays on the ground before he gets launched in the air, during warping. (Timer)
$7E:1DF94 bytesI/OSPC700 I/O Ports (Write values to play music/SFX)
$7E:1DFF1 byteI/OSeems like it is the copy of $7E1DFB, the music register. Writing to it doesn't give any effect though.
$7E:1EA2UnknownMisc.Level flag table (?) - unknown size
$7E:1EA2UnknownMisc.OW Level Setting Flags, location corresponds to $7E13BF. Bits:
01: Enable walking right
02: Enable walking left
04: Enable walking down
08: Enable walking up
10: Save Prompt when level beaten
20: No entry if level passed
40: Midway point
80: Beaten
$7E:1EEB1 byteMisc.Special Stage Features handler for both the title screen stage and the normal stages. Hex value 83 enables it.
$7E:1EFB1 byteMisc.Special World Passed flag
$7E:1F0215 bytesMisc.Overworld event flags
$7E:1F111 byteMisc.Current submap for Mario (0=Overworld, 1=Yoshi, 2=Vanilla, 3=Forest, 4=Bowser, 5=Special, 6=Star)
$7E:1F121 byteMisc.Current submap for Luigi (0=Overworld, 1=Yoshi, 2=Vanilla, 3=Forest, 4=Bowser, 5=Special, 6=Star)
$7E:1F172 bytesMisc.OW X position of Mario
$7E:1F181 byteMisc.OW X position for Mario (High Byte)
$7E:1F192 bytesMisc.OW Y position of Mario
$7E:1F1A1 byteMisc.OW Y position for Mario (High Byte)
$7E:1F1B2 bytesMisc.OW X position of Luigi
$7E:1F1C1 byteMisc.OW X position for Luigi (High Byte)
$7E:1F1D2 bytesMisc.OW Y position of Luigi
$7E:1F1E1 byteMisc.OW Y position for Luigi (High Byte)
$7E:1F1F1 byteMisc.Pointer to Mario's OW Xpos. Value is Mario's OW Xpos divided by 10 hex.
$7E:1F211 byteMisc.Pointer to Mario's OW Ypos. Value is Mario's OW Ypos divided by 10 hex.
$7E:1F274 bytesMisc.Switch block flags (Green, Yellow, Blue, Red)
$7E:1F2E1 byteMisc.# of levels beat
$7E:1F2FUnknownMisc."Collected five or more Yoshi Coins" flags. Each byte represents the upper 5 bits of the level number
%00000000 - $7E:1F2F
%00001000 - $7E:1F30
%00010000 - $7E:1F31
The value of the byte represents the lower three bits of the level number.
%000 - 0x80
%001 - 0x40
%010 - 0x20
If the respective bit is set, the Yoshi Coins in that level will not appear.
$7E:1FD612 bytesSpritesUnknown Sprite Table
$7E:1FE212 bytesSpritesTime to disable sprite's contact with cape
$7E:1FEEUnknownMisc.RAM table handling in which levels the 3UP moons are flagged as 'do not respawn'. This happens after they're collected in that level. 8 levels go in 1 byte ; one bit per level. Order of levels is the same as RAM address $13BF, but then in bits, to compress the amount of space needed. If the bit relative to the level is flagged, the moon will not respawn. If it's clear, it will respawn.
$7E:200023,808 bytesSpritesGFX32 decompressed.
$7E:7D0012,288 bytesSpritesGFX33 decompressed.
$7E:AD004,096 bytesMisc.GFX file decompression buffer. Decompressed as 3bpp (3kb) for unexpanded GFX and as 4bpp for expanded.
$7E:B1E42 bytesMisc.Target word address in VRAM for updating BG1 tilemap as it's scrolled. High byte comes first and is only written on the frame where updating occurs.
$7E:BD007 bytesMisc.Used by custom block ASM/XAnimated Tile GFX
$7E:BD051 byteMisc.A flag used to determine if this is a SMAS + SMW ROM.
$7E:C1001,792 bytesEmptyEmpty
$7E:C3801 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate Mario's direction (1-up, 2-right, 3-down, 4-left)
$7E:C3811 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate the counter that increments when Mario is touching an exit tile
$7E:C3821 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate the counter that increments when Mario is in a corner piece
$7E:C3831 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate the Mario/Yoshi status (1-small, 2-big, 3-small on yoshi, 4-big on yoshi)
$7E:C3841 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate the target location of corner piece low byte
$7E:C3851 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate the target location of corner piece high byte
$7E:C3861 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate the water level flag
$7E:C3871 byteBlocksUsed by Mikeyk's SMB3 Pipes to indicate the time that Mario has entered the pipe
$7E:C80014,336 bytesBlocksMap16 Low Byte Table
$7F:0534972 bytesMisc.Filled with $FC.
$7F:0B4413,500 bytesEmptyEmpty
$7F:0B442,048 bytesSpritesGFX for currently loaded dynamic sprites: The sprites load their GFX in here, and then it's copied into the second half of SP4 during NMI.
$7F:8000386 bytesSpritesUnrolled loop which writes to OAM to set all sprite tiles off screen on each frame
$7F:8183504 bytesEmptyEmpty
$7F:837B2 bytesMisc.Used for indexing the stripe image table
$7F:837DUnknownMisc.Stripe image table, Format is documented here:
$7F:84494,914 bytesEmptyEmpty
$7F:86011 bytePlayerUsed by Schwa's Pseudo Powerups to determine what powerups Mario has, in Binary;
0x01 = Ice Skates
0x02 = Lava Boots
0x04 = Force Boots
0x08 = Spike Boots
0x10 = Dash Boots
0x20 = Wing Boots
0x40 = Screw Attack
$7F:86021 bytePlayerUsed by Schwa's Pseudo Powerups to determine if Mario has already used his double-jump before landing (00 = on the ground, 01 = usable, anything else = not usable)
$7F:8820UnknownSpritesUsed by Mikeyk's Ice Power generator
$7F:8821UnknownMisc.Used by Mikeyk's mushroom block (sprite portion).
$7F:8900768 bytesSpritesExtra sprite tables used by smwedit's fire chomp, and some by smwedit's chain chomp. The sprite tables can be used by any sprite, but must be initialized or set in the INIT routine.

The tables include: $7F8900, $7F890C, $7F8918, $7F8924, $7F8930, $7F893C, $7F8948, $7F8954, $7F8960, $7F896C, $7F8978, $7F8984, $7F8990, $7F899C, $7F89A8, $7F89B4, $7F89C0, $7F89CC, $7F89E4, $7F89F0
$7F:977B768 bytesMisc.Mario Start, Game Over, Time Up etc. messages Graphics, decompressed.
$7F:9A7B11,653 bytesEmptyEmpty
$7F:AB1012 bytesSpritesUsed by Sprite Tool
Bit 2 indicates the first extra bit is set
Bit 3 indicates it's a custom sprite
Bit 7 indicates it has been initialized
$7F:AB1C1 byteSpritesUsed by Sprite Tool to indicate whether the sprite being processed uses custom code
$7F:AB2812 bytesSpritesUsed by Sprite Tool to indicate the extra property byte 1 from the cfg file
$7F:AB3412 bytesSpritesUsed by Sprite Tool to indicate the extra property byte 2 from the cfg file
$7F:AB9E12 bytesSpritesUsed by Sprite Tool to indicate the custom sprite number
$7F:C80014,336 bytesBlocksMap16 High Byte Table
$7F:FF0032 bytesMisc.Used for LevelNames 2.0 by Ice Man
$7F:FFDF10 bytesMisc.Used by BMF's LevelNames code
$7F:FFF010 bytesBlocksUsed by FuSoYa's SMB3 Pipe Code.
$7F:FFF04 bytesMisc.Used by BMF's LevelASM code
$7F:FFF88 bytesMisc.Used by LM demo recording/playing ASM

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

Copyright © 2005 - 2009 - SMW Central
Legal Information

Queries: 19