SMW Memory Map
Displaying 50 out of 2429 addresses.
View: moderated | waiting (19)
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 UberASM Tool. 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 UberASM Tool 1.x. JML, jumps to the routine that executes global main code. This hijack has been removed as of v2.0. |
|
$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) | Modified by the CPU Usage Meter patch. Jumps to the main code of the patch in a free area at $00FF9C. | |
$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. |
|
$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 UberASM Tool. JML : NOP #2, jumps to the routine that executes all possible "nmi" labels: global (removed as of v2.0), level, gamemode, and overworld. New to v2.0, if no resources use the "nmi" label, this hijack is removed and the original game code is restored. |
|
$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. |
|
$0081AF | 3 bytes | Code | Modified by Fix HDMA Flickering patch by anonimzwx. BRA $01 : NOP, removes the line [STZ $420C] from NMI. |
|
$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 as part of its VRAM modification patch. | |
$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 as part of its 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). |
|
$008243 | 2 bytes | Code | Modified by Controller Read Optimization by spooonsss. Changed to BRA $01 to skip the JSR to the controller update routine. |
|
$008275 | 4 bytes | Jump (JML/JSL) | Modified by the Move Layer 3 to Subscreen Fix patch, by Kevin and Lui. JML, modifies the NMI routine to back up the original main screen/subscreen settings to free RAM, disable Layer 3 on the main screen, and enable Layer 3 on the subscreen if the "Move Layer 3 to Subscreen" option is checked in Lunar Magic. |
|
$008275 | 4 bytes | Jump (JML/JSL) | Hijacked by Lui37's 'Move Layer 3 to Subscreen Fix' patch. It changes part of NMI. [JML] | |
$008275 | 3 bytes | Jump (JMP/JSR) | Modified by "Remove Status Bar" patch. Jump to code that disables IRQ. | |
$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. |
|
$008283 | 12 bytes | Code | Modified by Fix HDMA Flickering patch by anonimzwx. Flips the order the game writes to the screen display register ($2100) and the HDMA enable register ($420C) in NMI, making the game first write to the HDMA enable register. |
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 | 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 | 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 | Jump (JML/JSL) | Modified by the b4vwf - BG4 Variable-Width-Font Text Boxes patch, by Katrina. JML : NOP #2, changes NMI settings to set up message box IRQ. |
|
$0082B0 | 12 bytes | Code | Modified by Fix HDMA Flickering patch by anonimzwx. Flips the order the game writes to the screen display register ($2100) and the HDMA enable register ($420C) in NMI, making the game first write to the HDMA enable register. |
Code |
$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. | |
$0082F4 | 2 bytes | Code | Modified by Controller Read Optimization by spooonsss. Changed to BRA $01 to skip the JSR to the controller update routine. |
|
$00834B | 12 bytes | Code | Modified by Fix HDMA Flickering patch by anonimzwx. Flips the order the game writes to the screen display register ($2100) and the HDMA enable register ($420C) in NMI, making the game first write to the HDMA enable register. |
Code |
$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. |
|