Language…
15 users online: Connnnair, Housemeister, IKnowBrianYancey, NewPointless, PMH, ShadowBoxer_Sandshrew, ShUriK KiD, signature_steve, Stivi, TheDarknex, tired_ideabox, Tulip Time Scholarship Games, VLSkoot, yno14jax,  YouFailMe - Guests: 247 - Bots: 172
Users: 65,061 (2,328 active)
Latest user: LimeadeGX

SMW Memory Map

Displaying 100 out of 2327 addresses.

View: moderated | waiting (71)

Filter

Link
  • Pages:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 23
  • 24
Hijack Address Length Type Description Details
$008E1A 5 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML : NOP, jumps to the code that executes custom status bar code inserted by the tool.
$008E1F 4 bytes Jump (JML/JSL) Modified by the Advanced version of the Super Status Bar patch by GreenHammerBro and Kaijyuu. Repoints the status bar update routine to freespace.
$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.
$008E5B 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it sets a flag when the music is sped up because the timer dropped under 100 seconds.
$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.
$008E6B 4 bytes Jump (JML/JSL) Hijacked by the Time Up Anti-Kill Patch, by Chdata.

JSL, jumps to the code that prevents the time up to kill the player in a certain level.
$008E6B 4 bytes Jump (JML/JSL) Modified by Time Up Flag patch by DiscoTheBat.

JML, Modifies time up to execute custom code depending on a freeRAM flag.
$008E6B 4 bytes Jump (JML/JSL) Modified by the No Life - No Time patch, by Nitrocell Inc..

JSL, replaces the TIME UP death routine call to deduct a life and refill some time, only killing the player on their last life.
$008E6F 18 bytes Code Modified by SMB2-Styled Health Bar, by Demonsul and KilloZappit.

Sets the timer in its new position in the status bar.
$008E6F 40 bytes Code Hijacked by the Bigger Timer Patch, by nnj.

A JSL + code for writing the big time numbers. Also takes care of the leading zeros option.
$008E6F 38 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Replaces the vanilla time display with its own time display.
$008E75 6 bytes Jump (JML/JSL) Modified by the Punching System patch, by wiiqwertyuiop.

JSL : NOP #2, hijacks the status bar routine to run the main code every frame.
$008E95 139 bytes Code Modified by the 8 Digits Score patch by Isikoro.
Modifies the routine that sets the status bar addresses to adapt to the new score system.
$008E95 3 bytes Jump (JMP/JSR) Modified by GHB Disable Score by HammerBrother and wye.

Disables score display on the status bar.
$008EA4 3 bytes Code Modified by the Score+9 patch, by Alcaro.

SBC #$4240, tweaks maximum score calculation to allow detection of "over 9999990 points" state.
$008EB0 2 bytes Code Modified by the Score+9 patch, by Alcaro.

LDA #$10, tweaks maximum score calculation to allow detection of "over 9999990 points" state.
$008EC6 5 bytes Jump (JML/JSL) Modified by the Score+9 patch, by Alcaro.

JSL : NOP, checks for "Mario's score greater than 9999990 points" state and switches the final digit to 9 if so.
$008ED7 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

LDX #$00, handles the index for the score tiles.
$008EDE 5 bytes Jump (JML/JSL) Hijacked by the Red Coin Counter Patch, by Iceguy and Major Flare.
JSL : NOP, hijacks the status bar so that the red coin count can be properly displayed there.
$008EDE 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

BRA $0F or LDX #$00, either handles the index for the score tiles or skip the code to remove leading zeroes in the score.
$008EE0 3 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

LDA !score,x, loads the score from the given tile instead of $0F29.
$008EE5 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

LDA #!NULL, loads the empty tile for the status bar.
$008EE7 3 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

STA !score,x or NOP #3, either stores the score to the given tile instead of $0F29 or disables the score.
$008EF4 5 bytes Jump (JML/JSL) Modified by the Score+9 patch, by Alcaro.

JSL : NOP, checks for "Luigi's score greater than 9999990 points" state and switches the final digit to 9 if so.
$008F05 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

LDX #$00, handles the index for the score tiles.
$008F0C 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

BRA $0F or LDX #$00, either handles the index for the score tiles or skip the code to remove leading zeroes in the score.
$008F0E 3 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

LDA !score,x, loads the score from the given tile instead of $0F29.
$008F13 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

LDA #!NULL, loads the empty tile for the status bar.
$008F15 3 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

STA !score,x or NOP #3, either stores the score to the given tile instead of $0F29 or disables the score.
$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).
$008F3B 6 bytes Jump (JML/JSL) Modified by the Death Counter Version 1.2 patch by Thomas.

JSL, jumps to a custom routine that draws the counter tiles to the status bar, then branches forward to a label inserted at $008F5B.
$008F49 6 bytes Jump (JML/JSL) Hijack for the left aligned life counter.

Modified also by the "Press R to switch characters" patch (4 bytes). It jumps to the main patch code.
$008F49 4 bytes Jump (JML/JSL) Hijacked by Play as Yoshi: Runs the main code every frame.
$008F49 4 bytes Jump (JML/JSL) Hijacked by the Speed Testing Patch by Pseudonym.
It jumps to the main code of the patch.
$008F49 4 bytes Jump (JML/JSL) Modified by the Duck Walking patch, by Pseudonym.
Allows moving left or right when ducking.
$008F51 10 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Replaces the vanilla lives display with its own lives display.
$008F55 6 bytes Jump (JML/JSL) Modified by the Invisible Powerup Patch, by wiiqwertyuiop.

Jumps to the main code, which handles the invisibility power-up.
$008F55 6 bytes Code Modified by SMB2-Styled Health Bar, by Demonsul and KilloZappit.

Writes the lives counter in its new position in the status bar.
$008F55 6 bytes Jump (JML/JSL) Modified by the Numerical Dragon Counter patch, by Neosz. Writes the number of Dragon Coins collected to the status bar.
$008F5B 6 bytes Jump (JML/JSL) Modified by Power Jumps, by HuFlungDu/Major Flare.

JSL : NOP #2, hijacks a portion of the status bar routine to run gravity-altering code every frame.
$008F5E 3 bytes Code Hijacked by the Yoshi Coin Counter Patch, by Darolac.

Replaces a read of the bonus stars counter with a read of the "number of levels in which all Yoshi coins were found" counter in the status bar routine.
$008F67 12 bytes Code Hijacked by the Yoshi Coin Counter Patch, by Darolac.

Disables the bonus stars bonus game and prevents the "number of levels in which all Yoshi coins were found" counter from exceeding 99 (decimal).
Code
$008F70 20 bytes Code Modified by Nimono's '3 digit coin counter' patch. Gets rid of part of the code that writes coins to the status bar. [BRA : NOP #18]
$008F73 6 bytes Jump (JML/JSL) Hijack for the left aligned coin counter.
$008F7A 10 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Replaces the vanilla coin display with its own coin display.
$008F86 111 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Replaces the end of the status bar routine with its own to handle the item box, dashmeter and bonus stars.
$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.
$008F8F 3 bytes Code Hijacked by the Yoshi Coin Counter Patch, by Darolac.

Modifies the status bar number drawing routine to draw the number of levels in which all Yoshi coins were found instead of bonus stars.
$008FC8 4 bytes Jump (JML/JSL) Modified by SMB2-Styled Health Bar, by Demonsul and KilloZappit.

Jumps to a routine that changes the Mario/Luigi text in the status bar to the health bar.
$008FD8 5 bytes Jump (JML/JSL) Hijacked by the Per Level Yoshi Coins Amount patch by Kevin.
JSL : NOP, changes how many Dragon Coins are displayed on the status bar in total for the current level.
$008FD8 5 bytes Jump (JML/JSL) Modified by Fire Power Timer patch. Handles fire power timer.

Modified also by Nimono's '3 digit coin counter' patch (5 bytes). Jumps to the main routine. [JSL : NOP]
$008FE4 14 bytes Code Modified by the Numerical Dragon Counter patch, by Neosz. This hijack clears the "Draws Yoshi Coins in the status bar" routine.
$008FEF 3 bytes Code Modified by SMB2-Styled Health Bar, by Demonsul and KilloZappit.

Writes the dragon coin counter in its new position in the status bar.
$008FF9 1 byte Opcode Used by the Advanced version of the Super Status Bar patch by GreenHammerBro and Kaijyuu. Not modified, but the patch expects an RTS opcode at this location.
$009012 51 bytes Code Modified by the 8 Digits Score patch by Isikoro.
Replaces the original "6 digits Hex-Dec" routine with an "Add points routine" (ends in RTL), which adds the 16-bit value in A to the score, and returns with A in 8-bit mode. To add score when using this patch, you can call this routine with a JSL.
$009014 3 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

STA !score,x or NOP #3, either stores the score to the given tile instead of $0F29 or disables the score.
$009034 3 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

STA !score,x or NOP #3, either stores the score to the given tile instead of $0F29 or disables the score.
$009051 128 bytes Hex Edit Modified by "Remove Status Bar" patch. Removes status bar functionality, including stars and reserve item, marking it as freespace.
$00907A 1 byte Data Modified by $02xx OAM Remapper. This is the table with the OAM index for the item box's sprite.
$00907A 1 byte Hex Edit Hijacked by the Extended No More Sprite Tile Limits patch, by DiscoTheBat, Kevin, Roy, imamelia and worldpeace.
Moves the item box OAM index to $02FC outside of Reznor, Morton, Roy, Ludwig and Bowser's battles.
$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.
$0090AE 1 byte Hex Edit Modified by the Advanced version of the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is the X position of the item in the item box. It's set according to the !ITEM_X define in the patch, whose default value is the vanilla X position.
$0090B3 1 byte Hex Edit Modified by the Advanced version of the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is the Y position of the item in the item box. It's set according to the !ITEM_Y define in the patch, whose default value is the vanilla Y position.
$0090B8 1 byte Hex Edit Modified by the Advanced version of the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is the YXPPCCCT property byte of the item in the item box. It's set according to the !ITEM_PRIORITY define in the patch, whose default value is the vanilla property byte.
$0090CC 1 byte Hex Edit Modified by the Advanced version of the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is the size of the item in the item box. It's set according to the !ITEM_SIZE define in the patch, whose default value is the vanilla size.
$0090D0 1 byte Opcode Modified by the Advanced version of the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is the return instruction of the status bar item drawing routine, which is converted to a JSL routine.
$0091A6 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it jumps to an initialization routine.
$009216 9 bytes Jump (JML/JSL) Modified by undefinied3's New Super Mario Bros Wii - Level Intro patch. It calls the main code through JSL, NOP once, then jumps to a conditional check through JML.
$00925B 2 bytes Opcode Hijacked by the patch Free $7E04A0 by spooonsss.
LDA #$00 changed to LDA #!FreeRAM>>16. (hdma bank value)
$009263 19 bytes Code Hijacked by the patch Free $7E04A0 by spooonsss.
Changes the window RAM clear routine to clear the newly designated free RAM area instead of the original.
$00927C 7 bytes Data Hijacked by the patch Free $7E04A0 by spooonsss.
Changes to window pointers.
$00928C 2 bytes Opcode Hijacked by the patch Free $7E04A0 by spooonsss.
REP #$10 changed to REP #$30.
$009291 23 bytes Code Hijacked by the patch Free $7E04A0 by spooonsss.
Changes full screen window code to use !Freeram.
$0092AB 2 bytes Opcode Hijacked by the patch Free $7E04A0 by spooonsss.
REP #$10 changed to REP #$30.
$009322 4 bytes Jump (JML/JSL) UberASM tool and patch's Game Mode hijack.
$009322 4 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML, jumps to the routine that executes both "init" and "main" labels for gamemode specific codes. The init will be executed for the first frame of the gamemode, then the main will be executed for every frame after.
$009391 3 bytes Code Hijacked by "No Title, No Intro, No Problems" by Kevin.

STZ, Sets to screen brightness.
$009394 4 bytes Jump (JML/JSL) Hijacked by the Intro Logo Patch, by Roy.

JML, handles the Nintendo Logo drawing via DMA.
$009397 26 bytes Code Hijacked by "No Title, No Intro, No Problems" by Kevin.

STZ : BRA, Sets the screen to dark, skips drawing the nintendo presents logo and layer 3 clean.

The skipped code is used as freespace to load overworld-related stuff such as SRAM and the player's OW position.
$00939A 36 bytes Jump (JML/JSL) Hijacked by the 128x128 Nintendo Presents Logo patch, by Kevin.

See details, draws the tiles of the Nintendo Presents (top left position and object tiles size in bank $00, the rest in freespace).
Code
$00939A 8 bytes Jump (JML/JSL) First hijack of Roy & ghettoyouth's 'Nintendo Presents Logo Expansion' patch (LDY #$3C : LDX #$0F before the JML).
$0093B4 12 bytes Code Second hijack of Roy & ghettoyouth's 'Nintendo Presents Logo Expansion' patch. Handles an OAM loop before the JML.
$0093C0 5 bytes Code Modified by AddmusicK.
Changes the "Nintendo Presents" song number, and changes "STA $1DFC" to "STA $1DFB" (since it's changed from SFX to song).
$0093C5 2 bytes Opcode Hijacked by "No Title, No Intro, No Problems" by Kevin.

BRA, Skips a bunch of code and heads straight to loading gamemode $02.
$0093C6 1 byte Hex Edit Hijacked by the 128x128 Nintendo Presents Logo patch, by Kevin.

db !intro_time, sets the time for how long Nintendo Presents stays active.
$0093D4 6 bytes Jump (JML/JSL) Hijacked by the 128x128 Nintendo Presents Logo patch, by Kevin.

See details, uploads a custom palette for the Nintendo Presents screen if a custom palette is enabled.
!custom_palette = 0 !custom_palette = 1
$0093D7 9 bytes Jump (JML/JSL) Modified by Nintendo Presents Custom Palette, by Roy.

JSL : NOP #5, replaces the palette load and background color settings for the "Nintendo Presents" object.

Hijacked also by undefinied3's New Super Mario Bros Wii Level Intro. It calls a routine that determines when to upload custom palettes for the level intro preview. Two NOPs are written after the JSL. [JSL : NOP #2]
$0093E6 4 bytes Jump (JML/JSL) Modified by "Mode 7 Game Over Screen" patch. Upload palette for mode 7 image.
$0093F7 5 bytes Code Modified by Lunar Magic.
$00940F 4 bytes Jump (JML/JSL) Hijacked by the Intro Logo Patch, by Roy.

JML, handles the fade-in and fade-out of the Nintendo logo.
$009417 2 bytes Opcode Hijacked by "No Title, No Intro, No Problems" by Kevin.

BRA, Branch to the hijacked code at $009397.
$009428 6 bytes Jump (JML/JSL) Modified by Title Screen Fade by Erik.

Handle title screen fade in during its circle in phase.
$00942B 1 byte Opcode Modified by the Playable Title Screen patch by Kevin.

RTS. Makes pressing A/B/X/Y during fade-in load the level instead of the file select.
$009471 5 bytes Code Modified by Lunar Magic.
$009476 5 bytes Jump (JML/JSL) Modified by "Mario + Animated Tile ExGFX" patch. Load default Mario and Animation graphics for credits.
$0094A0 3 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP : +, skips over the JSR to the vanilla routine that uploads the credits music data.
$0094B3 1 byte Hex Edit Modified by AddmusicK.
Changes the song number of the castle destruction cutscene.
  • Pages:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 23
  • 24