# Code Reference

# Any Fruit Opens Yoshi Eggs

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Aug 19, 2018)
Authors: Unknown, Noki Doki

Allows opening Yoshi eggs with a different fruit than the one depicted.

# Coin Count Savestate

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Jul 24, 2021)
Author: Psychonauter

Allows you to save and restore your coin count. Uses the same D-Pad mappings as the position saves of DPad-Functions.

Combination Result
D-Pad Left Save current coin count
D-Pad Right Load saved coin count

# DPad Functions

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 2.5 (Jun 10, 2021)
Authors: Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57

Allows various game modifications through a set of button combinations:

Combination Result
D-Pad Left Save Mario's current position
D-Pad Right Load Mario's position
D-Pad Up Replace all dialog with a single "!!!" line
D-Pad Down Restore Dialog Boxes
X + D-Pad Left No FLUDD/red coin buttons in secrets
X + D-Pad Right FLUDD in all secrets
X + D-Pad Down FLUDD in completed secrets (default)
X + D-Pad Up Regrab last held object

# Disable Blue Coin Flag

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.1 (Sep 05, 2018)
Authors: Psychonauter, Noki Doki

Prevents the game from setting the blue coin flag, which makes them respawn after reentering the level.

# Enable Exit Area Everywhere

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Oct 30, 2017)
Author: Noki Doki

Gives you the "Exit Area" option when entering the pause menu in all levels instead of just the normal stages, such as Delfino Plaza and Airstrip.

# FMV Skips

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Jan 20, 2017)
Author: Psychonauter

Allows skipping FMVs without having to watch them once first.

# Fast Any%

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.4 (Feb 16, 2018)
Authors: Psychonauter, Noki Doki

Loads stages in the commonly used any% order, skips all save boxes, replaces all dialog with "!!!" (except for the Pianta 5 secret) and makes all FMVs skippable (except for the Pinna 1 cutscenes).

WARNING

This code is not compatible with the Level Select or Stage Loader code.

# Fix Manta Splitting

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.2 (Mar 17, 2021)
Author: Noki Doki

Fixes the Nintendont-exclusive bug that changes the manta's behavior upon splitting and may cause it to die early.

# Force ANSI Memory Card Encoding

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSJ01 (NTSC-J 1.1) GMSP01 (PAL)

Version: 2.0 (Jun 25, 2020)
Author: Noki Doki

Nintendont expects the save files on your memory card to use the encoding used in the game. Other loaders, such as Gecko OS, instead expect the saves to be in the encoding that matches the region of the console.

This code directs Nintendont to use the encoding used for the NTSC-U/PAL region (ANSI) for writing to and reading from the memory card.

If you load a NTSC-J or NTSC-K version of the game in Nintendont and it asks you to format your memory card (see image below), you can bypass having to format your card by using this code.

Japanese Formatting Text

# Force Plaza Events

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Mar 8, 2020)
Author: Noki Doki

Forces the unlock events for Ricco, Gelato and Yoshi to happen any time the correct version of the plaza is loaded via the Level Select code.

Nozzle unlock events take precedence over Yoshi's if their conditions are met.

# Force SJIS Memory Card Encoding

GMSE01 (NTSC-U) GMSP01 (PAL) GMSJ01 (NTSC-J 1.0) GMSJ01 (NTSC-J 1.1)

Version: 2.0 (Jun 25, 2020)
Author: Noki Doki

Nintendont expects the save files on your memory card to use the encoding used in the game. Other loaders, such as Gecko OS, instead expect the saves to be in the encoding that matches the region of the console.

This code directs Nintendont to use the encoding used for the NTSC-J region (SJIS) for writing to and reading from the memory card.

If you load a NTSC-U or PAL version of the game in Nintendont and it asks you to format your memory card, you can bypass having to format your card by using this code.

# Free Pause

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.1 (Nov 12, 2017)
Author: Noki Doki

Allows you to pause mid-air and during cutscenes.

# Infinite Juice

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Apr 5, 2019)
Author: Noki Doki

Prevents Yoshi from despawning due to running out of juice.

# Infinite Lives

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 2.0 (Feb 28, 2020)
Author: Noki Doki

Prevents the life counter from decreasing when you die in a level.

# Instant Restart

GMSJ01 (NTSC-J 1.0) GMSJ01 (NTSC-J 1.1) GMSE01 (NTSC-U) GMSP01 (PAL)

Version: 0.2.0 (Apr 28, 2022)
Author: sup39(γ‚΅γƒγƒŸγ‚―)

When you pressed the buttons configured in #Button Config simultaneously, you can restart the current area without selecting "Exit Area" in pause menu. Note that the restart function behaves differently than pressing Y or Z with "Level Select". This code only supports restarting 1 area only. For example, you can restart outside a secret stage or inside a secret stage individually, but you can NOT restart a combination of outside+inside a secret stage.

WARNING

You can NOT restart after destroying the last platform in Bowser fight at the moment.

# Intro Skip

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Jun 19, 2019)
Author: Noki Doki

Removes the logos and cutscene that normally play before the title screen when loading or resetting the game.

WARNING

This makes it impossible to toggle progressive or 60Hz mode, make sure to set these the way you want without the code.

# Level Select

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.15 (Jul 5, 2021)
Authors: Psychonauter, Dan Salvato, Noki Doki

Allows warping to other levels when starting a file or when exiting a level by holding the combination until the screen turns black.

WARNING

This code is not compatible with the Fast Any% or Stage Loader code.

Codes:

Level Select Combinations

# Mute Background Music

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Jan 28, 2017)
Author: Psychonauter

Mutes background music, but keeps SFX on.

# Nozzle Lock

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Jun 10, 2021)
Authors: Psychonauter, Dan Salvato, Link Master, James0x57

Locks the nozzles by pressing a button combination:

Combination Result
B + D-Pad Left Lock Rocket Nozzle
B + D-Pad Right Lock Turbo Nozzle
B + D-Pad Up Lock Hover Nozzle
B + D-Pad Down Release Nozzle Lock

TIP

The underwater sections of Noki Bay (episodes 3, 4 and 8) use a different hover nozzle from the one you get with B + Up. If you find it's not working properly, simply release the nozzle lock.

# Pattern Selector

GMSJ01 (NTSC-J 1.0) GMSJ01 (NTSC-J 1.1) GMSE01 (NTSC-U) GMSP01 (PAL)

Version: 0.2.2 (Apr 25, 2022)
Author: sup39(γ‚΅γƒγƒŸγ‚―)

Preview

β’· is the cursor to select the pattern, and the three digits are the numbers representing the pattern. See below for more information.

Combination Result
L + D-Pad Left Move cursor(β’·) one digit to the left
L + D-Pad Right Move cursor(β’·) one digit to the right
L + D-Pad Up Increase the number at the right of the cursor(β’·)
L + D-Pad Down Decrease the number at the right of the cursor(β’·)

When the cursor(β’·) is not shown, you can press L+D-Pad Left/Right to make it appear.

# Chain Chomp (PV4)

Use the 1st digit to select the pattern. The 2nd and 3rd are ignored.

1st digit Direction at the beginning
1 ←
2 ↑
3 β†’
o.w. Random

# Chain Chomplets (PV1)

Each digit represents the pattern of each Chain Chomplet. Numbers not on the graph (e.g. 0) mean random.

# 1st digit

# 2nd digit

# 3rd digit

# Position/angle/speed display

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.4 (Mar 24, 2022)
Authors: Noki Doki, sup39(γ‚΅γƒγƒŸγ‚―)

Shows Mario's position, angle and speed at any given time.

WARNING

This code is not compatible with the Speed Display code.

# Quarterframe Timer (Experimental)

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.1 (Apr 22, 2022)
Authors: Noki Doki, sup39(γ‚΅γƒγƒŸγ‚―)

Adds an in-game timer to every level, starting on the last black frame after the loading screen and ending as soon as the 'Shine Get' animation starts (similar to the x-cam timer of SM64).

WARNING

The timer pauses during loading times and FMVs.

# Replace Episode names with their ID

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.1 (Feb 13, 2018)
Authors: Psychonauter, Noki Doki

Replaces the Episode names with the episode number in the demo screen. (Useful for the stage loader.)

# Respawn One-Time Shines

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Aug 19, 2019)
Author: Noki Doki

Allows Shines obtained by cleaning graffiti, the Shine Gate or the bells to respawn.

# Shadow Mario HP Meter

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Feb 20, 2022)
Author: miluaces

Shows a health bar above Shadow Mario whenever he gets hit with water.

# Shine Get Timer

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 2.1 (Mar 22, 2021)
Authors: Psychonauter, Noki Doki

Adds the ingame timer to every level, starting on the last black frame after the loading screen and ending as soon as the 'Shine Get' animation starts (similar to the x-cam timer of SM64).

Load Removal

The timer removes load times during level transitions.

For in-level transitions (such as when entering a secret) it removes the time from the second black frame of the transition to the second-to-last black frame.

The timer visually freezes when entering loading zones, however it still runs in the background.

DANGER

Requires the Level Select code, Fast Any% or Stage Loader to be active.

# Shine Outfit

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Oct 23, 2017)
Authors: Ralf, Psychonauter

Always wear shine outfit and sunglasses.

# Shiny Shines

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Oct 10, 2021)
Author: Noki Doki

Makes all Shines appear yellow, whether they've been collected or not.

# Speed display

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.5 (Mar 24, 2022)
Authors: Noki Doki, sup39(γ‚΅γƒγƒŸγ‚―)

Shows Mario's speed at any given time.

WARNING

This code is not compatible with the Position/Angle/Speed Display code.

# Unlock Nozzles

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Feb 12, 2018)
Author: Noki Doki

Unlocks all nozzle boxes.

# Unlock Yoshi

GMSE01 (NTSC-U) GMSJ01 (NTSC-J 1.0) GMSP01 (PAL) GMSJ01 (NTSC-J 1.1)

Version: 1.0 (Feb 10, 2018)
Author: Noki Doki

Unlocks Yoshi everywhere.

# drawText

GMSJ01 (NTSC-J 1.0) GMSJ01 (NTSC-J 1.1) GMSE01 (NTSC-U) GMSP01 (PAL)

Version: 0.2.0 (Mar 25, 2022)
Author: sup39(γ‚΅γƒγƒŸγ‚―)

void drawText(int x, int y, int fontSize, uint32_t colorTop, uint32_t colorBot, const char *fmt, ...);