Banner
Views: 714,668,525
Time:
3 users online: bruninhopz, Telinc1, zef - Guests: 19 - Bots: 276Users: 37,318 (1,631 active)
Latest: RetroRuco
Winter 2019 C3 Content Spotlight
Daizo Dee Von's "KRACK THE HACK"!
Not logged in.
SMW Memory Map
Displaying 150 out of 570 addresses. Show Waiting Addresses (36)
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 » Per Page: 25 50 75 100 150 500 All
Hijack Address Length Type Description Details
$008023 4 bytes Jump (JML/JSL) Modified by ZSNES incompatibility notice. Jumps to the main code.
$00804D 1 byte Opcode Not modified, however is used by Lunar Magic as an RTL for calling routines that end in RTS in bank 0 with a JSL via stack magic. So don't modify it.
$008070 4 bytes Jump (JML/JSL) Modified by 16-bit frame counter. Jump to code that increases both $13 and 16-bit frame counters.
$0081E2 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$0081EC 4 bytes Jump (JML/JSL) Hijacked by multiple patches.
Overworld Counters hijacks this to upload the various counters during NMI.
Overworld Border Plus hijacks this to upload the border tiles during NMI.
$008209 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

Part of Lunar Magic's VRAM modification patch.
$00823D 6 bytes Jump (JML/JSL) Dynamic Z Main Hijack 1.

Is used for the main features of Dynamic Z since V3.5 (dynamic sprites, graphics change and palette changes).

This hijack points to a call where is called the routine "LoadScrnImage" and happend after MarioGFXDMA Routine (the dma routine of mario, yoshi and podoboos).
$0082DA 5 bytes Jump (JML/JSL) Dynamic Z Main Hijack 2.

Is used for the main features of Dynamic Z since V3.5 (dynamic sprites, graphics change and palette changes).

This hijack points to a place is detected if the current escene is the bowser stage or reznor stage and happend after MarioGFXDMA Routine (the dma routine of mario, yoshi and podoboos).
$0083ED 2 bytes Code (BCC $04)
Modified by Minimalist Course Clear so it always branches, thus layers won't get disabled after you beat a boss.
$008751 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

Lunar Magic's stripe image upload routine. It only gets executed during gamemodes 05, 07, 13 and 14.
$008A4E 5 bytes Code Modified by Lunar Magic.
$008CCD 4 bytes Data Modified by Course Clear Coins, by MarioFanGamer.

Changes the bonus star "★x" tiles on the status bar into blank tiles. Conditionally enabled.
$008E21 4 bytes Jump (JML/JSL) Modified by Time Up Fix, by Alcaro.

JML, prevents the timer frame counter from ticking down if set to a special "death from time up" value.
$008E4F 2 bytes Code Modified by Time Up Fix, by Alcaro.

BNE $1E, skips past the "check if timer ran out" routine if the timer hundreds digit is nonzero.
$008E5B 5 bytes Jump (JML/JSL) Modified by Speed up Music Fix. Jumps to the main code.
$008E60 15 bytes Jump (JML/JSL) Modified by Time Up Fix, by Alcaro.

Sets the timer frame counter to a special "death from time up" value and calls the death routine if 1) the timer is now zero and 2) the timer was not zero initially. Note that this hijack uses a JSL to custom code that ends with a JML to the death routine; the corresponding RTL utilized is thus that of the death routine, at $00F628.
$008F2F 6 bytes Jump (JML/JSL) Modified by 100 Coin Prize, by wiiqwertyuiop.

JSL : BRA $06, bypasses the default life-gain at 100 coins to implement custom rewards.
$008F3B 4 bytes Jump (JML/JSL) Modified by 999 lives, handles the lives' code during the level (status bar included).
$008F49 6 bytes Jump (JML/JSL) Hijack for the left aligned life counter.
$008F73 6 bytes Jump (JML/JSL) Hijack for the left aligned coin counter.
$008F86 3 bytes Jump (JMP/JSR) Modified by Course Clear Coins, by MarioFanGamer.

JMP, bypasses the routine that draws the large bonus star numbers on the status bar. Conditionally enabled.
$00907A 1 byte Data Modified by $02xx OAM Remapper. This is the table with the OAM index for the item box's sprite.
$009095 4 bytes Jump (JML/JSL) Modified by Item Box GFX Fix, by Kenny3900.

JML, bypasses the default "draw item box GFX" routine to utilize expanded properties table.
$009322 4 bytes Jump (JML/JSL) UberASM tool and patch's Game Mode hijack.
$0093F7 5 bytes Code Modified by Lunar Magic.
$009471 5 bytes Code Modified by Lunar Magic.
$0095B6 3 bytes Code Modified by Lunar Magic.
$0095E9 13 bytes Code Modified by Lunar Magic.
$009708 4 bytes Jump (JML/JSL) Modified by Lunar Magic. Points to the Horizontal Scroll Fix patch.
$009708 4 bytes Jump (JML/JSL) Modified by Horizontal Scroll Fix. Jumps to the main code.
$009B1C 3 bytes Code Modified by Lunar Magic.
$009C6F 17 bytes Code Modified by Lunar Magic.

Handles the custom title screen movement.
$009CD3 3 bytes Code Modified by Lunar Magic.
$009F19 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00A01F 6 bytes Code Modified by Lunar Magic.

Jumps to a routine that handles Layer 3 movement.
$00A0A0 3 bytes Code Modified by Lunar Magic.
$00A140 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00A149 4 bytes Code Modified by Lunar Magic.
$00A153 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00A1DA 10 bytes Code Modified by Lunar Magic.
$00A21B 4 bytes Jump (JML/JSL) Modified by Running SFX patch. Jumps to the main code.
$00A267 1 byte Opcode Modified by Lunar Magic.
$00A284 4 bytes Jump (JML/JSL) Modified by Start+Select SFX, jumps to main code (plays SFX, changes game mode and returns).
$00A2A1 4 bytes Jump (JML/JSL) Modified by the Wall Kick patch, by MarioE.

JSL, jumps to the main patch code.
$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
$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) Dynamic Z main hijack.

This is where all of the features which need to DMA to VRAM or need to write to a certain SNES register are. It handles Dynamic Sprites, Palette changer, ExGFX changer and part of Mario ExGFX.

Expects to return to a RTS at $00A304.
$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.
$00A300 4 bytes Jump (JML/JSL) 32x32 Character Tilemap Kit hijack.

Uploads Mario's palette, Mario, Yoshi and Podoboo graphics. Basically a rewrite of the original $00A300, except that this uploads a 32x32 Mario GFX instead of 16x32.
$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.
$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.
$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".
$00C4F8 5 bytes Jump (JML/JSL) Modified by $13FB Game Crash Fix. Jumps to the main 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.
$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.
$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.
$00D08C 4 bytes Jump (JML/JSL) Modified by Yoshi Fireball Ability Patch. It jumps to the main function of the patch.
$00D0E6 5 bytes Jump (JML/JSL) Modified by Time Up Fix, by Alcaro.

JSL : NOP, hijacks the end of the non-game-over death sequence to bypass the "TIME UP" message unless the timer frame counter is set to a special "death from time up" value.
$00D2B2 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00D663 5 bytes Jump (JML/JSL) Modified by Expensive Jump. Jumps to the main code.
$00D904 4 bytes Jump (JML/JSL) Modified by the Limited Yoshi Flying patch, by SkywinDragoon.

JML, hijacks a portion of the player gravity routine to disable Yoshi flight after a custom counter has reached a certain limit.
$00DAA9 5 bytes Jump (JML/JSL) Modified by Spike Swim Fix, by yoshifanatic. Jumps to the hurt-fix routine when big Mario swims down to a muncher/spike.
$00E31B 4 bytes Jump (JML/JSL) Modified by Custom Mario Palettes, handles the patch's main functions.
$00E3CD 5 bytes Jump (JML/JSL) Modified by Invincible Mario Palette Changer. Jumps to the main code.
$00F2DB 2 bytes Code Modified by Lunar Magic.
$00F33F 7 bytes Jump (JML/JSL) Modified by Yoshi Coin Score Fix. Swaps JSL and INC's places and turns INC $1422 to LDA $1420, so it's used for check in JSL routine.
$00F377 15 bytes Code Modified by Yoshi Coin Score Fix. Replaces original Yoshi Coin's score giving routine, so it now checks number of yoshi coins being collected before increasing score value and necessary addresses.
$00F478 3 bytes Opcode Modified by Lunar Magic. Remaps CMP.W #$01B0 to CMP.W $13D7.
$00F492 4 bytes Opcode Modified by Lunar Magic. Remaps ADC.L $00BA60,X to ADC.L $000CB6,X.
$00F49A 4 bytes Opcode Modified by Lunar Magic. Remaps ADC.L $00BA9C,X to ADC.L $000CD6,X.
$00F4DE 3 bytes Code Modified by Lunar Magic.
$00F4DE 3 bytes Miscellaneous Modified by Lunar Magic.

A modification of a JSL's address to jump to $06f660 (was originally JSL $00F545) handle custom map 16 for Mario's interaction with the blocks.
Hijacked Code
$00F4F3 3 bytes Opcode Modified by Lunar Magic. Remaps CMP.W #$01B0 to CMP.W $13D7.
$00F50D 4 bytes Opcode Modified by Lunar Magic. Remaps ADC.L $00BA70,X to ADC.L $000CC6,X.
$00F515 4 bytes Opcode Modified by Lunar Magic. Remaps ADC.L $00BAAC,X to ADC.L $000CE6,X.
$00F60A 5 bytes Jump (JML/JSL) Modified by Alternate Death Music for Luigi patch. Jumps to the main code in order to decide which death music will be played, according to the active player.
$00F636 6 bytes Jump (JML/JSL) Dynamic Z hijack, used only if features related to mario gfx and palettes changes is activate.

On the original game this section of the code is used to know the current graphic of yoshi or podoboos (basically select graphic pointers), on dynamic z, its change some things of the code to use custom graphic pointers (basically change the Bank and the start source position of the pointers).
$00F6E4 4 bytes Jump (JML/JSL) Used by Lunar Magic. This is the VRAM optimization patch.
$00F70D 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic (JML). Adjusts the maximum vertical scroll for horizontal levels depending on the level height and the "allow viewing bottom tiles" setting.
$00F70D 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic (JML). Adjusts the maximum vertical scroll for horizontal levels depending on the level height and the “allow viewing bottom tiles” setting. Freespace code
$00F77B 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00F79D 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00F7E8 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00F7FC 175 bytes Jump (JML/JSL) Modified by Vertical Scroll Reprogrammed. Jumps to main code, and the rest is filled with NOPs.
$00F871 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00FA29 4 bytes Jump (JML/JSL) Modified by Fireball Conveyor Fix, by Thomas. Jumps to a routine that fixes the Fireball teleport glitch when in contact with the castle moving stairs.
$00FEA8 4 bytes Jump (JML/JSL) Hijacked by the fireball ammo patch to add an ammo counter for fireballs.
$00FEA8 5 bytes Jump (JML/JSL) Modified by No Fireballs in Water patch. Jumps to the main code.
$00FEC4 5 bytes Jump (JML/JSL) Modified by Upwards arc fireball patch. Jumps to the main code.
Pages: « 1 2 3 4 » 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