Mario 64 Notes

This is a repository for some of my notes related to Mario 64 Hacking. All offsets are for the US 1.0 ROM (NTSC). Be sure
to check my YouTube channel at

Featured utilities/hacks:

Super Mario 64: The Missing Stars

(The first ever complete hack of Super Mario 64).

Super Mario 64: Pong Of Death (a mini hack)

Older stuff:

Super Mario 64 Music Tools

mml2m64: Music Macro Language Importer for Mario64/Zelda64

Mario 64 Sequence Inserter (included in mml2m64)

Mario 64 / Mario Kart 64 / Zelda 64 / Nintendo format  Sequenced Music Specification --> A working-in-progress specification.

Mario 64/Zelda64 Sequenced Music Parser + Sequence Ripper --> Parses and displays all sequence content.


Differences between SSEQ (NDS) and Mario64 SEQ format [one excerpt showing some differences]

Title Screen Music Data (excerpt, not 100% right) --> Old notes when I was first decoding the music format.

Toad's music (incomplete) --> Very old notes.


Water Pointers Hack [05/09]

Extended memory support hack [04/09]

Commented Checksum Area Disassembly (big) --> Code from 0x1000 to 0x100000 in the ROM with many labelled functions. Be sure to check this if you are interested in Gameshark codes/ASM hacking.

Solid & Moving Behavior 0x04B1C: Initialization --> An example of a hardcoded collision pointer.

Custom 0x10 Level Command: Loads a block of ROM data into extended memory and assigns a segment ID --> For loading blocks of data into extended memory.

Flexible Collision Custom Behavior command (0x12) --> Assigns the collision based on the Model ID number.

Behavior 0x3C7C: Produces a sound when near it (Castle Grounds)

Getting rid of hardcoded data in Koopa-The-Quick

Collision commands/functions --> Disassembly of some collision commands.

Stars spawned from Bosses X,Y,Z positions (old) --> Early work when trying to find this data.

Getting rid of the Checksum trap  --> A good trick if you want to mess up with the game code without having to recalcute the CRC all the time.

Trajectories and hardcoded pointers (old)

Moving Up And Down Behavior (0x3B30) initialization (old) --> An old attempt at looking at some of the behavior initialization .

Custom 0x12 Behavior Command (old) --> How to call code from segmented memory pointers.

Runs on 100th coin (old) -->Spawns star.

Gameshark codes

NEW! Patching Gameshark codes to the ROM

My Gameshark codes

Double/Triple Speed Koopa-the-Quick (gameshark code)

Mario gets a Divine Hand: creating a new collision routine (Gameshark code)

Misc Data

List of behaviors for custom solid objects

Goomba Geo Layout Deconstruction (old) --> This was done before the Script Dumper getting in Toad's Tool 64.

Misc Offsets (mostly in checksum area) --> Mostly collected from Gameshark codes

Swapping Backgrounds (Main Geo Layout adjustments)

Terrain Geo Layout 0x802761D0 function arguments

Older Released Patches/programs:

Misc hacks --> Some old hacks: Bowser in Bob-omb, Play as Peach in Bob-omb, Bowser Everywhere plus a few more.

Flat Lava Land v0.2 --> Build 100% modular levels from a "flat" version of Lethal Lava Land.

Platform Battlefield v0.4

Koopa-the-Quick Trajectory Modifier v0.2

Reference / Useful Links:

VL-Tone Hacking Docs

VL-Tone's Mario Level Format Diagram

Cellar Dweller's Hacking Notes

James Stuart (aka yoshielectron)  --> Awesome gameshark codes plus lots of useful infomation about the game.

Mario Resource by Nagra

Dextrose N64 Section --> Good N64 technical reference, as well as CRC Tools, sound rippers, assemblers/disassemblers.

Jul SM64 Hacking Forum --> Official Toad's Tool 64 forum.

All notes by messiaen/frauber. Thanks to VL-Tone, Cellar Dweller, rstewart215804 and yoshielectron for sharing notes.
You can contact me at the Justus League SM64 Hacking forum or acmlm board2.

My YouTube Channel:

This site has been hit Free Hit Counter times since 08/09/2008.