Banner
Views: 714,684,128
Time:
9 users online: Darolac, FreezyFoop, izaguirrefermin28, kamekku14, MarioFanGamer, PokerFace, o RPG Hacker, Sephazon, zef - Guests: 21 - Bots: 221Users: 37,318 (1,631 active)
Latest: RetroRuco
Winter 2019 C3 Content Spotlight
Big Brawler's Level Compilation!
Not logged in.
SMW Memory Map
Displaying 100 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 5 6 » 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.
Pages: « 1 2 3 4 5 6 » 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