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: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(Improvements; incomplete) |
||
Line 9: | Line 9: | ||
!'''RAM''' || '''Information''' | !'''RAM''' || '''Information''' | ||
|- | |- | ||
|0002 || | |0002 || Y-axis position (for Mario) | ||
|- | |- | ||
|0005 || | |0005 || X-axis position (for Mario) | ||
|- | |- | ||
|000A || Button | |000A || Button state | ||
* 00 - No button | |||
* 04 - A | |||
* 08 - B | |||
|- | |- | ||
|000B || | |000B || Direction-pad state (vertical) | ||
*04 - Down | |||
*08 - Up | |||
|- | |- | ||
|000D || Button | |000D || Button state | ||
* 00 - No button | |||
* 04 - A | |||
* 08 - B | |||
|- | |- | ||
|000E*|| Mario mode | |000E*|| Mario mode | ||
* 00 - Leftmost of screen | |||
* 01 - Climbing vine | |||
* 02 - Entered pipe | |||
* 03 - Pipe2 | |||
* 04 - Autowalk | |||
* 05 - Autowalk | |||
* 06 - Mario dies | |||
* 08 - Normal | |||
* 09 - Cannot move | |||
|- | |- | ||
|000F*|| Enemy mode | |000F*|| Enemy mode | ||
* 00 - Not shown | |||
* 01 - Shown | |||
|- | |- | ||
|0014*|| Show sprite (bool) | |0014*|| Show sprite (bool) | ||
|- | |- | ||
|0016*|| Current | |0016*|| Current enemy type | ||
* 06 - Goomba | |||
* 11 - Lakitu | |||
* 2A - Surfing Lift | |||
|- | |- | ||
|001B*|| Current power up 2E - Mushroom/ | |001B*|| Current power-up | ||
* 2E - Mushroom/Fire | |||
|- | |- | ||
|001D || 00 | |001D || Indication value for Mario | ||
* 00 - Standing | |||
* 01 - Jumping | |||
* 02 - Falling | |||
* 03 - Sliding down flagpole | |||
|- | |- | ||
|0023 || | |0023 || Indication value for power-ups | ||
* 06+ - Power-up checking routine is run | |||
* 80 - Power-up on screen | |||
|- | |- | ||
|002A*|| Coin anim (?) | |002A*|| Coin anim (?) | ||
Line 70: | Line 80: | ||
|0032*|| Run 200pts animation or throw hammer (?) | |0032*|| Run 200pts animation or throw hammer (?) | ||
|- | |- | ||
|0033*|| 00 | |0033*|| Facing direction (for Mario) | ||
*00 - F1 - Right | |||
*F2 - FF - Left | |||
|- | |- | ||
|0039*|| Power up type on screen | |0039*|| Power-up type on screen | ||
*00 - Mushroom | |||
*01 - Fire Flower | |||
*02 - Starman | |||
*03 - 1UP) | |||
|- | |- | ||
|0045 || Mario | |0045 || Facing direction (for Mario) | ||
*01 - Right | |||
*02 - Left | |||
|- | |- | ||
|0046 || Enemy Direction | |0046 || Enemy Direction | ||
Line 80: | Line 98: | ||
|0047 || Enemy Direction | |0047 || Enemy Direction | ||
|- | |- | ||
|004B || Mushroom Sprite Direction | |004B || Mushroom Sprite Direction | ||
*01 - Right | |||
*02 - Left | |||
|- | |- | ||
|0057 || | |0057 || Horizontal speed (pos/neg) | ||
|- | |- | ||
|0058 || | |0058 || Enemy speed (pos/neg) | ||
|- | |- | ||
|0059 || | |0059 || Enemy speed (pos/neg) | ||
|- | |- | ||
|005A || | |005A || Enemy speed (pos/neg) | ||
|- | |- | ||
|006D*|| Horitonal position (?) | |006D*|| Horitonal position (?) | ||
|- | |- | ||
|0070 || | |0070 || Current page (?) | ||
|- | |- | ||
|0071 || | |0071 || Current page (?) | ||
|- | |- | ||
|0072 || | |0072 || Current page (?) | ||
|- | |- | ||
|0073 || | |0073 || Current page - 1 (?) | ||
|- | |- | ||
|0086*|| Mario | |0086*|| X-axis position (for Mario) | ||
|- | |- | ||
|0087*|| | |0087*|| Current enemy 1 sprite x location | ||
|- | |- | ||
|0088*|| | |0088*|| Current enemy 2 sprite x location | ||
|- | |- | ||
|008C*|| | |008C*|| Current power up sprite x location | ||
|- | |- | ||
|009F || Vertical speed | |009F || Vertical speed | ||
|- | |- | ||
|00B5 || | |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 | |00CE*|| Mario sprite y pos | ||
|- | |- | ||
|00CF*|| | |00CF*|| Enemy 1 sprite y pos | ||
|- | |- | ||
|00D0*|| | |00D0*|| Enemy 2 sprite y pos | ||
|- | |- | ||
|00D4*|| Power up sprite y pos | |00D4*|| Power up sprite y pos | ||
|- | |- | ||
|03AD || | |03AD || Mario x pos | ||
|- | |- | ||
|03AE || | |03AE || Enemy x pos | ||
|- | |- | ||
|03B8 || | |03B8 || Mario vertical pos | ||
|- | |- | ||
|03B9 || | |03B9 || Enemy vertical pos | ||
|- | |- | ||
|03C4*|| | |03C4*|| Mario palette # | ||
|- | |- | ||
|0400 || | |0400 || Horizontal movement counter | ||
|- | |- | ||
|0416 || | |0416 || Mario vert position | ||
|- | |- | ||
|0433 || Mario vertical speed | |0433 || Mario vertical speed |
Revision as of 10:21, 27 July 2006
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 | fire ball counter (?) increases when fireball thrown | ||||||
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) |