C3 Voting ends in
Views: 875,526,058
13 users online: Amethyst, CNaught, Cope, Dangamer, dogemaster, edu_dyck, FYRE150, HamOfJustice, Joaking64,  Maarfy, Ondore's Lies, SimFan96, Zeproide - Guests: 61 - Bots: 62 Users: 48,846 (2,500 active)
Latest: Joaking64
Winter C3 2021 Content Spotlight
Rilla Roo's Unreleased Ports!
Not logged in.
SM64 Memory Map
Displaying 2 out of 2 addresses. Show Waiting Addresses (9)
Hexadecimal number for a partial address. 8-digit number for a full address. Use - to denote a range. Use , to list more than one address.
Enable JavaScript to use multiple regions.
Hold control to select multiple. Check "All" to select all at once.

Separate each individual keyword with spaces. Surround a phrase with quotes to look for the exact phrase, or with / to use a PCRE regular expression. Prepend with - to exclude a keyword or phrase, with + to require a whole word or phrase, or with -+ to exclude a whole word or phrase. ? matches any character, * matches any amount of characters.
Per Page: 25 50 75 100 150 500 All
ROM Address Length Type Description Details
$90219E00 22208 bytes Bank Behavior script bank
$9021CCC0 56 bytes Behaviour Mario's Behavior.
It has three function calls, which are called as RAM offset:

21CCD8 08 00 00 00 - Start Loop
21CCDC 0C 00 00 00 80 2C B1 C0 - JAL $802CB1C0
21CCE4 0C 00 00 00 80 29 CA 58 - JAL $8029CA58
21CCEC 0C 00 00 00 80 2C B2 64 - JAL $802CB264
21CCF4 09 00 00 00

0x0C commands: (JAL, but quite different here. The RAM Offset is done through LB(Load Byte))

[0C] [00 00 00] [80 XX XX XX]

[0]= 0C is the Command Byte.
[1,2,3]= Always zero, unused?

[4,5,6,7]= The offset in RAM of the ASM function.

0x0C commands do call ASM Funtions found in RAM.

The functions are "looped" because of the 0x08 command and ends with 0x09 command. 0x08 starts a loop, is called every frame. And 0x09 jumps back to the beginning of the loop.

You can use ASM Function "0C 00 00 00 80 2C B1 C0" to inject your own code, as this is an unused debug function in mario's behavior. For this, you calculate the ROM offset of 802CB1C0. For every RAM offset between $80246000 and $80330000 you subtract $80245000 of the RAM offset. $802CB1C0-$80245000 = $861C0 (ROM offset). In $861C0 you put in your code. (Remember to make place for the stack and push your return address to the stack, in case you call a subroutine)
Per Page: 25 50 75 100 150 500 All

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2021 - SMW Central
Legal Information - Privacy Policy - Link To Us


Follow Us On

  • YouTube
  • Twitch
  • Twitter


  • Super Mario Bros. X Community
  • Mario Fan Games Galaxy
  • sm64romhacks