A Link to the Past

Game Mode

The game mode is, in simplest terms, what the gameis currently doing as its set of routines. For the context of this article, we will consider the game mode as the exact combination of two addresses in memory: $10 and $11, which are the main module and submodule respectively. An in-depth understanding of these addresses is unnecessary for NMG categories, but understanding them at a basic level is helpful for routing and executing any transition-corrupting glitch.

Submodule

The submodule is where most of the magic of corruption happens. Fundamentally, changes to the submodule via super- and subtile transitions are incrementations instead of direct setting. Taking the underworld as an example, the main module at address $10 will have the value of 0x07. The default submodule where the player is in control and the game is "running" (sprites moving around and so on) will have the value 0x00. A subtile transition will change the submodule to 0x01, but it just does this by adding 1 to the current submodule value instead of directly setting it to 1. Usually this is fine, but if we can find some other way to change the submodule at the same time we activate a subtile door, this "just add 1 to reach the subtile transition routine" model that the game uses is subject to fail. And that's exactly what happens with most transition corruptions.

Underworld

On the underworld, the main module at address $10 will be set to 0x07. The table below shows the different submodule values and their corruptability.

Submode ValueSubmode ProcessCorruptable?Corrupted fromNotes
0x00Default state; player in controlNo
0x01Subtile transitionYes
0x02Supertile transitionYesWest subtile STCs
0x03Star Tile hitYesnon-West STCs
0x04Unlocking key doorYesWest supertile STCs
0x05Shutter doors opening/closingNoNot corruptable, but see non-incrementing corruptions
0x06Fat interroom stairsNo
0x07Pit transitionNo
0x08Auto stairs that go up south to northNo
0x09Cracked wall openingNo
0x0ATorch-induced brighteningNo
0x0BWater drainNo
0x0CWater floodNo
0x0DFlood gatesNo
0x0ESpiral staircase transitionNo
0x0FEntrance transitionNo
0x10Auto stairs that go up north to southNo
0x11???No
0x12Up straight stairwellNo
0x13Down straight stairwellNo
0x14Void scrollNo
0x15TelepadPartially*
0x16Crystal switchNo
0x17Pressure plateNo
0x18Crystal fanfareNo
0x19Mirror transitionYes
0x1ATriforce doorNoSubtile mirror door

* Telepads can be corrupted only with a YBA, but doing so results in a game crash.

Overworld

On the overworld, the main module at address $09 will be set to 0x09. The table below shows different submodule values and their corruptability.

Submode ValueSubmode ProcessCorruptable?Corrupted fromNotes
0x00Default state; player in controlNo
0x01Graphics load
0x02Trigger tilemap update
0x03Map32 to Map16/8 conversion
0x04Load new sprites
0x05Start overworld scroll transition
0x06Run overworld scroll transition
0x07Ease off scroll transition
0x08Finalize entry onto screen
0x09Open big door from exiting
0x0AExiting while facing down
0x0BExiting while facing up
0x0COpen big door
0x0DStart overworld mosaic transition
0x0ELoad subscreen and silence SFX1
0x0FLoad aux graphics
0x10Trigger tilemap update
0x11Map32 to Map16/8 conversion
0x12Load new sprites
0x13Start overworld scroll transition
0x14Run overworld scroll transition
0x15Ease off scroll transition
0x16Fade back in from mosaic
0x17Start overworld mosaic transition
0x18
0x19
0x1ALoad aux graphics
0x1BTrigger tilemap update
0x1C
0x1D
0x1E
0x1F
0x20Reload subscreen overlay
0x21
0x22
0x23Mirror warp
0x24Start overworld mosaic transition
0x25
0x26Load aux graphics
0x27Trigger tilemap update
0x28Load and build overworld screen
0x29Fade back in from mosaic
0x2ARecover from drowning
0x2B
0x2CMirror bonk
0x2DFlute activation
0x2EWhirlpool
0x2FWhirlpool

Non-incrementing corruptions

LSD Blind

By pressing Select, drinking a potion, or opening the map as Blind enters the light in her room, the game may enter submode 0x05 of main module 0x0E. This will create one or both of the iris wipe effects used by the Desert prayer along with a mesh of vibrant colors replacing most of the game's palettes. The latter only appears to occur on certain frames with the save-and-quit menu, and it's where the name of this glitch comes from. Using the mirror will begin the mosaic effect, leaving the screen in that filter when it's interrupted. This is caused by the door of the room attempting to close, which sets the submodule directly to 0x05. Since the main/submodule combination of 0x0705 never occurs, the shutter door at the bottom of Blind's room will remain open.

Jingle glitch

Main article: Jingle glitch

When stairs are used at the same time that shutter doors open or close, the submodule takes on its value of 0x05 directly. The actual execution of most scripts behaves as normal here, but this change does interrupt some data transfer and coordinate functions, leading to the sprite offset and some data spoofing.

Last updated September 25, 2026 by joshRTA