Banner
Views: 494,870,657
Time: 2017-01-18 12:24:01 AM
27 users online: Aeon, Big Brawler, G.D., GreenHammerBro, Hat Kid, idol, Idrinkgrapesoda, justin3009, KPals, o Luigi-San, M A R I O W O R L D, Mathos, Metalstriker, mosky2000, MrDeePay, Najeraldo, o Noivern, Pseudogon, o RPG Hacker, Rykon-V73, Shiny Ninetales, Skewer, SMWCJullasicFox, Sokobansolver, Theultimate12, VanessaWolfe2015, Wavee - Guests: 30 - Bots: 170Users: 30,469 (1,250 active)
Latest: 91 Days
Tip: Coins and Dragon Coins guide your player through the level and mark progress. Don't forget to place them!Not logged in.
SMAS RAM Map
Displaying 511 addresses. Show waiting addresses (94) - Submit address
Address Length Context Type Description
$7E0000 8 bytes Super Mario Bros. 1 Miscellaneous Scratch RAM for many subroutines
$7E0000 Unknown Super Mario Bros. 1 Miscellaneous TODOs:

- Fix inconsistent SMB1 sprite table sizes
- Consistent naming (player instead of Mario, Y Position instead of ypos, and the likes)
- Find out what kind of sprites there are in SMB1. How many types of extended sprites, and so on.
$7E0009 1 byte Super Mario Bros. 1 Counter Frame Counter
$7E000A 3 bytes Super Mario Bros. 1 Flag Player action data.

Note that these flags are not mirrors of SNES controller flags. They merely signify which states the player is experiencing. For example, the Jump flag can be set by whatever button maps to jumping. Also, the flag is set only by the controller of the current player.
$7E000A 1 byte Super Mario Bros. 1 Flag Bit flags: JD000000
J - Jump button
D - Dash button
$7E000B 1 byte Super Mario Bros. 1 Flag Bit flags: 0000UD00
U - Up button
D - Down button
$7E000C 1 byte Super Mario Bros. 1 Flag Bit flags: 000000LR
L - Left flag
R - Right flag
$7E000D 1 byte Super Mario Bros. 1 Flag Saves the value of $7E:000A (jump/run flags) from the previous frame.
$7E000F 1 byte Super Mario Bros. 1 Player Action Player's current action (Entering pipe, fade to image before level, vine, etc.)

TODO: verify "Number of subroutines to run in game engine on next frame"
$7E0010 9 bytes Super Mario Bros. 1 Sprites Sprite onscreen flag.

Bit 7 = never overwrite sprite slot of current index.
Bit 0 = Onscreen flag.
$7E0010 1 byte Super Mario Bros. 2 Counter Frame Counter
$7E0011 1 byte Super Mario Bros. 1 Stripe Image Layer image upload
$7E0012 1 byte Super Mario Bros. 3/Global Position Which screen number the player is in. TODO: Verify, editing this seems to screw with the level drawing
$7E0014 1 byte Super Mario Bros. 2 Player Player's X-position, high byte.
$7E0014 1 byte Super Mario Bros. 3/Global Flag Level completed flag.
$7E0015 9 bytes Super Mario Bros. 2 Sprites Sprites' X-position, high byte.
$7E0015 1 byte Super Mario Bros. 3/Global Counter Frame counter.
$7E0016 1 byte Super Mario Bros. 3/Global Hardware Mirror Brightness. Does not affect the statusbar on the overworld.
$7E001C 9 bytes Super Mario Bros. 1 Sprites Sprite number
$7E001C 1 byte Intro & Game Select Screens Timer Number of frames to show intro logo.

Is initially set to #$81.

At #$61, the logo will flash.
$7E001E 1 byte Super Mario Bros. 2 Player Player's Y-position, high byte.
$7E001F 9 bytes Super Mario Bros. 2 Sprites Sprites' Y-position, high byte.
$7E0022 1 byte Super Mario Bros. 3/Global Level How many screens the level has.
$7E0022 1 byte Intro & Game Select Screens Timer Timer for various things.

1. Number of frames to show each flash state during intro logo flashing
$7E0022 1 byte Intro & Game Select Screens Timer Amount of time to wait until the "Super Mario All-Stars" text flashes.
$7E0023 1 byte Intro & Game Select Screens Counter What step we are in, in the flashing "ALL*STARS" text in the hall screen.
$7E0024 1 byte Intro & Game Select Screens Flag Flag for various animation timers. When set, the animation timers will begin.

1. Flash animation for intro logo
$7E0025 1 byte Super Mario Bros. 1 Sprites Sprite number which came out of a question block.
$7E0027 1 byte Intro & Game Select Screens Flag Is #$10 if the start button has been pressed by either controller, otherwise #$00.
$7E0028 1 byte Super Mario Bros. 2 Player Player's X position, low byte
$7E0029 9 bytes Super Mario Bros. 1 Sprites Sprite state.

TODO: Find a list of values
$7E0029 9 bytes Super Mario Bros. 2 Sprites Sprites' X-position, low byte. First three bytes also used for movement of bonus slots. 00 = stop, 01 = slowing down, 02-FF = not slowing down.
$7E0031 3 bytes Super Mario Bros. 3/Global Pointers Pointer to current current level's sprite data (SNES Address, Little endian)
$7E0032 1 byte Super Mario Bros. 2 Player Player's Y-Position, low byte
$7E0033 2 bytes Super Mario Bros. 1 Sprites Fireball states

TODO: Find out about the values
$7E0033 9 bytes Super Mario Bros. 2 Sprites Sprites' Y-position, low byte. $7E0038-9 is speed of bonus slot 1's images. $7E003A-B is speed of bonus slot 2's images.
$7E0035 2 bytes Super Mario Bros. 1 Sprites Bounce block state

TODO: find out the states
$7E003C 1 byte Super Mario Bros. 2 Speed Speed of one of bonus slot 3's images. Also used for player's speed.
$7E003D 9 bytes Super Mario Bros. 2 Sprites Sprite X speed table. $3D is also used for speed of the other of bonus slot 3's images.
$7E0042 2 bytes Super Mario Bros. 1 X Position X-Position of screen
$7E0044 9 bytes Super Mario Bros. 3/Global Sprites Sprite X position, high byte.

TODO: Verify length
$7E0046 1 byte Super Mario Bros. 1 Player Facing direction of player
$01 - Right
$02 - Left
$7E0046 1 byte Super Mario Bros. 2 Player Player's Y-speed
$7E0047 9 bytes Super Mario Bros. 2 Sprites Sprite Y speed table
$7E0047 1 byte Super Mario Bros. 3/Global X Position Player overworld X-position.
$7E004C 1 byte Super Mario Bros. 3/Global Direction Player's direction on the overworld.
$7E0051 9 bytes Super Mario Bros. 2 Sprites Sprite status table. 00 = non-existant/init, 01 = main, 02 = falling from screen, 03 = flat, 04 = explode, 05 = disappear in a puff of smoke, 06 = dissolving sand, 07 = stop interacting, 08 = disappear in two puffs of smoke, 09 = disappear abruptly
$7E0056 9 bytes Super Mario Bros. 3/Global Sprites Sprite Y position, high byte.

TODO: Verify length
$7E005A 1 byte Super Mario Bros. 3/Global Flag "Players spins in the overworld" flag (e.g. when player dies and gets placed to the latest checkpoint)
$7E005C 1 byte Super Mario Bros. 1 Level Data Map Type

$00 - Underwater
$01 - Normal
$02 - Underground
$03 - Castle
This address always has the same value as $7E:00BA.
$7E005D 1 byte Super Mario Bros. 1 X Speed Player's X Speed
$7E005E 1 byte Super Mario Bros. 3/Global X Position Player X-position in the level, low byte
$7E005F 9 bytes Super Mario Bros. 3/Global Sprites Sprite X position, low byte.

TODO: Verify length
$7E0060 4 bytes Intro & Game Select Screens Sound Effect SPC700 I/O Ports. Write values to play music/sound effects.
$7E0068 2 bytes Super Mario Bros. 1 X Speed Fireball X-Speed
$7E006A 2 bytes Super Mario Bros. 1 X Speed Bounce blocks X-Speed
$7E0070 1 byte Super Mario Bros. 3/Global Y Position Player Y-position in the level, low byte.

TODO: Also related to OW 'player spawns' stars (those spinning ones), 34 bytes.
$7E0071 9 bytes Super Mario Bros. 3/Global Sprites Sprite Y position, low byte.

TODO: Verify length
$7E0082 1 byte Super Mario Bros. 2 Player Amount of time to remain in a player state.
$7E0084 2 bytes Super Mario Bros. 1 X Position Fireball X-Position, high byte.
$7E0086 2 bytes Super Mario Bros. 1 X Position Bounce block X-Position, high byte.
$7E008B 1 byte Super Mario Bros. 3/Global Speed Player X-speed
$7E008C 9 bytes Super Mario Bros. 3/Global Sprites Sprite X speed.

TODO: Verify length
$7E008F 1 byte Super Mario Bros. 2 Player Current player. #$00 = Mario; #$01 = Peach; #$02 = Toad; #$03 = Luigi.
$7E0090 9 bytes Super Mario Bros. 2 Sprite Number Sprite num table
$7E0099 1 byte Super Mario Bros. 1 Level Graphics to upload during level load. See this for a list of values.
$7E009B 1 byte Super Mario Bros. 3/Global Sprites The current sprite index.
$7E009C 1 byte Super Mario Bros. 2 Flag Player holding item flag ($01 = Holding.)
$7E009D 1 byte Super Mario Bros. 2 Player Player's Direction ($00 = Left, $01 = Right)
$7E009D 1 byte Super Mario Bros. 3/Global Y Speed Player Y-speed
$7E009E 1 byte Super Mario Bros. 1 Index Current sprite index
$7E009E 9 bytes Super Mario Bros. 3/Global Sprites Sprite Y speed.

TODO: Verify length
$7E00A0 1 byte Super Mario Bros. 1 Y Speed Player's Y Speed
$7E00A2 1 byte Super Mario Bros. 2 Counter Alternative Frame Counter (Stops at times)
$7E00A8 9 bytes Super Mario Bros. 2 Sprites Sprite is picked up table. 07 = sprite = bottom at player, 01 = top, 00 = normal state
$7E00AB 2 bytes Super Mario Bros. 1 Y Speed Player fireballs Y speed
$7E00AB 3 bytes Super Mario Bros. 3/Global Pointers Pointer to 24-bit RAM address which contains the windowing HDMA table used for various effects.

Seems to alternate between $7F:9000 and $7F:9200.
$7E00AD 2 bytes Super Mario Bros. 1 Y Speed Bounce block Y speed
$7E00B3 1 byte Super Mario Bros. 3/Global Overworld What overworld tile the player is standing on.

TODO: List of overworld tiles.
$7E00BA 1 byte Super Mario Bros. 1 Level Current background palette and music.

$00 - Light blue background with underwater music
$01 - Light blue background with normal world music
$02 - Black background with underground music
$03 - Black background with castle music

This address always has the same value as $7E:005C.
$7E00BB 1 byte Super Mario Bros. 3/Global Miscellaneous Something related about OW powerup get? ($07 + higher= glitch)

TODO: Verify
$7E00BD 1 byte Super Mario Bros. 3/Global Direction Player direction ($40 = right)
$00 - Left
$40 - Right
$41 - End level walk?
TODO: Find out the format of this address, seems bitwise rather than raw numbers.
$7E00C5 1 byte Super Mario Bros. 1 Y Position [?]-block sprite Y position

$00 - Top of screen (above status bar)
$01 - Inside range
$02 - In pit
$7E00D0 1 byte Intro & Game Select Screens Index Selected game index in the Game Select screen
$7E00D1 1 byte Intro & Game Select Screens Index Selected file index in the File Select screen
$7E00D9 2 bytes Super Mario Bros. 2 Pointers 16-bit pointer to Layer 1 room data.
$7E00DB 1 byte Super Mario Bros. 1 Level Data An index value signifying the Layer 2 Background map to use.

$00 - Underwater (short)
$01 - Underwater (full)
$02 - Underwater (castle)
$03 - Night sky (w/o mountains)
$04 - Outside castle (W8-3)
$05 - Mountains and trees
$06 - Night sky (w/ mountains)
$07 - Night sky (w/ mountains & snow)
$08 - Mountains
$09 - Waterfall
$0A - Goomba statues/pillars
$0B - Narrow green hills (W2-1)
$0C - One big mountain w/ underground palette
$0D - Narrow hills w/ snow (W5-1)
$0E - Mario/Luigi Bonus room
$0F - Mushrooms
$10 - Night sky (w/o mountains)
$11 - Night sky (w/ mountains)
$12 - Mushrooms
$13 - Mountains
$14 - Narrow hills w/ snow (W5-1)
$15 - Narrow orange hills
$16 - Narrow hills w/ snow
$17 - Mario/Luigi bonus room
$18 - Night sky (w/ mountains)
$19 - Underground
$1A - Underground
$1B - Mario/Luigi bonus room (underground)
$1C - Castle
$1D - Castle w/ pillars & chandeliers
$1E - Castle w/ pillars
$1F - Castle w/ pillars
$20 - Castle w/ pillars & doors
$21 - Castle w/ windows w/ thunder & lightning
$7E00DE 1 byte Intro & Game Select Screens Flag If non-zero $7F:0000 will get uploaded to BG1's tilemap.
$7E00E2 8 bytes Super Mario Bros. 3/Global X Position Extended sprite X-position, high byte.
$7E00E3 2 bytes Intro & Game Select Screens Timer Timer for showing the current hall screen state (blackout) or (lightened).

#$011A - First blackout time
#$044A - First lightened time
$7E00EB 2 bytes Super Mario Bros. 1 Clipping Used during level loading to load level backgrounds: Starting index of the background map16 to place the background objects at (Every $0100 bytes of RAM $7ED000 is a page).

Also used by the podoboo lava splash.
$7E00EB 1 byte Super Mario Bros. 2 Flag Horizontal level flag. #$00 = Vertical level; #$01 = Horizontal level.
$7E00ED 2 bytes Super Mario Bros. 1 Miscellaneous Used during level loading to load level backgrounds: Used to calculate $7E00EB

Also used by the podoboo lava splash.
$7E00EF 2 bytes Super Mario Bros. 1 Level Data Command to use in a level's background generation routine.

$00 - Increase index to background map16 tilemap's latest written tile by 1
$01 - Handle HDMA gradient. Underwater levels use below value, instead.
$02 - Enable underwater HDMA gradient. TODO: does it enable anything else? (cgadsub etc)
$03 - TODO: figure out what
$04 - TODO: figure out what
$05 - Related to background map16 tilemap generation
$06 - Fill background with repetitive rock pattern of cave background
$07 - Fill top 3 rows with blank tiles for underwater levels
$08 - Generate the rocks of the waterfall background
$09 - Enable Layer 3 image
$0A - Generate the waterfall of the waterfall background
$0B - Load tilemap-specific graphics? TODO: verify
$0C - Generate Goomba pillar background's sand

Despite being two bytes in size, only the first byte is used.

Also used by the podoboo lava splash.
$7E00F0 3 bytes Super Mario Bros. 2 Pointers Indirect pointer to load a layer image from. Controlled by $11.
$7E00F0 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:4219 - Controller Port 1 Data1 Register high byte.

This mirror is for controller data from the current frame.
$7E00F1 1 byte Super Mario Bros. 1 HDMA Associated value with a background generation command, e.g. value to enable/disable layer 3, which HDMA gradient, and so on.

Also used by the podoboo lava splash.
$7E00F1 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:421B - Controller Port 2 Data1 Register high byte.

This mirror is for controller data from the current frame.
$7E00F2 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:4218 - Controller Port 1 Data1 Register low byte.

This mirror is for controller data from the current frame.
$7E00F3 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:421A - Controller Port 2 Data1 Register low byte.

This mirror is for controller data from the current frame.
$7E00F4 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:4219 - Controller Port 1 Data1 Register high byte.

This mirror is for controller data that was set on the current frame but was clear on the previous frame. Basically, this determines which buttons were pressed on this frame while not having been held on the last frame.
$7E00F5 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:421B - Controller Port 2 Data1 Register high byte.

This mirror is for controller data that was set on the current frame but was clear on the previous frame. Basically, this determines which buttons were pressed on this frame while not having been held on the last frame.
$7E00F6 1 byte Super Mario Bros. 2 Hardware Mirror Controller Data 1. AXSPUDLR. All frames.
$7E00F6 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:4218 - Controller Port 1 Data1 Register low byte.

This mirror is for controller data that was set on the current frame but was clear on the previous frame. Basically, this determines which buttons were pressed on this frame while not having been held on the last frame.
$7E00F7 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:421A - Controller Port 2 Data1 Register low byte.

This mirror is for controller data that was set on the current frame but was clear on the previous frame. Basically, this determines which buttons were pressed on this frame while not having been held on the last frame.
$7E00F8 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:4219 - Controller Port 1 Data1 Register high byte.

This mirror is for controller data from the previous frame.
$7E00F9 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:421B - Controller Port 2 Data1 Register high byte.

This mirror is for controller data from the previous frame.
$7E00FA 3 bytes Super Mario Bros. 1 Pointers 24-bit pointer to current level's objects, and their positions (SNES Address, Little endian)
$7E00FA 1 byte Super Mario Bros. 2 Hardware Mirror Controller Data 2. AXSPUDLR. 1 frame.
$7E00FA 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:4218 - Controller Port 1 Data1 Register low byte.

This mirror is for controller data from the previous frame.
$7E00FB 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:421A - Controller Port 2 Data1 Register low byte.

This mirror is for controller data from the previous frame.
$7E00FD 3 bytes Super Mario Bros. 1 Pointers 24-bit pointer to current level's sprites, and their positions (SNES Address, Little endian)
$7E00FD 1 byte Intro & Game Select Screens Counter Frame counter.
$7E00FE 1 byte Super Mario Bros. 2 Hardware Mirror Brightness Register
$7E00FF 1 byte Super Mario Bros. 2 Hardware Mirror NMI / Joypad Enable
$7E0100 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:2100 - Screen Display
$7E0100 1 byte Intro & Game Select Screens Hardware Mirror Screen brightness.
$7E0101 1 byte Super Mario Bros. 3/Global Index IRQ Mode index? Valid values are: { 80 40 20 60 A0 55 75 95 }

TODO: seems like this goes bitwise. Figure it out. Also, figure out what each IRQ mode is.
$7E0101 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:2101 - Object Size and Chr Size
$7E0102 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2105: BG Mode and Character Size
$7E0103 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2106: Screen Pixelation
$7E0104 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2107: BG1 Tilemap Address and Size
$7E0105 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2108: BG2 Tilemap Address and Size
$7E0106 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2109: BG3 Tilemap Address and Size
$7E0107 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $210B: Mirror of BG1 and 2 Chr Address
$7E0108 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $210D: BG1 Horizontal Scroll
This value represents the low byte address and is written to the register first.
$7E0109 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $210D: BG1 Horizontal Scroll
This value represents the high byte address and is written to the register second.
$7E010A 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $210E: BG1 Vertical Scroll
This value represents the low byte address and is written to the register first.
$7E010B 1 byte Super Mario Bros. 1 Flag "Three byte object" flag when loading level data
$7E010B 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $210E: BG1 Vertical Scroll
This value represents the high byte address and is written to the register second.
$7E010C 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $210F: BG2 Horizontal Scroll
This value represents the low byte address and is written to the register first.
$7E010D 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $210F: BG2 Horizontal Scroll
This value represents the high byte address and is written to the register second.
$7E010E 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2110: BG2 Vertical Scroll
This value represents the low byte address and is written to the register first.
$7E010F 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2110: BG2 Vertical Scroll
This value represents the high byte address and is written to the register second.
$7E0110 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2111: BG3 Horizontal Scroll
This value represents the low byte address and is written to the register first.
$7E0111 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2111: BG3 Horizontal Scroll
This value represents the high byte address and is written to the register second.
$7E0112 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2112: BG3 Vertical Scroll
This value represents the low byte address and is written to the register first.
$7E0113 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2112: BG3 Vertical Scroll
This value represents the high byte address and is written to the register second.
$7E0114 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2123: Window Mask Settings for BG1 and BG2
$7E0115 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2124: Window Mask Settings for BG3 and BG4
$7E0116 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2125: Window Mask Settings for OBJ and Color Window
$7E0117 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $212C (Main screen designation).
$7E0117 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $212C: Main Screen Designation
$7E0118 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $212D: Subscreen Designation
$7E0118 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $212D (Sub screen designation).
$7E0119 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $212E: Window Mask Designation for the Main Screen
$7E011A 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $212F: Window Mask Designation for the Subscreen
$7E011B 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2130: Color addition select
$7E011B 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2130 (Color Addition Select).
$7E011C 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2131: Color math designation
$7E011C 1 byte Intro & Game Select Screens Hardware Mirror Miror of $2131 (Color math designation).
$7E011D 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2132: Fixed color data
This value is written to the mirror first.
$7E011D 3 bytes Intro & Game Select Screens Hardware Mirror Mirror of $2132 (Fixed Color Data).

$011D - Red fixed color component.
$011E - Green fixed color component.
$011F - Blue fixed color component.
$7E011E 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2132: Fixed color data
This value is written to the mirror second.
$7E011F 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $2132: Fixed color data
This value is written to the mirror third.
$7E0120 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:420C - HDMA Enable
$7E0121 1 byte Intro & Game Select Screens Miscellaneous Value is always $7E:0124 & #$FE, but is never read in-game.
$7E0122 1 byte Intro & Game Select Screens Flag "Main program loop initialize" flag.

This flag is set during NMI. Once set, the game will go through its main program loop. When the loop is finished, it will clear the flag and wait for NMI to set it again before continuing.
$7E0124 1 byte Intro & Game Select Screens Flag General IRQ flag. If set, IRQ mode registers will be enabled
$7E0124 2 bytes Intro & Game Select Screens Counter IRQ Vertical timer. Writes to $4209 and $420A. Used to keep the "Select v Game" box at a static position.
$7E0125 1 byte Intro & Game Select Screens Hardware Mirror Mirror of $7E:4209 - V-timer low byte.
$7E0154 1 byte Super Mario Bros. 1 Flag If the value in it is not zero, run the actual game; otherwise, loop forever. It's set to a non-zero value during NMI, and it's set to zero after the game mode has been run, so that the game runs exactly once a frame - one NMI trigger per frame.
$7E0156 170 bytes Super Mario Bros. 3/Global Stack Stack RAM area reserved for everything in Super Mario All-Stars. Ends at $7E01FF.
$7E0160 1 byte Super Mario Bros. 3/Global Player Debug RAM. Setting it to $80 will allow you to cycle through the player's power-ups by using select. You can also press A / B / X / Y and Select to toggle the Kuribo's Shoe power-up.
$7E0200 2 bytes Super Mario Bros. 2 Hardware Mirror BG 1 X position
$7E0200 1 byte Super Mario Bros. 3/Global Hardware Mirror Window Mask Settings for BG1 and BG2
$7E0200 1 byte Intro & Game Select Screens Index Tilemap index for animating Luigi's head
$7E0201 1 byte Super Mario Bros. 3/Global Hardware Mirror Window Mask Settings for BG3 and BG4
$7E0201 1 byte Intro & Game Select Screens Index Tilemap index for animating Luigi's right hand
$7E0202 1 byte Super Mario Bros. 1 Direction Player direction.
$01 - Right
$02 - left
$7E0202 2 bytes Super Mario Bros. 2 Hardware Mirror BG 2 X position
$7E0202 1 byte Super Mario Bros. 3/Global Hardware Mirror Window Mask Settings for OBJ and Color Window
$7E0202 1 byte Intro & Game Select Screens Index Tilemap index for animating Peach's head
$7E0203 1 byte Super Mario Bros. 3/Global Hardware Mirror Color Addition Select
$7E0203 1 byte Intro & Game Select Screens Index Tilemap index for animating Toad
$7E0204 2 bytes Super Mario Bros. 2 Hardware Mirror BG 3 X position
$7E0204 1 byte Super Mario Bros. 3/Global Hardware Mirror Color math designation
$7E0204 1 byte Intro & Game Select Screens Index Tilemap index for animating Birdo's eyes.
This animation sequence was cut from the final game.
$7E0205 1 byte Super Mario Bros. 3/Global Hardware Mirror Fixed Color Data (red)
$7E0205 1 byte Intro & Game Select Screens Index Tilemap index for animating Birdo's right arm
$7E0206 2 bytes Super Mario Bros. 2 Hardware Mirror BG 1 Y Position, works together with $04C6 (low byte)
$7E0206 1 byte Super Mario Bros. 3/Global Hardware Mirror Fixed Color Data (green)
$7E0206 1 byte Intro & Game Select Screens Index Tilemap index for animating Birdo's tail
$7E0207 1 byte Super Mario Bros. 3/Global Hardware Mirror Fixed Color Data (blue)
$7E0207 1 byte Intro & Game Select Screens Index Tilemap index for animating Gommba's head.
This animation sequence was cut from the final game.
$7E0208 2 bytes Super Mario Bros. 2 Hardware Mirror BG 2 Y position
$7E0208 1 byte Super Mario Bros. 3/Global Hardware Mirror Main Screen Designation
$7E0208 1 byte Intro & Game Select Screens Index Tilemap index for animating Bob-omb's fuse.
This animation sequence was cut from the final game.
$7E0209 1 byte Super Mario Bros. 3/Global Hardware Mirror Subscreen Designation
$7E0209 1 byte Intro & Game Select Screens Index Tilemap index for animating Spiney's head.
This animation sequence was cut from the final game.
$7E020A 2 bytes Super Mario Bros. 2 Hardware Mirror BG 3 Y position
$7E020A 1 byte Super Mario Bros. 3/Global Hardware Mirror Window Mask Designation for the Main Screen
$7E020A 1 byte Intro & Game Select Screens Index Tilemap index for animating Pidgit.
$7E020B 1 byte Super Mario Bros. 3/Global Hardware Mirror Window Mask Designation for the Subscreen
$7E020B 1 byte Intro & Game Select Screens Index Tilemap index for animating Mario's head.

Also acts as a flag to animate Mario's left arm on frame 0 and frame 6.

Resets after 10 frames
$7E020C 1 byte Super Mario Bros. 1 Powerup Which powerup the current powerup entity is. ($00 = Mushroom, $01 = Fireflower, $02 = Star, $03 = 1-up)

Note: You can only have one powerup on the screen, hence this address is a single byte.
$7E020C 1 byte Super Mario Bros. 3/Global Clipping BG Mode and Character Size
$7E020C 1 byte Intro & Game Select Screens Index Tilemap index for animating Mario's left arm.
$7E020D 1 byte Super Mario Bros. 3/Global Hardware Mirror Screen Pixelation
$7E020D 1 byte Intro & Game Select Screens Index Tilemap index for animating Bowser's left arm.
$7E020E 1 byte Super Mario Bros. 3/Global Graphics BG mode of statusbar (Mode 1 by default)
$7E020F 1 byte Super Mario Bros. 3/Global Hardware Mirror Main screen designation of statusbar
$7E0210 2 bytes Super Mario Bros. 3/Global X Position BG1 Horizontal Scroll position

TODO: maybe break up into 2 sub addresses for low and high byte
$7E0214 2 bytes Intro & Game Select Screens Hardware Mirror Mirror of $7E:210D - BG1 horizontal scroll.

The low byte is written first and then the high byte is written second.

This mirror is only applied during IRQ.
$7E0214 2 bytes Intro & Game Select Screens Hardware Mirror BG1 Vertical scroll (IRQ) in Game Select screen
$7E0216 1 byte Intro & Game Select Screens Timer BG1 IRQ scroll timer in Game Select screen. This timer is used when scrolling right.
$7E0217 1 byte Intro & Game Select Screens Timer BG1 IRQ scroll timer in Game Select screen. This timer is used when scrolling left.
$7E0218 1 byte Super Mario Bros. 1 Flag Player's "peace" pose flag. (Used when entering vertical pipes)
$7E0218 1 byte Intro & Game Select Screens Counter Scroll index in Game Select menu. Increments by 1 when scrolling right, decrements by 1 when scrolling left.
$7E0219 1 byte Super Mario Bros. 1 X Position Player's current X position within the screen.
$7E0219 1 byte Intro & Game Select Screens Flag "File Select mode" flag
$7E021A 1 byte Intro & Game Select Screens Flag "File Select open/close" flag. When set, the File Select menu will either open if closed, or close if opened.
$7E021B 128 bytes Intro & Game Select Screens Timer "File Select open/close" timer. Counts the number of frames remaining to continue opening/closing the File Select menu.
$7E0220 1 byte Intro & Game Select Screens Flag "File Select menu open" flag. When set, the File Select menu in the Game Select screen is open.
$7E0223 1 byte Intro & Game Select Screens Timer Wait time before fading out the screen after a game has been selected.
$7E0224 1 byte Intro & Game Select Screens Flag "Begin gameplay" flag. Becomes set as soon as the player chooses a file in the Game Select screen. The flag is set to #$29 because it is set at the same time the "Begin gameplay" SFX is loaded (which is also #$29).
$7E0225 1 byte Intro & Game Select Screens Flag When $7E:00E3 decrements to this value, the timer delay for the next shine effect on the ALL-STARS logo in the intro will be set.
$7E0235 1 byte Super Mario Bros. 2 Hardware Mirror Window Mask for BG1 & BG2
$7E0236 1 byte Super Mario Bros. 1 Flag Grow vine in start of level (e.g. bonus cloud) flag.
$7E0236 1 byte Super Mario Bros. 2 Hardware Mirror Window Mask for BG3 & BG4
$7E0237 1 byte Super Mario Bros. 1 Y Position Player's Y Position
$7E0237 1 byte Super Mario Bros. 2 Hardware Mirror Window Mask for OBJ & COL
$7E0238 1 byte Super Mario Bros. 2 Hardware Mirror Color addition select
$7E0239 1 byte Super Mario Bros. 2 Hardware Mirror CGADSUB settings
$7E023A 1 byte Super Mario Bros. 2 Hardware Mirror HDMA Enable
$7E023B 1 byte Super Mario Bros. 2 Hardware Mirror Window Mask Desig. Main Screen
$7E023D 3 bytes Super Mario Bros. 2 Hardware Mirror RGB Values for backdrop color
$7E0243 1 byte Super Mario Bros. 2 Hardware Mirror Main Screen Designation
$7E024B 1 byte Super Mario Bros. 2 Hardware Mirror V-count for IRQ. Starry BG appears at screen load.
$7E024C 1 byte Super Mario Bros. 2 Hardware Mirror BG1 Tilemap Address & Size
$7E026C 5 bytes Super Mario Bros. 1 X Position Whirlpool sprite X position, high byte.
$7E0285 2 bytes Super Mario Bros. 1 DMA Graphics DMA: Source address low and high byte
$7E0287 1 byte Super Mario Bros. 1 DMA Graphics DMA: Bank byte
$7E0288 2 bytes Super Mario Bros. 1 DMA Graphics DMA: DMA size
$7E028A 2 bytes Super Mario Bros. 1 DMA Graphics DMA: VRAM destination address
$7E028C 1 byte Super Mario Bros. 1 Flag Flag to disable scenery graphics animation and most of the background animations.
$7E028C 1 byte Super Mario Bros. 3/Global Flag Shows the Game Over dialogue on the overworld.
$7E028D 1 byte Super Mario Bros. 1 Flag Flag to upload the next frame of animated FG.
$7E02A9 1 byte Super Mario Bros. 2 Flag (Don't) update palettes flag.
$7E02C5 1 byte Super Mario Bros. 3/Global Level Data Layer 2 Palette, written upon level load.
$00 -
TODO: List of possible values.
$7E02DF 3 bytes Super Mario Bros. 2 Pointers Layer 2 Map16 data pointer.
$7E02E0 1 byte Super Mario Bros. 3/Global Speed Something related about Mario running at full speed

TODO: Figure out what
$7E02F8 1 byte Super Mario Bros. 1 Flag Bonus Room flag.
$7E0350 1 byte Super Mario Bros. 3/Global Level Data Layer 2 Background, written upon level load.
$7E0364 1 byte Super Mario Bros. 1 Timer Amount of time left to make the next part of Bowser's bridge crumble
$7E0367 1 byte Super Mario Bros. 1 Timer Index to ROM table $03:D6F1 (timer delay for next Bowser fireball). Increases as a bowser fireball is launched
$7E0368 1 byte Super Mario Bros. 1 Index Index of the Bowser sprite.
$7E037C 1 byte Super Mario Bros. 3/Global Miscellaneous Used by the 'slot machine' minigame to determine xposition of the parts.

TODO: What exactly is this address for?
$7E0399 1 byte Super Mario Bros. 1 Sprites How long the vine (both in start of a level and item boxes) has grown.
$7E03A2 9 bytes Super Mario Bros. 1 Timer Hammer bros hammer throw timer.

Also related to the player interacting with the red platforms.
$7E03F2 1 byte Super Mario Bros. 1 Counter Counts the amount of bounce blocks you've created in the current level. Doesn't seem to be used for anything else.
$7E0400 896 bytes Intro & Game Select Screens VRAM Tilemap "File Select tileset" buffer
$7E0422 1 byte Super Mario Bros. 3/Global Counter Amount of coins added to the coin counter (so setting this to $02 will add 2 coins to the coin counter).
$7E0428 1 byte Super Mario Bros. 3/Global Flag Setting this to $01 in a level gives the player the star powerup for the default amount of time.

Setting this in the overworld will give the player the star powerup on the overworld, to be applied when you enter a level.
$7E0429 1 byte Super Mario Bros. 3/Global Player Player's image on the overworld.

$00 - Small
$01 - Big
$02 - Big
$03 - Leaf
$04 - Frog
$05 - Tanooki
$06 - Hammer
$07 - Jugem's Cloud
$08 - P-Wing
$09 and higher - Glitch

Does not affect the powerup upon level entrance.
Palette does not update when changing image.
$7E04B5 1 byte Super Mario Bros. 2 Flag Crystal ball has been collected flag, height of opened mouth of hawkmouth.
$7E04B7 1 byte Super Mario Bros. 2 Counter How long the dark potion rooms last.
$7E04C3 1 byte Super Mario Bros. 2 Counter HP count. (Red hearts.)
$7E04C4 1 byte Super Mario Bros. 2 Miscellaneous Amount of hearts to show + 2.
$7E04C6 1 byte Super Mario Bros. 2 Hardware Mirror BG 1 Y (low byte) position, works together with $0206. Used for effects such as the POW.
$7E04CA 1 byte Super Mario Bros. 2 Player The amount of time the player can float.
$7E04CB 1 byte Super Mario Bros. 2 Counter Amount of time the player has to charge up for before doing the super jump.
$7E04E1 1 byte Super Mario Bros. 2 Timer Flashing timer, can kill enemies.
$7E04E8 1 byte Super Mario Bros. 2 Counter Accumulative level number to continue on.
$7E04E9 1 byte Super Mario Bros. 2 Level Data Current room to continue on.
$7E04EA 1 byte Super Mario Bros. 2 Level Data Screen number to continue on.
$7E04ED 1 byte Super Mario Bros. 2 Level Data 0 = don't go out of level, 1 = go to player select screen, 2 = go to Game Over screen, 3 = go to bonus game, 4-FF = go to warp screen.
$7E04EE 1 byte Super Mario Bros. 2 Counter Current amount of lives.
$7E04EF 1 byte Super Mario Bros. 2 Miscellaneous Jar type. 0 = warp jar, 1 = regular jar, 2 = 'enclosed' jar
$7E0500 1 byte Super Mario Bros. 2 Sprites Amount of time sprites are frozen. (Stopwatch.)
$7E0533 1 byte Super Mario Bros. 2 Level Data Accumulative level number
$7E0534 1 byte Super Mario Bros. 2 Level Data Current room
$7E0535 1 byte Super Mario Bros. 2 Level Data Screen number to start out on.
$7E0551 1 byte Super Mario Bros. 3/Global Timer Player growing/shrinking animation timer. $30 is the maximum value.

Does not apply to other animations (smoke animation, fireflower animation, etc.)
$7E0552 1 byte Super Mario Bros. 3/Global Timer Player is hurt flag (flashing after they get hit)
$7E0553 1 byte Super Mario Bros. 3/Global Timer Star power timer. Does not adjust the music.
$7E0554 1 byte Super Mario Bros. 3/Global Timer Player turns into smoke timer. (When you get Leaf, Tanooki suit etc.)
$7E0555 1 byte Super Mario Bros. 3/Global Timer Mario changes pallette rapidly timer (When you get fireflower)
$7E0556 1 byte Super Mario Bros. 3/Global Timer Everything freezes timer (Activates when Mario gets hit)
$7E0557 1 byte Super Mario Bros. 3/Global Timer Player kicks object image timer
$7E0558 1 byte Super Mario Bros. 3/Global Timer Player faces screen image timer
$7E0559 1 byte Super Mario Bros. 3/Global Timer Player walks to the right in level end timer (Activates when only on ground)
$7E055A 1 byte Super Mario Bros. 3/Global Timer Player walking towards doomship timer (during that one cutscene).
$7E0566 1 byte Super Mario Bros. 3/Global Generator Generator number. Valid values:

$00 - Nothing
$01 - Flying Cheep-Cheeps
$02 - Spiny Cheep-Cheeps
$03 - ? (turns off generator and does something else...)
$04 - Para-Beetles (red and green)
$05 - Moving background clouds?
$06 - Left-moving falling platforms
$07 - Exit on treasure chest obtain?
$08 - Turns off generators?

TODO: Verify values 05, 07, and 08 and check out 03.
$7E0567 1 byte Super Mario Bros. 3/Global Timer P-Switch timer.
$7E0577 1 byte Super Mario Bros. 3/Global Player Player Kuribo shoe status

$00 - Without
$01 - With
$7E0578 1 byte Super Mario Bros. 3/Global Powerup Current player's powerup.

$00 - Small
$01 - Small
$02 - Big
$03 - Fiery
$04 - Raccoon
$05 - Frog
$06 - Tanooki
$07 - Hammer
$20 - Tanooki statue
$7E057A 1 byte Super Mario Bros. 3/Global Timer Tanooki Player's statue mode timer. Makes the player lose statue mode once it hits 00.
$7E0598 1 byte Super Mario Bros. 3/Global Overworld Flag to enable the spotlight on the overworld. Read upon overworld loading, pausing and level entry.
$7E0598 1 byte Super Mario Bros. 3/Global Overworld Flag to hide the overworld in darkness when the Game Over screen pops up. Only used in World 8's 3rd submap (with the spotlight).
$7E05A5 1 byte Super Mario Bros. 2 Timer How long it takes Phanto to initially take off after grabbing a key. Starts at #$A0
$7E05BF 8 bytes Super Mario Bros. 3/Global Y Position Extended sprite Y-position, low byte.

TODO: Verify length
$7E05C9 8 bytes Super Mario Bros. 3/Global X Position Extended sprite X position, low byte

TODO: Verify length
$7E05ED 3 bytes Super Mario Bros. 3/Global Timer Current level timer (example: $03 $02 $05 = 325 seconds left)
$7E0620 1 byte Super Mario Bros. 2 Flag 1UP has been collected flag.
$7E0628 1 byte Super Mario Bros. 2 Level Data In potion room or not. #$00 = regular level, #$01 = jar, #$02 = potion room.
$7E0629 1 byte Super Mario Bros. 2 Level Data Level number without world number added
$7E062A 1 byte Super Mario Bros. 2 Counter Amount of cherries collected
$7E062B 1 byte Super Mario Bros. 2 Counter Amount of coins you have for the bonus game
$7E062D 4 bytes Super Mario Bros. 2 Level Data Amount of levels completed per character table.
$7E0635 1 byte Super Mario Bros. 2 World World number.
$7E0671 8 bytes Super Mario Bros. 3/Global Sprites Sprite number.

TODO: Verify length; include list?
$7E06A1 13 bytes Super Mario Bros. 1 Map16 Map16 tile buffer.

Map16 tile which gets drawn off-screen as the level progresses. Tiles are drawn from top to bottom, so the first byte is for the top of the level while the last byte is for the bottom of the level.
$7E06C2 1 byte Super Mario Bros. 2 Player Player is shrinking or growing
$7E06CB 1 byte Super Mario Bros. 1 Generator Which generator to activate.
$7E06CC 1 byte Super Mario Bros. 1 Flag "Hard mode" flag. This flag is set at W5-3 and modifies sprites (makes platforms smaller and have bullet generators, etc.)
$7E06CD 1 byte Super Mario Bros. 1 Sprite Number Which enemy to generate during generators.
$7E06D9 1 byte Super Mario Bros. 1 Counter Looping maze level amount of correct checkpoints counter. Resets everytime you pass the last checkpoint of a certain part of the level.
$7E06DA 1 byte Super Mario Bros. 1 Counter Looping maze level amount of checkpoints counter. Resets everytime you pass the last checkpoint of a certain part of the level.
$7E06DB 1 byte Super Mario Bros. 1 Y Speed Springboard launch force. Later stored into $7E00A0, player Y Speed.
$7E0714 1 byte Super Mario Bros. 1 Flag Player is ducking flag. $04 = duck, $00 = normal. Unwritten when player is small.
$7E0715 3 bytes Super Mario Bros. 3/Global Routine Current player's score
$7E0716 1 byte Super Mario Bros. 1 Flag Disable player collision detection with objects flag.

Can still interact with sprites.
$7E0717 1 byte Super Mario Bros. 1 Counter Current Demo action executed
$7E0718 1 byte Super Mario Bros. 1 Timer Current Demo action's timer, counts down.
$7E071A 1 byte Super Mario Bros. 1 X Position Horizontal X coordinate of left side of the screen, high byte.
$7E071A 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $210D: BG1 X Position (high byte)
$7E071B 1 byte Super Mario Bros. 1 X Position Horizontal X coordinate of right side of the screen, high byte.
$7E071C 1 byte Super Mario Bros. 1 X Position Horizontal X coordinate of left side of the screen, low byte.
$7E071D 1 byte Super Mario Bros. 1 X Position Horizontal X coordinate of right side of the screen, low byte.
$7E0720 2 bytes Super Mario Bros. 1 VRAM Handles drawing of the layer 1 tiles? Adding 1 to it moves every layer 1 stuff to the left 1 8x8 tile.

"Is 0x04 on every odd numbered page and 0x00 on even."

TODO: Verify
$7E0725 1 byte Super Mario Bros. 1 Level Current screen number. Starts with $01 unlike traditional counters which start at $00.

Changing this seems to affect level loading in real-time. Seems to be used in maze castle levels (like 7-4)
$7E0727 1 byte Super Mario Bros. 3/Global World Current world
$7E072C 2 bytes Super Mario Bros. 1 Objects Offset of level data, used as an index for [$FA],y
$7E0733 1 byte Super Mario Bros. 1 Level Area object style

$00 - Regular (green platforms, also used in cloud levels)
$01 - Mushroom platforms
$02 - Bullet Bill Cannons
$7E0735 1 byte Super Mario Bros. 1 Level Vertical length of object, used in rendering objects into the level.
$7E0739 1 byte Super Mario Bros. 1 Sprites Offset of sprite data, used as an index for [$FD],y
$7E073A 1 byte Super Mario Bros. 1 Sprites Screen number of the most recent sprite placed into the level.
$7E073F 1 byte Super Mario Bros. 1 X Position BG1 X Position low byte.
$7E073F 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $210D: BG1 X Position (low byte)
$7E0740 1 byte Super Mario Bros. 1 Y Position BG1 Y Position low byte.
$7E0740 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $210E: BG1 Y Position (low byte)

High byte version of this address does not exist.
$7E0742 1 byte Super Mario Bros. 3/Global Flag Flag to keep N-Spade cards as is. 0 = shuffle, 1 = keep.
$7E0743 1 byte Super Mario Bros. 1 Flag Cloud bonus game level type flag (also replaces most objects with clouds as the level progresses).
$7E0744 3 bytes Super Mario Bros. 2 Pointers Layer 3 Map16 data pointer.
$7E0746 1 byte Super Mario Bros. 1 Counter Flagpole task control.

$00 - Nothing
$01 - Check if firework is applicable
$02 - Award points
$03 - Raise star flag and launch fireworks
$04 - Delay to level fadeout
$7E0747 1 byte Super Mario Bros. 1 Timer Everything freezes timer (when the player get a powerup or dies for example).
$7E0747 2 bytes Super Mario Bros. 3/Global Player Current player's powerup on the overworld.

$00 - Small
$01 - Big
$02 - Fire
$03 - Raccoon
$04 - Frog Suit
$05 - Tanooki Suit
$06 - Hammer Suit
$07 - Jugem's Cloud
$08 - P-Wing
$09 or higher - Glitch

Byte 1 is for Mario, byte 2 is for Luigi.

Behaviour of certain powerups apply once the overworld loads , not immediately upon changing the value (like Jugem's Cloud). Jugem's Cloud will also have seemingly infinite uses.
$7E074D 1 byte Super Mario Bros. 3/Global Sprites Number of pixels that a sprite has moved along the X- or Y-axis. It is set during the routine that updates a sprite's position based on its speed.
$7E074E 1 byte Super Mario Bros. 2 Graphics Enable Layer 3 image. Also controls which Layer 3 image to load.
$7E074F 9 bytes Super Mario Bros. 3/Global Sprites Sprite X position fractional bits.

TODO: Verify length
$7E0753 1 byte Super Mario Bros. 1 Player Current Player
$00 - Player 1 (Mario)
$01 - Player 2 (Luigi)

Changing this value effectively changes the input controller as well.
$7E0754 1 byte Super Mario Bros. 1 Flag Current player's small player flag.
$7E0756 1 byte Super Mario Bros. 1 Player Current player's powerup
$7E075A 1 byte Super Mario Bros. 1 Player Current player's current amount of lives.
$7E075B 1 byte Super Mario Bros. 1 Counter Current player's midway point screen number
$7E075C 1 byte Super Mario Bros. 1 Counter Current player's level number (used for dash-number display)
$7E075D 1 byte Super Mario Bros. 1 Flag Current player's hidden 1-up block can be hit flag.
$7E075E 1 byte Super Mario Bros. 1 Counter Current player's coins. (Statusbar display not updated)
$7E075F 1 byte Super Mario Bros. 1 World Current player's world.
$7E0760 1 byte Super Mario Bros. 1 World Current player's level (does not update dash-number)
$7E0761 1 byte Super Mario Bros. 1 Player Previous player's current amount of lives.
$7E0761 9 bytes Super Mario Bros. 3/Global Sprites Sprite Y position fractional bits.

TODO: Verify length
$7E0762 1 byte Super Mario Bros. 1 Counter Previous player's midway point screen number
$7E0763 1 byte Super Mario Bros. 1 Counter Previous player's level number (used for dash-number display)
$7E0764 1 byte Super Mario Bros. 1 Flag Previous player's hidden 1-up block can be hit flag.
$7E0765 1 byte Super Mario Bros. 1 Counter Previous player's coins. (Statusbar display not updated)
$7E0766 1 byte Super Mario Bros. 1 World Previous player's world.
$7E0767 1 byte Super Mario Bros. 1 World Previous player's level (does not update dash-number)
$7E0769 1 byte Super Mario Bros. 1 Flag Disable level preview flag.
$7E076A 1 byte Super Mario Bros. 1 Flag Current player's "More difficult quest" flag.
$7E0770 1 byte Super Mario Bros. 1 Routine Game operation mode.

$00 - Title screen
$01 - Main
$02 - Defeated Bowser
$03 - Game Over
$7E0772 1 byte Super Mario Bros. 1 Routine Which task to execute of the current operation mode ($7E0770).
$7E0772 1 byte Super Mario Bros. 2 Flag Layer 3 transparency flag. (Layer 3 in front of Layer 2) Used for light beams in cave levels.
$7E0773 1 byte Super Mario Bros. 1 VRAM Stripe image uploader destination VRAM address index. Indexes the tables at $0382DE (VRAM low byte) and $0382F1 (VRAM high byte).
$7E0775 1 byte Super Mario Bros. 1 Speed Camera scrolling x-speed.
$7E0775 1 byte Super Mario Bros. 2 Hardware Mirror BG Mode / Character Size / Layer 3 priority
$7E0776 1 byte Super Mario Bros. 1 Flag Pause flag. Shows the pause menu.
$7E0777 1 byte Super Mario Bros. 1 Timer Counter which disables the start button. Used when pausing the game so you can't rapidly pause/unpause. Counts down automatically.
$7E077A 1 byte Super Mario Bros. 1 Flag 2-Player game flag
$7E077F 1 byte Super Mario Bros. 1 Flag Previous player's small player flag.
$7E0780 1 byte Super Mario Bros. 1 Player Previous player's powerup.
$7E0781 1 byte Super Mario Bros. 1 Flag "More difficult quest" flag for previous player
$7E0782 1 byte Super Mario Bros. 2 Timer Amount of times 'No Bonus' should flash. (Up to 7F)
$7E0783 1 byte Super Mario Bros. 2 Timer Amount of frames 'No Bonus' remains present or not. (00 slowest, 01 fastest)
$7E078A 1 byte Super Mario Bros. 2 Timer Amount of time to wait before changing music back to the original level music again. Used for several occasions like the Crystal Ball collecting scene.
$7E078F 1 byte Super Mario Bros. 1 Timer Countdown timer which when it hits 0, it reduces the level timer by 1. Lower values means the level timer counts down faster.
$7E079B 1 byte Super Mario Bros. 1 Timer Used in generators: Timer to spawn the next sprite.

TODO: Seems to behave differently for the bullet bill generator
$7E07AE 1 byte Super Mario Bros. 1 Timer Player invincibility (after getting hit) timer.
$7E07AF 1 byte Super Mario Bros. 1 Timer Player Star power timer.
$7E07B7 7 bytes Super Mario Bros. 1 Miscellaneous Table of randomly generated numbers.
$7E07CE 6 bytes Super Mario Bros. 1 Player Player 1's current score. 1 digit each byte. Example: $01 $02 $03 $04 $05 $06 = 1234560 points
$7E07D4 6 bytes Super Mario Bros. 1 Player Player 2's current score.
$7E07E9 3 bytes Super Mario Bros. 1 Timer The level's current timer.
First byte is the hundreds, second byte is the tens, and the third byte is the ones.
$7E07FC 1 byte Super Mario Bros. 1 Flag "More difficult quest" flag.

Actually affects the world and level number display to show the star.
$7E07FD 1 byte Super Mario Bros. 1 World Residual address from NES SMB1: World number for the secret continue function (A + Start) of NES SMB1
$7E0800 544 bytes Super Mario Bros. 1 OAM Tilemap OAM table.
$7E0800 544 bytes Super Mario Bros. 2 OAM Tilemap OAM table.
$7E0800 512 bytes Intro & Game Select Screens OAM Tilemap OAM low table mirror
$7E0886 1 byte Super Mario Bros. 3/Global OAM Tile Number Miniature player's tile number in the

WORLD N
MARIO/LUIGI x N

blue screen popup on the overworld.
$7E0A00 32 bytes Intro & Game Select Screens OAM Tilemap OAM high table mirror (actual).
$7E0A20 128 bytes Super Mario Bros. 2 OAM Tilemap Table that determines the size of a sprite's tile - 8x8 (#$00) or 16x16 (#$02). Each byte corresponds to 4 OAM bytes. Stores to $0A00-$0A1F (where each 2 bits correspond to 4 OAM bytes.)
$7E0A20 128 bytes Intro & Game Select Screens OAM Tilemap OAM high table mirror (expanded).

Each byte only sets the lowest two bits that then get inserted into $7E:0A00.
$7E0AC0 1 byte Intro & Game Select Screens Flag If non-zero CGRAM will update (transfer $7F:9200 to CGRAM).
$7E0B00 512 bytes Super Mario Bros. 2 Palette CGRAM (palette) table.
$7E0B75 1 byte Super Mario Bros. 1 Pointers Pause window states.

$00 - Expand
$01 - Maintain pause window, wait for input, etc.
$02 - Option selected (?)
$03 - Collapse
$7E0B78 1 byte Super Mario Bros. 1 Timer Timer which increases every frame when paused. Used to do the cursor blinking animation.
$7E0B9A 1 byte Super Mario Bros. 1 HDMA How big the windowing HDMA circle is of the player's and Peach's portrait after rescuing the princess. Maximum valid value is $30.
$7E0BA5 1 byte Super Mario Bros. 1 Flag Animation locked flag. $01 Locks the player animation.

Seems to be only used during the fadeout to a new world after rescuing Toad.
$7E0E4F 1 byte Super Mario Bros. 1 Flag Pipe fadeout flag - when taking a pipe, makes all screen fades mosaic and hides OAM tiles.
$7E0E7E 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2105: Mosaic/pixelation register.
$7E0EC0 2 bytes Super Mario Bros. 1 Index Index to the final background map16 page written. (Every $0100 bytes of RAM $7ED000 is a page)
$7E0EC2 1 byte Super Mario Bros. 1 Flag Current player's character graphics.

$00 - Mario's graphics
$01 - Luigi's graphics
$7E0ED1 1 byte Super Mario Bros. 1 Flag "Starry Night" background mode flag. Enables IRQ parallax scrolling and other things.
$7E0ED2 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2110: BG2 Y Position (low byte)
$7E0ED3 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2110: BG2 Y Position (high byte)
$7E0EDE 1 byte Super Mario Bros. 1 Flag IRQ-related flag. $00 during fades, $01 during normal levels and $02 during Starry Night levels.
$7E0EE0 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2132: Direct Color Register
$7E0EE1 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2132: Direct Color Register
$7E0EE2 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2132: Direct Color Register
$7E0EEE 2 bytes Super Mario Bros. 1 Hardware Mirror if $7E0EF1 (starry night IRQ flag) is set:
Mirror of $210F: BG2 Horizontal scroll.

else:
Mirror of $2111: BG3 Horizontal scroll.
$7E0EF2 1 byte Super Mario Bros. 1 Counter IRQ V-Timer thing. #$AF during Starry Night levels to do the parallax effect, #$1F during other levels.
$7E0EFD 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $210F: BG2 X Position (low byte)
$7E0EFE 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $210F: BG2 X Position (high byte)
$7E0F4E 1 byte Super Mario Bros. 1 Index Sprite index of latest generated Bowser fire.
$7E1000 512 bytes Super Mario Bros. 1 Palette Level Palette
$7E1019 1 byte Super Mario Bros. 3/Global Counter An unused counter variable which controls how many times you get to play the Spade minigame. Setting the value to any value besides 00 during the game will allow you to keep trying until either you win, or the counter reaches zero (whichever comes first). Simply press A, B, or Start to spin the reels again.
$7E116C 14 bytes Super Mario Bros. 2 VRAM Tilemap Line of white squares to display how many levels there are in current world. 2 bytes per tile. 1st byte = tilemap, 2nd byte = properties.
$7E118E 1 byte Super Mario Bros. 2 VRAM Tilemap World number in beginning of level display tilemap
$7E118F 1 byte Super Mario Bros. 2 VRAM Tilemap World number in beginning of level display properties
$7E1190 1 byte Super Mario Bros. 2 VRAM Tilemap Dash in beginning of level display tilemap
$7E1191 1 byte Super Mario Bros. 2 VRAM Tilemap Dash in beginning of level display properties
$7E1192 1 byte Super Mario Bros. 2 VRAM Tilemap Level number in beginning of level display tilemap
$7E1193 1 byte Super Mario Bros. 2 VRAM Tilemap Level number in beginning of level display properties
$7E11B4 1 byte Super Mario Bros. 2 Counter Amount of lives in char. select, 10s
$7E11B5 1 byte Super Mario Bros. 2 VRAM Tilemap Properties of lives in char. select, 10s
$7E11B6 1 byte Super Mario Bros. 2 Counter Amount of lives in char. select, 1s
$7E11B7 1 byte Super Mario Bros. 2 VRAM Tilemap Properties of lives in char. select, 1s
$7E11BD 6 bytes Super Mario Bros. 2 VRAM Tilemap Tilemap and properties of number of 'World
$7E1200 1 byte Super Mario Bros. 3/Global Sound Effect Sound effects channel 1
$7E1201 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2100: Brightness settings.

Automatically goes into F-Blank when brightness is 0.
$7E1201 1 byte Super Mario Bros. 3/Global Sound Effect Sound effects channel 2
$7E1202 1 byte Super Mario Bros. 3/Global Music Current music number. Write $F2 to lower the volume, and $80 to fade out the music, although doing this disallows you from pausing inside levels.
$7E1203 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $420C: Enable HDMA channels
$7E1203 1 byte Super Mario Bros. 3/Global Sound Effect Sound effects channel 3
$7E1204 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2123: Window Mask Settings for BG1 and 2
$7E1205 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2124: Window Mask Settings for BG3 and 4
$7E1206 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2125: Window Mask Settings for OAM and color window
$7E1207 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $212E: Window Mask Designation for main screen
$7E1208 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $212F: Window Mask Designation for sub screen
$7E1209 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2130: Color addition select
$7E120A 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2131: CGADSUB
$7E120B 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $212C: Main Screen Designation
$7E120C 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $212D: Sub Screen Designation
$7E120D 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2105: Screen mode
$7E120E 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2128: Window 2 left position
$7E120F 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2129: Window 2 right position
$7E1210 1 byte Super Mario Bros. 1 Hardware Mirror Mirror of $2132: Direct color register
$7E1300 512 bytes Super Mario Bros. 3/Global Palette A buffer for the entire palette, both in levels and on the overworld. It may be uploaded to CGRAM depending on $1500.
$7E1400 64 bytes Super Mario Bros. 1 HDMA The red intensity of the HDMA background colors. Seems to be used in indirect HDMA to $2132, HDMA channel 5
$7E1408 1 byte Super Mario Bros. 2 Counter Amount of coins in bonus game, 10s (if low byte is a blank tile, this is used as 1s)
$7E1409 1 byte Super Mario Bros. 2 VRAM Tilemap Properties of coins in bonus game, 10s
$7E140A 1 byte Super Mario Bros. 2 Counter Amount of coins in bonus game, 1s
$7E140B 1 byte Super Mario Bros. 2 VRAM Tilemap Properties of coins in bonus game, 1s
$7E142A 1 byte Super Mario Bros. 2 Counter Amount of lives in bonus game, 10s
$7E142B 1 byte Super Mario Bros. 2 VRAM Tilemap Properties of lives in bonus game, 10s
$7E142C 1 byte Super Mario Bros. 2 Counter Amount of lives in bonus game, 1s
$7E142D 1 byte Super Mario Bros. 2 VRAM Tilemap Properties of lives in bonus game, 1s
$7E1460 96 bytes Super Mario Bros. 1 HDMA The green intensity of the HDMA background colors. Seems to be used in indirect HDMA to $2132, HDMA channel 6
$7E14C0 96 bytes Super Mario Bros. 1 HDMA The blue intensity of the HDMA background colors. Seems to be used in indirect HDMA to $2132, HDMA channel 7
$7E1500 1 byte Super Mario Bros. 3/Global Palette A flag that determines whether or not to upload the data at $1300. If this is nonzero, $1300-$14FF will be uploaded to CGRAM and $1500 will be cleared to zero. The relevant check is at $20F923.
$7E1520 96 bytes Super Mario Bros. 1 HDMA Indirect HDMA Table for $7E1400 - HDMA red intensity, channel 5.
$7E1560 64 bytes Super Mario Bros. 1 HDMA Indirect HDMA Table for $7E1460 - HDMA green intensity, channel 6.
$7E15A0 64 bytes Super Mario Bros. 1 HDMA Indirect HDMA Table for $7E14C0 - HDMA blue intensity, channel 7.
$7E1600 1 byte Super Mario Bros. 1 Sound Effect Sound effect channel 1
$7E1601 1 byte Super Mario Bros. 1 Sound Effect Sound effect channel 2
$7E1602 1 byte Super Mario Bros. 1 Music Music channel
$7E1603 1 byte Super Mario Bros. 1 Sound Effect Sound effect channel 3
$7E1680 1 byte Super Mario Bros. 1 Flag "Pause" flag after you rescue the princess.

TODO: has another purpose too?
$7E19AB 1 byte Super Mario Bros. 3/Global Player Mario powerup status in the Battle Game mode.
$00 - Small
$01 - Big
$7E19AC 1 byte Super Mario Bros. 3/Global Player Luigi powerup status in the Battle Game mode.
$00 - Small
$01 - Big
$7E1A25 9 bytes Super Mario Bros. 3/Global Y Position Sprite Y position, low byte

TODO: Verify length
$7E1A2D 9 bytes Super Mario Bros. 3/Global X Position Sprite X position, high byte

TODO: Verify length
$7E1A35 9 bytes Super Mario Bros. 3/Global X Position Sprite X position, low byte

TODO: Verify length
$7E1CFE 1 byte Super Mario Bros. 3/Global Miscellaneous Something related to Magic Wand's image

TODO: Verify. Is there really a RAM address for something trivial like this?
$7E1D80 28 bytes Super Mario Bros. 3/Global Powerup What items Player 1 has in his inventory on the overworld.

$00 - Nothing
$01 - Mushroom
$02 - Fire Flower
$03 - Leaf
$04 - Frog Suit
$05 - Tanooki suit
$06 - Hammer suit
$07 - Jugem's Cloud
$08 - P-wing
$09 - Star
$0A - Anchor
$0B - Hammer
$0C - Warp Whistle
$0D - Music box
$0E-FF - Unused
$7E1D9C 28 bytes Super Mario Bros. 3/Global Powerup What items Player 2 has in his inventory on the overworld.

$00 - Nothing
$01 - Mushroom
$02 - Fire Flower
$03 - Leaf
$04 - Frog Suit
$05 - Tanooki suit
$06 - Hammer suit
$07 - Jugem's Cloud
$08 - P-wing
$09 - Star
$0A - Anchor
$0B - Hammer
$0C - Warp Whistle
$0D - Music box
$0E-FF - Unused
$7E1DA2 1 byte Super Mario Bros. 3/Global Counter Current player's coins
$7E1DE0 1 byte Super Mario Bros. 2 Music SFX panel 1
$7E1DE1 1 byte Super Mario Bros. 2 Music SFX panel 2
$7E1DE2 1 byte Super Mario Bros. 2 Music Current Music
$7E1DE3 1 byte Super Mario Bros. 2 Music SFX panel 3
$7E1E84 18 bytes Super Mario Bros. 3/Global Objects N-Spade cards. 00 = Mushroom, 01 = Fire Flower, 02 = Star, 03 = 1-up, 04 = 10 coins, 05 = 20 coins. Anything beyond that is glitched. Layout goes from top-left to bottom-right.
$7E1EBB 3 bytes Super Mario Bros. 3/Global Pointers Pointer to level object data (SNES Address, Little endian)
$7E1F55 1 byte Super Mario Bros. 3/Global Overworld Amount of times the music box is supposed to play on the overworld. Is set to $02 when you first use a music box.
$7E1F9C 2 bytes Super Mario Bros. 3/Global Sprite Number Smoke image sprite number

TODO: Verify length
$7E1F9F 2 bytes Super Mario Bros. 3/Global Y Position Smoke image Y position.

TODO: Verify length
$7E1FA2 2 bytes Super Mario Bros. 3/Global X Position Smoke image X position.

TODO: Verify length
$7E1FC8 8 bytes Super Mario Bros. 3/Global Sprite Number Extended sprite number. $15 = laser from Bowser's Castle

TODO: Verify length, get list of values
$7E2000 45056 bytes Super Mario Bros. 1 Map16 Tile Layer 2 Map16 Tiles
$7E2000 28672 bytes Super Mario Bros. 2 Map16 Layer 1 Map16 table for the entire level, low byte.
$7E3965 1 byte Super Mario Bros. 3/Global Miscellaneous Number of coins needed to activate the White Mushroom House in a level that has one. Set by sprite D4.
$7E3966 1 byte Super Mario Bros. 3/Global Miscellaneous How many coins have been collected in the current level so far.
$7E3970 1 byte Super Mario Bros. 3/Global Flag Flag that indicates that the white mushroom house has been spawned once. When it's set, it's not possible to spawn another white mushroom house.
$7E9000 28672 bytes Super Mario Bros. 2 Map16 Layer 1 Map16 table for the entire level, high byte.
$7ED000 3328 bytes Super Mario Bros. 1 Map16 Tilemap Layer 2 Map16 tilemap
$7F2000 40960 bytes Super Mario Bros. 2 Map16 Layer 2 Map16 table for the entire level.
$7F3000 2688 bytes Super Mario Bros. 1 Map16 Layer 3 Map16 tilemap, read upon level load for the individual VRAM tiles located around $04:BD09.

TODO: Confirm size, size of ROM address, format of ROM address, and $7F2000 & $7F2004,x
$7F8000 800 bytes Intro & Game Select Screens VRAM Tilemap Tilemap buffer for BG1.
$7F9000 959 bytes Super Mario Bros. 3/Global HDMA Windowing HDMA table.

TODO: Verify length. Having an odd number for a windowing table is odd.
$7F9200 200 bytes Intro & Game Select Screens Palette Palette buffer.
$7F9200 200 bytes Intro & Game Select Screens Palette Palette buffer.
$7FC000 2400 bytes Super Mario Bros. 2 Map16 Layer 3 Map16 table for the current room.
$7FFB00 1 byte Super Mario Bros. 1 World World number loaded from save file. Used in order to load the correct world number after the title screen.
$7FFB01 1 byte Super Mario Bros. 1 Level Level number loaded from save file, typically 0 due to how SMB1's save system works. Setting this anyway displays the level number you set it to, but doesn't load that specific level. Use $7FFB02 for that.
$7FFB02 1 byte Super Mario Bros. 1 Level Level number loaded from save file, but it's typically 0 due to how SMB1's save system works. Read after starting the game from title screen. Setting this changes which level the game starts at.
$7FFB03 1 byte Super Mario Bros. 1 Counter Player 1 amount of lives loaded from save file. Read after starting the game from title screen.
$7FFB04 1 byte Super Mario Bros. 1 Counter Player 2 amount of lives loaded from save file. Read after starting the game from title screen.
$7FFB05 1 byte Super Mario Bros. 1 Flag More difficult quest flag loaded from save file.
$7FFB06 1 byte Super Mario Bros. 1 Flag 2-Player flag, loaded from save file. Affects the game's title screen menu.
$7FFF00 1 byte Global Index The current game being played. Used to run the appropriate NMI and IRQ routines of the games.

$00 - Nintendo presents, hall screen, game select screen, etc.
$02 - Super Mario Bros. 1
$04 - Super Mario Bros. The Lost Levels
$06 - Super Mario Bros. 2
$08 - Super Mario Bros. 3

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

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


Total queries: 24

Menu

Follow Us On

  • Facebook
  • Twitter
  • YouTube
  • Instagram

Affiliates

  • Talkhaus
  • SMBX Community
  • GTx0
  • Super Luigi Bros
  • ROMhacking.net
  • MFGG
  • Gaming Reinvented