Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
Super Mario Bros./RAM map
Jump to navigation
Jump to search
The following article is a RAM map for Super Mario Bros..
This data is relevant to Super Mario Bros. (JU) (PRG0) [!] and may not be correct for other versions.
Table
RAM | Information | ||||||
---|---|---|---|---|---|---|---|
0002 | Y-axis position (for Mario) | ||||||
0005 | X-axis position (for Mario) | ||||||
000A | Button state
| ||||||
000B | Direction-pad state (vertical)
| ||||||
000D | Button state
| ||||||
000E* | Mario mode
| ||||||
000F* | Enemy mode
| ||||||
0014* | Show sprite (bool) | ||||||
0016* | Current enemy type
| ||||||
001B* | Current power-up
| ||||||
001D | Indication value for Mario
| ||||||
0023 | Indication value for power-ups
| ||||||
002A* | Coin anim (?) | ||||||
002B* | Coin anim (?) | ||||||
002C* | Coin anim (?) | ||||||
002D* | Coin anim (?) | ||||||
002E* | Coin anim (?) | ||||||
002F* | Coin anim (?) | ||||||
0030* | Coin anim (?) | ||||||
0031* | Coin anim (?) | ||||||
0032* | Run 200pts animation or throw hammer (?) | ||||||
0033* | Facing direction (for Mario)
| ||||||
0039* | Power-up type on screen
| ||||||
0045 | Facing direction (for Mario)
| ||||||
0046 | Enemy Direction | ||||||
0047 | Enemy Direction | ||||||
004B | Mushroom Sprite Direction
| ||||||
0057 | Horizontal speed (pos/neg) | ||||||
0058 | Enemy speed (pos/neg) | ||||||
0059 | Enemy speed (pos/neg) | ||||||
005A | Enemy speed (pos/neg) | ||||||
006D* | Horitonal position (?) | ||||||
0070 | Current page (?) | ||||||
0071 | Current page (?) | ||||||
0072 | Current page (?) | ||||||
0073 | Current page - 1 (?) | ||||||
0086* | X-axis position (for Mario) | ||||||
0087* | Current enemy 1 sprite x location | ||||||
0088* | Current enemy 2 sprite x location | ||||||
008C* | Current power up sprite x location | ||||||
009F | Vertical speed | ||||||
00B5 | Appears to be the screen height multiplier (ie [mario's y location at 00CE] * [this byte] = [mario's true y val]) | ||||||
00CE* | Mario sprite y pos | ||||||
00CF* | Enemy 1 sprite y pos | ||||||
00D0* | Enemy 2 sprite y pos | ||||||
00D4* | Power up sprite y pos | ||||||
03AD | Mario x pos | ||||||
03AE | Enemy x pos | ||||||
03B8 | Mario vertical pos | ||||||
03B9 | Enemy vertical pos | ||||||
03C4* | Mario palette # | ||||||
0400 | Horizontal movement counter | ||||||
0416 | Mario vert position | ||||||
0433 | Mario vertical speed | ||||||
0450 | F8 if running | ||||||
0456 | 28 if running | ||||||
0490* | FF normal game play allows horizontal movement | ||||||
04C4 | power up location 1 | ||||||
04C6 | power up location 2 | ||||||
06CE | Uses Bit 0 to toggle between the 2 fireballs | ||||||
06D4 | gold color cycle | ||||||
06D5 | Mario state (?) (B8 - small stand, [60, 70, 80] - small walk cycle, C8 - big stand, 20 - big jump, [00, 10, 20] - bigwalk cycle, 50 - crouch) | ||||||
06FC | buttons pressed | ||||||
0700 | x speed | ||||||
0701 | is skidding | ||||||
0702 | E4 - is running, 30 - skidding, 98 normal | ||||||
0705 | some kind of horizontal movement counter, doesnt count while in air | ||||||
070B | if true, runs big-small animation (doesnt affect state though) | ||||||
0714* | 04 when crouching | ||||||
071A | current level room | ||||||
071B | next level room | ||||||
071C* | affects marios Horiz pos (on screen only though?) | ||||||
071D* | affects marios Horiz pos (on screen only though?) | ||||||
071F | scroll speed? | ||||||
0743 | if true, is cloud level (game sets to $03), can be set mid level | ||||||
0744 | affects background color | ||||||
0747 | timer (?) pauses enemies while set | ||||||
074A | Buttons pressed | ||||||
074E | "Gold" block pallette - 00 turns blocks into water world and makes bubble, but no swimming | ||||||
0752 | if not 00 will crash game when level load | ||||||
0753 | affects mario/luigi if set before level load, but prevents movement in level if not 00 | ||||||
0754 | if true, is small | ||||||
0756 | Player Power-Up State
Does not alter sprite or color palette (i.e. small Mario fires fireballs) | ||||||
0757 | set to 01 during "prelevel" screen | ||||||
075A | lives | ||||||
075E | coins | ||||||
075F | Current World number minus one. This gets set to 23 when warp glitch in 1-2 takes you to level -1 | ||||||
0770* | game mode (00 - demo, 01 - normal, 02 - End World, 03 - End Game (?) ) (set to 01 at the title screen and you start the game with the title screen showing ) | ||||||
0771 | |||||||
0772* | 00 restarts level | ||||||
0773* | Level palette (00 - normal, 01 - underwater, 02 - night, 03 - underground, 04 - castle) | ||||||
0774 | ?? changes on game and level start. crashes game if changed | ||||||
0775 | scroll speed (?) | ||||||
0776* | is paused (bool) | ||||||
0777 | timer (set when pausing/unpausing | ||||||
0778* | affects blocks | ||||||
0779* | affects colors.. most values crash, 1E default, 1F makes it grey scale | ||||||
077A* | if true, will load luigi when mario dies. you have to unset 0753 to move with luigi though | ||||||
0780* | timer - (all timers count down from whatever value they are set to) | ||||||
0781* | timer - fired when fireball shot | ||||||
0782* | timer - fired when jumping | ||||||
0783* | timer | ||||||
0784* | timer | ||||||
0785* | timer | ||||||
0786* | timer | ||||||
0787 | ?? | ||||||
0788* | timer | ||||||
0789 | ?? | ||||||
078A* | timer | ||||||
078B* | timer | ||||||
078C* | timer | ||||||
078D* | timer | ||||||
078E* | timer | ||||||
078F* | timer | ||||||
0790* | timer | ||||||
0791* | timer | ||||||
0792* | timer | ||||||
0793* | timer | ||||||
0794* | timer | ||||||
0795* | timer - fired when you fall down a pit | ||||||
0796* | timer | ||||||
0797* | timer | ||||||
0798* | timer | ||||||
0799* | timer | ||||||
079A* | timer | ||||||
079B* | timer | ||||||
079C* | timer | ||||||
079D* | timer | ||||||
079E* | flashing timer (when you get hit and are invincible for a short while) | ||||||
079F* | starman timer | ||||||
07A0* | timer - "prelevel" screen timer, fired again when level starts | ||||||
07A1* | timer | ||||||
07A2* | timer - counts how long before demo is run on main screen | ||||||
07A7 | ?? rapidly changing even when paused | ||||||
07A8 | ?? rapidly changing even when paused | ||||||
07A9 | ?? rapidly changing even when paused | ||||||
07AA | ?? rapidly changing even when paused | ||||||
07AB | ?? rapidly changing even when paused | ||||||
07AC | ?? rapidly changing even when paused | ||||||
07AD | ?? rapidly changing even when paused | ||||||
07B1* | if true, you wont "die" after falling or getting hit while small. you will be unable to move at the bottom of the screen though until you set it to 00) | ||||||
07BD* | timer (?) 10 when mushroom/fireflower block last hit (fired when power up grabbed or coin block hit) | ||||||
07D7* | high score - 1000000s | ||||||
07D8* | high score - 100000s | ||||||
07D9* | high score - 10000s | ||||||
07DA* | high score - 1000s | ||||||
07DB* | high score - 100s | ||||||
07DC* | high score - 10s | ||||||
07DD* | mario score - 1000000s | ||||||
07DE* | mario score - 100000s | ||||||
07DF* | mario score - 10000s | ||||||
07E0* | mario score - 1000s | ||||||
07E1* | mario score - 100s | ||||||
07E2* | mario score - 10s | ||||||
07E3* | luigi score - 1000000s | ||||||
07E4* | luigi score - 100000s | ||||||
07E5* | luigi score - 10000s | ||||||
07E6* | luigi score - 1000s | ||||||
07E7* | luigi score - 100s | ||||||
07E8* | luigi score - 10s | ||||||
07ED* | coins 10s (on screen only) | ||||||
07EE* | coins 1s (on screen only) | ||||||
07F8* | time - 100s | ||||||
07F9* | time - 10s | ||||||
07FA* | time - 1s | ||||||
07FC* | if true, game is harder (set after you beat the game) |