Banner
Views: 714,136,319
Time:
14 users online: Aqua-Grove-Prod, chickaDEE Magazine, Conal, o Erik, EvmanX, fatelifesthefans, Giftshaven, Maarfy, MercuryPenny, SnowyBot, System, Teyla, ThePat545, westslasher2 - Guests: 32 - Bots: 130Users: 37,291 (1,617 active)
Latest: jpegsarebad
Winter 2019 C3 Content Spotlight
Falconpunch's TotMK Graphics Showcase!
Not logged in.
SMW Memory Map
Displaying 100 out of 2947 addresses. Show Waiting Addresses (30)
Filter
Link
Address
Hexadecimal number for a partial address. 6-digit number for a full address. Use - to denote a range. Use , to list more than one address.
Length
Type
Enable JavaScript to use multiple regions.
Region
Hold control to select multiple. Check "All" to select all at once.

Type
Description
Separate each individual keyword with spaces. Surround a phrase with quotes to look for the exact phrase, or with / to use a PCRE regular expression. Prepend with - to exclude a keyword or phrase, with + to require a whole word or phrase, or with -+ to exclude a whole word or phrase. ? matches any character, * matches any amount of characters.
 
Pages: « 1 2 3 4 5 629 30 » Per Page: 25 50 75 100 150 500 All
ROM Address Length Type Description Details
$00BEB0 268 bytes Subroutine (JSL) SMW's Map16-tile-generating routine. It uses values of $9C to determine which tile to generate, but these values are hardcoded. (See RAM address $9C.) This is the main part; $00BFBC runs the codes for each tile.
$00BFBC 67 bytes Subroutine (JSR) A subroutine used with $00BEB0; it runs different codes depending on the value of $9C. The pointers for the different values begin at $00BFC9. They go from 01 to 1B, although the actual codes are kind of weird...the pointers vary depending on which Map16 page the tile is on, whether or not item memory should be affected, and if there are special cases (such as the Yoshi coin, which generates two tiles simultaneously).
$00C00D 86 bytes Subroutine (JSR) The subroutine that sets item memory bits. It is called during the subroutine at $00BEB0 for values of $9C that utilize item memory.
$00C06B 9 bytes Misc. Tiles to generate on Map16 page 0, used for values 01-09 of $9C. Note that the first byte is unused.
$00C074 54 bytes Subroutine (JSR) SMW's subroutine for generating tiles on Map16 page 0. $00C077 is an alternate entry point to this routine; if it is used instead, then the tile generation will not affect item memory.
$00C0B2 15 bytes Misc. Tiles to generate on Map16 page 1, used for values 0A-17 of $9C.
$00C0C1 58 bytes ASM A portion of code used in SMW for generating tiles on Map16 page 1. $00C0C4 is an alternate entry point to this routine; if it is used instead, then the tile generation will not affect item memory.
$00C0FB 177 bytes ASM The portion of code in SMW's Map16-tile-generating routine that changes the actual graphics of the tile. Both $00C074 and $00C0C1 use it (the former jumps to it, and it immediately follows the latter).
$00C29E 72 bytes Misc. BG Tiles/Palette for Flipped Gate (1)
$00C2E6 72 bytes Misc. BG Tiles/Palette for Flipped Gate (2)
$00C4AF 1 byte Misc. If you change this byte from [02] to [01], the keyhole will activate the normal exit.
$00C526 1 byte Music Music played when you have completed the Bonus Game.
$00C558 1 byte Sound effect POW Finishing Sound Effect.
$00C570 1 byte Misc. [F0] Change to [80] to make the item not drop when the player presses Select.
$00C576 1 byte Debug DEBUG: Powerup select (F0 = enable)
$00C599 28 bytes Pointer Pointer to Mario's animation routines. ($7E0071)
$00C5E8 248 bytes Misc. Movement data for all of the castle destruction scenes.

Each data entry consists of two values, the first being the command and the second being the number of frames to keep that command active.
If bit 4 of the command byte is set, question marks will be drawn above Mario (as in Roy/Ludwig's scenes).
If bit 5 is clear, the rest of the byte is read as input data for $15/$16.
If bit 5 is set, then the first four bits are used to run additional commands. x0-x6 will run a variety of small routines, while x7-xF will change Mario's pose.
If #$2D, the P-balloon sound will also be played (for Lemmy's).
Lastly, #$FF marks the end of that scene's data.
$00C6E0 7 bytes Misc. Base indices to the data at $00C5E8 for each of the castle destruction scenes.
$00C92C 2 bytes Misc. [F0 3D] Change to [EA EA] to prevent Mario walking after touching goal spheres or the goal tape.
$00C9A7 7 bytes Level number The level numbers that triggers the seven castle destruction sequences. The first byte is for scene 1, the second is for scene 2, and so on.
$00C9AE 1 byte Level number One of the two level numbers that triggers the credits scene. The other is at $00CA13.
$00C9BD 1 byte Music Goal point fade-out music
$00C9FE 3 bytes ASM [8D D5 0D] The code itself stores either 01 or 02 to $0DD5. Change to [EA EA EA] to make it possible to set the normal/secret exit info through $0DD5 via LevelASM, sprites, etc. (Note: To activate any exit at all, $0DD5 has to be explicitly set to 01 or 02. Leaving it as 00 will cause no exit to be activated at all, and values 03-FF should not be used.)
$00CA0C 1 byte Level number Translevel number of the level where defeating a boss will activate the secret exit.
$00CA12 2 bytes Misc. [C9 31] Changing this to [80 11] will prevent any "boss defeated" scenes from ever being played.
$00CA13 is one of the two level numbers that triggers the credits scene. The other is at $00C9AE.
$00CA2C 1 byte Misc. Set to 00 to disable midway points (they'll still make you big though)
$00CA31 13 bytes Subroutine (JSR) Set the "peace" pose for the player depending on whether he's on Yoshi or not.
$00CB0C 1 byte ASM Change from '8D' to '0C' to not make HDMA gradients act strangely at the end of the level (goal tape). Of course, you should still avoid using HDMA channel 7 if this is all you change.
$00CB12 258 bytes Misc. Opening window data.
$00CBA3 - Change 4B to 49 to fix a misplaced tile on the keyhole "iris in" effect.
$00CC84 1 byte Debug DEBUG: Free-roaming mode (F0 = enable)
$00CC85 1 byte Debug Change this to 00 and you'll activate free roaming mode (just like $00CC84)
$00CD4E 4 bytes ASM [AD 8F 14 0D] Change to [EA EA EA AD] to enable climbing while holding an item
$00CD5F 1 byte Mario physics Change from [15] to [16] so you don't automatically grab whatever you are climbing (vine, net, etc.) again if you happen to still be holding up/down. Instead after you jump it will let go and let you jump until you press up/down again.
$00CDA9 4 bytes Misc. Mario riding on Yoshi animations
$00CDC5 1 byte Misc. Animation frame for Mario crouching on Yoshi
$00CDF6 131 bytes Subroutine (JSR) L & R scrolling routine.
Change $00CDFC from D0 to 80 to disable L & R scrolling. Or change to [EA EA] to allow scrolling even if the player is holding multiple buttons (works best if $00CE12 is set to 01).
$00CE12 is the number of frames L or R must be held before screen scrolling occurs.
$00CE40 is the screen scroll sound effect.
$00CE99 8 bytes Mario tilemap Spin Jump frame table
(00 00 - Mario Standing - Small - Big)
(25 44 - Mario Back to Screen - Small - Big)
(00 00 - Same as first)
(0F 45 - Mario Facing Screen - Small - Big)

They are indexed by the frame counter.
$00CEA1 8 bytes Mario tilemap Spinjump direction table.
$00CEA9 8 bytes Mario tilemap Cape spin cape image table.

These are run while spin jumping with a cape or doing a spin attack. Only these four cape images ($02,$07,$06,$09) seem to work with cape contact, and will only work if RAM $14A6 is above zero.
$00CEBE 1 byte Mario physics Amount of frames to show the cape at highest altitude frame. (After, for example, a spin-jump has been done.)
$00CF42 1 byte Mario physics Power-up that can attack with both cape spin and spin jump
$00CF75 1 byte Mario tilemap [3F] Mario shooting fireball on ground pose.
$00CF7B 1 byte Mario tilemap [16] Mario shooting fireball in air pose.
$00CF90 1 byte Mario tilemap [0F] Mario turning around while holding item pose.
$00CFCA 1 byte Controller Which button to press to look up. (Look at Ram Address $7E:0015 for values).
$00CFCB 1 byte Mario physics Change from [F0] to [80] to disable looking up.
$00CFCE 1 byte Mario tilemap This is the player looking up pose, the default is #$03.
$00D034 8 bytes Mario physics Cape Collision X (Horizontal) Offsets: Two bytes for right and left, on ground and in air.

The first two sets are for when Mario is on the ground while spinning ($0C,$00- right; $F4,$FF left), and the second two are while he is in the air ($08,$00 - right; $F8,$FF - left)

The first byte in each set determines the position per pixel, the second sets whether it is in front or behind him ($FF is behind, $00 is in front) Use $FF-$80 for the behind byte($FF), and $00-$79 for the in front byte ($00)

This does not effect the image offsets.
$00D03C 8 bytes Mario physics Cape Collision Y (Vertical) Offsets: 2 bytes for right and left, on ground and in air.

The first two sets are for when Mario is on the ground while spinning ($10,$00 - right; $10,$00 - left), and the second two are while he is in the air ($02,$00 - right; $02,$00 - left)

The first byte in each set determines the position per pixel, the second sets whether it is above him or below him ($FF is below his feet, $00 is from his feet up) Use $FF-$80 for the below byte ($FF), and $00-$79 for the above byte ($00)

This does not effect the image offsets.
$00D044 30 bytes Mario physics Routine that does the actual calculation for cape-interaction. Uses the two tables at $00:D034 and $00:D03C.
$00D062 31 bytes Subroutine (JSR) Cape Swing routine.
$00:D065 controls which power-up the player needs to have to be able to cape spin.
Change $00:D067 to 00 to make mario cape spin in all forms.
$00:D077 controls how long Cape Spin lasts.
$00:D07C controls the cape spin sound effect to generate.
$00D081 45 bytes Subroutine (JSR) Fireball throwing routine.
$00D082 is the power-up that can throw fireballs.
Change $00D084 to 00 to let Mario throw fireballs in all forms.
Change $00D085 from A5 73 to A9 00 to enable throwing fireballs while ducking.
Change $00D087 from 0D 7A 18 to EA EA EA to enable throwing fireballs while on Yoshi.
Change $00D08A to 80 do disable throwing fireballs.
Change $00D093 from F0 to 80 to disable throwing fireballs while spin jumping.
$00D0B9 1 byte Mario tilemap Mario death pose (uses RAM $13E0)
$00D0D5 3 bytes ASM Set 9C C1 0D to EA EA EA in order to not lose Yoshi on the OW when you fall down a pit when on top of Yoshi.
$00D0D8 3 bytes ASM ASM that handles losing lives. Change to [EA EA EA] to not lose a life after dying. Change to [80 03 EA] to always go to the Game Over screen when dying.
$00D0DE 1 byte Music Game Over music
$00D0F1 1 byte ASM ASM that handles the 'TIME UP!' message. Change 'D0' to '80' to disable it.
$00D0F8 10 bytes Misc. Controls timer for TIME UP/GAME OVER message. Change $00D0F9 from C0 to 00 to remove the animation, and change $00D0FE from FF to whatever you want to shorten the timer (however, 00 is as long as FF; 01 is the shortest).
$00D11A 1 byte ASM Change [85] to [60] and Mario will not flip X-wise when he dies.
$00D11D 12 bytes Mario tilemap Mario Shrinking Animation poses (uses RAM $13E0).
$00D141 1 byte Timer How long flashing invincibility (when you get hit) lasts
$00D156 5 bytes ASM Change to EE E4 18 EA 64 to turn the Mushroom into a 1up, but it'll still play the animation
$00D18D 6 bytes Mario physics Speed at which Mario enters/exits a pipe.
The first two bytes are horizontal speed when entering/exiting a horizontal pipe.
The next two bytes are both horizontal speed in vertical pipes, and vertical speed in horizontal pipes.
The last two are the vertical speed in vertical pipes.
$00D1AE 1 byte Misc. Animation frame for Mario entering horizontal pipe on Yoshi
$00D20A 1 byte Mario tilemap Mario's pose for entering a vertical pipe (Default is 0F - facing screen)
$00D229 1 byte Misc. Animation frame for Mario entering vertical pipe on Yoshi
$00D231 5 bytes Overworld border Change (A9 02 8D F9 13) to EA EA EA EA EA to remove Mario's priority when he's going down a pipe.
$00D255 1 byte Sound effect Mario emerge from vertical pipe Sound Effect.
$00D2BD 16 bytes Mario physics Mario's jump height. The earlier ones are when Mario is moving slowly (or standing still); the latter is when he's moving faster. Even entries are normal jump, odd are spin.

Formula:
LDA $7B
BPL +
EOR #$FF
INC A
+
LSR #2
AND #$FE
TAX
LDA $140D
BEQ +
INX
+
LDA $00D2BD,x
STA $7D
$00D345 104 bytes Mario physics Accelerations for Mario in a non-slippery level, or in a slippery level while in midair.
The table is split into sets of four 16-bit values each, in the order of $13E1. The values in these sets are ordered as: walking (no X/Y) left, running (X/Y held) left, walking right, running right.
$00D345 2 bytes Mario physics Mario 'acceleration' while walking and heading left
$00D347 2 bytes Mario physics Mario 'acceleration' while running and heading left(added to the value for walking)
$00D349 2 bytes Mario physics Mario 'acceleration' while walking and heading right
$00D34B 2 bytes Mario physics Mario 'acceleration' while running and heading right(added to the value for walking)
$00D3AD 16 bytes Mario physics Accelerations for Mario when flying.
Consists of 16-bit values in two sets (facing left/right) of two groups (moving left/right) with two values each (no X/Y and X/Y held).
$00D3BD 24 bytes Mario physics Sliding accelerations on slopes in a non-slippery level.
Each value is 16-bit, in the same order as $13E1 (excluding flat ground).
$00D3D5 104 bytes Mario physics Turning decelerations for Mario in a non-slippery level, or in a slippery level while in midair.
The table is split into sets of four 16-bit values each, in the order of $13E1. The values in these sets are ordered as: walking (no X/Y) left, running (X/Y held) left, walking right, running right.
$00D43D 104 bytes Mario physics Accelerations for Mario in a slippery level.
The table is split into sets of four 16-bit values, in the order of $13E1. The values in these sets are ordered as: walking (no X/Y) left, running (X/Y held) left, walking right, running right.
$00D4B5 24 bytes Mario physics Sliding accelerations on slopes in a slippery level.
Each value is 16-bit, in the same order as $13E1 (excluding flat ground).
$00D4CD 104 bytes Mario physics Turning decelerations for Mario in a slippery level.
The table is split into sets of four 16-bit values, in the order of $13E1. The values in these sets are ordered as: walking (no X/Y) left, running (X/Y held) left, walking right, running right.
$00D535 104 bytes Mario physics Mario's maximum X speeds on flat ground and on slopes.
The table consists of sets of 8 bytes, in the order of $13E1. Each of these sets then consists of four groups of two bytes each (for max left and max right), in the order: walking, running, running fast, sprinting.

The "running fast" values get used when running faster than #$23 (defined at $00D723) and either on the ground or shot out of a diagonal pipe.
$00D59D 16 bytes Mario physics Mario's maximum X speeds while flying. The first 8 bytes are facing right, the second 8 are facing left.
Each of these sets are split into four groups of two bytes each (for maximum left and right speeds). Only the first two groups are actually used, for flying without X/Y and flying with X/Y respectively.
Also, in case it's not clear, the maximum speeds in the direction opposite of Mario's are from pressing that direction with B to slow down (e.g. <+B when facing right).
$00D5AD 16 bytes Mario physics Mario's maximum X speeds in water.
The first set of 8 bytes is for when Mario isn't carrying an item, while the second set is with one. Each set consists of four groups of two bytes each (for max left and max right), in the order: on ground, swimming, on ground in a tide, swimming in a tide.
$00D5BD 12 bytes Mario physics Mario's maximum X speeds when sliding down slopes with the down button. In the order of $13E1, without flat ground or flying included.
$00D5C9 34 bytes Mario physics Mario's minimum X speeds on flat ground and on slopes.
The table is in the order of $13E1. Each entry gets two bytes; the second byte is the actual speed ($7B), while the first is the accumulating fraction bits ($7A).

The last 8 bytes of the table seem to be unused.
$00D5CA 30 bytes Mario physics How much Mario moves while on slopes, added to $7B. Values correspond to $7E:13E1 (slope type) divided by four. Every second byte is unused.
$00D5E8 1 byte Mario physics X speed of player as he's floating in water freely in a level where a Layer 3 tide is active. (Does not affect the speed given when the player manually moves around on his own horizontally.)
$00D5EA 1 byte Mario physics X speed of player as he's floating in water AND standing on a platform (like the floating grassy platforms) in a level where a Layer 3 tide is active. (Does not affect the speed given when the player manually moves around on his own horizontally.)
$00D603 1 byte Controller Which button to press to duck. Format: byetUDLR; b = A or B; y = X or Y; e = select; t = Start; U = up; D = down; L = left, R = right.
$00D604 1 byte ASM Change from F0 (BEQ) to 80 (BRA) to disable ducking.
Note that setting $01EB16 to [EA EA A5 73] (NOP #2 : LDA $73) is a good idea if you're using this.
$00D61C 2 bytes ASM Change from 30 12 to EA EA to disable jumping.
$00D63E 1 byte ASM Change from 10 to 80 to disable Spin Jump.
$00D644 1 byte Mario physics [19] Change to [00] to allow Mario to spin jump while carrying an item. Because Mario spins so fast, the animation will not be smooth.
$00D645 1 byte ASM Change this from "1A" to "60" to disable spin jumping. Unlike 0583E (SNES $00:D63E) from "10" to "80", changing this address does not make the "A" button do the regular jump, but it disables spin jumping altogether. This way, you can use the "A" button for something else without it jumping automatically.

Note: Still allows you to spinjump out of the water and dismount Yoshi.
$00D64A 1 byte Misc. Spin Jump Sound, uses bank 1DFC.
$00D65E 10 bytes ASM Mario jumping routine. (Sound effect + store to Mario Y speed.)
$00D65F is the Sound effect for Mario jumping. $00D661 is the bank for the sound effect. By default it uses $1DFA, but you can make it use $1DFC by changing $00D661 to FC or $1DF9 by changing it to F9.
$00D66F 1 byte Mario physics Change to 80 to disable Cape Flight and Jumping High while dashing. Interestingly enough, changing it to A9 will make Mario do a dash jump with every jump, even at a standstill, and will allow him to gain speed in the air. In addition, doing so will have the effect of causing every Jump performed by Cape Mario to become a Cape Flight.
$00D674 1 byte Mario physics [D0] Change to 80 to prevent the player from flying with a cape. The player will still be able to float, cape-spin, and jump higher when running but will never "take off".
$00D677 1 byte Mario physics Mario fly time
$00D707 1 byte Mario tilemap [0D] Mario's turning(skidding) pose
Pages: « 1 2 3 4 5 629 30 » Per Page: 25 50 75 100 150 500 All

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

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


Total queries: 31

Menu

Follow Us On

  • Facebook
  • Twitter
  • YouTube

Affiliates

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