Language…
13 users online: caioskii, Cristian Cardoso, fanfan21, Golden Yoshi, Green Jerry, Hayashi Neru, Josuke Yoshikage, KoJi, Maw, Shomi, toady, tOaO, yoshi9429 - Guests: 242 - Bots: 324
Users: 64,795 (2,377 active)
Latest user: mathew

SMW Memory Map

Displaying 326 out of 2326 addresses.

View: moderated | waiting (13)

Filter

Link
Hijack Address Length Type Description Details
$04F605 4 bytes Jump (JMP/JSR) Modified by 999 lives, it's the new table for the arrow that appears during the "Lives Exchange" system.
$04F709 1 byte Code Modified by Lunar Magic; it changes which submaps have the thunder effect enabled, see the ROM Map for more info.
$04F767 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$04FBA2 1 byte Code Modified by Lunar Magic.
$04FD86 2 bytes Code Modified by Lunar Magic.
$04FD89 1 byte Code Modified by Lunar Magic.
$04FD8A 1 byte Opcode Modified by Lunar Magic.
$04FDAC 2 bytes Opcode Hijacked by the HDMA Bugfixes patch, by Ice Man.

LDA #$74, prevents ghosts on the overworld from going behind the foreground.
$04FFB1 5 bytes Code Hijacked by AddmusicK.
Inserts a "SEP #$30 : JMP $04DBD7". This is to restore overwritten code at $049AC2 and $049882, and to jump back to normal music changing code.
$04FFB7 10 bytes Jump (JML/JSL) Modified by Donkey Kong Country 2 Navigation Arrows patch by Alcaro, carol, lx5 and wiiqwertyuiop.

Located in freespace area, execute arrow code.
$05803B 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$05808C 5 bytes Jump (JML/JSL) Hijacked by UberASMTool.
JML : NOP, jumps to the routine that executes global "load" code and level specific "load" code.
$0580A9 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$0580BF 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$0580C3 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$0580C7 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$0580D3 3 bytes Jump (JMP/JSR) Modified by Lunar Magic.
$0583AD 5 bytes Code Modified by Lunar Magic.
$0583B8 5 bytes Jump (JML/JSL) Modified by Lunar Magic, for a jump to the ExGFX processing routine at $0FF7F0.
$0584DB 8 bytes Hex Edit Modified by AddmusicK.
Changes the table of vanilla level song numbers.
$058520 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, fixes layer 2 interaction on the first frame of entering a level.
$058555 17 bytes Code Modified by AddmusicK.
Modifies part of the level loading routine to change how $0DDA works.
$058583 4 bytes Jump (JML/JSL) Hijacked by the Midway Point Timer Reset patch by WhiteYoshiEgg.
JML, it hijacks the original routine that sets the level timer to backup its initial value to free RAM.
$058605 5 bytes Code Modified by Lunar Magic.
$0586A1 17 bytes Code Modified by Lunar Magic.
$0586F7 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$05879D 5 bytes Code Modified by Lunar Magic.
$058A18 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$058A65 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$058AF4 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$058B22 1 byte Code Modified by Lunar Magic.
$058B45 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$058BE6 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$058C33 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$058CD9 3 bytes Opcode Modified by Lunar Magic. Changes "AND.W #$01F0" to "AND.W #$3FF0".
$058D2A 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$058DA4 5 bytes Jump (JML/JSL) Modified by Lunar Magic.
JSL : NOP, jumps to the routine inserted at $0EFD00.
$058DB1 3 bytes Code Modified by Lunar Magic.
$058DB9 3 bytes Code Modified by Lunar Magic.
$058DCA 2 bytes Code Modified by Lunar Magic.
$058E12 3 bytes Code Modified by Lunar Magic.
$05A5D9 2851 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Inserts code which handles HDMA, writing and loading the message, graphics and status bar controllers.
$05B0FC 4 bytes Jump (JML/JSL) Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

JML, loads the next character of the currently active message.
$05B10C 4 bytes Jump (JML/JSL) Hijacked by the Inline Layer 3 Messages v1.0.1 patch, by MarioFanGamer.

JML, hijacks the message box routine to use the new inline system so that they are compatible with layer 3 backgrounds.
$05B10C 5 bytes Jump (JML/JSL) Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

JSL : RTL, it replaces SMW's message system with its own.
$05B10D 8 bytes Jump (JML/JSL) Modified by the b4vwf - BG4 Variable-Width-Font Text Boxes patch, by Katrina.

JML : JML, runs the main routine and stores the message pointers through JML.
$05B111 76 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Adds code to handle the status bar in mode 7 rooms as well as codes to handle the tilemap and layer 3 position for the top status bar.
$05B111 76 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

NMI routine, sets BG3's position to (0, 0) or sets the IRQ position depending on whether the current level is a Mode 7 boss or not.
$05B11B 2 bytes Code Modified by the b4vwf - BG4 Variable-Width-Font Text Boxes patch, by Katrina.

PHK : PLB, manages the data bank.
$05B129 3 bytes Code Modified by the b4vwf - BG4 Variable-Width-Font Text Boxes patch, by Katrina.

BRA $01 : NOP, prevents HDMA from getting disabled during message box transition.
$05B129 3 bytes Hex Edit Hijacked by the HDMA Bugfixes patch, by Ice Man.

NOP : NOP : NOP, removes the code which disables HDMA for closing a message box.
$05B15D 3 bytes Code Modified by Lunar Magic. Part of the Sprite 19 fix.
$05B16E 32 bytes Code Modified by the Automatic Intro Message Dismiss patch, by KevinM.

Modifies the game code to dismiss a message automatically if it's the intro message. All other messages are unaffected.

Also inserts labels at $05B15A, $05B18B and $05B18E.
$05B16E 2 bytes Code Modified by the b4vwf - BG4 Variable-Width-Font Text Boxes patch, by Katrina.

PLB : RTL, prematurely restores the data bank and returns immediately.
$05B16E 33 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Sets various flags of the message system when loading a message.
$05B16E 32 bytes Table Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

A list of tables which contains the pointers to all subroutines to write a message.
$05B18F 20 bytes Table Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

It adds pointers for message commands for its own message system.
$05B1A3 7 bytes Code Modified by Lunar Magic.
$05B1AA 240 bytes Code Hijacked by the MessageBox in Minimalist Status Bar + Goal Customizer patch, by Isikoro and Ladida.

Inserts code which writes the message and status bar to the layer 3 tilemap as well as code which closes the message.
$05B269 4 bytes Jump (JML/JSL) Hijacked by the patch Free $7E04A0 by spooonsss.
JML to a scratch RAM setup for later use.
$05B275 6 bytes Code Hijacked by the patch Free $7E04A0 by spooonsss.
Another remap to !FreeRAM.
$05B296 3 bytes Hex Edit Modified by the b4vwf - BG4 Variable-Width-Font Text Boxes patch, by Katrina.

TSB $0D9F|!addr, prevents HDMA from getting wrongly disabled during message box creation.
$05B296 3 bytes Opcode Hijacked by the HDMA Bugfixes patch, by Ice Man.

TSB $0D9F, changes the HDMA enable code for the message box so it doesn't disable every other channel.
$05B2DB 16 bytes Table Modified by the Inline Layer 3 Messages v1.0.1 patch, by MarioFanGamer.

Changes the Palace !-blocks X and Y position data to use offsets instead of hardcoded values, so that the blocks are always aligned with messages using the new system.
$05B872 57 bytes Data Hijacked by the One File, One Player patch, by Kevin.

Replaces the PLAYER 1 / PLAYER 2 menu text with the CONTINUE (or CONTINUE GAME if set so in the patch) / NEW GAME menu text.
$05B999 416 bytes Table Modified by the Free up RAM $7E2000 patch by p4plus2.
Changes the animations pointers table to point to the new GFX33 location.
$05BCA5 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$05BEEC 5 bytes Code Modified by Lunar Magic (v3.30+).
JSL : NOP, fixes a bug that occurs with scroll sprite EF (Layer 2 Scroll S/L) in tall horizontal levels.
$05C40C 5 bytes Code Modified by Lunar Magic.
$05C4B0 2 bytes Hex Edit Hijacked by the Customizable "High and Low" Tides UberASM, by Kevin.
Hex Edit, hijacks the tide Y speed RAM address to be set via UberASM rather than fixed values.
$05C4B6 2 bytes Hex Edit Hijacked by the Customizable "High and Low" Tides UberASM, by Kevin.
Hex Edit, hijacks the tide Y acceleration RAM address to be set via UberASM rather than fixed values.
$05C4BB 4 bytes Jump (JML/JSL) Hijacked by the Customizable "High and Low" Tides UberASM, by Kevin.
JML, hijacks the wait timer code to be set via UberASM rather than a fixed value.
$05C4C3 2 bytes Hex Edit Hijacked by the Customizable "High and Low" Tides UberASM, by Kevin.
Hex Edit, hijacks the tide Y position RAM address to be set via UberASM rather than fixed values.
$05C4F2 4 bytes Jump (JML/JSL) Hijacked by Tide Fix by allowiscous.

JML, fixes tide animation when freeze flag is set.
$05C727 5 bytes Jump (JML/JSL) Modified by On/Off Layer 2 Generator Fix, by GreenHammerBro.

JML : NOP, modifies the on/off Layer 2 scroll command to reset the "hit ground" flag when rising.
$05C75D 6 bytes Jump (JML/JSL) Modified by On/Off Layer 2 Generator Fix, by GreenHammerBro.

JML : NOP #2, modifies the on/off Layer 2 scroll command to set a "hit ground" flag, shaking the screen and playing a sound only once.
$05C7BC 4 bytes Jump (JML/JSL) Modified by the Platform-Dependent Fast BG Scroll patch, by JamesD28.

JML, modifies the fast BG scroll sprite to run a custom speed up/slow down routine.
$05CC28 14 bytes Hex Edit Modified by "Course Clear" Modifier by adakkusu-san.

Allows to edit COURSE word in "COURSE CLEAR!" string.
$05CC36 12 bytes Hex Edit Modified by "Course Clear" Modifier by adakkusu-san.

Allows to edit CLEAR! word in "COURSE CLEAR!" string.
$05CC42 31 bytes Table Modified by GHB Disable Score by HammerBrother and wye.

Removes level end score tally display.
$05CC46 2 bytes Hex Edit Modified by "Course Clear" Modifier by adakkusu-san.

Allows to edit timer symbol for score tally.
$05CC4E 8 bytes Hex Edit Modified by "Course Clear" Modifier by adakkusu-san.

Allows to edit "x50=" part of score tally.
$05CC66 2 bytes Hex Edit Modified by Course Clear Coins, by MarioFanGamer.

BRA $1C, disables awarding a 1-up if the tens and ones digit of the timer are both equal to the tens digit of bonus stars received. Optionally enabled.
$05CC66 2 bytes Hex Edit Hijacked by the Yoshi Coin Counter Patch, by Darolac.

BRA $1C, disables awarding a 1-up if the tens and ones digit of the timer are both equal to the tens digit of bonus stars received.
$05CC77 13 bytes Code Modified by GHB Disable Score by HammerBrother and wye.

Disables the hidden mechanic where an extra life is given if tens digit of bonus star counter matches the ones and tens of the timer.
$05CC84 5 bytes Jump (JML/JSL) Hijacked by NSMB Star Coins: This one saves all collected coins through beating a level with a goal post/sphere.
$05CCAA 78 bytes Code Modified by GHB Disable Score by HammerBrother and wye.

Disables timer display on end level score tally.
$05CCFB 43 bytes Code Modified by GHB Disable Score by HammerBrother and wye.

Disables score calculation based on timer during level end.
$05CD43 14 bytes Hex Edit Modified by "Course Clear" Modifier by adakkusu-san.

Allows to edit BONUS! string for bonus star tally.
$05CD51 6 bytes Hex Edit Modified by "Course Clear" Modifier by adakkusu-san.

Allows to edit (Star)(Multiplying symbol) and empty space part of bonus star tally.
$05CD51 2 bytes Data Modified by Course Clear Coins, by MarioFanGamer.

Replaces the red "★" on the "COURSE CLEAR!" text with a yellow coin icon.
$05CDE4 1 byte Hex Edit Modified by GHB Disable Score by HammerBrother and wye.

If !drumroll = 0, disables drum roll SFX during score/bonus star tally for level end.
$05CDFD 60 bytes Code Modified by GHB Disable Score by HammerBrother and wye.

Dummies out the hex to dec routine used to write time bonus to the score card.
$05CE4C 86 bytes Code Modified by GHB Disable Score by HammerBrother and wye.

Dummies out the routine responsible for the Timer * 50 bonus score calculation.
$05CEAF 1 byte Hex Edit Modified by GHB Disable Score by HammerBrother and wye.

Removes score's first zero from the display during level end.
$05CEC6 4 bytes Table Modified by the 8 Digits Score patch by Isikoro.
Modifies the table used to increment the score at the level end to adapt to the new score system.
Changes from [$0001,$000A] to [$0010,$0100], since the patch uses the decimal flag (so $0010 = 10, not 16) and it doesn't store the score as "actual score"/10 (so to add 10, you have to increase the score address by 10 rather than 1).
$05CECF 54 bytes Code Modified by GHB Disable Score by HammerBrother and wye.

Disables bonus score addition during level end.
$05CEF6 16 bytes Code Modified by the 8 Digits Score patch by Isikoro.
Modifies the code that adds score at the level end to account for the new score system.
$05CF12 12 bytes Hex Edit Modified by Course Clear Coins, by MarioFanGamer.

INC $13CC : BRA $07 : NOP #7, modifies the "COURSE CLEAR!" bonus star awarding routine to award coins instead.
$05CF15 9 bytes Jump (JML/JSL) Modified by the Trust Fund patch. Loads Yoshi Coin count then jumps to the main code with a JML : NOP #2.
$05CF36 3 bytes Hex Edit Modified by GHB Disable Score by HammerBrother and wye.

Disables amount of score to add up to the score total count at level end check for drumroll end SFX.
$05CF49 1 byte Hex Edit Modified by GHB Disable Score by HammerBrother and wye.

If !drumroll = 0, disables drum roll end SFX during score/bonus star tally for level end.
$05CF78 40 bytes Code Modified by GHB Disable Score by HammerBrother and wye.

Disables bonus score during level end display.
$05D79B 6 bytes Code Modified by Lunar Magic.
$05D7AB 5 bytes Jump (JML/JSL) Hijacked by the Individual Dragon Coin Save patch by worldpeace, JackTheSpades and LX5.
JML : NOP, it jumps to a routine that computes the value of $13BF for the level currently being entered, and sets the number of Dragon Coins collected in the level based on how many they were collected before.
$05D7B9 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
$05D7BD 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.
$05D7BD 6 bytes Jump (JML/JSL) Hijacked by the Item Memory Table Expansion patch, by Isikoro.

JSL, preserves the high byte of the level number or the secondary exist number.
$05D7BD 6 bytes Jump (JML/JSL) Modified by Ultimate Screen Teleporter by mario90.

Corrects exit index before secondary entrance teleport.
$05D7CE 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
JSL, it jumps to the routine at $05DC50.
$05D7D4 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.
$05D7E2 5 bytes Jump (JML/JSL) Modified by Lunar Magic. Transfers Y into X, then JSLs to a routine that uses long addressing to index secondary entrance table $05F800 or its expanded version.
$05D7EA 5 bytes Jump (JML/JSL) Modified by Lunar Magic. Transfers Y into X, then JSLs to a routine that uses long addressing to index secondary entrance table $05FA00 or its expanded version.
$05D81C 5 bytes Jump (JMP/JSR) Modified by Lunar Magic. Transfers Y into X, then JSLs to a routine that uses long addressing to index secondary entrance table $05FC00 or its expanded version.
$05D836 5 bytes Code Modified by Lunar Magic.
TYX : JSL, it copies the Y register into X and then jumps to the routine at $03BCE0.
$05D842 4 bytes Jump (JML/JSL) The main jump of Kaijyuu's Multi Midway Points 1.7 Patch.
$05D842 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it's the main entry point for the multiple midway points patch included in retry.
$05D8AC 5 bytes Code Hijacked by the Individual Dragon Coin Save patch by worldpeace, JackTheSpades and LX5.
It writes the original code (STA $0E : LDA $1F11,y) to restore it in case you patch the new version over an old one (which used this location as a jump point).
$05D8B1 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
JSL, it jumps to the routine at $05DCD0.
$05D8B7 39 bytes Code Modified by UberASM and other patches and tools.

Stores the current level number to $010B. Differs from the levelnum.ips patch in that this one uses no freespace.
$05D8B7 39 bytes Code Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
It's the LevelNum patch, which sets the current sublevel number in $010B.
$05D8B7 39 bytes Code Modified by UberASMTool.
Inserts code that sets the current sublevel number in $010B, in a way that's compatible with older versions of the LevelNum patch.
$05D8B7 39 bytes Code Modified by Ultimate Screen Teleporter by mario90.

The LevelNum patch, which sets the current sublevel number in $010B.
$05D8B9 3 bytes Jump (JMP/JSR) Modified by the Message Box Expansion patch. Jumps to the LevelNum code at $05DC46.
$05D8B9 3 bytes Jump (JMP/JSR) Hijacked by Pixi.
Inserts a JSR to the LevelNum routine inserted at $05DC46.
$05D8B9 3 bytes Jump (JMP/JSR) Modified by the Boss ExGFX patch, by Alcaro.
JSR. Jumps to the LevelNum code at $05DC46.
$05D8B9 3 bytes Jump (JMP/JSR) Hijacked by the Item Memory Table Expansion patch, by Isikoro.

JSR, jumps to the routine at $05DC46 to preserve the current level number into $010B.
$05D8E2 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

Stores the current level number plus one to $FE, address used to load custom palettes.
$05D8E6 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. This is run between the objects and sprites initialization codes.
$05D8F5 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

JSL, jumps to a subroutine at $0EF300 that gets the bank byte of the pointer to the level's sprite data from a table at $0EF100.
$05D8FB 2 bytes Opcode Modified by Lunar Magic. Changes "AND.b #$3F" to "AND.b #$1F".
$05D971 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it's part of the code that fixes the bug where sprites always face left when loading a level.
$05D971 4 bytes Code Hijacked by the Retry System (+ Multiple Checkpoints) v2.06c Patch, by Kevin, lx5, and worldpeace.
Code, hijacks the sprite init facing fix and allows for compatibility with other patches that also insert it.
$05D979 4 bytes Code Modified by Lunar Magic.
$05D97D 4 bytes Jump (JML/JSL) Modified by Lunar Magic.
JSL, it jumps to the routine at $05DD30.
$05D984 4 bytes Jump (JML/JSL) Modified by Sprite Initial Facing Fix, by Alcaro.

JSL, modifies a portion of the level load player position init routine to set $94 - $97 and $D1 - $D4 equivalently.
$05D984 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06c Patch, by Kevin, lx5, and worldpeace.
JML, hijacks the sprite init routine to face the player upon level load.
$05D9A1 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic. Main hijack of the Dynamic Levels patch. It builds a lookup table though $7E:0BF6, $7E:0C56, $7E:0CB6 and $7E:0CD6 for indexing the map16 tables, sets $7E:13D7 (level height) value, $7E:1936 (level height - #$0010), $7E:0BF4 (sprite loader settings) and $7E:0BF5 (dynamic level settings).
$05D9C3 1 byte Opcode Modified by Lunar Magic.
$05D9D7 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it modifies the level loading routine to set Mario's entrance depending on the current checkpoint.
$05D9DE 4 bytes Jump (JML/JSL) Jumps to secondary exit handling code so Kaijyuu's Multi Midway Point 1.7 Patch can use them as midway points without messing with the original midway entrance.
$05D9DE 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, jumps to the code that handles secondary exits for the multiple midway points patch included in retry.
$05D9E3 4 bytes Jump (JML/JSL) Modified by Lunar Magic.

Used to handle LM's seperate midway point entrance functionality. The three 512-byte tables associated with it can be found in order at read3(read3($05D9E4)+$0A).
$05D9E8 4 bytes Code Modified by Lunar Magic.
$05D9EC 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, fixes vanilla midway entrances when using the patch.
$05D9FC 4 bytes Jump (JML/JSL) Modified by Sprite Initial Facing Fix, by Alcaro.

JML, modifies a portion of the level load player position init routine to set $94 - $97 and $D1 - $D4 equivalently.
$05D9FC 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it's part of the code that fixes the bug where sprites always face left when loading a level.
$05DA03 4 bytes Jump (JML/JSL) Modified by Sprite Initial Facing Fix, by Alcaro.

JSL, modifies a portion of the level load player position init routine to set $94 - $97 and $D1 - $D4 equivalently.
$05DA03 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it's part of the code that fixes the bug where sprites always face left when loading a level.
$05DA17 5 bytes Jump (JML/JSL) Modified by Lunar Magic.
$05DA7F 1 byte Code Modified by Lunar Magic.
$05DA83 1 byte Code Modified by Lunar Magic.
$05DA8A 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic. Rebuilds the level height table for chocolate island special levels.
$05DAA3 4 bytes Jump (JML/JSL) A hijack from Kaijyuu's Multi Midway Points 1.7 Patch that makes secondary exits compatible with 'No Yoshi' intros.
$05DAA3 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it's the code that makes secondary exits compatible with "No Yoshi" intros in the multiple midway points patch included in retry.
$05DAB2 4 bytes Jump (JML/JSL) Hijacked by the Level Entrance Repointer Patch, by JamesD28 and Smallhacker.
JML, hijacks the level entrance routine to load data from a level between 0 and 1FF, then jumps back.
$05DAE6 1 byte Opcode Modified by Lunar Magic.
$05DB5F 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic. Rebuilds the level height table for chocolate island special levels.
$05DBAC 29 bytes Jump (JML/JSL) Modified by the Bonus Game Destination Expander patch, by Sonikku.

JML : RTS : NOP #24, modifies the 100-star bonus game and Yoshi wings level destination selection routine to allow for more destinations, as well as a more in-depth means of selecting destinations.
$05DBC2 6 bytes Code Modified by Lunar Magic.
$05DBC9 2 bytes Data Modified by the Extended "Extended OW Level Names" patch. It changes the position of the life counter on the overworld to the bottom right corner.
$05DBF2 4 bytes Jump (JML/JSL) Modified by 999 lives, handles the lives' code during the overworld and when exchanging them.
$05DBF2 5 bytes Jump (JML/JSL) Modified by the Death Counter Version 1.2 patch by Thomas.

JSL, jumps to a custom routine that erases Mario's lives from the overworld border, and draws the death counter tiles on to the overworld border. Immediately returns again (RTL) after exiting from this custom routine.
$05DC46 7 bytes Code Modified by the Message Box Expansion patch. LevelNum, stores the current level number to $010B.
$05DC46 7 bytes Code Hijacked by Pixi.
Small routine that stores the current sublevel number in $010B.
$05DC46 7 bytes Code Modified by the Boss ExGFX patch, by Alcaro.
LevelNum routine, stores the current level number to $010B.
$05DC46 7 bytes Jump (JMP/JSR) Hijacked by the Item Memory Table Expansion patch, by Isikoro.

See details, stores the level number into $010B.
Hijack
$05DC50 45 bytes Code Modified by Lunar Magic.
It's a routine that handles screen exits, by checking if the "u" bit in $7E19D8,x (x = screen number where Mario is) is set: if not, the vanilla exit system is used, otherwise LM's modified system is used.
$05DC81 3 bytes 24-bit Pointer Modified by Lunar Magic. The location of secondary entrance table $05FE00 or its expanded version in ROMs modified with Lunar Magic 2.50+.
$05DCB0 14 bytes Code Modified by Lunar Magic.
$05DCD0 30 bytes Code Modified by Lunar Magic.
It's a small routine inserted the first time the overworld is saved.
$05DCDD 5 bytes Jump (JML/JSL) Modified by the Level Depending On Event patch, by Deflaktor.

JSL, hijacks the level loading routine to change the level number if a certain event has been passed. A remaining byte is NOP'd out.
$05DCE2 4 bytes Jump (JML/JSL) Modified by the Level Depending On RAM Address patch, by Deflaktor.

JML, hijacks the level loading routine to change the level number if a certain RAM address is not 0.
$05DD00 29 bytes Code Modified by Lunar Magic.
$05DD30 70 bytes Code Modified by Lunar Magic.
$05DD80 20 bytes Code Modified by Lunar Magic.
$05DDA0 96 bytes Data Used by LM for the initial flags of each level (as stored to $1EA2).

If the overworld expansion hijack from LM v2.53 is applied, the table is instead moved to $03BE80, while these bytes are left unused.
$05DE00 512 bytes Data Added by Lunar Magic as a fifth byte of each level's secondary level header. Format: LWPYX---
L - Slippery flag
W - Water flag
P - Flag to use X/Y position method 2
Y - Bit 5 of the entrance Y position for method 2
X - Bit 4 of the entrance X position for method 2
(X/Y are switched in vertical levels)
$06F540 182 bytes Jump (JML/JSL) Used by Lunar Magic as a routine to get a particular Map16 tile's VRAM data (tile number/YXPPCCCT for each of its four tiles). To use, A/X/Y must be 16-bit, and A must contain the tile number multiplied by 2. It returns the lower two bytes of the pointer in A and the bank byte in both the high byte of Y and in $0C (for usages as a 24-bit pointer at $0A).
Alternative entries to the routine are at $06F5D0 (which returns the bank byte in $06 for a pointer at $04 instead of $0A), and $06F5E4 (which directly stores the full pointer into $65).

Pages 0/1 are handled via the original system (a pointer table to data at $0FBE).
Pages 2-7F are then handled by directly indexing their data tables. Each set of 0x10 pages uses a different table; they can each be found with the following calculations:
02-0F: read1($06F557)<<16|(read2($06F553)+$1000&$FFFF)
10-1F: read1($06F560)<<16|(read2($06F55C)+$8000&$FFFF)
20-2F: read1($06F56B)<<16|read2($06F567)+1
30-3F: read1($06F574)<<16|(read2($06F570)+$8000&$FFFF)+1
40-4F: read1($06F598)<<16|read2($06F594)
50-5F: read1($06F5A1)<<16|(read2($06F59D)+$8000&$FFFF)
60-6F: read1($06F5AC)<<16|read2($06F5A8)+1
70-7F: read1($06F5B5)<<16|(read2($06F5B1)+$8000&$FFFF)+1


In addition, if page 2 is set to use tileset-specific Map16 (which can be determined by checking if $06F547 is non-zero), then its data can be found at (read1($06F58A)<<16|read2($06F586))+$1000. In that table, each tileset receives 0x800 bytes, so you can find a particular tile's data by indexing as 0ttttbbb bbbbb000, where tttt is the FG/BG tileset and bbbbbbbb is the low byte of the tile number.
$06F608 60 bytes Jump (JMP/JSR) Used by Lunar Magic as a routine to get a Map16 tile's true acts-like (act as) setting (i.e. a value less than 0x200). It returns the 16-bit result in $03, as well as the low byte in $1693 and high byte in Y.

Additionally, the tables used to hold the Map16 tile acts-like settings can be found at the following locations:
Pages 00-3F: read3($06F624)
Pages 40-7F: read3($06F63A)

Each block in these tables receives two bytes, as its 16-bit acts-like setting. To find the true acts-like setting (i.e. a value less than 0x200), simply perform repeated lookups on these tables until a valid value is returned.
$06F624 3 bytes 24-bit Pointer Hijacked by GPS.
It inserts a long pointer to the table of acts like settings for block in the range $0000-$3FFF.
$06F63A 3 bytes 24-bit Pointer Hijacked by GPS.
It inserts a long pointer to the table of acts like settings for block in the range $4000-$7FFF. Only inserted if !__insert_pages_40_plus == 1.
$06F67B 4 bytes Jump (JML/JSL) Hijacked by GPS.
JML, jumps to code that checks for the new "WallFeet" and "WallBody" offsets.
$06F690 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario hits a tile from below.
$06F690 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "MarioBelow" offset for custom blocks. The code then jumps back to $06F602.
$06F6A0 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario touches a tile from above.
$06F6A0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "MarioAbove" offset for custom blocks. The code then jumps back to $06F602.
$06F6B0 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario touches a tile horizontally.
$06F6B0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "MarioSide" offset for custom blocks. The code then jumps back to $06F602.
$06F6C0 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario touches a tile on the top corners (which corner doesn't matter als long as they are from the top side).
$06F6C0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "TopCorner" offset for custom blocks. The code then jumps back to $06F602.
$06F6D0 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario touches a tile with the lower half of his body (i.e. excluding his head).
$06F6D0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "MarioBody" offset for custom blocks. The code then jumps back to $06F602.
$06F6E0 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario touches a tile with the upper half of his body (i.e. the head but not the rest of the body).
$06F6E0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "MarioHead" offset for custom blocks. The code then jumps back to $06F602.
$06F717 4 bytes Jump (JML/JSL) Hijacked by GPS.
JML, jumps to code that fixes a bug regarding the "SpriteH" offset.
$06F720 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if a sprite touches a tile vertically (which side doesn't matter)
$06F720 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "SpriteV" offset for custom blocks. The code then jumps back to $06F602.
$06F730 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if a sprite touches a tile horizontally (which side doesn't matter)
$06F730 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "SpriteH" offset for custom blocks. The code then jumps back to $06F602.
$06F780 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario touches a tile with his cape.
$06F780 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "MarioCape" offset for custom blocks. The code then jumps back to $06F602.
$06F7C0 16 bytes Hex Edit Used by Lunar Magic. This area allows you to insert custom Map16 interactions if Mario's fireball touches a tile.
$06F7C0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "MarioFireball" offset for custom blocks. The code then jumps back to $06F602.
$06F7D0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "WallFeet" offset for custom blocks. The code then jumps back to $06F602.
$06F7E0 16 bytes Jump (JML/JSL) Hijacked by GPS.
Hijacks part of Lunar Magic's map16 code to run the "WallBody" offset for custom blocks. The code then jumps back to $06F602.
$07F0C8 30 bytes Data Modified by Custom End Level Stars Text, by KevinM.

The new data for X displacement of the giant bonus stars letters. This data can be up to 108 bytes big.
$07F134 30 bytes Data Modified by Custom End Level Stars Text, by KevinM.

The new data for Y displacement of the giant bonus stars letters. This data can be up to 108 bytes big.
$07F1AA 32 bytes Data Modified by Goal Tape Gives Score patch. Changes bonus star reward table into a score reward table.
$07F1CD 4 bytes Jump (JML/JSL) Hijacked by the Extended No More Sprite Tile Limits patch, by DiscoTheBat, Kevin, Roy, imamelia and worldpeace.
JSL, Finds an empty slot for the goal tape stars.
$07F1CF 21 bytes Code Modified by Custom End Level Stars Text, by KevinM.

Modifies the routine that draws the star text when the player catches a goal tape. Its size may vary, though; the limit address is $071FFF (included).
$07F1E8 2 bytes Opcode Hijacked by the Extended No More Sprite Tile Limits patch, by DiscoTheBat, Kevin, Roy, imamelia and worldpeace.
NOP : NOP, Prevents the game from using a hardcoded OAM index for the tens digits of the goal tape stars.
$07F1FA 2 bytes Opcode Hijacked by the Extended No More Sprite Tile Limits patch, by DiscoTheBat, Kevin, Roy, imamelia and worldpeace.
NOP : NOP, Prevents the game from using a hardcoded OAM index for the unit digits of the goal tape stars.
$07F208 1 byte Hex Edit Modified by Custom End Level Stars Text, by KevinM.

Modifies the X position of the first star text letter.
$07F215 1 byte Hex Edit Modified by Custom End Level Stars Text, by KevinM.

Modifies the Y position of the star text letters.
$07F21A 1 byte Hex Edit Modified by Custom End Level Stars Text, by KevinM.

Modifies the tile used to draw the star text letters.
$07F234 1 byte Hex Edit Modified by Custom End Level Stars Text, by KevinM.

Modifies the GFX Page of the star text letter tiles.
$07F24E 4 bytes Hex Edit Modified by Custom End Level Stars Text, by KevinM.

The same as $07F21A, but deals with the letters fade-out effect.
$07F25D 5 bytes Code Modified by Goal Tape Gives Score patch. Makes goal always give score on hit.
$07F26C 1 byte Data Modified by PIXI's poison mushroom patch.
Sprite's $1656 value. Note that the actual hijack location depends on the sprite slot chosen. For example, if the sprite is inserted in slot $85, then the hijack location is ($07F26C + ($85) = $07F2F1).
$07F314 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies Blarggs to turn into a smoke when killed.
$07F335 1 byte Data Modified by PIXI's poison mushroom patch.
Sprite's $1662 value. Note that the actual hijack location depends on the sprite slot chosen. For example, if the sprite is inserted in slot $85, then the hijack location is ($07F3BA + ($85) = $07F43F).
$07F37A 1 byte Data Modified by the P-Switch Solid Directional Coins path by JamesD28.

Changes the default value of $1662 for the directional coin sprite to $0C (for 16x16 clipping)
$07F3FE 1 byte Data Modified by PIXI's poison mushroom patch.
Sprite's $166E value. Note that the actual hijack location depends on the sprite slot chosen. For example, if the sprite is inserted in slot $85, then the hijack location is ($07F3FE + ($85) = $07F483).
$07F43C 1 byte Data Modified by Item Box Sprite Fix, by Davros/Romi.

db $36, modifies P-Switch sprite tweaker info 166E to ensure proper palette in custom state.
$07F451 1 byte Data Modified by Item Box Sprite Fix, by Davros/Romi.

db $36, modifies Throw Block sprite tweaker info 166E to ensure proper palette in custom state.
$07F473 1 byte Hex Edit Modified by the Fire Flower Palette Cycle patch, by aroohwahoou.

db $00, changes the fire flower sprite's default palette to Palette 8. This change has no practical effect.
$07F4C7 1 byte Data Modified by PIXI's poison mushroom patch.
Sprite's $167A value. Note that the actual hijack location depends on the sprite slot chosen. For example, if the sprite is inserted in slot $85, then the hijack location is ($07F4C7 + ($85) = $07F54C).
$07F50C 1 byte Data Modified by the P-Switch Solid Directional Coins path by JamesD28.

Changes the default value of $166E for the directional coin sprite to $A2 (enables "Don't use default interaction" and "Process interaction every frame").
$07F568 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies Bowser's Bowling Ball to still run its main code during the death animation.
$07F56E 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies Iggy's Ball to still run its main code during the death animation.
$07F575 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies Fishin' Boo to still run its main code during the death animation.
$07F579 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies the Falling Spike to still run its main code during the death animation.
$07F57A 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies the Bowser Statue Fireball to still run its main code during the death animation.
$07F57B 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies Grinder to still run its main code during the death animation.
$07F57D 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies the Reflecting Fireball to still run its main code during the death animation.
$07F583 1 byte Data Modified by the Star/Slide Kill GFX Fix patch, by Kevin.

Modifies the Bowser Statue to still run its main code during the death animation.
$07F590 1 byte Data Modified by PIXI's poison mushroom patch.
Sprite's $1686 value. Note that the actual hijack location depends on the sprite slot chosen. For example, if the sprite is inserted in slot $85, then the hijack location is ($07F590 + ($85) = $07F615).
$07F59D 1 byte Hex Edit Modified by the Yoshi InMouth Spit Expansion patch, by Isikoro.

Sets the "stay in Yoshi's mouth" Tweaker bit for the Bob-omb sprite.
$07F5AD 1 byte Hex Edit Modified by the Yoshi InMouth Spit Expansion patch, by Isikoro.

Sets the "stay in Yoshi's mouth" Tweaker bit for the Hopping Flame sprite.
$07F5C3 1 byte Hex Edit Modified by the Yoshi InMouth Spit Expansion patch, by Isikoro.

Sets the "stay in Yoshi's mouth" Tweaker bit and clears the "inedible" Tweaker bit for the Podoboo sprite.
$07F5D0 1 byte Hex Edit Modified by the Yoshi InMouth Spit Expansion patch, by Isikoro.

Sets the "stay in Yoshi's mouth" Tweaker bit for the Para-Bomb sprite.
$07F643 1 byte Hex Edit Modified by the Yoshi InMouth Spit Expansion patch, by Isikoro.

Sets the "stay in Yoshi's mouth" Tweaker bit and clears the "inedible" Tweaker bit for the Bowser Statue Flame sprite.
$07F646 1 byte Hex Edit Modified by the Yoshi InMouth Spit Expansion patch, by Isikoro.

Sets the "stay in Yoshi's mouth" Tweaker bit for the Reflecting Fireball sprite.
$07F659 4 bytes Table Hijacked by Koopa Head Shifter + 2Tiles ShellLess Koopa patch by Isikoro.

Sets the 2 tile death frame / bit 5 of $190F for the shellless Koopas.
$07F659 1 byte Data Modified by PIXI's poison mushroom patch.
Sprite's $190F value. Note that the actual hijack location depends on the sprite slot chosen. For example, if the sprite is inserted in slot $85, then the hijack location is ($07F659 + ($85) = $07F6DE).
$07F77F 6 bytes Jump (JML/JSL) Modified by the "Takes 5 fireballs to kill" Work-around Patch.

This hijack extends the sprite tables reset routine to also reset the new "fireball hit counter" sprite table, defined by the freeRAM provided.
$07F785 5 bytes Jump (JML/JSL) Hijacked by Pixi.
Jumps to a routine that clears the init bit when changing sprites, works with $018151.
$0C9436 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic. Rebuilds the level height table for credits. The credits still uses the level layout like a normal level.
$0C9447 1 byte Hex Edit Modified by AddmusicK.
Changes the "Staff roll" song number.
$0C9EEB 96 bytes Code Modified by Lunar Magic.
$0CA40C 1 byte Hex Edit Modified by AddmusicK.
Changes the "Yoshis are home" song number.
$0CA5C2 1 byte Hex Edit Modified by AddmusicK.
Changes the "Cast list" song number.
$0CA8D8 7 bytes Table Hijacked by the Cutscene BabyYoshis/Eggs Palette Change patch, by Francium and yoshifanatic.

Changes the colours for every baby Yoshi in the Yoshi House cutscene of the credits. By default, the values are the same as in vanilla SMW.
$0CA90A 5 bytes Jump (JML/JSL) Hijacked by the Cutscene BabyYoshis/Eggs Palette Change patch, by Francium and yoshifanatic.

JSL : NOP, hijacks the eggs' properties in the credits to be individualised for each egg.
$0CAB6B 4 bytes Jump (JML/JSL) Hijacked by the patch Free $7E04A0 by spooonsss.
JML to another scratch RAM setup for the credits windowing code.
$0CAB7C 6 bytes Code Hijacked by the patch Free $7E04A0 by spooonsss.
Remap to !FreeRAM.
$0CAB92 2 bytes Opcode Hijacked by the HDMA Bugfixes patch, by Ice Man.

LDA #$A2, sets $44 to affect mainscreen and not just subscreen.
$0CAB98 3 bytes Opcode Hijacked by the HDMA Bugfixes patch, by Ice Man.

TSB $0D9F, changes the HDMA enable code for player animation 0B so it doesn't disable every other channel.
$0CAE0F 2 bytes Code Modified by Lunar Magic.
$0CAF35 2 bytes Table Hijacked by Koopa Head Shifter + 2Tiles ShellLess Koopa patch by Isikoro.

Shifts the head of the Yellow Koopa in the enemy credits roll.
$0CAF41 2 bytes Table Hijacked by Koopa Head Shifter + 2Tiles ShellLess Koopa patch by Isikoro.

Shifts the head of the Blue Koopa in the enemy credits roll.
$0CAF45 2 bytes Table Hijacked by Koopa Head Shifter + 2Tiles ShellLess Koopa patch by Isikoro.

Shifts the head of the Green Koopa in the enemy credits roll.
$0CAF51 2 bytes Table Hijacked by Koopa Head Shifter + 2Tiles ShellLess Koopa patch by Isikoro.

Shifts the head of the Red Koopa in the enemy credits roll.
$0CB091 64 bytes Table Hijacked by Koopa Head Shifter + 2Tiles ShellLess Koopa patch by Isikoro.

Changes the sprite tilemap of the Super Koopas in the enemy credits roll.
$0CB66E 300 bytes 24-bit Pointer GPS pointer table for shared routine. Tool caps at 100 routines with the pointers being 3 bytes long each (taking 300 bytes in total if you hit the cap).
$0CC94E 4 bytes Jump (JML/JSL) Modified by Skippable Castle Cutscenes: Adds a check which allows the player to skip the cutscene.
$0CD5D4 1 byte Hex Edit Modified by AddmusicK (1.0.8).
Changes the number of the second castle destruction sequence song.
$0CD864 5 bytes Jump (JML/JSL) Hijacked by the Cutscene BabyYoshis/Eggs Palette Change patch, by Francium and yoshifanatic.

JSL : NOP, hijacks the eggs' properties in the castle destruction cutscenes to be individualised on a per-cutscene basis.
$0DA106 4 bytes Jump (JML/JSL) Modified by ObjecTool 0.5, by 0x400 and imamelia.
JML, It adds support for new extended objects ($98+).
$0DA415 5 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML : NOP, it runs the custom midway object code. (only if !use_custom_midway_bar = 1)
$0DA415 5 bytes Jump (JML/JSL) Modified by ObjecTool 0.5, by 0x400 and imamelia.
JML : NOP, it allows the user to place object 2D into the level and therefore adds support for custom normal objects.
$0DA532 1 byte Code Modified by Lunar Magic.
$0DA536 2 bytes Code Modified by Lunar Magic.
$0DA57B 210 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Handles extended objects 10 - 40.
$0DA62B 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic.

JML, adds a check for item memory index 3 for green star blocks, invisible 1-up blocks, and question mark blocks with Yoshi which causes these blocks to always be placed if the sublevel uses said item memory index.
$0DA691 4 bytes Jump (JML/JSL) Hijacked by the Retry System (+ Multiple Checkpoints) v2.06b patch by worldpeace and LX5.
JML, it modifies the midway bar object code to spawn the midway when another one in the level has been collected.
$0DA8C3 83 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Modifies the get item memory routine. Do note that this is the first half only. The second half is located at $0DA91A because of Lunar Magic's hijacks.
$0DA916 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic.

JML, adds a check for item memory index 3 for coin objects which causes coins to always be placed if the sublevel uses said item memory index.
$0DA91A 65 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Modifies the get item memory routine. Do note that this is the first half only. The second half is located at $0DA8C3 because of Lunar Magic's hijacks.
$0DA924 4 bytes Jump (JML/JSL) Modified by the "Beat level by collecting all of the coins" patch. Jumps to a routine which counts how many coin objects are in the level.
$0DA963 17 bytes Code Modified by Lunar Magic. Increments $6B-$6C/$6E-$6F by the current level height ($13D7) instead of constant #$01B0. Implementation
$0DA9D6 25 bytes Code Modified by Lunar Magic. Decrements $6B-$6C/$6E-$6F/$04-$05 by the current level height ($13D7) instead of constant #$01B0. Also decrements $1BA1. Implementation
$0DA9EF 22 bytes Code Modified by Lunar Magic. Increments $6B-$6C/$6E-$6F/$04-$05 by the current level height ($13D7) instead of constant #$01B0. Also increments $1BA1. Implementation
$0DB2C9 73 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Modifies the Dragon Coin object routine. Do note that this is the first half only. The second half is located at $0DB31C due to Lunar Magic's hijacks as well as to write pointers of two subroutines of the patch.
$0DB2D7 4 bytes Jump (JML/JSL) Hijacked by the Individual Dragon Coin Save patch by worldpeace, JackTheSpades and LX5.
JML, it modifies the Dragon Coin object code to not generate the coin in case it's been collected already.
$0DB312 6 bytes 24-bit Pointer Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Writes the pointers to the subroutines Math_MemoryRAMIndex and Load_ItemMemorySpace of Item Memory Expansion which can be retrieved with read3($0DB312) and read3($0DB315), respectively.
Hijack
$0DB318 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic.

JML, adds a check for item memory index 3 for Dragon Coin objects which causes Dragon Coins to always be placed if the sublevel uses said item memory index.
$0DB31C 26 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Modifies the Dragon Coin object routine. Do note that this is the second half only. The first half is located at $0DB312 due to Lunar Magic's hijacks as well as to write pointers for two subroutines of the patch.
$0DB336 78 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Modifies the blue coin object routine. Do note that this is the first half only. The second half is located at $0DB388 because of Lunar Magic's hijacks.
$0DB384 4 bytes Jump (JML/JSL) Hijacked by Lunar Magic.

JML, adds a check for item memory index 3 for blue coin objects which causes blue coins to always be placed if the sublevel uses said item memory index.
$0DB388 51 bytes Code Hijacked by the Item Memory Table Expansion patch, by Isikoro.

Modifies the blue coin object routine. Do note that this is the second half only. The first half is located at $0DB336 because of Lunar Magic's hijacks.
$0DB58F 4 bytes Jump (JML/JSL) Modified by the patch Switch Palace RAM Optimizer by Sonikku.
JML, changes the green and yellow switch blocks' object load code to check a bit instead of a byte.
$0DB940 4 bytes Jump (JML/JSL) Modified by the patch Switch Palace RAM Optimizer by Sonikku.
JML, changes the red and blue switch blocks' object load code to check a bit instead of a byte.
$0DBADC 39 bytes Code Modified by Forest Treetop Fix. Makes forest treetops able to be positioned at any Y position inside a level.
$0DBB16 13 bytes Code Modified by Lunar Magic.
$0DC4C9 4 bytes Jump (JML/JSL) Modified by the Castle Intro Ledge Fix patch, by Kevin.

JSL, stores the Map16 data pointer in $04/$05.
$0DC4DE 5 bytes Jump (JML/JSL) Modified by the Castle Intro Ledge Fix patch, by Kevin.

JSL : NOP, retrieves the stored Map16 pointer before loading the second row of blocks to ensure correct positioning about screen boundaries.
$0DE190 7 bytes Code Used by Lunar Magic. Routine that indexes secondary entrance table $05F800 or its expanded version with long addressing. $0DE191 is the 24-bit pointer to the location of secondary entrance table $05F800 or its expanded version in ROMs modified with Lunar Magic 2.50+.
$0DE197 7 bytes Code Used by Lunar Magic. Routine that indexes secondary entrance table $05FA00 or its expanded version with long addressing. $0DE198 is the 24-bit pointer to the location of secondary entrance table $05FA00 or its expanded version in ROMs modified with Lunar Magic 2.50+.
$0DE19E 7 bytes Code Used by Lunar Magic. Routine that indexes secondary entrance table $05FC00 or its expanded version with long addressing. $0DE19F is the 24-bit pointer to the location of secondary entrance table $05FC00 or its expanded version in ROMs modified with Lunar Magic 2.50+.
$0DEC96 4 bytes Jump (JML/JSL) Modified by the patch Switch Palace RAM Optimizer by Sonikku.
Changes the switch palace switch object code to check a bit instead of a byte.
$0DF08A 79 bytes Code Modified by Lunar Magic.
It's a subroutine (which ends in RTS) inserted the first time a level is saved in LM.
$0DF150 13 bytes Code Modified by Lunar Magic.
Small piece of code inserted the first time a level is saved in LM.
$0DF160 35 bytes Code Modified by Lunar Magic.
It's a subroutine (which ends in RTS) inserted the first time the time limit setting is bypassed in LM.
$0DF17D 4 bytes Jump (JML/JSL) Hijacked by the Midway Point Timer Reset patch by WhiteYoshiEgg.
JML, it hijacks Lunar Magic's custom routine that sets the level timer to backup its initial value.
$0DF1C0 178 bytes Code Modified by Lunar Magic.
It's a subroutine (which ends in RTS) inserted the first time a level is saved in LM.
$0DF290 59 bytes Code Modified by Lunar Magic.
It's a subroutine (which ends in RTS) inserted the first time a level is saved in LM.
$0DF2CB 8 bytes Table Modified by Lunar Magic.
It's an AND table (which goes from $01 to $80) inserted the first time a level is saved in LM. It's used by the code at $0DF290.
$0E8000 28928 bytes Code Modified by AddmusicK.
First, an header is inserted, containing the following:
- The identifier characters "@AMK".
- Version number (which seems to be kept at $00 in all versions of the program).
- Long pointer to the table of sample groups pointers.
- Long pointer to the table of music data pointers.
- 21 "$00" bytes, probably meant for future expansions.

Then, the main code of the tool is inserted, which handles uploading music to the SPC700 and playing it, and the rest of the space is cleared out by filling it with "$55" bytes ("rep $7100 : db $55" done before inserting the custom code). The space is cleared out until $0EF0FF, since $0EF100-$0EFFFF is used by Lunar Magic.
$0EF0F0 3856 bytes Miscellaneous Modified by Lunar Magic.

- $0EF100-$0EF2FF (512 bytes): Table that holds the bank byte of the pointer to each level's sprite data, modified the first time any level is saved in LM. If a level hasn't been altered, the entry into the table for that level will be the vanilla bank byte of the sprite data pointer ($07).

- $0EF300-$0EF30B (12 bytes): Routine that gets the bank byte of the pointer to the level's sprite data from the table at $0EF100, and stores it to $D0. Read from [$CE] during the level load routine.

If $0EF30C-$0EF30E contains an address to a sprite extra byte table and $0EF30F holds a value of $42, Lunar magic will enable extra bit customization for placing sprites.

Additionally, Lunar Magic inserts a 55 bytes routine at $0EFD00 (ends in RTL), which is used to get the BG Map16 page during level loading, and a 48 bytes table at $0EFD50, read from in the routine.
Extra Bytes Data
$0EF100 512 bytes Table Modified by LM.

This table contains the bank bytes of every level's sprite data pointer.
$0EF30C 4 bytes Data Hijacked by Pixi.
Writes the pointer to sprite size table, and then a $42 byte, so that Lunar Magic will enable extra bit customization for placing sprites.
$0EF310 512 bytes Table Used by LM as a table of Layer 2-related data for each level. Format: bbBB-LD-
D = What type of data the layer 2 is: object (0) or tilemap (1)
L = Flag to indicate the usage of the high nibble
BB = When L bit is set: Map16 bank to use for the BG
bbBB = When L bit is clear: used as the high byte for all BG Map16 tiles (deprecated?)
-- = Unused
$0EF55D 3 bytes 24-bit Pointer Used by Lunar Magic as a 24-bit pointer to the custom overworld sprite data table. Will be $FFFFFF if no custom sprites are being used.
$0EF600 1536 bytes 24-bit Pointer A list of 24-bit pointers to each level's palette data, inserted by Lunar Magic. Indexed by level number * 3. If an entry's low and high bytes are both zero, the default palette is loaded instead (the bank byte is not checked in this case).
$0EFD50 24 bytes Table Used by Lunar Magic. This is a table of eight 24-bit pointers to the BG Map16 data in ascending order, where each pointer corresponds to a set of 0x10 pages. If a pointer is $000000, then that set of BG Map16 pages is currently unused.
$0F8000 28753 bytes Data Modified by AddmusicK.
This is where AMK's custom SPC engine (main.bin) is inserted in the ROM, to then be uploaded to the SPC700 ram. The remaining bytes are cleared out by filling them with "$55" bytes ("REP $7051 : db $55" done before inserting the custom data). The space is cleared out until $0FF050, since $0FF051-$0FFFFF is used by Lunar Magic.
$0FF0A0 160 bytes Hex Edit Not actually "used" for anything, but Lunar Magic writes the following string here:
Code
Lunar Magic Version X.XX Public 
©YYYY FuSoYa, Defender of Relm h
ttp://fusoya.eludevisibility.org
                                
I am Naaall, and I love fiiiish!

where X.XX is the version number and YYYY is the publication year of the LM version used.
$0FF600 384 bytes 24-bit Pointer Used by Lunar Magic for a table of 24-bit pointers to ExGFX80-FF (pointers for 100-FFF can be found at $read3($0FF937)). A pointer of 000000 indicates the file isn't inserted.
$0FF780 40 bytes Code Modified by Lunar Magic.
Routine called during level load to store some level-specific data in the $7FC000 area.
$0FF7F0 67 bytes Jump (JML/JSL) Used by Lunar Magic as a routine to handle processing ExGFX files during level load.
A table of every level's ExGFX files can be found at read3($0FF7FF). Each level receives 32 bytes, with two bytes per ExGFX file; some additional data is also stored in the high byte of certain files. More information can be found here.
$0FF900 110 bytes Jump (JML/JSL) Used by Lunar Magic as a routine to decompress a 4bpp GFX file to a specified location in RAM. To use it, load the 16-bit GFX file number into A and 24-bit destination RAM address in $00.
Note that it won't work on GFX32/33.
$0FFB9C 4 bytes Jump (JML/JSL) Modified by 32x32 Player Tilemap Patch, by ExE Boss and Ladida. Edit applied by the main patch.

JML, overwrites Lunar Magic code to skip uploading player graphics during overworld path transitions, preventing graphical bugs.
$0FFC94 4 bytes Jump (JML/JSL) Modified by 32x32 Player Tilemap Patch, by ExE Boss and Ladida. Edit applied by the main patch.

JML, overwrites Lunar Magic code to correct player palette mirrors prior to palette upload, preventing graphical bugs.
$0FFD80 332 bytes Code Modified by Lunar Magic.
Routine called from $0FF780 during level load to store some level-specific variables in the $7FC000 area and to upload some graphics data to VRAM.