Language…
9 users online: Jacko, Klug, Koll5, MegaSonic1999, MorrieTheMagpie, pnaha,  RussianMan, Squiggs, xfix - Guests: 67 - Bots: 126
Users: 56,238 (2,277 active)
Latest user: noogieboogie

SMW Memory Map

Displaying 500 out of 2026 addresses.

View: moderated | waiting (28)

Filter

Link
Hijack Address Length Type Description Details
$008023 4 bytes Jump (JML/JSL) Modified by ZSNES incompatibility notice. Jumps to the main code.
$008027 4 bytes Code Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Inserts a SEP #$30, to set the processor status to 8-bit A and X/Y, and a BRA to skip the code that uploads the OAM clear routine to $7F8000.
The BRA jumps to $008052 if !UberASMTool = 0, and to $00804E if !UberASMTool = 1.
$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.
$00804E 4 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML, jumps to the routine that initializes the freeram used by the tool and executes the global init code.
$008052 3 bytes Jump (JMP/JSR) Hijacked by AddmusicK.
Inserts a JSR to the custom UploadSPCEngine routine inserted in the $008079 area, replacing the original JSR.
$00805E 3 bytes Hex Edit Modified by AddmusicK.
Inserts 3 NOPs to skip a JSR to a routine that uploads samples to the SPC700.
$00806B 4 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML, jumps to the routine that executes global main code.
$008070 4 bytes Jump (JML/JSL) Modified by 16-bit frame counter. Jump to code that increases both $13 and 16-bit frame counters.
$008072 3 bytes Jump (JMP/JSR) Hijacked by the Lunar Magic's "VRAM Patch" Optimization patch, by Kevin.

JSR, replaces the main game loop call with a call to a custom routine in bank 0 freespace, which allows the stripe image modifications to take place outside of NMI after the game loop has run.
$008072 3 bytes Jump (JMP/JSR) Modified by the CPU Usage Meter patch. Jumps to the main code of the patch in a free area at $00FF9C.
$008075 4 bytes Jump (JML/JSL) Hijacked by AddmusicK.
JML to the main AMK routine inserted in the $0E8000 area.
$008079 209 bytes Code Modified by AddmusicK.
Replaces the original SPC data upload routine with a custom one.
$008176 6 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML : NOP #2, jumps to the routine that executes all possible NMI codes inserted in the tool (global, level, gamemode, overworld). For efficiency, certain parts of the code are only inserted if needed.
$008179 49 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP #47 : +, skips over original NMI audio code that's already handled in AMK's routines. This is inserted in case neither $008179 == $5C nor $008176 == $5C.
$00817C 46 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP #44 : +, skips over original NMI audio code that's already handled in AMK's routines. This is inserted in case $008176 is $5C (JML), to make it compatible with a LevelNMI (UberASM) hijack.
$00817D 45 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP #43 : +, skips over original NMI audio code that's already handled in AMK's routines. This is inserted in case $008179 is $5C (JML), to make it compatible with PowerTool.
$00818F 18 bytes Code Hijacked by the No Title SFX patch.
A piece of code that mutes every SFX in the title screen.
$0081AA 8 bytes Jump (JML/JSL) Modified by Ice Man's 'HDMA v3.5' patch. Hijacks NMI and calls the main routine. [JSL : BRA : NOP #2]
$0081AA 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it jumps to the code that turns off HDMA during level transitions (including room respawning).
$0081AA 5 bytes Jump (JML/JSL) Hijacked by the HDMA Bugfixes patch, by Ice Man.

JML : NOP, clears the HDMA enable mirror on specific game modes.
$0081C6 5 bytes Jump (JML/JSL) Modified by the Easy Mode 7 Patch by ExE Boss, HuFlungDu, and mathie.

JML : NOP, makes SMW use the Mode 7 mirrors in any Mode 7 level instead of just boss levels.
$0081D5 4 bytes Jump (JML/JSL) Modified by "Mode 7 Game Over Screen" patch. Check for game over game mode and update mode 7 image.
$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.
$0081F4 3 bytes Hex Edit Modified by "Remove Status Bar" patch. Remove routine call that draws status bar during normal levels.
$0081F4 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

BRA $01, skips the vanilla status bar NMI routine.
$008209 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

Part of Lunar Magic's VRAM modification patch.
$00820D 4 bytes Jump (JML/JSL) Hijacked by the Inline Layer 3 Messages v1.0.1 patch, by MarioFanGamer.

JML, jumps to code that handles VRAM reads/writes during NMI (if !HijackNmi = 1).
$00820D 5 bytes Code Modified by the Inline Layer 3 Messages v1.0.1 patch, by MarioFanGamer.

Code, restores the original NMI code so that the custom code can be inserted via UberASM (if !HijackNmi = 0).
$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).
$008275 3 bytes Jump (JMP/JSR) Modified by "Remove Status Bar" patch. Jump to code that disables IRQ.
$008275 4 bytes Jump (JML/JSL) Hijacked by Lui37's 'Move Layer 3 to Subscreen Fix' patch. It changes part of NMI. [JML]
$008282 1 byte Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

db $11, repoints the branch destination to jump to $00828F instead of $0082A1 when not in the credits.
$008292 24 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

See details, handles the NMI code of the status bar.
Hijacked Code
$008292 1 byte Code Modified by the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is the scanline at which the status bar IRQ will fire in normal levels.
$008292 4 bytes Jump (JML/JSL) Hijacked by the Timer Sprite Status Bar patch, by CircleFriendo.

JML, sets the game modes where IRQ will be fired normally and where it is disabled.
$008294 4 bytes Jump (JML/JSL) Hijacked by the RAM Toggled Status Bar (& IRQ) Patch, by Kevin.
JML, hijacks the status bar IRQ setup.
$0082B0 6 bytes Code Modified by [url=https://www.smwcentral.net/?p=section&a=details&id=26810]b4vwf to change NMI settings to set up message box IRQ.
$0082B0 6 bytes Jump (JML/JSL) Modified by VWF Level Intros. Modifies brightness ($2100) store at NMI by aligning it to h-blank.
$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).
$0082E8 3 bytes Hex Edit Modified by "Remove Status Bar" patch. Remove routine call that draws status bar during Mode 7 boss battles.
$00835C 1 byte Code Modified by the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is the scanline at which the status bar IRQ will fire in mode 7 boss levels.
$00835C 4 bytes Jump (JML/JSL) Hijacked by the Timer Sprite Status Bar patch, by CircleFriendo.

JML, sets the game modes where IRQ will be fired normally and where it is disabled inside Mode 7 rooms.
$008385 5 bytes Jump (JML/JSL) Modified by b4vwf to change IRQ settings to set up BG4 settings on message box region.
$008385 7 bytes Jump (JML/JSL) Modified by the Easy Mode 7 Patch by ExE Boss, HuFlungDu, and mathie.

JML : NOP : BMI, compatability code for SA-1 Pack v1.32+ due to changes in IRQ code. Not hijacked on LoROM.
$00838F 5 bytes Jump (JML/JSL) Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

JML : NOP, handles the IRQ code of the status bar.
$00838F 2 bytes Code Modified by Lui37's 'Move Layer 3 to Subscreen Fix' patch. [LDY #$1E]
$008394 4 bytes Jump (JML/JSL) Hijacked by Lui37's 'Move Layer 3 to Subscreen Fix' patch. It modifies IRQ. [JML]
$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.
$0083ED 2 bytes Opcode Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

BRA $04, disables the fixed position of layer 3 during the goal march.
$0085D2 4 bytes Hex Edit Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
It writes the original data [$A4, $12, $B9, $D0] in case the first byte is $5C (JML). This specifically restores the changes made by the Strip Image Uploader Hack patch by imamelia.
$008642 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$0086DA 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F812E with a JSL to the OAM clear routine in freespace.
$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.
$008751 4 bytes Code Modified by the Lunar Magic's "VRAM Patch" Optimization patch, by Kevin.

REP #$20 : LDA $03, removes a hijack inserted by Lunar Magic that runs the stripe image modifications in NMI.
$008A4E 5 bytes Code Modified by Lunar Magic.
$008C81 964 bytes Hex Edit Modified by Remove Status Bar patch by Lui.

Removes status bar functionality, including initialization, drawing, timer, score, coins, lives, stars (partially) and dragon coins, marking it as freespace. This freespace can be used by other patches (including Remove Status Bar itself).
$008C81 46 bytes Code Modified by "Remove Status Bar" patch. Disable IRQ. Written on top of freespace that was freed by another hijack (Non-SA-1, !enable_coins is disabled).
$008C81 68 bytes Code Modified by "Remove Status Bar" patch. Disable IRQ and place coin handling routine. Written on top of freespace that was freed by another hijack (SA-1 ROM, !enable_coins is enabled).
$008C81 43 bytes Code Modified by "Remove Status Bar" patch. Disable IRQ. Written on top of freespace that was freed by another hijack (SA-1 ROM, !enable_coins is disabled).
$008C81 71 bytes Code Modified by "Remove Status Bar" patch. Disable IRQ and place coin handling routine. Written on top of freespace that was freed by another hijack (Non-SA-1, !enable_coins is enabled).
$008C81 126 bytes Table Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

See details, removes the vanilla status bar tilemap and puts the player name and minimum dash meter values for each arrow into the free area.
Hijack
$008C89 108 bytes Table Modified by SMB2-Styled Health Bar, by Demonsul and KilloZappit.

Table that rearranges the status bar to show the health bar appropriately.
$008C89 12 bytes Table Modified by the Death Counter Version 1.2 patch by Thomas.

Table values for the "DEATHS" text.
$008CA9 20 bytes Hex Edit Modified by the SMB3 P-Meter Patch, by Ersanio.

Sets the status bar to draw the P-meter.
$008CAB 6 bytes Table Modified by Play as Yoshi: Replaces TIME with a clock on the status bar
$008CC9 12 bytes Table Modified by Play as Yoshi: Changes the status bar tilemap to make space for the powerup display.
$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.
$008CCD 2 bytes Hex Edit Hijacked by the Yoshi Coin Counter Patch, by Darolac.

Changes the red star icon on the status bar to a yellow coin.
$008CDF 1 byte Hex Edit Hijacked by the SMB3 P-Meter Patch, by Ersanio.

A simple hex edit that places a clock tile before the timer in the status bar.
$008CDF 2 bytes Hex Edit Hijacked by the Bigger Timer Patch, by nnj.

A hex edit responsible for the small clock tile (tile number and yxpccctt properties).
$008CFF 172 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Replaces the vanilla status bar upload routine with its own upload routine as well as handling the player name, Dragon Coin counter, dash meter and star coins.
$008CFF 4 bytes Jump (JML/JSL) Hijacked by the RAM Toggled Status Bar (& IRQ) Patch, by Kevin.
JML, hijacks the status bar tilemap transfer from ROM.
$008D8A 5 bytes Jump (JML/JSL) Modified by the Super Status Bar patch by GreenHammerBro and Kaijyuu. Jumps to a status bar initialization routine during level load.
$008DAC 5 bytes Jump (JML/JSL) Hijacked by the Timer Sprite Status Bar patch, by CircleFriendo.

JML : RTS, uploads the numbers and the clock symbol to VRAM whenever the clock ticks down.
$008DAC 4 bytes Jump (JML/JSL) Hijacked by the RAM Toggled Status Bar (& IRQ) Patch, by Kevin.
JML, hijacks the status bar tilemap transfer from RAM.
$008DB0 1 byte Hex Edit Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

db $40, sets the VRAM destination of the status bar to $5040 instead of $5042
$008DB6 2 bytes Code Modified by the Super Status Bar patch by GreenHammerBro and Kaijyuu. This is an unconditional branch which skips over DrawStatusBar ($008DAC) and calls the main patch code at $008DE2.
$008DCD 1 byte Hex Edit Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

db $60, sets the VRAM destination of the status bar to $5060 instead of $5063
$008DE2 5 bytes Jump (JML/JSL) Modified by the Super Status Bar patch by GreenHammerBro and Kaijyuu. Calls the main patch code and returns from DrawStatusBar ($008DAC). Branched to from $008DB6.

In the vanilla game, this address is not aligned to an instruction and is instead in the middle of an LDA at $008DE1.
$008DE9 4 bytes Hex Edit Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

db !status_tile,!status_tile>>8,$00,$20, changes the status bar DMA code to upload from !status_tile instead of $0EF9.
$008DF0 4 bytes Hex Edit Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

db !status_tile_bottom,!status_tile_bottom>>8,$00,$20, changes the status bar DMA code to upload from !status_tile instead of $0EF9. Note that !status_tile_bottom is !status_tile+$20.
$008E1A 5 bytes Jump (JML/JSL) Modified by the SMB3 P-Meter Patch, by Ersanio.

A JML that jumps to the main routine of creating the P-meter.
$008E1A 5 bytes Jump (JML/JSL) Modified by Spin Jump to Super Jump, by HuFlungDu.

JSL : NOP, hijacks a portion of the status bar routine to run spinjump-altering code every frame.
$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.
$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 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.
$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.
$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.
$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 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.
$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.
$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 4 bytes Jump (JML/JSL) Hijacked by the Speed Testing Patch by Pseudonym.
It jumps to the main code of the patch.
$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) Modified by the Duck Walking patch, by Pseudonym.
Allows moving left or right when ducking.
$008F49 4 bytes Jump (JML/JSL) Hijacked by Play as Yoshi: Runs the main code every frame.
$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.
$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.
$009322 4 bytes Jump (JML/JSL) UberASM tool and patch's Game Mode hijack.
$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.
$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.
$0094DA 6 bytes Jump (JML/JSL) Modified by the Castle Destruction Cutscene Custom Palettes patch, by Kevin.

JSL : BRA $00, modifies the call to the palette loading routine during castle cutscene init in order to load a custom palette.
$0094FD 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$0095AB 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$0095B6 3 bytes Code Modified by Lunar Magic.
$0095E9 13 bytes Code Modified by Lunar Magic.
$009632 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$0096A1 7 bytes Code Modified by VWF Level Intros. Gets rid of the Yoshi's House check for "MARIO START!" since the patch can handle that now.
$0096A1 4 bytes Jump (JML/JSL) Modified by undefinied3's New Super Mario Bros Wii - Level Intro patch. Jumps to a Yoshi's house check to determine if the intro screen should appear or not.
$0096A1 4 bytes Jump (JML/JSL) Modified by the Per Level "Mario Start!" Enable/Disable patch, by Kevin.

JML, modifies the display "MARIO START!" routine to bypass showing text based on a user-settable table, instead of deferring to the level tile being entered.
$0096B4 4 bytes Jump (JML/JSL) Hijacked by the Individual Dragon Coin Save patch by worldpeace, JackTheSpades and LX5.
JML, it jumps to a routine that initializes the ram tables used by the patch.
$0096BE 5 bytes Code Modified by the Playable Title Screen patch by Kevin.

If SkipDeath is disabled, restarts the current song when reloading the title screen. Otherwise restores original code.
$0096BE 4 bytes Jump (JML/JSL) Modified by the Overworld Indicators patch. A hijack is placed here to clear the SRAM/BW-RAM entries the patch uses. [JML]
$0096C3 3 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP : +, skips over the JSR to the vanilla routine that uploads the overworld music data.
$0096C7 1 byte Hex Edit Modified by AddmusicK.
Changes the title screen song number.
$0096CB 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it jumps to a routine that initializes all the checkpoint flags ram.
$0096E9 6 bytes Jump (JML/JSL) Hijacked by NSMB Star Coins: This one transfers the star coins into a local backup when loading a level (either from overworld or from a different level)
$009702 3 bytes Hex Edit Modified by AddmusicK.
NOP #3, skips over the JSR to the vanilla routine that uploads the level music data.
$009708 4 bytes Jump (JML/JSL) Modified by Lunar Magic. Points to the Horizontal Scroll Fix patch.
$009709 3 bytes Miscellaneous Not modified, but read by Center Scroll, by HammerBrother and Thomas.
org read3($009709)+$1D, inserts a JSL : NOP #2 into Lunar Magic code in freespace to execute custom scroll code.
$009712 4 bytes Jump (JML/JSL) Modified by undefinied3's New Super Mario Bros Wii - Level Intro patch. Calls a "time waste" loop that is used to keep the intro preview on screen for longer.
$009712 4 bytes Jump (JML/JSL) Modified by Horizontal Scroll Fix v1.1. Jumps to the main code.
$009723 5 bytes Hex Edit Modified by AddmusicK.
Changes the intro screen music number, and stores it to $1DFB rather than $0DDA.
$009728 24 bytes Code Modified by AddmusicK.
Modifies part of the code that sets the current level music by removing the check for bit 6 in $0DDA. It also replaces the original "Bowser fight" song number at $009737.
$009734 2 bytes Hex Edit Modified by AddmusicK.
Changes "BNE $02" to "BNE $05" to skip over "STA $1DFB".
$009738 4 bytes Jump (JML/JSL) Hijacked by the patch included in the Music Playlist uberASM by binavik.
JML, jumps to code that prevents the music from resetting back to the song set in Lunar Magic if the current song is different.
$00973B 5 bytes Code Modified by AddmusicK.
Replaces the original "AND #$BF" with NOPs, and then stores to $0DDA.
$009750 4 bytes Jump (JML/JSL) Modified by "Mode 7 Game Over Screen" patch. Upload mode 7 image.
$009759 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$009759 4 bytes Jump (JML/JSL) Modified by the Skip Game Over/Time Up Sequence with a Button Press patch, by RussianMan.

JML, modifies game mode 17 (Game Over / Time Up) to skip immediately to game mode 0B (Fade to Overworld) on any button press.
$009759 4 bytes Jump (JML/JSL) Modified by "Mode 7 Game Over Screen" patch. Check mode 7 image size and display puff of smoke.
$00977C 3 bytes Opcode Modified by "Mode 7 Game Over Screen" (SA-1 only). Fixes an oversight in SA-1 Pack which causes garbage to appear on the game over screen with this patch applied.
$00985A 3 bytes Hex Edit Modified by "Remove Status Bar" patch. Remove Status bar initialization.
$009870 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$009888 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$00988C 4 bytes Jump (JML/JSL) Modified by the Easy Mode 7 Patch by ExE Boss, HuFlungDu, and mathie.

JSL, fixes the Iggy/Larry battle mode. Hijacked even if !FixIggyLarry = 0.
$0098D1 1 byte Hex Edit Modified by the Free up RAM $7E2000 patch by p4plus2.
Changes the bank byte of GFX33 for the animated lava in mode 7 boss rooms.
$009A6A 4 bytes Jump (JML/JSL) Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

JSL, clears the background in Morton, Roy and Ludwig's boss battles during the level end.
$009A6F 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$009AA4 4 bytes Jump (JML/JSL) Modified by the Separate Luigi Graphics patch, by Bensalot, DiscoTheBat, and Smallhacker.
JSL, loads player graphics for the appropriate character during Game Mode 04 (Prepare Title Screen).
$009AB9 4 bytes Jump (JML/JSL) Hijacked by SMA2 Yoshi blocks: Unlocks all colours of Yoshi for the title screen.
$009B1C 3 bytes Code Modified by Lunar Magic.
$009B3F 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
Part of the sram expansion patch included in retry. If !midway_sram = 1, it jumps to a routine that erases the current save file data. Otherwise, it restores the original code ([D0 2C A0 02]).
$009B43 4 bytes Jump (JML/JSL) Modified by the Overworld Indicators patch. This hijacks the "Erase Game" routine to also clear the SRAM/BW-RAM addresses the patch uses. [JML]
$009BC9 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
Part of the sram expansion patch included in retry. If !midway_sram = 1, it's a JML which jumps to a routine to save the new data. Otherwise, it writes the original code ([8B 4B AB AE]).
$009BCC 7 bytes Jump (JML/JSL) Modified by the Overworld Indicators patch. Modifies a load of 010A and then hacks the save game routine to synchronize the values from SRAM to their backup. [JSL] Hijack
$009BD2 4 bytes Jump (JML/JSL) Modified by the BW-RAM Plus patch. Jumps to the save handling routine.
$009C67 32 bytes Code Modified by the Playable Title Screen patch by Kevin.

Skips over title screen movement code and allows the level to restart on player death. If !SkipDeath != 0, only 26 bytes are modified.
$009C6F 17 bytes Code Modified by Lunar Magic.

Handles the custom title screen movement.
$009C9F 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace.
$009CAD 3 bytes Hex Edit Hijacked by the HDMA Bugfixes patch, by Ice Man.

NOP : NOP : NOP, removes the code which disables HDMA on the title screen.
$009CD3 3 bytes Code Modified by Lunar Magic.
$009CF5 6 bytes Jump (JML/JSL) Modified by the BW-RAM Plus patch. Jumps to the init save files routine.
$009CFB 4 bytes Jump (JML/JSL) Modified by the Overworld Indicators patch. Modifies the load game routine to restore the SRAM backup. [JML]

NOTE: this hijacks read3($009CF8)+33 instead if using Ragey's Overworld Expansion.
Hijack
$009D6C 4 bytes Jump (JML/JSL) Hijacked by the Exit Percentage on File Select Patch, by KevinM.
JML, hijacks the exit number loader in order to compute a percentage instead.
$009D6C 8 bytes Code Modified by Alcaro's '100 Exits' patch - it changes the amount of exits required for displaying the *96 at the title screen, as well as what tiles form the *96.
$009D7C 4 bytes Code Hijacked by the Exit Percentage on File Select Patch, by KevinM.
Code, hijacks the stripe image loader to load a decimal percentage instead of an integer.
$009D7C 4 bytes Code Modified by Alcaro's '100 Exits' patch - it remaps the position of ones digit of the number of exits gotten in the title screen stripe image.
$009D85 4 bytes Jump (JML/JSL) Hijacked by the Exit Percentage on File Select Patch, by KevinM.
JML, hijacks the stripe image loader on the file select screen.
$009D86 4 bytes Jump (JML/JSL) Main hijack of Alcaro's '100 Exits' patch. [JML]
$009D96 2 bytes Code Hijacked by the Exit Percentage on File Select Patch, by KevinM.
Code, hijacks the stripe image loader to load a decimal percentage instead of an integer.
$009D96 2 bytes Code Modified by Alcaro's '100 Exits' patch - it changes the amount of blank tiles to be written to the title screen stripe image.
$009D9B 4 bytes Code Hijacked by the Exit Percentage on File Select Patch, by KevinM.
Code, hijacks the stripe image loader on the file select screen.
$009D9B 4 bytes Code Modified by Alcaro's '100 Exits' patch - it remaps the position of a blank tile used in the title screen stripe image.
$009E13 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
Part of the sram expansion patch included in retry. If SRAM plus is not installed in the rom, it jumps to the code that loads the custom data from sram. Otherwise, it restores the original code ([22 AD DA 84]).
$009E17 5 bytes Hex Edit Hijacked by AddmusicK.
BRA + : NOP #3 : +, skips the code that makes the music fade out after a game over.
$009E25 1 byte Hex Edit Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
It writes the initial lives count as set by the user.
$009E25 1 byte Hex Edit Modified by "Start with ..." by DiscoTheBat.

Set initial amount of lives.
$009E2C 6 bytes Jump (JML/JSL) Modified by SMB2-Styled Health Bar, by Demonsul and KilloZappit.

Jumps to a routine that initialize the player's health in a new game.
$009E32 6 bytes Jump (JML/JSL) Modified by "Start with ..." by DiscoTheBat.

Initialize lives, power-ups, items for the item box and yoshi for both players (part 1).
$009E35 5 bytes Jump (JML/JSL) Modified by Yoshi Player Patch: This one initialises values on the overworld (Yoshi's power up and the sprite in Yoshi's mouth).
$009E42 6 bytes Jump (JML/JSL) Modified by "Start with ..." by DiscoTheBat.

Initialize lives, power-ups, items for the item box and yoshi for both players (part 2).
$009E51 5 bytes Jump (JML/JSL) Hijacked by the Sprite Health Bar patch, by Koopster.

JML : NOP, initialises the health bar on file select.
$009E56 4 bytes Jump (JML/JSL) Hijacked by SMA2 Yoshi blocks: Green Yoshis are already unlocked on new files.
$009E5F 2 bytes Opcode Modified by "Start with ..." by DiscoTheBat.

Don't reset initial player.
$009E62 2 bytes Opcode Hijacked by "No Title, No Intro, No Problems" by Kevin.

BRA $01, Skips a routine related to gamemode $0B.
$009E66 1 byte Hex Edit Hijacked by "No Title, No Intro, No Problems" by Kevin.

Changed from $0B to $0C. Skips the "fade to overworld" gamemode and heads directly to "load overworld"
$009F19 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
JSL, it jumps to the routine at $05DD80.
$00A01F 6 bytes Code Modified by Lunar Magic.

Jumps to a routine that handles Layer 3 movement.
$00A045 5 bytes Code Modified by Lunar Magic, for a jump to code that handles changing the acts-like setting of the Layer 3 tide.

Also modified by the Per-level Layer 3 Tides Act-like Settings patch for a jump to its main routine.
$00A08A 5 bytes Jump (JML/JSL) Modified by Save Dragon Coins on Level End by MarioFanGamer.

JML : NOP, checks if the level has been beaten and all Dragon/Yoshi Coins have been collected, and saves them if so.
$00A0A0 3 bytes Code Modified by Lunar Magic.
$00A0B3 3 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP : +, skips over the JSR to the vanilla routine that uploads the overworld music data.
$00A0B9 4 bytes Jump (JML/JSL) Modified by the Separate Luigi Graphics patch, by Bensalot, DiscoTheBat, and Smallhacker.
JML, loads player graphics for the appropriate character during Game Mode 0C (Load Overworld).
$00A0BF 4 bytes Jump (JML/JSL) Modified by the Free $7F0000 patch. Main hijack of the patch; forces event restore when beating a level in game mode 0C. [JML]
$00A0BF 4 bytes Jump (JML/JSL) Modified by "Mario + Animated Tile ExGFX" patch. Load default Mario and Animation graphics for overworld.
$00A0CA 39 bytes Code Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
Part of the counterbreak code included in retry. It resets various counters if the respective define is set (!counterbreak_powerup, !counterbreak_coin, !counterbreak_yoshi), otherwise it restores the original code.
$00A0D8 8 bytes Code Modified by Leave Yoshi in Level by JackTheSpades and Katrina.

Remove yoshi when going to the overworld.
$00A0E6 4 bytes Jump (JML/JSL) Modified by SMB2-Styled Health Bar, by Demonsul and KilloZappit.

Jumps to a routine that deals with the player's health when ending a level and going back to the map.
$00A0EB 1 byte Code Modified by Lunar Magic (v3.30+).
Changes the CGADSUB settings on the overworld when using the "Disable path fade effect" option. Writes $20 or $30 depending on the "Enable translucency for palettes C-F in sprites" option being unchecked or checked.
$00A101 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
Part of the sram expansion patch included in retry. If SRAM plus is not installed in the rom, it jumps to the routine that loads the custom data from sram. Otherwise, it restores the original code ([22 AD DA 84]).
$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.
$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.
$00A18F 6 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML : NOP #2, jumps to the routine that executes the "init" label for overworld specific codes.
$00A1C3 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace. This hijack is only applied when !UberASMTool = 0.
$00A1C3 4 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML, jumps to the routine that executes the "main" label for overworld specific codes.
$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.
$00A1DA 4 bytes Jump (JML/JSL) Modified by the Separate Luigi Graphics patch, by Bensalot, DiscoTheBat, and Smallhacker.
JML, checks every frame at the start of Game Mode 14 (Level) if the active player has changed, and uploads the appropriate graphics if so.
$00A1DF 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JSL, modifies the start of gamemode 14's code to execute the retry prompt code when $1426 has particular values (if not, the original message box routine is executed instead).
$00A1F9 5 bytes Jump (JML/JSL) Hijacked by "Better Bonus Game" by Sonikku.
Jumps to code that adds a lose pose if the player loses the bonus game. (Optional)
$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.
$00A231 2 bytes Hex Edit Modified by AddmusicK.
Changes the "Unpause" sfx number to $08 (in bank $1DFA).
$00A23D 5 bytes Code Modified by AddmusicK.
Changes the "Pause" sfx number to $07 (in bank $1DFA), and changes the STY $1DF9 to STY $1DFA.
$00A242 5 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML : NOP, jumps to the routine that executes the "main" label for level specific codes.
$00A261 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it makes so exiting with start+select is always possible when using the "fast retry" setting.
$00A264 4 bytes Jump (JML/JSL) Modified by the Start + Select Advanced patch, by MarioFanGamer.

JML, modifies the "Select pressed while paused" routine to add in per-level checks and custom behaviors.
$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).
$00A284 5 bytes Jump (JML/JSL) Modified by the Better Music Pause patch by KevinM.

JML : NOP, modifies the Start + Select routine to return the game volume to its proper value when leaving a level.
$00A284 5 bytes Jump (JML/JSL) Hijacked by the Lower Volume When Pausing v1.1 patch, by Kevin.

JML : NOP, plays unpause sound when Start+Select exiting the level to restore sound volume.
$00A286 3 bytes Jump (JMP/JSR) Hijacked by AddmusicK (1.0.8).
JMP to code in freespace freed at $00A635 to play a SFX when exiting a level with start+select.
$00A28A 5 bytes Jump (JML/JSL) Modified by the Easy Mode 7 Patch by ExE Boss, HuFlungDu, and mathie.

JML : NOP, handles rotation and scaling.
$00A28A 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it requests the correct retry type if Mario is currently in the death animation.
$00A28E 1 byte Hex Edit Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
It changes the offset the BPL (at $00A28D) jumps to, depending on other patches installed in the rom that use nmi (specifically, the Mario DMA patches).
$00A295 4 bytes Jump (JML/JSL) Hijacked by the Free up RAM $7F:8000 patch by DiscoTheBat and Ersanio.
Replaces JSL $7F8000 with a JSL to the OAM clear routine in freespace. This hijack is only applied if !UberASMTool = 0.
$00A295 4 bytes Hex Edit Modified by UberASMTool.
Inserts 4 NOPs to remove "JSL $7F8000", since that routine is already called earlier in the main level code.
$00A299 4 bytes Jump (JML/JSL) Hijacked by the Offscreen Indicator Patch, by Thomas.

JSL, jumps to the main code, drawing a single '!' sprite tile whenever Mario gets above or below the visible screen.
$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]
$00A2A5 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
Replaces the original JSL to $05BB39 to a JSL to code in freespace to handle LM's ExAnimations (along with the original game animations). You can JSL to that routine in cases where animations don't usually run to have them run like normal (for example, during the file select gamemode). To do so, use "JSL read3($00A2A6)" (if the animations still don't run, add a "INC $14" before the JSL).
$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
$00A2D5 3 bytes Jump (JMP/JSR) Modified by "Remove Status Bar" patch. Enables coin functionality (!enable_coins is enabled).
$00A2D5 3 bytes Hex Edit Modified by "Remove Status Bar" patch. Disable call for coin functionality (!enable_coins is disabled).
$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) Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

JSL, displays the stars the player gains during the goal march when (for !GetStar_Sprite = 0).
$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.
$00A2E2 4 bytes Jump (JML/JSL) Modified by the patch included in the Carryable Pipe sprite by WhiteYoshiEgg.
It makes so when !FreezeTimeWhenTeleporting is set to 1, all sprites properly freeze while teleporting using the pipe.
$00A2E2 4 bytes Jump (JML/JSL) Modified by the patch included in the Portable Orb of Teleportation sprite by algae and WhiteYoshiEgg.
It makes so when !FreezeTimeWhenTeleporting is set to 1, all sprites properly freeze while teleporting using the orb.
(Note: this sprite is based on the Carryable Pipe, and they use the same hijacked code, so they can be used together).
$00A2E6 4 bytes Jump (JML/JSL) Hijacked by the Timer Sprite Status Bar patch, by CircleFriendo.

JML, runs the main code i.e. decrements the timer, plays the time is running out SFX and kills the player as well as draw it onscreen.
$00A2EE 5 bytes Jump (JML/JSL) Modified by SMA2 Slide Kill Chain patch by HammerBrother.

Reset consecutive kill counter if player stops sliding.
$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 4 bytes Jump (JML/JSL) Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

JML, it hijacks the MarioGFXDMA routine to transfer the goal letters through DMA when requested (only if no custom Mario DMA patches are used, otherwise the hijack is placed at $00A304+read1($00A28E).
$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) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it hijacks the MarioGFXDMA routine to transfer the retry prompt's letters through DMA when requested (only if no custom Mario DMA patches are used, otherwise the hijack is placed at $00A304+read1($00A28E)).
$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.
$00A308 1 byte Opcode Modified by the Remove Overworld Border Mario patch by Kevin.

Repoints the branch destination of the upload player GFX code to skip the code entirely instead of just the palette when no graphics are to be uploaded 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.
$00A339 4 bytes Jump (JML/JSL) Hijacked by the Alternate Mario ExGFX patch, by Alcaro, MarioFanGamer, and Thomas.

JML, jumps to code that handles swapping out the bank byte of the ExGFX depending on the value of a freeRAM address. It's stored to scratch RAM, which is later used to write the bank byte of the DMA source address.
$00A340 1 byte Hex Edit Modified by the Free up RAM $7E2000 patch by p4plus2.
Changes the bank byte of GFX32 for Mario's cape tile.
$00A355 4 bytes Jump (JML/JSL) Hijacked by the Alternate Mario ExGFX patch, by Alcaro, MarioFanGamer, and Thomas.

JML, jumps to code that handles DMA'ing the top half of Mario's tiles.
$00A367 4 bytes Jump (JML/JSL) Modified by the Free up RAM $7E2000 patch by p4plus2.
JML, used to change the bank byte of GFX32 and GFX33 for the Mario/Yoshi/Podoboo GFX DMA routine.
$00A375 4 bytes Jump (JML/JSL) Hijacked by the Alternate Mario ExGFX patch, by Alcaro, MarioFanGamer, and Thomas.

JML, jumps to code that handles DMA'ing the bottom half of Mario's tiles.
$00A387 4 bytes Jump (JML/JSL) Modified by the Free up RAM $7E2000 patch by p4plus2.
JML, used to change the bank byte of GFX32 and GFX33 for the Mario/Yoshi/Podoboo GFX DMA routine.
$00A390 5 bytes Code Modified by Lunar Magic.
$00A391 3 bytes Miscellaneous Not modified, but read by the Free up RAM $7E2000 patch by p4plus2 to change Lunar Magic's code.
Changes the bank byte of GFX33 for Lunar Magic's ExAnimations.
$00A39E 1 byte Hex Edit Modified by the Free up RAM $7E2000 patch by p4plus2.
Changes the bank byte of GFX33 for the original animations.
$00A3F0 6 bytes Jump (JML/JSL) Modified by the Free up RAM $7E2000 patch by p4plus2.
JSL : NOP #2, used to change the bank byte of GFX32 for the berries animation.
$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.
$00A5A8 3 bytes Hex Edit Modified by "Remove Status Bar" patch. Remove routine call that initializes status bar.
$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.).
$00A5AB 4 bytes Jump (JML/JSL) Hijacked by the Timer Sprite Status Bar patch, by CircleFriendo.

JML, initialises the timer by settings the clock speed and resets !StatusBarDisable.
$00A5AF 5 bytes Jump (JML/JSL) Modified by the Easy Mode 7 Patch by ExE Boss, HuFlungDu, and mathie.

JML : NOP, turns off ExAnimation in Mode 7 levels.
$00A5BF 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

Loads the custom palette of a level depending on the value of $FE. If a custom palette should be loaded, $FE = level number + 1. Otherwise $FE = 0, and no custom palette is loaded. To load the palette, $0EF600 is indexed by ($FE-1)*3 to get a 24-bit pointer. If the low and high bytes of the pointer are both zero, no custom palette will be loaded. If a pointer exists, however, the first 2 bytes from it are stored to $0701 and the following 512 bytes are written directly to $0703.

$FE is cleared after it is read, possibly to avoid a custom palette from being uploaded twice.
$00A5D5 3 bytes Jump (JMP/JSR) Modified by "Remove Status Bar" patch. Enables coin functionality (!enable_coins is enabled).
$00A5D5 3 bytes Hex Edit Modified by "Remove Status Bar" patch. Removes call coin funtionality (!enable_coins is disabled).
$00A5D5 5 bytes Jump (JML/JSL) Modified by "Mario + Animated Tile ExGFX" patch. Load Mario and Animation graphics on per-level basis.
$00A5E1 6 bytes Code Modified by Lunar Magic.
$00A5EE 4 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML, jumps to the routine that executes the "init" label for level specific codes.
$00A5FE 3 bytes Code Modified by Lunar Magic.
$00A635 31 bytes Code Modified by AddmusicK.
BRA + : NOP #29 : +, skips over code that manipulates $0DDA.
Since AMK 1.0.8, it adds a small piece of code at $00A638 jumped from $00A286 to play a SFX when exiting a level with start+select.
$00A645 15 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP #13 +, skips over code that manipulates $0DDA.
$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.
$00A683 3 bytes Hex Edit Modified by the Goal Type-Dependent Behavior (No Goal Sphere Walk) patch, by Koopster.

Changes an ASL to a STZ, so that $13CB is always cleared when a level is loaded.
$00A683 6 bytes Jump (JML/JSL) Modified by the Activate Unused Starman Mechanic v1.1 patch by JamesD28.
JML : NOP #2. Jumps to the routine for incrementing the star power flag at $13CB.
$00A686 7 bytes Jump (JML/JSL) Hijacked by Pixi.
Jumps to the code that prepares cluster sprites. After it there's a pointer to custom cluster sprite data.
$00A6B8 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00A6CC 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
JSL, it jumps to the routine at $05DD00.
$00A6DE 2 bytes Opcode Modified by Yoshi Wings Entrance Type by Zeldara109.

Disable "Do Nothing - Slippery Level (Cannot Bring Item)" entrance from making the level slippery.
$00A6ED 8 bytes Hex Edit Modified by AddmusicK.
BRA + : NOP #6 +, skips over code that manipulates $0DDA.
$00A704 4 bytes Jump (JML/JSL) Modified by Yoshi Wings Entrance Type by Zeldara109.

Change a check for yoshi wings entrance to check for entrance type instead of a flag.
$00A7B9 8 bytes Jump (JML/JSL) Modified by Center Scroll 3.3, by HammerBrother and Thomas.
JSL : NOP #4, jumps to the code that sets initial scroll line positions.
$00A873 4 bytes Code Modified by Lunar Magic.
$00A99B 4 bytes Jump (JML/JSL) Modified by the Separate Luigi Graphics patch, by Bensalot, DiscoTheBat, and Smallhacker.
JSL, forces a graphics upload during Game Modes 00 (Load Nintendo Presents) and 1D (Ending: Load Yoshi's House).
$00A9C7 4 bytes Jump (JML/JSL) Hijacked by the 128x128 Nintendo Presents Logo patch, by Kevin.

JML, uploads custom graphics for the Nintendo Presents screen.
$00A9DF 4 bytes Jump (JML/JSL) Modified by the Castle Destruction Cutscene ExGFX patch, by Kevin.

JML, modifies the level GFX file upload routine to load a custom set of sprite graphics during a castle cutscene.
$00A9F0 4 bytes Jump (JML/JSL) Modified by the Boss ExGFX patch, by Alcaro.
JSL. Jumps to a routine that checks the current sprite set, and switches it out for the new graphics that have been specified in the given tables.
$00AA06 2 bytes Code Modified by Lunar Magic.
$00AA20 4 bytes Jump (JML/JSL) Modified by the Castle Destruction Cutscene ExGFX patch, by Kevin.

JML, modifies the level GFX file upload routine to load a custom set of FG/BG graphics during a castle cutscene.
$00AA47 2 bytes Code Modified by Lunar Magic.
$00AA50 5 bytes Jump (JML/JSL) Modified by Lunar Magic.
It's a JSL to $0FF780, then RTS to skip the following original code.
$00AA6B 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00AA6B 4 bytes Jump (JML/JSL) Modified by the Separate Luigi Graphics patch, by Bensalot, DiscoTheBat, and Smallhacker.
JSL, replaces uploads of GFX00, GFX22, and GFX24 to VRAM with their alternate-character counterparts if appropriate.
$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 Jump (JML/JSL) Modified by Lunar Magic.
Jumps to Lunar Magic routine that loads the current submap palette to $0703 depending if the special world flag is set or not, bypassing the original game's routine.
You can call this to force loading the normal or special palette for the current submap (see example code).
Example code
$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.
$00B888 1 byte Code Modified by the Free up RAM $7E2000 patch by p4plus2.
Inserts an RTS to skip the whole GFX32/33 decompression routine.
$00B88B 2 bytes Code Modified by Lunar Magic.
$00B890 1 byte Code Modified by Lunar Magic.
$00B893 22 bytes Code Modified by Lunar Magic.
$00B8A4 5 bytes Jump (JML/JSL) Modified by the Separate Luigi Graphics patch, by Bensalot, DiscoTheBat, and Smallhacker.
JSL : RTS, modifies the player graphics decompression routine to load the (uncompressed) player graphics during Game Mode 01 (Nintendo Presents Logo). Note that this hijack overwrites code applied 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.
$00BA4E 8 bytes Jump (JML/JSL) Unused in a clean ROM (all $FF), it's modified by Lunar Magic's FastROM patch.
$00BA56 8 bytes Code Default freespace in bank 0 to be modified by the Lunar Magic's "VRAM Patch" Optimization patch, by Kevin.

JSR : JSL : RTS, calls the main game loop, jumps to freespace to run the stripe image modifications, then returns.
$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
$00C005 83 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Replaces the write to item memory routine with its own version.
$00C058 5 bytes Code Modified by Lunar Magic.
$00C05D 6 bytes Opcode Hijacked by the Item Memory Table Expansion patch, by Isikoro.

RTS, the return opcode of write item memory.
$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.
$00C35D 66 bytes Jump (JML/JSL) Hijacked by the Climbing Net Door on Subscreen Boundary Fix patch, by Kevin.

Changes the code so that nets check, whether they horizontally cross a subscreen boundary, gets the stripe image index, set the row counter, jumps to freespace to handle the rest of the code, ends the stripe image and updates the index.
At the end of the code, there is the table which contains how many tiles to upload per side depending on how much the net crosses a subscreen boundary.
$00C3D5 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$00C483 1 byte Hex Edit Modified by the Goal Type-Dependent Behavior (No Goal Sphere Walk) patch, by Koopster.

Changes a BPL to a BRA so that $13CB's star power code never runs.
$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.
$00C526 1 byte Hex Edit Modified by AddmusicK.
Changes the "Bonus game end" song number.
$00C52E 4 bytes Jump (JML/JSL) Hijacked by "Better Bonus Game" by Sonikku.
This changes the bonus game end routine to trigger the overworld's events. (Optional)
$00C53E 5 bytes Code Modified by AddmusicK.
Changes "LDA $0DDA" to "LDA !MusicBackup" (although !MusicBackup = $0DDA so it's kind of pointless) and replaces "BMI $0C" with two NOPs.
$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.
$00C5CE 8 bytes Jump (JML/JSL) Modified by the patch included in GreenHammerBro's SMB3 screen scrolling pipes.
JSL : NOP #4, it fixes HDMA issues that happen when setting $7E0071 to #$0B while outside of Bowser's fight (since the pipes use it to freeze the player and disable interactions).
$00C5CE 3 bytes Hex Edit Hijacked by the HDMA Bugfixes patch, by Ice Man.

NOP : NOP : NOP, removes the code which disables HDMA for player animation 0B.
$00C82A 4 bytes Jump (JML/JSL) Modified by Yoshi Wings Entrance Type by Zeldara109.

Check for entrance type and use "yoshi wing" entrance if said entrance is set to "Do Nothing - Slippery Level (Cannot Bring Item)".
$00C921 5 bytes Code Modified by the Goal Type-Dependent Behavior (No Goal Sphere Walk) patch, by Koopster.

Replaces the vertical level check with a "$13CB non-zero" check, so that when $13CB is set, the Goal Point Question Sphere will always have vertical level behavior (like Sunken Ghost Ship), even in horizontal levels.

This also fixes the bug where a standard goal tape will behave like a Goal Point Question Sphere in vertical levels.
$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.
$00C9B7 5 bytes Jump (JML/JSL) Modified by Leave Yoshi in Level by JackTheSpades and Katrina.

Initialize zoom in after yoshi is ditched.
$00C9BD 1 byte Hex Edit Modified by AddmusicK.
Changes the "Iris out" song number.
$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.
$00C9C2 10 bytes Jump (JML/JSL) Modified by Leave Yoshi in Level by JackTheSpades and Katrina.

Handles yoshi ditching when ending the level.
$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.
$00CA2B 4 bytes Jump (JML/JSL) Hijacked by the Midway Point Timer Reset patch by WhiteYoshiEgg.
JML, it jumps to a routine to reset the timer when the midway is touched.
$00CA2B 5 bytes Jump (JML/JSL) Hijacked by the Individual Dragon Coin Save patch by worldpeace, JackTheSpades and LX5.
JSL : NOP, it jumps to a routine that copies the collected Dragon Coins buffer to the tables, when !Midpoint = 1. If !Midpoint = 0, the original code (LDA #$01 : STA $13CE) is written instead, to restore it in case of patching it after changing !Midpoint from 1 to 0.
$00CB0C 3 bytes Opcode Hijacked by the HDMA Bugfixes patch, by Ice Man.

TSB $0D9F, changes the HDMA enable code for the level end circle so it doesn't disable every other channel.
$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
$00CCC3 3 bytes Jump (JMP/JSR) Modified by Center Scroll 3.3, by HammerBrother and Thomas.
JSR, jumps to $00CDDD. Re-enables L/R Scrolling when the option is enabled.
$00CCC3 3 bytes Code Modified by Center Scroll 3.3, by HammerBrother and Thomas.
NOP #3, disables L/R Scrolling when the option is enabled.
$00CCCA 6 bytes Jump (JML/JSL) Hijacked by the ControllerHamper patch included in the SMB3 Goomba Family, by Sonikku.

JML : NOP #2, jumps to code that disables A,B,X,Y,L and R if a FreeRAM flag is non-zero.
$00CD5E 4 bytes Jump (JML/JSL) Modified by the Velocity-Based Climb Patch by BreadWheatmann.

JML, adds a check for the player velocity when the player tries to climb a block.
$00CDF6 4 bytes Code Modified by Center Scroll 3.3, by HammerBrother and Thomas.
Snippet of code that re-enables L/R Scrolling when the option is enabled.
$00CDF6 4 bytes Jump (JML/JSL) Modified by Center Scroll 3.3, by HammerBrother and Thomas.
JML, jumps to $00CE78. Disables L/R Scrolling when the option is enabled.
$00CF3D 2 bytes Opcode Modified by Yoshi Player Patch: Spin jumps don't change Yoshi's direction.
$00CF3D 4 bytes Jump (JML/JSL) Hijacked by Capespin During Flight Fix by betalogic.
JSL, it jumps to a routine which stores the direction backed up to a free RAM address to Mario's direction, if the cape spin timer ended. This ensures that the final direction is always the opposite of before starting to spin.
$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.
$00CF48 6 bytes Jump (JML/JSL) Hijacked by the Big Mario -> Small Mario GFX patch, by K3fka.

JML, jumps to code that decrements the X register when Mario's powerup status is 1 (big Mario), that serves as an index for Mario's spinjumping GFX. 2 leftover bytes are NOP'd out.
$00CF62 4 bytes Jump (JML/JSL) Hijacked by the Expanded Carrying v0.15 patch, by Sonikku.

JML, jumps to code that handles Mario's animation frames while crouching.
$00CF8F 4 bytes Jump (JML/JSL) Hijacked by the Expanded Carrying v0.15 patch, by Sonikku.

JML, jumps to code that handles Mario's animation frames while turning around.
$00CFA6 4 bytes Jump (JML/JSL) Hijacked by the Expanded Carrying v0.15 patch, by Sonikku.

JML, jumps to code that handles Mario's animation frames while jumping with an item.
$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.
$00D00A 4 bytes Jump (JML/JSL) Hijacked by the Expanded Carrying v0.15 patch, by Sonikku.

JML, jumps to code that handles Mario's animation frames while walking.
$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.
$00D064 4 bytes Jump (JML/JSL) Hijacked by the Charged Fireball patch by Ladida and SuperMariaSis.
It makes so the charged fireball timer is reset when getting the cape powerup.
$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.
$00D06C 5 bytes Jump (JML/JSL) Hijacked by the Cape Wall and Spin Fly Fix patch by Alcaro and HammerBrother.

JSL : NOP, disables cape spin while flying, wallrunning, or both, depending on configuration.
$00D074 4 bytes Jump (JML/JSL) Hijacked by the Cape Spin Cooldown patch, by Kevin.

JML, jumps to code that adds a check to the cape spin, to prevent spinning if a freeRAM timer is nonzero.
$00D076 5 bytes Jump (JML/JSL) Modified by the No Capespin In Water patch, by Ersanio.
Disables capespinning when in water.
$00D076 5 bytes Jump (JML/JSL) Hijacked by Capespin During Flight Fix by betalogic.
JSL, jumps to a routine which stores the opposite direction that Mario is facing to a free RAM address to be later retrieved. This routine is reached when pressing X/Y to cape spin.
$00D085 4 bytes Jump (JML/JSL) Hijacked by the Charged Fireball patch by Ladida and SuperMariaSis.
It jumps to the main code of the patch.
$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.
$00D08C 4 bytes Jump (JML/JSL) Modified by the Disable Fireball Shooting on Flag patch, by RussianMan.

JML, modifies the fire shooting routine to never spawn a fireball if the chosen flag is set.
$00D0B6 7 bytes Code Modified by Yoshi Player Patch: This one changes the death animation. New Death Animation
$00D0D8 3 bytes Hex Edit Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
It NOPs out the code that decrements the player's lives, if !lose_lives = 1. Otherwise, it restores the original code (DEC $0DBE).
$00D0DE 1 byte Hex Edit Modified by AddmusicK.
Changes the game over song number.
$00D0E6 4 bytes Jump (JML/JSL) Hijacked by the Time-Up + SFX Patch.
JML, jumps to the main code.
$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.
$00D107 1 byte Opcode Modified by Yoshi Player Patch: The death animation ends with a RTL, not a RTS.
$00D11C 1 byte Opcode Modified by Yoshi Player Patch: The death animation ends with a RTL, not a RTS.
$00D140 5 bytes Jump (JML/JSL) Hijacked by Modify Timers by cthulhu

Sets the time to remain invincible after being hit based on a value in RAM.
$00D147 5 bytes Jump (JML/JSL) Hijacked by the Sprite Health Bar patch, by Koopster.

JML : NOP, increments the player's health when the mushroom grow up animation finishes.
$00D16F 5 bytes Jump (JML/JSL) Hijacked by the Sprite Health Bar patch, by Koopster.

JML : NOP, turns the player invisible during the hurt animation (only when !PowerdownFreeze is active).
$00D174 2 bytes Hex Edit Modified by the Replace Cape with Double Jump patch. It prevents $1407 to be used as part of a branch condition, since its purpose has been changed by the patch.
$00D179 2 bytes Hex Edit Modified by the Replace Cape with Double Jump patch. It prevents $1407 to be reset when touching a Fire Flower.
$00D24E 4 bytes Jump (JML/JSL) Hijacked by the Horizontal Pipe Exiting Sound Fix Patch, by RussianMan.

JSL, A jump to a routine that handles Mario's exiting from a horizontal pipe, adding the sound it missed in the original code.
$00D2B2 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$00D5F2 4 bytes Jump (JML/JSL) Modified by Super Mario Land 2-Styled Spinjump. Jumps to SML2 spin jump code.
$00D600 4 bytes Jump (JML/JSL) Modified by Disable Ducking, by Iceguy/Meirdent.

JSL, modifies the normal check for holding Down to duck to either factor in powerup status, or always disregard the ducking input.
$00D630 4 bytes Jump (JML/JSL) Hijacked by Super Mario 64 Long & U-Jump patch. Adds Long and U-Jump abilities.
$00D63E 1 byte Opcode Modified by Super Mario Land 2-Styled Spinjump. Prevents spin jumping.
$00D645 1 byte Hex Edit Modified by Yoshi Player Patch: This edit prevents you to perform a spin jump.
$00D649 5 bytes Jump (JML/JSL) Modified by the Separate Jump SFX patch, by Lui.

JSL : NOP, changes the SFX of a regular spin jump to a custom sound that varies with current powerup if set to do so. Reverts the hijack to the original values otherwise.
$00D65E 5 bytes Jump (JML/JSL) Modified by the Separate Jump SFX patch, by Lui.

JSL : NOP, changes the SFX of a regular jump to a custom sound that varies with current powerup if set to do so. Reverts the hijack to the original values otherwise.
$00D65E 5 bytes Code Hijacked by AddmusicK.
Changes the jump SFX number, and remaps it to either $1DFC or $1DF9.
If !JumpSFXOn1DFC == !true, it writes "LDA #$35 : STA $1DFC", otherwise it writes "LDA #$2B : STA $1DF9".
$00D663 5 bytes Jump (JML/JSL) Modified by GreenHammerBro's 'Player X Speed Fix' patch. It hijacks the jump speed table depending on the player's X speed. [JML : NOP]
$00D663 5 bytes Jump (JML/JSL) Modified by Expensive Jump. Jumps to the main code.
$00D676 5 bytes Jump (JML/JSL) Hijacked by the Best Raccoon+Cape Patch patch, by Chdata.

JML : NOP, gives Raccoon and Cape Mario separate flight timers.
$00D6B9 2 bytes Hex Edit Modified by the Replace Cape with Double Jump patch. It disables part of the cape's gliding physics.
$00D706 5 bytes Jump (JML/JSL) Modified by Turning SFX. Plays sound effect when turning.
$00D718 1 byte Code Modified by Yoshi Player Patch: Yoshi is always running.
$00D742 4 bytes Jump (JML/JSL) Modified by GreenHammerBro's 'Player X Speed Fix' patch. Jumps to the main acceleration fix routine. [JML]
$00D7E7 2 bytes Hex Edit Modified by the Replace Cape with Double Jump patch. It disables part of the cape's gliding physics.