Banner
Views: 807,014,086
Time:
8 users online: Chosentw0, Darkslayer, Marchtinal, Ralshi02,  Tahixham, teotaylor, WhiteYoshiEgg, Zimboi - Guests: 42 - Bots: 187 Users: 42,331 (1,938 active)
Latest: Bombatsh
Tip: ExAnimation also works on sprites!Not logged in.
SMW Memory Map
Displaying 100 out of 942 addresses. Show Waiting Addresses (24)
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 6 7 8 9 10 » Per Page: 25 50 75 100 150 500 All
Hijack Address Length Type Description Details
$00A169 4 bytes Jump (JML/JSL) Modified by the Reserve Item OW Display patch. Jumps to the main code.
$00A169 4 bytes Code Modified by 32x32 Player Tilemap Patch, by ExE Boss and Ladida. Edit applied by the main patch.

LDA #$F0 : STA $3F, replicates original code in order to ensure expected setting of OAM address mirror.
$00A1C7 4 bytes Jump (JML/JSL) Hijacked by NSMB Star Coins: This one loads the current translevel number and stores the current level's star coins into the star coin counter.
$00A1DA 10 bytes Code Modified by Lunar Magic.
$00A1DA 10 bytes Jump (JML/JSL) Modified by the Message Box Expansion patch. Checks the message box state and sets a branch, followed by a jump to the main code.
$00A21B 4 bytes Jump (JML/JSL) Modified by Running SFX patch. Jumps to the main code.
$00A21F 4 bytes Jump (JML/JSL) Modified by Disable Throwing Items Upwards patch. Disable Up when carrying an item.
$00A267 1 byte Opcode Modified by Lunar Magic.
$00A269 11 bytes Jump (JML/JSL) Hijacked by NSMB Star Coins: This one saves all collected coins through Start+Select.
$00A284 4 bytes Jump (JML/JSL) Modified by Start+Select SFX, jumps to main code (plays SFX, changes game mode and returns).
$00A299 4 bytes Jump (JML/JSL) Hijacked by No running patch. Adds speed limit.
$00A2A1 4 bytes Jump (JML/JSL) Modified by the Wall Kick patch, by MarioE.

JSL, jumps to the main patch code.
$00A2A5 4 bytes Jump (JML/JSL) The patch known as "Allow mario to pass his gas" made by SMWCentral user shao, has it's main and only hijack spot here. This hijack installs the function that the patch realizes, which is allow the player, whoever it might be, to realize the process of expelling a flatulence. [JSL]
$00A2A6 3 bytes Code Modified by Lunar Magic.
$00A2AF 38 bytes Code Modified by Lunar Magic ($00A2AF-$00A2D4 modified, on version 3.00 when adjusting the level dimensions via “Change Properties in Header”).

This is originally the code that displaces layer 1 during a shaking effect when $1887 is a nonzero value. It is modified for how layer 1 tiles are loaded.

Modified code
$00A2D8 4 bytes Jump (JML/JSL) Modified by Yoshi Player Patch: This one handles all of Yoshi's abilities (e.g. throwing eggs, flutter, ground pound).
$00A2D8 4 bytes Jump (JML/JSL) Modified by the (Specter of Torment-Styled) Wallclimb and Walljump patch, by Erik/Maarfy.

JSL, overwrites the player graphics drawing routine to run the main code every frame. Note that the code ends with a JML to said routine ($00E2BD), and the latter's RTL is ultimately used to return.
$00A300 5 bytes Jump (JML/JSL) Modified by 32×32 Player Tilemap Patch, by ExE Boss and Ladida. Edit applied by the main patch.

JML : RTS, modifies the player graphics DMA routine.
$00A300 2 bytes Code Dynamic Z hijack used for features related to Mario graphics change or palette change, Since V3.5.

On the original game is used for the dma routine for mario, yoshi and podoboos, but when you use Dynamic Z V3.5 or more with mario features activated, this is only a RTS (basically do nothing).
$00A300 4 bytes Jump (JML/JSL) Mario's 8x8 Tiles DMA-er hijack.

Uploads Mario's palette, Mario, Yoshi and Podoboo graphics. Basically a rewrite of the original $00A300 plus the upload of the 8x8 tiles to VRAM.
$00A31A 4 bytes Jump (JML/JSL) Modified by Custom Mario Palettes. Jumps to a routine that makes the bank used in a DMA transfer to depend on a FreeRAM.
$00A390 5 bytes Code Modified by Lunar Magic.
$00A418 4 bytes Jump (JML/JSL) Modified by Lunar Magic. Obsolete in LM 1.70+
$00A439 1 byte Opcode Modified by Lunar Magic.
$00A4D1 3 bytes Jump (JMP/JSR) Hijacked by the Fixed Color Data NMI Optimizer patch to change the destination of the routine to store the background color in $2132.
$00A4E3 5 bytes Code Modified by Lunar Magic.
$00A4EB 2 bytes Code Modified by Lunar Magic.
$00A5A2 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00A5AB 4 bytes Jump (JML/JSL) Modified by various patches such as Yoshi Player Patch and sprite status bar patches, to initialize their respective RAM adresses (i.e. counter positions, carried sprites, eggs, etc.).
$00A5BF 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

Loads the custom palette of a level depending on the value of $FE. That RAM address is immediately cleared after that, possibly to avoid a custom palette from being uploaded twice.
$00A5E1 6 bytes Code Modified by Lunar Magic.
$00A5FE 3 bytes Code Modified by Lunar Magic.
$00A65D 3 bytes Code Hijacked by the Power Surge Patch, by Glyph Phoenix.

NOP #3, disables the zero-ing of the Star Counter on level load.
$00A6B8 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00A6CC 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00A873 4 bytes Code Modified by Lunar Magic.
$00AA06 2 bytes Code Modified by Lunar Magic.
$00AA47 2 bytes Code Modified by Lunar Magic.
$00AA50 5 bytes Code Modified by Lunar Magic.
$00AA6B 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00AA74 2 bytes Code Modified by Lunar Magic.
$00AA8D 1 byte Code Modified by Lunar Magic.
$00AA91 1 byte Code Modified by Lunar Magic.
$00AACD 21 bytes Code Modified by Lunar Magic.
$00AB02 64 bytes Code Modified by Lunar Magic.
$00AD2B 2 bytes Code Modified by Lunar Magic.
$00AD32 5 bytes Code Modified by Lunar Magic.
$00AE41 26 bytes Code The Fixed Color Data NMI Optimizer patch entirely rewrites this routine, which stores the background color to $2132.
$00AF2D 63 bytes Code Modified by Minimalist Course Clear.

From 00AF2D to 00AF34, if !enable_scorecard is clear, then it will skip SMW's card tilemap drawing code. Else SMW's code is written. The rest of code is SMW's code ending early so it gives freespace for fixing a bug related to Reznors and hijack the "after peace pose" routine.
$00AF4C 1 byte Code Modified by Lunar Magic.
$00AF4F 1 byte Code Modified by Lunar Magic.
$00AF6C 1 byte Code Modified by Lunar Magic.
$00AF71 6 bytes Code Modified by Lunar Magic.
$00B048 4 bytes Jump (JML/JSL) Modified by Custom Mario Palettes. Saves the Free RAM used into a scratch RAM.
$00B88B 2 bytes Code Modified by Lunar Magic.
$00B890 1 byte Code Modified by Lunar Magic.
$00B893 22 bytes Code Modified by Lunar Magic.
$00B8D8 2 bytes Code Modified by Lunar Magic.
$00B8DE 5 bytes Code Modified by Lunar Magic.
$00B8E3 5 bytes Code Modified by Lunar Magic.
$00BDA8 256 bytes Table Modified by Lunar Magic. Level mode indexing tables for Layer 1 low byte, Layer 2 low byte, Layer 1 high byte and Layer 2 high byte, each entry 2 bytes big, total 32 entries per item.

Not all of the table is modified, but all of the horizontal level ones are remapped to the RAM addresses, to make it possible to dynamically modify the table depending on the level height. See implementation for full details.
Implementation
$00BEE8 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic. Adds a bypass for always checking Y against #$0200 instead of $13D7-8 for vertical levels.
$00BEEC 3 bytes Opcode Modified by Lunar Magic. Changes CPY #$0200 to CPY $13D7, where $13D7-8 is the current level height in pixels.
$00BF35 2 bytes Opcode Modified by Lunar Magic. Changes "BEQ CODE_00BF41" to "BEQ CODE_00BF3F"
$00BF3C 13 bytes Code Modified by Lunar Magic. Adjusts the VRAM offset calculation for working with dynamic levels as well. Implementation
$00BF81 26 bytes Code Modified by Lunar Magic. This section is rewritten so the stripe image uploader always checks both tilemap directions instead of only the x-axis for horizontal levels. Implementation
$00C058 5 bytes Code Modified by Lunar Magic.
$00C07B 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$00C097 1 byte Code Modified by Lunar Magic.
$00C0C8 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$00C0E7 1 byte Code Modified by Lunar Magic.
$00C116 2 bytes Opcode Modified by Lunar Magic. Changes "BEQ CODE_00C13E" to "BEQ CODE_00C127", for checking both tilemap directions instead of just horizontal when deciding or not to upload a tile to VRAM after changing a map16 tile on horizontal levels.
$00C122 2 bytes Opcode Modified by Lunar Magic. Changes "BCS CODE_00C13E" to "BCS CODE_00C127", for checking both tilemap directions instead of just horizontal when deciding or not to upload a tile to VRAM after changing a map16 tile on horizontal levels.
$00C17A 5 bytes Code Modified by Lunar Magic.
$00C1B3 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$00C25C 5 bytes Code Modified by Lunar Magic.
$00C3D5 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$00C4AE 4 bytes Jump (JML/JSL) Hijacked by NSMB Star Coins: This one saves all collected coins through beating a level with a key hole.
$00C4F8 5 bytes Jump (JML/JSL) Modified by $13FB Game Crash Fix. Jumps to the main code.
$00C56C 4 bytes Jump (JML/JSL) Hijacked by the Item Box Hack Patch, by andrew789.
JML, hijacks the item box routine so the button that makes the reserve item drop is dependent on the level the player is in.
$00C599 2 bytes 16-bit Pointer Modified by the (Specter of Torment-Styled) Wallclimb and Walljump patch, by Erik/Maarfy.

dw $CC86, repoints the start of animation state $00 ($71 = #$00) to part of a debug routine in order to copy the contents of RAM address $77 before it is updated.

The UberASM version of this patch includes a helper patch that applies this exact code.
$00C944 6 bytes Code Modified by Minimalist Course Clear.

Handles showing (or not) the card tilemap drawing and freezing sprites, all after beating a boss.
$00C977 1 byte Opcode Modified by Lunar Magic.

Lunar Magic 2.53+ changes this to 0x38 in non-SA-1 ROMs to fix the timing on the victory animation during the goal walk so it matches up with the original goal music.
$00C9B7 5 bytes Jump (JMP/JSR) Modified by Minimalist Course Clear. This jump handles the circle effect after the peace sign pose.
$00C9C2 3 bytes Opcode Modified by Minimalist Course Clear.

If !enable_circle is set, it calls the "Level Ending Circle" routine. Else it just decrements the timer after going to the overworld.
$00C9D7 1 byte Opcode Modified by Lunar Magic.
$00C9DF 2 bytes Opcode Modified by Minimalist Course Clear to make the screen after beating a level fade out, THEN load overworld.
$00C9F8 6 bytes Code Modified by Minimalist Course Clear. Skips handling the mosaic/brightness settings when beating a level.
$00CA0C 1 byte Code Modified by Lunar Magic.
$00CA13 1 byte Code Modified by Lunar Magic.
$00CC86 19 bytes Code Modified by the (Specter of Torment-Styled) Wallclimb and Walljump patch, by Erik/Maarfy.

Part of the free-roaming debug routine. Overwritten in order to copy the contents of RAM address $77 before it is updated. See details for code. Note that 19 bytes is the maximum size - !RAM_77BU is 16-bit by default, and size becomes 17 bytes if changed to 8-bit (long addresses not supported).

The UberASM version of this patch includes a helper patch that applies this exact code.
Code
$00CF3D 2 bytes Opcode Modified by Yoshi Player Patch: Spin jumps don't change Yoshi's direction.
$00CF43 2 bytes Hex Edit Modified by the Replace Cape with Double Jump patch. It skips the cape interaction while spinning, if the appropriate defines are set in the code.
$00CFCD 5 bytes Jump (JML/JSL) Modified by Disable Looking Up Via RAM Flag, by GreenHammerBro.

JSL : NOP, jumps to code to check a custom RAM flag to variably disable the player's ability to look up.
$00D058 4 bytes Jump (JML/JSL) Modified by Reverse Gravity. Fixes cape interaction when in reversed gravity mode.
$00D062 4 bytes Jump (JML/JSL) Hijacked by the SMB2 Holding patch: This one disables shooting fireballs and spinning the cape when carrying a sprite.
$00D062 4 bytes Jump (JML/JSL) Modified by the Replace Cape with Double Jump patch. It jumps to the main code of the patch.
$00D06C 5 bytes Jump (JML/JSL) Modified by No shooting fireballs/cape spin when carrying something, by GreenHammerBro.

JSL : NOP, modifies the cape spin routine to deny cape-spinning with either X or Y when carrying an item.
$00D085 5 bytes Jump (JML/JSL) Modified by No shooting fireballs/cape spin when carrying something, by GreenHammerBro.

JSL : NOP, modifies the fire spit routine to deny spitting fireballs with either X or Y when carrying an item.
$00D08C 4 bytes Jump (JML/JSL) Modified by Yoshi Fireball Ability Patch. It jumps to the main function of the patch.
Pages: « 1 2 3 4 5 6 7 8 9 10 » 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 - 2020 - SMW Central
Legal Information - Privacy Policy - Link To Us


Total queries: 22

Menu

Follow Us On

  • YouTube
  • Twitch
  • Twitter

Affiliates

  • Super Mario Bros. X Community
  • ROMhacking.net
  • Mario Fan Games Galaxy