From 7bc25a1aef90d0f97cdde09e6e08f3b0675814c2 Mon Sep 17 00:00:00 2001 From: scut Date: Sun, 20 Nov 2022 13:41:16 -0500 Subject: [PATCH 01/30] cleaned up level importer, added type hints, tested for bugs a little bit --- __init__.py | 3 + asdf.txt | 0 fast64_internal/f3d/f3d_import.py | 721 +++++++ fast64_internal/sm64/sm64_level_importer.py | 1862 +++++++++++++++++++ fast64_internal/utility.py | 30 +- 5 files changed, 2610 insertions(+), 6 deletions(-) create mode 100644 asdf.txt create mode 100644 fast64_internal/f3d/f3d_import.py create mode 100644 fast64_internal/sm64/sm64_level_importer.py diff --git a/__init__.py b/__init__.py index afc83898d..6caef91fa 100644 --- a/__init__.py +++ b/__init__.py @@ -10,6 +10,7 @@ from .fast64_internal.sm64.sm64_objects import SM64_ObjectProperties from .fast64_internal.sm64.sm64_geolayout_utility import createBoneGroups from .fast64_internal.sm64.sm64_geolayout_parser import generateMetarig +from .fast64_internal.sm64.sm64_level_importer import sm64_import_register, sm64_import_unregister from .fast64_internal.oot import OOT_Properties, oot_register, oot_unregister from .fast64_internal.oot.oot_level import OOT_ObjectProperties @@ -447,6 +448,7 @@ def register(): bsdf_conv_register() sm64_register(True) oot_register(True) + sm64_import_register() for cls in classes: register_class(cls) @@ -486,6 +488,7 @@ def unregister(): f3d_parser_unregister() sm64_unregister(True) oot_unregister(True) + sm64_import_unregister() mat_unregister() bsdf_conv_unregister() bsdf_conv_panel_unregsiter() diff --git a/asdf.txt b/asdf.txt new file mode 100644 index 000000000..e69de29bb diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py new file mode 100644 index 000000000..66979868c --- /dev/null +++ b/fast64_internal/f3d/f3d_import.py @@ -0,0 +1,721 @@ +# ------------------------------------------------------------------------ +# Header +# ------------------------------------------------------------------------ + +import bpy + +import os, struct, math + +from functools import lru_cache +from pathlib import Path +from mathutils import Vector, Euler, Matrix +from collections import namedtuple +from dataclasses import dataclass +from copy import deepcopy +from re import findall + +from ..utility import hexOrDecInt + +# ------------------------------------------------------------------------ +# Classes +# ------------------------------------------------------------------------ + + +# this will hold tile properties +class Tile: + def __init__(self): + self.Fmt = "RGBA" + self.Siz = "16" + self.Slow = 32 + self.Tlow = 32 + self.Shigh = 32 + self.Thigh = 32 + self.SMask = 5 + self.TMask = 5 + self.SShift = 0 + self.TShift = 0 + self.Sflags = None + self.Tflags = None + + +# this will hold texture properties, dataclass props +# are created in order for me to make comparisons in a set +@dataclass(init=True, eq=True, unsafe_hash=True) +class Texture: + Timg: tuple + Fmt: str + Siz: int + Width: int = 0 + Height: int = 0 + Pal: tuple = None + + def size(self): + return self.Width, self.Height + + +# This is a data storage class and mat to f3dmat converting class +# used when importing for kirby +class Mat: + def __init__(self): + self.TwoCycle = False + self.GeoSet = [] + self.GeoClear = [] + self.tiles = [Tile() for a in range(8)] + self.tex0 = None + self.tex1 = None + self.tx_scr = None + + # calc the hash for an f3d mat and see if its equal to this mats hash + def MatHashF3d(self, f3d): + # texture,1 cycle combiner, render mode, geo modes, some other blender settings, tile size (very important in kirby64) + rdp = f3d.rdp_settings + if f3d.tex0.tex: + T = f3d.tex0.tex_reference + else: + T = "" + F3Dprops = ( + T, + f3d.combiner1.A, + f3d.combiner1.B, + f3d.combiner1.C, + f3d.combiner1.D, + f3d.combiner1.A_alpha, + f3d.combiner1.B_alpha, + f3d.combiner1.C_alpha, + f3d.combiner1.D_alpha, + f3d.rdp_settings.rendermode_preset_cycle_1, + f3d.rdp_settings.rendermode_preset_cycle_2, + f3d.rdp_settings.g_lighting, + f3d.rdp_settings.g_shade, + f3d.rdp_settings.g_shade_smooth, + f3d.rdp_settings.g_zbuffer, + f3d.rdp_settings.g_mdsft_alpha_compare, + f3d.rdp_settings.g_mdsft_zsrcsel, + f3d.rdp_settings.g_mdsft_alpha_dither, + f3d.tex0.S.high, + f3d.tex0.T.high, + f3d.tex0.S.low, + f3d.tex0.T.low, + ) + if hasattr(self, "Combiner"): + MyT = "" + if hasattr(self.tex0, "Timg"): + MyT = str(self.tex0.Timg) + else: + pass + + def EvalGeo(self, mode): + for a in self.GeoSet: + if mode in a.lower(): + return True + for a in self.GeoClear: + if mode in a.lower(): + return False + else: + return True + + chkT = lambda x, y, d: x.__dict__.get(y, d) + rendermode = getattr(self, "RenderMode", ["G_RM_AA_ZB_OPA_SURF", "G_RM_AA_ZB_OPA_SURF2"]) + MyProps = ( + MyT, + *self.Combiner[0:8], + *rendermode, + EvalGeo(self, "g_lighting"), + EvalGeo(self, "g_shade"), + EvalGeo(self, "g_shade_smooth"), + EvalGeo(self, "g_zbuffer"), + chkT(self, "g_mdsft_alpha_compare", "G_AC_NONE"), + chkT(self, "g_mdsft_zsrcsel", "G_ZS_PIXEL"), + chkT(self, "g_mdsft_alpha_dither", "G_AD_NOISE"), + self.tiles[0].Shigh, + self.tiles[0].Thigh, + self.tiles[0].Slow, + self.tiles[0].Tlow, + ) + dupe = hash(MyProps) == hash(F3Dprops) + return dupe + return False + + def MatHash(self, mat): + return False + + def ConvertColor(self, color): + return [int(a) / 255 for a in color] + + def LoadTexture(self, ForceNewTex, path, tex): + png = path / f"bank_{tex.Timg[0]}" / f"{tex.Timg[1]}" + png = (*png.glob("*.png"),) + if png: + i = bpy.data.images.get(str(png[0])) + if not i or ForceNewTex: + return bpy.data.images.load(filepath=str(png[0])) + else: + return i + + def ApplyPBSDFMat(self, mat): + nt = mat.node_tree + nodes = nt.nodes + links = nt.links + pbsdf = nodes.get("Principled BSDF") + if not pbsdf: + return + tex = nodes.new("ShaderNodeTexImage") + links.new(pbsdf.inputs[0], tex.outputs[0]) + links.new(pbsdf.inputs[19], tex.outputs[1]) + i = self.LoadTexture(0, path) + if i: + tex.image = i + + def ApplyMatSettings(self, mat, tex_path): + # if bpy.context.scene.LevelImp.AsObj: + # return self.ApplyPBSDFMat(mat, textures, path, layer) + + f3d = mat.f3d_mat # This is kure's custom property class for materials + + # set color registers if they exist + if hasattr(self, "fog_position"): + f3d.set_fog = True + f3d.use_global_fog = False + f3d.fog_position[0] = eval(self.fog_pos[0]) + f3d.fog_position[1] = eval(self.fog_pos[1]) + if hasattr(self, "fog_color"): + f3d.set_fog = True + f3d.use_global_fog = False + f3d.fog_color = self.ConvertColor(self.fog_color) + if hasattr(self, "light_col"): + # this is a dict but I'll only use the first color for now + f3d.set_lights = True + if self.light_col.get(1): + f3d.default_light_color = self.ConvertColor(eval(self.light_col[1]).to_bytes(4, "big")) + if hasattr(self, "env_color"): + f3d.set_env = True + f3d.env_color = self.ConvertColor(self.env_color[-4:]) + if hasattr(self, "prim_color"): + prim = self.prim_color + f3d.set_prim = True + f3d.prim_lod_min = int(prim[0]) + f3d.prim_lod_frac = int(prim[1]) + f3d.prim_color = self.ConvertColor(prim[-4:]) + # I set these but they aren't properly stored because they're reset by fast64 or something + # its better to have defaults than random 2 cycles + self.SetGeoMode(f3d.rdp_settings, mat) + + if self.TwoCycle: + f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_2CYCLE" + else: + f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_1CYCLE" + + # make combiner custom + f3d.presetName = "Custom" + self.SetCombiner(f3d) + # add tex scroll objects + if self.tx_scr: + scr = self.tx_scr + mat_scr = mat.KCS_tx_scroll + if hasattr(scr, "textures"): + [mat_scr.AddTex(t) for t in scr.textures] + if hasattr(scr, "palettes"): + [mat_scr.AddPal(t) for t in scr.palettes] + # deal with custom render modes + if hasattr(self, "RenderMode"): + self.SetRenderMode(f3d) + # g texture handle + if hasattr(self, "set_tex"): + # not exactly the same but gets the point across maybe? + f3d.tex0.tex_set = self.set_tex + f3d.tex1.tex_set = self.set_tex + # tex scale gets set to 0 when textures are disabled which is automatically done + # often to save processing power between mats or something, or just adhoc bhv + if f3d.rdp_settings.g_tex_gen or any([a < 1 and a > 0 for a in self.tex_scale]): + f3d.scale_autoprop = False + f3d.tex_scale = self.tex_scale + print(self.tex_scale) + if not self.set_tex: + # Update node values + override = bpy.context.copy() + override["material"] = mat + bpy.ops.material.update_f3d_nodes(override) + del override + return + # texture 0 then texture 1 + if self.tex0: + i = self.LoadTexture(0, tex_path, self.tex0) + tex0 = f3d.tex0 + tex0.tex_reference = str(self.tex0.Timg) # setting prop for hash purposes + tex0.tex_set = True + tex0.tex = i + tex0.tex_format = self.EvalFmt(self.tiles[0]) + tex0.autoprop = False + Sflags = self.EvalFlags(self.tiles[0].Sflags) + for f in Sflags: + setattr(tex0.S, f, True) + Tflags = self.EvalFlags(self.tiles[0].Tflags) + for f in Sflags: + setattr(tex0.T, f, True) + tex0.S.low = self.tiles[0].Slow + tex0.T.low = self.tiles[0].Tlow + tex0.S.high = self.tiles[0].Shigh + tex0.T.high = self.tiles[0].Thigh + + tex0.S.mask = self.tiles[0].SMask + tex0.T.mask = self.tiles[0].TMask + if self.tex1: + i = self.LoadTexture(0, tex_path, self.tex1) + tex1 = f3d.tex1 + tex1.tex_reference = str(self.tex1.Timg) # setting prop for hash purposes + tex1.tex_set = True + tex1.tex = i + tex1.tex_format = self.EvalFmt(self.tiles[1]) + Sflags = self.EvalFlags(self.tiles[1].Sflags) + for f in Sflags: + setattr(tex1.S, f, True) + Tflags = self.EvalFlags(self.tiles[1].Tflags) + for f in Sflags: + setattr(tex1.T, f, True) + tex1.S.low = self.tiles[1].Slow + tex1.T.low = self.tiles[1].Tlow + tex1.S.high = self.tiles[1].Shigh + tex1.T.high = self.tiles[1].Thigh + + tex1.S.mask = self.tiles[0].SMask + tex1.T.mask = self.tiles[0].TMask + # Update node values + override = bpy.context.copy() + override["material"] = mat + bpy.ops.material.update_f3d_nodes(override) + del override + + def EvalFlags(self, flags): + if not flags: + return [] + GBIflags = { + "G_TX_NOMIRROR": None, + "G_TX_WRAP": None, + "G_TX_MIRROR": ("mirror"), + "G_TX_CLAMP": ("clamp"), + "0": None, + "1": ("mirror"), + "2": ("clamp"), + "3": ("clamp", "mirror"), + } + x = [] + fsplit = flags.split("|") + for f in fsplit: + z = GBIflags.get(f.strip(), 0) + if z: + x.append(z) + return x + + # only work with macros I can recognize for now + def SetRenderMode(self, f3d): + rdp = f3d.rdp_settings + rdp.set_rendermode = True + # if the enum isn't there, then just print an error for now + try: + rdp.rendermode_preset_cycle_1 = self.RenderMode[0] + rdp.rendermode_preset_cycle_2 = self.RenderMode[1] + # print(f"set render modes with render mode {self.RenderMode}") + except: + print(f"could not set render modes with render mode {self.RenderMode}") + + def SetGeoMode(self, rdp, mat): + # texture gen has a different name than gbi + for a in self.GeoSet: + setattr(rdp, a.replace("G_TEXTURE_GEN", "G_TEX_GEN").lower().strip(), True) + for a in self.GeoClear: + setattr(rdp, a.replace("G_TEXTURE_GEN", "G_TEX_GEN").lower().strip(), False) + + # Very lazy for now + def SetCombiner(self, f3d): + if not hasattr(self, "Combiner"): + f3d.combiner1.A = "TEXEL0" + f3d.combiner1.A_alpha = "0" + f3d.combiner1.C = "SHADE" + f3d.combiner1.C_alpha = "0" + f3d.combiner1.D = "0" + f3d.combiner1.D_alpha = "1" + else: + f3d.combiner1.A = self.Combiner[0] + f3d.combiner1.B = self.Combiner[1] + f3d.combiner1.C = self.Combiner[2] + f3d.combiner1.D = self.Combiner[3] + f3d.combiner1.A_alpha = self.Combiner[4] + f3d.combiner1.B_alpha = self.Combiner[5] + f3d.combiner1.C_alpha = self.Combiner[6] + f3d.combiner1.D_alpha = self.Combiner[7] + f3d.combiner2.A = self.Combiner[8] + f3d.combiner2.B = self.Combiner[9] + f3d.combiner2.C = self.Combiner[10] + f3d.combiner2.D = self.Combiner[11] + f3d.combiner2.A_alpha = self.Combiner[12] + f3d.combiner2.B_alpha = self.Combiner[13] + f3d.combiner2.C_alpha = self.Combiner[14] + f3d.combiner2.D_alpha = self.Combiner[15] + + def EvalFmt(self, tex): + GBIfmts = { + "G_IM_FMT_RGBA": "RGBA", + "RGBA": "RGBA", + "G_IM_FMT_CI": "CI", + "CI": "CI", + "G_IM_FMT_IA": "IA", + "IA": "IA", + "G_IM_FMT_I": "I", + "I": "I", + "0": "RGBA", + "2": "CI", + "3": "IA", + "4": "I", + } + GBIsiz = { + "G_IM_SIZ_4b": "4", + "G_IM_SIZ_8b": "8", + "G_IM_SIZ_16b": "16", + "G_IM_SIZ_32b": "32", + "0": "4", + "1": "8", + "2": "16", + "3": "32", + } + return GBIfmts.get(tex.Fmt, "RGBA") + GBIsiz.get(str(tex.Siz), "16") + + +# handles DL import processing, specifically built to process each cmd into the mat class +# should be inherited into a larger F3d class which wraps DL processing +# does not deal with flow control or gathering the data containers (VB, Geo cls etc.) +class DL: + # the min needed for this class to work for importing + def __init__(self, lastmat=None): + self.VB = {} # vertex buffers + self.Gfx = {} # ptrs: display lists + self.diff = {} # diffuse lights + self.amb = {} # ambient lights + self.Lights = {} # lights + if not lastmat: + self.LastMat = Mat() + self.LastMat.name = 0 + else: + self.LastMat = lastmat + + # DL cmds that control the flow of a DL cannot be handled within a independent #class method without larger context of the total DL + # def gsSPEndDisplayList(): + # return + # def gsSPBranchList(): + # break + # def gsSPDisplayList(): + # continue + # Vertices are not currently handled in the base class + # Triangles + def gsSP2Triangles(self, args): + self.MakeNewMat() + args = [hexOrDecInt(a) for a in args] + Tri1 = self.ParseTri(args[:3]) + Tri2 = self.ParseTri(args[4:7]) + self.Tris.append(Tri1) + self.Tris.append(Tri2) + + def gsSP1Triangle(self, args): + self.MakeNewMat() + args = [hexOrDecInt(a) for a in args] + Tri = self.ParseTri(args[:3]) + self.Tris.append(Tri) + + # materials + # Mats will be placed sequentially. The first item of the list is the triangle number + # The second is the material class + def gsDPSetRenderMode(self, args): + self.NewMat = 1 + self.LastMat.RenderMode = [a.strip() for a in args] + + def gsDPSetFogColor(self, args): + self.NewMat = 1 + self.LastMat.fog_color = args + + def gsSPFogPosition(self, args): + self.NewMat = 1 + self.LastMat.fog_pos = args + + def gsSPLightColor(self, args): + self.NewMat = 1 + if not hasattr(self.LastMat, "light_col"): + self.LastMat.light_col = {} + num = re.search("_\d", args[0]).group()[1] + self.LastMat.light_col[num] = args[-1] + + def gsDPSetPrimColor(self, args): + self.NewMat = 1 + self.LastMat.prim_color = args + + def gsDPSetEnvColor(self, args): + self.NewMat = 1 + self.LastMat.env_color = args + + # multiple geo modes can happen in a row that contradict each other + # this is mostly due to culling wanting diff geo modes than drawing + # but sometimes using the same vertices + def gsSPClearGeometryMode(self, args): + self.NewMat = 1 + args = [a.strip() for a in args[0].split("|")] + for a in args: + if a in self.LastMat.GeoSet: + self.LastMat.GeoSet.remove(a) + self.LastMat.GeoClear.extend(args) + + def gsSPSetGeometryMode(self, args): + self.NewMat = 1 + args = [a.strip() for a in args[0].split("|")] + for a in args: + if a in self.LastMat.GeoClear: + self.LastMat.GeoClear.remove(a) + self.LastMat.GeoSet.extend(args) + + def gsSPGeometryMode(self, args): + self.NewMat = 1 + argsC = [a.strip() for a in args[0].split("|")] + argsS = [a.strip() for a in args[1].split("|")] + for a in argsC: + if a in self.LastMat.GeoSet: + self.LastMat.GeoSet.remove(a) + for a in argsS: + if a in self.LastMat.GeoClear: + self.LastMat.GeoClear.remove(a) + self.LastMat.GeoClear.extend(argsC) + self.LastMat.GeoSet.extend(argsS) + + def gsDPSetCycleType(self, args): + if "G_CYC_1CYCLE" in args[0]: + self.LastMat.TwoCycle = False + if "G_CYC_2CYCLE" in args[0]: + self.LastMat.TwoCycle = True + + def gsDPSetCombineMode(self, args): + self.NewMat = 1 + self.LastMat.Combiner = self.EvalCombiner(args) + + def gsDPSetCombineLERP(self, args): + self.NewMat = 1 + self.LastMat.Combiner = [a.strip() for a in args] + + # root tile, scale and set tex + def gsSPTexture(self, args): + self.NewMat = 1 + macros = { + "G_ON": 2, + "G_OFF": 0, + } + set_tex = macros.get(args[-1].strip()) + if set_tex == None: + set_tex = hexOrDecInt(args[-1].strip()) + self.LastMat.set_tex = set_tex == 2 + self.LastMat.tex_scale = [ + ((0x10000 * (hexOrDecInt(a) < 0)) + hexOrDecInt(a)) / 0xFFFF for a in args[0:2] + ] # signed half to unsigned half + self.LastMat.tile_root = self.EvalTile(args[-2].strip()) # I don't think I'll actually use this + + # last tex is a palette + def gsDPLoadTLUT(self, args): + try: + tex = self.LastMat.loadtex + self.LastMat.pal = tex + except: + print( + "**--Load block before set t img, DL is partial and missing context" + "likely static file meant to be used as a piece of a realtime system.\n" + "No interpretation on file possible**--" + ) + return None + + # tells us what tile the last loaded mat goes into + def gsDPLoadBlock(self, args): + try: + tex = self.LastMat.loadtex + # these values aren't necessary when the texture is already in png format + # tex.dxt = hexOrDecInt(args[4]) + # tex.texels = hexOrDecInt(args[3]) + tile = self.EvalTile(args[0]) + tex.tile = tile + if tile == 7: + self.LastMat.tex0 = tex + elif tile == 6: + self.LastMat.tex1 = tex + except: + print( + "**--Load block before set t img, DL is partial and missing context" + "likely static file meant to be used as a piece of a realtime system.\n" + "No interpretation on file possible**--" + ) + return None + + def gsDPSetTextureImage(self, args): + self.NewMat = 1 + Timg = args[3].strip() + Fmt = args[1].strip() + Siz = args[2].strip() + loadtex = Texture(Timg, Fmt, Siz) + self.LastMat.loadtex = loadtex + + def gsDPSetTileSize(self, args): + self.NewMat = 1 + tile = self.LastMat.tiles[self.EvalTile(args[0])] + tile.Slow = self.EvalImFrac(args[1].strip()) + tile.Tlow = self.EvalImFrac(args[2].strip()) + tile.Shigh = self.EvalImFrac(args[3].strip()) + tile.Thigh = self.EvalImFrac(args[4].strip()) + + def gsDPSetTile(self, args): + self.NewMat = 1 + tile = self.LastMat.tiles[self.EvalTile(args[4].strip())] + tile.Fmt = args[0].strip() + tile.Siz = args[1].strip() + tile.Tflags = args[6].strip() + tile.TMask = self.EvalTile(args[7].strip()) + tile.TShift = self.EvalTile(args[8].strip()) + tile.Sflags = args[9].strip() + tile.SMask = self.EvalTile(args[10].strip()) + tile.SShift = self.EvalTile(args[11].strip()) + + def MakeNewMat(self): + if self.NewMat: + self.NewMat = 0 + self.Mats.append([len(self.Tris) - 1, self.LastMat]) + self.LastMat = deepcopy(self.LastMat) # for safety + self.LastMat.name = self.num + 1 + if self.LastMat.tx_scr: + # I'm clearing here because I did some illegal stuff a bit before, temporary (maybe) + self.LastMat.tx_scr = None + self.num += 1 + + def ParseTri(self, Tri): + return [self.VertBuff[a] for a in Tri] + + def EvalImFrac(self, arg): + if type(arg) == int: + return arg + arg2 = arg.replace("G_TEXTURE_IMAGE_FRAC", "2") + return eval(arg2) + + def EvalTile(self, arg): + # only 0 and 7 have enums, other stuff just uses int (afaik) + Tiles = { + "G_TX_LOADTILE": 7, + "G_TX_RENDERTILE": 0, + "G_TX_NOMASK": 0, + "G_TX_NOLOD": 0, + } + t = Tiles.get(arg) + if t == None: + t = hexOrDecInt(arg) + return t + + def EvalCombiner(self, arg): + # two args + GBI_CC_Macros = { + "G_CC_PRIMITIVE": ["0", "0", "0", "PRIMITIVE", "0", "0", "0", "PRIMITIVE"], + "G_CC_SHADE": ["0", "0", "0", "SHADE", "0", "0", "0", "SHADE"], + "G_CC_MODULATEI": ["TEXEL0", "0", "SHADE", "0", "0", "0", "0", "SHADE"], + "G_CC_MODULATEIDECALA": ["TEXEL0", "0", "SHADE", "0", "0", "0", "0", "TEXEL0"], + "G_CC_MODULATEIFADE": ["TEXEL0", "0", "SHADE", "0", "0", "0", "0", "ENVIRONMENT"], + "G_CC_MODULATERGB": ["TEXEL0", "0", "SHADE", "0", "0", "0", "0", "SHADE"], + "G_CC_MODULATERGBDECALA": ["TEXEL0", "0", "SHADE", "0", "0", "0", "0", "TEXEL0"], + "G_CC_MODULATERGBFADE": ["TEXEL0", "0", "SHADE", "0", "0", "0", "0", "ENVIRONMENT"], + "G_CC_MODULATEIA": ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"], + "G_CC_MODULATEIFADEA": ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "ENVIRONMENT", "0"], + "G_CC_MODULATEFADE": ["TEXEL0", "0", "SHADE", "0", "ENVIRONMENT", "0", "TEXEL0", "0"], + "G_CC_MODULATERGBA": ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"], + "G_CC_MODULATERGBFADEA": ["TEXEL0", "0", "SHADE", "0", "ENVIRONMENT", "0", "TEXEL0", "0"], + "G_CC_MODULATEI_PRIM": ["TEXEL0", "0", "PRIMITIVE", "0", "0", "0", "0", "PRIMITIVE"], + "G_CC_MODULATEIA_PRIM": ["TEXEL0", "0", "PRIMITIVE", "0", "TEXEL0", "0", "PRIMITIVE", "0"], + "G_CC_MODULATEIDECALA_PRIM": ["TEXEL0", "0", "PRIMITIVE", "0", "0", "0", "0", "TEXEL0"], + "G_CC_MODULATERGB_PRIM": ["TEXEL0", "0", "PRIMITIVE", "0", "TEXEL0", "0", "PRIMITIVE", "0"], + "G_CC_MODULATERGBA_PRIM": ["TEXEL0", "0", "PRIMITIVE", "0", "TEXEL0", "0", "PRIMITIVE", "0"], + "G_CC_MODULATERGBDECALA_PRIM": ["TEXEL0", "0", "PRIMITIVE", "0", "0", "0", "0", "TEXEL0"], + "G_CC_FADE": ["SHADE", "0", "ENVIRONMENT", "0", "SHADE", "0", "ENVIRONMENT", "0"], + "G_CC_FADEA": ["TEXEL0", "0", "ENVIRONMENT", "0", "TEXEL0", "0", "ENVIRONMENT", "0"], + "G_CC_DECALRGB": ["0", "0", "0", "TEXEL0", "0", "0", "0", "SHADE"], + "G_CC_DECALRGBA": ["0", "0", "0", "TEXEL0", "0", "0", "0", "TEXEL0"], + "G_CC_DECALFADE": ["0", "0", "0", "TEXEL0", "0", "0", "0", "ENVIRONMENT"], + "G_CC_DECALFADEA": ["0", "0", "0", "TEXEL0", "TEXEL0", "0", "ENVIRONMENT", "0"], + "G_CC_BLENDI": ["ENVIRONMENT", "SHADE", "TEXEL0", "SHADE", "0", "0", "0", "SHADE"], + "G_CC_BLENDIA": ["ENVIRONMENT", "SHADE", "TEXEL0", "SHADE", "TEXEL0", "0", "SHADE", "0"], + "G_CC_BLENDIDECALA": ["ENVIRONMENT", "SHADE", "TEXEL0", "SHADE", "0", "0", "0", "TEXEL0"], + "G_CC_BLENDRGBA": ["TEXEL0", "SHADE", "TEXEL0_ALPHA", "SHADE", "0", "0", "0", "SHADE"], + "G_CC_BLENDRGBDECALA": ["TEXEL0", "SHADE", "TEXEL0_ALPHA", "SHADE", "0", "0", "0", "TEXEL0"], + "G_CC_BLENDRGBFADEA": ["TEXEL0", "SHADE", "TEXEL0_ALPHA", "SHADE", "0", "0", "0", "ENVIRONMENT"], + "G_CC_ADDRGB": ["TEXEL0", "0", "TEXEL0", "SHADE", "0", "0", "0", "SHADE"], + "G_CC_ADDRGBDECALA": ["TEXEL0", "0", "TEXEL0", "SHADE", "0", "0", "0", "TEXEL0"], + "G_CC_ADDRGBFADE": ["TEXEL0", "0", "TEXEL0", "SHADE", "0", "0", "0", "ENVIRONMENT"], + "G_CC_REFLECTRGB": ["ENVIRONMENT", "0", "TEXEL0", "SHADE", "0", "0", "0", "SHADE"], + "G_CC_REFLECTRGBDECALA": ["ENVIRONMENT", "0", "TEXEL0", "SHADE", "0", "0", "0", "TEXEL0"], + "G_CC_HILITERGB": ["PRIMITIVE", "SHADE", "TEXEL0", "SHADE", "0", "0", "0", "SHADE"], + "G_CC_HILITERGBA": ["PRIMITIVE", "SHADE", "TEXEL0", "SHADE", "PRIMITIVE", "SHADE", "TEXEL0", "SHADE"], + "G_CC_HILITERGBDECALA": ["PRIMITIVE", "SHADE", "TEXEL0", "SHADE", "0", "0", "0", "TEXEL0"], + "G_CC_SHADEDECALA": ["0", "0", "0", "SHADE", "0", "0", "0", "TEXEL0"], + "G_CC_SHADEFADEA": ["0", "0", "0", "SHADE", "0", "0", "0", "ENVIRONMENT"], + "G_CC_BLENDPE": ["PRIMITIVE", "ENVIRONMENT", "TEXEL0", "ENVIRONMENT", "TEXEL0", "0", "SHADE", "0"], + "G_CC_BLENDPEDECALA": ["PRIMITIVE", "ENVIRONMENT", "TEXEL0", "ENVIRONMENT", "0", "0", "0", "TEXEL0"], + "_G_CC_BLENDPE": ["ENVIRONMENT", "PRIMITIVE", "TEXEL0", "PRIMITIVE", "TEXEL0", "0", "SHADE", "0"], + "_G_CC_BLENDPEDECALA": ["ENVIRONMENT", "PRIMITIVE", "TEXEL0", "PRIMITIVE", "0", "0", "0", "TEXEL0"], + "_G_CC_TWOCOLORTEX": ["PRIMITIVE", "SHADE", "TEXEL0", "SHADE", "0", "0", "0", "SHADE"], + "_G_CC_SPARSEST": [ + "PRIMITIVE", + "TEXEL0", + "LOD_FRACTION", + "TEXEL0", + "PRIMITIVE", + "TEXEL0", + "LOD_FRACTION", + "TEXEL0", + ], + "G_CC_TEMPLERP": [ + "TEXEL1", + "TEXEL0", + "PRIM_LOD_FRAC", + "TEXEL0", + "TEXEL1", + "TEXEL0", + "PRIM_LOD_FRAC", + "TEXEL0", + ], + "G_CC_TRILERP": [ + "TEXEL1", + "TEXEL0", + "LOD_FRACTION", + "TEXEL0", + "TEXEL1", + "TEXEL0", + "LOD_FRACTION", + "TEXEL0", + ], + "G_CC_INTERFERENCE": ["TEXEL0", "0", "TEXEL1", "0", "TEXEL0", "0", "TEXEL1", "0"], + "G_CC_1CYUV2RGB": ["TEXEL0", "K4", "K5", "TEXEL0", "0", "0", "0", "SHADE"], + "G_CC_YUV2RGB": ["TEXEL1", "K4", "K5", "TEXEL1", "0", "0", "0", "0"], + "G_CC_PASS2": ["0", "0", "0", "COMBINED", "0", "0", "0", "COMBINED"], + "G_CC_MODULATEI2": ["COMBINED", "0", "SHADE", "0", "0", "0", "0", "SHADE"], + "G_CC_MODULATEIA2": ["COMBINED", "0", "SHADE", "0", "COMBINED", "0", "SHADE", "0"], + "G_CC_MODULATERGB2": ["COMBINED", "0", "SHADE", "0", "0", "0", "0", "SHADE"], + "G_CC_MODULATERGBA2": ["COMBINED", "0", "SHADE", "0", "COMBINED", "0", "SHADE", "0"], + "G_CC_MODULATEI_PRIM2": ["COMBINED", "0", "PRIMITIVE", "0", "0", "0", "0", "PRIMITIVE"], + "G_CC_MODULATEIA_PRIM2": ["COMBINED", "0", "PRIMITIVE", "0", "COMBINED", "0", "PRIMITIVE", "0"], + "G_CC_MODULATERGB_PRIM2": ["COMBINED", "0", "PRIMITIVE", "0", "0", "0", "0", "PRIMITIVE"], + "G_CC_MODULATERGBA_PRIM2": ["COMBINED", "0", "PRIMITIVE", "0", "COMBINED", "0", "PRIMITIVE", "0"], + "G_CC_DECALRGB2": ["0", "0", "0", "COMBINED", "0", "0", "0", "SHADE"], + "G_CC_BLENDI2": ["ENVIRONMENT", "SHADE", "COMBINED", "SHADE", "0", "0", "0", "SHADE"], + "G_CC_BLENDIA2": ["ENVIRONMENT", "SHADE", "COMBINED", "SHADE", "COMBINED", "0", "SHADE", "0"], + "G_CC_CHROMA_KEY2": ["TEXEL0", "CENTER", "SCALE", "0", "0", "0", "0", "0"], + "G_CC_HILITERGB2": ["ENVIRONMENT", "COMBINED", "TEXEL0", "COMBINED", "0", "0", "0", "SHADE"], + "G_CC_HILITERGBA2": [ + "ENVIRONMENT", + "COMBINED", + "TEXEL0", + "COMBINED", + "ENVIRONMENT", + "COMBINED", + "TEXEL0", + "COMBINED", + ], + "G_CC_HILITERGBDECALA2": ["ENVIRONMENT", "COMBINED", "TEXEL0", "COMBINED", "0", "0", "0", "TEXEL0"], + "G_CC_HILITERGBPASSA2": ["ENVIRONMENT", "COMBINED", "TEXEL0", "COMBINED", "0", "0", "0", "COMBINED"], + } + return GBI_CC_Macros.get( + arg[0].strip(), ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"] + ) + GBI_CC_Macros.get(arg[1].strip(), ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"]) diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py new file mode 100644 index 000000000..7156bf902 --- /dev/null +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -0,0 +1,1862 @@ +# ------------------------------------------------------------------------ +# Header +# ------------------------------------------------------------------------ +import bpy + +from bpy.props import ( + StringProperty, + BoolProperty, + IntProperty, + FloatProperty, + FloatVectorProperty, + EnumProperty, + PointerProperty, + IntVectorProperty, + BoolVectorProperty, +) +from bpy.types import ( + Panel, + Menu, + Operator, + PropertyGroup, +) +import os, sys, math, re, typing +from array import array +from struct import * +from shutil import copy +from pathlib import Path +from types import ModuleType +from mathutils import Vector, Euler, Matrix, Quaternion +from copy import deepcopy +from dataclasses import dataclass + +# from SM64classes import * + +from ..f3d.f3d_import import * +from ..utility import ( + rotate_quat_n64_to_blender, + parentObject, + GetEnums, +) + +# ------------------------------------------------------------------------ +# Data +# ------------------------------------------------------------------------ + +Num2LevelName = { + 4: "bbh", + 5: "ccm", + 7: "hmc", + 8: "ssl", + 9: "bob", + 10: "sl", + 11: "wdw", + 12: "jrb", + 13: "thi", + 14: "ttc", + 15: "rr", + 16: "castle_grounds", + 17: "bitdw", + 18: "vcutm", + 19: "bitfs", + 20: "sa", + 21: "bits", + 22: "lll", + 23: "ddd", + 24: "wf", + 25: "ending", + 26: "castle_courtyard", + 27: "pss", + 28: "cotmc", + 29: "totwc", + 30: "bowser_1", + 31: "wmotr", + 33: "bowser_2", + 34: "bowser_3", + 36: "ttm", +} + +# Levelname uses a different castle inside name which is dumb +Num2Name = {6: "castle_inside", **Num2LevelName} + + +# Dict converting +Layers = { + "LAYER_FORCE": "0", + "LAYER_OPAQUE": "1", + "LAYER_OPAQUE_DECAL": "2", + "LAYER_OPAQUE_INTER": "3", + "LAYER_ALPHA": "4", + "LAYER_TRANSPARENT": "5", + "LAYER_TRANSPARENT_DECAL": "6", + "LAYER_TRANSPARENT_INTER": "7", +} + + +# ------------------------------------------------------------------------ +# Classes +# ------------------------------------------------------------------------ + + +class Area: + def __init__( + self, + root: bpy.types.Object, + geo: str, + levelRoot: bpy.types.Object, + num: int, + scene: bpy.types.Scene, + col: bpy.types.Collection, + ): + self.root = root + self.geo = geo.strip() + self.num = num + self.scene = scene + # Set level root as parent + parentObject(levelRoot, root) + # set default vars + root.sm64_obj_type = "Area Root" + root.areaIndex = num + self.objects = [] + self.col = col + + def AddWarp(self, args: list[str]): + # set context to the root + bpy.context.view_layer.objects.active = self.root + # call fast64s warp node creation operator + bpy.ops.bone.add_warp_node() + warp = self.root.warpNodes[0] + warp.warpID = args[0] + warp.destNode = args[3] + level = args[1].strip().replace("LEVEL_", "").lower() + if level == "castle": + level = "castle_inside" + if level.isdigit(): + level = Num2Name.get(eval(level)) + if not level: + level = "bob" + warp.destLevelEnum = level + warp.destArea = args[2] + chkpoint = args[-1].strip() + # Sorry for the hex users here + if "WARP_NO_CHECKPOINT" in chkpoint or int(chkpoint.isdigit() * chkpoint + "0") == 0: + warp.warpFlagEnum = "WARP_NO_CHECKPOINT" + else: + warp.warpFlagEnum = "WARP_CHECKPOINT" + + def AddObject(self, args: list[str]): + self.objects.append(args) + + def PlaceObjects(self, col_name: str = None): + if not col_name: + col = self.col + else: + col = CreateCol(self.root.users_collection[0], col_name) + for a in self.objects: + self.PlaceObject(a, col) + + def PlaceObject(self, args: list[str], col: bpy.types.Collection): + Obj = bpy.data.objects.new("Empty", None) + col.objects.link(Obj) + parentObject(self.root, Obj) + Obj.name = "Object {} {}".format(args[8].strip(), args[0].strip()) + Obj.sm64_obj_type = "Object" + Obj.sm64_behaviour_enum = "Custom" + Obj.sm64_obj_behaviour = args[8].strip() + # bparam was changed in newer version of fast64 + if hasattr(Obj, "sm64_obj_bparam"): + Obj.sm64_obj_bparam = args[7] + else: + Obj.fast64.sm64.game_object.bparams = args[7] + Obj.sm64_obj_model = args[0] + loc = [eval(a.strip()) / self.scene.blenderToSM64Scale for a in args[1:4]] + # rotate to fit sm64s axis + loc = [loc[0], -loc[2], loc[1]] + Obj.location = loc + # fast64 just rotations by 90 on x + rot = Euler([math.radians(eval(a.strip())) for a in args[4:7]], "ZXY") + rot = rotate_quat_n64_to_blender(rot).to_euler("XYZ") + Obj.rotation_euler.rotate(rot) + # set act mask + mask = args[-1] + if type(mask) == str and mask.isdigit(): + mask = eval(mask) + form = "sm64_obj_use_act{}" + if mask == 31: + for i in range(1, 7, 1): + setattr(Obj, form.format(i), True) + else: + for i in range(1, 7, 1): + if mask & (1 << i): + setattr(Obj, form.format(i), True) + else: + setattr(Obj, form.format(i), False) + + +class Level: + def __init__(self, scr: list[str], scene: bpy.types.Scene, root: bpy.types.Object): + self.Scripts = FormatDat(scr, "LevelScript", ["(", ")"]) + self.scene = scene + self.Areas = {} + self.CurrArea = None + self.root = root + + def ParseScript(self, entry: str, col: bpy.types.Collection = None): + Start = self.Scripts[entry] + scale = self.scene.blenderToSM64Scale + if not col: + col = self.scene.collection + for l in Start: + args = self.StripArgs(l) + LsW = l.startswith + # Find an area + if LsW("AREA"): + Root = bpy.data.objects.new("Empty", None) + if self.scene.LevelImp.UseCol: + a_col = bpy.data.collections.new(f"{self.scene.LevelImp.Level} area {args[0]}") + col.children.link(a_col) + else: + a_col = col + a_col.objects.link(Root) + Root.name = "{} Area Root {}".format(self.scene.LevelImp.Level, args[0]) + self.Areas[args[0]] = Area(Root, args[1], self.root, int(args[0]), self.scene, a_col) + self.CurrArea = args[0] + continue + # End an area + if LsW("END_AREA"): + self.CurrArea = None + continue + # Jumps are only taken if they're in the script.c file for now + # continues script + elif LsW("JUMP_LINK"): + if self.Scripts.get(args[0]): + self.ParseScript(args[0], col=col) + continue + # ends script, I get arg -1 because sm74 has a different jump cmd + elif LsW("JUMP"): + Nentry = self.Scripts.get(args[-1]) + if Nentry: + self.ParseScript(args[-1], col=col) + # for the sm74 port + if len(args) != 2: + break + # final exit of recursion + elif LsW("EXIT") or l.startswith("RETURN"): + return + # Now deal with data cmds rather than flow control ones + if LsW("WARP_NODE"): + self.Areas[self.CurrArea].AddWarp(args) + continue + if LsW("OBJECT_WITH_ACTS"): + # convert act mask from ORs of act names to a number + mask = args[-1].strip() + if not mask.isdigit(): + mask = mask.replace("ACT_", "") + mask = mask.split("|") + # Attempt for safety I guess + try: + a = 0 + for m in mask: + a += 1 << int(m) + mask = a + except: + mask = 31 + self.Areas[self.CurrArea].AddObject([*args[:-1], mask]) + continue + if LsW("OBJECT"): + # Only difference is act mask, which I set to 31 to mean all acts + self.Areas[self.CurrArea].AddObject([*args, 31]) + continue + # Don't support these for now + if LsW("MACRO_OBJECTS"): + continue + if LsW("TERRAIN_TYPE"): + if not args[0].isdigit(): + self.Areas[self.CurrArea].root.terrainEnum = args[0].strip() + else: + terrains = { + 0: "TERRAIN_GRASS", + 1: "TERRAIN_STONE", + 2: "TERRAIN_SNOW", + 3: "TERRAIN_SAND", + 4: "TERRAIN_SPOOKY", + 5: "TERRAIN_WATER", + 6: "TERRAIN_SLIDE", + 7: "TERRAIN_MASK", + } + try: + num = eval(args[0]) + self.Areas[self.CurrArea].root.terrainEnum = terrains.get(num) + except: + print("could not set terrain") + continue + if LsW("SHOW_DIALOG"): + rt = self.Areas[self.CurrArea].root + rt.showStartDialog = True + rt.startDialog = args[1].strip() + continue + if LsW("TERRAIN"): + self.Areas[self.CurrArea].terrain = args[0].strip() + continue + if LsW("SET_BACKGROUND_MUSIC") or LsW("SET_MENU_MUSIC"): + rt = self.Areas[self.CurrArea].root + rt.musicSeqEnum = "Custom" + rt.music_seq = args[-1].strip() + return self.Areas + + def StripArgs(self, cmd: str): + a = cmd.find("(") + end = cmd.rfind(")") - len(cmd) + return cmd[a + 1 : end].split(",") + + +class Collision: + def __init__(self, col: list[str], scale: float): + self.col = col + self.scale = scale + self.vertices = [] + # key=type,value=tri data + self.tris = {} + self.type = None + self.SpecialObjs = [] + self.Types = [] + self.WaterBox = [] + + def GetCollision(self): + for l in self.col: + args = self.StripArgs(l) + # to avoid catching COL_VERTEX_INIT + if l.startswith("COL_VERTEX") and len(args) == 3: + self.vertices.append([eval(v) / self.scale for v in args]) + continue + if l.startswith("COL_TRI_INIT"): + self.type = args[0] + if not self.tris.get(self.type): + self.tris[self.type] = [] + continue + if l.startswith("COL_TRI") and len(args) > 2: + a = [eval(a) for a in args] + self.tris[self.type].append(a) + continue + if l.startswith("COL_WATER_BOX_INIT"): + continue + if l.startswith("COL_WATER_BOX"): + # id, x1, z1, x2, z2, y + self.WaterBox.append(args) + if l.startswith("SPECIAL_OBJECT"): + self.SpecialObjs.append(args) + # This will keep track of how to assign mats + a = 0 + for k, v in self.tris.items(): + self.Types.append([a, k, v[0]]) + a += len(v) + self.Types.append([a, 0]) + + def StripArgs(self, cmd: str): + a = cmd.find("(") + return cmd[a + 1 : -2].split(",") + + def WriteWaterBoxes( + self, scene: bpy.types.Scene, parent: bpy.types.Object, name: str, col: bpy.types.Collection = None + ): + for i, w in enumerate(self.WaterBox): + Obj = bpy.data.objects.new("Empty", None) + scene.collection.objects.link(Obj) + parentObject(parent, Obj) + Obj.name = "WaterBox_{}_{}".format(name, i) + Obj.sm64_obj_type = "Water Box" + x1 = eval(w[1]) / (self.scale) + x2 = eval(w[3]) / (self.scale) + z1 = eval(w[2]) / (self.scale) + z2 = eval(w[4]) / (self.scale) + y = eval(w[5]) / (self.scale) + Xwidth = abs(x2 - x1) / (2) + Zwidth = abs(z2 - z1) / (2) + loc = [x2 - Xwidth, -(z2 - Zwidth), y - 1] + Obj.location = loc + scale = [Xwidth, Zwidth, 1] + Obj.scale = scale + + def WriteCollision( + self, scene: bpy.types.Scene, name: str, parent: bpy.types.Object, col: bpy.types.Collection = None + ): + if not col: + col = scene.collection + self.WriteWaterBoxes(scene, parent, name, col) + mesh = bpy.data.meshes.new(name + " data") + tris = [] + for t in self.tris.values(): + # deal with special tris + if len(t[0]) > 3: + t = [a[0:3] for a in t] + tris.extend(t) + mesh.from_pydata(self.vertices, [], tris) + + obj = bpy.data.objects.new(name + " Mesh", mesh) + col.objects.link(obj) + obj.ignore_render = True + if parent: + parentObject(parent, obj) + RotateObj(-90, obj, world=1) + polys = obj.data.polygons + x = 0 + bpy.context.view_layer.objects.active = obj + max = len(polys) + for i, p in enumerate(polys): + a = self.Types[x][0] + if i >= a: + bpy.ops.object.create_f3d_mat() # the newest mat should be in slot[-1] + mat = obj.data.materials[x] + mat.collision_type_simple = "Custom" + mat.collision_custom = self.Types[x][1] + mat.name = "Sm64_Col_Mat_{}".format(self.Types[x][1]) + color = ((max - a) / (max), (max + a) / (2 * max - a), a / max, 1) # Just to give some variety + mat.f3d_mat.default_light_color = color + # check for param + if len(self.Types[x][2]) > 3: + mat.use_collision_param = True + mat.collision_param = str(self.Types[x][2][3]) + x += 1 + override = bpy.context.copy() + override["material"] = mat + bpy.ops.material.update_f3d_nodes(override) + p.material_index = x - 1 + return obj + + +class sm64_Mat(Mat): + def LoadTexture(self, ForceNewTex: bool, textures: dict, path: Path, tex: Texture): + if not tex: + return None + Timg = textures.get(tex.Timg)[0].split("/")[-1] + Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") + i = bpy.data.images.get(Timg) + if not i or ForceNewTex: + Timg = textures.get(tex.Timg)[0] + Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") + # deal with duplicate pathing (such as /actors/actors etc.) + Extra = path.relative_to(Path(bpy.context.scene.decompPath)) + for e in Extra.parts: + Timg = Timg.replace(e + "/", "") + # deal with actor import path not working for shared textures + if "textures" in Timg: + fp = Path(bpy.context.scene.decompPath) / Timg + else: + fp = path / Timg + return bpy.data.images.load(filepath=str(fp)) + else: + return i + + def ApplyPBSDFMat(self, mat: bpy.types.Material, textures: dict, path: Path, layer: int, tex0: Texture): + nt = mat.node_tree + nodes = nt.nodes + links = nt.links + pbsdf = nodes.get("Principled BSDF") + if not pbsdf: + return + tex = nodes.new("ShaderNodeTexImage") + links.new(pbsdf.inputs[0], tex.outputs[0]) # base color + i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, tex0) + if i: + tex.image = i + if int(layer) > 4: + mat.blend_method == "BLEND" + + def ApplyMatSettings(self, mat: bpy.types.Material, textures: dict, path: Path, layer: int): + if bpy.context.scene.LevelImp.AsObj: + return self.ApplyPBSDFMat(mat, textures, path, layer, self.tex0) + f3d = mat.f3d_mat # This is kure's custom property class for materials + f3d.draw_layer.sm64 = layer + # set color registers if they exist + if hasattr(self, "fog_position"): + f3d.set_fog = True + f3d.use_global_fog = False + f3d.fog_position[0] = eval(self.fog_pos[0]) + f3d.fog_position[1] = eval(self.fog_pos[1]) + if hasattr(self, "fog_color"): + f3d.set_fog = True + f3d.use_global_fog = False + f3d.fog_color = self.ConvertColor(self.fog_color) + if hasattr(self, "light_col"): + # this is a dict but I'll only use the first color for now + f3d.set_lights = True + if self.light_col.get(1): + f3d.default_light_color = self.ConvertColor(eval(self.light_col[1]).to_bytes(4, "big")) + if hasattr(self, "env_color"): + f3d.set_env = True + f3d.env_color = self.ConvertColor(self.env_color[-4:]) + if hasattr(self, "prim_color"): + prim = self.prim_color + f3d.set_prim = True + f3d.prim_lod_min = int(prim[0]) + f3d.prim_lod_frac = int(prim[1]) + f3d.prim_color = self.ConvertColor(prim[-4:]) + # I set these but they aren't properly stored because they're reset by fast64 or something + # its better to have defaults than random 2 cycles + self.SetGeoMode(f3d.rdp_settings, mat) + + if self.TwoCycle: + f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_2CYCLE" + else: + f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_1CYCLE" + # make combiner custom + f3d.presetName = "Custom" + self.SetCombiner(f3d) + + # deal with custom render modes + if hasattr(self, "RenderMode"): + self.SetRenderMode(f3d) + # g texture handle + if hasattr(self, "set_tex"): + # not exactly the same but gets the point across maybe? + f3d.tex0.tex_set = self.set_tex + f3d.tex1.tex_set = self.set_tex + # tex scale gets set to 0 when textures are disabled which is automatically done + # often to save processing power between mats or something, or just adhoc bhv + if f3d.rdp_settings.g_tex_gen or any([a < 1 and a > 0 for a in self.tex_scale]): + f3d.scale_autoprop = False + f3d.tex_scale = self.tex_scale + print(self.tex_scale) + if not self.set_tex: + # Update node values + override = bpy.context.copy() + override["material"] = mat + bpy.ops.material.update_f3d_nodes(override) + del override + return + # Try to set an image + # texture 0 then texture 1 + if self.tex0: + i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, self.tex0) + tex0 = f3d.tex0 + tex0.tex_reference = str(self.tex0.Timg) # setting prop for hash purposes + tex0.tex_set = True + tex0.tex = i + tex0.tex_format = self.EvalFmt(self.tiles[0]) + tex0.autoprop = False + Sflags = self.EvalFlags(self.tiles[0].Sflags) + for f in Sflags: + setattr(tex0.S, f, True) + Tflags = self.EvalFlags(self.tiles[0].Tflags) + for f in Sflags: + setattr(tex0.T, f, True) + tex0.S.low = self.tiles[0].Slow + tex0.T.low = self.tiles[0].Tlow + tex0.S.high = self.tiles[0].Shigh + tex0.T.high = self.tiles[0].Thigh + + tex0.S.mask = self.tiles[0].SMask + tex0.T.mask = self.tiles[0].TMask + if self.tex1: + i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, self.tex1) + tex1 = f3d.tex1 + tex1.tex_reference = str(self.tex1.Timg) # setting prop for hash purposes + tex1.tex_set = True + tex1.tex = i + tex1.tex_format = self.EvalFmt(self.tiles[1]) + Sflags = self.EvalFlags(self.tiles[1].Sflags) + for f in Sflags: + setattr(tex1.S, f, True) + Tflags = self.EvalFlags(self.tiles[1].Tflags) + for f in Sflags: + setattr(tex1.T, f, True) + tex1.S.low = self.tiles[1].Slow + tex1.T.low = self.tiles[1].Tlow + tex1.S.high = self.tiles[1].Shigh + tex1.T.high = self.tiles[1].Thigh + + tex1.S.mask = self.tiles[0].SMask + tex1.T.mask = self.tiles[0].TMask + # Update node values + override = bpy.context.copy() + override["material"] = mat + bpy.ops.material.update_f3d_nodes(override) + del override + + +class sm64_F3d(DL): + def __init__(self, scene: bpy.types.Scene): + self.VB = {} + self.Gfx = {} + self.diff = {} + self.amb = {} + self.Lights = {} + self.Textures = {} + self.scene = scene + self.num = 0 + + # Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file + def GetGenericTextures(self, root_path: Path): + for t in [ + "cave.c", + "effect.c", + "fire.c", + "generic.c", + "grass.c", + "inside.c", + "machine.c", + "mountain.c", + "outside.c", + "sky.c", + "snow.c", + "spooky.c", + "water.c", + ]: + t = root_path / "bin" / t + t = open(t, "r") + tex = t.readlines() + # For textures, try u8, and s16 aswell + self.Textures.update(FormatDat(tex, "Texture", [None, None])) + self.Textures.update(FormatDat(tex, "u8", [None, None])) + self.Textures.update(FormatDat(tex, "s16", [None, None])) + t.close() + + # recursively parse the display list in order to return a bunch of model data + def GetDataFromModel(self, start: str): + DL = self.Gfx.get(start) + self.VertBuff = [0] * 32 # If you're doing some fucky shit with a larger vert buffer it sucks to suck I guess + if not DL: + raise Exception("Could not find DL {}".format(start)) + self.Verts = [] + self.Tris = [] + self.UVs = [] + self.VCs = [] + self.Mats = [] + self.LastMat = sm64_Mat() + self.ParseDL(DL) + self.NewMat = 0 + self.StartName = start + return [self.Verts, self.Tris] + + def ParseDL(self, DL: list[str]): + # This will be the equivalent of a giant switch case + x = -1 + while x < len(DL): + # manaual iteration so I can skip certain children efficiently + # manaual iteration so I can skip certain children efficiently if needed + x += 1 + (cmd, args) = self.StripArgs(DL[x]) # each member is a tuple of (cmd, arguments) + LsW = cmd.startswith + # Deal with control flow first + if LsW("gsSPEndDisplayList"): + return + if LsW("gsSPBranchList"): + NewDL = self.Gfx.get(args[0].strip()) + if not DL: + raise Exception( + "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( + NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + ) + ) + self.ParseDL(NewDL) + break + if LsW("gsSPDisplayList"): + NewDL = self.Gfx.get(args[0].strip()) + if not DL: + raise Exception( + "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( + NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + ) + ) + self.ParseDL(NewDL) + continue + # Vertices + if LsW("gsSPVertex"): + # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later + if "+" in args[0]: + ref, add = args[0].split("+") + else: + ref = args[0] + add = "0" + VB = self.VB.get(ref.strip()) + if not VB: + raise Exception( + "Could not find VB {} in levels/{}/{}leveldata.inc.c".format( + ref, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + ) + ) + Verts = VB[ + int(add.strip()) : int(add.strip()) + eval(args[1]) + ] # If you use array indexing here then you deserve to have this not work + Verts = [self.ParseVert(v) for v in Verts] + for k, i in enumerate(range(eval(args[2]), eval(args[1]), 1)): + self.VertBuff[i] = [Verts[k], eval(args[2])] + # These are all independent data blocks in blender + self.Verts.extend([v[0] for v in Verts]) + self.UVs.extend([v[1] for v in Verts]) + self.VCs.extend([v[2] for v in Verts]) + self.LastLoad = eval(args[1]) + continue + # tri and mat DL cmds will be called via parent class + func = getattr(self, cmd, None) + if func: + func(args) + + def MakeNewMat(self): + if self.NewMat: + self.NewMat = 0 + self.Mats.append([len(self.Tris) - 1, self.LastMat]) + self.LastMat = deepcopy(self.LastMat) # for safety + self.LastMat.name = self.num + 1 + self.num += 1 + + # turn member of vtx str arr into vtx args + def ParseVert(self, Vert: str): + v = Vert.replace("{", "").replace("}", "").split(",") + num = lambda x: [eval(a) for a in x] + pos = num(v[:3]) + uv = num(v[4:6]) + vc = num(v[6:10]) + return [pos, uv, vc] + + # given tri args in gbi cmd, give appropriate tri indices in vert list + def ParseTri(self, Tri: list[int]): + L = len(self.Verts) + return [a + L - self.LastLoad for a in Tri] + + def StripArgs(self, cmd: str): + a = cmd.find("(") + return cmd[:a].strip(), cmd[a + 1 : -2].split(",") + + def ApplyDat(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path): + tris = mesh.polygons + bpy.context.view_layer.objects.active = obj + ind = -1 + new = -1 + UVmap = obj.data.uv_layers.new(name="UVMap") + # I can get the available enums for color attrs with this func + vcol_enums = GetEnums(bpy.types.FloatColorAttribute, "data_type") + # enums were changed in a blender version, this should future proof it a little + if "FLOAT_COLOR" in vcol_enums: + e = "FLOAT_COLOR" + else: + e = "COLOR" + Vcol = obj.data.color_attributes.get("Col") + if not Vcol: + Vcol = obj.data.color_attributes.new(name="Col", type=e, domain="CORNER") + Valph = obj.data.color_attributes.get("Alpha") + if not Valph: + Valph = obj.data.color_attributes.new(name="Alpha", type=e, domain="CORNER") + self.Mats.append([len(tris), 0]) + for i, t in enumerate(tris): + if i > self.Mats[ind + 1][0]: + new = self.Create_new_f3d_mat(self.Mats[ind + 1][1], mesh) + ind += 1 + if not new: + new = len(mesh.materials) - 1 + mat = mesh.materials[new] + mat.name = "sm64 F3D Mat {} {}".format(obj.name, new) + self.Mats[new][1].ApplyMatSettings(mat, self.Textures, tex_path, layer) + else: + # I tried to re use mat slots but it is much slower, and not as accurate + # idk if I was just doing it wrong or the search is that much slower, but this is easier + mesh.materials.append(new) + new = len(mesh.materials) - 1 + # if somehow there is no material assigned to the triangle or something is lost + if new != -1: + t.material_index = new + # Get texture size or assume 32, 32 otherwise + i = mesh.materials[new].f3d_mat.tex0.tex + if not i: + WH = (32, 32) + else: + WH = i.size + # Set UV data and Vertex Color Data + for v, l in zip(t.vertices, t.loop_indices): + uv = self.UVs[v] + vcol = self.VCs[v] + # scale verts + UVmap.data[l].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] + # idk why this is necessary. N64 thing or something? + UVmap.data[l].uv[1] = UVmap.data[l].uv[1] * -1 + 1 + Vcol.data[l].color = [a / 255 for a in vcol] + + # create a new f3d_mat given an sm64_Mat class but don't create copies with same props + def Create_new_f3d_mat(self, mat: sm64_Mat, mesh: bpy.types.Mesh): + if not self.scene.LevelImp.ForceNewTex: + # check if this mat was used already in another mesh (or this mat if DL is garbage or something) + # even looping n^2 is probably faster than duping 3 mats with blender speed + for j, F3Dmat in enumerate(bpy.data.materials): + if F3Dmat.is_f3d: + dupe = mat.MatHashF3d(F3Dmat.f3d_mat) + if dupe: + return F3Dmat + if mesh.materials: + mat = mesh.materials[-1] + new = mat.id_data.copy() # make a copy of the data block + # add a mat slot and add mat to it + mesh.materials.append(new) + else: + if self.scene.LevelImp.AsObj: + NewMat = bpy.data.materials.new(f"sm64 {mesh.name.replace('Data', 'material')}") + mesh.materials.append(NewMat) # the newest mat should be in slot[-1] for the mesh materials + NewMat.use_nodes = True + else: + bpy.ops.object.create_f3d_mat() # the newest mat should be in slot[-1] for the mesh materials + return None + + +# holds model found by geo +@dataclass +class ModelDat: + translate: tuple + rotate: tuple + layer: int + model: str + scale: float = 1.0 + + +class GeoLayout: + def __init__( + self, + GeoLayouts: dict, + root: bpy.types.Object, + scene: bpy.types.Scene, + name, + Aroot: bpy.types.Object, + col: bpy.types.Collection = None, + ): + self.GL = GeoLayouts + self.parent = root + self.models = [] + self.Children = [] + self.scene = scene + self.RenderRange = None + self.Aroot = Aroot # for properties that can only be written to area + self.root = root + self.ParentTransform = [[0, 0, 0], [0, 0, 0]] + self.LastTransform = [[0, 0, 0], [0, 0, 0]] + self.name = name + self.obj = None # last object on this layer of the tree, will become parent of next child + if not col: + self.col = Aroot.users_collection[0] + else: + self.col = col + + def MakeRt(self, name: str, root: bpy.types.Object): + # make an empty node to act as the root of this geo layout + # use this to hold a transform, or an actual cmd, otherwise rt is passed + E = bpy.data.objects.new(name, None) + self.obj = E + self.col.objects.link(E) + parentObject(root, E) + return E + + def ParseLevelGeosStart(self, start: str, scene: bpy.types.Scene): + GL = self.GL.get(start) + if not GL: + raise Exception( + "Could not find geo layout {} from levels/{}/{}geo.c".format( + start, scene.LevelImp.Level, scene.LevelImp.Prefix + ) + ) + self.ParseLevelGeos(GL, 0) + + # So I can start where ever for child nodes + def ParseLevelGeos(self, GL: list[str], depth: int): + # I won't parse the geo layout perfectly. For now I'll just get models. This is mostly because fast64 + # isn't a bijection to geo layouts, the props are sort of handled all over the place + x = -1 + while x < len(GL): + # manaual iteration so I can skip certain children efficiently + x += 1 + (cmd, args) = self.StripArgs(GL[x]) # each member is a tuple of (cmd, arguments) + LsW = cmd.startswith + # Jumps are only taken if they're in the script.c file for now + # continues script + if LsW("GEO_BRANCH_AND_LINK"): + NewGL = self.GL.get(args[0].strip()) + if NewGL: + self.ParseLevelGeos(NewGL, depth) + continue + # continues + elif LsW("GEO_BRANCH"): + NewGL = self.GL.get(args[1].strip()) + if NewGL: + self.ParseLevelGeos(NewGL, depth) + if eval(args[0]): + continue + else: + break + # final exit of recursion + elif LsW("GEO_END") or LsW("GEO_RETURN"): + return + # on an open node, make a child + elif LsW("GEO_CLOSE_NODE"): + # if there is no more open nodes, then parent this to last node + if depth: + return + elif LsW("GEO_OPEN_NODE"): + if self.obj: + GeoChild = GeoLayout(self.GL, self.obj, self.scene, self.name, self.Aroot, col=self.col) + else: + GeoChild = GeoLayout(self.GL, self.root, self.scene, self.name, self.Aroot, col=self.col) + GeoChild.ParentTransform = self.LastTransform + GeoChild.ParseLevelGeos(GL[x + 1 :], depth + 1) + x = self.SkipChildren(GL, x) + self.Children.append(GeoChild) + continue + else: + # things that only need args can be their own functions + func = getattr(self, cmd.strip(), None) + if func: + func(args) + + # Append to models array. Only check this one for now + def GEO_DISPLAY_LIST(self, args: list[str]): + # translation, rotation, layer, model + self.models.append(ModelDat(*self.ParentTransform, *args)) + + # shadows aren't naturally supported but we can emulate them with custom geo cmds + def GEO_SHADOW(self, args: list[str]): + obj = self.MakeRt(self.name + "shadow empty", self.root) + obj.sm64_obj_type = "Custom Geo Command" + obj.customGeoCommand = "GEO_SHADOW" + obj.customGeoCommandArgs = ",".join(args) + + def GEO_ANIMATED_PART(self, args: list[str]): + # layer, translation, DL + layer = args[0] + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + Tlate = [Tlate[0], -Tlate[2], Tlate[1]] + model = args[-1] + self.LastTransform = [Tlate, self.LastTransform[1]] + if model.strip() != "NULL": + self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) + else: + obj = self.MakeRt(self.name + "animated empty", self.root) + obj.location = Tlate + + def GEO_ROTATION_NODE(self, args: list[str]): + obj = self.GEO_ROTATE(args) + if obj: + obj.sm64_obj_type = "Geo Rotation Node" + + def GEO_ROTATE(self, args: list[str]): + layer = args[0] + Rotate = [math.radians(float(a)) for a in [args[1], args[2], args[3]]] + Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") + self.LastTransform = [[0, 0, 0], Rotate] + self.LastTransform = [[0, 0, 0], self.LastTransform[1]] + obj = self.MakeRt(self.name + "rotate", self.root) + obj.rotation_euler = Rotate + obj.sm64_obj_type = "Geo Translate/Rotate" + return obj + + def GEO_ROTATION_NODE_WITH_DL(self, args: list[str]): + obj = self.GEO_ROTATE_WITH_DL(args) + if obj: + obj.sm64_obj_type = "Geo Translate/Rotate" + + def GEO_ROTATE_WITH_DL(self, args: list[str]): + layer = args[0] + Rotate = [math.radians(float(a)) for a in [args[1], args[2], args[3]]] + Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") + self.LastTransform = [[0, 0, 0], Rotate] + model = args[-1] + self.LastTransform = [[0, 0, 0], self.LastTransform[1]] + if model.strip() != "NULL": + self.models.append(ModelDat([0, 0, 0], Rotate, layer, model)) + else: + obj = self.MakeRt(self.name + "rotate", self.root) + obj.rotation_euler = Rotate + obj.sm64_obj_type = "Geo Translate/Rotate" + return obj + + def GEO_TRANSLATE_ROTATE_WITH_DL(self, args: list[str]): + layer = args[0] + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + Tlate = [Tlate[0], -Tlate[2], Tlate[1]] + Rotate = [math.radians(float(a)) for a in [args[4], args[5], args[6]]] + Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") + self.LastTransform = [Tlate, Rotate] + model = args[-1] + self.LastTransform = [Tlate, self.LastTransform[1]] + if model.strip() != "NULL": + self.models.append(ModelDat(Tlate, Rotate, layer, model)) + else: + obj = self.MakeRt(self.name + "translate rotate", self.root) + obj.location = Tlate + obj.rotation_euler = Rotate + obj.sm64_obj_type = "Geo Translate/Rotate" + + def GEO_TRANSLATE_ROTATE(self, args: list[str]): + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + Tlate = [Tlate[0], -Tlate[2], Tlate[1]] + Rotate = [math.radians(float(a)) for a in [args[4], args[5], args[6]]] + Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") + self.LastTransform = [Tlate, Rotate] + obj = self.MakeRt(self.name + "translate", self.root) + obj.location = Tlate + obj.rotation_euler = Rotate + obj.sm64_obj_type = "Geo Translate/Rotate" + + def GEO_TRANSLATE_WITH_DL(self, args: list[str]): + obj = self.GEO_TRANSLATE_NODE_WITH_DL(args) + if obj: + obj.sm64_obj_type = "Geo Translate/Rotate" + + def GEO_TRANSLATE_NODE_WITH_DL(self, args: list[str]): + # translation, layer, model + layer = args[0] + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + Tlate = [Tlate[0], -Tlate[2], Tlate[1]] + model = args[-1] + self.LastTransform = [Tlate, (0, 0, 0)] + if model.strip() != "NULL": + self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) + else: + obj = self.MakeRt(self.name + "translate", self.root) + obj.location = Tlate + obj.rotation_euler = Rotate + obj.sm64_obj_type = "Geo Translate Node" + return obj + + def GEO_TRANSLATE(self, args: list[str]): + obj = self.GEO_TRANSLATE_NODE(args) + if obj: + obj.sm64_obj_type = "Geo Translate/Rotate" + + def GEO_TRANSLATE_NODE(self, args: list[str]): + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + Tlate = [Tlate[0], -Tlate[2], Tlate[1]] + self.LastTransform = [Tlate, self.LastTransform[1]] + obj = self.MakeRt(self.name + "translate", self.root) + obj.location = Tlate + obj.sm64_obj_type = "Geo Translate Node" + return obj + + def GEO_SCALE_WITH_DL(self, args: list[str]): + scale = eval(args[1].strip()) / 0x10000 + model = args[-1] + self.LastTransform = [(0, 0, 0), self.LastTransform[1]] + self.models.append(ModelDat((0, 0, 0), (0, 0, 0), layer, model, scale=scale)) + + def GEO_SCALE(self, args: list[str]): + obj = self.MakeRt(self.name + "scale", self.root) + scale = eval(args[1].strip()) / 0x10000 + obj.scale = (scale, scale, scale) + obj.sm64_obj_type = "Geo Scale" + + def GEO_ASM(self, args: list[str]): + obj = self.MakeRt(self.name + "asm", self.root) + asm = self.obj.fast64.sm64.geo_asm + self.obj.sm64_obj_type = "Geo ASM" + asm.param = args[0].strip() + asm.func = args[1].strip() + + def GEO_SWITCH_CASE(self, args: list[str]): + obj = self.MakeRt(self.name + "switch", self.root) + Switch = self.obj + Switch.sm64_obj_type = "Switch" + Switch.switchParam = eval(args[0]) + Switch.switchFunc = args[1].strip() + + # This has to be applied to meshes + def GEO_RENDER_RANGE(self, args: list[str]): + self.RenderRange = args + + # can only apply type to area root + def GEO_CAMERA(self, args: list[str]): + self.Aroot.camOption = "Custom" + self.Aroot.camType = args[0] + + # Geo backgrounds is pointless because the only background possible is the one + # loaded in the level script. This is the only override + def GEO_BACKGROUND_COLOR(self, args: list[str]): + self.Aroot.areaOverrideBG = True + color = eval(args[0]) + A = color & 1 + B = (color & 0x3E) > 1 + G = (color & (0x3E << 5)) >> 6 + R = (color & (0x3E << 10)) >> 11 + self.Aroot.areaBGColor = (R / 0x1F, G / 0x1F, B / 0x1F, A) + + def SkipChildren(self, GL: list[str], x: int): + open = 0 + opened = 0 + while x < len(GL): + l = GL[x] + if l.startswith("GEO_OPEN_NODE"): + opened = 1 + open += 1 + if l.startswith("GEO_CLOSE_NODE"): + open -= 1 + if open == 0 and opened: + break + x += 1 + return x + + def StripArgs(self, cmd: str): + a = cmd.find("(") + return cmd[:a].strip(), cmd[a + 1 : -2].split(",") + + +# ------------------------------------------------------------------------ +# Functions +# ------------------------------------------------------------------------ + + +# creates a new collection and links it to parent +def CreateCol(parent: bpy.types.Collection, name: str): + col = bpy.data.collections.new(name) + parent.children.link(col) + return col + + +def RotateObj(deg: float, obj: bpy.types.Object, world: bool = 0): + deg = Euler((math.radians(-deg), 0, 0)) + deg = deg.to_quaternion().to_matrix().to_4x4() + if world: + obj.matrix_world = obj.matrix_world @ deg + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.transform_apply(rotation=True) + else: + obj.matrix_basis = obj.matrix_basis @ deg + + +def EvalMacro(line: str): + scene = bpy.context.scene + if scene.LevelImp.Version in line: + return False + if scene.LevelImp.Target in line: + return False + return True + + +# given an aggregate file that imports many files, find files with the name of type +def ParseAggregat(dat: typing.TextIO, filename: str, root_path: Path): + dat.seek(0) # so it may be read multiple times + InlineReg = "/\*((?!\*/).)*\*/" # filter out inline comments + ldat = dat.readlines() + files = [] + # assume this follows naming convention + for l in ldat: + if filename in l: + comment = l.rfind("//") + # double slash terminates line basically + if comment: + l = l[:comment] + # remove inline comments from line + l = re.sub(InlineReg, "", l) + files.append(l.strip()) + # remove include and quotes inefficiently. Now files is a list of relative paths + files = [c.replace("#include ", "").replace('"', "").replace("'", "") for c in files] + # deal with duplicate pathing (such as /actors/actors etc.) + Extra = root_path.relative_to(Path(bpy.context.scene.decompPath)) + for e in Extra.parts: + files = [c.replace(e + "/", "") for c in files] + if files: + return [root_path / c for c in files] + else: + return [] + + +# get all the collision data from a certain path +def FindCollisions(aggregate: Path, lvl: Level, scene: bpy.types.Scene, root_path: Path): + aggregate = open(aggregate, "r") + cols = ParseAggregat(aggregate, "collision.inc.c", root_path) + # catch fast64 includes + fast64 = ParseAggregat(aggregate, "leveldata.inc.c", root_path) + if fast64: + f64dat = open(fast64[0], "r") + cols += ParseAggregat(f64dat, "collision.inc.c", root_path) + aggregate.close() + # search for the area terrain in each file + for k, v in lvl.Areas.items(): + terrain = v.terrain + found = 0 + for c in cols: + if os.path.isfile(c): + c = open(c, "r") + c = c.readlines() + for i, l in enumerate(c): + if terrain in l: + # Trim Collision to be just the lines that have the file + v.ColFile = c[i:] + break + else: + c = None + continue + break + else: + c = None + if not c: + raise Exception( + "Collision {} not found in levels/{}/{}leveldata.c".format( + terrain, scene.LevelImp.Level, scene.LevelImp.Prefix + ) + ) + Collisions = FormatDat(v.ColFile, "Collision", ["(", ")"]) + v.ColFile = Collisions[terrain] + return lvl + + +def WriteLevelCollision(lvl: Level, scene: bpy.types.Scene, cleanup: bool, col_name: str = None): + for k, v in lvl.Areas.items(): + if not col_name: + col = v.root.users_collection[0] + else: + col = CreateCol(v.root.users_collection[0], col_name) + # dat is a class that holds all the collision files data + dat = Collision(v.ColFile, scene.blenderToSM64Scale) + dat.GetCollision() + name = "SM64 {} Area {} Col".format(scene.LevelImp.Level, k) + obj = dat.WriteCollision(scene, name, v.root, col=col) + # final operators to clean stuff up + if cleanup: + obj.data.validate() + obj.data.update(calc_edges=True) + # shade smooth + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.shade_smooth() + bpy.ops.object.mode_set(mode="EDIT") + bpy.ops.mesh.remove_doubles() + bpy.ops.object.mode_set(mode="OBJECT") + + +# get all the relevant data types cleaned up and organized for the f3d class +def FormatModel(gfx: sm64_F3d, model: list[str]): + # For each data type, make an attribute where it cleans the input of the model files + gfx.VB.update(FormatDat(model, "Vtx", ["{", "}"])) + gfx.Gfx.update(FormatDat(model, "Gfx", ["(", ")"])) + gfx.diff.update(FormatDat(model, "Light_t", [None, None])) + gfx.amb.update(FormatDat(model, "Ambient_t", [None, None])) + gfx.Lights.update(FormatDat(model, "Lights1", [None, None])) + # For textures, try u8, and s16 aswell + gfx.Textures.update(FormatDat(model, "Texture", [None, None])) + gfx.Textures.update(FormatDat(model, "u8", [None, None])) + gfx.Textures.update(FormatDat(model, "s16", [None, None])) + return gfx + + +# Search through a C file to find data of typeName[] and split it into a list +# of macros with all comments removed +def FormatDat(lines: list[str], typeName: str, Delims: list[str]): + # Get a dictionary made up with keys=level script names + # and values as an array of all the cmds inside. + Models = {} + InlineReg = "/\*((?!\*/).)*\*/" # filter out inline comments + regX = "\[[0-9a-fx]*\]" # array bounds, basically [] with any number in it + currScr = 0 # name of current arr of type typeName + skip = 0 # bool to skip during macros + for l in lines: + # remove line comment + comment = l.rfind("//") + if comment: + l = l[:comment] + # check for macro + if "#ifdef" in l: + skip = EvalMacro(l) + if "#elif" in l: + skip = EvalMacro(l) + if "#else" in l: + skip = 0 + continue + # Now Check for level script starts + match = re.search(regX, l, flags=re.IGNORECASE) + if typeName in l and match and not skip: + # get var name, get substring from typename to [] + var = l[l.find(typeName) + len(typeName) : match.span()[0]].strip() + Models[var] = "" + currScr = var + continue + if currScr and not skip: + # remove inline comments from line + l = re.sub(InlineReg, "", l) + # Check for end of Level Script array + if "};" in l: + currScr = 0 + # Add line to dict + else: + Models[currScr] += l + # Now remove newlines from each script, and then split macro ends + # This makes each member of the array a single macro + for script, v in Models.items(): + v = v.replace("\n", "") + arr = [] # arr of macros + buf = "" # buf to put currently processed macro in + x = 0 # cur position in str + stack = 0 # stack cnt of parenthesis + app = 0 # flag to append macro + while x < len(v): + char = v[x] + if char == Delims[0]: + stack += 1 + app = 1 + if char == Delims[1]: + stack -= 1 + if app == 1 and stack == 0: + app = 0 + buf += v[x : x + 2] # get the last parenthesis and comma + arr.append(buf.strip()) + x += 2 + buf = "" + continue + buf += char + x += 1 + # for when the delim characters are nothing + if buf: + arr.append(buf) + Models[script] = arr + return Models + + +# given a geo.c file and a path, return cleaned up geo layouts in a dict +def GetGeoLayouts(geo: typing.TextIO, root_path: Path): + layouts = ParseAggregat(geo, "geo.inc.c", root_path) + if not layouts: + return + # because of fast64, these can be recursively defined (though I expect only a depth of one) + for l in layouts: + geoR = open(l, "r") + layouts += ParseAggregat(geoR, "geo.inc.c", root_path) + GeoLayouts = {} # stores cleaned up geo layout lines + for l in layouts: + l = open(l, "r") + lines = l.readlines() + GeoLayouts.update(FormatDat(lines, "GeoLayout", ["(", ")"])) + return GeoLayouts + + +# Find DL references given a level geo file and a path to a level folder +def FindLvlModels(geo: typing.TextIO, lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None): + GeoLayouts = GetGeoLayouts(geo, root_path) + for k, v in lvl.Areas.items(): + GL = v.geo + rt = v.root + if col_name: + col = CreateCol(v.root.users_collection[0], col_name) + else: + col = None + Geo = GeoLayout(GeoLayouts, rt, scene, "GeoRoot {} {}".format(scene.LevelImp.Level, k), rt, col=col) + Geo.ParseLevelGeosStart(GL, scene) + v.geo = Geo + return lvl + + +# Parse an aggregate group file or level data file for geo layouts +def FindActModels( + geo: typing.TextIO, + Layout: str, + scene: bpy.types.Scene, + rt: bpy.types.Object, + root_path: Path, + col: bpy.types.Collection = None, +): + GeoLayouts = GetGeoLayouts(geo, root_path) + Geo = GeoLayout(GeoLayouts, rt, scene, "{}".format(Layout), rt, col=col) + Geo.ParseLevelGeosStart(Layout, scene) + return Geo + + +# Parse an aggregate group file or level data file for f3d data +def FindModelDat(aggregate: Path, scene: bpy.types.Scene, root_path: Path): + leveldat = open(aggregate, "r") + models = ParseAggregat(leveldat, "model.inc.c", root_path) + models += ParseAggregat(leveldat, "painting.inc.c", root_path) + # fast64 makes a leveldata.inc.c file and puts custom content there, I want to catch that as well + # this isn't the best way to do this, but I will be lazy here + fast64 = ParseAggregat(leveldat, "leveldata.inc.c", root_path) + if fast64: + f64dat = open(fast64[0], "r") + models += ParseAggregat(f64dat, "model.inc.c", root_path) + # leveldat.seek(0) # so it may be read multiple times + textures = ParseAggregat(leveldat, "texture.inc.c", root_path) # Only deal with textures that are actual .pngs + textures.extend(ParseAggregat(leveldat, "textureNew.inc.c", root_path)) # For RM2C support + # Get all modeldata in the level + Models = sm64_F3d(scene) + for m in models: + md = open(m, "r") + lines = md.readlines() + Models = FormatModel(Models, lines) + # Update file to have texture.inc.c textures, deal with included textures in the model.inc.c files aswell + for t in [*textures, *models]: + t = open(t, "r") + tex = t.readlines() + # For textures, try u8, and s16 aswell + Models.Textures.update(FormatDat(tex, "Texture", [None, None])) + Models.Textures.update(FormatDat(tex, "u8", [None, None])) + Models.Textures.update(FormatDat(tex, "s16", [None, None])) + t.close() + return Models + + +# from a geo layout, create all the mesh's +def ReadGeoLayout( + geo: GeoLayout, scene: bpy.types.Scene, f3d_dat: sm64_F3d, root_path: Path, meshes: dict, cleanup: bool = True +): + if geo.models: + rt = geo.root + col = geo.col + # create a mesh for each one. + for m in geo.models: + name = m.model + " Data" + if name in meshes.keys(): + mesh = meshes[name] + name = 0 + else: + mesh = bpy.data.meshes.new(name) + meshes[name] = mesh + [verts, tris] = f3d_dat.GetDataFromModel(m.model.strip()) + mesh.from_pydata(verts, [], tris) + + obj = bpy.data.objects.new(m.model + " Obj", mesh) + layer = m.layer + if not layer.isdigit(): + layer = Layers.get(layer) + if not layer: + layer = 1 + obj.draw_layer_static = layer + col.objects.link(obj) + parentObject(rt, obj) + RotateObj(-90, obj) + scale = m.scale / scene.blenderToSM64Scale + obj.scale = [scale, scale, scale] + obj.location = m.translate + obj.ignore_collision = True + if name: + f3d_dat.ApplyDat(obj, mesh, layer, root_path) + if cleanup: + # clean up after applying dat + mesh.validate() + mesh.update(calc_edges=True) + # final operators to clean stuff up + # shade smooth + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.shade_smooth() + bpy.ops.object.mode_set(mode="EDIT") + bpy.ops.mesh.remove_doubles() + bpy.ops.object.mode_set(mode="OBJECT") + if not geo.Children: + return + for g in geo.Children: + ReadGeoLayout(g, scene, f3d_dat, root_path, meshes, cleanup=cleanup) + + +# write the gfx for a level given the level data, and f3d data +def WriteLevelModel(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: sm64_F3d, cleanup: bool = True): + for k, v in lvl.Areas.items(): + # Parse the geolayout class I created earlier to look for models + meshes = {} # re use mesh data when the same DL is referenced (bbh is good example) + ReadGeoLayout(v.geo, scene, f3d_dat, root_path, meshes, cleanup=cleanup) + return lvl + + +# given a path, get a level object by parsing the script.c file +def ParseScript(script: Path, scene: bpy.types.Scene, col: bpy.types.Collection = None): + scr = open(script, "r") + Root = bpy.data.objects.new("Empty", None) + if not col: + scene.collection.objects.link(Root) + else: + col.objects.link(Root) + Root.name = "Level Root {}".format(scene.LevelImp.Level) + Root.sm64_obj_type = "Level Root" + # Now parse the script and get data about the level + # Store data in attribute of a level class then assign later and return class + scr = scr.readlines() + lvl = Level(scr, scene, Root) + entry = scene.LevelImp.Entry.format(scene.LevelImp.Level) + lvl.ParseScript(entry, col=col) + return lvl + + +# write the objects from a level object +def WriteObjects(lvl: Level, col_name: str = None): + for area in lvl.Areas.values(): + area.PlaceObjects(col_name=col_name) + + +# import level graphics given geo.c file, and a level object +def ImportLvlVisual( + geo: typing.TextIO, + lvl: Level, + scene: bpy.types.Scene, + root_path: Path, + aggregate: Path, + cleanup: bool = True, + col_name: str = None, +): + lvl = FindLvlModels(geo, lvl, scene, root_path, col_name=col_name) + models = FindModelDat(aggregate, scene, root_path) + # just a try, in case you are importing from something other than base decomp repo (like RM2C output folder) + try: + models.GetGenericTextures(root_path) + except: + print("could not import genric textures, if this errors later from missing textures this may be why") + lvl = WriteLevelModel(lvl, scene, root_path, models, cleanup=cleanup) + return lvl + + +# import level collision given a level script +def ImportLvlCollision( + aggregate: Path, + lvl: Level, + scene: bpy.types.Scene, + root_path: Path, + cleanup: bool, + col_name: str = None, +): + lvl = FindCollisions(aggregate, lvl, scene, root_path) # Now Each area has its collision file nicely formatted + WriteLevelCollision(lvl, scene, cleanup, col_name=col_name) + return lvl + + +# ------------------------------------------------------------------------ +# Operators +# ------------------------------------------------------------------------ + + +class SM64_OT_Act_Import(Operator): + bl_label = "Import Actor" + bl_idname = "wm.sm64_import_actor" + bl_options = {"REGISTER", "UNDO"} + + cleanup: bpy.props.BoolProperty(name="Cleanup Mesh", default=1) + + def execute(self, context): + scene = context.scene + rt_col = context.collection + scene.gameEditorMode = "SM64" + path = Path(scene.decompPath) + folder = path / scene.ActImp.FolderType + Layout = scene.ActImp.GeoLayout + prefix = scene.ActImp.Prefix + # different name schemes and I have no clean way to deal with it + if "actor" in scene.ActImp.FolderType: + geo = folder / (prefix + "_geo.c") + leveldat = folder / (prefix + ".c") + else: + geo = folder / (prefix + "geo.c") + leveldat = folder / (prefix + "leveldata.c") + geo = open(geo, "r") + Root = bpy.data.objects.new("Empty", None) + Root.name = "Actor %s" % scene.ActImp.GeoLayout + rt_col.objects.link(Root) + + Geo = FindActModels( + geo, Layout, scene, Root, folder, col=rt_col + ) # return geo layout class and write the geo layout + models = FindModelDat(leveldat, scene, folder) + # just a try, in case you are importing from not the base decomp repo + try: + models.GetGenericTextures(path) + except: + print("could not import genric textures, if this errors later from missing textures this may be why") + meshes = {} # re use mesh data when the same DL is referenced (bbh is good example) + ReadGeoLayout(Geo, scene, models, folder, meshes, cleanup=self.cleanup) + return {"FINISHED"} + + +class SM64_OT_Lvl_Import(Operator): + bl_label = "Import Level" + bl_idname = "wm.sm64_import_level" + + cleanup = True + + def execute(self, context): + scene = context.scene + + col = context.collection + if scene.LevelImp.UseCol: + obj_col = f"{scene.LevelImp.Level} obj" + gfx_col = f"{scene.LevelImp.Level} gfx" + col_col = f"{scene.LevelImp.Level} col" + else: + obj_col = gfx_col = col_col = None + + scene.gameEditorMode = "SM64" + prefix = scene.LevelImp.Prefix + path = Path(scene.decompPath) + level = path / "levels" / scene.LevelImp.Level + script = level / (prefix + "script.c") + geo = level / (prefix + "geo.c") + leveldat = level / (prefix + "leveldata.c") + geo = open(geo, "r") + lvl = ParseScript(script, scene, col=col) # returns level class + WriteObjects(lvl, col_name=obj_col) + lvl = ImportLvlCollision(leveldat, lvl, scene, path, self.cleanup, col_name=col_col) + lvl = ImportLvlVisual(geo, lvl, scene, path, leveldat, cleanup=self.cleanup, col_name=gfx_col) + return {"FINISHED"} + + +class SM64_OT_Lvl_Gfx_Import(Operator): + bl_label = "Import Gfx" + bl_idname = "wm.sm64_import_level_gfx" + + cleanup = True + + def execute(self, context): + scene = context.scene + + col = context.collection + if scene.LevelImp.UseCol: + gfx_col = f"{scene.LevelImp.Level} gfx" + else: + gfx_col = None + + scene.gameEditorMode = "SM64" + prefix = scene.LevelImp.Prefix + path = Path(scene.decompPath) + level = path / "levels" / scene.LevelImp.Level + script = level / (prefix + "script.c") + geo = level / (prefix + "geo.c") + model = level / (prefix + "leveldata.c") + geo = open(geo, "r") + lvl = ParseScript(script, scene, col=col) # returns level class + lvl = ImportLvlVisual(geo, lvl, scene, path, model, cleanup=self.cleanup, col_name=gfx_col) + return {"FINISHED"} + + +class SM64_OT_Lvl_Col_Import(Operator): + bl_label = "Import Collision" + bl_idname = "wm.sm64_import_level_col" + + cleanup = True + + def execute(self, context): + scene = context.scene + + col = context.collection + if scene.LevelImp.UseCol: + col_col = f"{scene.LevelImp.Level} collision" + else: + col_col = None + + scene.gameEditorMode = "SM64" + prefix = scene.LevelImp.Prefix + path = Path(scene.decompPath) + level = path / "levels" / scene.LevelImp.Level + script = level / (prefix + "script.c") + geo = level / (prefix + "geo.c") + model = level / (prefix + "leveldata.c") + geo = open(geo, "r") + lvl = ParseScript(script, scene, col=col) # returns level class + lvl = ImportLvlCollision(model, lvl, scene, path, self.cleanup, col_name=col_col) + return {"FINISHED"} + + +class SM64_OT_Obj_Import(Operator): + bl_label = "Import Objects" + bl_idname = "wm.sm64_import_object" + + def execute(self, context): + scene = context.scene + + col = context.collection + if scene.LevelImp.UseCol: + obj_col = f"{scene.LevelImp.Level} objs" + else: + obj_col = None + + scene.gameEditorMode = "SM64" + prefix = scene.LevelImp.Prefix + path = Path(scene.decompPath) + level = path / "levels" / scene.LevelImp.Level + script = level / (prefix + "script.c") + lvl = ParseScript(script, scene, col=col) # returns level class + WriteObjects(lvl, col_name=obj_col) + return {"FINISHED"} + + +# ------------------------------------------------------------------------ +# Props +# ------------------------------------------------------------------------ + + +class ActorImport(PropertyGroup): + GeoLayout: StringProperty(name="GeoLayout", description="Name of GeoLayout") + FolderType: EnumProperty( + name="Source", + description="Whether the actor is from a level or from a group", + items=[ + ("actors", "actors", ""), + ("levels", "levels", ""), + ], + ) + Prefix: StringProperty( + name="Prefix", + description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c", + default="", + ) + Version: EnumProperty( + name="Version", + description="Version of the game for any ifdef macros", + items=[ + ("VERSION_US", "VERSION_US", ""), + ("VERSION_JP", "VERSION_JP", ""), + ("VERSION_EU", "VERSION_EU", ""), + ("VERSION_SH", "VERSION_SH", ""), + ], + ) + Target: StringProperty( + name="Target", description="The platform target for any #ifdefs in code", default="TARGET_N64" + ) + + +class LevelImport(PropertyGroup): + Level: EnumProperty( + name="Level", + description="Choose a level", + items=[ + ("bbh", "bbh", ""), + ("ccm", "ccm", ""), + ("hmc", "hmc", ""), + ("ssl", "ssl", ""), + ("bob", "bob", ""), + ("sl", "sl", ""), + ("wdw", "wdw", ""), + ("jrb", "jrb", ""), + ("thi", "thi", ""), + ("ttc", "ttc", ""), + ("rr", "rr", ""), + ("castle_grounds", "castle_grounds", ""), + ("castle_inside", "castle_inside", ""), + ("bitdw", "bitdw", ""), + ("vcutm", "vcutm", ""), + ("bitfs", "bitfs", ""), + ("sa", "sa", ""), + ("bits", "bits", ""), + ("lll", "lll", ""), + ("ddd", "ddd", ""), + ("wf", "wf", ""), + ("ending", "ending", ""), + ("castle_courtyard", "castle_courtyard", ""), + ("pss", "pss", ""), + ("cotmc", "cotmc", ""), + ("totwc", "totwc", ""), + ("bowser_1", "bowser_1", ""), + ("wmotr", "wmotr", ""), + ("bowser_2", "bowser_2", ""), + ("bowser_3", "bowser_3", ""), + ("ttm", "ttm", ""), + ], + ) + Prefix: StringProperty( + name="Prefix", + description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c", + default="", + ) + Entry: StringProperty( + name="Entrypoint", description="The name of the level script entry variable", default="level_{}_entry" + ) + Version: EnumProperty( + name="Version", + description="Version of the game for any ifdef macros", + items=[ + ("VERSION_US", "VERSION_US", ""), + ("VERSION_JP", "VERSION_JP", ""), + ("VERSION_EU", "VERSION_EU", ""), + ("VERSION_SH", "VERSION_SH", ""), + ], + ) + Target: StringProperty( + name="Target", description="The platform target for any #ifdefs in code", default="TARGET_N64" + ) + ForceNewTex: BoolProperty( + name="ForceNewTex", + description="Forcefully load new textures even if duplicate path/name is detected", + default=False, + ) + AsObj: BoolProperty( + name="As OBJ", description="Make new materials as PBSDF so they export to obj format", default=False + ) + UseCol: BoolProperty( + name="Use Col", description="Make new collections to organzie content during imports", default=True + ) + + +# ------------------------------------------------------------------------ +# Panels +# ------------------------------------------------------------------------ + + +class Level_PT_Panel(Panel): + bl_label = "SM64 Level Importer" + bl_idname = "sm64_level_importer" + bl_space_type = "VIEW_3D" + bl_region_type = "UI" + bl_category = "SM64 C Importer" + bl_context = "objectmode" + + @classmethod + def poll(self, context): + return context.scene is not None + + def draw(self, context): + layout = self.layout + scene = context.scene + LevelImp = scene.LevelImp + layout.prop(LevelImp, "Level") + layout.prop(LevelImp, "Entry") + layout.prop(LevelImp, "Prefix") + layout.prop(LevelImp, "Version") + layout.prop(LevelImp, "Target") + row = layout.row() + row.prop(LevelImp, "ForceNewTex") + row.prop(LevelImp, "AsObj") + row.prop(LevelImp, "UseCol") + layout.operator("wm.sm64_import_level") + layout.operator("wm.sm64_import_level_gfx") + layout.operator("wm.sm64_import_level_col") + layout.operator("wm.sm64_import_object") + + +class Actor_PT_Panel(Panel): + bl_label = "SM64 Actor Importer" + bl_idname = "sm64_actor_importer" + bl_space_type = "VIEW_3D" + bl_region_type = "UI" + bl_category = "SM64 C Importer" + bl_context = "objectmode" + + @classmethod + def poll(self, context): + return context.scene is not None + + def draw(self, context): + layout = self.layout + scene = context.scene + ActImp = scene.ActImp + layout.prop(ActImp, "FolderType") + layout.prop(ActImp, "GeoLayout") + layout.prop(ActImp, "Prefix") + layout.prop(ActImp, "Version") + layout.prop(ActImp, "Target") + layout.operator("wm.sm64_import_actor") + + +classes = ( + LevelImport, + ActorImport, + SM64_OT_Lvl_Import, + SM64_OT_Lvl_Gfx_Import, + SM64_OT_Lvl_Col_Import, + SM64_OT_Obj_Import, + SM64_OT_Act_Import, + Level_PT_Panel, + Actor_PT_Panel, +) + + +def sm64_import_register(): + from bpy.utils import register_class + + for cls in classes: + register_class(cls) + + bpy.types.Scene.LevelImp = PointerProperty(type=LevelImport) + bpy.types.Scene.ActImp = PointerProperty(type=ActorImport) + + +def sm64_import_unregister(): + from bpy.utils import unregister_class + + for cls in reversed(classes): + unregister_class(cls) + del bpy.types.Scene.LevelImp + del bpy.types.Scene.ActImp diff --git a/fast64_internal/utility.py b/fast64_internal/utility.py index 051af7a8e..4d0bc4710 100644 --- a/fast64_internal/utility.py +++ b/fast64_internal/utility.py @@ -121,13 +121,19 @@ def selectSingleObject(obj: bpy.types.Object): bpy.context.view_layer.objects.active = obj -def parentObject(parent, child): - bpy.ops.object.select_all(action="DESELECT") +def parentObject(parent, child, keep=0): + if not keep: + child.parent = parent + child.matrix_local = child.matrix_parent_inverse + else: + bpy.ops.object.select_all(action="DESELECT") - child.select_set(True) - parent.select_set(True) - bpy.context.view_layer.objects.active = parent - bpy.ops.object.parent_set(type="OBJECT", keep_transform=True) + child.select_set(True) + parent.select_set(True) + bpy.context.view_layer.objects.active = parent + bpy.ops.object.parent_set(type="OBJECT", keep_transform=True) + parent.select_set(False) + child.select_set(False) def getFMeshName(vertexGroup, namePrefix, drawLayer, isSkinned): @@ -1399,6 +1405,18 @@ def rotate_quat_blender_to_n64(rotation: mathutils.Quaternion): return new_rot.to_quaternion() +def rotate_quat_n64_to_blender(rotation: mathutils.Quaternion): + new_rot = transform_mtx_blender_to_n64().inverted() @ rotation.to_matrix().to_4x4() @ transform_mtx_blender_to_n64() + return new_rot.to_quaternion() + + +# this will take a blender property, its enumprop name, and then return a list of the allowed enums +def GetEnums(prop, enum): + enumProp = prop.bl_rna.properties.get(enum) + if enumProp: + return [item.identifier for item in enumProp.enum_items] + + def all_values_equal_x(vals: Iterable, test): return len(set(vals) - set([test])) == 0 From 9a2511bcb555346670f1acd64e96d3b56e7ec25f Mon Sep 17 00:00:00 2001 From: scut Date: Sun, 20 Nov 2022 13:42:45 -0500 Subject: [PATCH 02/30] removed accidentally created file --- asdf.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 asdf.txt diff --git a/asdf.txt b/asdf.txt deleted file mode 100644 index e69de29bb..000000000 From 5bfec0ddce811d1f6a220f8ff5e6d3f2d5b9391e Mon Sep 17 00:00:00 2001 From: scut Date: Wed, 28 Jun 2023 21:45:37 -0400 Subject: [PATCH 03/30] rewrote import plugin to use generic data parser scheme for all parsing. moved c pre parsing and data aggregation functions to a utility file, general cleanup and annotations added --- fast64_internal/f3d/f3d_import.py | 271 +++- fast64_internal/sm64/sm64_constants.py | 7 +- fast64_internal/sm64/sm64_level_importer.py | 1498 +++++++++---------- fast64_internal/utility.py | 18 + fast64_internal/utility_importer.py | 188 +++ 5 files changed, 1082 insertions(+), 900 deletions(-) create mode 100644 fast64_internal/utility_importer.py diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 66979868c..b043375ab 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -15,6 +15,7 @@ from re import findall from ..utility import hexOrDecInt +from ..utility_importer import * # ------------------------------------------------------------------------ # Classes @@ -160,11 +161,12 @@ def ApplyPBSDFMat(self, mat): if not pbsdf: return tex = nodes.new("ShaderNodeTexImage") - links.new(pbsdf.inputs[0], tex.outputs[0]) - links.new(pbsdf.inputs[19], tex.outputs[1]) - i = self.LoadTexture(0, path) + links.new(pbsdf.inputs[0], tex.outputs[0]) # base color + i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, tex0) if i: tex.image = i + if int(layer) > 4: + mat.blend_method == "BLEND" def ApplyMatSettings(self, mat, tex_path): # if bpy.context.scene.LevelImp.AsObj: @@ -383,96 +385,183 @@ def EvalFmt(self, tex): # handles DL import processing, specifically built to process each cmd into the mat class # should be inherited into a larger F3d class which wraps DL processing # does not deal with flow control or gathering the data containers (VB, Geo cls etc.) -class DL: +class DL(DataParser): # the min needed for this class to work for importing def __init__(self, lastmat=None): - self.VB = {} # vertex buffers - self.Gfx = {} # ptrs: display lists - self.diff = {} # diffuse lights - self.amb = {} # ambient lights - self.Lights = {} # lights + self.Vtx = {} + self.Gfx = {} + self.Light_t = {} + self.Ambient_t = {} + self.Lights1 = {} + self.Textures = {} if not lastmat: self.LastMat = Mat() self.LastMat.name = 0 else: self.LastMat = lastmat - - # DL cmds that control the flow of a DL cannot be handled within a independent #class method without larger context of the total DL - # def gsSPEndDisplayList(): - # return - # def gsSPBranchList(): - # break - # def gsSPDisplayList(): - # continue - # Vertices are not currently handled in the base class - # Triangles - def gsSP2Triangles(self, args): + super().__init__() + + def gsSPEndDisplayList(self, macro: Macro): + return self.break_parse + + def gsSPBranchList(self, macro: Macro): + NewDL = self.Gfx.get(branched_dl := macro.args[0]) + if not NewDL: + raise Exception( + "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( + NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + ) + ) + self.parse_stream(NewDL, branched_dl) + return self.break_parse + + def gsSPDisplayList(self, macro: Macro): + NewDL = self.Gfx.get(branched_dl := macro.args[0]) + if not NewDL: + raise Exception( + "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( + NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + ) + ) + self.parse_stream(NewDL, branched_dl) + return self.continue_parse + + def gsSPEndDisplayList(self, macro: Macro): + return self.break_parse + + def gsSPVertex(self, macro: Macro): + # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later + if "+" in macro.args[0]: + ref, offset = macro.args[0].split("+") + offset = hexOrDecInt(offset) + else: + ref = macro.args[0] + offset = 0 + VB = self.Vtx.get(ref) + if not VB: + raise Exception( + "Could not find VB {} in levels/{}/{}leveldata.inc.c".format( + ref, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + ) + ) + vertex_load_start = hexOrDecInt(macro.args[2]) + vertex_load_length = hexOrDecInt(macro.args[1]) + Verts = VB[ + offset : offset + vertex_load_length + ] # If you use array indexing here then you deserve to have this not work + Verts = [self.ParseVert(v) for v in Verts] + for k, i in enumerate(range(vertex_load_start, vertex_load_length, 1)): + self.VertBuff[i] = [Verts[k], vertex_load_start] + # These are all independent data blocks in blender + self.Verts.extend([v[0] for v in Verts]) + self.UVs.extend([v[1] for v in Verts]) + self.VCs.extend([v[2] for v in Verts]) + self.LastLoad = vertex_load_length + return self.continue_parse + + def gsSP2Triangles(self, macro: Macro): self.MakeNewMat() - args = [hexOrDecInt(a) for a in args] + args = [hexOrDecInt(a) for a in macro.args] Tri1 = self.ParseTri(args[:3]) Tri2 = self.ParseTri(args[4:7]) self.Tris.append(Tri1) self.Tris.append(Tri2) + return self.continue_parse - def gsSP1Triangle(self, args): + def gsSP1Triangle(self, macro: Macro): self.MakeNewMat() - args = [hexOrDecInt(a) for a in args] + args = [hexOrDecInt(a) for a in macro.args] Tri = self.ParseTri(args[:3]) self.Tris.append(Tri) + return self.continue_parse # materials # Mats will be placed sequentially. The first item of the list is the triangle number # The second is the material class - def gsDPSetRenderMode(self, args): + def gsDPSetRenderMode(self, macro: Macro): self.NewMat = 1 - self.LastMat.RenderMode = [a.strip() for a in args] - - def gsDPSetFogColor(self, args): + self.LastMat.RenderMode = [a.strip() for a in macro.args] + return self.continue_parse + + # not finished yet + def gsSPLight(self, macro: Macro): + return self.continue_parse + def gsSPLightColor(self, macro: Macro): + return self.continue_parse + def gsSPSetLights0(self, macro: Macro): + return self.continue_parse + def gsSPSetLights1(self, macro: Macro): + return self.continue_parse + def gsSPSetLights2(self, macro: Macro): + return self.continue_parse + def gsSPSetLights3(self, macro: Macro): + return self.continue_parse + def gsSPSetLights4(self, macro: Macro): + return self.continue_parse + def gsSPSetLights5(self, macro: Macro): + return self.continue_parse + def gsSPSetLights6(self, macro: Macro): + return self.continue_parse + def gsSPSetLights7(self, macro: Macro): + return self.continue_parse + def gsDPSetDepthSource(self, macro: Macro): + return self.continue_parse + def gsSPFogFactor(self, macro: Macro): + return self.continue_parse + + def gsDPSetFogColor(self, macro: Macro): self.NewMat = 1 - self.LastMat.fog_color = args + self.LastMat.fog_color = macro.args + return self.continue_parse - def gsSPFogPosition(self, args): + def gsSPFogPosition(self, macro: Macro): self.NewMat = 1 - self.LastMat.fog_pos = args + self.LastMat.fog_pos = macro.args + return self.continue_parse - def gsSPLightColor(self, args): + def gsSPLightColor(self, macro: Macro): self.NewMat = 1 if not hasattr(self.LastMat, "light_col"): self.LastMat.light_col = {} - num = re.search("_\d", args[0]).group()[1] - self.LastMat.light_col[num] = args[-1] + num = re.search("_\d", macro.args[0]).group()[1] + self.LastMat.light_col[num] = macro.args[-1] + return self.continue_parse - def gsDPSetPrimColor(self, args): + def gsDPSetPrimColor(self, macro: Macro): self.NewMat = 1 - self.LastMat.prim_color = args + self.LastMat.prim_color = macro.args + return self.continue_parse - def gsDPSetEnvColor(self, args): + def gsDPSetEnvColor(self, macro: Macro): self.NewMat = 1 - self.LastMat.env_color = args + self.LastMat.env_color = macro.args + return self.continue_parse # multiple geo modes can happen in a row that contradict each other # this is mostly due to culling wanting diff geo modes than drawing # but sometimes using the same vertices - def gsSPClearGeometryMode(self, args): + def gsSPClearGeometryMode(self, macro: Macro): self.NewMat = 1 - args = [a.strip() for a in args[0].split("|")] + args = [a.strip() for a in macro.args[0].split("|")] for a in args: if a in self.LastMat.GeoSet: self.LastMat.GeoSet.remove(a) self.LastMat.GeoClear.extend(args) + return self.continue_parse - def gsSPSetGeometryMode(self, args): + def gsSPSetGeometryMode(self, macro: Macro): self.NewMat = 1 - args = [a.strip() for a in args[0].split("|")] + args = [a.strip() for a in macro.args[0].split("|")] for a in args: if a in self.LastMat.GeoClear: self.LastMat.GeoClear.remove(a) self.LastMat.GeoSet.extend(args) + return self.continue_parse - def gsSPGeometryMode(self, args): + def gsSPGeometryMode(self, macro: Macro): self.NewMat = 1 - argsC = [a.strip() for a in args[0].split("|")] - argsS = [a.strip() for a in args[1].split("|")] + argsC = [a.strip() for a in macro.args[0].split("|")] + argsS = [a.strip() for a in macro.args[1].split("|")] for a in argsC: if a in self.LastMat.GeoSet: self.LastMat.GeoSet.remove(a) @@ -481,39 +570,44 @@ def gsSPGeometryMode(self, args): self.LastMat.GeoClear.remove(a) self.LastMat.GeoClear.extend(argsC) self.LastMat.GeoSet.extend(argsS) + return self.continue_parse - def gsDPSetCycleType(self, args): - if "G_CYC_1CYCLE" in args[0]: + def gsDPSetCycleType(self, macro: Macro): + if "G_CYC_1CYCLE" in macro.args[0]: self.LastMat.TwoCycle = False - if "G_CYC_2CYCLE" in args[0]: + if "G_CYC_2CYCLE" in macro.args[0]: self.LastMat.TwoCycle = True + return self.continue_parse - def gsDPSetCombineMode(self, args): + def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 - self.LastMat.Combiner = self.EvalCombiner(args) + self.LastMat.Combiner = self.EvalCombiner(macro.args) + return self.continue_parse - def gsDPSetCombineLERP(self, args): + def gsDPSetCombineLERP(self, macro: Macro): self.NewMat = 1 - self.LastMat.Combiner = [a.strip() for a in args] + self.LastMat.Combiner = [a.strip() for a in macro.args] + return self.continue_parse # root tile, scale and set tex - def gsSPTexture(self, args): + def gsSPTexture(self, macro: Macro): self.NewMat = 1 macros = { "G_ON": 2, "G_OFF": 0, } - set_tex = macros.get(args[-1].strip()) + set_tex = macros.get(macro.args[-1].strip()) if set_tex == None: - set_tex = hexOrDecInt(args[-1].strip()) + set_tex = hexOrDecInt(macro.args[-1].strip()) self.LastMat.set_tex = set_tex == 2 self.LastMat.tex_scale = [ - ((0x10000 * (hexOrDecInt(a) < 0)) + hexOrDecInt(a)) / 0xFFFF for a in args[0:2] + ((0x10000 * (hexOrDecInt(a) < 0)) + hexOrDecInt(a)) / 0xFFFF for a in macro.args[0:2] ] # signed half to unsigned half - self.LastMat.tile_root = self.EvalTile(args[-2].strip()) # I don't think I'll actually use this + self.LastMat.tile_root = self.EvalTile(macro.args[-2].strip()) # I don't think I'll actually use this + return self.continue_parse # last tex is a palette - def gsDPLoadTLUT(self, args): + def gsDPLoadTLUT(self, macro: Macro): try: tex = self.LastMat.loadtex self.LastMat.pal = tex @@ -524,15 +618,16 @@ def gsDPLoadTLUT(self, args): "No interpretation on file possible**--" ) return None + return self.continue_parse # tells us what tile the last loaded mat goes into - def gsDPLoadBlock(self, args): + def gsDPLoadBlock(self, macro: Macro): try: tex = self.LastMat.loadtex # these values aren't necessary when the texture is already in png format # tex.dxt = hexOrDecInt(args[4]) # tex.texels = hexOrDecInt(args[3]) - tile = self.EvalTile(args[0]) + tile = self.EvalTile(macro.args[0]) tex.tile = tile if tile == 7: self.LastMat.tex0 = tex @@ -545,34 +640,50 @@ def gsDPLoadBlock(self, args): "No interpretation on file possible**--" ) return None + return self.continue_parse - def gsDPSetTextureImage(self, args): + def gsDPSetTextureImage(self, macro: Macro): self.NewMat = 1 - Timg = args[3].strip() - Fmt = args[1].strip() - Siz = args[2].strip() + Timg = macro.args[3].strip() + Fmt = macro.args[1].strip() + Siz = macro.args[2].strip() loadtex = Texture(Timg, Fmt, Siz) self.LastMat.loadtex = loadtex + return self.continue_parse - def gsDPSetTileSize(self, args): + def gsDPSetTileSize(self, macro: Macro): self.NewMat = 1 - tile = self.LastMat.tiles[self.EvalTile(args[0])] - tile.Slow = self.EvalImFrac(args[1].strip()) - tile.Tlow = self.EvalImFrac(args[2].strip()) - tile.Shigh = self.EvalImFrac(args[3].strip()) - tile.Thigh = self.EvalImFrac(args[4].strip()) - - def gsDPSetTile(self, args): + tile = self.LastMat.tiles[self.EvalTile(macro.args[0])] + tile.Slow = self.EvalImFrac(macro.args[1].strip()) + tile.Tlow = self.EvalImFrac(macro.args[2].strip()) + tile.Shigh = self.EvalImFrac(macro.args[3].strip()) + tile.Thigh = self.EvalImFrac(macro.args[4].strip()) + return self.continue_parse + + def gsDPSetTile(self, macro: Macro): self.NewMat = 1 - tile = self.LastMat.tiles[self.EvalTile(args[4].strip())] - tile.Fmt = args[0].strip() - tile.Siz = args[1].strip() - tile.Tflags = args[6].strip() - tile.TMask = self.EvalTile(args[7].strip()) - tile.TShift = self.EvalTile(args[8].strip()) - tile.Sflags = args[9].strip() - tile.SMask = self.EvalTile(args[10].strip()) - tile.SShift = self.EvalTile(args[11].strip()) + tile = self.LastMat.tiles[self.EvalTile(macro.args[4].strip())] + tile.Fmt = macro.args[0].strip() + tile.Siz = macro.args[1].strip() + tile.Tflags = macro.args[6].strip() + tile.TMask = self.EvalTile(macro.args[7].strip()) + tile.TShift = self.EvalTile(macro.args[8].strip()) + tile.Sflags = macro.args[9].strip() + tile.SMask = self.EvalTile(macro.args[10].strip()) + tile.SShift = self.EvalTile(macro.args[11].strip()) + return self.continue_parse + + #syncs need no processing + def gsDPPipeSync(self, macro: Macro): + return self.continue_parse + def gsDPLoadSync(self, macro: Macro): + return self.continue_parse + def gsDPTileSync(self, macro: Macro): + return self.continue_parse + def gsDPFullSync(self, macro: Macro): + return self.continue_parse + def gsDPNoOp(self, macro: Macro): + return self.continue_parse def MakeNewMat(self): if self.NewMat: diff --git a/fast64_internal/sm64/sm64_constants.py b/fast64_internal/sm64/sm64_constants.py index c16864f10..b3bd92b2b 100644 --- a/fast64_internal/sm64/sm64_constants.py +++ b/fast64_internal/sm64/sm64_constants.py @@ -1768,7 +1768,12 @@ def __init__(self, geoAddr, level, switchDict): ("macro_yellow_coin", "Yellow Coin", "Yellow Coin"), ("macro_yellow_coin_2", "Yellow Coin 2", "Yellow Coin 2"), ] - +enumVersionDefs = [ + ("VERSION_US", "VERSION_US", ""), + ("VERSION_JP", "VERSION_JP", ""), + ("VERSION_EU", "VERSION_EU", ""), + ("VERSION_SH", "VERSION_SH", ""), +] # groups you can select for levels groupsSeg5 = [ diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 7156bf902..6657662d0 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -1,6 +1,9 @@ # ------------------------------------------------------------------------ # Header # ------------------------------------------------------------------------ +from __future__ import annotations + + import bpy from bpy.props import ( @@ -29,14 +32,22 @@ from mathutils import Vector, Euler, Matrix, Quaternion from copy import deepcopy from dataclasses import dataclass +from typing import TextIO # from SM64classes import * from ..f3d.f3d_import import * +from ..utility_importer import * from ..utility import ( rotate_quat_n64_to_blender, + rotate_object, parentObject, GetEnums, + create_collection, +) +from .sm64_constants import ( + enumVersionDefs, + enumLevelNames, ) # ------------------------------------------------------------------------ @@ -120,7 +131,7 @@ def __init__( self.objects = [] self.col = col - def AddWarp(self, args: list[str]): + def add_warp(self, args: list[str]): # set context to the root bpy.context.view_layer.objects.active = self.root # call fast64s warp node creation operator @@ -144,22 +155,22 @@ def AddWarp(self, args: list[str]): else: warp.warpFlagEnum = "WARP_CHECKPOINT" - def AddObject(self, args: list[str]): + def add_object(self, args: list[str]): self.objects.append(args) - def PlaceObjects(self, col_name: str = None): + def place_objects(self, col_name: str = None): if not col_name: col = self.col else: - col = CreateCol(self.root.users_collection[0], col_name) - for a in self.objects: - self.PlaceObject(a, col) + col = create_collection(self.root.users_collection[0], col_name) + for object_args in self.objects: + self.place_object(object_args, col) - def PlaceObject(self, args: list[str], col: bpy.types.Collection): + def place_object(self, args: list[str], col: bpy.types.Collection): Obj = bpy.data.objects.new("Empty", None) col.objects.link(Obj) parentObject(self.root, Obj) - Obj.name = "Object {} {}".format(args[8].strip(), args[0].strip()) + Obj.name = "Object {} {}".format(args[8], args[0]) Obj.sm64_obj_type = "Object" Obj.sm64_behaviour_enum = "Custom" Obj.sm64_obj_behaviour = args[8].strip() @@ -187,179 +198,194 @@ def PlaceObject(self, args: list[str], col: bpy.types.Collection): setattr(Obj, form.format(i), True) else: for i in range(1, 7, 1): - if mask & (1 << i): + if mask & (1 << (i - 1)): setattr(Obj, form.format(i), True) else: setattr(Obj, form.format(i), False) -class Level: - def __init__(self, scr: list[str], scene: bpy.types.Scene, root: bpy.types.Object): - self.Scripts = FormatDat(scr, "LevelScript", ["(", ")"]) +class Level(DataParser): + def __init__(self, script: TextIO, scene: bpy.types.Scene, root: bpy.types.Object): + self.scripts: dict[str, list[str]] = get_data_types_from_file(script, {"LevelScript": ["(", ")"]}) self.scene = scene - self.Areas = {} - self.CurrArea = None + self.areas: dict[Area] = {} + self.cur_area: int = None self.root = root + super().__init__() - def ParseScript(self, entry: str, col: bpy.types.Collection = None): - Start = self.Scripts[entry] + def parse_level_script(self, entry: str, col: bpy.types.Collection = None): + script_stream = self.scripts[entry] scale = self.scene.blenderToSM64Scale if not col: col = self.scene.collection - for l in Start: - args = self.StripArgs(l) - LsW = l.startswith - # Find an area - if LsW("AREA"): - Root = bpy.data.objects.new("Empty", None) - if self.scene.LevelImp.UseCol: - a_col = bpy.data.collections.new(f"{self.scene.LevelImp.Level} area {args[0]}") - col.children.link(a_col) - else: - a_col = col - a_col.objects.link(Root) - Root.name = "{} Area Root {}".format(self.scene.LevelImp.Level, args[0]) - self.Areas[args[0]] = Area(Root, args[1], self.root, int(args[0]), self.scene, a_col) - self.CurrArea = args[0] - continue - # End an area - if LsW("END_AREA"): - self.CurrArea = None - continue - # Jumps are only taken if they're in the script.c file for now - # continues script - elif LsW("JUMP_LINK"): - if self.Scripts.get(args[0]): - self.ParseScript(args[0], col=col) - continue - # ends script, I get arg -1 because sm74 has a different jump cmd - elif LsW("JUMP"): - Nentry = self.Scripts.get(args[-1]) - if Nentry: - self.ParseScript(args[-1], col=col) - # for the sm74 port - if len(args) != 2: - break - # final exit of recursion - elif LsW("EXIT") or l.startswith("RETURN"): - return - # Now deal with data cmds rather than flow control ones - if LsW("WARP_NODE"): - self.Areas[self.CurrArea].AddWarp(args) - continue - if LsW("OBJECT_WITH_ACTS"): - # convert act mask from ORs of act names to a number - mask = args[-1].strip() - if not mask.isdigit(): - mask = mask.replace("ACT_", "") - mask = mask.split("|") - # Attempt for safety I guess - try: - a = 0 - for m in mask: - a += 1 << int(m) - mask = a - except: - mask = 31 - self.Areas[self.CurrArea].AddObject([*args[:-1], mask]) - continue - if LsW("OBJECT"): - # Only difference is act mask, which I set to 31 to mean all acts - self.Areas[self.CurrArea].AddObject([*args, 31]) - continue - # Don't support these for now - if LsW("MACRO_OBJECTS"): - continue - if LsW("TERRAIN_TYPE"): - if not args[0].isdigit(): - self.Areas[self.CurrArea].root.terrainEnum = args[0].strip() - else: - terrains = { - 0: "TERRAIN_GRASS", - 1: "TERRAIN_STONE", - 2: "TERRAIN_SNOW", - 3: "TERRAIN_SAND", - 4: "TERRAIN_SPOOKY", - 5: "TERRAIN_WATER", - 6: "TERRAIN_SLIDE", - 7: "TERRAIN_MASK", - } - try: - num = eval(args[0]) - self.Areas[self.CurrArea].root.terrainEnum = terrains.get(num) - except: - print("could not set terrain") - continue - if LsW("SHOW_DIALOG"): - rt = self.Areas[self.CurrArea].root - rt.showStartDialog = True - rt.startDialog = args[1].strip() - continue - if LsW("TERRAIN"): - self.Areas[self.CurrArea].terrain = args[0].strip() - continue - if LsW("SET_BACKGROUND_MUSIC") or LsW("SET_MENU_MUSIC"): - rt = self.Areas[self.CurrArea].root - rt.musicSeqEnum = "Custom" - rt.music_seq = args[-1].strip() - return self.Areas - - def StripArgs(self, cmd: str): - a = cmd.find("(") - end = cmd.rfind(")") - len(cmd) - return cmd[a + 1 : end].split(",") - - -class Collision: - def __init__(self, col: list[str], scale: float): - self.col = col + self.parse_stream(script_stream, entry, col) + return self.areas + + def AREA(self, macro: Macro, col: bpy.types.Collection): + area_root = bpy.data.objects.new("Empty", None) + if self.scene.LevelImp.UseCol: + area_col = bpy.data.collections.new(f"{self.scene.LevelImp.Level} area {args[0]}") + col.children.link(area_col) + else: + area_col = col + area_col.objects.link(area_root) + area_root.name = f"{self.scene.LevelImp.Level} Area Root {macro.args[0]}" + self.areas[macro.args[0]] = Area( + area_root, macro.args[1], self.root, int(macro.args[0]), self.scene, area_col + ) + self.cur_area = macro.args[0] + return self.continue_parse + + def END_AREA(self, macro: Macro, col: bpy.types.Collection): + self.cur_area = None + return self.continue_parse + + # Jumps are only taken if they're in the script.c file for now + # continues script + def JUMP_LINK(self, macro: Macro, col: bpy.types.Collection): + if self.scripts.get(macro.args[0]): + self.parse_level_script(macro.args[0], col=col) + return self.continue_parse + + # ends script + def JUMP(self, macro: Macro, col: bpy.types.Collection): + new_entry = self.scripts.get(macro.args[-1]) + if new_entry: + self.parse_level_script(macro.args[-1], col=col) + return self.break_parse + + def EXIT(self, macro: Macro, col: bpy.types.Collection): + return self.break_parse + + def RETURN(self, macro: Macro, col: bpy.types.Collection): + return self.break_parse + + # Now deal with data cmds rather than flow control ones + def WARP_NODE(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].add_warp(macro.args) + return self.continue_parse + + def OBJECT_WITH_ACTS(self, macro: Macro, col: bpy.types.Collection): + # convert act mask from ORs of act names to a number + mask = macro.args[-1] + if not mask.isdigit(): + mask = mask.replace("ACT_", "") + mask = mask.split("|") + # Attempt for safety I guess + try: + accumulator = 0 + for m in mask: + accumulator += 1 << int(m) + mask = accumulator + except: + mask = 31 + self.areas[self.cur_area].add_object([*macro.args[:-1], mask]) + return self.continue_parse + + def OBJECT(self, macro: Macro, col: bpy.types.Collection): + # Only difference is act mask, which I set to 31 to mean all acts + self.areas[self.cur_area].add_object([*macro.args, 31]) + return self.continue_parse + + def TERRAIN_TYPE(self, macro: Macro, col: bpy.types.Collection): + if not macro.args[0].isdigit(): + self.areas[self.cur_area].root.terrainEnum = macro.args[0] + else: + terrains = { + 0: "TERRAIN_GRASS", + 1: "TERRAIN_STONE", + 2: "TERRAIN_SNOW", + 3: "TERRAIN_SAND", + 4: "TERRAIN_SPOOKY", + 5: "TERRAIN_WATER", + 6: "TERRAIN_SLIDE", + 7: "TERRAIN_MASK", + } + try: + num = eval(macro.args[0]) + self.areas[self.cur_area].root.terrainEnum = terrains.get(num) + except: + print("could not set terrain") + return self.continue_parse + + def SHOW_DIALOG(self, macro: Macro, col: bpy.types.Collection): + root = self.areas[self.cur_area].root + root.showStartDialog = True + root.startDialog = macro.args[1] + return self.continue_parse + + def TERRAIN(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].terrain = macro.args[0] + return self.continue_parse + + def SET_BACKGROUND_MUSIC(self, macro: Macro, col: bpy.types.Collection): + return self.generic_music(macro, col) + + def SET_MENU_MUSIC(self, macro: Macro, col: bpy.types.Collection): + return self.generic_music(macro, col) + + def generic_music(self, macro: Macro, col: bpy.types.Collection): + root = self.areas[self.cur_area].root + root.musicSeqEnum = "Custom" + root.music_seq = macro.args[-1] + return self.continue_parse + + # Don't support these for now + def MACRO_OBJECTS(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def MARIO_POS(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + # use group mapping to set groups eventually + def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def LOAD_MIO0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def LOAD_YAY0(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + # not useful for bpy, dummy these script cmds + def MARIO(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def INIT_LEVEL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def ALLOC_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def FREE_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def LOAD_MODEL_FROM_GEO(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def LOAD_MODEL_FROM_DL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def CALL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def CALL_LOOP(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def CLEAR_LEVEL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def SLEEP_BEFORE_EXIT(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + +class Collision(DataParser): + def __init__(self, collision: list[str], scale: float): + self.collision = collision self.scale = scale self.vertices = [] # key=type,value=tri data self.tris = {} self.type = None - self.SpecialObjs = [] - self.Types = [] - self.WaterBox = [] - - def GetCollision(self): - for l in self.col: - args = self.StripArgs(l) - # to avoid catching COL_VERTEX_INIT - if l.startswith("COL_VERTEX") and len(args) == 3: - self.vertices.append([eval(v) / self.scale for v in args]) - continue - if l.startswith("COL_TRI_INIT"): - self.type = args[0] - if not self.tris.get(self.type): - self.tris[self.type] = [] - continue - if l.startswith("COL_TRI") and len(args) > 2: - a = [eval(a) for a in args] - self.tris[self.type].append(a) - continue - if l.startswith("COL_WATER_BOX_INIT"): - continue - if l.startswith("COL_WATER_BOX"): - # id, x1, z1, x2, z2, y - self.WaterBox.append(args) - if l.startswith("SPECIAL_OBJECT"): - self.SpecialObjs.append(args) - # This will keep track of how to assign mats - a = 0 - for k, v in self.tris.items(): - self.Types.append([a, k, v[0]]) - a += len(v) - self.Types.append([a, 0]) - - def StripArgs(self, cmd: str): - a = cmd.find("(") - return cmd[a + 1 : -2].split(",") + self.special_objects = [] + self.tri_types = [] + self.water_boxes = [] + super().__init__() def WriteWaterBoxes( self, scene: bpy.types.Scene, parent: bpy.types.Object, name: str, col: bpy.types.Collection = None ): - for i, w in enumerate(self.WaterBox): + for i, w in enumerate(self.water_boxes): Obj = bpy.data.objects.new("Empty", None) scene.collection.objects.link(Obj) parentObject(parent, Obj) @@ -397,25 +423,25 @@ def WriteCollision( obj.ignore_render = True if parent: parentObject(parent, obj) - RotateObj(-90, obj, world=1) + rotate_object(-90, obj, world=1) polys = obj.data.polygons x = 0 bpy.context.view_layer.objects.active = obj max = len(polys) for i, p in enumerate(polys): - a = self.Types[x][0] + a = self.tri_types[x][0] if i >= a: bpy.ops.object.create_f3d_mat() # the newest mat should be in slot[-1] mat = obj.data.materials[x] mat.collision_type_simple = "Custom" - mat.collision_custom = self.Types[x][1] - mat.name = "Sm64_Col_Mat_{}".format(self.Types[x][1]) + mat.collision_custom = self.tri_types[x][1] + mat.name = "Sm64_Col_Mat_{}".format(self.tri_types[x][1]) color = ((max - a) / (max), (max + a) / (2 * max - a), a / max, 1) # Just to give some variety mat.f3d_mat.default_light_color = color # check for param - if len(self.Types[x][2]) > 3: + if len(self.tri_types[x][2]) > 3: mat.use_collision_param = True - mat.collision_param = str(self.Types[x][2][3]) + mat.collision_param = str(self.tri_types[x][2][3]) x += 1 override = bpy.context.copy() override["material"] = mat @@ -423,8 +449,59 @@ def WriteCollision( p.material_index = x - 1 return obj - -class sm64_Mat(Mat): + def GetCollision(self): + self.parse_stream(self.collision, 0) + # This will keep track of how to assign mats + a = 0 + for k, v in self.tris.items(): + self.tri_types.append([a, k, v[0]]) + a += len(v) + self.tri_types.append([a, 0]) + + def COL_VERTEX(self, macro: Macro): + self.vertices.append([eval(v) / self.scale for v in macro.args]) + return self.continue_parse + + def COL_TRI_INIT(self, macro: Macro): + self.type = macro.args[0] + if not self.tris.get(self.type): + self.tris[self.type] = [] + return self.continue_parse + + def COL_TRI(self, macro: Macro): + self.tris[self.type].append([eval(a) for a in macro.args]) + return self.continue_parse + + def COL_WATER_BOX(self, macro: Macro): + # id, x1, z1, x2, z2, y + self.water_boxes.append(macro.args) + return self.continue_parse + + # not written out currently + def SPECIAL_OBJECT(self, macro: Macro): + self.special_objects.append(macro.args) + return self.continue_parse + + def SPECIAL_OBJECT_WITH_YAW(self, macro: Macro): + self.special_objects.append(macro.args) + return self.continue_parse + + # don't do anything to bpy + def COL_WATER_BOX_INIT(self, macro: Macro): + return self.continue_parse + def COL_INIT(self, macro: Macro): + return self.continue_parse + def COL_VERTEX_INIT(self, macro: Macro): + return self.continue_parse + def COL_SPECIAL_INIT(self, macro: Macro): + return self.continue_parse + def COL_TRI_STOP(self, macro: Macro): + return self.continue_parse + def COL_END(self, macro: Macro): + return self.continue_parse + + +class SM64_Material(Mat): def LoadTexture(self, ForceNewTex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None @@ -435,33 +512,18 @@ def LoadTexture(self, ForceNewTex: bool, textures: dict, path: Path, tex: Textur Timg = textures.get(tex.Timg)[0] Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") # deal with duplicate pathing (such as /actors/actors etc.) - Extra = path.relative_to(Path(bpy.context.scene.decompPath)) + Extra = path.relative_to(Path(bpy.path.abspath(bpy.context.scene.decompPath))) for e in Extra.parts: Timg = Timg.replace(e + "/", "") # deal with actor import path not working for shared textures if "textures" in Timg: - fp = Path(bpy.context.scene.decompPath) / Timg + fp = Path(bpy.path.abspath(bpy.context.scene.decompPath)) / Timg else: fp = path / Timg return bpy.data.images.load(filepath=str(fp)) else: return i - def ApplyPBSDFMat(self, mat: bpy.types.Material, textures: dict, path: Path, layer: int, tex0: Texture): - nt = mat.node_tree - nodes = nt.nodes - links = nt.links - pbsdf = nodes.get("Principled BSDF") - if not pbsdf: - return - tex = nodes.new("ShaderNodeTexImage") - links.new(pbsdf.inputs[0], tex.outputs[0]) # base color - i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, tex0) - if i: - tex.image = i - if int(layer) > 4: - mat.blend_method == "BLEND" - def ApplyMatSettings(self, mat: bpy.types.Material, textures: dict, path: Path, layer: int): if bpy.context.scene.LevelImp.AsObj: return self.ApplyPBSDFMat(mat, textures, path, layer, self.tex0) @@ -516,7 +578,6 @@ def ApplyMatSettings(self, mat: bpy.types.Material, textures: dict, path: Path, if f3d.rdp_settings.g_tex_gen or any([a < 1 and a > 0 for a in self.tex_scale]): f3d.scale_autoprop = False f3d.tex_scale = self.tex_scale - print(self.tex_scale) if not self.set_tex: # Update node values override = bpy.context.copy() @@ -574,16 +635,17 @@ def ApplyMatSettings(self, mat: bpy.types.Material, textures: dict, path: Path, del override -class sm64_F3d(DL): +class SM64_F3D(DL): def __init__(self, scene: bpy.types.Scene): - self.VB = {} + self.Vtx = {} self.Gfx = {} - self.diff = {} - self.amb = {} - self.Lights = {} + self.Light_t = {} + self.Ambient_t = {} + self.Lights1 = {} self.Textures = {} self.scene = scene self.num = 0 + super().__init__() # Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file def GetGenericTextures(self, root_path: Path): @@ -603,12 +665,19 @@ def GetGenericTextures(self, root_path: Path): "water.c", ]: t = root_path / "bin" / t - t = open(t, "r") - tex = t.readlines() + t = open(t, "r", newline='') + tex = t # For textures, try u8, and s16 aswell - self.Textures.update(FormatDat(tex, "Texture", [None, None])) - self.Textures.update(FormatDat(tex, "u8", [None, None])) - self.Textures.update(FormatDat(tex, "s16", [None, None])) + self.Textures.update( + get_data_types_from_file( + tex, + { + "Texture": [None, None], + "u8": [None, None], + "s16": [None, None], + }, + ) + ) t.close() # recursively parse the display list in order to return a bunch of model data @@ -622,76 +691,13 @@ def GetDataFromModel(self, start: str): self.UVs = [] self.VCs = [] self.Mats = [] - self.LastMat = sm64_Mat() - self.ParseDL(DL) + self.LastMat = SM64_Material() + self.parse_stream(DL, start) self.NewMat = 0 self.StartName = start + print(self.Verts, self.Tris, start) return [self.Verts, self.Tris] - def ParseDL(self, DL: list[str]): - # This will be the equivalent of a giant switch case - x = -1 - while x < len(DL): - # manaual iteration so I can skip certain children efficiently - # manaual iteration so I can skip certain children efficiently if needed - x += 1 - (cmd, args) = self.StripArgs(DL[x]) # each member is a tuple of (cmd, arguments) - LsW = cmd.startswith - # Deal with control flow first - if LsW("gsSPEndDisplayList"): - return - if LsW("gsSPBranchList"): - NewDL = self.Gfx.get(args[0].strip()) - if not DL: - raise Exception( - "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix - ) - ) - self.ParseDL(NewDL) - break - if LsW("gsSPDisplayList"): - NewDL = self.Gfx.get(args[0].strip()) - if not DL: - raise Exception( - "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix - ) - ) - self.ParseDL(NewDL) - continue - # Vertices - if LsW("gsSPVertex"): - # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later - if "+" in args[0]: - ref, add = args[0].split("+") - else: - ref = args[0] - add = "0" - VB = self.VB.get(ref.strip()) - if not VB: - raise Exception( - "Could not find VB {} in levels/{}/{}leveldata.inc.c".format( - ref, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix - ) - ) - Verts = VB[ - int(add.strip()) : int(add.strip()) + eval(args[1]) - ] # If you use array indexing here then you deserve to have this not work - Verts = [self.ParseVert(v) for v in Verts] - for k, i in enumerate(range(eval(args[2]), eval(args[1]), 1)): - self.VertBuff[i] = [Verts[k], eval(args[2])] - # These are all independent data blocks in blender - self.Verts.extend([v[0] for v in Verts]) - self.UVs.extend([v[1] for v in Verts]) - self.VCs.extend([v[2] for v in Verts]) - self.LastLoad = eval(args[1]) - continue - # tri and mat DL cmds will be called via parent class - func = getattr(self, cmd, None) - if func: - func(args) - def MakeNewMat(self): if self.NewMat: self.NewMat = 0 @@ -771,8 +777,8 @@ def ApplyDat(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_ UVmap.data[l].uv[1] = UVmap.data[l].uv[1] * -1 + 1 Vcol.data[l].color = [a / 255 for a in vcol] - # create a new f3d_mat given an sm64_Mat class but don't create copies with same props - def Create_new_f3d_mat(self, mat: sm64_Mat, mesh: bpy.types.Mesh): + # create a new f3d_mat given an SM64_Material class but don't create copies with same props + def Create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): if not self.scene.LevelImp.ForceNewTex: # check if this mat was used already in another mesh (or this mat if DL is garbage or something) # even looping n^2 is probably faster than duping 3 mats with blender speed @@ -805,156 +811,103 @@ class ModelDat: model: str scale: float = 1.0 - -class GeoLayout: - def __init__( - self, - GeoLayouts: dict, - root: bpy.types.Object, - scene: bpy.types.Scene, - name, - Aroot: bpy.types.Object, - col: bpy.types.Collection = None, - ): - self.GL = GeoLayouts - self.parent = root - self.models = [] - self.Children = [] - self.scene = scene - self.RenderRange = None - self.Aroot = Aroot # for properties that can only be written to area - self.root = root - self.ParentTransform = [[0, 0, 0], [0, 0, 0]] - self.LastTransform = [[0, 0, 0], [0, 0, 0]] - self.name = name - self.obj = None # last object on this layer of the tree, will become parent of next child - if not col: - self.col = Aroot.users_collection[0] +# base class for geo layouts and armatures +class GraphNodes(DataParser): + + def GEO_BRANCH_AND_LINK(self, macro: Macro, depth: int): + new_geo_layout = self.geo_layouts.get(macro.args[0]) + if new_geo_layout: + self.parse_stream(new_geo_layout, depth) + return self.continue_parse + + def GEO_BRANCH(self, macro: Macro, depth: int): + new_geo_layout = self.geo_layouts.get(macro.args[1]) + if new_geo_layout: + self.parse_stream(new_geo_layout, depth) + # arg 0 determines if you return and continue or end after the branch + if eval(macro.args[0]): + return self.continue_parse else: - self.col = col + return self.break_parse - def MakeRt(self, name: str, root: bpy.types.Object): - # make an empty node to act as the root of this geo layout - # use this to hold a transform, or an actual cmd, otherwise rt is passed - E = bpy.data.objects.new(name, None) - self.obj = E - self.col.objects.link(E) - parentObject(root, E) - return E + def GEO_END(self, macro: Macro, depth: int): + return self.break_parse - def ParseLevelGeosStart(self, start: str, scene: bpy.types.Scene): - GL = self.GL.get(start) - if not GL: - raise Exception( - "Could not find geo layout {} from levels/{}/{}geo.c".format( - start, scene.LevelImp.Level, scene.LevelImp.Prefix - ) - ) - self.ParseLevelGeos(GL, 0) + def GEO_RETURN(self, macro: Macro, depth: int): + return self.break_parse - # So I can start where ever for child nodes - def ParseLevelGeos(self, GL: list[str], depth: int): - # I won't parse the geo layout perfectly. For now I'll just get models. This is mostly because fast64 - # isn't a bijection to geo layouts, the props are sort of handled all over the place - x = -1 - while x < len(GL): - # manaual iteration so I can skip certain children efficiently - x += 1 - (cmd, args) = self.StripArgs(GL[x]) # each member is a tuple of (cmd, arguments) - LsW = cmd.startswith - # Jumps are only taken if they're in the script.c file for now - # continues script - if LsW("GEO_BRANCH_AND_LINK"): - NewGL = self.GL.get(args[0].strip()) - if NewGL: - self.ParseLevelGeos(NewGL, depth) - continue - # continues - elif LsW("GEO_BRANCH"): - NewGL = self.GL.get(args[1].strip()) - if NewGL: - self.ParseLevelGeos(NewGL, depth) - if eval(args[0]): - continue - else: - break - # final exit of recursion - elif LsW("GEO_END") or LsW("GEO_RETURN"): - return - # on an open node, make a child - elif LsW("GEO_CLOSE_NODE"): - # if there is no more open nodes, then parent this to last node - if depth: - return - elif LsW("GEO_OPEN_NODE"): - if self.obj: - GeoChild = GeoLayout(self.GL, self.obj, self.scene, self.name, self.Aroot, col=self.col) - else: - GeoChild = GeoLayout(self.GL, self.root, self.scene, self.name, self.Aroot, col=self.col) - GeoChild.ParentTransform = self.LastTransform - GeoChild.ParseLevelGeos(GL[x + 1 :], depth + 1) - x = self.SkipChildren(GL, x) - self.Children.append(GeoChild) - continue - else: - # things that only need args can be their own functions - func = getattr(self, cmd.strip(), None) - if func: - func(args) + def GEO_CLOSE_NODE(self, macro: Macro, depth: int): + # if there is no more open nodes, then parent this to last node + if depth: + return self.break_parse + else: + return self.continue_parse + + def GEO_OPEN_NODE(self, macro: Macro, depth: int): + if self.obj: + GeoChild = GeoLayout(self.geo_layouts, self.obj, self.scene, self.name, self.area_root, col=self.col, geo_parent=self) + else: + GeoChild = GeoLayout(self.geo_layouts, self.root, self.scene, self.name, self.area_root, col=self.col, geo_parent=self) + GeoChild.parent_transform = self.last_transform + GeoChild.stream = self.stream + GeoChild.parse_stream(self.geo_layouts.get(self.stream), self.stream, depth + 1) + # self.head = self.skip_children(self.cur_dat_stream, self.head) + self.children.append(GeoChild) + return self.continue_parse # Append to models array. Only check this one for now - def GEO_DISPLAY_LIST(self, args: list[str]): + def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): # translation, rotation, layer, model - self.models.append(ModelDat(*self.ParentTransform, *args)) + self.models.append(ModelDat(*self.parent_transform, *macro.args)) - # shadows aren't naturally supported but we can emulate them with custom geo cmds - def GEO_SHADOW(self, args: list[str]): + # shadows aren't naturally supported but we can emulate them with custom geo cmds, note: possibly changed with fast64 updates, this is old code + def GEO_SHADOW(self, macro: Macro, depth: int): obj = self.MakeRt(self.name + "shadow empty", self.root) obj.sm64_obj_type = "Custom Geo Command" obj.customGeoCommand = "GEO_SHADOW" - obj.customGeoCommandArgs = ",".join(args) + obj.customGeoCommandArgs = ", ".join(macro.args) - def GEO_ANIMATED_PART(self, args: list[str]): + def GEO_ANIMATED_PART(self, macro: Macro, depth: int): # layer, translation, DL - layer = args[0] - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + layer = macro.args[0] + Tlate = [float(arg) / bpy.context.scene.blenderToSM64Scale for arg in macro.args[1:4]] Tlate = [Tlate[0], -Tlate[2], Tlate[1]] model = args[-1] - self.LastTransform = [Tlate, self.LastTransform[1]] + self.last_transform = [Tlate, self.last_transform[1]] if model.strip() != "NULL": self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) else: obj = self.MakeRt(self.name + "animated empty", self.root) obj.location = Tlate - def GEO_ROTATION_NODE(self, args: list[str]): - obj = self.GEO_ROTATE(args) + def GEO_ROTATION_NODE(self, macro: Macro, depth: int): + obj = self.GEO_ROTATE(macro) if obj: obj.sm64_obj_type = "Geo Rotation Node" - def GEO_ROTATE(self, args: list[str]): - layer = args[0] - Rotate = [math.radians(float(a)) for a in [args[1], args[2], args[3]]] + def GEO_ROTATE(self, macro: Macro, depth: int): + layer = macro.args[0] + Rotate = [math.radians(float(arg)) for arg in macro.args[1:4]] Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.LastTransform = [[0, 0, 0], Rotate] - self.LastTransform = [[0, 0, 0], self.LastTransform[1]] + self.last_transform = [[0, 0, 0], Rotate] + self.last_transform = [[0, 0, 0], self.last_transform[1]] obj = self.MakeRt(self.name + "rotate", self.root) obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate/Rotate" return obj - def GEO_ROTATION_NODE_WITH_DL(self, args: list[str]): - obj = self.GEO_ROTATE_WITH_DL(args) + def GEO_ROTATION_NODE_WITH_DL(self, macro: Macro, depth: int): + obj = self.GEO_ROTATE_WITH_DL(macro) if obj: obj.sm64_obj_type = "Geo Translate/Rotate" - def GEO_ROTATE_WITH_DL(self, args: list[str]): - layer = args[0] - Rotate = [math.radians(float(a)) for a in [args[1], args[2], args[3]]] + def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): + layer = macro.args[0] + Rotate = [math.radians(float(arg)) for arg in macro.args[1:4]] Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.LastTransform = [[0, 0, 0], Rotate] + self.last_transform = [[0, 0, 0], Rotate] model = args[-1] - self.LastTransform = [[0, 0, 0], self.LastTransform[1]] + self.last_transform = [[0, 0, 0], self.last_transform[1]] if model.strip() != "NULL": self.models.append(ModelDat([0, 0, 0], Rotate, layer, model)) else: @@ -963,15 +916,15 @@ def GEO_ROTATE_WITH_DL(self, args: list[str]): obj.sm64_obj_type = "Geo Translate/Rotate" return obj - def GEO_TRANSLATE_ROTATE_WITH_DL(self, args: list[str]): - layer = args[0] - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): + layer = macro.args[0] + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in macro.args[1:4]] Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - Rotate = [math.radians(float(a)) for a in [args[4], args[5], args[6]]] + Rotate = [math.radians(float(arg)) for arg in macro.args[4:7]] Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.LastTransform = [Tlate, Rotate] + self.last_transform = [Tlate, Rotate] model = args[-1] - self.LastTransform = [Tlate, self.LastTransform[1]] + self.last_transform = [Tlate, self.last_transform[1]] if model.strip() != "NULL": self.models.append(ModelDat(Tlate, Rotate, layer, model)) else: @@ -980,29 +933,29 @@ def GEO_TRANSLATE_ROTATE_WITH_DL(self, args: list[str]): obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate/Rotate" - def GEO_TRANSLATE_ROTATE(self, args: list[str]): - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + def GEO_TRANSLATE_ROTATE(self, macro: Macro, depth: int): + Tlate = [float(arg) / bpy.context.scene.blenderToSM64Scale for arg in macro.args[1:4]] Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - Rotate = [math.radians(float(a)) for a in [args[4], args[5], args[6]]] + Rotate = [math.radians(float(arg)) for arg in macro.args[4:7]] Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.LastTransform = [Tlate, Rotate] + self.last_transform = [Tlate, Rotate] obj = self.MakeRt(self.name + "translate", self.root) obj.location = Tlate obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate/Rotate" - def GEO_TRANSLATE_WITH_DL(self, args: list[str]): - obj = self.GEO_TRANSLATE_NODE_WITH_DL(args) + def GEO_TRANSLATE_WITH_DL(self, macro: Macro, depth: int): + obj = self.GEO_TRANSLATE_NODE_WITH_DL(macro) if obj: obj.sm64_obj_type = "Geo Translate/Rotate" - def GEO_TRANSLATE_NODE_WITH_DL(self, args: list[str]): + def GEO_TRANSLATE_NODE_WITH_DL(self, macro: Macro, depth: int): # translation, layer, model - layer = args[0] - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + layer = macro.args[0] + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in macro.args[1:4]] Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - model = args[-1] - self.LastTransform = [Tlate, (0, 0, 0)] + model = macro.args[-1] + self.last_transform = [Tlate, (0, 0, 0)] if model.strip() != "NULL": self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) else: @@ -1012,71 +965,141 @@ def GEO_TRANSLATE_NODE_WITH_DL(self, args: list[str]): obj.sm64_obj_type = "Geo Translate Node" return obj - def GEO_TRANSLATE(self, args: list[str]): - obj = self.GEO_TRANSLATE_NODE(args) + def GEO_TRANSLATE(self, macro: Macro, depth: int): + obj = self.GEO_TRANSLATE_NODE(macro) if obj: obj.sm64_obj_type = "Geo Translate/Rotate" - def GEO_TRANSLATE_NODE(self, args: list[str]): - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in args[1:4]] + def GEO_TRANSLATE_NODE(self, macro: Macro, depth: int): + Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in macro.args[1:4]] Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - self.LastTransform = [Tlate, self.LastTransform[1]] + self.last_transform = [Tlate, self.last_transform[1]] obj = self.MakeRt(self.name + "translate", self.root) obj.location = Tlate obj.sm64_obj_type = "Geo Translate Node" return obj - def GEO_SCALE_WITH_DL(self, args: list[str]): - scale = eval(args[1].strip()) / 0x10000 - model = args[-1] - self.LastTransform = [(0, 0, 0), self.LastTransform[1]] + def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): + scale = eval(macro.args[1]) / 0x10000 + model = macro.args[-1] + self.last_transform = [(0, 0, 0), self.last_transform[1]] self.models.append(ModelDat((0, 0, 0), (0, 0, 0), layer, model, scale=scale)) - def GEO_SCALE(self, args: list[str]): + def GEO_SCALE(self, macro: Macro, depth: int): obj = self.MakeRt(self.name + "scale", self.root) - scale = eval(args[1].strip()) / 0x10000 + scale = eval(macro.args[1]) / 0x10000 obj.scale = (scale, scale, scale) obj.sm64_obj_type = "Geo Scale" - def GEO_ASM(self, args: list[str]): + def GEO_ASM(self, macro: Macro, depth: int): obj = self.MakeRt(self.name + "asm", self.root) asm = self.obj.fast64.sm64.geo_asm self.obj.sm64_obj_type = "Geo ASM" - asm.param = args[0].strip() - asm.func = args[1].strip() + asm.param = macro.args[0] + asm.func = macro.args[1] - def GEO_SWITCH_CASE(self, args: list[str]): + def GEO_SWITCH_CASE(self, macro: Macro, depth: int): obj = self.MakeRt(self.name + "switch", self.root) Switch = self.obj Switch.sm64_obj_type = "Switch" - Switch.switchParam = eval(args[0]) - Switch.switchFunc = args[1].strip() + Switch.switchParam = eval(macro.args[0]) + Switch.switchFunc = macro.args[1] # This has to be applied to meshes - def GEO_RENDER_RANGE(self, args: list[str]): - self.RenderRange = args + def GEO_RENDER_RANGE(self, macro: Macro, depth: int): + self.render_range = macro.args # can only apply type to area root - def GEO_CAMERA(self, args: list[str]): - self.Aroot.camOption = "Custom" - self.Aroot.camType = args[0] + def GEO_CAMERA(self, macro: Macro, depth: int): + self.area_root.camOption = "Custom" + self.area_root.camType = macro.args[0] + + # make better + def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): + self.area_root.camOption = "Custom" + self.area_root.camType = macro.args[0] # Geo backgrounds is pointless because the only background possible is the one # loaded in the level script. This is the only override - def GEO_BACKGROUND_COLOR(self, args: list[str]): - self.Aroot.areaOverrideBG = True - color = eval(args[0]) + def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): + self.area_root.areaOverrideBG = True + color = eval(macro.args[0]) A = color & 1 B = (color & 0x3E) > 1 G = (color & (0x3E << 5)) >> 6 R = (color & (0x3E << 10)) >> 11 - self.Aroot.areaBGColor = (R / 0x1F, G / 0x1F, B / 0x1F, A) + self.area_root.areaBGColor = (R / 0x1F, G / 0x1F, B / 0x1F, A) + + # these have no affect on the bpy + def GEO_BACKGROUND(self, macro: Macro, depth: int): + return self.continue_parse + def GEO_NODE_SCREEN_AREA(self, macro: Macro, depth: int): + return self.continue_parse + def GEO_ZBUFFER(self, macro: Macro, depth: int): + return self.continue_parse + def GEO_NODE_ORTHO(self, macro: Macro, depth: int): + return self.continue_parse + def GEO_RENDER_OBJ(self, macro: Macro, depth: int): + return self.continue_parse + + + +class GeoLayout(GraphNodes): + def __init__( + self, + geo_layouts: dict, + root: bpy.types.Object, + scene: bpy.types.Scene, + name, + area_root: bpy.types.Object, + col: bpy.types.Collection = None, + geo_parent: GeoLayout = None + ): + self.geo_layouts = geo_layouts + self.parent = root + self.models = [] + self.children = [] + self.scene = scene + self.render_range = None + self.area_root = area_root # for properties that can only be written to area + self.root = root + self.parent_transform = [[0, 0, 0], [0, 0, 0]] + self.last_transform = [[0, 0, 0], [0, 0, 0]] + self.name = name + self.obj = None # last object on this layer of the tree, will become parent of next child + if not col: + self.col = area_root.users_collection[0] + else: + self.col = col + super().__init__(parent=geo_parent) - def SkipChildren(self, GL: list[str], x: int): + def MakeRt(self, name: str, root: bpy.types.Object): + # make an empty node to act as the root of this geo layout + # use this to hold a transform, or an actual cmd, otherwise rt is passed + E = bpy.data.objects.new(name, None) + self.obj = E + self.col.objects.link(E) + parentObject(root, E) + return E + + def parse_level_geo(self, start: str, scene: bpy.types.Scene): + geo_layout = self.geo_layouts.get(start) + if not geo_layout: + raise Exception( + "Could not find geo layout {} from levels/{}/{}geo.c".format( + start, scene.LevelImp.Level, scene.LevelImp.Prefix + ) + ) + # This won't parse the geo layout perfectly. For now I'll just get models. This is mostly because fast64 + # isn't a bijection to geo layouts, the props are sort of handled all over the place + self.stream = start + self.parse_stream(geo_layout, start, 0) + + def skip_children(self, geo_layout: list[str], head: int): open = 0 opened = 0 - while x < len(GL): - l = GL[x] + while head < len(geo_layout): + l = geo_layout[head] if l.startswith("GEO_OPEN_NODE"): opened = 1 open += 1 @@ -1084,309 +1107,55 @@ def SkipChildren(self, GL: list[str], x: int): open -= 1 if open == 0 and opened: break - x += 1 - return x + head += 1 + return head - def StripArgs(self, cmd: str): - a = cmd.find("(") - return cmd[:a].strip(), cmd[a + 1 : -2].split(",") + # ------------------------------------------------------------------------ # Functions # ------------------------------------------------------------------------ - -# creates a new collection and links it to parent -def CreateCol(parent: bpy.types.Collection, name: str): - col = bpy.data.collections.new(name) - parent.children.link(col) - return col +# parse aggregate files, and search for sm64 specific fast64 export name schemes +def get_all_aggregates(aggregate: Path, filenames: Union[str, tuple[str]], root_path: Path) -> list[Path]: + with open(aggregate, "r", newline='') as aggregate: + caught_files = parse_aggregate_file(aggregate, filenames, root_path) + # catch fast64 includes + fast64 = parse_aggregate_file(aggregate, "leveldata.inc.c", root_path) + if fast64: + with open(fast64[0], "r", newline='') as fast64_dat: + caught_files.extend(parse_aggregate_file(fast64_dat, filenames, root_path)) + return caught_files -def RotateObj(deg: float, obj: bpy.types.Object, world: bool = 0): - deg = Euler((math.radians(-deg), 0, 0)) - deg = deg.to_quaternion().to_matrix().to_4x4() - if world: - obj.matrix_world = obj.matrix_world @ deg - obj.select_set(True) - bpy.context.view_layer.objects.active = obj - bpy.ops.object.transform_apply(rotation=True) - else: - obj.matrix_basis = obj.matrix_basis @ deg - - -def EvalMacro(line: str): - scene = bpy.context.scene - if scene.LevelImp.Version in line: - return False - if scene.LevelImp.Target in line: - return False - return True - - -# given an aggregate file that imports many files, find files with the name of type -def ParseAggregat(dat: typing.TextIO, filename: str, root_path: Path): - dat.seek(0) # so it may be read multiple times - InlineReg = "/\*((?!\*/).)*\*/" # filter out inline comments - ldat = dat.readlines() - files = [] - # assume this follows naming convention - for l in ldat: - if filename in l: - comment = l.rfind("//") - # double slash terminates line basically - if comment: - l = l[:comment] - # remove inline comments from line - l = re.sub(InlineReg, "", l) - files.append(l.strip()) - # remove include and quotes inefficiently. Now files is a list of relative paths - files = [c.replace("#include ", "").replace('"', "").replace("'", "") for c in files] - # deal with duplicate pathing (such as /actors/actors etc.) - Extra = root_path.relative_to(Path(bpy.context.scene.decompPath)) - for e in Extra.parts: - files = [c.replace(e + "/", "") for c in files] - if files: - return [root_path / c for c in files] +# given a path, get a level object by parsing the script.c file +def parse_level_script(script_file: Path, scene: bpy.types.Scene, col: bpy.types.Collection = None): + Root = bpy.data.objects.new("Empty", None) + if not col: + scene.collection.objects.link(Root) else: - return [] - - -# get all the collision data from a certain path -def FindCollisions(aggregate: Path, lvl: Level, scene: bpy.types.Scene, root_path: Path): - aggregate = open(aggregate, "r") - cols = ParseAggregat(aggregate, "collision.inc.c", root_path) - # catch fast64 includes - fast64 = ParseAggregat(aggregate, "leveldata.inc.c", root_path) - if fast64: - f64dat = open(fast64[0], "r") - cols += ParseAggregat(f64dat, "collision.inc.c", root_path) - aggregate.close() - # search for the area terrain in each file - for k, v in lvl.Areas.items(): - terrain = v.terrain - found = 0 - for c in cols: - if os.path.isfile(c): - c = open(c, "r") - c = c.readlines() - for i, l in enumerate(c): - if terrain in l: - # Trim Collision to be just the lines that have the file - v.ColFile = c[i:] - break - else: - c = None - continue - break - else: - c = None - if not c: - raise Exception( - "Collision {} not found in levels/{}/{}leveldata.c".format( - terrain, scene.LevelImp.Level, scene.LevelImp.Prefix - ) - ) - Collisions = FormatDat(v.ColFile, "Collision", ["(", ")"]) - v.ColFile = Collisions[terrain] - return lvl - - -def WriteLevelCollision(lvl: Level, scene: bpy.types.Scene, cleanup: bool, col_name: str = None): - for k, v in lvl.Areas.items(): - if not col_name: - col = v.root.users_collection[0] - else: - col = CreateCol(v.root.users_collection[0], col_name) - # dat is a class that holds all the collision files data - dat = Collision(v.ColFile, scene.blenderToSM64Scale) - dat.GetCollision() - name = "SM64 {} Area {} Col".format(scene.LevelImp.Level, k) - obj = dat.WriteCollision(scene, name, v.root, col=col) - # final operators to clean stuff up - if cleanup: - obj.data.validate() - obj.data.update(calc_edges=True) - # shade smooth - obj.select_set(True) - bpy.context.view_layer.objects.active = obj - bpy.ops.object.shade_smooth() - bpy.ops.object.mode_set(mode="EDIT") - bpy.ops.mesh.remove_doubles() - bpy.ops.object.mode_set(mode="OBJECT") - - -# get all the relevant data types cleaned up and organized for the f3d class -def FormatModel(gfx: sm64_F3d, model: list[str]): - # For each data type, make an attribute where it cleans the input of the model files - gfx.VB.update(FormatDat(model, "Vtx", ["{", "}"])) - gfx.Gfx.update(FormatDat(model, "Gfx", ["(", ")"])) - gfx.diff.update(FormatDat(model, "Light_t", [None, None])) - gfx.amb.update(FormatDat(model, "Ambient_t", [None, None])) - gfx.Lights.update(FormatDat(model, "Lights1", [None, None])) - # For textures, try u8, and s16 aswell - gfx.Textures.update(FormatDat(model, "Texture", [None, None])) - gfx.Textures.update(FormatDat(model, "u8", [None, None])) - gfx.Textures.update(FormatDat(model, "s16", [None, None])) - return gfx - - -# Search through a C file to find data of typeName[] and split it into a list -# of macros with all comments removed -def FormatDat(lines: list[str], typeName: str, Delims: list[str]): - # Get a dictionary made up with keys=level script names - # and values as an array of all the cmds inside. - Models = {} - InlineReg = "/\*((?!\*/).)*\*/" # filter out inline comments - regX = "\[[0-9a-fx]*\]" # array bounds, basically [] with any number in it - currScr = 0 # name of current arr of type typeName - skip = 0 # bool to skip during macros - for l in lines: - # remove line comment - comment = l.rfind("//") - if comment: - l = l[:comment] - # check for macro - if "#ifdef" in l: - skip = EvalMacro(l) - if "#elif" in l: - skip = EvalMacro(l) - if "#else" in l: - skip = 0 - continue - # Now Check for level script starts - match = re.search(regX, l, flags=re.IGNORECASE) - if typeName in l and match and not skip: - # get var name, get substring from typename to [] - var = l[l.find(typeName) + len(typeName) : match.span()[0]].strip() - Models[var] = "" - currScr = var - continue - if currScr and not skip: - # remove inline comments from line - l = re.sub(InlineReg, "", l) - # Check for end of Level Script array - if "};" in l: - currScr = 0 - # Add line to dict - else: - Models[currScr] += l - # Now remove newlines from each script, and then split macro ends - # This makes each member of the array a single macro - for script, v in Models.items(): - v = v.replace("\n", "") - arr = [] # arr of macros - buf = "" # buf to put currently processed macro in - x = 0 # cur position in str - stack = 0 # stack cnt of parenthesis - app = 0 # flag to append macro - while x < len(v): - char = v[x] - if char == Delims[0]: - stack += 1 - app = 1 - if char == Delims[1]: - stack -= 1 - if app == 1 and stack == 0: - app = 0 - buf += v[x : x + 2] # get the last parenthesis and comma - arr.append(buf.strip()) - x += 2 - buf = "" - continue - buf += char - x += 1 - # for when the delim characters are nothing - if buf: - arr.append(buf) - Models[script] = arr - return Models - - -# given a geo.c file and a path, return cleaned up geo layouts in a dict -def GetGeoLayouts(geo: typing.TextIO, root_path: Path): - layouts = ParseAggregat(geo, "geo.inc.c", root_path) - if not layouts: - return - # because of fast64, these can be recursively defined (though I expect only a depth of one) - for l in layouts: - geoR = open(l, "r") - layouts += ParseAggregat(geoR, "geo.inc.c", root_path) - GeoLayouts = {} # stores cleaned up geo layout lines - for l in layouts: - l = open(l, "r") - lines = l.readlines() - GeoLayouts.update(FormatDat(lines, "GeoLayout", ["(", ")"])) - return GeoLayouts - - -# Find DL references given a level geo file and a path to a level folder -def FindLvlModels(geo: typing.TextIO, lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None): - GeoLayouts = GetGeoLayouts(geo, root_path) - for k, v in lvl.Areas.items(): - GL = v.geo - rt = v.root - if col_name: - col = CreateCol(v.root.users_collection[0], col_name) - else: - col = None - Geo = GeoLayout(GeoLayouts, rt, scene, "GeoRoot {} {}".format(scene.LevelImp.Level, k), rt, col=col) - Geo.ParseLevelGeosStart(GL, scene) - v.geo = Geo + col.objects.link(Root) + Root.name = f"Level Root {scene.LevelImp.Level}" + Root.sm64_obj_type = "Level Root" + # Now parse the script and get data about the level + # Store data in attribute of a level class then assign later and return class + with open(script_file, "r", newline='') as script_file: + lvl = Level(script_file, scene, Root) + entry = scene.LevelImp.Entry.format(scene.LevelImp.Level) + lvl.parse_level_script(entry, col=col) return lvl -# Parse an aggregate group file or level data file for geo layouts -def FindActModels( - geo: typing.TextIO, - Layout: str, - scene: bpy.types.Scene, - rt: bpy.types.Object, - root_path: Path, - col: bpy.types.Collection = None, -): - GeoLayouts = GetGeoLayouts(geo, root_path) - Geo = GeoLayout(GeoLayouts, rt, scene, "{}".format(Layout), rt, col=col) - Geo.ParseLevelGeosStart(Layout, scene) - return Geo - - -# Parse an aggregate group file or level data file for f3d data -def FindModelDat(aggregate: Path, scene: bpy.types.Scene, root_path: Path): - leveldat = open(aggregate, "r") - models = ParseAggregat(leveldat, "model.inc.c", root_path) - models += ParseAggregat(leveldat, "painting.inc.c", root_path) - # fast64 makes a leveldata.inc.c file and puts custom content there, I want to catch that as well - # this isn't the best way to do this, but I will be lazy here - fast64 = ParseAggregat(leveldat, "leveldata.inc.c", root_path) - if fast64: - f64dat = open(fast64[0], "r") - models += ParseAggregat(f64dat, "model.inc.c", root_path) - # leveldat.seek(0) # so it may be read multiple times - textures = ParseAggregat(leveldat, "texture.inc.c", root_path) # Only deal with textures that are actual .pngs - textures.extend(ParseAggregat(leveldat, "textureNew.inc.c", root_path)) # For RM2C support - # Get all modeldata in the level - Models = sm64_F3d(scene) - for m in models: - md = open(m, "r") - lines = md.readlines() - Models = FormatModel(Models, lines) - # Update file to have texture.inc.c textures, deal with included textures in the model.inc.c files aswell - for t in [*textures, *models]: - t = open(t, "r") - tex = t.readlines() - # For textures, try u8, and s16 aswell - Models.Textures.update(FormatDat(tex, "Texture", [None, None])) - Models.Textures.update(FormatDat(tex, "u8", [None, None])) - Models.Textures.update(FormatDat(tex, "s16", [None, None])) - t.close() - return Models +# write the objects from a level object +def write_level_objects(lvl: Level, col_name: str = None): + for area in lvl.areas.values(): + area.place_objects(col_name=col_name) # from a geo layout, create all the mesh's -def ReadGeoLayout( - geo: GeoLayout, scene: bpy.types.Scene, f3d_dat: sm64_F3d, root_path: Path, meshes: dict, cleanup: bool = True +def write_geo_to_bpy( + geo: GeoLayout, scene: bpy.types.Scene, f3d_dat: SM64_F3D, root_path: Path, meshes: dict, cleanup: bool = True ): if geo.models: rt = geo.root @@ -1412,7 +1181,7 @@ def ReadGeoLayout( obj.draw_layer_static = layer col.objects.link(obj) parentObject(rt, obj) - RotateObj(-90, obj) + rotate_object(-90, obj) scale = m.scale / scene.blenderToSM64Scale obj.scale = [scale, scale, scale] obj.location = m.translate @@ -1431,49 +1200,141 @@ def ReadGeoLayout( bpy.ops.object.mode_set(mode="EDIT") bpy.ops.mesh.remove_doubles() bpy.ops.object.mode_set(mode="OBJECT") - if not geo.Children: + if not geo.children: return - for g in geo.Children: - ReadGeoLayout(g, scene, f3d_dat, root_path, meshes, cleanup=cleanup) + for g in geo.children: + write_geo_to_bpy(g, scene, f3d_dat, root_path, meshes, cleanup=cleanup) # write the gfx for a level given the level data, and f3d data -def WriteLevelModel(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: sm64_F3d, cleanup: bool = True): - for k, v in lvl.Areas.items(): - # Parse the geolayout class I created earlier to look for models - meshes = {} # re use mesh data when the same DL is referenced (bbh is good example) - ReadGeoLayout(v.geo, scene, f3d_dat, root_path, meshes, cleanup=cleanup) +def write_level_to_bpy(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: SM64_F3D, cleanup: bool = True): + for area in lvl.areas.values(): + print(area, area.geo) + write_geo_to_bpy(area.geo, scene, f3d_dat, root_path, dict(), cleanup=cleanup) return lvl -# given a path, get a level object by parsing the script.c file -def ParseScript(script: Path, scene: bpy.types.Scene, col: bpy.types.Collection = None): - scr = open(script, "r") - Root = bpy.data.objects.new("Empty", None) - if not col: - scene.collection.objects.link(Root) - else: - col.objects.link(Root) - Root.name = "Level Root {}".format(scene.LevelImp.Level) - Root.sm64_obj_type = "Level Root" - # Now parse the script and get data about the level - # Store data in attribute of a level class then assign later and return class - scr = scr.readlines() - lvl = Level(scr, scene, Root) - entry = scene.LevelImp.Entry.format(scene.LevelImp.Level) - lvl.ParseScript(entry, col=col) - return lvl +# given a geo.c file and a path, return cleaned up geo layouts in a dict +def construct_geo_layouts_from_file(geo: TextIO, root_path: Path): + geo_layout_files = get_all_aggregates(geo, "geo.inc.c", root_path) + if not geo_layout_files: + return + # because of fast64, these can be recursively defined (though I expect only a depth of one) + for file in geo_layout_files: + geo_layout_files.extend(get_all_aggregates(file, "geo.inc.c", root_path)) + geo_layout_data = {} # stores cleaned up geo layout lines + for geo_file in geo_layout_files: + with open(geo_file, "r", newline='') as geo_file: + geo_layout_data.update(get_data_types_from_file(geo_file, {"GeoLayout": ["(", ")"]})) + return geo_layout_data -# write the objects from a level object -def WriteObjects(lvl: Level, col_name: str = None): - for area in lvl.Areas.values(): - area.PlaceObjects(col_name=col_name) +# get all the relevant data types cleaned up and organized for the f3d class +def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO): + gfx_dat = get_data_types_from_file( + model_file, + { + "Vtx": ["{", "}"], + "Gfx": ["(", ")"], + "Light_t": [None, None], + "Ambient_t": [None, None], + "Lights1": [None, None], + }, + collated=True + ) + for key, value in gfx_dat.items(): + attr = getattr(gfx, key) + attr.update(value) + # For textures, try u8, and s16 aswell + gfx.Textures.update( + get_data_types_from_file( + model_file, + { + "Texture": [None, None], + "u8": [None, None], + "s16": [None, None], + }, + ) + ) + return gfx + + +# Parse an aggregate group file or level data file for f3d data +def construct_model_data_from_file(aggregate: Path, scene: bpy.types.Scene, root_path: Path): + model_files = get_all_aggregates( + aggregate, + ( + "model.inc.c", + "painting.inc.c", + ), + root_path, + ) + texture_files = get_all_aggregates( + aggregate, + ( + "texture.inc.c", + "textureNew.inc.c", + ), + root_path, + ) + # Get all modeldata in the level + sm64_f3d_data = SM64_F3D(scene) + for model_file in model_files: + model_file = open(model_file, "r", newline='') + construct_sm64_f3d_data_from_file(sm64_f3d_data, model_file) + # Update file to have texture.inc.c textures, deal with included textures in the model.inc.c files aswell + for texture_file in [*texture_files, *model_files]: + with open(texture_file, "r", newline='') as texture_file: + # For textures, try u8, and s16 aswell + sm64_f3d_data.Textures.update( + get_data_types_from_file( + texture_file, + { + "Texture": [None, None], + "u8": [None, None], + "s16": [None, None], + }, + ) + ) + return sm64_f3d_data + + +# Parse an aggregate group file or level data file for geo layouts +def find_actor_models_from_geo( + geo: TextIO, + Layout: str, + scene: bpy.types.Scene, + rt: bpy.types.Object, + root_path: Path, + col: bpy.types.Collection = None, +): + GeoLayouts = construct_geo_layouts_from_file(geo, root_path) + Geo = GeoLayout(GeoLayouts, rt, scene, "{}".format(Layout), rt, col=col) + Geo.parse_level_geo(Layout, scene) + return Geo + + +# Find DL references given a level geo file and a path to a level folder +def find_level_models_from_geo( + geo: TextIO, lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None +): + GeoLayouts = construct_geo_layouts_from_file(geo, root_path) + for area_index, area in lvl.areas.items(): + if col_name: + col = create_collection(area.root.users_collection[0], col_name) + else: + col = None + Geo = GeoLayout( + GeoLayouts, area.root, scene, f"GeoRoot {scene.LevelImp.Level} {area_index}", area.root, col=col + ) + Geo.parse_level_geo(area.geo, scene) + area.geo = Geo + return lvl # import level graphics given geo.c file, and a level object -def ImportLvlVisual( - geo: typing.TextIO, +def import_level_graphics( + geo: TextIO, lvl: Level, scene: bpy.types.Scene, root_path: Path, @@ -1481,19 +1342,62 @@ def ImportLvlVisual( cleanup: bool = True, col_name: str = None, ): - lvl = FindLvlModels(geo, lvl, scene, root_path, col_name=col_name) - models = FindModelDat(aggregate, scene, root_path) + lvl = find_level_models_from_geo(geo, lvl, scene, root_path, col_name=col_name) + models = construct_model_data_from_file(aggregate, scene, root_path) + print(lvl.areas, aggregate) # just a try, in case you are importing from something other than base decomp repo (like RM2C output folder) try: models.GetGenericTextures(root_path) except: print("could not import genric textures, if this errors later from missing textures this may be why") - lvl = WriteLevelModel(lvl, scene, root_path, models, cleanup=cleanup) + lvl = write_level_to_bpy(lvl, scene, root_path, models, cleanup=cleanup) + return lvl + + +# get all the collision data from a certain path +def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types.Scene, root_path: Path): + collision_files = get_all_aggregates(aggregate, "collision.inc.c", root_path) + col_data = dict() + for col_file in collision_files: + if not os.path.isfile(col_file): + continue + with open(col_file, "r", newline='') as col_file: + col_data.update(get_data_types_from_file(col_file, {"Collision": ["(", ")"]})) + # search for the area terrain from available collision data + for area in lvl.areas.values(): + area.ColFile = col_data.get(area.terrain, None) + if not area.ColFile: + raise Exception( + f"Collision {area.terrain} not found in levels/{scene.LevelImp.Level}/{scene.LevelImp.Prefix}leveldata.c" + ) return lvl +def write_level_collision_to_bpy(lvl: Level, scene: bpy.types.Scene, cleanup: bool, col_name: str = None): + for area_index, area in lvl.areas.items(): + if not col_name: + col = area.root.users_collection[0] + else: + col = create_collection(area.root.users_collection[0], col_name) + col_parser = Collision(area.ColFile, scene.blenderToSM64Scale) + col_parser.GetCollision() + name = "SM64 {} Area {} Col".format(scene.LevelImp.Level, area_index) + obj = col_parser.WriteCollision(scene, name, area.root, col=col) + # final operators to clean stuff up + if cleanup: + obj.data.validate() + obj.data.update(calc_edges=True) + # shade smooth + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.shade_smooth() + bpy.ops.object.mode_set(mode="EDIT") + bpy.ops.mesh.remove_doubles() + bpy.ops.object.mode_set(mode="OBJECT") + + # import level collision given a level script -def ImportLvlCollision( +def import_level_collision( aggregate: Path, lvl: Level, scene: bpy.types.Scene, @@ -1501,8 +1405,10 @@ def ImportLvlCollision( cleanup: bool, col_name: str = None, ): - lvl = FindCollisions(aggregate, lvl, scene, root_path) # Now Each area has its collision file nicely formatted - WriteLevelCollision(lvl, scene, cleanup, col_name=col_name) + lvl = find_collision_data_from_path( + aggregate, lvl, scene, root_path + ) # Now Each area has its collision file nicely formatted + write_level_collision_to_bpy(lvl, scene, cleanup, col_name=col_name) return lvl @@ -1522,7 +1428,7 @@ def execute(self, context): scene = context.scene rt_col = context.collection scene.gameEditorMode = "SM64" - path = Path(scene.decompPath) + path = Path(bpy.path.abspath(scene.decompPath)) folder = path / scene.ActImp.FolderType Layout = scene.ActImp.GeoLayout prefix = scene.ActImp.Prefix @@ -1533,22 +1439,22 @@ def execute(self, context): else: geo = folder / (prefix + "geo.c") leveldat = folder / (prefix + "leveldata.c") - geo = open(geo, "r") + geo = open(geo, "r", newline='') Root = bpy.data.objects.new("Empty", None) Root.name = "Actor %s" % scene.ActImp.GeoLayout rt_col.objects.link(Root) - Geo = FindActModels( + Geo = find_actor_models_from_geo( geo, Layout, scene, Root, folder, col=rt_col ) # return geo layout class and write the geo layout - models = FindModelDat(leveldat, scene, folder) + models = construct_model_data_from_file(leveldat, scene, folder) # just a try, in case you are importing from not the base decomp repo try: models.GetGenericTextures(path) except: print("could not import genric textures, if this errors later from missing textures this may be why") meshes = {} # re use mesh data when the same DL is referenced (bbh is good example) - ReadGeoLayout(Geo, scene, models, folder, meshes, cleanup=self.cleanup) + write_geo_to_bpy(Geo, scene, models, folder, meshes, cleanup=self.cleanup) return {"FINISHED"} @@ -1571,16 +1477,15 @@ def execute(self, context): scene.gameEditorMode = "SM64" prefix = scene.LevelImp.Prefix - path = Path(scene.decompPath) + path = Path(bpy.path.abspath(scene.decompPath)) level = path / "levels" / scene.LevelImp.Level script = level / (prefix + "script.c") geo = level / (prefix + "geo.c") leveldat = level / (prefix + "leveldata.c") - geo = open(geo, "r") - lvl = ParseScript(script, scene, col=col) # returns level class - WriteObjects(lvl, col_name=obj_col) - lvl = ImportLvlCollision(leveldat, lvl, scene, path, self.cleanup, col_name=col_col) - lvl = ImportLvlVisual(geo, lvl, scene, path, leveldat, cleanup=self.cleanup, col_name=gfx_col) + lvl = parse_level_script(script, scene, col=col) # returns level class + write_level_objects(lvl, col_name=obj_col) + lvl = import_level_collision(leveldat, lvl, scene, path, self.cleanup, col_name=col_col) + lvl = import_level_graphics(geo, lvl, scene, path, leveldat, cleanup=self.cleanup, col_name=gfx_col) return {"FINISHED"} @@ -1601,14 +1506,13 @@ def execute(self, context): scene.gameEditorMode = "SM64" prefix = scene.LevelImp.Prefix - path = Path(scene.decompPath) + path = Path(bpy.path.abspath(scene.decompPath)) level = path / "levels" / scene.LevelImp.Level script = level / (prefix + "script.c") geo = level / (prefix + "geo.c") model = level / (prefix + "leveldata.c") - geo = open(geo, "r") - lvl = ParseScript(script, scene, col=col) # returns level class - lvl = ImportLvlVisual(geo, lvl, scene, path, model, cleanup=self.cleanup, col_name=gfx_col) + lvl = parse_level_script(script, scene, col=col) # returns level class + lvl = import_level_graphics(geo, lvl, scene, path, model, cleanup=self.cleanup, col_name=gfx_col) return {"FINISHED"} @@ -1629,14 +1533,12 @@ def execute(self, context): scene.gameEditorMode = "SM64" prefix = scene.LevelImp.Prefix - path = Path(scene.decompPath) + path = Path(bpy.path.abspath(scene.decompPath)) level = path / "levels" / scene.LevelImp.Level script = level / (prefix + "script.c") - geo = level / (prefix + "geo.c") model = level / (prefix + "leveldata.c") - geo = open(geo, "r") - lvl = ParseScript(script, scene, col=col) # returns level class - lvl = ImportLvlCollision(model, lvl, scene, path, self.cleanup, col_name=col_col) + lvl = parse_level_script(script, scene, col=col) # returns level class + lvl = import_level_collision(model, lvl, scene, path, self.cleanup, col_name=col_col) return {"FINISHED"} @@ -1655,11 +1557,11 @@ def execute(self, context): scene.gameEditorMode = "SM64" prefix = scene.LevelImp.Prefix - path = Path(scene.decompPath) + path = Path(bpy.path.abspath(scene.decompPath)) level = path / "levels" / scene.LevelImp.Level script = level / (prefix + "script.c") - lvl = ParseScript(script, scene, col=col) # returns level class - WriteObjects(lvl, col_name=obj_col) + lvl = parse_level_script(script, scene, col=col) # returns level class + write_level_objects(lvl, col_name=obj_col) return {"FINISHED"} @@ -1686,12 +1588,7 @@ class ActorImport(PropertyGroup): Version: EnumProperty( name="Version", description="Version of the game for any ifdef macros", - items=[ - ("VERSION_US", "VERSION_US", ""), - ("VERSION_JP", "VERSION_JP", ""), - ("VERSION_EU", "VERSION_EU", ""), - ("VERSION_SH", "VERSION_SH", ""), - ], + items=enumVersionDefs, ) Target: StringProperty( name="Target", description="The platform target for any #ifdefs in code", default="TARGET_N64" @@ -1702,39 +1599,7 @@ class LevelImport(PropertyGroup): Level: EnumProperty( name="Level", description="Choose a level", - items=[ - ("bbh", "bbh", ""), - ("ccm", "ccm", ""), - ("hmc", "hmc", ""), - ("ssl", "ssl", ""), - ("bob", "bob", ""), - ("sl", "sl", ""), - ("wdw", "wdw", ""), - ("jrb", "jrb", ""), - ("thi", "thi", ""), - ("ttc", "ttc", ""), - ("rr", "rr", ""), - ("castle_grounds", "castle_grounds", ""), - ("castle_inside", "castle_inside", ""), - ("bitdw", "bitdw", ""), - ("vcutm", "vcutm", ""), - ("bitfs", "bitfs", ""), - ("sa", "sa", ""), - ("bits", "bits", ""), - ("lll", "lll", ""), - ("ddd", "ddd", ""), - ("wf", "wf", ""), - ("ending", "ending", ""), - ("castle_courtyard", "castle_courtyard", ""), - ("pss", "pss", ""), - ("cotmc", "cotmc", ""), - ("totwc", "totwc", ""), - ("bowser_1", "bowser_1", ""), - ("wmotr", "wmotr", ""), - ("bowser_2", "bowser_2", ""), - ("bowser_3", "bowser_3", ""), - ("ttm", "ttm", ""), - ], + items=enumLevelNames, ) Prefix: StringProperty( name="Prefix", @@ -1747,12 +1612,7 @@ class LevelImport(PropertyGroup): Version: EnumProperty( name="Version", description="Version of the game for any ifdef macros", - items=[ - ("VERSION_US", "VERSION_US", ""), - ("VERSION_JP", "VERSION_JP", ""), - ("VERSION_EU", "VERSION_EU", ""), - ("VERSION_SH", "VERSION_SH", ""), - ], + items=enumVersionDefs, ) Target: StringProperty( name="Target", description="The platform target for any #ifdefs in code", default="TARGET_N64" diff --git a/fast64_internal/utility.py b/fast64_internal/utility.py index da8f4047a..67c5ca680 100644 --- a/fast64_internal/utility.py +++ b/fast64_internal/utility.py @@ -210,6 +210,12 @@ def getGroupNameFromIndex(obj, index): return group.name return None +# creates a new collection and links it to parent +def create_collection(parent: bpy.types.Collection, name: str): + col = bpy.data.collections.new(name) + parent.children.link(col) + return col + def copyPropertyCollection(oldProp, newProp): newProp.clear() @@ -1149,6 +1155,18 @@ def doRotation(angle, axis): direction = getDirectionGivenAppVersion() bpy.ops.transform.rotate(value=direction * angle, orient_axis=axis, orient_type="GLOBAL") +# consider checking redundancy of this with above functions? +def rotate_object(deg: float, obj: bpy.types.Object, world: bool = 0): + deg = Euler((math.radians(-deg), 0, 0)) + deg = deg.to_quaternion().to_matrix().to_4x4() + if world: + obj.matrix_world = obj.matrix_world @ deg + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.transform_apply(rotation=True) + else: + obj.matrix_basis = obj.matrix_basis @ deg + def getAddressFromRAMAddress(RAMAddress): addr = RAMAddress - 0x80000000 diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py new file mode 100644 index 000000000..dc0fef4a7 --- /dev/null +++ b/fast64_internal/utility_importer.py @@ -0,0 +1,188 @@ +from __future__ import annotations + +import re +import bpy +from functools import partial +from dataclasses import dataclass +from pathlib import Path +from typing import TextIO, Any, Sequence, Union + + +@dataclass +class Macro: + cmd: str + args: list[str] + + # strip each arg + def __post_init__(self): + self.args = [arg.strip() for arg in self.args] + self.cmd = self.cmd.strip() + +@dataclass +class Parser: + cur_stream: Sequence[Any] + head: int = -1 + + def stream(self): + while self.head < len(self.cur_stream) - 1: + self.head += 1 + yield self.cur_stream[self.head] + +# basic methods and utility to parse scripts or data streams of bytecode +class DataParser: + + # parsing flow status codes + continue_parse = 1 + break_parse = 2 + + def __init__(self, parent: DataParser = None): + # for forward referencing scripts, keep track of the stream + if parent: + self.parsed_streams = parent.parsed_streams + else: + self.parsed_streams = dict() + + def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): + parser = self.parsed_streams.get(entry_id) + if not parser: + self.parsed_streams[entry_id] = (parser := Parser(dat_stream)) + for line in parser.stream(): + cur_macro = self.c_macro_split(line) + func = getattr(self, cur_macro.cmd, None) + if not func: + raise Exception(f"Macro {cur_macro} not found in parser function") + else: + flow_status = func(cur_macro, *args, **kwargs) + if flow_status == self.break_parse: + return + + def get_parser(self, entry_id: Any, relative_offset: int = 0): + parser = self.parsed_streams[entry_id] + parser.head += relative_offset + return parser.cur_stream + + + def c_macro_split(self, macro: str) -> list[str]: + args_start = macro.find("(") + return Macro(macro[:args_start], macro[args_start + 1 : macro.rfind(")")].split(",")) + + +def evaluate_macro(line: str): + scene = bpy.context.scene + if scene.LevelImp.Version in line: + return False + if scene.LevelImp.Target in line: + return False + return True + + +# gets rid of comments, whitespace and macros in a file +def pre_parse_file(file: TextIO) -> list[str]: + multi_line_comment_regx = "/\*[^*]*\*+(?:[^/*][^*]*\*+)*/" + file = re.sub(multi_line_comment_regx, "", file.read()) + skip_macro = 0 # bool to skip during macros + output_lines = [] + for line in file.splitlines(): + # remove line comment + if (comment := line.rfind("//")) > 0: + line = line[: comment] + # check for macro + if "#ifdef" in line: + skip_macro = evaluate_macro(line) + if "#elif" in line: + skip_macro = evaluate_macro(line) + if "#else" in line or "#endif" in line: + skip_macro = 0 + continue + if not skip_macro and line: + output_lines.append(line) + return output_lines + + +# given an aggregate file that imports many files, find files with the name of type +def parse_aggregate_file(dat: TextIO, filenames: Union[str, tuple[str]], root_path: Path) -> list[Path]: + dat.seek(0) # so it may be read multiple times + # make it an iterator even if it isn't on call + if isinstance(filenames, str): + filenames = (filenames,) + file_lines = pre_parse_file(dat) + # remove include and quotes inefficiently from lines with the filenames we are searching for + file_lines = [ + c.replace("#include ", "").replace('"', "").replace("'", "") + for c in file_lines + if any(filename in c for filename in filenames) + ] + # deal with duplicate pathing (such as /actors/actors etc.) + Extra = root_path.relative_to(Path(bpy.path.abspath(bpy.context.scene.decompPath))) + for e in Extra.parts: + files = [c.replace(e + "/", "") for c in file_lines] + if file_lines: + return [root_path / c for c in file_lines] + else: + return [] + + +# Search through a C file to find data of typeName[] and split it into a list +# of data types with all comments removed +def get_data_types_from_file(file: TextIO, type_dict, collated=False): + # from a raw file, create a dict of types. Types should all be arrays + file_lines = pre_parse_file(file) + array_bounds_regx = "\[[0-9a-fx]*\]" # basically [] with any valid number in it + output_variables = {type_name: dict() for type_name in type_dict.keys()} + type_found = None + var_dat_buffer = [] + for line in file_lines: + if type_found: + # Check for end of array + if "};" in line: + output_variables[type_found[0]][type_found[1]] = "".join(var_dat_buffer) + type_found = None + var_dat_buffer = [] + else: + var_dat_buffer.append(line) + continue + match = re.search(array_bounds_regx, line, flags=re.IGNORECASE) + type_collisions = [type_name for type_name in type_dict.keys() if type_name in line] + if match and type_collisions: + # there should ideally only be one collision + type_name = type_collisions[0] + variable_name = line[line.find(type_name) + len(type_name) : match.span()[0]].strip() + type_found = (type_name, variable_name) + # Now remove newlines from each line, and then split macro ends + # This makes each member of the array a single macro or array + for data_type, delimiters in type_dict.items(): + for variable, data in output_variables[data_type].items(): + output_variables[data_type][variable] = format_data_arr(data, delimiters) + + # if collated, organize by data type, otherwise just take the various dicts raw + return output_variables if collated else {vd_key:vd_value for var_dict in output_variables.values() for vd_key, vd_value in var_dict.items() } + + +# takes a raw string representing data and then formats it into an array +def format_data_arr(raw_data: str, delimiters: tuple[str]): + raw_data = raw_data.replace("\n", "") + arr = [] # arr of data in format + buf = "" # buf to put currently processed data in + pos = 0 # cur position in str + stack = 0 # stack cnt of parenthesis + app = 0 # flag to append data + while pos < len(raw_data): + char = raw_data[pos] + if char == delimiters[0]: + stack += 1 + app = 1 + if char == delimiters[1]: + stack -= 1 + if app == 1 and stack == 0: + app = 0 + buf += raw_data[pos : pos + 2] # get the last parenthesis and comma + arr.append(buf.strip()) + pos += 2 + buf = "" + continue + buf += char + pos += 1 + # for when the delim characters are nothing + if buf: + arr.append(buf) + return arr From 3d9a53b5688e12f757295e2b68b75ca7f218d63c Mon Sep 17 00:00:00 2001 From: scut Date: Fri, 30 Jun 2023 16:43:16 -0400 Subject: [PATCH 04/30] made code cleaner and added type hints --- fast64_internal/f3d/f3d_import.py | 342 ++++++++++---------- fast64_internal/sm64/sm64_level_importer.py | 334 ++++++++----------- 2 files changed, 292 insertions(+), 384 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index b043375ab..509b0d762 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -13,6 +13,14 @@ from dataclasses import dataclass from copy import deepcopy from re import findall +from numbers import Number +from collections.abc import Sequence + +from ..f3d.f3d_material import ( + F3DMaterialProperty, + RDPSettings, + TextureProperty +) from ..utility import hexOrDecInt from ..utility_importer import * @@ -64,10 +72,9 @@ def __init__(self): self.tiles = [Tile() for a in range(8)] self.tex0 = None self.tex1 = None - self.tx_scr = None # calc the hash for an f3d mat and see if its equal to this mats hash - def MatHashF3d(self, f3d): + def mat_hash_f3d(self, f3d: F3DMaterialProperty): # texture,1 cycle combiner, render mode, geo modes, some other blender settings, tile size (very important in kirby64) rdp = f3d.rdp_settings if f3d.tex0.tex: @@ -137,13 +144,13 @@ def EvalGeo(self, mode): return dupe return False - def MatHash(self, mat): + def mat_hash(self, mat: bpy.types.Material): return False - def ConvertColor(self, color): + def convert_color(self, color: Sequence[Number]): return [int(a) / 255 for a in color] - def LoadTexture(self, ForceNewTex, path, tex): + def load_texture(self, ForceNewTex: bool, path: Path, tex: Texture): png = path / f"bank_{tex.Timg[0]}" / f"{tex.Timg[1]}" png = (*png.glob("*.png"),) if png: @@ -153,28 +160,43 @@ def LoadTexture(self, ForceNewTex, path, tex): else: return i - def ApplyPBSDFMat(self, mat): + def apply_PBSDF_Mat(self, mat: bpy.types.Material, tex_path: Path, tex: Texture): nt = mat.node_tree nodes = nt.nodes links = nt.links pbsdf = nodes.get("Principled BSDF") if not pbsdf: return - tex = nodes.new("ShaderNodeTexImage") - links.new(pbsdf.inputs[0], tex.outputs[0]) # base color - i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, tex0) - if i: - tex.image = i - if int(layer) > 4: - mat.blend_method == "BLEND" - - def ApplyMatSettings(self, mat, tex_path): - # if bpy.context.scene.LevelImp.AsObj: - # return self.ApplyPBSDFMat(mat, textures, path, layer) + tex_node = nodes.new("ShaderNodeTexImage") + links.new(pbsdf.inputs[0], tex_node.outputs[0]) # base color + image = self.LoadTexture(0, tex_path, tex) + if image: + tex_node.image = image - f3d = mat.f3d_mat # This is kure's custom property class for materials + def apply_material_settings(self, mat: bpy.types.Material, tex_path: Path): + f3d = mat.f3d_mat - # set color registers if they exist + self.set_register_settings(mat, f3d) + self.set_textures(f3d) + + with bpy.context.temp_override(material=mat): + bpy.ops.material.update_f3d_nodes() + + def set_register_settings(self, mat: bpy.types.Material, f3d: F3DMaterialProperty): + self.set_fog(f3d) + self.set_color_registers(f3d) + self.set_geo_mode(f3d.rdp_settings, mat) + self.set_combiner(f3d) + self.set_render_mode(f3d) + + def set_textures(self, f3d: F3DMaterialProperty, tex_path: Path): + self.set_tex_scale(f3d) + if self.tex0 and self.set_tex: + self.set_tex_settings(f3d.tex0, self.load_texture(0, tex_path, self.tex0), self.tiles[0], self.tex0.Timg) + if self.tex1 and self.set_tex: + self.set_tex_settings(f3d.tex1, self.load_texture(0, tex_path, self.tex1), self.tiles[1], self.tex1.Timg) + + def set_fog(self, f3d: F3DMaterialProperty): if hasattr(self, "fog_position"): f3d.set_fog = True f3d.use_global_fog = False @@ -183,144 +205,72 @@ def ApplyMatSettings(self, mat, tex_path): if hasattr(self, "fog_color"): f3d.set_fog = True f3d.use_global_fog = False - f3d.fog_color = self.ConvertColor(self.fog_color) + f3d.fog_color = self.convert_color(self.fog_color) + + def set_color_registers(self, f3d: F3DMaterialProperty): if hasattr(self, "light_col"): # this is a dict but I'll only use the first color for now f3d.set_lights = True if self.light_col.get(1): - f3d.default_light_color = self.ConvertColor(eval(self.light_col[1]).to_bytes(4, "big")) + f3d.default_light_color = self.convert_color(eval(self.light_col[1]).to_bytes(4, "big")) if hasattr(self, "env_color"): f3d.set_env = True - f3d.env_color = self.ConvertColor(self.env_color[-4:]) + f3d.env_color = self.convert_color(self.env_color[-4:]) if hasattr(self, "prim_color"): prim = self.prim_color f3d.set_prim = True f3d.prim_lod_min = int(prim[0]) f3d.prim_lod_frac = int(prim[1]) - f3d.prim_color = self.ConvertColor(prim[-4:]) - # I set these but they aren't properly stored because they're reset by fast64 or something - # its better to have defaults than random 2 cycles - self.SetGeoMode(f3d.rdp_settings, mat) + f3d.prim_color = self.convert_color(prim[-4:]) - if self.TwoCycle: - f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_2CYCLE" - else: - f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_1CYCLE" - - # make combiner custom - f3d.presetName = "Custom" - self.SetCombiner(f3d) - # add tex scroll objects - if self.tx_scr: - scr = self.tx_scr - mat_scr = mat.KCS_tx_scroll - if hasattr(scr, "textures"): - [mat_scr.AddTex(t) for t in scr.textures] - if hasattr(scr, "palettes"): - [mat_scr.AddPal(t) for t in scr.palettes] - # deal with custom render modes - if hasattr(self, "RenderMode"): - self.SetRenderMode(f3d) - # g texture handle + def set_tex_scale(self, f3d: F3DMaterialProperty): if hasattr(self, "set_tex"): # not exactly the same but gets the point across maybe? f3d.tex0.tex_set = self.set_tex f3d.tex1.tex_set = self.set_tex # tex scale gets set to 0 when textures are disabled which is automatically done # often to save processing power between mats or something, or just adhoc bhv + # though in fast64, we don't want to ever set it to zero if f3d.rdp_settings.g_tex_gen or any([a < 1 and a > 0 for a in self.tex_scale]): f3d.scale_autoprop = False f3d.tex_scale = self.tex_scale - print(self.tex_scale) - if not self.set_tex: - # Update node values - override = bpy.context.copy() - override["material"] = mat - bpy.ops.material.update_f3d_nodes(override) - del override - return - # texture 0 then texture 1 - if self.tex0: - i = self.LoadTexture(0, tex_path, self.tex0) - tex0 = f3d.tex0 - tex0.tex_reference = str(self.tex0.Timg) # setting prop for hash purposes - tex0.tex_set = True - tex0.tex = i - tex0.tex_format = self.EvalFmt(self.tiles[0]) - tex0.autoprop = False - Sflags = self.EvalFlags(self.tiles[0].Sflags) - for f in Sflags: - setattr(tex0.S, f, True) - Tflags = self.EvalFlags(self.tiles[0].Tflags) - for f in Sflags: - setattr(tex0.T, f, True) - tex0.S.low = self.tiles[0].Slow - tex0.T.low = self.tiles[0].Tlow - tex0.S.high = self.tiles[0].Shigh - tex0.T.high = self.tiles[0].Thigh - - tex0.S.mask = self.tiles[0].SMask - tex0.T.mask = self.tiles[0].TMask - if self.tex1: - i = self.LoadTexture(0, tex_path, self.tex1) - tex1 = f3d.tex1 - tex1.tex_reference = str(self.tex1.Timg) # setting prop for hash purposes - tex1.tex_set = True - tex1.tex = i - tex1.tex_format = self.EvalFmt(self.tiles[1]) - Sflags = self.EvalFlags(self.tiles[1].Sflags) - for f in Sflags: - setattr(tex1.S, f, True) - Tflags = self.EvalFlags(self.tiles[1].Tflags) - for f in Sflags: - setattr(tex1.T, f, True) - tex1.S.low = self.tiles[1].Slow - tex1.T.low = self.tiles[1].Tlow - tex1.S.high = self.tiles[1].Shigh - tex1.T.high = self.tiles[1].Thigh - - tex1.S.mask = self.tiles[0].SMask - tex1.T.mask = self.tiles[0].TMask - # Update node values - override = bpy.context.copy() - override["material"] = mat - bpy.ops.material.update_f3d_nodes(override) - del override - - def EvalFlags(self, flags): - if not flags: - return [] - GBIflags = { - "G_TX_NOMIRROR": None, - "G_TX_WRAP": None, - "G_TX_MIRROR": ("mirror"), - "G_TX_CLAMP": ("clamp"), - "0": None, - "1": ("mirror"), - "2": ("clamp"), - "3": ("clamp", "mirror"), - } - x = [] - fsplit = flags.split("|") - for f in fsplit: - z = GBIflags.get(f.strip(), 0) - if z: - x.append(z) - return x - # only work with macros I can recognize for now - def SetRenderMode(self, f3d): + def set_tex_settings(self, tex_prop: TextureProperty, image: bpy.types.Image, tile: Tile, tex_img: Union[Sequence, str]): + tex_prop.tex_reference = str(tex_img) # setting prop for hash purposes + tex_prop.tex_set = True + tex_prop.tex = image + tex_prop.tex_format = self.eval_texture_format(tile) + Sflags = self.eval_tile_flags(tile.Sflags) + for f in Sflags: + setattr(tex_prop.S, f, True) + Tflags = self.eval_tile_flags(tile.Tflags) + for f in Sflags: + setattr(tex_prop.T, f, True) + tex_prop.S.low = tile.Slow + tex_prop.T.low = tile.Tlow + tex_prop.S.high = tile.Shigh + tex_prop.T.high = tile.Thigh + tex_prop.S.mask = tile.SMask + tex_prop.T.mask = tile.TMask + + # rework with combinatoric render mode draft PR + def set_render_mode(self, f3d: F3DMaterialProperty): rdp = f3d.rdp_settings - rdp.set_rendermode = True - # if the enum isn't there, then just print an error for now - try: - rdp.rendermode_preset_cycle_1 = self.RenderMode[0] - rdp.rendermode_preset_cycle_2 = self.RenderMode[1] - # print(f"set render modes with render mode {self.RenderMode}") - except: - print(f"could not set render modes with render mode {self.RenderMode}") - - def SetGeoMode(self, rdp, mat): + if self.TwoCycle: + rdp.g_mdsft_cycletype = "G_CYC_2CYCLE" + else: + rdp.g_mdsft_cycletype = "G_CYC_1CYCLE" + if hasattr(self, "RenderMode"): + rdp.set_rendermode = True + # if the enum isn't there, then just print an error for now + try: + rdp.rendermode_preset_cycle_1 = self.RenderMode[0] + rdp.rendermode_preset_cycle_2 = self.RenderMode[1] + # print(f"set render modes with render mode {self.RenderMode}") + except: + print(f"could not set render modes with render mode {self.RenderMode}") + + def set_geo_mode(self, rdp: RDPSettings, mat: bpy.types.Material): # texture gen has a different name than gbi for a in self.GeoSet: setattr(rdp, a.replace("G_TEXTURE_GEN", "G_TEX_GEN").lower().strip(), True) @@ -328,7 +278,8 @@ def SetGeoMode(self, rdp, mat): setattr(rdp, a.replace("G_TEXTURE_GEN", "G_TEX_GEN").lower().strip(), False) # Very lazy for now - def SetCombiner(self, f3d): + def set_combiner(self, f3d: F3DMaterialProperty): + f3d.presetName = "Custom" if not hasattr(self, "Combiner"): f3d.combiner1.A = "TEXEL0" f3d.combiner1.A_alpha = "0" @@ -354,7 +305,28 @@ def SetCombiner(self, f3d): f3d.combiner2.C_alpha = self.Combiner[14] f3d.combiner2.D_alpha = self.Combiner[15] - def EvalFmt(self, tex): + def eval_tile_flags(self, flags: str): + if not flags: + return [] + GBIflags = { + "G_TX_NOMIRROR": None, + "G_TX_WRAP": None, + "G_TX_MIRROR": ("mirror"), + "G_TX_CLAMP": ("clamp"), + "0": None, + "1": ("mirror"), + "2": ("clamp"), + "3": ("clamp", "mirror"), + } + x = [] + fsplit = flags.split("|") + for f in fsplit: + z = GBIflags.get(f.strip(), 0) + if z: + x.append(z) + return x + + def eval_texture_format(self, tex: Texture): GBIfmts = { "G_IM_FMT_RGBA": "RGBA", "RGBA": "RGBA", @@ -403,7 +375,7 @@ def __init__(self, lastmat=None): def gsSPEndDisplayList(self, macro: Macro): return self.break_parse - + def gsSPBranchList(self, macro: Macro): NewDL = self.Gfx.get(branched_dl := macro.args[0]) if not NewDL: @@ -414,7 +386,7 @@ def gsSPBranchList(self, macro: Macro): ) self.parse_stream(NewDL, branched_dl) return self.break_parse - + def gsSPDisplayList(self, macro: Macro): NewDL = self.Gfx.get(branched_dl := macro.args[0]) if not NewDL: @@ -425,12 +397,12 @@ def gsSPDisplayList(self, macro: Macro): ) self.parse_stream(NewDL, branched_dl) return self.continue_parse - + def gsSPEndDisplayList(self, macro: Macro): return self.break_parse - + def gsSPVertex(self, macro: Macro): - # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later + # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later if "+" in macro.args[0]: ref, offset = macro.args[0].split("+") offset = hexOrDecInt(offset) @@ -449,7 +421,7 @@ def gsSPVertex(self, macro: Macro): Verts = VB[ offset : offset + vertex_load_length ] # If you use array indexing here then you deserve to have this not work - Verts = [self.ParseVert(v) for v in Verts] + Verts = [self.parse_vert(v) for v in Verts] for k, i in enumerate(range(vertex_load_start, vertex_load_length, 1)): self.VertBuff[i] = [Verts[k], vertex_load_start] # These are all independent data blocks in blender @@ -458,20 +430,20 @@ def gsSPVertex(self, macro: Macro): self.VCs.extend([v[2] for v in Verts]) self.LastLoad = vertex_load_length return self.continue_parse - + def gsSP2Triangles(self, macro: Macro): - self.MakeNewMat() + self.make_new_material() args = [hexOrDecInt(a) for a in macro.args] - Tri1 = self.ParseTri(args[:3]) - Tri2 = self.ParseTri(args[4:7]) + Tri1 = self.parse_tri(args[:3]) + Tri2 = self.parse_tri(args[4:7]) self.Tris.append(Tri1) self.Tris.append(Tri2) return self.continue_parse def gsSP1Triangle(self, macro: Macro): - self.MakeNewMat() + self.make_new_material() args = [hexOrDecInt(a) for a in macro.args] - Tri = self.ParseTri(args[:3]) + Tri = self.parse_tri(args[:3]) self.Tris.append(Tri) return self.continue_parse @@ -486,29 +458,40 @@ def gsDPSetRenderMode(self, macro: Macro): # not finished yet def gsSPLight(self, macro: Macro): return self.continue_parse + def gsSPLightColor(self, macro: Macro): return self.continue_parse + def gsSPSetLights0(self, macro: Macro): return self.continue_parse + def gsSPSetLights1(self, macro: Macro): return self.continue_parse + def gsSPSetLights2(self, macro: Macro): return self.continue_parse + def gsSPSetLights3(self, macro: Macro): return self.continue_parse + def gsSPSetLights4(self, macro: Macro): return self.continue_parse + def gsSPSetLights5(self, macro: Macro): return self.continue_parse + def gsSPSetLights6(self, macro: Macro): return self.continue_parse + def gsSPSetLights7(self, macro: Macro): return self.continue_parse + def gsDPSetDepthSource(self, macro: Macro): return self.continue_parse + def gsSPFogFactor(self, macro: Macro): return self.continue_parse - + def gsDPSetFogColor(self, macro: Macro): self.NewMat = 1 self.LastMat.fog_color = macro.args @@ -581,12 +564,12 @@ def gsDPSetCycleType(self, macro: Macro): def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 - self.LastMat.Combiner = self.EvalCombiner(macro.args) + self.LastMat.Combiner = self.eval_set_combine_macro(macro.args) return self.continue_parse def gsDPSetCombineLERP(self, macro: Macro): self.NewMat = 1 - self.LastMat.Combiner = [a.strip() for a in macro.args] + self.LastMat.Combiner = macro.args return self.continue_parse # root tile, scale and set tex @@ -596,14 +579,14 @@ def gsSPTexture(self, macro: Macro): "G_ON": 2, "G_OFF": 0, } - set_tex = macros.get(macro.args[-1].strip()) + set_tex = macros.get(macro.args[-1]) if set_tex == None: - set_tex = hexOrDecInt(macro.args[-1].strip()) + set_tex = hexOrDecInt(macro.args[-1]) self.LastMat.set_tex = set_tex == 2 self.LastMat.tex_scale = [ ((0x10000 * (hexOrDecInt(a) < 0)) + hexOrDecInt(a)) / 0xFFFF for a in macro.args[0:2] ] # signed half to unsigned half - self.LastMat.tile_root = self.EvalTile(macro.args[-2].strip()) # I don't think I'll actually use this + self.LastMat.tile_root = self.eval_tile_enum(macro.args[-2]) # I don't think I'll actually use this return self.continue_parse # last tex is a palette @@ -627,7 +610,7 @@ def gsDPLoadBlock(self, macro: Macro): # these values aren't necessary when the texture is already in png format # tex.dxt = hexOrDecInt(args[4]) # tex.texels = hexOrDecInt(args[3]) - tile = self.EvalTile(macro.args[0]) + tile = self.eval_tile_enum(macro.args[0]) tex.tile = tile if tile == 7: self.LastMat.tex0 = tex @@ -644,68 +627,69 @@ def gsDPLoadBlock(self, macro: Macro): def gsDPSetTextureImage(self, macro: Macro): self.NewMat = 1 - Timg = macro.args[3].strip() - Fmt = macro.args[1].strip() - Siz = macro.args[2].strip() + Timg = macro.args[3] + Fmt = macro.args[1] + Siz = macro.args[2] loadtex = Texture(Timg, Fmt, Siz) self.LastMat.loadtex = loadtex return self.continue_parse def gsDPSetTileSize(self, macro: Macro): self.NewMat = 1 - tile = self.LastMat.tiles[self.EvalTile(macro.args[0])] - tile.Slow = self.EvalImFrac(macro.args[1].strip()) - tile.Tlow = self.EvalImFrac(macro.args[2].strip()) - tile.Shigh = self.EvalImFrac(macro.args[3].strip()) - tile.Thigh = self.EvalImFrac(macro.args[4].strip()) + tile = self.LastMat.tiles[self.eval_tile_enum(macro.args[0])] + tile.Slow = self.eval_image_frac(macro.args[1]) + tile.Tlow = self.eval_image_frac(macro.args[2]) + tile.Shigh = self.eval_image_frac(macro.args[3]) + tile.Thigh = self.eval_image_frac(macro.args[4]) return self.continue_parse def gsDPSetTile(self, macro: Macro): self.NewMat = 1 - tile = self.LastMat.tiles[self.EvalTile(macro.args[4].strip())] + tile = self.LastMat.tiles[self.eval_tile_enum(macro.args[4].strip())] tile.Fmt = macro.args[0].strip() tile.Siz = macro.args[1].strip() tile.Tflags = macro.args[6].strip() - tile.TMask = self.EvalTile(macro.args[7].strip()) - tile.TShift = self.EvalTile(macro.args[8].strip()) + tile.TMask = self.eval_tile_enum(macro.args[7]) + tile.TShift = self.eval_tile_enum(macro.args[8]) tile.Sflags = macro.args[9].strip() - tile.SMask = self.EvalTile(macro.args[10].strip()) - tile.SShift = self.EvalTile(macro.args[11].strip()) + tile.SMask = self.eval_tile_enum(macro.args[10]) + tile.SShift = self.eval_tile_enum(macro.args[11]) return self.continue_parse - #syncs need no processing + # syncs need no processing def gsDPPipeSync(self, macro: Macro): return self.continue_parse + def gsDPLoadSync(self, macro: Macro): return self.continue_parse + def gsDPTileSync(self, macro: Macro): return self.continue_parse + def gsDPFullSync(self, macro: Macro): return self.continue_parse + def gsDPNoOp(self, macro: Macro): return self.continue_parse - def MakeNewMat(self): + def make_new_material(self): if self.NewMat: self.NewMat = 0 self.Mats.append([len(self.Tris) - 1, self.LastMat]) self.LastMat = deepcopy(self.LastMat) # for safety self.LastMat.name = self.num + 1 - if self.LastMat.tx_scr: - # I'm clearing here because I did some illegal stuff a bit before, temporary (maybe) - self.LastMat.tx_scr = None self.num += 1 - def ParseTri(self, Tri): + def parse_tri(self, Tri: Sequence[int]): return [self.VertBuff[a] for a in Tri] - def EvalImFrac(self, arg): + def eval_image_frac(self, arg: Union[str, Number]): if type(arg) == int: return arg arg2 = arg.replace("G_TEXTURE_IMAGE_FRAC", "2") return eval(arg2) - def EvalTile(self, arg): + def eval_tile_enum(self, arg: Union[str, Number]): # only 0 and 7 have enums, other stuff just uses int (afaik) Tiles = { "G_TX_LOADTILE": 7, @@ -718,7 +702,7 @@ def EvalTile(self, arg): t = hexOrDecInt(arg) return t - def EvalCombiner(self, arg): + def eval_set_combine_macro(self, arg: str): # two args GBI_CC_Macros = { "G_CC_PRIMITIVE": ["0", "0", "0", "PRIMITIVE", "0", "0", "0", "PRIMITIVE"], @@ -828,5 +812,5 @@ def EvalCombiner(self, arg): "G_CC_HILITERGBPASSA2": ["ENVIRONMENT", "COMBINED", "TEXEL0", "COMBINED", "0", "0", "0", "COMBINED"], } return GBI_CC_Macros.get( - arg[0].strip(), ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"] - ) + GBI_CC_Macros.get(arg[1].strip(), ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"]) + arg[0], ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"] + ) + GBI_CC_Macros.get(arg[1], ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"]) diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 6657662d0..106ccee70 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -230,9 +230,7 @@ def AREA(self, macro: Macro, col: bpy.types.Collection): area_col = col area_col.objects.link(area_root) area_root.name = f"{self.scene.LevelImp.Level} Area Root {macro.args[0]}" - self.areas[macro.args[0]] = Area( - area_root, macro.args[1], self.root, int(macro.args[0]), self.scene, area_col - ) + self.areas[macro.args[0]] = Area(area_root, macro.args[1], self.root, int(macro.args[0]), self.scene, area_col) self.cur_area = macro.args[0] return self.continue_parse @@ -329,42 +327,55 @@ def generic_music(self, macro: Macro, col: bpy.types.Collection): root.musicSeqEnum = "Custom" root.music_seq = macro.args[-1] return self.continue_parse - + # Don't support these for now def MACRO_OBJECTS(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def MARIO_POS(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse - + # use group mapping to set groups eventually def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def LOAD_MIO0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def LOAD_YAY0(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse - + # not useful for bpy, dummy these script cmds def MARIO(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def INIT_LEVEL(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def ALLOC_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def FREE_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def LOAD_MODEL_FROM_GEO(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def LOAD_MODEL_FROM_DL(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def CALL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self.continue_parse + def CALL_LOOP(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def CLEAR_LEVEL(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def SLEEP_BEFORE_EXIT(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse @@ -382,7 +393,7 @@ def __init__(self, collision: list[str], scale: float): self.water_boxes = [] super().__init__() - def WriteWaterBoxes( + def write_water_boxes( self, scene: bpy.types.Scene, parent: bpy.types.Object, name: str, col: bpy.types.Collection = None ): for i, w in enumerate(self.water_boxes): @@ -403,12 +414,12 @@ def WriteWaterBoxes( scale = [Xwidth, Zwidth, 1] Obj.scale = scale - def WriteCollision( + def write_collision( self, scene: bpy.types.Scene, name: str, parent: bpy.types.Object, col: bpy.types.Collection = None ): if not col: col = scene.collection - self.WriteWaterBoxes(scene, parent, name, col) + self.write_water_boxes(scene, parent, name, col) mesh = bpy.data.meshes.new(name + " data") tris = [] for t in self.tris.values(): @@ -443,13 +454,12 @@ def WriteCollision( mat.use_collision_param = True mat.collision_param = str(self.tri_types[x][2][3]) x += 1 - override = bpy.context.copy() - override["material"] = mat - bpy.ops.material.update_f3d_nodes(override) + with bpy.context.temp_override(material=mat): + bpy.ops.material.update_f3d_nodes() p.material_index = x - 1 return obj - def GetCollision(self): + def parse_collision(self): self.parse_stream(self.collision, 0) # This will keep track of how to assign mats a = 0 @@ -481,7 +491,7 @@ def COL_WATER_BOX(self, macro: Macro): def SPECIAL_OBJECT(self, macro: Macro): self.special_objects.append(macro.args) return self.continue_parse - + def SPECIAL_OBJECT_WITH_YAW(self, macro: Macro): self.special_objects.append(macro.args) return self.continue_parse @@ -489,26 +499,31 @@ def SPECIAL_OBJECT_WITH_YAW(self, macro: Macro): # don't do anything to bpy def COL_WATER_BOX_INIT(self, macro: Macro): return self.continue_parse + def COL_INIT(self, macro: Macro): return self.continue_parse + def COL_VERTEX_INIT(self, macro: Macro): return self.continue_parse + def COL_SPECIAL_INIT(self, macro: Macro): return self.continue_parse + def COL_TRI_STOP(self, macro: Macro): return self.continue_parse + def COL_END(self, macro: Macro): return self.continue_parse class SM64_Material(Mat): - def LoadTexture(self, ForceNewTex: bool, textures: dict, path: Path, tex: Texture): + def load_texture(self, ForceNewTex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None Timg = textures.get(tex.Timg)[0].split("/")[-1] Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") - i = bpy.data.images.get(Timg) - if not i or ForceNewTex: + image = bpy.data.images.get(Timg) + if not image or ForceNewTex: Timg = textures.get(tex.Timg)[0] Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") # deal with duplicate pathing (such as /actors/actors etc.) @@ -522,117 +537,51 @@ def LoadTexture(self, ForceNewTex: bool, textures: dict, path: Path, tex: Textur fp = path / Timg return bpy.data.images.load(filepath=str(fp)) else: - return i - - def ApplyMatSettings(self, mat: bpy.types.Material, textures: dict, path: Path, layer: int): + return image + + def apply_PBSDF_Mat(self, mat: bpy.types.Material, textures: dict, tex_path: Path, layer: int, tex: Texture): + nt = mat.node_tree + nodes = nt.nodes + links = nt.links + pbsdf = nodes.get("Principled BSDF") + if not pbsdf: + return + tex_node = nodes.new("ShaderNodeTexImage") + links.new(pbsdf.inputs[0], tex_node.outputs[0]) # base color + image = self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, tex) + if image: + tex_node.image = image + if int(layer) > 4: + mat.blend_method == "BLEND" + + def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_path: Path, layer: int): if bpy.context.scene.LevelImp.AsObj: - return self.ApplyPBSDFMat(mat, textures, path, layer, self.tex0) - f3d = mat.f3d_mat # This is kure's custom property class for materials + return self.apply_PBSDF_Mat(mat, textures, tex_path, layer, self.tex0) + + f3d = mat.f3d_mat + f3d.draw_layer.sm64 = layer - # set color registers if they exist - if hasattr(self, "fog_position"): - f3d.set_fog = True - f3d.use_global_fog = False - f3d.fog_position[0] = eval(self.fog_pos[0]) - f3d.fog_position[1] = eval(self.fog_pos[1]) - if hasattr(self, "fog_color"): - f3d.set_fog = True - f3d.use_global_fog = False - f3d.fog_color = self.ConvertColor(self.fog_color) - if hasattr(self, "light_col"): - # this is a dict but I'll only use the first color for now - f3d.set_lights = True - if self.light_col.get(1): - f3d.default_light_color = self.ConvertColor(eval(self.light_col[1]).to_bytes(4, "big")) - if hasattr(self, "env_color"): - f3d.set_env = True - f3d.env_color = self.ConvertColor(self.env_color[-4:]) - if hasattr(self, "prim_color"): - prim = self.prim_color - f3d.set_prim = True - f3d.prim_lod_min = int(prim[0]) - f3d.prim_lod_frac = int(prim[1]) - f3d.prim_color = self.ConvertColor(prim[-4:]) - # I set these but they aren't properly stored because they're reset by fast64 or something - # its better to have defaults than random 2 cycles - self.SetGeoMode(f3d.rdp_settings, mat) - - if self.TwoCycle: - f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_2CYCLE" - else: - f3d.rdp_settings.g_mdsft_cycletype = "G_CYC_1CYCLE" - # make combiner custom - f3d.presetName = "Custom" - self.SetCombiner(f3d) - - # deal with custom render modes - if hasattr(self, "RenderMode"): - self.SetRenderMode(f3d) - # g texture handle - if hasattr(self, "set_tex"): - # not exactly the same but gets the point across maybe? - f3d.tex0.tex_set = self.set_tex - f3d.tex1.tex_set = self.set_tex - # tex scale gets set to 0 when textures are disabled which is automatically done - # often to save processing power between mats or something, or just adhoc bhv - if f3d.rdp_settings.g_tex_gen or any([a < 1 and a > 0 for a in self.tex_scale]): - f3d.scale_autoprop = False - f3d.tex_scale = self.tex_scale - if not self.set_tex: - # Update node values - override = bpy.context.copy() - override["material"] = mat - bpy.ops.material.update_f3d_nodes(override) - del override - return - # Try to set an image - # texture 0 then texture 1 - if self.tex0: - i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, self.tex0) - tex0 = f3d.tex0 - tex0.tex_reference = str(self.tex0.Timg) # setting prop for hash purposes - tex0.tex_set = True - tex0.tex = i - tex0.tex_format = self.EvalFmt(self.tiles[0]) - tex0.autoprop = False - Sflags = self.EvalFlags(self.tiles[0].Sflags) - for f in Sflags: - setattr(tex0.S, f, True) - Tflags = self.EvalFlags(self.tiles[0].Tflags) - for f in Sflags: - setattr(tex0.T, f, True) - tex0.S.low = self.tiles[0].Slow - tex0.T.low = self.tiles[0].Tlow - tex0.S.high = self.tiles[0].Shigh - tex0.T.high = self.tiles[0].Thigh - - tex0.S.mask = self.tiles[0].SMask - tex0.T.mask = self.tiles[0].TMask - if self.tex1: - i = self.LoadTexture(bpy.context.scene.LevelImp.ForceNewTex, textures, path, self.tex1) - tex1 = f3d.tex1 - tex1.tex_reference = str(self.tex1.Timg) # setting prop for hash purposes - tex1.tex_set = True - tex1.tex = i - tex1.tex_format = self.EvalFmt(self.tiles[1]) - Sflags = self.EvalFlags(self.tiles[1].Sflags) - for f in Sflags: - setattr(tex1.S, f, True) - Tflags = self.EvalFlags(self.tiles[1].Tflags) - for f in Sflags: - setattr(tex1.T, f, True) - tex1.S.low = self.tiles[1].Slow - tex1.T.low = self.tiles[1].Tlow - tex1.S.high = self.tiles[1].Shigh - tex1.T.high = self.tiles[1].Thigh - - tex1.S.mask = self.tiles[0].SMask - tex1.T.mask = self.tiles[0].TMask - # Update node values - override = bpy.context.copy() - override["material"] = mat - bpy.ops.material.update_f3d_nodes(override) - del override + self.set_register_settings(mat, f3d) + self.set_textures(f3d, textures, tex_path) + with bpy.context.temp_override(material=mat): + bpy.ops.material.update_f3d_nodes() + + def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path): + self.set_tex_scale(f3d) + if self.tex0 and self.set_tex: + self.set_tex_settings( + f3d.tex0, + self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, self.tex0), + self.tiles[0], + self.tex0.Timg + ) + if self.tex1 and self.set_tex: + self.set_tex_settings( + f3d.tex1, + self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, self.tex1), + self.tiles[1], + self.tex1.Timg + ) class SM64_F3D(DL): @@ -648,7 +597,8 @@ def __init__(self, scene: bpy.types.Scene): super().__init__() # Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file - def GetGenericTextures(self, root_path: Path): + # this will add all the textures located in the /textures/ folder in decomp + def get_generic_textures(self, root_path: Path): for t in [ "cave.c", "effect.c", @@ -665,7 +615,7 @@ def GetGenericTextures(self, root_path: Path): "water.c", ]: t = root_path / "bin" / t - t = open(t, "r", newline='') + t = open(t, "r", newline="") tex = t # For textures, try u8, and s16 aswell self.Textures.update( @@ -681,7 +631,7 @@ def GetGenericTextures(self, root_path: Path): t.close() # recursively parse the display list in order to return a bunch of model data - def GetDataFromModel(self, start: str): + def get_f3d_data_from_model(self, start: str): DL = self.Gfx.get(start) self.VertBuff = [0] * 32 # If you're doing some fucky shit with a larger vert buffer it sucks to suck I guess if not DL: @@ -695,19 +645,10 @@ def GetDataFromModel(self, start: str): self.parse_stream(DL, start) self.NewMat = 0 self.StartName = start - print(self.Verts, self.Tris, start) return [self.Verts, self.Tris] - def MakeNewMat(self): - if self.NewMat: - self.NewMat = 0 - self.Mats.append([len(self.Tris) - 1, self.LastMat]) - self.LastMat = deepcopy(self.LastMat) # for safety - self.LastMat.name = self.num + 1 - self.num += 1 - # turn member of vtx str arr into vtx args - def ParseVert(self, Vert: str): + def parse_vert(self, Vert: str): v = Vert.replace("{", "").replace("}", "").split(",") num = lambda x: [eval(a) for a in x] pos = num(v[:3]) @@ -716,15 +657,11 @@ def ParseVert(self, Vert: str): return [pos, uv, vc] # given tri args in gbi cmd, give appropriate tri indices in vert list - def ParseTri(self, Tri: list[int]): + def parse_tri(self, Tri: list[int]): L = len(self.Verts) return [a + L - self.LastLoad for a in Tri] - def StripArgs(self, cmd: str): - a = cmd.find("(") - return cmd[:a].strip(), cmd[a + 1 : -2].split(",") - - def ApplyDat(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path): + def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path): tris = mesh.polygons bpy.context.view_layer.objects.active = obj ind = -1 @@ -746,13 +683,13 @@ def ApplyDat(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_ self.Mats.append([len(tris), 0]) for i, t in enumerate(tris): if i > self.Mats[ind + 1][0]: - new = self.Create_new_f3d_mat(self.Mats[ind + 1][1], mesh) + new = self.create_new_f3d_mat(self.Mats[ind + 1][1], mesh) ind += 1 if not new: new = len(mesh.materials) - 1 mat = mesh.materials[new] mat.name = "sm64 F3D Mat {} {}".format(obj.name, new) - self.Mats[new][1].ApplyMatSettings(mat, self.Textures, tex_path, layer) + self.Mats[new][1].apply_material_settings(mat, self.Textures, tex_path, layer) else: # I tried to re use mat slots but it is much slower, and not as accurate # idk if I was just doing it wrong or the search is that much slower, but this is easier @@ -778,13 +715,13 @@ def ApplyDat(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_ Vcol.data[l].color = [a / 255 for a in vcol] # create a new f3d_mat given an SM64_Material class but don't create copies with same props - def Create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): + def create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): if not self.scene.LevelImp.ForceNewTex: # check if this mat was used already in another mesh (or this mat if DL is garbage or something) # even looping n^2 is probably faster than duping 3 mats with blender speed for j, F3Dmat in enumerate(bpy.data.materials): if F3Dmat.is_f3d: - dupe = mat.MatHashF3d(F3Dmat.f3d_mat) + dupe = mat.mat_hash_f3d(F3Dmat.f3d_mat) if dupe: return F3Dmat if mesh.materials: @@ -811,9 +748,9 @@ class ModelDat: model: str scale: float = 1.0 + # base class for geo layouts and armatures class GraphNodes(DataParser): - def GEO_BRANCH_AND_LINK(self, macro: Macro, depth: int): new_geo_layout = self.geo_layouts.get(macro.args[0]) if new_geo_layout: @@ -845,13 +782,16 @@ def GEO_CLOSE_NODE(self, macro: Macro, depth: int): def GEO_OPEN_NODE(self, macro: Macro, depth: int): if self.obj: - GeoChild = GeoLayout(self.geo_layouts, self.obj, self.scene, self.name, self.area_root, col=self.col, geo_parent=self) + GeoChild = GeoLayout( + self.geo_layouts, self.obj, self.scene, self.name, self.area_root, col=self.col, geo_parent=self + ) else: - GeoChild = GeoLayout(self.geo_layouts, self.root, self.scene, self.name, self.area_root, col=self.col, geo_parent=self) + GeoChild = GeoLayout( + self.geo_layouts, self.root, self.scene, self.name, self.area_root, col=self.col, geo_parent=self + ) GeoChild.parent_transform = self.last_transform GeoChild.stream = self.stream GeoChild.parse_stream(self.geo_layouts.get(self.stream), self.stream, depth + 1) - # self.head = self.skip_children(self.cur_dat_stream, self.head) self.children.append(GeoChild) return self.continue_parse @@ -862,7 +802,7 @@ def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): # shadows aren't naturally supported but we can emulate them with custom geo cmds, note: possibly changed with fast64 updates, this is old code def GEO_SHADOW(self, macro: Macro, depth: int): - obj = self.MakeRt(self.name + "shadow empty", self.root) + obj = self.make_root_empty(self.name + "shadow empty", self.root) obj.sm64_obj_type = "Custom Geo Command" obj.customGeoCommand = "GEO_SHADOW" obj.customGeoCommandArgs = ", ".join(macro.args) @@ -877,7 +817,7 @@ def GEO_ANIMATED_PART(self, macro: Macro, depth: int): if model.strip() != "NULL": self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) else: - obj = self.MakeRt(self.name + "animated empty", self.root) + obj = self.make_root_empty(self.name + "animated empty", self.root) obj.location = Tlate def GEO_ROTATION_NODE(self, macro: Macro, depth: int): @@ -891,7 +831,7 @@ def GEO_ROTATE(self, macro: Macro, depth: int): Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") self.last_transform = [[0, 0, 0], Rotate] self.last_transform = [[0, 0, 0], self.last_transform[1]] - obj = self.MakeRt(self.name + "rotate", self.root) + obj = self.make_root_empty(self.name + "rotate", self.root) obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate/Rotate" return obj @@ -911,7 +851,7 @@ def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): if model.strip() != "NULL": self.models.append(ModelDat([0, 0, 0], Rotate, layer, model)) else: - obj = self.MakeRt(self.name + "rotate", self.root) + obj = self.make_root_empty(self.name + "rotate", self.root) obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate/Rotate" return obj @@ -928,7 +868,7 @@ def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): if model.strip() != "NULL": self.models.append(ModelDat(Tlate, Rotate, layer, model)) else: - obj = self.MakeRt(self.name + "translate rotate", self.root) + obj = self.make_root_empty(self.name + "translate rotate", self.root) obj.location = Tlate obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate/Rotate" @@ -939,7 +879,7 @@ def GEO_TRANSLATE_ROTATE(self, macro: Macro, depth: int): Rotate = [math.radians(float(arg)) for arg in macro.args[4:7]] Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") self.last_transform = [Tlate, Rotate] - obj = self.MakeRt(self.name + "translate", self.root) + obj = self.make_root_empty(self.name + "translate", self.root) obj.location = Tlate obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate/Rotate" @@ -959,7 +899,7 @@ def GEO_TRANSLATE_NODE_WITH_DL(self, macro: Macro, depth: int): if model.strip() != "NULL": self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) else: - obj = self.MakeRt(self.name + "translate", self.root) + obj = self.make_root_empty(self.name + "translate", self.root) obj.location = Tlate obj.rotation_euler = Rotate obj.sm64_obj_type = "Geo Translate Node" @@ -974,7 +914,7 @@ def GEO_TRANSLATE_NODE(self, macro: Macro, depth: int): Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in macro.args[1:4]] Tlate = [Tlate[0], -Tlate[2], Tlate[1]] self.last_transform = [Tlate, self.last_transform[1]] - obj = self.MakeRt(self.name + "translate", self.root) + obj = self.make_root_empty(self.name + "translate", self.root) obj.location = Tlate obj.sm64_obj_type = "Geo Translate Node" return obj @@ -986,20 +926,20 @@ def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): self.models.append(ModelDat((0, 0, 0), (0, 0, 0), layer, model, scale=scale)) def GEO_SCALE(self, macro: Macro, depth: int): - obj = self.MakeRt(self.name + "scale", self.root) + obj = self.make_root_empty(self.name + "scale", self.root) scale = eval(macro.args[1]) / 0x10000 obj.scale = (scale, scale, scale) obj.sm64_obj_type = "Geo Scale" def GEO_ASM(self, macro: Macro, depth: int): - obj = self.MakeRt(self.name + "asm", self.root) + obj = self.make_root_empty(self.name + "asm", self.root) asm = self.obj.fast64.sm64.geo_asm self.obj.sm64_obj_type = "Geo ASM" asm.param = macro.args[0] asm.func = macro.args[1] def GEO_SWITCH_CASE(self, macro: Macro, depth: int): - obj = self.MakeRt(self.name + "switch", self.root) + obj = self.make_root_empty(self.name + "switch", self.root) Switch = self.obj Switch.sm64_obj_type = "Switch" Switch.switchParam = eval(macro.args[0]) @@ -1013,7 +953,7 @@ def GEO_RENDER_RANGE(self, macro: Macro, depth: int): def GEO_CAMERA(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" self.area_root.camType = macro.args[0] - + # make better def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" @@ -1029,21 +969,24 @@ def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): G = (color & (0x3E << 5)) >> 6 R = (color & (0x3E << 10)) >> 11 self.area_root.areaBGColor = (R / 0x1F, G / 0x1F, B / 0x1F, A) - + # these have no affect on the bpy def GEO_BACKGROUND(self, macro: Macro, depth: int): return self.continue_parse + def GEO_NODE_SCREEN_AREA(self, macro: Macro, depth: int): return self.continue_parse + def GEO_ZBUFFER(self, macro: Macro, depth: int): return self.continue_parse + def GEO_NODE_ORTHO(self, macro: Macro, depth: int): return self.continue_parse + def GEO_RENDER_OBJ(self, macro: Macro, depth: int): return self.continue_parse - class GeoLayout(GraphNodes): def __init__( self, @@ -1053,7 +996,7 @@ def __init__( name, area_root: bpy.types.Object, col: bpy.types.Collection = None, - geo_parent: GeoLayout = None + geo_parent: GeoLayout = None, ): self.geo_layouts = geo_layouts self.parent = root @@ -1073,7 +1016,7 @@ def __init__( self.col = col super().__init__(parent=geo_parent) - def MakeRt(self, name: str, root: bpy.types.Object): + def make_root_empty(self, name: str, root: bpy.types.Object): # make an empty node to act as the root of this geo layout # use this to hold a transform, or an actual cmd, otherwise rt is passed E = bpy.data.objects.new(name, None) @@ -1095,23 +1038,6 @@ def parse_level_geo(self, start: str, scene: bpy.types.Scene): self.stream = start self.parse_stream(geo_layout, start, 0) - def skip_children(self, geo_layout: list[str], head: int): - open = 0 - opened = 0 - while head < len(geo_layout): - l = geo_layout[head] - if l.startswith("GEO_OPEN_NODE"): - opened = 1 - open += 1 - if l.startswith("GEO_CLOSE_NODE"): - open -= 1 - if open == 0 and opened: - break - head += 1 - return head - - - # ------------------------------------------------------------------------ # Functions @@ -1119,12 +1045,12 @@ def skip_children(self, geo_layout: list[str], head: int): # parse aggregate files, and search for sm64 specific fast64 export name schemes def get_all_aggregates(aggregate: Path, filenames: Union[str, tuple[str]], root_path: Path) -> list[Path]: - with open(aggregate, "r", newline='') as aggregate: + with open(aggregate, "r", newline="") as aggregate: caught_files = parse_aggregate_file(aggregate, filenames, root_path) # catch fast64 includes fast64 = parse_aggregate_file(aggregate, "leveldata.inc.c", root_path) if fast64: - with open(fast64[0], "r", newline='') as fast64_dat: + with open(fast64[0], "r", newline="") as fast64_dat: caught_files.extend(parse_aggregate_file(fast64_dat, filenames, root_path)) return caught_files @@ -1140,7 +1066,7 @@ def parse_level_script(script_file: Path, scene: bpy.types.Scene, col: bpy.types Root.sm64_obj_type = "Level Root" # Now parse the script and get data about the level # Store data in attribute of a level class then assign later and return class - with open(script_file, "r", newline='') as script_file: + with open(script_file, "r", newline="") as script_file: lvl = Level(script_file, scene, Root) entry = scene.LevelImp.Entry.format(scene.LevelImp.Level) lvl.parse_level_script(entry, col=col) @@ -1169,7 +1095,7 @@ def write_geo_to_bpy( else: mesh = bpy.data.meshes.new(name) meshes[name] = mesh - [verts, tris] = f3d_dat.GetDataFromModel(m.model.strip()) + [verts, tris] = f3d_dat.get_f3d_data_from_model(m.model.strip()) mesh.from_pydata(verts, [], tris) obj = bpy.data.objects.new(m.model + " Obj", mesh) @@ -1187,7 +1113,7 @@ def write_geo_to_bpy( obj.location = m.translate obj.ignore_collision = True if name: - f3d_dat.ApplyDat(obj, mesh, layer, root_path) + f3d_dat.apply_mesh_data(obj, mesh, layer, root_path) if cleanup: # clean up after applying dat mesh.validate() @@ -1224,7 +1150,7 @@ def construct_geo_layouts_from_file(geo: TextIO, root_path: Path): geo_layout_files.extend(get_all_aggregates(file, "geo.inc.c", root_path)) geo_layout_data = {} # stores cleaned up geo layout lines for geo_file in geo_layout_files: - with open(geo_file, "r", newline='') as geo_file: + with open(geo_file, "r", newline="") as geo_file: geo_layout_data.update(get_data_types_from_file(geo_file, {"GeoLayout": ["(", ")"]})) return geo_layout_data @@ -1240,7 +1166,7 @@ def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO): "Ambient_t": [None, None], "Lights1": [None, None], }, - collated=True + collated=True, ) for key, value in gfx_dat.items(): attr = getattr(gfx, key) @@ -1280,11 +1206,11 @@ def construct_model_data_from_file(aggregate: Path, scene: bpy.types.Scene, root # Get all modeldata in the level sm64_f3d_data = SM64_F3D(scene) for model_file in model_files: - model_file = open(model_file, "r", newline='') + model_file = open(model_file, "r", newline="") construct_sm64_f3d_data_from_file(sm64_f3d_data, model_file) # Update file to have texture.inc.c textures, deal with included textures in the model.inc.c files aswell for texture_file in [*texture_files, *model_files]: - with open(texture_file, "r", newline='') as texture_file: + with open(texture_file, "r", newline="") as texture_file: # For textures, try u8, and s16 aswell sm64_f3d_data.Textures.update( get_data_types_from_file( @@ -1315,9 +1241,7 @@ def find_actor_models_from_geo( # Find DL references given a level geo file and a path to a level folder -def find_level_models_from_geo( - geo: TextIO, lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None -): +def find_level_models_from_geo(geo: TextIO, lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None): GeoLayouts = construct_geo_layouts_from_file(geo, root_path) for area_index, area in lvl.areas.items(): if col_name: @@ -1347,7 +1271,7 @@ def import_level_graphics( print(lvl.areas, aggregate) # just a try, in case you are importing from something other than base decomp repo (like RM2C output folder) try: - models.GetGenericTextures(root_path) + models.get_generic_textures(root_path) except: print("could not import genric textures, if this errors later from missing textures this may be why") lvl = write_level_to_bpy(lvl, scene, root_path, models, cleanup=cleanup) @@ -1361,7 +1285,7 @@ def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types. for col_file in collision_files: if not os.path.isfile(col_file): continue - with open(col_file, "r", newline='') as col_file: + with open(col_file, "r", newline="") as col_file: col_data.update(get_data_types_from_file(col_file, {"Collision": ["(", ")"]})) # search for the area terrain from available collision data for area in lvl.areas.values(): @@ -1380,9 +1304,9 @@ def write_level_collision_to_bpy(lvl: Level, scene: bpy.types.Scene, cleanup: bo else: col = create_collection(area.root.users_collection[0], col_name) col_parser = Collision(area.ColFile, scene.blenderToSM64Scale) - col_parser.GetCollision() + col_parser.parse_collision() name = "SM64 {} Area {} Col".format(scene.LevelImp.Level, area_index) - obj = col_parser.WriteCollision(scene, name, area.root, col=col) + obj = col_parser.write_collision(scene, name, area.root, col=col) # final operators to clean stuff up if cleanup: obj.data.validate() @@ -1439,7 +1363,7 @@ def execute(self, context): else: geo = folder / (prefix + "geo.c") leveldat = folder / (prefix + "leveldata.c") - geo = open(geo, "r", newline='') + geo = open(geo, "r", newline="") Root = bpy.data.objects.new("Empty", None) Root.name = "Actor %s" % scene.ActImp.GeoLayout rt_col.objects.link(Root) @@ -1450,7 +1374,7 @@ def execute(self, context): models = construct_model_data_from_file(leveldat, scene, folder) # just a try, in case you are importing from not the base decomp repo try: - models.GetGenericTextures(path) + models.get_generic_textures(path) except: print("could not import genric textures, if this errors later from missing textures this may be why") meshes = {} # re use mesh data when the same DL is referenced (bbh is good example) From 1a53408c1b3feba3ab1dfc548985d11e6b13afab Mon Sep 17 00:00:00 2001 From: scut Date: Fri, 7 Jul 2023 10:52:21 -0400 Subject: [PATCH 05/30] made armature exporting matching for goomba as test, with working anim imports to imported rig, switch options also import correctly. Cleaned up code more and improved object geo layout transforms as well --- fast64_internal/f3d/f3d_import.py | 76 +- fast64_internal/sm64/sm64_level_importer.py | 958 +++++++++++++++----- fast64_internal/utility_importer.py | 33 +- 3 files changed, 801 insertions(+), 266 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 509b0d762..631cbce4e 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -16,11 +16,7 @@ from numbers import Number from collections.abc import Sequence -from ..f3d.f3d_material import ( - F3DMaterialProperty, - RDPSettings, - TextureProperty -) +from ..f3d.f3d_material import F3DMaterialProperty, RDPSettings, TextureProperty from ..utility import hexOrDecInt from ..utility_importer import * @@ -29,6 +25,15 @@ # Classes # ------------------------------------------------------------------------ +# will format light struct data passed +class Lights1: + def __init__(self, name: str, data_str: str): + self.name = name + data = [eval(dat.strip()) for dat in data_str.split(",")] + self.ambient = [*data[0:3], 0xFF] + self.diffuse = [*data[3:6], 0xFF] + self.direction = data[9:12] + # this will hold tile properties class Tile: @@ -72,6 +77,9 @@ def __init__(self): self.tiles = [Tile() for a in range(8)] self.tex0 = None self.tex1 = None + self.num_lights = 1 + self.light_col = {} + self.ambient_light = tuple() # calc the hash for an f3d mat and see if its equal to this mats hash def mat_hash_f3d(self, f3d: F3DMaterialProperty): @@ -169,6 +177,7 @@ def apply_PBSDF_Mat(self, mat: bpy.types.Material, tex_path: Path, tex: Texture) return tex_node = nodes.new("ShaderNodeTexImage") links.new(pbsdf.inputs[0], tex_node.outputs[0]) # base color + links.new(pbsdf.inputs[21], tex_node.outputs[1]) # alpha color image = self.LoadTexture(0, tex_path, tex) if image: tex_node.image = image @@ -178,7 +187,7 @@ def apply_material_settings(self, mat: bpy.types.Material, tex_path: Path): self.set_register_settings(mat, f3d) self.set_textures(f3d) - + with bpy.context.temp_override(material=mat): bpy.ops.material.update_f3d_nodes() @@ -188,14 +197,14 @@ def set_register_settings(self, mat: bpy.types.Material, f3d: F3DMaterialPropert self.set_geo_mode(f3d.rdp_settings, mat) self.set_combiner(f3d) self.set_render_mode(f3d) - + def set_textures(self, f3d: F3DMaterialProperty, tex_path: Path): self.set_tex_scale(f3d) if self.tex0 and self.set_tex: self.set_tex_settings(f3d.tex0, self.load_texture(0, tex_path, self.tex0), self.tiles[0], self.tex0.Timg) if self.tex1 and self.set_tex: self.set_tex_settings(f3d.tex1, self.load_texture(0, tex_path, self.tex1), self.tiles[1], self.tex1.Timg) - + def set_fog(self, f3d: F3DMaterialProperty): if hasattr(self, "fog_position"): f3d.set_fog = True @@ -208,11 +217,14 @@ def set_fog(self, f3d: F3DMaterialProperty): f3d.fog_color = self.convert_color(self.fog_color) def set_color_registers(self, f3d: F3DMaterialProperty): - if hasattr(self, "light_col"): + if self.ambient_light: + f3d.set_ambient_from_light = False + f3d.ambient_light_color = self.convert_color(self.ambient_light) + if self.light_col: # this is a dict but I'll only use the first color for now f3d.set_lights = True if self.light_col.get(1): - f3d.default_light_color = self.convert_color(eval(self.light_col[1]).to_bytes(4, "big")) + f3d.default_light_color = self.convert_color(self.light_col[1]) if hasattr(self, "env_color"): f3d.set_env = True f3d.env_color = self.convert_color(self.env_color[-4:]) @@ -235,7 +247,9 @@ def set_tex_scale(self, f3d: F3DMaterialProperty): f3d.scale_autoprop = False f3d.tex_scale = self.tex_scale - def set_tex_settings(self, tex_prop: TextureProperty, image: bpy.types.Image, tile: Tile, tex_img: Union[Sequence, str]): + def set_tex_settings( + self, tex_prop: TextureProperty, image: bpy.types.Image, tile: Tile, tex_img: Union[Sequence, str] + ): tex_prop.tex_reference = str(tex_img) # setting prop for hash purposes tex_prop.tex_set = True tex_prop.tex = image @@ -366,6 +380,7 @@ def __init__(self, lastmat=None): self.Ambient_t = {} self.Lights1 = {} self.Textures = {} + self.NewMat = 1 if not lastmat: self.LastMat = Mat() self.LastMat.name = 0 @@ -384,6 +399,7 @@ def gsSPBranchList(self, macro: Macro): NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix ) ) + self.reset_parser(branched_dl) self.parse_stream(NewDL, branched_dl) return self.break_parse @@ -395,6 +411,7 @@ def gsSPDisplayList(self, macro: Macro): NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix ) ) + self.reset_parser(branched_dl) self.parse_stream(NewDL, branched_dl) return self.continue_parse @@ -455,16 +472,41 @@ def gsDPSetRenderMode(self, macro: Macro): self.LastMat.RenderMode = [a.strip() for a in macro.args] return self.continue_parse - # not finished yet + # The highest numbered light is always the ambient light def gsSPLight(self, macro: Macro): + self.NewMat = 1 + light = re.search("&.+\.", macro.args[0]).group()[1:-1] + light = Lights1(light, self.Lights1.get(light)[0]) + if ".a" in macro.args[0]: + self.LastMat.ambient_light = light.ambient + else: + num = re.search("_\d", macro.args[0]).group()[1] + if not num: + num = 1 + self.LastMat.light_col[num] = light.diffuse + return self.continue_parse + + # numlights0 still gives one ambient and diffuse light + def gsSPNumLights(self, macro: Macro): + self.NewMat = 1 + num = re.search("_\d", macro.args[0]).group()[1] + if not num: + num = 1 + self.LastMat.num_lights = num return self.continue_parse def gsSPLightColor(self, macro: Macro): + self.NewMat = 1 + num = re.search("_\d", macro.args[0]).group()[1] + if not num: + num = 1 + self.LastMat.light_col[num] = eval(macro.args[-1]).to_bytes(4, "big") return self.continue_parse def gsSPSetLights0(self, macro: Macro): return self.continue_parse + # not finished yet def gsSPSetLights1(self, macro: Macro): return self.continue_parse @@ -502,14 +544,6 @@ def gsSPFogPosition(self, macro: Macro): self.LastMat.fog_pos = macro.args return self.continue_parse - def gsSPLightColor(self, macro: Macro): - self.NewMat = 1 - if not hasattr(self.LastMat, "light_col"): - self.LastMat.light_col = {} - num = re.search("_\d", macro.args[0]).group()[1] - self.LastMat.light_col[num] = macro.args[-1] - return self.continue_parse - def gsDPSetPrimColor(self, macro: Macro): self.NewMat = 1 self.LastMat.prim_color = macro.args @@ -677,8 +711,6 @@ def make_new_material(self): self.NewMat = 0 self.Mats.append([len(self.Tris) - 1, self.LastMat]) self.LastMat = deepcopy(self.LastMat) # for safety - self.LastMat.name = self.num + 1 - self.num += 1 def parse_tri(self, Tri: Sequence[int]): return [self.VertBuff[a] for a in Tri] diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 106ccee70..c5bc64f9c 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -33,12 +33,15 @@ from copy import deepcopy from dataclasses import dataclass from typing import TextIO +from numbers import Number +from collections.abc import Sequence # from SM64classes import * from ..f3d.f3d_import import * from ..utility_importer import * from ..utility import ( + transform_mtx_blender_to_n64, rotate_quat_n64_to_blender, rotate_object, parentObject, @@ -548,6 +551,7 @@ def apply_PBSDF_Mat(self, mat: bpy.types.Material, textures: dict, tex_path: Pat return tex_node = nodes.new("ShaderNodeTexImage") links.new(pbsdf.inputs[0], tex_node.outputs[0]) # base color + links.new(pbsdf.inputs[21], tex_node.outputs[1]) # alpha color image = self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, tex) if image: tex_node.image = image @@ -559,13 +563,13 @@ def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_p return self.apply_PBSDF_Mat(mat, textures, tex_path, layer, self.tex0) f3d = mat.f3d_mat - + f3d.draw_layer.sm64 = layer self.set_register_settings(mat, f3d) self.set_textures(f3d, textures, tex_path) with bpy.context.temp_override(material=mat): bpy.ops.material.update_f3d_nodes() - + def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path): self.set_tex_scale(f3d) if self.tex0 and self.set_tex: @@ -573,28 +577,21 @@ def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path) f3d.tex0, self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, self.tex0), self.tiles[0], - self.tex0.Timg + self.tex0.Timg, ) if self.tex1 and self.set_tex: self.set_tex_settings( f3d.tex1, self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, self.tex1), self.tiles[1], - self.tex1.Timg + self.tex1.Timg, ) class SM64_F3D(DL): - def __init__(self, scene: bpy.types.Scene): - self.Vtx = {} - self.Gfx = {} - self.Light_t = {} - self.Ambient_t = {} - self.Lights1 = {} - self.Textures = {} + def __init__(self, scene): self.scene = scene - self.num = 0 - super().__init__() + super().__init__(lastmat=SM64_Material()) # Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file # this will add all the textures located in the /textures/ folder in decomp @@ -631,7 +628,7 @@ def get_generic_textures(self, root_path: Path): t.close() # recursively parse the display list in order to return a bunch of model data - def get_f3d_data_from_model(self, start: str): + def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None): DL = self.Gfx.get(start) self.VertBuff = [0] * 32 # If you're doing some fucky shit with a larger vert buffer it sucks to suck I guess if not DL: @@ -641,7 +638,8 @@ def get_f3d_data_from_model(self, start: str): self.UVs = [] self.VCs = [] self.Mats = [] - self.LastMat = SM64_Material() + if last_mat: + self.LastMat = last_mat self.parse_stream(DL, start) self.NewMat = 0 self.StartName = start @@ -742,15 +740,75 @@ def create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): # holds model found by geo @dataclass class ModelDat: - translate: tuple - rotate: tuple + transform: Matrix layer: int - model: str - scale: float = 1.0 + model_name: str + vertex_group_name: str = None + switch_index: int = 0 + armature_obj: bpy.types.Object = None # base class for geo layouts and armatures class GraphNodes(DataParser): + def __init__( + self, + geo_layouts: dict, + scene: bpy.types.Scene, + name: str, + col: bpy.types.Collection, + parent_bone: bpy.types.Bone = None, + geo_parent: GeoArmature = None, + stream: Any = None, + ): + self.geo_layouts = geo_layouts + self.models = [] + self.children = [] + self.scene = scene + self.stream = stream + self.render_range = None + self.parent_transform = transform_mtx_blender_to_n64() + self.last_transform = transform_mtx_blender_to_n64() + self.name = name + self.col = col + super().__init__(parent=geo_parent) + + def parse_layer(self, layer: str): + if not layer.isdigit(): + layer = Layers.get(layer) + if not layer: + layer = 1 + return layer + + @property + def ordered_name(self): + return f"{self.get_parser(self.stream).head}_{self.name}" + + def get_translation(self, trans_vector: Sequence): + translation = [float(val) for val in trans_vector] + return [translation[0], -translation[2], translation[1]] + + def get_rotation(self, rot_vector: Sequence): + rotation = Euler((math.radians(float(val)) for val in rot_vector), "ZXY") + return rotate_quat_n64_to_blender(rotation.to_quaternion()).to_euler("XYZ") + + def set_transform(self, geo_obj, translation: Sequence): + raise Exception("you must call this function from a sublcass") + + def set_geo_type(self, geo_obj: bpy.types.Object, geo_type: str): + raise Exception("you must call this function from a sublcass") + + def set_draw_layer(self, geo_obj: bpy.types.Object, layer: int): + raise Exception("you must call this function from a sublcass") + + def make_root(self, name, *args): + raise Exception("you must call this function from a sublcass") + + def setup_geo_obj(self, *args): + raise Exception("you must call this function from a sublcass") + + def add_model(self, *args): + raise Exception("you must call this function from a sublcass") + def GEO_BRANCH_AND_LINK(self, macro: Macro, depth: int): new_geo_layout = self.geo_layouts.get(macro.args[0]) if new_geo_layout: @@ -774,201 +832,175 @@ def GEO_RETURN(self, macro: Macro, depth: int): return self.break_parse def GEO_CLOSE_NODE(self, macro: Macro, depth: int): - # if there is no more open nodes, then parent this to last node - if depth: - return self.break_parse - else: - return self.continue_parse + return self.break_parse - def GEO_OPEN_NODE(self, macro: Macro, depth: int): - if self.obj: - GeoChild = GeoLayout( - self.geo_layouts, self.obj, self.scene, self.name, self.area_root, col=self.col, geo_parent=self + def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): + # translation, rotation, layer, model + geo_obj = self.add_model( + ModelDat(self.parent_transform, *macro.args), "display_list", self.display_list, macro.args[0] + ) + self.set_transform(geo_obj, self.last_transform) + return self.continue_parse + + def GEO_BILLBOARD_WITH_PARAMS_AND_DL(self, macro: Macro, depth: int): + transform = Matrix() + transform.translation = self.get_translation(macro.args[1:4]) + self.last_transform = self.parent_transform @ transform + + model = macro.args[-1] + if model != "NULL": + geo_obj = self.add_model( + ModelDat(self.last_transform, macro.args[0], model), "billboard", self.billboard, macro.args[0] ) else: - GeoChild = GeoLayout( - self.geo_layouts, self.root, self.scene, self.name, self.area_root, col=self.col, geo_parent=self - ) - GeoChild.parent_transform = self.last_transform - GeoChild.stream = self.stream - GeoChild.parse_stream(self.geo_layouts.get(self.stream), self.stream, depth + 1) - self.children.append(GeoChild) + geo_obj = self.setup_geo_obj("billboard", self.billboard, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) return self.continue_parse - # Append to models array. Only check this one for now - def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): - # translation, rotation, layer, model - self.models.append(ModelDat(*self.parent_transform, *macro.args)) + def GEO_BILLBOARD_WITH_PARAMS(self, macro: Macro, depth: int): + transform = Matrix() + transform.translation = self.get_translation(macro.args[1:4]) + self.last_transform = self.parent_transform @ transform - # shadows aren't naturally supported but we can emulate them with custom geo cmds, note: possibly changed with fast64 updates, this is old code - def GEO_SHADOW(self, macro: Macro, depth: int): - obj = self.make_root_empty(self.name + "shadow empty", self.root) - obj.sm64_obj_type = "Custom Geo Command" - obj.customGeoCommand = "GEO_SHADOW" - obj.customGeoCommandArgs = ", ".join(macro.args) + geo_obj = self.setup_geo_obj("billboard", self.billboard, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) + return self.continue_parse + + def GEO_BILLBOARD(self, macro: Macro, depth: int): + self.setup_geo_obj("billboard", self.billboard, macro.args[0]) + return self.continue_parse def GEO_ANIMATED_PART(self, macro: Macro, depth: int): # layer, translation, DL - layer = macro.args[0] - Tlate = [float(arg) / bpy.context.scene.blenderToSM64Scale for arg in macro.args[1:4]] - Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - model = args[-1] - self.last_transform = [Tlate, self.last_transform[1]] - if model.strip() != "NULL": - self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) + transform = Matrix() + transform.translation = self.get_translation(macro.args[1:4]) + self.last_transform = self.parent_transform @ transform + model = macro.args[-1] + + if model != "NULL": + geo_obj = self.add_model( + ModelDat(self.last_transform, macro.args[0], model), "bone", self.animated_part, macro.args[0] + ) else: - obj = self.make_root_empty(self.name + "animated empty", self.root) - obj.location = Tlate + geo_obj = self.setup_geo_obj("bone", self.animated_part, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) + return self.continue_parse def GEO_ROTATION_NODE(self, macro: Macro, depth: int): - obj = self.GEO_ROTATE(macro) - if obj: - obj.sm64_obj_type = "Geo Rotation Node" + geo_obj = self.GEO_ROTATE(macro) + if geo_obj: + self.set_geo_type(geo_obj, self.rotate) + return self.continue_parse def GEO_ROTATE(self, macro: Macro, depth: int): - layer = macro.args[0] - Rotate = [math.radians(float(arg)) for arg in macro.args[1:4]] - Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.last_transform = [[0, 0, 0], Rotate] - self.last_transform = [[0, 0, 0], self.last_transform[1]] - obj = self.make_root_empty(self.name + "rotate", self.root) - obj.rotation_euler = Rotate - obj.sm64_obj_type = "Geo Translate/Rotate" - return obj + transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector()) + self.last_transform = self.parent_transform @ transform + return self.setup_geo_obj("rotate", self.translate_rotate, macro.args[0]) def GEO_ROTATION_NODE_WITH_DL(self, macro: Macro, depth: int): - obj = self.GEO_ROTATE_WITH_DL(macro) - if obj: - obj.sm64_obj_type = "Geo Translate/Rotate" + geo_obj = self.GEO_ROTATE_WITH_DL(macro) + return self.continue_parse def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): - layer = macro.args[0] - Rotate = [math.radians(float(arg)) for arg in macro.args[1:4]] - Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.last_transform = [[0, 0, 0], Rotate] + transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector()) + self.last_transform = self.parent_transform @ transform + model = args[-1] - self.last_transform = [[0, 0, 0], self.last_transform[1]] - if model.strip() != "NULL": - self.models.append(ModelDat([0, 0, 0], Rotate, layer, model)) + if model != "NULL": + geo_obj = self.add_model( + ModelDat(self.last_transform, macro.args[0], model), "rotate", self.translate_rotate, macro.args[0] + ) else: - obj = self.make_root_empty(self.name + "rotate", self.root) - obj.rotation_euler = Rotate - obj.sm64_obj_type = "Geo Translate/Rotate" - return obj + geo_obj = self.setup_geo_obj("rotate", self.translate_rotate, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) + return geo_obj def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): - layer = macro.args[0] - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in macro.args[1:4]] - Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - Rotate = [math.radians(float(arg)) for arg in macro.args[4:7]] - Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.last_transform = [Tlate, Rotate] + transform = Matrix.LocRotScale( + self.get_translation(macro.args[1:4]), self.get_rotation(macro.args[4:7]), Vector() + ) + self.last_transform = self.parent_transform @ transform + model = args[-1] - self.last_transform = [Tlate, self.last_transform[1]] - if model.strip() != "NULL": - self.models.append(ModelDat(Tlate, Rotate, layer, model)) + if model != "NULL": + geo_obj = self.add_model( + ModelDat(self.last_transform, macro.args[0], model), + "trans/rotate", + self.translate_rotate, + macro.args[0], + ) else: - obj = self.make_root_empty(self.name + "translate rotate", self.root) - obj.location = Tlate - obj.rotation_euler = Rotate - obj.sm64_obj_type = "Geo Translate/Rotate" + geo_obj = self.setup_geo_obj("trans/rotate", self.translate_rotate, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) + return self.continue_parse def GEO_TRANSLATE_ROTATE(self, macro: Macro, depth: int): - Tlate = [float(arg) / bpy.context.scene.blenderToSM64Scale for arg in macro.args[1:4]] - Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - Rotate = [math.radians(float(arg)) for arg in macro.args[4:7]] - Rotate = rotate_quat_n64_to_blender(Euler(Rotate, "ZXY").to_quaternion()).to_euler("XYZ") - self.last_transform = [Tlate, Rotate] - obj = self.make_root_empty(self.name + "translate", self.root) - obj.location = Tlate - obj.rotation_euler = Rotate - obj.sm64_obj_type = "Geo Translate/Rotate" + transform = Matrix.LocRotScale( + self.get_translation(macro.args[1:4]), self.get_rotation(macro.args[1:4]), Vector() + ) + self.last_transform = self.parent_transform @ transform + + geo_obj = self.setup_geo_obj("trans/rotate", self.translate_rotate, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) + return self.continue_parse def GEO_TRANSLATE_WITH_DL(self, macro: Macro, depth: int): - obj = self.GEO_TRANSLATE_NODE_WITH_DL(macro) - if obj: - obj.sm64_obj_type = "Geo Translate/Rotate" + geo_obj = self.GEO_TRANSLATE_NODE_WITH_DL(macro) + if geo_obj: + self.set_geo_type(geo_obj, self.translate_rotate) + return self.continue_parse def GEO_TRANSLATE_NODE_WITH_DL(self, macro: Macro, depth: int): - # translation, layer, model - layer = macro.args[0] - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in macro.args[1:4]] - Tlate = [Tlate[0], -Tlate[2], Tlate[1]] + transform = Matrix() + transform.translation = self.get_translation(macro.args[1:4]) + self.last_transform = self.parent_transform @ transform + model = macro.args[-1] - self.last_transform = [Tlate, (0, 0, 0)] - if model.strip() != "NULL": - self.models.append(ModelDat(Tlate, (0, 0, 0), layer, model)) + if model != "NULL": + geo_obj = self.add_model( + ModelDat(self.last_transform, macro.args[0], model), "translate", self.translate, macro.args[0] + ) else: - obj = self.make_root_empty(self.name + "translate", self.root) - obj.location = Tlate - obj.rotation_euler = Rotate - obj.sm64_obj_type = "Geo Translate Node" - return obj + geo_obj = self.setup_geo_obj("translate", self.translate, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) + return geo_obj def GEO_TRANSLATE(self, macro: Macro, depth: int): obj = self.GEO_TRANSLATE_NODE(macro) if obj: - obj.sm64_obj_type = "Geo Translate/Rotate" + self.set_geo_type(geo_obj, self.translate_rotate) + return self.continue_parse def GEO_TRANSLATE_NODE(self, macro: Macro, depth: int): - Tlate = [float(a) / bpy.context.scene.blenderToSM64Scale for a in macro.args[1:4]] - Tlate = [Tlate[0], -Tlate[2], Tlate[1]] - self.last_transform = [Tlate, self.last_transform[1]] - obj = self.make_root_empty(self.name + "translate", self.root) - obj.location = Tlate - obj.sm64_obj_type = "Geo Translate Node" - return obj + transform = Matrix() + transform.translation = self.get_translation(macro.args[1:4]) + self.last_transform = self.parent_transform @ transform + + geo_obj = self.setup_geo_obj("translate", self.translate, macro.args[0]) + self.set_transform(geo_obj, self.last_transform) + return geo_obj def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): scale = eval(macro.args[1]) / 0x10000 - model = macro.args[-1] - self.last_transform = [(0, 0, 0), self.last_transform[1]] - self.models.append(ModelDat((0, 0, 0), (0, 0, 0), layer, model, scale=scale)) + self.last_transform = scale * self.last_transform - def GEO_SCALE(self, macro: Macro, depth: int): - obj = self.make_root_empty(self.name + "scale", self.root) - scale = eval(macro.args[1]) / 0x10000 - obj.scale = (scale, scale, scale) - obj.sm64_obj_type = "Geo Scale" + model = macro.args[-1] + geo_obj = self.add_model(ModelDat(self.last_transform, macro.args[0], macro.args[-1])) + self.set_transform(geo_obj, self.last_transform) + return self.continue_parse def GEO_ASM(self, macro: Macro, depth: int): - obj = self.make_root_empty(self.name + "asm", self.root) - asm = self.obj.fast64.sm64.geo_asm - self.obj.sm64_obj_type = "Geo ASM" + geo_obj = self.setup_geo_obj("asm", self.asm) + # probably will need to be overridden by each subclass + asm = geo_obj.fast64.sm64.geo_asm asm.param = macro.args[0] asm.func = macro.args[1] - - def GEO_SWITCH_CASE(self, macro: Macro, depth: int): - obj = self.make_root_empty(self.name + "switch", self.root) - Switch = self.obj - Switch.sm64_obj_type = "Switch" - Switch.switchParam = eval(macro.args[0]) - Switch.switchFunc = macro.args[1] + return self.continue_parse # This has to be applied to meshes def GEO_RENDER_RANGE(self, macro: Macro, depth: int): self.render_range = macro.args - - # can only apply type to area root - def GEO_CAMERA(self, macro: Macro, depth: int): - self.area_root.camOption = "Custom" - self.area_root.camType = macro.args[0] - - # make better - def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): - self.area_root.camOption = "Custom" - self.area_root.camType = macro.args[0] - - # Geo backgrounds is pointless because the only background possible is the one - # loaded in the level script. This is the only override - def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): - self.area_root.areaOverrideBG = True - color = eval(macro.args[0]) - A = color & 1 - B = (color & 0x3E) > 1 - G = (color & (0x3E << 5)) >> 6 - R = (color & (0x3E << 10)) >> 11 - self.area_root.areaBGColor = (R / 0x1F, G / 0x1F, B / 0x1F, A) + return self.continue_parse # these have no affect on the bpy def GEO_BACKGROUND(self, macro: Macro, depth: int): @@ -986,44 +1018,91 @@ def GEO_NODE_ORTHO(self, macro: Macro, depth: int): def GEO_RENDER_OBJ(self, macro: Macro, depth: int): return self.continue_parse + # These need special bhv for each type + def GEO_SCALE(self, macro: Macro, depth: int): + raise Exception("you must call this function from a sublcass") + + def GEO_SWITCH_CASE(self, macro: Macro, depth: int): + raise Exception("you must call this function from a sublcass") + + def GEO_SHADOW(self, macro: Macro, depth: int): + raise Exception("you must call this function from a sublcass") + + def GEO_CAMERA(self, macro: Macro, depth: int): + raise Exception("you must call this function from a sublcass") + + def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): + raise Exception("you must call this function from a sublcass") + + def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): + raise Exception("you must call this function from a sublcass") + class GeoLayout(GraphNodes): + switch = "Switch" + translate_rotate = "Geo Translate/Rotat" + translate = "Geo Translate Node" + rotate = "Geo Rotation Node" + billboard = "Geo Billboard" + display_list = "Geo Displaylist" + shadow = "Custom Geo Command" + asm = "Geo ASM" + scale = "Geo Scale" + animated_part = "Geo Translate Node" + custom_animated = "Custom Geo Command" + custom = "Custom Geo Command" + def __init__( self, geo_layouts: dict, root: bpy.types.Object, scene: bpy.types.Scene, - name, + name: str, area_root: bpy.types.Object, col: bpy.types.Collection = None, geo_parent: GeoLayout = None, + stream: Any = None, ): - self.geo_layouts = geo_layouts self.parent = root - self.models = [] - self.children = [] - self.scene = scene - self.render_range = None self.area_root = area_root # for properties that can only be written to area self.root = root - self.parent_transform = [[0, 0, 0], [0, 0, 0]] - self.last_transform = [[0, 0, 0], [0, 0, 0]] - self.name = name self.obj = None # last object on this layer of the tree, will become parent of next child if not col: - self.col = area_root.users_collection[0] + col = area_root.users_collection[0] else: - self.col = col - super().__init__(parent=geo_parent) + col = col + super().__init__(geo_layouts, scene, name, col, geo_parent=geo_parent, stream=stream) + + def set_transform(self, geo_obj: bpy.types.Object, transform: Matrix): + if not geo_obj: + return + geo_obj.matrix_world = ( + geo_obj.matrix_world @ transform_matrix_to_bpy(transform) * (1 / self.scene.blenderToSM64Scale) + ) - def make_root_empty(self, name: str, root: bpy.types.Object): - # make an empty node to act as the root of this geo layout - # use this to hold a transform, or an actual cmd, otherwise rt is passed - E = bpy.data.objects.new(name, None) - self.obj = E - self.col.objects.link(E) - parentObject(root, E) - return E + def set_geo_type(self, geo_obj: bpy.types.Object, geo_cmd: str): + geo_obj.sm64_obj_type = geo_cmd + + def set_draw_layer(self, geo_obj: bpy.types.Object, layer: int): + geo_obj.draw_layer_static = self.geo_armature(layer) + + # make an empty node to act as the root of this geo layout + # use this to hold a transform, or an actual cmd, otherwise rt is passed + def make_root(self, name: str, parent_obj: bpy.types.Object): + self.obj = bpy.data.objects.new(name, None) + self.col.objects.link(self.obj) + parentObject(parent_obj, self.obj) + return self.obj + + def setup_geo_obj(self, obj_name: str, geo_cmd: str, layer: int = None): + geo_obj = self.make_root(f"{self.ordered_name} {obj_name}", self.root) + self.set_geo_type(geo_obj, "Geo Billboard") + if layer: + self.set_draw_layer(geo_obj, layer) + return geo_obj + + def add_model(self, model_data: ModelDat, *args): + self.models.append(model_data) def parse_level_geo(self, start: str, scene: bpy.types.Scene): geo_layout = self.geo_layouts.get(start) @@ -1038,6 +1117,278 @@ def parse_level_geo(self, start: str, scene: bpy.types.Scene): self.stream = start self.parse_stream(geo_layout, start, 0) + def GEO_SCALE(self, macro: Macro, depth: int): + scale = eval(macro.args[1]) / 0x10000 + geo_obj = self.setup_geo_obj("scale", self.scale, macro.args[0]) + geo_obj.scale = (scale, scale, scale) + return self.continue_parse + + # shadows aren't naturally supported but we can emulate them with custom geo cmds + # note: possibly changed with fast64 updates + def GEO_SHADOW(self, macro: Macro, depth: int): + geo_obj = self.setup_geo_obj("shadow empty", self.shadow) + # probably won't work in armatures?? + geo_obj.customGeoCommand = "GEO_SHADOW" + geo_obj.customGeoCommandArgs = ", ".join(macro.args) + return self.continue_parse + + def GEO_SWITCH_CASE(self, macro: Macro, depth: int): + geo_obj = self.setup_geo_obj("switch", self.switch) + # probably will need to be overridden by each subclass + geo_obj.switchParam = eval(macro.args[0]) + geo_obj.switchFunc = macro.args[1] + return self.continue_parse + + # This has to be applied to meshes + def GEO_RENDER_RANGE(self, macro: Macro, depth: int): + self.render_range = macro.args + return self.continue_parse + + # can only apply type to area root + def GEO_CAMERA(self, macro: Macro, depth: int): + self.area_root.camOption = "Custom" + self.area_root.camType = macro.args[0] + return self.continue_parse + + # make better + def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): + self.area_root.camOption = "Custom" + self.area_root.camType = macro.args[0] + return self.continue_parse + + def GEO_OPEN_NODE(self, macro: Macro, depth: int): + if self.obj: + GeoChild = GeoLayout( + self.geo_layouts, + self.obj, + self.scene, + self.name, + self.area_root, + col=self.col, + geo_parent=self, + stream=self.stream, + ) + else: + GeoChild = GeoLayout( + self.geo_layouts, + self.root, + self.scene, + self.name, + self.area_root, + col=self.col, + geo_parent=self, + stream=self.stream, + ) + GeoChild.parent_transform = self.last_transform + GeoChild.parse_stream(self.geo_layouts.get(self.stream), self.stream, depth + 1) + self.children.append(GeoChild) + return self.continue_parse + + +class GeoArmature(GraphNodes): + switch = "Switch" + start = "Start" + translate_rotate = "TranslateRotate" + translate = "Translate" + rotate = "Rotate" + billboard = "Billboard" + display_list = "DisplayList" + shadow = "Shadow" + asm = "Function" + held_object = "HeldObject" + scale = "Scale" + render_area = "StartRenderArea" + animated_part = "DisplayListWithOffset" + custom_animated = "CustomAnimated" + custom = "CustomNonAnimated" + + def __init__( + self, + geo_layouts: dict, + armature_obj: bpy.types.Armature, + scene: bpy.types.Scene, + name: str, + col: bpy.types.Collection, + is_switch_child: bool = False, + parent_bone: bpy.types.Bone = None, + geo_parent: GeoArmature = None, + switch_armatures: dict[int, bpy.types.Object] = None, + stream: Any = None, + ): + self.armature = armature_obj + self.parent_bone = None if not parent_bone else parent_bone.name + self.bone = None + self.is_switch_child = is_switch_child + self.switch_index = 0 + if not switch_armatures: + self.switch_armatures = dict() + else: + self.switch_armatures = switch_armatures + super().__init__(geo_layouts, scene, name, col, geo_parent=geo_parent, stream=stream) + + def enter_edit_mode(self, geo_armature: bpy.types.Object): + geo_armature.select_set(True) + bpy.context.view_layer.objects.active = geo_armature + bpy.ops.object.mode_set(mode="EDIT", toggle=False) + + def get_or_init_geo_armature(self): + # if not the first child, make a new armature object and switch option root bone + if self.switch_index > 0 and not self.switch_armatures.get(self.switch_index, None): + name = f"{self.ordered_name} switch_option" + switch_armature = bpy.data.objects.new(name, bpy.data.armatures.new(name)) + self.col.objects.link(switch_armature) + self.switch_armatures[self.switch_index] = switch_armature + + self.enter_edit_mode(switch_armature) + edit_bone = switch_armature.data.edit_bones.new(name) + eb_name = edit_bone.name + # give it a non zero length + edit_bone.head = (0, 0, 0) + edit_bone.tail = (0, 0, 0.1) + bpy.ops.object.mode_set(mode="OBJECT", toggle=False) + self.parent_bone = name + switch_opt_bone = switch_armature.data.bones[name] + self.set_geo_type(switch_opt_bone, "SwitchOption") + # add switch option and set to mesh override + option = switch_opt_bone.switch_options.add() + option.switchType = "Mesh" + option.optionArmature = switch_armature + elif self.switch_armatures: + switch_armature = self.switch_armatures.get(self.switch_index, self.armature) + else: + switch_armature = self.armature + return switch_armature + + def set_transform(self, geo_bone: bpy.types.Bone, transform: Matrix): + # only the position of the head really matters, so the tail + # will take an ad hoc position of 1 above the head + name = geo_bone.name + self.enter_edit_mode(armature_obj := self.get_or_init_geo_armature()) + edit_bone = armature_obj.data.edit_bones.get(name, None) + location = transform_matrix_to_bpy(transform).to_translation() * (1 / self.scene.blenderToSM64Scale) + print(edit_bone, name, armature_obj) + edit_bone.head = location + edit_bone.tail = location + Vector((0, 0, 1)) + bpy.ops.object.mode_set(mode="OBJECT", toggle=False) + # due to blender ptr memes, swapping between edit and obj mode + # will mutate an attr, because the data struct self.bones is rebuilt + # or something idk, and now where the previous bone was is replaced by + # a new one, so I must retrieve it again + self.bone = armature_obj.data.bones[name] + # set the rotation mode + armature_obj.pose.bones[name].rotation_mode = "XYZ" + if self.is_switch_child: + self.switch_index += 1 + + def set_geo_type(self, geo_bone: bpy.types.Bone, geo_cmd: str): + geo_bone.geo_cmd = geo_cmd + + def set_draw_layer(self, geo_bone: bpy.types.Bone, layer: int): + geo_bone.draw_layer = str(self.parse_layer(layer)) + + def make_root(self, name: str): + self.enter_edit_mode(armature_obj := self.get_or_init_geo_armature()) + edit_bone = armature_obj.data.edit_bones.new(name) + eb_name = edit_bone.name + # give it a non zero length + edit_bone.head = (0, 0, 0) + edit_bone.tail = (0, 0, 1) + if self.parent_bone: + edit_bone.parent = armature_obj.data.edit_bones.get(self.parent_bone) + bpy.ops.object.mode_set(mode="OBJECT", toggle=False) + self.bone = armature_obj.data.bones[name] + return self.bone + + def setup_geo_obj(self, obj_name: str, geo_cmd: str, layer: int = None): + geo_bone = self.make_root(f"{self.ordered_name} {obj_name}") + self.set_geo_type(geo_bone, geo_cmd) + if layer: + self.set_draw_layer(geo_bone, layer) + return geo_bone + + def add_model(self, model_data: ModelDat, obj_name: str, geo_cmd: str, layer: int = None): + ind = self.get_parser(self.stream).head + self.models.append(model_data) + model_data.vertex_group_name = f"{self.ordered_name} {obj_name} {model_data.model_name}" + model_data.switch_index = self.switch_index + return self.setup_geo_obj(f"{obj_name} {model_data.model_name}", geo_cmd, layer) + + def parse_armature(self, start: str, scene: bpy.types.Scene): + geo_layout = self.geo_layouts.get(start) + if not geo_layout: + raise Exception( + "Could not find geo layout {} from levels/{}/{}geo.c".format( + start, scene.LevelImp.Level, scene.LevelImp.Prefix + ) + ) + bpy.context.view_layer.objects.active = self.get_or_init_geo_armature() + self.stream = start + self.parse_stream(geo_layout, start, 0) + + def GEO_SHADOW(self, macro: Macro, depth: int): + geo_bone = self.setup_geo_obj("shadow", self.shadow) + geo_bone.shadow_solidity = hexOrDecInt(macro.args[1]) / 255 + geo_bone.shadow_scale = hexOrDecInt(macro.args[2]) + return self.continue_parse + + def GEO_SWITCH_CASE(self, macro: Macro, depth: int): + geo_bone = self.setup_geo_obj("switch", self.switch) + # probably will need to be overridden by each subclass + geo_bone.func_param = eval(macro.args[0]) + geo_bone.geo_func = macro.args[1] + return self.continue_parse + + def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): + scale = eval(macro.args[1]) / 0x10000 + self.last_transform = [(0, 0, 0), self.last_transform[1]] + + model = macro.args[-1] + geo_obj = self.add_model( + ModelDat((0, 0, 0), (0, 0, 0), macro.args[0], macro.args[-1], scale=scale), + "scale", + self.scale, + macro.args[0], + ) + self.set_transform(geo_obj, self.last_transform) + return self.continue_parse + + def GEO_SCALE(self, macro: Macro, depth: int): + scale = eval(macro.args[1]) / 0x10000 + + geo_bone = self.setup_geo_obj("scale", self.scale, macro.args[0]) + geo_bone.geo_scale = scale + return self.continue_parse + + def GEO_OPEN_NODE(self, macro: Macro, depth: int): + if self.bone: + GeoChild = GeoArmature( + self.geo_layouts, + self.get_or_init_geo_armature(), + self.scene, + self.name, + self.col, + is_switch_child=(self.bone.geo_cmd == self.switch), + parent_bone=self.bone, + geo_parent=self, + stream=self.stream, + switch_armatures=self.switch_armatures, + ) + else: + GeoChild = GeoArmature( + self.geo_layouts, + self.get_or_init_geo_armature(), + self.scene, + self.name, + self.col, + geo_parent=self, + stream=self.stream, + switch_armatures=self.switch_armatures, + ) + GeoChild.parent_transform = self.last_transform + GeoChild.parse_stream(self.geo_layouts.get(self.stream), self.stream, depth + 1) + self.children.append(GeoChild) + return self.continue_parse + # ------------------------------------------------------------------------ # Functions @@ -1079,53 +1430,135 @@ def write_level_objects(lvl: Level, col_name: str = None): area.place_objects(col_name=col_name) +# from a geo layout, create all the mesh's +def write_armature_to_bpy( + geo_armature: GeoArmature, + scene: bpy.types.Scene, + f3d_dat: SM64_F3D, + root_path: Path, + parsed_model_data: dict, + cleanup: bool = True, +): + parsed_model_data = recurse_armature(geo_armature, scene, f3d_dat, root_path, parsed_model_data, cleanup=cleanup) + + objects_by_armature = dict() + for model_dat in parsed_model_data.values(): + if not objects_by_armature.get(model_dat.armature_obj, None): + objects_by_armature[model_dat.armature_obj] = [model_dat.object] + else: + objects_by_armature[model_dat.armature_obj].append(model_dat.object) + + for armature_obj, objects in objects_by_armature.items(): + # I don't really know the specific override needed for this to work + override = {**bpy.context.copy(), "selected_editable_objects": objects, "active_object": objects[0]} + with bpy.context.temp_override(**override): + bpy.ops.object.join() + + obj = objects[0] + parentObject(armature_obj, obj) + obj.scale *= 1 / scene.blenderToSM64Scale + rotate_object(-90, obj) + obj.ignore_collision = True + # armature deform + mod = obj.modifiers.new("deform", "ARMATURE") + mod.object = geo_armature.armature + + +def apply_mesh_data( + f3d_dat: SM64_F3D, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, root_path: Path, cleanup: bool = True +): + f3d_dat.apply_mesh_data(obj, mesh, layer, root_path) + if cleanup: + mesh = obj.data + # clean up after applying dat + mesh.validate() + mesh.update(calc_edges=True) + # final operators to clean stuff up + # shade smooth + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.shade_smooth() + bpy.ops.object.mode_set(mode="EDIT") + bpy.ops.mesh.remove_doubles() + bpy.ops.object.mode_set(mode="OBJECT") + + +def recurse_armature( + geo_armature: GeoArmature, + scene: bpy.types.Scene, + f3d_dat: SM64_F3D, + root_path: Path, + parsed_model_data: dict, + cleanup: bool = True, +): + if geo_armature.models: + # create a mesh for each one + for model_data in geo_armature.models: + name = f"{model_data.model_name} data" + if name in parsed_model_data.keys(): + mesh = parsed_model_data[name].mesh + name = 0 + else: + mesh = bpy.data.meshes.new(name) + model_data.mesh = mesh + parsed_model_data[name] = model_data + [verts, tris] = f3d_dat.get_f3d_data_from_model(model_data.model_name) + mesh.from_pydata(verts, [], tris) + + obj = bpy.data.objects.new(f"{model_data.model_name} obj", mesh) + + obj.matrix_world = transform_matrix_to_bpy(model_data.transform) * (1 / scene.blenderToSM64Scale) + + model_data.object = obj + geo_armature.col.objects.link(obj) + if model_data.vertex_group_name: + vertex_group = obj.vertex_groups.new(name=model_data.vertex_group_name) + vertex_group.add([vert.index for vert in obj.data.vertices], 1, "ADD") + if model_data.switch_index: + model_data.armature_obj = geo_armature.switch_armatures[model_data.switch_index] + else: + model_data.armature_obj = geo_armature.armature + + if name: + layer = geo_armature.parse_layer(model_data.layer) + apply_mesh_data(f3d_dat, obj, mesh, layer, root_path, cleanup) + + if not geo_armature.children: + return parsed_model_data + for arm in geo_armature.children: + parsed_model_data = recurse_armature(arm, scene, f3d_dat, root_path, parsed_model_data, cleanup=cleanup) + return parsed_model_data + + # from a geo layout, create all the mesh's def write_geo_to_bpy( geo: GeoLayout, scene: bpy.types.Scene, f3d_dat: SM64_F3D, root_path: Path, meshes: dict, cleanup: bool = True ): if geo.models: - rt = geo.root - col = geo.col # create a mesh for each one. - for m in geo.models: - name = m.model + " Data" + for model_data in geo.models: + name = f"{model_data.model_name} data" if name in meshes.keys(): mesh = meshes[name] name = 0 else: mesh = bpy.data.meshes.new(name) meshes[name] = mesh - [verts, tris] = f3d_dat.get_f3d_data_from_model(m.model.strip()) + [verts, tris] = f3d_dat.get_f3d_data_from_model(model_data.model_name) mesh.from_pydata(verts, [], tris) - obj = bpy.data.objects.new(m.model + " Obj", mesh) - layer = m.layer - if not layer.isdigit(): - layer = Layers.get(layer) - if not layer: - layer = 1 - obj.draw_layer_static = layer - col.objects.link(obj) - parentObject(rt, obj) - rotate_object(-90, obj) - scale = m.scale / scene.blenderToSM64Scale - obj.scale = [scale, scale, scale] - obj.location = m.translate + obj = bpy.data.objects.new(f"{model_data.model_name} obj", mesh) + geo.col.objects.link(obj) + parentObject(geo.root, obj, keep=1) + + obj.matrix_world = transform_matrix_to_bpy(model_data.transform) * (1 / scene.blenderToSM64Scale) + obj.ignore_collision = True + obj.draw_layer_static = geo_armature.parse_layer(model_data.layer) + if name: - f3d_dat.apply_mesh_data(obj, mesh, layer, root_path) - if cleanup: - # clean up after applying dat - mesh.validate() - mesh.update(calc_edges=True) - # final operators to clean stuff up - # shade smooth - obj.select_set(True) - bpy.context.view_layer.objects.active = obj - bpy.ops.object.shade_smooth() - bpy.ops.object.mode_set(mode="EDIT") - bpy.ops.mesh.remove_doubles() - bpy.ops.object.mode_set(mode="OBJECT") + apply_mesh_data(f3d, obj, mesh, layer, root_path, cleanup) + if not geo.children: return for g in geo.children: @@ -1135,14 +1568,13 @@ def write_geo_to_bpy( # write the gfx for a level given the level data, and f3d data def write_level_to_bpy(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: SM64_F3D, cleanup: bool = True): for area in lvl.areas.values(): - print(area, area.geo) write_geo_to_bpy(area.geo, scene, f3d_dat, root_path, dict(), cleanup=cleanup) return lvl # given a geo.c file and a path, return cleaned up geo layouts in a dict -def construct_geo_layouts_from_file(geo: TextIO, root_path: Path): - geo_layout_files = get_all_aggregates(geo, "geo.inc.c", root_path) +def construct_geo_layouts_from_file(geo_path: Path, root_path: Path): + geo_layout_files = get_all_aggregates(geo_path, "geo.inc.c", root_path) if not geo_layout_files: return # because of fast64, these can be recursively defined (though I expect only a depth of one) @@ -1227,17 +1659,31 @@ def construct_model_data_from_file(aggregate: Path, scene: bpy.types.Scene, root # Parse an aggregate group file or level data file for geo layouts def find_actor_models_from_geo( - geo: TextIO, - Layout: str, + geo_path: Path, + layout_name: str, scene: bpy.types.Scene, - rt: bpy.types.Object, + root_obj: bpy.types.Object, root_path: Path, col: bpy.types.Collection = None, ): - GeoLayouts = construct_geo_layouts_from_file(geo, root_path) - Geo = GeoLayout(GeoLayouts, rt, scene, "{}".format(Layout), rt, col=col) - Geo.parse_level_geo(Layout, scene) - return Geo + geo_layout_dict = construct_geo_layouts_from_file(geo_path, root_path) + geo_layout = GeoLayout(geo_layout_dict, root_obj, scene, "{}".format(layout_name), root_obj, col=col) + geo_layout.parse_level_geo(layout_name, scene) + return geo_layout + + +def find_armature_models_from_geo( + geo_path: Path, + layout_name: str, + scene: bpy.types.Scene, + armature_obj: bpy.types.Armature, + root_path: Path, + col: bpy.types.Collection, +): + geo_layout_dict = construct_geo_layouts_from_file(geo_path, root_path) + geo_armature = GeoArmature(geo_layout_dict, armature_obj, scene, "{}".format(layout_name), col, stream=layout_name) + geo_armature.parse_armature(layout_name, scene) + return geo_armature # Find DL references given a level geo file and a path to a level folder @@ -1268,7 +1714,6 @@ def import_level_graphics( ): lvl = find_level_models_from_geo(geo, lvl, scene, root_path, col_name=col_name) models = construct_model_data_from_file(aggregate, scene, root_path) - print(lvl.areas, aggregate) # just a try, in case you are importing from something other than base decomp repo (like RM2C output folder) try: models.get_generic_textures(root_path) @@ -1354,22 +1799,60 @@ def execute(self, context): scene.gameEditorMode = "SM64" path = Path(bpy.path.abspath(scene.decompPath)) folder = path / scene.ActImp.FolderType - Layout = scene.ActImp.GeoLayout + layout_name = scene.ActImp.GeoLayout + prefix = scene.ActImp.Prefix + # different name schemes and I have no clean way to deal with it + if "actor" in scene.ActImp.FolderType: + geo_path = folder / (prefix + "_geo.c") + leveldat = folder / (prefix + ".c") + else: + geo_path = folder / (prefix + "geo.c") + leveldat = folder / (prefix + "leveldata.c") + root_obj = bpy.data.objects.new("Empty", None) + root_obj.name = f"Actor {scene.ActImp.GeoLayout}" + rt_col.objects.link(root_obj) + + geo_layout = find_actor_models_from_geo( + geo_path, layout_name, scene, root_obj, folder, col=rt_col + ) # return geo layout class and write the geo layout + models = construct_model_data_from_file(leveldat, scene, folder) + # just a try, in case you are importing from not the base decomp repo + try: + models.get_generic_textures(path) + except: + print("could not import genric textures, if this errors later from missing textures this may be why") + write_geo_to_bpy(geo_layout, scene, models, folder, {}, cleanup=self.cleanup) + return {"FINISHED"} + + +class SM64_OT_Armature_Import(Operator): + bl_label = "Import Armature" + bl_idname = "wm.sm64_import_armature" + bl_options = {"REGISTER", "UNDO"} + + cleanup: bpy.props.BoolProperty(name="Cleanup Mesh", default=1) + + def execute(self, context): + scene = context.scene + rt_col = context.collection + scene.gameEditorMode = "SM64" + path = Path(bpy.path.abspath(scene.decompPath)) + folder = path / scene.ActImp.FolderType + layout_name = scene.ActImp.GeoLayout prefix = scene.ActImp.Prefix # different name schemes and I have no clean way to deal with it if "actor" in scene.ActImp.FolderType: - geo = folder / (prefix + "_geo.c") + geo_path = folder / (prefix + "_geo.c") leveldat = folder / (prefix + ".c") else: - geo = folder / (prefix + "geo.c") + geo_path = folder / (prefix + "geo.c") leveldat = folder / (prefix + "leveldata.c") - geo = open(geo, "r", newline="") - Root = bpy.data.objects.new("Empty", None) - Root.name = "Actor %s" % scene.ActImp.GeoLayout - rt_col.objects.link(Root) + name = f"Actor {scene.ActImp.GeoLayout}" + armature_obj = bpy.data.objects.new(name, bpy.data.armatures.new(name)) + rt_col.objects.link(armature_obj) - Geo = find_actor_models_from_geo( - geo, Layout, scene, Root, folder, col=rt_col + geo_armature = find_armature_models_from_geo( + geo_path, layout_name, scene, armature_obj, folder, col=rt_col ) # return geo layout class and write the geo layout models = construct_model_data_from_file(leveldat, scene, folder) # just a try, in case you are importing from not the base decomp repo @@ -1377,8 +1860,7 @@ def execute(self, context): models.get_generic_textures(path) except: print("could not import genric textures, if this errors later from missing textures this may be why") - meshes = {} # re use mesh data when the same DL is referenced (bbh is good example) - write_geo_to_bpy(Geo, scene, models, folder, meshes, cleanup=self.cleanup) + write_armature_to_bpy(geo_armature, scene, models, folder, {}, cleanup=self.cleanup) return {"FINISHED"} @@ -1612,6 +2094,7 @@ def draw(self, context): layout.prop(ActImp, "Version") layout.prop(ActImp, "Target") layout.operator("wm.sm64_import_actor") + layout.operator("wm.sm64_import_armature") classes = ( @@ -1622,6 +2105,7 @@ def draw(self, context): SM64_OT_Lvl_Col_Import, SM64_OT_Obj_Import, SM64_OT_Act_Import, + SM64_OT_Armature_Import, Level_PT_Panel, Actor_PT_Panel, ) diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index dc0fef4a7..e40283a6d 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -5,7 +5,10 @@ from functools import partial from dataclasses import dataclass from pathlib import Path -from typing import TextIO, Any, Sequence, Union +from typing import TextIO, Any, Union +from numbers import Number +from collections.abc import Sequence +from .utility import transform_mtx_blender_to_n64 @dataclass @@ -18,6 +21,7 @@ def __post_init__(self): self.args = [arg.strip() for arg in self.args] self.cmd = self.cmd.strip() + @dataclass class Parser: cur_stream: Sequence[Any] @@ -28,6 +32,7 @@ def stream(self): self.head += 1 yield self.cur_stream[self.head] + # basic methods and utility to parse scripts or data streams of bytecode class DataParser: @@ -55,18 +60,24 @@ def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs flow_status = func(cur_macro, *args, **kwargs) if flow_status == self.break_parse: return - + + def reset_parser(self, entry_id: Any): + self.parsed_streams[entry_id] = None + def get_parser(self, entry_id: Any, relative_offset: int = 0): parser = self.parsed_streams[entry_id] parser.head += relative_offset - return parser.cur_stream - + return parser def c_macro_split(self, macro: str) -> list[str]: args_start = macro.find("(") return Macro(macro[:args_start], macro[args_start + 1 : macro.rfind(")")].split(",")) +def transform_matrix_to_bpy(transform: Matrix) -> Matrix: + return transform_mtx_blender_to_n64().inverted() @ transform @ transform_mtx_blender_to_n64() + + def evaluate_macro(line: str): scene = bpy.context.scene if scene.LevelImp.Version in line: @@ -85,7 +96,7 @@ def pre_parse_file(file: TextIO) -> list[str]: for line in file.splitlines(): # remove line comment if (comment := line.rfind("//")) > 0: - line = line[: comment] + line = line[:comment] # check for macro if "#ifdef" in line: skip_macro = evaluate_macro(line) @@ -128,20 +139,24 @@ def get_data_types_from_file(file: TextIO, type_dict, collated=False): # from a raw file, create a dict of types. Types should all be arrays file_lines = pre_parse_file(file) array_bounds_regx = "\[[0-9a-fx]*\]" # basically [] with any valid number in it + equality_regx = "\s*=" # finds the first char before the equals sign output_variables = {type_name: dict() for type_name in type_dict.keys()} type_found = None var_dat_buffer = [] for line in file_lines: if type_found: # Check for end of array - if "};" in line: + if ";" in line: output_variables[type_found[0]][type_found[1]] = "".join(var_dat_buffer) type_found = None var_dat_buffer = [] else: var_dat_buffer.append(line) continue + # name ends at the array bounds, or the equals sign match = re.search(array_bounds_regx, line, flags=re.IGNORECASE) + if not match: + match = re.search(equality_regx, line, flags=re.IGNORECASE) type_collisions = [type_name for type_name in type_dict.keys() if type_name in line] if match and type_collisions: # there should ideally only be one collision @@ -155,7 +170,11 @@ def get_data_types_from_file(file: TextIO, type_dict, collated=False): output_variables[data_type][variable] = format_data_arr(data, delimiters) # if collated, organize by data type, otherwise just take the various dicts raw - return output_variables if collated else {vd_key:vd_value for var_dict in output_variables.values() for vd_key, vd_value in var_dict.items() } + return ( + output_variables + if collated + else {vd_key: vd_value for var_dict in output_variables.values() for vd_key, vd_value in var_dict.items()} + ) # takes a raw string representing data and then formats it into an array From a7ce46f1e1fdd7fcb82fb4522d95498ee7aaaee5 Mon Sep 17 00:00:00 2001 From: scut Date: Sat, 9 Sep 2023 20:30:37 -0400 Subject: [PATCH 06/30] fixed file cleaning errors, fixed vtx buffer name parsing issue, fixed ifdef parsing bug, added additional cases for geo and material parsing and made script parsing more accurate when jumping. fixed initial transform of geo objects --- fast64_internal/f3d/f3d_import.py | 9 +++- fast64_internal/sm64/sm64_level_importer.py | 57 ++++++++++++--------- fast64_internal/utility_importer.py | 8 +++ 3 files changed, 48 insertions(+), 26 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 631cbce4e..acb1aba60 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -426,7 +426,7 @@ def gsSPVertex(self, macro: Macro): else: ref = macro.args[0] offset = 0 - VB = self.Vtx.get(ref) + VB = self.Vtx.get(ref.strip()) if not VB: raise Exception( "Could not find VB {} in levels/{}/{}leveldata.inc.c".format( @@ -528,6 +528,10 @@ def gsSPSetLights6(self, macro: Macro): def gsSPSetLights7(self, macro: Macro): return self.continue_parse + # upper/lower modes + def gsDPSetAlphaCompare(self, macro: Macro): + return self.continue_parse + def gsDPSetDepthSource(self, macro: Macro): return self.continue_parse @@ -691,6 +695,9 @@ def gsDPSetTile(self, macro: Macro): return self.continue_parse # syncs need no processing + def gsSPCullDisplayList(self, macro: Macro): + return self.continue_parse + def gsDPPipeSync(self, macro: Macro): return self.continue_parse diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index c5bc64f9c..6e1672c91 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -221,13 +221,13 @@ def parse_level_script(self, entry: str, col: bpy.types.Collection = None): scale = self.scene.blenderToSM64Scale if not col: col = self.scene.collection - self.parse_stream(script_stream, entry, col) + self.parse_stream_from_start(script_stream, entry, col) return self.areas def AREA(self, macro: Macro, col: bpy.types.Collection): area_root = bpy.data.objects.new("Empty", None) if self.scene.LevelImp.UseCol: - area_col = bpy.data.collections.new(f"{self.scene.LevelImp.Level} area {args[0]}") + area_col = bpy.data.collections.new(f"{self.scene.LevelImp.Level} area {macro.args[0]}") col.children.link(area_col) else: area_col = col @@ -766,8 +766,8 @@ def __init__( self.scene = scene self.stream = stream self.render_range = None - self.parent_transform = transform_mtx_blender_to_n64() - self.last_transform = transform_mtx_blender_to_n64() + self.parent_transform = transform_mtx_blender_to_n64().inverted() + self.last_transform = transform_mtx_blender_to_n64().inverted() self.name = name self.col = col super().__init__(parent=geo_parent) @@ -812,13 +812,13 @@ def add_model(self, *args): def GEO_BRANCH_AND_LINK(self, macro: Macro, depth: int): new_geo_layout = self.geo_layouts.get(macro.args[0]) if new_geo_layout: - self.parse_stream(new_geo_layout, depth) + self.parse_stream_from_start(new_geo_layout, macro.args[0], depth) return self.continue_parse def GEO_BRANCH(self, macro: Macro, depth: int): new_geo_layout = self.geo_layouts.get(macro.args[1]) if new_geo_layout: - self.parse_stream(new_geo_layout, depth) + self.parse_stream_from_start(new_geo_layout, macro.args[1], depth) # arg 0 determines if you return and continue or end after the branch if eval(macro.args[0]): return self.continue_parse @@ -887,25 +887,25 @@ def GEO_ANIMATED_PART(self, macro: Macro, depth: int): return self.continue_parse def GEO_ROTATION_NODE(self, macro: Macro, depth: int): - geo_obj = self.GEO_ROTATE(macro) + geo_obj = self.GEO_ROTATE(macro, depth) if geo_obj: self.set_geo_type(geo_obj, self.rotate) return self.continue_parse def GEO_ROTATE(self, macro: Macro, depth: int): - transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector()) + transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector((1, 1, 1))) self.last_transform = self.parent_transform @ transform return self.setup_geo_obj("rotate", self.translate_rotate, macro.args[0]) def GEO_ROTATION_NODE_WITH_DL(self, macro: Macro, depth: int): - geo_obj = self.GEO_ROTATE_WITH_DL(macro) + geo_obj = self.GEO_ROTATE_WITH_DL(macro, depth) return self.continue_parse def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): - transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector()) + transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector((1, 1, 1))) self.last_transform = self.parent_transform @ transform - model = args[-1] + model = macro.args[-1] if model != "NULL": geo_obj = self.add_model( ModelDat(self.last_transform, macro.args[0], model), "rotate", self.translate_rotate, macro.args[0] @@ -917,11 +917,11 @@ def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): transform = Matrix.LocRotScale( - self.get_translation(macro.args[1:4]), self.get_rotation(macro.args[4:7]), Vector() + self.get_translation(macro.args[1:4]), self.get_rotation(macro.args[4:7]), Vector((1, 1, 1)) ) self.last_transform = self.parent_transform @ transform - model = args[-1] + model = macro.args[-1] if model != "NULL": geo_obj = self.add_model( ModelDat(self.last_transform, macro.args[0], model), @@ -936,7 +936,7 @@ def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): def GEO_TRANSLATE_ROTATE(self, macro: Macro, depth: int): transform = Matrix.LocRotScale( - self.get_translation(macro.args[1:4]), self.get_rotation(macro.args[1:4]), Vector() + self.get_translation(macro.args[1:4]), self.get_rotation(macro.args[1:4]), Vector((1, 1, 1)) ) self.last_transform = self.parent_transform @ transform @@ -945,7 +945,7 @@ def GEO_TRANSLATE_ROTATE(self, macro: Macro, depth: int): return self.continue_parse def GEO_TRANSLATE_WITH_DL(self, macro: Macro, depth: int): - geo_obj = self.GEO_TRANSLATE_NODE_WITH_DL(macro) + geo_obj = self.GEO_TRANSLATE_NODE_WITH_DL(macro, depth) if geo_obj: self.set_geo_type(geo_obj, self.translate_rotate) return self.continue_parse @@ -966,7 +966,7 @@ def GEO_TRANSLATE_NODE_WITH_DL(self, macro: Macro, depth: int): return geo_obj def GEO_TRANSLATE(self, macro: Macro, depth: int): - obj = self.GEO_TRANSLATE_NODE(macro) + obj = self.GEO_TRANSLATE_NODE(macro, depth) if obj: self.set_geo_type(geo_obj, self.translate_rotate) return self.continue_parse @@ -1003,6 +1003,9 @@ def GEO_RENDER_RANGE(self, macro: Macro, depth: int): return self.continue_parse # these have no affect on the bpy + def GEO_NODE_START(self, macro: Macro, depth: int): + return self.continue_parse + def GEO_BACKGROUND(self, macro: Macro, depth: int): return self.continue_parse @@ -1084,7 +1087,7 @@ def set_geo_type(self, geo_obj: bpy.types.Object, geo_cmd: str): geo_obj.sm64_obj_type = geo_cmd def set_draw_layer(self, geo_obj: bpy.types.Object, layer: int): - geo_obj.draw_layer_static = self.geo_armature(layer) + geo_obj.draw_layer_static = str(self.parse_layer(layer)) # make an empty node to act as the root of this geo layout # use this to hold a transform, or an actual cmd, otherwise rt is passed @@ -1112,11 +1115,9 @@ def parse_level_geo(self, start: str, scene: bpy.types.Scene): start, scene.LevelImp.Level, scene.LevelImp.Prefix ) ) - # This won't parse the geo layout perfectly. For now I'll just get models. This is mostly because fast64 - # isn't a bijection to geo layouts, the props are sort of handled all over the place self.stream = start - self.parse_stream(geo_layout, start, 0) - + self.parse_stream_from_start(geo_layout, start, 0) + def GEO_SCALE(self, macro: Macro, depth: int): scale = eval(macro.args[1]) / 0x10000 geo_obj = self.setup_geo_obj("scale", self.scale, macro.args[0]) @@ -1323,8 +1324,14 @@ def parse_armature(self, start: str, scene: bpy.types.Scene): ) bpy.context.view_layer.objects.active = self.get_or_init_geo_armature() self.stream = start - self.parse_stream(geo_layout, start, 0) + self.parse_stream_from_start(geo_layout, start, 0) + def GEO_ASM(self, macro: Macro, depth: int): + geo_obj = self.setup_geo_obj("asm", self.asm) + geo_obj.func_param = int(macro.args[0]) + geo_obj.geo_func = macro.args[1] + return self.continue_parse + def GEO_SHADOW(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("shadow", self.shadow) geo_bone.shadow_solidity = hexOrDecInt(macro.args[1]) / 255 @@ -1554,10 +1561,11 @@ def write_geo_to_bpy( obj.matrix_world = transform_matrix_to_bpy(model_data.transform) * (1 / scene.blenderToSM64Scale) obj.ignore_collision = True - obj.draw_layer_static = geo_armature.parse_layer(model_data.layer) + layer = geo.parse_layer(model_data.layer) + obj.draw_layer_static = layer if name: - apply_mesh_data(f3d, obj, mesh, layer, root_path, cleanup) + apply_mesh_data(f3d_dat, obj, mesh, layer, root_path, cleanup) if not geo.children: return @@ -1603,7 +1611,6 @@ def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO): for key, value in gfx_dat.items(): attr = getattr(gfx, key) attr.update(value) - # For textures, try u8, and s16 aswell gfx.Textures.update( get_data_types_from_file( model_file, diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index e40283a6d..8dd2791b2 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -47,6 +47,12 @@ def __init__(self, parent: DataParser = None): else: self.parsed_streams = dict() + # for if you're jumping, you start from the beginning, but if you're starting/stopping + # then you want to just pickup from the last spot + def parse_stream_from_start(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): + self.reset_parser(entry_id) + self.parse_stream(dat_stream, entry_id, *args, **kwargs) + def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): parser = self.parsed_streams.get(entry_id) if not parser: @@ -100,8 +106,10 @@ def pre_parse_file(file: TextIO) -> list[str]: # check for macro if "#ifdef" in line: skip_macro = evaluate_macro(line) + continue if "#elif" in line: skip_macro = evaluate_macro(line) + continue if "#else" in line or "#endif" in line: skip_macro = 0 continue From 17d7b7e61964151197be749ffed34544772d17c1 Mon Sep 17 00:00:00 2001 From: scut Date: Sun, 10 Sep 2023 16:28:19 -0400 Subject: [PATCH 07/30] added enums for selecting actor models to import --- fast64_internal/f3d/f3d_import.py | 6 +- fast64_internal/sm64/sm64_constants.py | 266 +++++++++++++++- fast64_internal/sm64/sm64_level_importer.py | 333 +++++++++++++++----- fast64_internal/sm64/sm64_objects.py | 8 +- fast64_internal/utility_importer.py | 4 +- 5 files changed, 518 insertions(+), 99 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index acb1aba60..8073058a0 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -396,7 +396,7 @@ def gsSPBranchList(self, macro: Macro): if not NewDL: raise Exception( "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + NewDL, self.scene.level_import.Level, self.scene.level_import.Prefix ) ) self.reset_parser(branched_dl) @@ -408,7 +408,7 @@ def gsSPDisplayList(self, macro: Macro): if not NewDL: raise Exception( "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + NewDL, self.scene.level_import.Level, self.scene.level_import.Prefix ) ) self.reset_parser(branched_dl) @@ -430,7 +430,7 @@ def gsSPVertex(self, macro: Macro): if not VB: raise Exception( "Could not find VB {} in levels/{}/{}leveldata.inc.c".format( - ref, self.scene.LevelImp.Level, self.scene.LevelImp.Prefix + ref, self.scene.level_import.Level, self.scene.level_import.Prefix ) ) vertex_load_start = hexOrDecInt(macro.args[2]) diff --git a/fast64_internal/sm64/sm64_constants.py b/fast64_internal/sm64/sm64_constants.py index b3bd92b2b..9f37bdccf 100644 --- a/fast64_internal/sm64/sm64_constants.py +++ b/fast64_internal/sm64/sm64_constants.py @@ -1775,8 +1775,13 @@ def __init__(self, geoAddr, level, switchDict): ("VERSION_SH", "VERSION_SH", ""), ] -# groups you can select for levels -groupsSeg5 = [ +# groups and whats in them +# used across various enums +all_groups = [ + ("common0", "common0", "Common enemies (amps, cannons, flyguy, goomba etc.)"), + ("common1", "common1", "Common objects (coins, doors, trees, star, wooden sign)"), + ("group0", "group0", "Mario and particles"), + ("group0", "group0", "Mario and particles"), ("group1", "group1", "Ground objects (Thwomp, Heave-Ho, Hoot etc.)"), ("group2", "group2", "Bully/Blargg"), ("group3", "group3", "King Bob-Omb"), @@ -1788,22 +1793,273 @@ def __init__(self, geoAddr, level, switchDict): ("group9", "group9", "Haunted Objects (Boo, Mad Piano etc.)"), ("group10", "group10", "Peach/Yoshi"), ("group11", "group11", "THI Ojbects (Lakitu, Wiggler, Bubba)"), - ("Do Not Write", "Do Not Write", "Do Not Write"), + ("group12", "group12", "Bowser/Bowser Bomb"), + ("group13", "group13", "Water Objects (Skeeter, Treasure Chest etc.)"), + ("group14", "group14", "Ground Objects (Piranha Plant, Chain Chomp etc.)"), + ("group15", "group15", "Castle Objects (MIPS, Toad etc.)"), + ("group16", "group16", "Ice Objects (Chill Bully, Moneybags)"), + ("group17", "group17", "Cave Objects (Swoop, Scuttlebug, Dorrie etc.)"), ("Custom", "Custom", "Custom"), ] +groups_seg_5 = [ + ("group1", "group1", "Ground objects (Thwomp, Heave-Ho, Hoot etc.)"), + ("group2", "group2", "Bully/Blargg"), + ("group3", "group3", "King Bob-Omb"), + ("group4", "group4", "Water Objects (Unagi, Manta, Clam)"), + ("group5", "group5", "Sand Objects (Pokey, Eyerock, klepto)"), + ("group6", "group6", "TTM Objects (Monty Mole, uUkiki, Fwoosh)"), + ("group7", "group7", "Snow Objects (Mr Blizzard, Spindrift etc.)"), + ("group8", "group8", "Cap Switch"), + ("group9", "group9", "Haunted Objects (Boo, Mad Piano etc.)"), + ("group10", "group10", "Peach/Yoshi"), + ("group11", "group11", "THI Ojbects (Lakitu, Wiggler, Bubba)"), + ("Custom", "Custom", "Custom"), +] -groupsSeg6 = [ +groups_seg_6 = [ ("group12", "group12", "Bowser/Bowser Bomb"), ("group13", "group13", "Water Objects (Skeeter, Treasure Chest etc.)"), ("group14", "group14", "Ground Objects (Piranha Plant, Chain Chomp etc.)"), ("group15", "group15", "Castle Objects (MIPS, Toad etc.)"), ("group16", "group16", "Ice Objects (Chill Bully, Moneybags)"), ("group17", "group17", "Cave Objects (Swoop, Scuttlebug, Dorrie etc.)"), - ("Do Not Write", "Do Not Write", "Do Not Write"), ("Custom", "Custom", "Custom"), ] +# enums specifically for level loading +groups_seg_5_lvl_load = [ + *groups_seg_5, + ("Do Not Write", "Do Not Write", "Do Not Write"), +] + +groups_seg_6_lvl_load = [ + *groups_seg_6, + ("Do Not Write", "Do Not Write", "Do Not Write"), +] + +# what is in specific groups and the segmented addresses +group_0_geos = [ + ("bubble_geo", "bubble_geo", "0x17000000"), + ("purple_marble_geo", "purple_marble_geo", "0x1700001c"), + ("smoke_geo", "smoke_geo", "0x17000038"), + ("burn_smoke_geo", "burn_smoke_geo", "0x17000084"), + ("small_water_splash_geo", "small_water_splash_geo", "0x1700009c"), + ("idle_water_wave_geo", "idle_water_wave_geo", "0x17000124"), + ("wave_trail_geo", "wave_trail_geo", "0x17000168"), + ("sparkles_geo", "sparkles_geo", "0x170001bc"), + ("water_splash_geo", "water_splash_geo", "0x17000230"), + ("sparkles_animation_geo", "sparkles_animation_geo", "0x17000284"), + ("mario_geo", "mario_geo", "0x17002dd4"), +] + +group_1_geos = [ + ("yellow_sphere_geo", "yellow_sphere_geo", "0x0c000000"), + ("hoot_geo", "hoot_geo", "0x0c000018"), + ("yoshi_egg_geo", "yoshi_egg_geo", "0x0c0001e4"), + ("thwomp_geo", "thwomp_geo", "0x0c000248"), + ("bullet_bill_geo", "bullet_bill_geo", "0x0c000264"), + ("heave_ho_geo", "heave_ho_geo", "0x0c00028c"), +] + +group_2_geos = [ + ("bully_geo", "bully_geo", "0x0c000000"), + ("bully_boss_geo", "bully_boss_geo", "0x0c000120"), + ("blargg_geo", "blargg_geo", "0x0c000240"), +] + +group_3_geos = [ + ("king_bobomb_geo", "king_bobomb_geo", "0x0c000000"), + ("water_bomb_geo", "water_bomb_geo", "0x0c000308"), + ("water_bomb_shadow_geo", "water_bomb_shadow_geo", "0x0c000328"), +] + +group_4_geos = [ + ("clam_shell_geo", "clam_shell_geo", "0x0c000000"), + ("sushi_geo", "sushi_geo", "0x0c000068"), + ("unagi_geo", "unagi_geo", "0x0c00010c"), +] + +group_5_geos = [ + ("klepto_geo", "klepto_geo", "0x0c000000"), + ("eyerok_left_hand_geo", "eyerok_left_hand_geo", "0x0c0005a8"), + ("eyerok_right_hand_geo", "eyerok_right_hand_geo", "0x0c0005e4"), + ("pokey_head_geo", "pokey_head_geo", "0x0c000610"), + ("pokey_body_part_geo", "pokey_body_part_geo", "0x0c000644"), +] + +group_6_geos = [ + ("monty_mole_geo", "monty_mole_geo", "0x0c000000"), + ("ukiki_geo", "ukiki_geo", "0x0c000110"), + ("fwoosh_geo", "fwoosh_geo", "0x0c00036c"), +] + +group_7_geos = [ + ("spindrift_geo", "spindrift_geo", "0x0c000000"), + ("penguin_geo", "penguin_geo", "0x0c000104"), + ("mr_blizzard_hidden_geo", "mr_blizzard_hidden_geo", "0x0c00021c"), + ("mr_blizzard_geo", "mr_blizzard_geo", "0x0c000348"), +] + +group_8_geos = [ + ("springboard_top_geo", "springboard_top_geo", "0x0c000000"), + ("springboard_spring_geo", "springboard_spring_geo", "0x0c000018"), + ("springboard_bottom_geo", "springboard_bottom_geo", "0x0c000030"), + ("cap_switch_geo", "cap_switch_geo", "0x0c000048"), +] + +group_9_geos = [ + ("bookend_part_geo", "bookend_part_geo", "0x0c000000"), + ("bookend_geo", "bookend_geo", "0x0c0000c0"), + ("haunted_chair_geo", "haunted_chair_geo", "0x0c0000d8"), + ("small_key_geo", "small_key_geo", "0x0c000188"), + ("mad_piano_geo", "mad_piano_geo", "0x0c0001b4"), + ("boo_geo", "boo_geo", "0x0c000224"), + ("haunted_cage_geo", "haunted_cage_geo", "0x0c000274"), +] + +group_10_geos = [ + ("birds_geo", "birds_geo", "0x0c000000"), + ("peach_geo", "peach_geo", "0x0c000410"), + ("yoshi_geo", "yoshi_geo", "0x0c000468"), +] + +group_11_geos = [ + ("bubba_geo", "bubba_geo", "0x0c000000"), + ("wiggler_head_geo", "wiggler_head_geo", "0x0c000030"), + ("enemy_lakitu_geo", "enemy_lakitu_geo", "0x0c0001bc"), + ("spiny_ball_geo", "spiny_ball_geo", "0x0c000290"), + ("spiny_geo", "spiny_geo", "0x0c000328"), +] + +group_12_geos = [ + ("bowser_flames_geo", "bowser_flames_geo", "0x0d000000"), + ("invisible_bowser_accessory_geo", "invisible_bowser_accessory_geo", "0x0d000090"), + ("bowser_1_yellow_sphere_geo", "bowser_1_yellow_sphere_geo", "0x0d0000b0"), + ("bowser_shadow_geo", "bowser_shadow_geo", "0x0d000ab8"), + ("bowser_geo", "bowser_geo", "0x0d000ac4"), + ("bowser2_geo", "bowser2_geo", "0x0d000b40"), + ("bowser_bomb_geo", "bowser_bomb_geo", "0x0d000bbc"), + ("bowser_impact_smoke_geo", "bowser_impact_smoke_geo", "0x0d000bfc"), +] + +group_13_geos = [ + ("skeeter_geo", "skeeter_geo", "0x0d000000"), + ("seaweed_geo", "seaweed_geo", "0x0d000284"), + ("water_mine_geo", "water_mine_geo", "0x0d0002f4"), + ("cyan_fish_geo", "cyan_fish_geo", "0x0d000324"), + ("bub_geo", "bub_geo", "0x0d00038c"), + ("water_ring_geo", "water_ring_geo", "0x0d000414"), + ("treasure_chest_base_geo", "treasure_chest_base_geo", "0x0d000450"), + ("treasure_chest_lid_geo", "treasure_chest_lid_geo", "0x0d000468"), +] + +group_14_geos = [ + ("koopa_flag_geo", "koopa_flag_geo", "0x0d000000"), + ("wooden_post_geo", "wooden_post_geo", "0x0d0000b8"), + ("koopa_without_shell_geo", "koopa_without_shell_geo", "0x0d0000d0"), + ("koopa_with_shell_geo", "koopa_with_shell_geo", "0x0d000214"), + ("piranha_plant_geo", "piranha_plant_geo", "0x0d000358"), + ("whomp_geo", "whomp_geo", "0x0d000480"), + ("metallic_ball_geo", "metallic_ball_geo", "0x0d0005d0"), + ("chain_chomp_geo", "chain_chomp_geo", "0x0d0005ec"), +] + +group_15_geos = [ + ("lakitu_geo", "lakitu_geo", "0x0d000000"), + ("toad_geo", "toad_geo", "0x0d0003e4"), + ("mips_geo", "mips_geo", "0x0d000448"), + ("boo_castle_geo", "boo_castle_geo", "0x0d0005b0"), +] + +group_16_geos = [ + ("moneybag_geo", "moneybag_geo", "0x0d0000f0"), + ("mr_i_geo", "mr_i_geo", "0x0d000000"), + ("mr_i_iris_geo", "mr_i_iris_geo", "0x0d00001c"), +] + +group_17_geos = [ + ("swoop_geo", "swoop_geo", "0x0d0000dc"), + ("snufit_geo", "snufit_geo", "0x0d0001a0"), + ("dorrie_geo", "dorrie_geo", "0x0d000230"), + ("scuttlebug_geo", "scuttlebug_geo", "0x0d000394"), +] + +common_0_geos = [ + ("blue_coin_switch_geo", "blue_coin_switch_geo", "0x0f000000"), + ("test_platform_geo", "test_platform_geo", "0x0f000020"), + ("amp_geo", "amp_geo", "0x0f000028"), + ("cannon_base_geo", "cannon_base_geo", "0x0f0001a8"), + ("cannon_barrel_geo", "cannon_barrel_geo", "0x0f0001c0"), + ("chuckya_geo", "chuckya_geo", "0x0f0001d8"), + ("purple_switch_geo", "purple_switch_geo", "0x0f0004cc"), + ("checkerboard_platform_geo", "checkerboard_platform_geo", "0x0f0004e4"), + ("heart_geo", "heart_geo", "0x0f0004fc"), + ("flyguy_geo", "flyguy_geo", "0x0f000518"), + ("breakable_box_geo", "breakable_box_geo", "0x0f0005d0"), + ("breakable_box_small_geo", "breakable_box_small_geo", "0x0f000610"), + ("bowling_ball_geo", "bowling_ball_geo", "0x0f000640"), + ("bowling_ball_track_geo", "bowling_ball_track_geo", "0x0f00066c"), + ("exclamation_box_geo", "exclamation_box_geo", "0x0f000694"), + ("goomba_geo", "goomba_geo", "0x0f0006e4"), + ("black_bobomb_geo", "black_bobomb_geo", "0x0f0007b8"), + ("bobomb_buddy_geo", "bobomb_buddy_geo", "0x0f0008f4"), + ("metal_box_geo", "metal_box_geo", "0x0f000a30"), + ("exclamation_box_outline_geo", "exclamation_box_outline_geo", "0x0f000a58"), + ("koopa_shell_geo", "koopa_shell_geo", "0x0f000ab0"), + ("koopa_shell2_geo", "koopa_shell2_geo", "0x0f000adc"), + ("koopa_shell3_geo", "koopa_shell3_geo", "0x0f000b08"), +] + +common_1_geos = [ + ("mist_geo", "mist_geo", "0x16000000"), + ("white_puff_geo", "white_puff_geo", "0x16000020"), + ("explosion_geo", "explosion_geo", "0x16000040"), + ("butterfly_geo", "butterfly_geo", "0x160000a8"), + ("yellow_coin_geo", "yellow_coin_geo", "0x1600013c"), + ("yellow_coin_no_shadow_geo", "yellow_coin_no_shadow_geo", "0x160001a0"), + ("blue_coin_geo", "blue_coin_geo", "0x16000200"), + ("blue_coin_no_shadow_geo", "blue_coin_no_shadow_geo", "0x16000264"), + ("red_coin_geo", "red_coin_geo", "0x160002c4"), + ("red_coin_no_shadow_geo", "red_coin_no_shadow_geo", "0x16000328"), + ("warp_pipe_geo", "warp_pipe_geo", "0x16000388"), + ("castle_door_geo", "castle_door_geo", "0x160003a8"), + ("cabin_door_geo", "cabin_door_geo", "0x1600043c"), + ("wooden_door_geo", "wooden_door_geo", "0x160004d0"), + ("wooden_door2_geo", "wooden_door2_geo", "0x16000564"), + ("metal_door_geo", "metal_door_geo", "0x160005f8"), + ("hazy_maze_door_geo", "hazy_maze_door_geo", "0x1600068c"), + ("haunted_door_geo", "haunted_door_geo", "0x16000720"), + ("castle_door_0_star_geo", "castle_door_0_star_geo", "0x160007b4"), + ("castle_door_1_star_geo", "castle_door_1_star_geo", "0x16000868"), + ("castle_door_3_stars_geo", "castle_door_3_stars_geo", "0x1600091c"), + ("key_door_geo", "key_door_geo", "0x160009d0"), + ("bowser_key_geo", "bowser_key_geo", "0x16000a84"), + ("bowser_key_cutscene_geo", "bowser_key_cutscene_geo", "0x16000ab0"), + ("red_flame_shadow_geo", "red_flame_shadow_geo", "0x16000b10"), + ("red_flame_geo", "red_flame_geo", "0x16000b2c"), + ("blue_flame_geo", "blue_flame_geo", "0x16000b8c"), + ("fish_shadow_geo", "fish_shadow_geo", "0x16000bec"), + ("fish_geo", "fish_geo", "0x16000c44"), + ("leaves_geo", "leaves_geo", "0x16000c8c"), + ("marios_cap_geo", "marios_cap_geo", "0x16000ca4"), + ("marios_metal_cap_geo", "marios_metal_cap_geo", "0x16000cf0"), + ("marios_wing_cap_geo", "marios_wing_cap_geo", "0x16000d3c"), + ("marios_winged_metal_cap_geo", "marios_winged_metal_cap_geo", "0x16000da8"), + ("number_geo", "number_geo", "0x16000e14"), + ("mushroom_1up_geo", "mushroom_1up_geo", "0x16000e84"), + ("star_geo", "star_geo", "0x16000ea0"), + ("dirt_animation_geo", "dirt_animation_geo", "0x16000ed4"), + ("cartoon_star_geo", "cartoon_star_geo", "0x16000f24"), + ("transparent_star_geo", "transparent_star_geo", "0x16000f6c"), + ("white_particle_geo", "white_particle_geo", "0x16000f98"), + ("wooden_signpost_geo", "wooden_signpost_geo", "0x16000fb4"), + ("bubbly_tree_geo", "bubbly_tree_geo", "0x16000fe8"), + ("spiky_tree_geo", "spiky_tree_geo", "0x16001000"), + ("snow_tree_geo", "snow_tree_geo", "0x16001018"), + ("spiky_tree1_geo", "spiky_tree1_geo", "0x16001030"), + ("palm_tree_geo", "palm_tree_geo", "0x16001048"), +] marioAnimations = [ # ( Adress, "Animation name" ), diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 6e1672c91..af3da0a18 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -51,6 +51,27 @@ from .sm64_constants import ( enumVersionDefs, enumLevelNames, + all_groups, + group_0_geos, + group_1_geos, + group_2_geos, + group_3_geos, + group_4_geos, + group_5_geos, + group_6_geos, + group_7_geos, + group_8_geos, + group_9_geos, + group_10_geos, + group_11_geos, + group_12_geos, + group_13_geos, + group_14_geos, + group_15_geos, + group_16_geos, + group_17_geos, + common_0_geos, + common_1_geos, ) # ------------------------------------------------------------------------ @@ -226,13 +247,13 @@ def parse_level_script(self, entry: str, col: bpy.types.Collection = None): def AREA(self, macro: Macro, col: bpy.types.Collection): area_root = bpy.data.objects.new("Empty", None) - if self.scene.LevelImp.UseCol: - area_col = bpy.data.collections.new(f"{self.scene.LevelImp.Level} area {macro.args[0]}") + if self.scene.level_import.use_collection: + area_col = bpy.data.collections.new(f"{self.scene.level_import.level} area {macro.args[0]}") col.children.link(area_col) else: area_col = col area_col.objects.link(area_root) - area_root.name = f"{self.scene.LevelImp.Level} Area Root {macro.args[0]}" + area_root.name = f"{self.scene.level_import.level} Area Root {macro.args[0]}" self.areas[macro.args[0]] = Area(area_root, macro.args[1], self.root, int(macro.args[0]), self.scene, area_col) self.cur_area = macro.args[0] return self.continue_parse @@ -520,13 +541,13 @@ def COL_END(self, macro: Macro): class SM64_Material(Mat): - def load_texture(self, ForceNewTex: bool, textures: dict, path: Path, tex: Texture): + def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None Timg = textures.get(tex.Timg)[0].split("/")[-1] Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") image = bpy.data.images.get(Timg) - if not image or ForceNewTex: + if not image or force_new_tex: Timg = textures.get(tex.Timg)[0] Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") # deal with duplicate pathing (such as /actors/actors etc.) @@ -552,14 +573,14 @@ def apply_PBSDF_Mat(self, mat: bpy.types.Material, textures: dict, tex_path: Pat tex_node = nodes.new("ShaderNodeTexImage") links.new(pbsdf.inputs[0], tex_node.outputs[0]) # base color links.new(pbsdf.inputs[21], tex_node.outputs[1]) # alpha color - image = self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, tex) + image = self.load_texture(bpy.context.scene.level_import.force_new_tex, textures, tex_path, tex) if image: tex_node.image = image if int(layer) > 4: mat.blend_method == "BLEND" def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_path: Path, layer: int): - if bpy.context.scene.LevelImp.AsObj: + if bpy.context.scene.level_import.as_obj: return self.apply_PBSDF_Mat(mat, textures, tex_path, layer, self.tex0) f3d = mat.f3d_mat @@ -575,14 +596,14 @@ def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path) if self.tex0 and self.set_tex: self.set_tex_settings( f3d.tex0, - self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, self.tex0), + self.load_texture(bpy.context.scene.level_import.force_new_tex, textures, tex_path, self.tex0), self.tiles[0], self.tex0.Timg, ) if self.tex1 and self.set_tex: self.set_tex_settings( f3d.tex1, - self.load_texture(bpy.context.scene.LevelImp.ForceNewTex, textures, tex_path, self.tex1), + self.load_texture(bpy.context.scene.level_import.force_new_tex, textures, tex_path, self.tex1), self.tiles[1], self.tex1.Timg, ) @@ -714,7 +735,7 @@ def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: in # create a new f3d_mat given an SM64_Material class but don't create copies with same props def create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): - if not self.scene.LevelImp.ForceNewTex: + if not self.scene.level_import.force_new_tex: # check if this mat was used already in another mesh (or this mat if DL is garbage or something) # even looping n^2 is probably faster than duping 3 mats with blender speed for j, F3Dmat in enumerate(bpy.data.materials): @@ -728,7 +749,7 @@ def create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): # add a mat slot and add mat to it mesh.materials.append(new) else: - if self.scene.LevelImp.AsObj: + if self.scene.level_import.as_obj: NewMat = bpy.data.materials.new(f"sm64 {mesh.name.replace('Data', 'material')}") mesh.materials.append(NewMat) # the newest mat should be in slot[-1] for the mesh materials NewMat.use_nodes = True @@ -1112,7 +1133,7 @@ def parse_level_geo(self, start: str, scene: bpy.types.Scene): if not geo_layout: raise Exception( "Could not find geo layout {} from levels/{}/{}geo.c".format( - start, scene.LevelImp.Level, scene.LevelImp.Prefix + start, scene.level_import.level, scene.level_import.prefix ) ) self.stream = start @@ -1319,7 +1340,7 @@ def parse_armature(self, start: str, scene: bpy.types.Scene): if not geo_layout: raise Exception( "Could not find geo layout {} from levels/{}/{}geo.c".format( - start, scene.LevelImp.Level, scene.LevelImp.Prefix + start, scene.level_import.level, scene.level_import.prefix ) ) bpy.context.view_layer.objects.active = self.get_or_init_geo_armature() @@ -1420,13 +1441,13 @@ def parse_level_script(script_file: Path, scene: bpy.types.Scene, col: bpy.types scene.collection.objects.link(Root) else: col.objects.link(Root) - Root.name = f"Level Root {scene.LevelImp.Level}" + Root.name = f"Level Root {scene.level_import.level}" Root.sm64_obj_type = "Level Root" # Now parse the script and get data about the level # Store data in attribute of a level class then assign later and return class with open(script_file, "r", newline="") as script_file: lvl = Level(script_file, scene, Root) - entry = scene.LevelImp.Entry.format(scene.LevelImp.Level) + entry = scene.level_import.entry.format(scene.level_import.level) lvl.parse_level_script(entry, col=col) return lvl @@ -1702,7 +1723,7 @@ def find_level_models_from_geo(geo: TextIO, lvl: Level, scene: bpy.types.Scene, else: col = None Geo = GeoLayout( - GeoLayouts, area.root, scene, f"GeoRoot {scene.LevelImp.Level} {area_index}", area.root, col=col + GeoLayouts, area.root, scene, f"GeoRoot {scene.level_import.level} {area_index}", area.root, col=col ) Geo.parse_level_geo(area.geo, scene) area.geo = Geo @@ -1744,7 +1765,7 @@ def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types. area.ColFile = col_data.get(area.terrain, None) if not area.ColFile: raise Exception( - f"Collision {area.terrain} not found in levels/{scene.LevelImp.Level}/{scene.LevelImp.Prefix}leveldata.c" + f"Collision {area.terrain} not found in levels/{scene.level_import.level}/{scene.level_import.prefix}leveldata.c" ) return lvl @@ -1757,7 +1778,7 @@ def write_level_collision_to_bpy(lvl: Level, scene: bpy.types.Scene, cleanup: bo col = create_collection(area.root.users_collection[0], col_name) col_parser = Collision(area.ColFile, scene.blenderToSM64Scale) col_parser.parse_collision() - name = "SM64 {} Area {} Col".format(scene.LevelImp.Level, area_index) + name = "SM64 {} Area {} Col".format(scene.level_import.level, area_index) obj = col_parser.write_collision(scene, name, area.root, col=col) # final operators to clean stuff up if cleanup: @@ -1805,18 +1826,18 @@ def execute(self, context): rt_col = context.collection scene.gameEditorMode = "SM64" path = Path(bpy.path.abspath(scene.decompPath)) - folder = path / scene.ActImp.FolderType - layout_name = scene.ActImp.GeoLayout - prefix = scene.ActImp.Prefix + folder = path / scene.actor_import.folder_type + layout_name = scene.actor_import.geo_layout + prefix = scene.actor_import.prefix # different name schemes and I have no clean way to deal with it - if "actor" in scene.ActImp.FolderType: + if "actor" in scene.actor_import.folder_type: geo_path = folder / (prefix + "_geo.c") leveldat = folder / (prefix + ".c") else: geo_path = folder / (prefix + "geo.c") leveldat = folder / (prefix + "leveldata.c") root_obj = bpy.data.objects.new("Empty", None) - root_obj.name = f"Actor {scene.ActImp.GeoLayout}" + root_obj.name = f"Actor {scene.actor_import.geo_layout}" rt_col.objects.link(root_obj) geo_layout = find_actor_models_from_geo( @@ -1844,17 +1865,17 @@ def execute(self, context): rt_col = context.collection scene.gameEditorMode = "SM64" path = Path(bpy.path.abspath(scene.decompPath)) - folder = path / scene.ActImp.FolderType - layout_name = scene.ActImp.GeoLayout - prefix = scene.ActImp.Prefix + folder = path / scene.actor_import.folder_type + layout_name = scene.actor_import.geo_layout + prefix = scene.actor_import.prefix # different name schemes and I have no clean way to deal with it - if "actor" in scene.ActImp.FolderType: + if "actor" in scene.actor_import.folder_type: geo_path = folder / (prefix + "_geo.c") leveldat = folder / (prefix + ".c") else: geo_path = folder / (prefix + "geo.c") leveldat = folder / (prefix + "leveldata.c") - name = f"Actor {scene.ActImp.GeoLayout}" + name = f"Actor {scene.actor_import.geo_layout}" armature_obj = bpy.data.objects.new(name, bpy.data.armatures.new(name)) rt_col.objects.link(armature_obj) @@ -1881,17 +1902,17 @@ def execute(self, context): scene = context.scene col = context.collection - if scene.LevelImp.UseCol: - obj_col = f"{scene.LevelImp.Level} obj" - gfx_col = f"{scene.LevelImp.Level} gfx" - col_col = f"{scene.LevelImp.Level} col" + if scene.level_import.use_collection: + obj_col = f"{scene.level_import.level} obj" + gfx_col = f"{scene.level_import.level} gfx" + col_col = f"{scene.level_import.level} col" else: obj_col = gfx_col = col_col = None scene.gameEditorMode = "SM64" - prefix = scene.LevelImp.Prefix + prefix = scene.level_import.prefix path = Path(bpy.path.abspath(scene.decompPath)) - level = path / "levels" / scene.LevelImp.Level + level = path / "levels" / scene.level_import.level script = level / (prefix + "script.c") geo = level / (prefix + "geo.c") leveldat = level / (prefix + "leveldata.c") @@ -1912,15 +1933,15 @@ def execute(self, context): scene = context.scene col = context.collection - if scene.LevelImp.UseCol: - gfx_col = f"{scene.LevelImp.Level} gfx" + if scene.level_import.use_collection: + gfx_col = f"{scene.level_import.level} gfx" else: gfx_col = None scene.gameEditorMode = "SM64" - prefix = scene.LevelImp.Prefix + prefix = scene.level_import.prefix path = Path(bpy.path.abspath(scene.decompPath)) - level = path / "levels" / scene.LevelImp.Level + level = path / "levels" / scene.level_import.level script = level / (prefix + "script.c") geo = level / (prefix + "geo.c") model = level / (prefix + "leveldata.c") @@ -1939,15 +1960,15 @@ def execute(self, context): scene = context.scene col = context.collection - if scene.LevelImp.UseCol: - col_col = f"{scene.LevelImp.Level} collision" + if scene.level_import.use_collection: + col_col = f"{scene.level_import.level} collision" else: col_col = None scene.gameEditorMode = "SM64" - prefix = scene.LevelImp.Prefix + prefix = scene.level_import.prefix path = Path(bpy.path.abspath(scene.decompPath)) - level = path / "levels" / scene.LevelImp.Level + level = path / "levels" / scene.level_import.level script = level / (prefix + "script.c") model = level / (prefix + "leveldata.c") lvl = parse_level_script(script, scene, col=col) # returns level class @@ -1963,15 +1984,15 @@ def execute(self, context): scene = context.scene col = context.collection - if scene.LevelImp.UseCol: - obj_col = f"{scene.LevelImp.Level} objs" + if scene.level_import.use_collection: + obj_col = f"{scene.level_import.level} objs" else: obj_col = None scene.gameEditorMode = "SM64" - prefix = scene.LevelImp.Prefix + prefix = scene.level_import.prefix path = Path(bpy.path.abspath(scene.decompPath)) - level = path / "levels" / scene.LevelImp.Level + level = path / "levels" / scene.level_import.level script = level / (prefix + "script.c") lvl = parse_level_script(script, scene, col=col) # returns level class write_level_objects(lvl, col_name=obj_col) @@ -1984,8 +2005,11 @@ def execute(self, context): class ActorImport(PropertyGroup): - GeoLayout: StringProperty(name="GeoLayout", description="Name of GeoLayout") - FolderType: EnumProperty( + geo_layout_str: StringProperty( + name="geo_layout", + description="Name of GeoLayout" + ) + folder_type: EnumProperty( name="Source", description="Whether the actor is from a level or from a group", items=[ @@ -1993,55 +2017,206 @@ class ActorImport(PropertyGroup): ("levels", "levels", ""), ], ) - Prefix: StringProperty( + group_preset: EnumProperty( + name="group preset", + description="The group you want to load geo from", + items=all_groups + ) + group_0_geo_enum: EnumProperty( + name="group 0 geos", + description="preset geos from vanilla in group 0", + items=[*group_0_geos, ("Custom", "Custom", "Custom")] + ) + group_1_geo_enum: EnumProperty( + name="group 1 geos", + description="preset geos from vanilla in group 1", + items=[*group_1_geos, ("Custom", "Custom", "Custom")] + ) + group_2_geo_enum: EnumProperty( + name="group 2 geos", + description="preset geos from vanilla in group 2", + items=[*group_2_geos, ("Custom", "Custom", "Custom")] + ) + group_3_geo_enum: EnumProperty( + name="group 3 geos", + description="preset geos from vanilla in group 3", + items=[*group_3_geos, ("Custom", "Custom", "Custom")] + ) + group_4_geo_enum: EnumProperty( + name="group 4 geos", + description="preset geos from vanilla in group 4", + items=[*group_4_geos, ("Custom", "Custom", "Custom")] + ) + group_5_geo_enum: EnumProperty( + name="group 5 geos", + description="preset geos from vanilla in group 5", + items=[*group_5_geos, ("Custom", "Custom", "Custom")] + ) + group_6_geo_enum: EnumProperty( + name="group 6 geos", + description="preset geos from vanilla in group 6", + items=[*group_6_geos, ("Custom", "Custom", "Custom")] + ) + group_7_geo_enum: EnumProperty( + name="group 7 geos", + description="preset geos from vanilla in group 7", + items=[*group_7_geos, ("Custom", "Custom", "Custom")] + ) + group_8_geo_enum: EnumProperty( + name="group 8 geos", + description="preset geos from vanilla in group 8", + items=[*group_8_geos, ("Custom", "Custom", "Custom")] + ) + group_9_geo_enum: EnumProperty( + name="group 9 geos", + description="preset geos from vanilla in group 9", + items=[*group_9_geos, ("Custom", "Custom", "Custom")] + ) + group_10_geo_enum: EnumProperty( + name="group 10 geos", + description="preset geos from vanilla in group 10", + items=[*group_10_geos, ("Custom", "Custom", "Custom")] + ) + group_11_geo_enum: EnumProperty( + name="group 11 geos", + description="preset geos from vanilla in group 11", + items=[*group_11_geos, ("Custom", "Custom", "Custom")] + ) + group_12_geo_enum: EnumProperty( + name="group 12 geos", + description="preset geos from vanilla in group 12", + items=[*group_12_geos, ("Custom", "Custom", "Custom")] + ) + group_13_geo_enum: EnumProperty( + name="group 13 geos", + description="preset geos from vanilla in group 13", + items=[*group_13_geos, ("Custom", "Custom", "Custom")] + ) + group_14_geo_enum: EnumProperty( + name="group 14 geos", + description="preset geos from vanilla in group 14", + items=[*group_14_geos, ("Custom", "Custom", "Custom")] + ) + group_15_geo_enum: EnumProperty( + name="group 15 geos", + description="preset geos from vanilla in group 15", + items=[*group_15_geos, ("Custom", "Custom", "Custom")] + ) + group_16_geo_enum: EnumProperty( + name="group 16 geos", + description="preset geos from vanilla in group 16", + items=[*group_16_geos, ("Custom", "Custom", "Custom")] + ) + group_17_geo_enum: EnumProperty( + name="group 17 geos", + description="preset geos from vanilla in group 17", + items=[*group_17_geos, ("Custom", "Custom", "Custom")] + ) + common_0_geo_enum: EnumProperty( + name="common 0 geos", + description="preset geos from vanilla in common 0", + items=[*common_0_geos, ("Custom", "Custom", "Custom")] + ) + common_1_geo_enum: EnumProperty( + name="common 1 geos", + description="preset geos from vanilla in common 1", + items=[*common_1_geos, ("Custom", "Custom", "Custom")] + ) + prefix_custom: StringProperty( name="Prefix", - description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c", + description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c. Enter group name if not using dropdowns.", default="", ) - Version: EnumProperty( + version: EnumProperty( name="Version", description="Version of the game for any ifdef macros", items=enumVersionDefs, ) - Target: StringProperty( + target: StringProperty( name="Target", description="The platform target for any #ifdefs in code", default="TARGET_N64" ) + + @property + def geo_group_name(self): + if self.group_preset == "Custom": + return None + if self.group_preset == "common0": + return "common_0_geo_enum" + if self.group_preset == "common1": + return "common_1_geo_enum" + else: + return f"group_{self.group_preset.removeprefix('group')}_geo_enum" + + @property + def prefix(self): + if self.folder_type == "levels" or self.group_preset == "custom": + return self.prefix_custom + else: + return self.group_preset + + @property + def geo_layout(self): + if self.folder_type == "levels" or self.group_preset == "custom": + return self.geo_layout_str + else: + return getattr(self, self.geo_group_name) + + def draw(self, layout: bpy.types.UILayout): + layout.prop(self, "folder_type") + layout.prop(self, "group_preset") + if self.folder_type == "levels" or self.group_preset == "custom": + layout.prop(self, "prefix_custom") + layout.prop(self, "geo_layout_str") + else: + layout.prop(self, self.geo_group_name) + layout.prop(self, "version") + layout.prop(self, "target") class LevelImport(PropertyGroup): - Level: EnumProperty( + level: EnumProperty( name="Level", description="Choose a level", items=enumLevelNames, ) - Prefix: StringProperty( + prefix: StringProperty( name="Prefix", - description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c", + description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c. Leave blank unless using custom files", default="", ) - Entry: StringProperty( - name="Entrypoint", description="The name of the level script entry variable", default="level_{}_entry" + entry: StringProperty( + name="Entrypoint", description="The name of the level script entry variable. Levelname is put between braces.", default="level_{}_entry" ) - Version: EnumProperty( + version: EnumProperty( name="Version", description="Version of the game for any ifdef macros", items=enumVersionDefs, ) - Target: StringProperty( + target: StringProperty( name="Target", description="The platform target for any #ifdefs in code", default="TARGET_N64" ) - ForceNewTex: BoolProperty( - name="ForceNewTex", + force_new_tex: BoolProperty( + name="force_new_tex", description="Forcefully load new textures even if duplicate path/name is detected", default=False, ) - AsObj: BoolProperty( + as_obj: BoolProperty( name="As OBJ", description="Make new materials as PBSDF so they export to obj format", default=False ) - UseCol: BoolProperty( - name="Use Col", description="Make new collections to organzie content during imports", default=True + use_collection: BoolProperty( + name="use_collection", description="Make new collections to organzie content during imports", default=True ) - + + def draw(self, layout: bpy.types.UILayout): + layout.prop(self, "level") + layout.prop(self, "entry") + layout.prop(self, "prefix") + layout.prop(self, "version") + layout.prop(self, "target") + row = layout.row() + row.prop(self, "force_new_tex") + row.prop(self, "as_obj") + row.prop(self, "use_collection") # ------------------------------------------------------------------------ # Panels @@ -2063,16 +2238,8 @@ def poll(self, context): def draw(self, context): layout = self.layout scene = context.scene - LevelImp = scene.LevelImp - layout.prop(LevelImp, "Level") - layout.prop(LevelImp, "Entry") - layout.prop(LevelImp, "Prefix") - layout.prop(LevelImp, "Version") - layout.prop(LevelImp, "Target") - row = layout.row() - row.prop(LevelImp, "ForceNewTex") - row.prop(LevelImp, "AsObj") - row.prop(LevelImp, "UseCol") + level_import = scene.level_import + level_import.draw(layout) layout.operator("wm.sm64_import_level") layout.operator("wm.sm64_import_level_gfx") layout.operator("wm.sm64_import_level_col") @@ -2094,12 +2261,8 @@ def poll(self, context): def draw(self, context): layout = self.layout scene = context.scene - ActImp = scene.ActImp - layout.prop(ActImp, "FolderType") - layout.prop(ActImp, "GeoLayout") - layout.prop(ActImp, "Prefix") - layout.prop(ActImp, "Version") - layout.prop(ActImp, "Target") + actor_import = scene.actor_import + actor_import.draw(layout) layout.operator("wm.sm64_import_actor") layout.operator("wm.sm64_import_armature") @@ -2124,8 +2287,8 @@ def sm64_import_register(): for cls in classes: register_class(cls) - bpy.types.Scene.LevelImp = PointerProperty(type=LevelImport) - bpy.types.Scene.ActImp = PointerProperty(type=ActorImport) + bpy.types.Scene.level_import = PointerProperty(type=LevelImport) + bpy.types.Scene.actor_import = PointerProperty(type=ActorImport) def sm64_import_unregister(): @@ -2133,5 +2296,5 @@ def sm64_import_unregister(): for cls in reversed(classes): unregister_class(cls) - del bpy.types.Scene.LevelImp - del bpy.types.Scene.ActImp + del bpy.types.Scene.level_import + del bpy.types.Scene.actor_import diff --git a/fast64_internal/sm64/sm64_objects.py b/fast64_internal/sm64/sm64_objects.py index 3329fc408..744b1ae4e 100644 --- a/fast64_internal/sm64/sm64_objects.py +++ b/fast64_internal/sm64/sm64_objects.py @@ -23,8 +23,8 @@ enumMacrosNames, enumSpecialsNames, enumBehaviourPresets, - groupsSeg5, - groupsSeg6, + groups_seg_5_lvl_load, + groups_seg_6_lvl_load, ) from .sm64_spline import ( @@ -1836,8 +1836,8 @@ class SM64_SegmentProperties(bpy.types.PropertyGroup): seg5_group_custom: bpy.props.StringProperty(name="Segment 5 Group") seg6_load_custom: bpy.props.StringProperty(name="Segment 6 Seg") seg6_group_custom: bpy.props.StringProperty(name="Segment 6 Group") - seg5_enum: bpy.props.EnumProperty(name="Segment 5 Group", default="Do Not Write", items=groupsSeg5) - seg6_enum: bpy.props.EnumProperty(name="Segment 6 Group", default="Do Not Write", items=groupsSeg6) + seg5_enum: bpy.props.EnumProperty(name="Segment 5 Group", default="Do Not Write", items=groups_seg_5_lvl_load) + seg6_enum: bpy.props.EnumProperty(name="Segment 6 Group", default="Do Not Write", items=groups_seg_6_lvl_load) def draw(self, layout): col = layout.column() diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index 8dd2791b2..f86670520 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -86,9 +86,9 @@ def transform_matrix_to_bpy(transform: Matrix) -> Matrix: def evaluate_macro(line: str): scene = bpy.context.scene - if scene.LevelImp.Version in line: + if scene.level_import.version in line: return False - if scene.LevelImp.Target in line: + if scene.level_import.target in line: return False return True From 3ef1690b000fc427c52a0f846bd55007c0012a8c Mon Sep 17 00:00:00 2001 From: scut Date: Sun, 4 Aug 2024 15:00:40 -0400 Subject: [PATCH 08/30] fixed more bugs with importing and added macro parsing for all the defined enums in hacker64 --- fast64_internal/f3d/f3d_import.py | 130 ++++++-- fast64_internal/sm64/sm64_level_importer.py | 316 ++++++++++++++++---- 2 files changed, 359 insertions(+), 87 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index b67ac712e..3ce31dec6 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -80,7 +80,6 @@ def eval_texture_format(self): # used when importing for kirby class Mat: def __init__(self): - self.TwoCycle = False self.GeoSet = [] self.GeoClear = [] self.tiles = [Tile() for a in range(8)] @@ -89,6 +88,7 @@ def __init__(self): self.base_tile = 0 self.tex0 = None self.tex1 = None + self.other_mode = dict() self.num_lights = 1 self.light_col = {} self.ambient_light = tuple() @@ -209,7 +209,8 @@ def set_register_settings(self, mat: bpy.types.Material, f3d: F3DMaterialPropert self.set_color_registers(f3d) self.set_geo_mode(f3d.rdp_settings, mat) self.set_combiner(f3d) - self.set_render_mode(f3d) + self.set_rendermode(f3d) + self.set_othermode(f3d) # map tiles to locations in tmem # this ignores the application of LoDs for magnification @@ -222,7 +223,6 @@ def set_texture_tile_mapping(self): continue tex = self.tmem.get(tile.tmem, None) setattr(self, f"tex{tex_index}", tex) - print(f"tex{tex_index} attribute set to :{getattr(self, f'tex{tex_index}')}") def set_textures(self, f3d: F3DMaterialProperty, tex_path: Path): self.set_tex_scale(f3d) @@ -280,26 +280,22 @@ def set_tex_settings( tex_prop.tex_set = True tex_prop.tex = image tex_prop.tex_format = tile.eval_texture_format() - Sflags = self.eval_tile_flags(tile.Sflags) - for f in Sflags: - setattr(tex_prop.S, f, True) - Tflags = self.eval_tile_flags(tile.Tflags) - for f in Sflags: - setattr(tex_prop.T, f, True) + s_flags = self.eval_tile_flags(tile.Sflags) + tex_prop.S.mirror = "mirror" in s_flags + tex_prop.S.clamp = "clamp" in s_flags + t_flags = self.eval_tile_flags(tile.Tflags) + tex_prop.T.mirror = "mirror" in t_flags + tex_prop.T.clamp = "clamp" in t_flags tex_prop.S.low = tile.Slow tex_prop.T.low = tile.Tlow tex_prop.S.high = tile.Shigh tex_prop.T.high = tile.Thigh tex_prop.S.mask = tile.SMask tex_prop.T.mask = tile.TMask - - # rework with combinatoric render mode draft PR - def set_render_mode(self, f3d: F3DMaterialProperty): + + # rework with new render mode stuffs + def set_rendermode(self, f3d: F3DMaterialProperty): rdp = f3d.rdp_settings - if self.TwoCycle: - rdp.g_mdsft_cycletype = "G_CYC_2CYCLE" - else: - rdp.g_mdsft_cycletype = "G_CYC_1CYCLE" if hasattr(self, "RenderMode"): rdp.set_rendermode = True # if the enum isn't there, then just print an error for now @@ -309,6 +305,12 @@ def set_render_mode(self, f3d: F3DMaterialProperty): # print(f"set render modes with render mode {self.RenderMode}") except: print(f"could not set render modes with render mode {self.RenderMode}") + + def set_othermode(self, f3d: F3DMaterialProperty): + rdp = f3d.rdp_settings + for prop, val in self.other_mode.items(): + setattr(rdp, prop, val) + # add in exception handling here def set_geo_mode(self, rdp: RDPSettings, mat: bpy.types.Material): # texture gen has a different name than gbi @@ -448,6 +450,25 @@ def gsSPVertex(self, macro: Macro): self.LastLoad = vertex_load_length return self.continue_parse + def gsSPModifyVertex(self, macro: Macro): + vtx = self.VertBuff[hexOrDecInt(macro.args[0])] + where = self.eval_modify_vtx(macro.args[1]) + val = hexOrDecInt(macro.args[2]) + # if it is None, something weird, or screenspace I won't edit it + if where == "ST": + uv = (val >> 16)& 0xFFFF, val & 0xFFFF + self.Verts.append(self.Verts[vtx]) + self.UVs.append(uv) + self.VCs.append(self.VCs[vtx]) + self.VertBuff[hexOrDecInt(macro.args[0])] = len(self.Verts) + elif where == "RGBA": + vertex_col = [(val >> 8*i)&0xFF for i in range(4)].reverse() + self.Verts.append(self.Verts[vtx]) + self.UVs.append(self.UVs[vtx]) + self.VCs.append(vertex_col) + self.VertBuff[hexOrDecInt(macro.args[0])] = len(self.Verts) + return self.continue_parse + def gsSP2Triangles(self, macro: Macro): self.make_new_material() args = [hexOrDecInt(a) for a in macro.args] @@ -481,8 +502,7 @@ def gsSPLight(self, macro: Macro): self.LastMat.ambient_light = light.ambient else: num = re.search("_\d", macro.args[0]).group()[1] - if not num: - num = 1 + num = int(num) if num else 1 self.LastMat.light_col[num] = light.diffuse return self.continue_parse @@ -490,23 +510,21 @@ def gsSPLight(self, macro: Macro): def gsSPNumLights(self, macro: Macro): self.NewMat = 1 num = re.search("_\d", macro.args[0]).group()[1] - if not num: - num = 1 + num = int(num) if num else 1 self.LastMat.num_lights = num return self.continue_parse def gsSPLightColor(self, macro: Macro): self.NewMat = 1 num = re.search("_\d", macro.args[0]).group()[1] - if not num: - num = 1 + num = int(num) if num else 1 self.LastMat.light_col[num] = eval(macro.args[-1]).to_bytes(4, "big") return self.continue_parse - + + # not finished yet def gsSPSetLights0(self, macro: Macro): return self.continue_parse - # not finished yet def gsSPSetLights1(self, macro: Macro): return self.continue_parse @@ -528,11 +546,65 @@ def gsSPSetLights6(self, macro: Macro): def gsSPSetLights7(self, macro: Macro): return self.continue_parse - # upper/lower modes - def gsDPSetAlphaCompare(self, macro: Macro): + # some independent other mode settings + def gsDPSetTexturePersp(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_textpersp"] = macro.args[0] return self.continue_parse def gsDPSetDepthSource(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_zsrcsel"] = macro.args[0] + return self.continue_parse + + def gsDPSetColorDither(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_rgb_dither"] = macro.args[0] + return self.continue_parse + + def gsDPSetAlphaDither(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_alpha_dither"] = macro.args[0] + return self.continue_parse + + def gsDPSetCombineKey(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_combkey"] = macro.args[0] + return self.continue_parse + + def gsDPSetTextureConvert(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_textconv"] = macro.args[0] + return self.continue_parse + + def gsDPSetTextureFilter(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_text_filt"] = macro.args[0] + return self.continue_parse + + def gsDPSetTextureLOD(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_textlod"] = macro.args[0] + return self.continue_parse + + def gsDPSetTextureDetail(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_textdetail"] = macro.args[0] + return self.continue_parse + + def gsDPSetCycleType(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_cycletype"] = macro.args[0] + return self.continue_parse + + def gsDPPipelineMode(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_pipeline"] = macro.args[0] + return self.continue_parse + + def gsDPSetAlphaCompare(self, macro: Macro): + self.NewMat = 1 + self.LastMat.other_mode["g_mdsft_alpha_compare"] = macro.args[0] return self.continue_parse def gsSPFogFactor(self, macro: Macro): @@ -593,12 +665,6 @@ def gsSPGeometryMode(self, macro: Macro): self.LastMat.GeoSet.extend(argsS) return self.continue_parse - def gsDPSetCycleType(self, macro: Macro): - if "G_CYC_1CYCLE" in macro.args[0]: - self.LastMat.TwoCycle = False - if "G_CYC_2CYCLE" in macro.args[0]: - self.LastMat.TwoCycle = True - return self.continue_parse def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 8125a1721..db95277b8 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -47,10 +47,12 @@ parentObject, GetEnums, create_collection, + read16bitRGBA, ) from .sm64_constants import ( enumVersionDefs, enumLevelNames, + enumSpecialsNames, groups_obj_export, group_0_geos, group_1_geos, @@ -155,7 +157,7 @@ def __init__( self.objects = [] self.col = col - def add_warp(self, args: list[str]): + def add_warp(self, args: list[str], type: str): # set context to the root bpy.context.view_layer.objects.active = self.root # call fast64s warp node creation operator @@ -170,6 +172,7 @@ def add_warp(self, args: list[str]): level = Num2Name.get(eval(level)) if not level: level = "bob" + warp.warpType = type warp.destLevelEnum = level warp.destArea = args[2] chkpoint = args[-1].strip() @@ -178,6 +181,17 @@ def add_warp(self, args: list[str]): warp.warpFlagEnum = "WARP_NO_CHECKPOINT" else: warp.warpFlagEnum = "WARP_CHECKPOINT" + + def add_instant_warp(self, args: list[str]): + # set context to the root + bpy.context.view_layer.objects.active = self.root + # call fast64s warp node creation operator + bpy.ops.bone.add_warp_node() + warp = self.root.warpNodes[0] + warp.type = "Instant" + warp.warpID = args[0] + warp.destArea = args[1] + warp.instantOffset = [hexOrDecInt(val) for val in args[2:5]] def add_object(self, args: list[str]): self.objects.append(args) @@ -190,6 +204,29 @@ def place_objects(self, col_name: str = None): for object_args in self.objects: self.place_object(object_args, col) + def write_special_objects(self, special_objs: list[str], col: bpy.types.Collection): + special_presets = {enum[0] for enum in enumSpecialsNames} + for special in special_objs: + obj = bpy.data.objects.new("Empty", None) + col.objects.link(obj) + parentObject(self.root, obj) + obj.name = f"Special Object {special[0]}" + obj.sm64_obj_type = "Special" + if special[0] in special_presets: + obj.sm64_special_enum = special[0] + else: + obj.sm64_special_enum = "Custom" + obj.sm64_obj_preset = special[0] + loc = [eval(a.strip()) / self.scene.fast64.sm64.blender_to_sm64_scale for a in special[1:4]] + # rotate to fit sm64s axis + obj.location = [loc[0], -loc[2], loc[1]] + obj.rotation_euler[2] = hexOrDecInt(special[4]) + obj.sm64_obj_set_yaw = True + if special[5]: + obj.sm64_obj_set_bparam = True + obj.fast64.sm64.game_object.use_individual_params = False + obj.fast64.sm64.game_object.bparams = str(special[5]) + def place_object(self, args: list[str], col: bpy.types.Collection): Obj = bpy.data.objects.new("Empty", None) col.objects.link(Obj) @@ -206,8 +243,7 @@ def place_object(self, args: list[str], col: bpy.types.Collection): Obj.sm64_obj_model = args[0] loc = [eval(a.strip()) / self.scene.fast64.sm64.blender_to_sm64_scale for a in args[1:4]] # rotate to fit sm64s axis - loc = [loc[0], -loc[2], loc[1]] - Obj.location = loc + Obj.location = [loc[0], -loc[2], loc[1]] # fast64 just rotations by 90 on x rot = Euler([math.radians(eval(a.strip())) for a in args[4:7]], "ZXY") rot = rotate_quat_n64_to_blender(rot).to_euler("XYZ") @@ -284,7 +320,15 @@ def RETURN(self, macro: Macro, col: bpy.types.Collection): # Now deal with data cmds rather than flow control ones def WARP_NODE(self, macro: Macro, col: bpy.types.Collection): - self.areas[self.cur_area].add_warp(macro.args) + self.areas[self.cur_area].add_warp(macro.args, "Warp") + return self.continue_parse + + def PAINTING_WARP_NODE(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].add_warp(macro.args, "Painting") + return self.continue_parse + + def INSTANT_WARP(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].add_instant_warp(macro.args) return self.continue_parse def OBJECT_WITH_ACTS(self, macro: Macro, col: bpy.types.Collection): @@ -342,6 +386,12 @@ def TERRAIN(self, macro: Macro, col: bpy.types.Collection): def SET_BACKGROUND_MUSIC(self, macro: Macro, col: bpy.types.Collection): return self.generic_music(macro, col) + + def SET_MENU_MUSIC_WITH_REVERB(self, macro: Macro, col: bpy.types.Collection): + return self.generic_music(macro, col) + + def SET_BACKGROUND_MUSIC_WITH_REVERB(self, macro: Macro, col: bpy.types.Collection): + return self.generic_music(macro, col) def SET_MENU_MUSIC(self, macro: Macro, col: bpy.types.Collection): return self.generic_music(macro, col) @@ -349,15 +399,70 @@ def SET_MENU_MUSIC(self, macro: Macro, col: bpy.types.Collection): def generic_music(self, macro: Macro, col: bpy.types.Collection): root = self.areas[self.cur_area].root root.musicSeqEnum = "Custom" - root.music_seq = macro.args[-1] + root.music_seq = macro.args[1] return self.continue_parse # Don't support these for now def MACRO_OBJECTS(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def WHIRLPOOL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def SET_ECHO(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def MARIO_POS(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + + def SET_REG(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def GET_OR_SET(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def CHANGE_AREA_SKYBOX(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + # Don't support for now but maybe later + def JUMP_LINK_PUSH_ARG(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def JUMP_N_TIMES(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def LOOP_BEGIN(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def LOOP_UNTIL(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def JUMP_IF(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def JUMP_LINK_IF(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def SKIP_IF(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def SKIP(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def SKIP_NOP(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def LOAD_AREA(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def UNLOAD_AREA(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def UNLOAD_MARIO_AREA(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") + + def UNLOAD_AREA(self, macro: Macro, col: bpy.types.Collection): + raise Exception("no support yet woops") # use group mapping to set groups eventually def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): @@ -366,6 +471,36 @@ def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): def LOAD_MIO0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + def LOAD_TITLE_SCREEN_BG(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_GODDARD(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_BEHAVIOR_DATA(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_COMMON0(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_GROUPB(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_GROUPA(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_EFFECTS(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_SKYBOX(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_TEXTURE_BIN(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_LEVEL_DATA(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def LOAD_YAY0(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse @@ -377,8 +512,60 @@ def LOAD_VANILLA_OBJECTS(self, macro: Macro, col: bpy.types.Collection): def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse + + def LOAD_RAW_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def LOAD_MARIO_HEAD(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + # throw exception saying I cannot process + def EXECUTE(self, macro: Macro, col: bpy.types.Collection): + raise Exception("Processing of EXECUTE macro is not currently supported") + + def EXIT_AND_EXECUTE(self, macro: Macro, col: bpy.types.Collection): + raise Exception("Processing of EXIT_AND_EXECUTE macro is not currently supported") + + def EXECUTE_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): + raise Exception("Processing of EXECUTE_WITH_CODE macro is not currently supported") + + def EXIT_AND_EXECUTE_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): + raise Exception("Processing of EXIT_AND_EXECUTE_WITH_CODE macro is not currently supported") + # not useful for bpy, dummy these script cmds + def CMD3A(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def STOP_MUSIC(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def GAMMA(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def BLACKOUT(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def TRANSITION(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def NOP(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def CMD23(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def PUSH_POOL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def POP_POOL(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def SLEEP(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + + def ROOMS(self, macro: Macro, col: bpy.types.Collection): + return self.continue_parse + def MARIO(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse @@ -409,6 +596,11 @@ def CLEAR_LEVEL(self, macro: Macro, col: bpy.types.Collection): def SLEEP_BEFORE_EXIT(self, macro: Macro, col: bpy.types.Collection): return self.continue_parse +@dataclass +class ColTri(): + type: Any + verts: list[int] + special_param: Any = None class Collision(DataParser): def __init__(self, collision: list[str], scale: float): @@ -416,10 +608,9 @@ def __init__(self, collision: list[str], scale: float): self.scale = scale self.vertices = [] # key=type,value=tri data - self.tris = {} - self.type = None + self.tris: list[ColTri] = [] + self.type: str = None self.special_objects = [] - self.tri_types = [] self.water_boxes = [] super().__init__() @@ -450,53 +641,39 @@ def write_collision( if not col: col = scene.collection self.write_water_boxes(scene, parent, name, col) - mesh = bpy.data.meshes.new(name + " data") - tris = [] - for t in self.tris.values(): - # deal with special tris - if len(t[0]) > 3: - t = [a[0:3] for a in t] - tris.extend(t) - mesh.from_pydata(self.vertices, [], tris) - - obj = bpy.data.objects.new(name + " Mesh", mesh) + mesh = bpy.data.meshes.new(f"{name} data") + mesh.from_pydata(self.vertices, [], [tri.verts for tri in self.tris]) + obj = bpy.data.objects.new(f"{name} mesh", mesh) col.objects.link(obj) obj.ignore_render = True if parent: parentObject(parent, obj) rotate_object(-90, obj, world=1) - polys = obj.data.polygons - x = 0 bpy.context.view_layer.objects.active = obj - max = len(polys) - for i, p in enumerate(polys): - a = self.tri_types[x][0] - if i >= a: + max = len(obj.data.polygons) + col_materials: dict[str, "mat_index"] = dict() + for i, (bpy_tri, col_tri) in enumerate(zip(obj.data.polygons, self.tris)): + if col_tri.type not in col_materials: bpy.ops.object.create_f3d_mat() # the newest mat should be in slot[-1] - mat = obj.data.materials[x] + mat = obj.data.materials[-1] + col_materials[col_tri.type] = len(obj.data.materials) - 1 + # fix this mat.collision_type_simple = "Custom" - mat.collision_custom = self.tri_types[x][1] - mat.name = "Sm64_Col_Mat_{}".format(self.tri_types[x][1]) - color = ((max - a) / (max), (max + a) / (2 * max - a), a / max, 1) # Just to give some variety - mat.f3d_mat.default_light_color = color - # check for param - if len(self.tri_types[x][2]) > 3: + mat.collision_custom = col_tri.type + mat.name = "Sm64_Col_Mat_{}".format(col_tri.type) + # Just to give some variety + mat.f3d_mat.default_light_color = [a / 255 for a in (hash(id(int(i))) & 0xFFFFFFFF).to_bytes(4, "big")] + if col_tri.special_param is not None: mat.use_collision_param = True - mat.collision_param = str(self.tri_types[x][2][3]) - x += 1 - with bpy.context.temp_override(material=mat): - bpy.ops.material.update_f3d_nodes() - p.material_index = x - 1 + mat.collision_param = str(col_tri.special_param) + # I don't think I care about this. It makes program slow + # with bpy.context.temp_override(material=mat): + # bpy.ops.material.update_f3d_nodes() + bpy_tri.material_index = col_materials[col_tri.type] return obj def parse_collision(self): self.parse_stream(self.collision, 0) - # This will keep track of how to assign mats - a = 0 - for k, v in self.tris.items(): - self.tri_types.append([a, k, v[0]]) - a += len(v) - self.tri_types.append([a, 0]) def COL_VERTEX(self, macro: Macro): self.vertices.append([eval(v) / self.scale for v in macro.args]) @@ -504,12 +681,14 @@ def COL_VERTEX(self, macro: Macro): def COL_TRI_INIT(self, macro: Macro): self.type = macro.args[0] - if not self.tris.get(self.type): - self.tris[self.type] = [] return self.continue_parse def COL_TRI(self, macro: Macro): - self.tris[self.type].append([eval(a) for a in macro.args]) + self.tris.append(ColTri(self.type, [eval(a) for a in macro.args])) + return self.continue_parse + + def COL_TRI_SPECIAL(self, macro: Macro): + self.tris.append(ColTri(self.type, [eval(a) for a in macro.args[0:3]], special_param = eval(macro.args[3]))) return self.continue_parse def COL_WATER_BOX(self, macro: Macro): @@ -519,10 +698,14 @@ def COL_WATER_BOX(self, macro: Macro): # not written out currently def SPECIAL_OBJECT(self, macro: Macro): - self.special_objects.append(macro.args) + self.special_objects.append((*macro.args, 0, 0)) return self.continue_parse def SPECIAL_OBJECT_WITH_YAW(self, macro: Macro): + self.special_objects.append((*macro.args, 0)) + return self.continue_parse + + def SPECIAL_OBJECT_WITH_YAW_AND_PARAM(self, macro: Macro): self.special_objects.append(macro.args) return self.continue_parse @@ -1038,9 +1221,6 @@ def GEO_NOP_1F(self, macro: Macro, depth: int): def GEO_NODE_START(self, macro: Macro, depth: int): return self.continue_parse - - def GEO_BACKGROUND(self, macro: Macro, depth: int): - return self.continue_parse def GEO_NODE_SCREEN_AREA(self, macro: Macro, depth: int): return self.continue_parse @@ -1091,7 +1271,10 @@ def GEO_CAMERA_FRUSTRUM(self, macro: Macro, depth: int): def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): raise Exception("you must call this function from a sublcass") - + + def GEO_BACKGROUND(self, macro: Macro, depth: int): + raise Exception("you must call this function from a sublcass") + def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): raise Exception("you must call this function from a sublcass") @@ -1225,6 +1408,28 @@ def GEO_CAMERA(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" self.area_root.camType = macro.args[0] return self.continue_parse + + def GEO_BACKGROUND(self, macro: Macro, depth: int): + level_root = self.area_root.parent + # check if in enum + skybox_name = macro.args[0].replace("BACKGROUND_","") + bg_enums = {enum.identifier for enum in level_root.bl_rna.properties["background"].enum_items} + if skybox_name in bg_enums: + level_root.background = skybox_name + else: + level_root.background = "CUSTOM" + # this is cringe and should be changed + scene.fast64.sm64.level.backgroundID = macro.args[0] + # I don't have access to the bg segment, that is in level obj + scene.fast64.sm64.level.backgroundSegment = "unavailable srry :(" + + return self.continue_parse + + def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): + level_root = self.area_root.parent + level_root.useBackgroundColor = True + level_root.backgroundColor = read16bitRGBA(hexOrDecInt(macro.args[0])) + return self.continue_parse # can only apply to meshes def GEO_RENDER_RANGE(self, macro: Macro, depth: int): @@ -1859,7 +2064,8 @@ def write_level_collision_to_bpy(lvl: Level, scene: bpy.types.Scene, cleanup: bo col_parser = Collision(area.ColFile, scene.fast64.sm64.blender_to_sm64_scale) col_parser.parse_collision() name = "SM64 {} Area {} Col".format(scene.level_import.level, area_index) - obj = col_parser.write_collision(scene, name, area.root, col=col) + obj = col_parser.write_collision(scene, name, area.root, col) + area.write_special_objects(col_parser.special_objects, col) # final operators to clean stuff up if cleanup: obj.data.validate() @@ -1916,12 +2122,12 @@ def execute(self, context): else: geo_path = folder / (prefix + "geo.c") leveldat = folder / (prefix + "leveldata.c") - root_obj = bpy.data.objects.new("Empty", None) - root_obj.name = f"Actor {scene.actor_import.geo_layout}" - rt_col.objects.link(root_obj) + # root_obj = bpy.data.objects.new("Empty", None) + # root_obj.name = f"Actor {scene.actor_import.geo_layout}" + # rt_col.objects.link(root_obj) geo_layout = find_actor_models_from_geo( - geo_path, layout_name, scene, root_obj, folder, col=rt_col + geo_path, layout_name, scene, None, folder, col=rt_col ) # return geo layout class and write the geo layout models = construct_model_data_from_file(leveldat, scene, folder) # just a try, in case you are importing from not the base decomp repo From 933676e19e0448b2cd6164301f88807720fcc4de Mon Sep 17 00:00:00 2001 From: scut Date: Wed, 1 Jan 2025 13:01:43 -0500 Subject: [PATCH 09/30] fixed plugin UVs on newer blender versions --- fast64_internal/sm64/sm64_level_importer.py | 26 +++++++++++++++------ 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index db95277b8..10b5e880a 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -5,6 +5,7 @@ import bpy +import bmesh from bpy.props import ( StringProperty, @@ -872,7 +873,8 @@ def parse_tri(self, Tri: list[int]): return [a + L - self.LastLoad for a in Tri] def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path): - tris = mesh.polygons + # bpy.app.version >= (3, 5, 0) + bpy.context.view_layer.objects.active = obj ind = -1 new = -1 @@ -890,6 +892,15 @@ def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: in Valph = obj.data.color_attributes.get("Alpha") if not Valph: Valph = obj.data.color_attributes.new(name="Alpha", type=e, domain="CORNER") + + b_mesh = bmesh.new() + b_mesh.from_mesh(mesh) + tris = b_mesh.faces + tris.ensure_lookup_table() + uv_map = b_mesh.loops.layers.uv.active + v_color = b_mesh.loops.layers.float_color["Col"] + v_alpha = b_mesh.loops.layers.float_color["Alpha"] + self.Mats.append([len(tris), 0]) for i, t in enumerate(tris): if i > self.Mats[ind + 1][0]: @@ -915,14 +926,15 @@ def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: in else: WH = i.size # Set UV data and Vertex Color Data - for v, l in zip(t.vertices, t.loop_indices): - uv = self.UVs[v] - vcol = self.VCs[v] + for v, l in zip(t.verts, t.loops): + uv = self.UVs[v.index] + vcol = self.VCs[v.index] # scale verts - UVmap.data[l].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] + l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] # idk why this is necessary. N64 thing or something? - UVmap.data[l].uv[1] = UVmap.data[l].uv[1] * -1 + 1 - Vcol.data[l].color = [a / 255 for a in vcol] + l[uv_map].uv[1] = l[uv_map].uv[1] * -1 + 1 + l[v_color] = [a / 255 for a in vcol] + b_mesh.to_mesh(mesh) # create a new f3d_mat given an SM64_Material class but don't create copies with same props def create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): From c456be79165e02b70280c7b574e6a88dbfe0928d Mon Sep 17 00:00:00 2001 From: scut Date: Mon, 17 Mar 2025 21:36:15 -0400 Subject: [PATCH 10/30] added support for linking objects for special objects, added passes for linked actors with missing geos --- fast64_internal/f3d/f3d_import.py | 27 ++++++ fast64_internal/sm64/sm64_level_importer.py | 101 +++++++++++++------- 2 files changed, 93 insertions(+), 35 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 89f359c1d..6926c600f 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -554,6 +554,25 @@ def gsSPSetLights6(self, macro: Macro): def gsSPSetLights7(self, macro: Macro): return self.continue_parse + def gsSPSetOtherMode(self, macro: Macro): + self.NewMat = 1 + if macro.args[0] == "G_SETOTHERMODE_H": + for i, othermode in enumerate(macro.args[3].split("|")): + # this may cause an issue if someone uses a wacky custom othermode H + mode_h_attr = RDPSettings.other_mode_h_attributes[i][1] + self.LastMat.other_mode[mode_h_attr] = othermode.strip() + else: + if int(macro.args[2]) > 3: + self.LastMat.RenderMode = [] + # top two bits are z src and alpha compare, rest is render mode + for i, othermode in enumerate(macro.args[3].split("|")): + if int(macro.args[2]) > 3 and i > 1: + self.LastMat.RenderMode.append(othermode) + continue + mode_l_attr = RDPSettings.other_mode_l_attributes[i][1] + self.LastMat.other_mode[mode_l_attr] = othermode.strip() + return self.continue_parse + # some independent other mode settings def gsDPSetTexturePersp(self, macro: Macro): self.NewMat = 1 @@ -683,6 +702,14 @@ def gsSPGeometryMode(self, macro: Macro): self.LastMat.GeoSet.extend(argsS) return self.continue_parse + def gsSPLoadGeometryMode(self, macro: Macro): + self.NewMat = 1 + geo_set = {a.strip().lower() for a in macro.args[0].split("|")} + all_geos = set(RDPSettings.geo_mode_attributes.values()) + self.LastMat.GeoSet = list(geo_set) + self.LastMat.GeoClear = list(all_geos.difference(geo_set)) + return self.continue_parse + def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 self.LastMat.Combiner = self.eval_set_combine_macro(macro.args) diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 3cf51bf63..f801c3430 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -137,6 +137,7 @@ def __init__( root.sm64_obj_type = "Area Root" root.areaIndex = num self.objects = [] + self.placed_special_objects = [] # for linking objects later self.col = col def add_warp(self, args: list[str], type: str): @@ -196,28 +197,18 @@ def place_objects(self, col_name: str = None, actor_models: dict[model_name, bpy model_obj = actor_models.get(object.model, None) if model_obj is None: continue - # duplicate, idk why temp override doesn't work - # with bpy.context.temp_override(active_object = model_obj, selected_objects = model_obj.children_recursive): - # bpy.ops.object.duplicate_move_linked() - bpy.ops.object.select_all(action="DESELECT") - for child in model_obj.children_recursive: - child.select_set(True) - model_obj.select_set(True) - bpy.context.view_layer.objects.active = model_obj - bpy.ops.object.duplicate() - new_obj = bpy.context.active_object - bpy.ops.object.transform_apply(location=False, rotation=True, scale=True, properties=False) - # unlink from col, add to area col - for obj in (new_obj, *new_obj.children_recursive): - obj.users_collection[0].objects.unlink(obj) - col.objects.link(obj) - new_obj.location = bpy_obj.location - new_obj.rotation_euler = bpy_obj.rotation_euler - # add constraints so obj follows along when you move empty - copy_loc = new_obj.constraints.new("COPY_LOCATION") - copy_loc.target = bpy_obj - copy_rot = new_obj.constraints.new("COPY_ROTATION") - copy_rot.target = bpy_obj + self.link_bpy_obj_to_empty(bpy_obj, model_obj, col) + if not actor_models: + return + for placed_obj in self.placed_special_objects: + if "level_geo" in placed_obj.sm64_special_enum: + level_geo_model_name = self.get_level_geo_from_special(placed_obj.sm64_special_enum) + model_obj = actor_models.get(level_geo_model_name, None) + if model_obj: + self.link_bpy_obj_to_empty(placed_obj, model_obj, col) + + def get_level_geo_from_special(self, special_name: str): + return special_name.replace("special", "MODEL").replace("geo", "GEOMETRY").upper() def write_special_objects(self, special_objs: list[str], col: bpy.types.Collection): special_presets = {enum[0] for enum in enumSpecialsNames} @@ -241,6 +232,7 @@ def write_special_objects(self, special_objs: list[str], col: bpy.types.Collecti bpy_obj.sm64_obj_set_bparam = True bpy_obj.fast64.sm64.game_object.use_individual_params = False bpy_obj.fast64.sm64.game_object.bparams = str(special[5]) + self.placed_special_objects.append(bpy_obj) def place_object(self, object: Object, col: bpy.types.Collection): bpy_obj = bpy.data.objects.new("Empty", None) @@ -274,6 +266,32 @@ def place_object(self, object: Object, col: bpy.types.Collection): setattr(bpy_obj, form.format(i), False) return bpy_obj + def link_bpy_obj_to_empty( + self, bpy_obj: bpy.Types.Object, model_obj: bpy.Types.Collection, col: bpy.Types.Collection + ): + # duplicate, idk why temp override doesn't work + # with bpy.context.temp_override(active_object = model_obj, selected_objects = model_obj.children_recursive): + # bpy.ops.object.duplicate_move_linked() + bpy.ops.object.select_all(action="DESELECT") + for child in model_obj.children_recursive: + child.select_set(True) + model_obj.select_set(True) + bpy.context.view_layer.objects.active = model_obj + bpy.ops.object.duplicate() + new_obj = bpy.context.active_object + bpy.ops.object.transform_apply(location=False, rotation=True, scale=True, properties=False) + # unlink from col, add to area col + for obj in (new_obj, *new_obj.children_recursive): + obj.users_collection[0].objects.unlink(obj) + col.objects.link(obj) + new_obj.location = bpy_obj.location + new_obj.rotation_euler = bpy_obj.rotation_euler + # add constraints so obj follows along when you move empty + copy_loc = new_obj.constraints.new("COPY_LOCATION") + copy_loc.target = bpy_obj + copy_rot = new_obj.constraints.new("COPY_ROTATION") + copy_rot.target = bpy_obj + class Level(DataParser): def __init__(self, scripts: dict[str, list[str]], scene: bpy.types.Scene, root: bpy.types.Object): @@ -284,7 +302,7 @@ def __init__(self, scripts: dict[str, list[str]], scene: bpy.types.Scene, root: self.cur_area: int = None self.root = root self.loaded_geos: dict[model_name:str, geo_name:str] = dict() - self.loaded_dls: dict[dl_name:str, geo_name:str] = dict() + self.loaded_dls: dict[model_name:str, dl_name:str] = dict() super().__init__() def parse_level_script(self, entry: str, col: bpy.types.Collection = None): @@ -997,6 +1015,7 @@ class GraphNodes(DataParser): "geo_movtex_pause_control", "geo_movtex_draw_water_regions", "geo_cannon_circle_base", + "geo_envfx_main", } def __init__( @@ -1429,7 +1448,8 @@ def parse_level_geo(self, start: str): raise Exception( "Could not find geo layout {} from levels/{}/{}geo.c".format( start, self.props.level_name, self.props.level_prefix - ) + ), + "pass_linked_export", ) self.stream.append(start) self.parse_stream_from_start(geo_layout, start, 0) @@ -2100,8 +2120,14 @@ def find_actor_models_from_model_ids( print(f"could not find model {model}") continue geo_layout = GeoLayout(geo_layout_dict, root_obj, scene, layout_name, root_obj, col=col) - geo_layout.parse_level_geo(layout_name) - geo_layout_per_model[model] = geo_layout + try: + geo_layout.parse_level_geo(layout_name) + geo_layout_per_model[model] = geo_layout + except Exception as exc: + if exc.args[1] == "pass_linked_export": + print(exc) + else: + raise Exception(exc) return geo_layout_per_model @@ -2194,7 +2220,13 @@ def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types. return lvl -def write_level_collision_to_bpy(lvl: Level, scene: bpy.types.Scene, cleanup: bool, col_name: str = None): +def write_level_collision_to_bpy( + lvl: Level, + scene: bpy.types.Scene, + cleanup: bool, + col_name: str = None, + actor_models: dict[model_name, bpy.Types.Mesh] = None, +): for area_index, area in lvl.areas.items(): if not col_name: col = area.root.users_collection[0] @@ -2220,12 +2252,7 @@ def write_level_collision_to_bpy(lvl: Level, scene: bpy.types.Scene, cleanup: bo # import level collision given a level script def import_level_collision( - aggregate: Path, - lvl: Level, - scene: bpy.types.Scene, - root_path: Path, - cleanup: bool, - col_name: str = None, + aggregate: Path, lvl: Level, scene: bpy.types.Scene, root_path: Path, cleanup: bool, col_name: str = None ) -> Level: lvl = find_collision_data_from_path( aggregate, lvl, scene, root_path @@ -2355,7 +2382,10 @@ def execute(self, context): ) # returns level class if props.import_linked_actors: - unique_model_ids = {object.model for area in lvl.areas.values() for object in area.objects} + unique_model_ids = {model for model in lvl.loaded_geos.keys()} + unique_model_ids.update({model for model in lvl.loaded_dls.keys()}) + unique_model_ids.update({object.model for area in lvl.areas.values() for object in area.objects}) + geo_actor_paths = [ *( decomp_path / "actors" / (linked_group.group_prefix + "_geo.c") @@ -2383,12 +2413,13 @@ def execute(self, context): # update model to be root obj of geo actor_geo_layouts[model] = geo_layout.first_obj + lvl = import_level_collision(level_data_path, lvl, scene, decomp_path, self.cleanup, col_name=col_col) write_level_objects(lvl, col_name=obj_col, actor_models=actor_geo_layouts) # actor_col.hide_render = True # actor_col.hide_viewport = True else: write_level_objects(lvl, col_name=obj_col) - lvl = import_level_collision(level_data_path, lvl, scene, decomp_path, self.cleanup, col_name=col_col) + lvl = import_level_collision(level_data_path, lvl, scene, decomp_path, self.cleanup, col_name=col_col) lvl = import_level_graphics( [geo_path], lvl, scene, decomp_path, [level_data_path], cleanup=self.cleanup, col_name=gfx_col ) From 4da480943372b4a6020a3162567a0162f3b72849 Mon Sep 17 00:00:00 2001 From: scut Date: Fri, 21 Mar 2025 23:25:44 -0400 Subject: [PATCH 11/30] profiling, sped up import by approx half, still much more to go --- fast64_internal/sm64/sm64_level_importer.py | 80 +++++++++++++-------- 1 file changed, 50 insertions(+), 30 deletions(-) diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index f801c3430..9f67fef63 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -27,6 +27,9 @@ ) from bpy.utils import register_class, unregister_class +import cProfile, pstats, io +from pstats import SortKey + import os, sys, math, re, typing from array import array from struct import * @@ -43,6 +46,7 @@ # from SM64classes import * from ..f3d.f3d_import import * +from ..f3d.f3d_material import update_node_values_of_material from ..panels import SM64_Panel from ..utility_importer import * from ..utility import ( @@ -277,7 +281,7 @@ def link_bpy_obj_to_empty( child.select_set(True) model_obj.select_set(True) bpy.context.view_layer.objects.active = model_obj - bpy.ops.object.duplicate() + bpy.ops.object.duplicate_move() new_obj = bpy.context.active_object bpy.ops.object.transform_apply(location=False, rotation=True, scale=True, properties=False) # unlink from col, add to area col @@ -815,8 +819,12 @@ def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_p f3d.draw_layer.sm64 = layer self.set_register_settings(mat, f3d) self.set_textures(f3d, textures, tex_path) - with bpy.context.temp_override(material=mat): - bpy.ops.material.update_f3d_nodes() + + # manually call node update for speed + mat.f3d_update_flag = True + update_node_values_of_material(mat, bpy.context) + mat.f3d_mat.presetName = "Custom" + mat.f3d_update_flag = False def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path): self.set_tex_scale(f3d) @@ -909,8 +917,6 @@ def parse_tri(self, Tri: list[int]): return [a + L - self.LastLoad for a in Tri] def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path): - # bpy.app.version >= (3, 5, 0) - bpy.context.view_layer.objects.active = obj ind = -1 new = -1 @@ -954,24 +960,27 @@ def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: in new = len(mesh.materials) - 1 # if somehow there is no material assigned to the triangle or something is lost if new != -1: - t.material_index = new - # Get texture size or assume 32, 32 otherwise - i = mesh.materials[new].f3d_mat.tex0.tex - if not i: - WH = (32, 32) - else: - WH = i.size - # Set UV data and Vertex Color Data - for v, l in zip(t.verts, t.loops): - uv = self.UVs[v.index] - vcol = self.VCs[v.index] - # scale verts - l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] - # idk why this is necessary. N64 thing or something? - l[uv_map].uv[1] = l[uv_map].uv[1] * -1 + 1 - l[v_color] = [a / 255 for a in vcol] + self.apply_loop_data(new, mesh, t, uv_map, v_color, v_alpha) b_mesh.to_mesh(mesh) + def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv_map, v_color, v_alpha): + tri.material_index = mat + # Get texture size or assume 32, 32 otherwise + i = mesh.materials[mat].f3d_mat.tex0.tex + if not i: + WH = (32, 32) + else: + WH = i.size + # Set UV data and Vertex Color Data + for v, l in zip(tri.verts, tri.loops): + uv = self.UVs[v.index] + vcol = self.VCs[v.index] + # scale verts + l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] + # idk why this is necessary. N64 thing or something? + l[uv_map].uv[1] = l[uv_map].uv[1] * -1 + 1 + l[v_color] = [a / 255 for a in vcol] + # create a new f3d_mat given an SM64_Material class but don't create copies with same props def create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): if not self.props.force_new_tex: @@ -982,11 +991,14 @@ def create_new_f3d_mat(self, mat: SM64_Material, mesh: bpy.types.Mesh): dupe = mat.mat_hash_f3d(F3Dmat.f3d_mat) if dupe: return F3Dmat - if mesh.materials: - mat = mesh.materials[-1] - new = mat.id_data.copy() # make a copy of the data block + f3d_mat = None + for mat in bpy.data.materials: + if mat.is_f3d: + f3d_mat = mat + if f3d_mat: + new_mat = f3d_mat.id_data.copy() # make a copy of the data block # add a mat slot and add mat to it - mesh.materials.append(new) + mesh.materials.append(new_mat) else: if self.props.as_obj: NewMat = bpy.data.materials.new(f"sm64 {mesh.name.replace('Data', 'material')}") @@ -1900,7 +1912,7 @@ def write_armature_to_bpy( def apply_mesh_data( - f3d_dat: SM64_F3D, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, root_path: Path, cleanup: bool = True + f3d_dat: SM64_F3D, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, root_path: Path, cleanup: bool = False ): f3d_dat.apply_mesh_data(obj, mesh, layer, root_path) if cleanup: @@ -2005,7 +2017,7 @@ def write_geo_to_bpy( # write the gfx for a level given the level data, and f3d data -def write_level_to_bpy(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: SM64_F3D, cleanup: bool = True): +def write_level_to_bpy(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: SM64_F3D, cleanup: bool = False): for area in lvl.areas.values(): write_geo_to_bpy(area.geo, scene, f3d_dat, root_path, dict(), cleanup=cleanup) return lvl @@ -2186,7 +2198,7 @@ def import_level_graphics( scene: bpy.types.Scene, root_path: Path, aggregates: list[Path], - cleanup: bool = True, + cleanup: bool = False, col_name: str = None, ) -> Level: lvl = find_level_models_from_geo(geo_paths, lvl, scene, root_path, col_name=col_name) @@ -2360,9 +2372,11 @@ class SM64_LvlImport(Operator): bl_label = "Import Level" bl_idname = "wm.sm64_import_level" - cleanup = True + cleanup = False def execute(self, context): + pr = cProfile.Profile() + pr.enable() scene = context.scene props = scene.fast64.sm64.importer @@ -2423,6 +2437,12 @@ def execute(self, context): lvl = import_level_graphics( [geo_path], lvl, scene, decomp_path, [level_data_path], cleanup=self.cleanup, col_name=gfx_col ) + pr.disable() + s = io.StringIO() + sortby = SortKey.CUMULATIVE + ps = pstats.Stats(pr, stream=s).sort_stats(sortby) + ps.print_stats(20) + print(s.getvalue()) return {"FINISHED"} @@ -2430,7 +2450,7 @@ class SM64_LvlGfxImport(Operator): bl_label = "Import Gfx" bl_idname = "wm.sm64_import_level_gfx" - cleanup = True + cleanup = False def execute(self, context): scene = context.scene From 6c680d551b6b28b8e1e26de4f661e5b96abc2730 Mon Sep 17 00:00:00 2001 From: scut Date: Tue, 27 Jan 2026 20:59:56 -0500 Subject: [PATCH 12/30] fixed importing for translate rotate nodes, made empty models not import, bugfix for armature imports --- fast64_internal/sm64/sm64_level_importer.py | 51 ++++++++++++++++----- 1 file changed, 40 insertions(+), 11 deletions(-) diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 9835d21e3..410a5bc69 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -1,6 +1,11 @@ # ------------------------------------------------------------------------ # Header # ------------------------------------------------------------------------ + +# todos +# create textures from u8 / u16 arrays (slow, give checkbox option) +# make layer detection work better? + from __future__ import annotations @@ -657,6 +662,9 @@ def __init__(self, collision: list[str], scale: float): def write_water_boxes( self, scene: bpy.types.Scene, parent: bpy.types.Object, name: str, col: bpy.types.Collection = None ): + # water boxes don't work on hacker apparently + if scene.fast64.sm64.importer.export_friendly and "HackerSM64" in scene.fast64.sm64.refresh_version: + return for i, w in enumerate(self.water_boxes): Obj = bpy.data.objects.new("Empty", None) scene.collection.objects.link(Obj) @@ -688,6 +696,7 @@ def write_collision( obj.ignore_render = True if parent: parentObject(parent, obj) + # look into making this better rotate_object(-90, obj, world=1) bpy.context.view_layer.objects.active = obj max = len(obj.data.polygons) @@ -1022,6 +1031,8 @@ class GraphNodes(DataParser): _skipped_geo_asm_funcs = { "geo_movtex_pause_control", "geo_movtex_draw_water_regions", + "geo_movtex_draw_colored", + "geo_movtex_update_horizontal", "geo_cannon_circle_base", "geo_envfx_main", } @@ -1100,9 +1111,10 @@ def first_obj(self): return root return None + # this gets transformed by root transform def get_translation(self, trans_vector: Sequence): translation = [float(val) for val in trans_vector] - return [translation[0], -translation[2], translation[1]] + return [translation[0], translation[2], -translation[1]] def get_rotation(self, rot_vector: Sequence): rotation = Euler((math.radians(float(val)) for val in rot_vector), "ZXY") @@ -1236,6 +1248,7 @@ def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): self.set_transform(geo_obj, self.last_transform) return geo_obj + # Build a matrix that rotates around the z axis, then the x axis, then the y axis, and then translates and multiplies. def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): transform = Matrix.LocRotScale( self.get_translation(macro.args[1:4]), self.get_rotation(macro.args[4:7]), Vector((1, 1, 1)) @@ -1492,8 +1505,10 @@ def parse_level_geo(self, start: str): def GEO_ASM(self, macro: Macro, depth: int): # envfx goes on the area root if "geo_envfx_main" in macro.args[1]: - env_fx = macro.args[1] - if any(env_fx is enum_fx[0] for enum_fx in enumEnvFX): + env_fx = macro.args[0] + if not env_fx or (env_fx == "ENVFX_MODE_NONE" and self.props.export_friendly): + return self.continue_parse + elif any(env_fx is enum_fx[0] for enum_fx in enumEnvFX): self.area_root.envOption = env_fx else: self.area_root.envOption = "Custom" @@ -1752,7 +1767,6 @@ def setup_geo_obj(self, obj_name: str, geo_cmd: str, layer: int = None): return geo_bone def add_model(self, model_data: ModelDat, obj_name: str, geo_cmd: str, layer: int = None): - ind = self.get_parser(self.stream[-1]).head self.models.append(model_data) model_data.vertex_group_name = f"{self.ordered_name} {obj_name} {model_data.model_name}" model_data.switch_index = self.switch_index @@ -1925,12 +1939,19 @@ def write_armature_to_bpy( ): parsed_model_data = recurse_armature(geo_armature, scene, f3d_dat, root_path, parsed_model_data, cleanup=cleanup) - objects_by_armature = dict() - for model_data in geo_armature.models: - if not objects_by_armature.get(model_data.armature_obj, None): - objects_by_armature[model_data.armature_obj] = [model_data.object] - else: - objects_by_armature[model_data.armature_obj].append(model_data.object) + def glob_models_in_arm(object_dict: dict, geo_armature: GeoArmature): + for model_data in geo_armature.models: + if not object_dict.get(model_data.armature_obj, None): + object_dict[model_data.armature_obj] = [model_data.object] + else: + object_dict[model_data.armature_obj].append(model_data.object) + if not geo_armature.children: + return object_dict + for arm in geo_armature.children: + object_dict = glob_models_in_arm(object_dict, arm) + return object_dict + + objects_by_armature = glob_models_in_arm(dict(), geo_armature) for armature_obj, objects in objects_by_armature.items(): # I don't really know the specific override needed for this to work @@ -2039,7 +2060,15 @@ def write_geo_to_bpy( mesh = bpy.data.meshes.new(name) meshes[name] = mesh [verts, tris] = f3d_dat.get_f3d_data_from_model(model_data.model_name, layer=layer) - mesh.from_pydata(verts, [], tris) + # don't write empty models, delete empties with no children + # potential mat errors if used for DL setup but current importer should account for that using last_mat system + if tris: + mesh.from_pydata(verts, [], tris) + elif not geo.children: + bpy.data.objects.remove(model_data.object) + model_data.object = None + meshes.pop(name) + continue # swap out placeholder mesh data model_data.object.data = mesh From 31d02683014edf62e83ed6968b2bf52cba61bb8a Mon Sep 17 00:00:00 2001 From: scut Date: Thu, 29 Jan 2026 20:51:09 -0500 Subject: [PATCH 13/30] added inverse gamma correction to color registers, fixed light DL cmd parsing, fixed certain vanilla level oddities --- fast64_internal/f3d/f3d_import.py | 21 +++++++++++++++------ fast64_internal/sm64/sm64_level_importer.py | 7 ++++++- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 876e198c3..359fc6133 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -19,7 +19,7 @@ from ..f3d.f3d_material import F3DMaterialProperty, RDPSettings, TextureProperty from ..f3d.f3d_gbi import get_F3D_GBI -from ..utility import hexOrDecInt +from ..utility import hexOrDecInt, gammaInverse from ..utility_importer import * # ------------------------------------------------------------------------ @@ -177,7 +177,7 @@ def mat_hash(self, mat: bpy.types.Material): return False def convert_color(self, color: Sequence[Number]): - return [int(a) / 255 for a in color] + return (*gammaInverse([int(a) / 255 for a in color[:3]]), int(color[3]) / 255) def load_texture(self, ForceNewTex: bool, path: Path, tex: Texture): png = path / f"bank_{tex.Timg[0]}" / f"{tex.Timg[1]}" @@ -517,11 +517,20 @@ def gsDPSetRenderMode(self, macro: Macro): def gsSPLight(self, macro: Macro): self.NewMat = 1 light = re.search("&.+\.", macro.args[0]).group()[1:-1] - light = Lights1(light, self.Lights1.get(light)[0]) + # search light data structs in file + try: + light_struct = self.Lights1.get(light)[0] + except: + raise Exception( + "Could not find Light {} in levels/{}/{}leveldata.inc.c".format( + light, self.scene.level_import.Level, self.scene.level_import.Prefix + ) + ) + light = Lights1(light, light_struct) if ".a" in macro.args[0]: self.last_mat.ambient_light = light.ambient else: - num = re.search("_\d", macro.args[0]).group()[1] + num = re.search("\d", macro.args[1]).group() num = int(num) if num else 1 self.last_mat.light_col[num] = light.diffuse return self.continue_parse @@ -529,14 +538,14 @@ def gsSPLight(self, macro: Macro): # numlights0 still gives one ambient and diffuse light def gsSPNumLights(self, macro: Macro): self.NewMat = 1 - num = re.search("_\d", macro.args[0]).group()[1] + num = re.search("\d", macro.args[0]).group() num = int(num) if num else 1 self.last_mat.num_lights = num return self.continue_parse def gsSPLightColor(self, macro: Macro): self.NewMat = 1 - num = re.search("_\d", macro.args[0]).group()[1] + num = re.search("\d", macro.args[0]).group() num = int(num) if num else 1 self.last_mat.light_col[num] = eval(macro.args[-1]).to_bytes(4, "big") return self.continue_parse diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 410a5bc69..1971382a5 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -64,6 +64,7 @@ create_collection, read16bitRGBA, hexOrDecInt, + gammaInverse, ) from .sm64_objects import enumEnvFX from .sm64_constants import ( @@ -862,6 +863,9 @@ def __init__(self, scene): # Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file # this will add all the textures located in the /textures/ folder in decomp def get_generic_textures(self, root_path: Path): + # check that there is a textures directory + if not (tex_path := root_path / "textures").exists(): + raise Exception("you must make project for /textures/ folder to exist") for t in [ "cave.c", "effect.c", @@ -995,7 +999,7 @@ def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] # idk why this is necessary. N64 thing or something? l[uv_map].uv[1] = l[uv_map].uv[1] * -1 + 1 - l[v_color] = [a / 255 for a in vcol] + l[v_color] = [*gammaInverse([a / 255 for a in vcol]), 255] l[v_alpha] = [vcol[3] / 255 for i in range(4)] # create a new f3d_mat given an SM64_Material class but don't create copies with same props @@ -2146,6 +2150,7 @@ def construct_model_data_from_file(aggregates: list[Path], scene: bpy.types.Scen lambda path: "model.inc.c" in path.name, lambda path: path.match("*[0-9].inc.c"), # deal with 1.inc.c files etc. lambda path: "painting.inc.c" in path.name, # add way to deal with 1.inc.c filees etc. + lambda path: "light.inc.c" in path.name, # only in vanilla decomp in LLL for some reason ), root_path, ) From c84122983119645e5f1b0bf111f983e5458312d6 Mon Sep 17 00:00:00 2001 From: scut Date: Fri, 30 Jan 2026 20:55:38 -0500 Subject: [PATCH 14/30] fixed DLs having wrong transform sometimes, fixed lights importing when using Lights_t or other structs, fixed texture imports when DLs use numbers instead of macros, fixed default color combiner not being shaded solid, fixed texture set being from for base f3d mode, fixed some var names that caused errors, started working on binary and byte stream texture IO --- fast64_internal/bin_png.py | 267 ++++++++++++++++++++ fast64_internal/f3d/f3d_import.py | 186 ++++++++++---- fast64_internal/sm64/sm64_level_importer.py | 52 ++-- fast64_internal/utility_importer.py | 41 ++- 4 files changed, 466 insertions(+), 80 deletions(-) create mode 100644 fast64_internal/bin_png.py diff --git a/fast64_internal/bin_png.py b/fast64_internal/bin_png.py new file mode 100644 index 000000000..b3bd482e7 --- /dev/null +++ b/fast64_internal/bin_png.py @@ -0,0 +1,267 @@ +# TODO +# current temporary binary/data array image IO tool +# remove bitstring dep + +import struct + +# import png +import math + +# from bitstring import * + +# convert bin to png + + +def MakeImage(name): + return open(name + ".png", "wb") + + +# file is bin, image is png +# Alpha changed to true because N64 graphics does not like PNGS with no alpha YES!!! +def I(width, height, depth, file, image): + if depth > 4: + w = png.Writer(width, height, greyscale=True, bitdepth=depth, alpha=True) + rows = CreateIRows(width, height, depth // 2, 1, file) + else: + w = png.Writer(width, height, greyscale=True, bitdepth=8, alpha=True) + rows = EditIFile(file, width, height, [4, 4], 2, 1) + w.write(image, rows) + + +def IA(width, height, depth, file, image): + if depth > 4: + w = png.Writer(width, height, greyscale=True, bitdepth=depth // 2, alpha=True) + rows = CreateRows(width, height, depth // 2, 2, file) + else: + w = png.Writer(width, height, greyscale=True, bitdepth=8, alpha=True) + rows = EditFile(file, width, height, [5, 8, 5, 8], 2, 1) + w.write(image, rows) + + +def RGBA(width, height, depth, file, image): + if depth == 16: + RGBA16(width, height, file, image) + else: + RGBA32(width, height, file, image) + + +def RGBA32(width, height, file, image): + w = png.Writer(width, height, greyscale=False, bitdepth=8, alpha=True) + rows = CreateRows(width, height, 8, 4, file) + w.write(image, rows) + + +def RGBA16(width, height, file, image): + w = png.Writer(width, height, greyscale=False, bitdepth=8, alpha=True) + rows = EditFile(file, width, height, [3, 3, 3, 8], 1, 2) + w.write(image, rows) + + +def CI(width, height, depth, p, file, image): + p = GetPalette(p, depth, 2) + w = png.Writer(width, height, palette=p, bitdepth=depth) + rows = CreateRows(width, height, depth, 1, file) + w.write(image, rows) + + +def CreateIRows(width, height, depth, Channels, file): + rows = [] + for r in range(height): + L = int((depth / 8) * Channels * width) # bytes per row + bin = BitArray(file[L * r : L * r + L]) + a = bin.unpack("%d*uint:%d" % (width * Channels, depth)) + a = [b & 0xFF for b in a] + AlphaAdd = [0xFF] * (len(a) * 2) + AlphaAdd[0::2] = a + rows.append(AlphaAdd) + return rows + + +def CreateRows(width, height, depth, Channels, file): + rows = [] + for r in range(height): + L = int((depth / 8) * Channels * width) # bytes per row + bin = BitArray(file[L * r : L * r + L]) + a = bin.unpack("%d*uint:%d" % (width * Channels, depth)) + a = [b & 0xFF for b in a] + rows.append(a) + return rows + + +# change I4 to IA88 +def EditIFile(file, width, height, shifts, PpB, b): + newfile = [] + for x in range(height): + row = [] + for pixel in range(0, width // PpB): + pixel = pixel + x * width // PpB + bin = file[b * pixel : b * pixel + b] + bin = pack(">%dB" % b, *bin) + upack = ["uint:%d" % (8 - a) if a != 8 else "uint:1" for a in shifts] + channels = bin.unpack(",".join(upack)) + channels = [CB(c, 8 - s) if s < 8 else OBA(c) for c, s in zip(channels, shifts)] + AlphaAdd = [0xFF] * (len(channels) * 2) + AlphaAdd[0::2] = channels + p = struct.pack(">%dB" % len(AlphaAdd), *AlphaAdd) + row.extend(p) + newfile.append(row) + return newfile + + +# change IA31 to IA88 or rgba5551 to rgba8888 +def EditFile(file, width, height, shifts, PpB, b): + newfile = [] + for x in range(height): + row = [] + for pixel in range(0, width // PpB): + pixel = pixel + x * width // PpB + bin = file[b * pixel : b * pixel + b] + bin = pack(">%dB" % b, *bin) + upack = ["uint:%d" % (8 - a) if a != 8 else "uint:1" for a in shifts] + channels = bin.unpack(",".join(upack)) + channels = [CB(c, 8 - s) if s < 8 else OBA(c) for c, s in zip(channels, shifts)] + p = struct.pack(">%dB" % len(channels), *channels) + row.extend(p) + newfile.append(row) + return newfile + + +# convert bits +def CB(val, bits): + return int(((val * 255) + (2 ** (bits - 1)) - 1) / (2 ** (bits) - 1)) + + +# one bit alpha +def OBA(val): + if val: + return 255 + else: + return 0 + + +# Palette is [Binary Region,format],every palette uses either IA16 or RGBA16 +def GetPalette(palette, depth, bpp): + bin = palette[0] + # pad bin for the times when only partial palettes are used + if len(bin) < ((2**depth) * 2): + bin += bytes(((2**depth) * 2) - len(bin)) + shifts = [3, 3, 3, 8] + o = [] + for p in range(2**depth): + b = BitArray(bin[p * 2 : p * 2 + 2]) + a = b.unpack("3*uint:5,uint:1") + a = [CB(c, 8 - s) if s < 8 else OBA(c) for c, s in zip(a, shifts)] + o.append(tuple(a)) + return o + + +def MakeRGBA(file, Bpp, Alpha): + r = png.Reader(file) + re = r.read() + depth = re[3]["bitdepth"] + channels = re[3]["planes"] + if channels == 3: + shifts = [3, 3, 3] + else: + shifts = [3, 3, 3, 7] + if depth == 8 and Bpp == 16: + # two bytes per pixel, need to convert to rgba5551 + rows = [] + for r in re[2]: + for W in range(0, len(r), channels): + b = r[W : W + channels] + a = [c >> s for c, s in zip(b, shifts)] + if len(shifts) == 3: + a.append(1) + b = pack("3*uint:5,uint:1", *a) + rows.append(b.bytes) + return rows + else: + if channels == 3: + solid = bytes([0xFF]) + else: + solid = bytes() + bin = [] + for r in re[2]: + for W in range(0, len(r), channels): + bin.append(r[W : W + channels] + solid) + return bin + + +def MakeCI(file, Bpp, Alpha): + r = png.Reader(file) + re = r.read() + Pal = re[3]["palette"] + Pbin = [] + shifts = [3, 3, 3, 7] + for p in Pal: + b = [a >> s for a, s in zip(p, shifts)] + if len(p) == 4: + b = pack("3*uint:5,uint:1", *b) + else: + b = pack("3*uint:5,uint:1", *b, 1) + Pbin.append(b.bytes) + bin = [] + for p in re[2]: + for w in range(0, re[0], (8 // Bpp)): + b = p[w : w + (8 // Bpp)] + b = pack("%d*uint:%d" % ((8 // Bpp), Bpp), *b) + bin.append(b.bytes) + return [bin, Pbin] + + +def MakeIntensity(file, Bpp, Alpha): + r = png.Reader(file) + re = r.read() + depth = re[3]["bitdepth"] + channels = re[3]["planes"] + if channels - Alpha > 1: + # This means it has an alpha channel we must ignore + bin = [] + for r in re[2]: + last = 0 + for W in range(0, len(r), channels * depth // 8): + b = r[W : W + (max(1, Bpp // 8))] + b = [a for a in b] + if last == 0 and Bpp == 4: + last = ((b[0] >> (depth - 4)) & 0xF) << (depth - 4) + continue + elif (8 - Bpp) > 0: + a = b[0] >> (depth - 4) + else: + a = b[0] >> (depth - Bpp) + bin.append(bytes([a + last])) + last = 0 + return bin + else: + # This should mean its all ready to go + if Bpp == 4: + shifts = [4, 7] + else: + shifts = [0, 0] + bin = [] + for r in re[2]: + last = 0 + for W in range(0, len(r), channels * depth // 8): + b = r[W : W + (max(1, Bpp // 8)) * channels] + b = [a for a in b] + if last == 0 and Bpp == 4: + if Alpha: + last = ((b[0] >> (depth - 4)) & 0xE) << (depth - 4) + last += ((b[1] >> (depth - 1)) & 0xF) << (depth - 4) + else: + last = ((b[0] >> (depth - 4)) & 0xF) << (depth - 4) + continue + elif Bpp == 4: + if Alpha: + a = (b[0] >> (depth - 4)) & 0xE + a += b[1] >> (depth - 1) + else: + a = b[0] >> (depth - 4) + else: + a = b[0] >> (depth - Bpp) + if Alpha: + a = ((b[0] >> (depth - Bpp // 2)) << (Bpp // 2)) + (b[1] >> (depth - Bpp // 2)) + bin.append(bytes([a + last])) + last = 0 + return bin diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 359fc6133..36468afdd 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -27,21 +27,51 @@ # ------------------------------------------------------------------------ -# will format light struct data passed -class Lights1: - def __init__(self, name: str, data_str: str): +# will format light struct data passed depending on type of light +class LightParent: + def __init__(self, name: str, light_struct: Sequence): self.name = name - data = [eval(dat.strip()) for dat in data_str.split(",")] - self.ambient = [*data[0:3], 0xFF] - self.diffuse = [*data[3:6], 0xFF] - self.direction = data[9:12] + getattr(self, light_struct.var_type)(light_struct.var_data) + + # naming matches var types + def Ambient_t(self, light_data: list[str]): + light_data = light_data[0].replace("{", "").replace("}", "").split(",") + data = [eval(dat.strip()) for dat in light_data] + self.col = self.a = self.l = [*data[0:3], 0xFF] + + def Light_t(self, light_data: list[str]): + light_data = light_data[0].replace("{", "").replace("}", "").split(",") + data = [eval(dat.strip()) for dat in light_data] + self.col = self.a = self.l = [*data[0:3], 0xFF] + self.dir = data[8:11] + + def Lights1(self, light_data: list[str]): + data = [eval(dat.strip()) for dat in light_data[0].split(",")] + self.a = [*data[0:3], 0xFF] + self.col = self.l = [*data[3:6], 0xFF] + self.dir = data[7:10] + + +# just holds common methods for tiles & textures +class TexBase: + # sometimes int args are used so convert them all to str DEFs + def standardize_fields(self): + if self.Fmt.isnumeric(): + fmt_types = {0: "RGBA", 2: "CI", 3: "IA", 4: "I"} + self.Fmt = f"G_IM_FMT_{fmt_types.get(int(self.Fmt))}" + if self.Siz.isnumeric(): + siz_types = {0: "4b", 1: "8b", 2: "16b", 3: "32b"} + self.Siz = f"G_IM_SIZ_{siz_types.get(int(self.Siz))}" + + def eval_texture_format(self): + return f"{self.Fmt.replace('G_IM_FMT_','')}{self.Siz.replace('G_IM_SIZ_','').replace('b','')}" # this will hold tile properties -class Tile: +class Tile(TexBase): def __init__(self): - self.Fmt = "RGBA" - self.Siz = "16" + self.Fmt = "G_IM_FMT_RGBA" + self.Siz = "G_IM_SIZ_16" self.Slow = 32 self.Tlow = 32 self.Shigh = 32 @@ -52,17 +82,13 @@ def __init__(self): self.TShift = 0 self.Sflags = None self.Tflags = None - self.tmem = 0 - - def eval_texture_format(self): - # make better - return f"{self.Fmt.replace('G_IM_FMT_','')}{self.Siz.replace('G_IM_SIZ_','').replace('b','')}" + self.tmem = -1 # because 0 is the start # this will hold texture properties, dataclass props # are created in order for me to make comparisons in a set @dataclass(init=True, eq=True, unsafe_hash=True) -class Texture: +class Texture(TexBase): Timg: tuple Fmt: str Siz: int @@ -73,15 +99,24 @@ class Texture: def size(self): return self.Width, self.Height - def eval_texture_format(self): - return f"{self.Fmt.replace('G_IM_FMT_','')}{self.Siz.replace('G_IM_SIZ_','').replace('b','')}" - # This is a data storage class and mat to f3dmat converting class # used when importing for kirby class Mat: # constants for lastmat layer lookup - base_layer = -1 + _base_layer = -1 + _base_combiner = ( + # color + "0", + "0", + "0", + "SHADE", + # alpha + "0", + "0", + "0", + "1", + ) def __init__(self, layer: int = None): self.GeoSet = [] @@ -98,7 +133,7 @@ def __init__(self, layer: int = None): self.light_col = {} self.ambient_light = tuple() if not layer: - self.layer = self.base_layer + self.layer = self._base_layer else: self.layer = layer @@ -180,14 +215,35 @@ def convert_color(self, color: Sequence[Number]): return (*gammaInverse([int(a) / 255 for a in color[:3]]), int(color[3]) / 255) def load_texture(self, ForceNewTex: bool, path: Path, tex: Texture): - png = path / f"bank_{tex.Timg[0]}" / f"{tex.Timg[1]}" - png = (*png.glob("*.png"),) - if png: - i = bpy.data.images.get(str(png[0])) - if not i or ForceNewTex: - return bpy.data.images.load(filepath=str(png[0])) - else: - return i + if not tex: + return None + tex_img = textures.get(tex.Timg)[0] + if "#include" in tex_img: + return self.load_texture_png(force_new_tex, textures, path, tex) + else: + self.load_texture_array(force_new_tex, textures, path, tex) + + def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): + """ + Create a new/find image object and then fill pixel buffer with array data + """ + tex_img = textures.get(tex.Timg) + # use something better later but for now use test rgba16 + if "RGBA16" in tex.eval_texture_format(): + img = bpy.data.images.new(tex.Timg, tex.Width, tex.Height, alpha=True) + for index, texel in enumerate(tex_img): + pass + # alpha pixel + # if index % 4 == 3: + # img.pixels[index] = texel > 0.4 + # else: + # + return None + + # TODO: make real with reasonable basics + def load_texture_png(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): + print("load tex png") + return None def apply_PBSDF_Mat(self, mat: bpy.types.Material, tex_path: Path, tex: Texture): nt = mat.node_tree @@ -231,15 +287,20 @@ def set_texture_tile_mapping(self): if tex_index < 0: continue tex = self.tmem.get(tile.tmem, None) - setattr(self, f"tex{tex_index}", tex) + print(tex, index) + if tex: + setattr(self, f"tex{tex_index}", tex) + # TODO: add load texture call def set_textures(self, f3d: F3DMaterialProperty, tex_path: Path): self.set_tex_scale(f3d) if self.tex0 and self.set_tex: + self.tex0.standardize_fields() self.set_tex_settings( f3d.tex0, self.load_texture(0, tex_path, self.tex0), self.tiles[0 + self.base_tile], self.tex0.Timg ) if self.tex1 and self.set_tex: + self.tex1.standardize_fields() self.set_tex_settings( f3d.tex1, self.load_texture(0, tex_path, self.tex1), self.tiles[1 + self.base_tile], self.tex1.Timg ) @@ -292,6 +353,7 @@ def set_tex_scale(self, f3d: F3DMaterialProperty): def set_tex_settings( self, tex_prop: TextureProperty, image: bpy.types.Image, tile: Tile, tex_img: Union[Sequence, str] ): + tile.standardize_fields() tex_prop.tex_reference = str(tex_img) # setting prop for hash purposes tex_prop.tex_set = True tex_prop.tex = image @@ -309,7 +371,7 @@ def set_tex_settings( tex_prop.S.mask = tile.SMask tex_prop.T.mask = tile.TMask - # rework with new render mode stuffs + # TODO: rework with new render mode stuffs def set_rendermode(self, f3d: F3DMaterialProperty): rdp = f3d.rdp_settings if hasattr(self, "RenderMode"): @@ -327,7 +389,7 @@ def set_othermode(self, f3d: F3DMaterialProperty): rdp = f3d.rdp_settings for prop, val in self.other_mode.items(): setattr(rdp, prop, val) - # add in exception handling here + # TODO: add in exception handling here def set_geo_mode(self, rdp: RDPSettings, mat: bpy.types.Material): # texture gen has a different name than gbi @@ -336,16 +398,19 @@ def set_geo_mode(self, rdp: RDPSettings, mat: bpy.types.Material): for a in self.GeoClear: setattr(rdp, a.replace("G_TEXTURE_GEN", "G_TEX_GEN").lower().strip(), False) - # Very lazy for now + # TODO: Very lazy for now, deal with presets later def set_combiner(self, f3d: F3DMaterialProperty): f3d.presetName = "Custom" if not hasattr(self, "Combiner"): - f3d.combiner1.A = "TEXEL0" - f3d.combiner1.A_alpha = "0" - f3d.combiner1.C = "SHADE" - f3d.combiner1.C_alpha = "0" - f3d.combiner1.D = "0" - f3d.combiner1.D_alpha = "1" + # set default combiner per game via subclass, base is shaded solid + f3d.combiner1.A = self._base_combiner[0] + f3d.combiner1.B = self._base_combiner[1] + f3d.combiner1.C = self._base_combiner[2] + f3d.combiner1.D = self._base_combiner[3] + f3d.combiner1.A_alpha = self._base_combiner[4] + f3d.combiner1.B_alpha = self._base_combiner[5] + f3d.combiner1.C_alpha = self._base_combiner[6] + f3d.combiner1.D_alpha = self._base_combiner[7] else: f3d.combiner1.A = self.Combiner[0] f3d.combiner1.B = self.Combiner[1] @@ -396,7 +461,7 @@ def __init__(self, lastmat: dict[any, Mat] = None): self.Gfx = {} self.Light_t = {} self.Ambient_t = {} - self.Lights1 = {} + self.Lights = {} self.Textures = {} self.NewMat = 1 self.f3d_gbi = get_F3D_GBI() @@ -410,6 +475,21 @@ def __init__(self, lastmat: dict[any, Mat] = None): self.last_mat = lastmat super().__init__() + def parse_stream_DL(self, display_list_arr: Sequence, start_name: str): + """ + Initialize vars and then parse data stream + """ + self.VertBuff = [0] * 32 # turbo 3d in shambles + self.Verts = [] + self.Tris = [] + self.UVs = [] + self.VCs = [] + self.Mats = [] + # merge all lights into single lights dictionary + self.Lights.update(self.Light_t) + self.Lights.update(self.Ambient_t) + self.parse_stream(display_list_arr, start_name) + def gsSPEndDisplayList(self, macro: Macro): return self.break_parse @@ -418,7 +498,7 @@ def gsSPBranchList(self, macro: Macro): if not NewDL: raise Exception( "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.level_import.Level, self.scene.level_import.Prefix + NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix ) ) self.reset_parser(branched_dl) @@ -430,7 +510,7 @@ def gsSPDisplayList(self, macro: Macro): if not NewDL: raise Exception( "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.level_import.Level, self.scene.level_import.Prefix + NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix ) ) self.reset_parser(branched_dl) @@ -452,7 +532,7 @@ def gsSPVertex(self, macro: Macro): if not VB: raise Exception( "Could not find VB {} in levels/{}/{}leveldata.inc.c".format( - ref, self.scene.level_import.Level, self.scene.level_import.Prefix + ref, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix ) ) vertex_load_start = hexOrDecInt(macro.args[2]) @@ -519,20 +599,21 @@ def gsSPLight(self, macro: Macro): light = re.search("&.+\.", macro.args[0]).group()[1:-1] # search light data structs in file try: - light_struct = self.Lights1.get(light)[0] + light_struct = self.Lights.get(light) except: raise Exception( "Could not find Light {} in levels/{}/{}leveldata.inc.c".format( - light, self.scene.level_import.Level, self.scene.level_import.Prefix + light, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix ) ) - light = Lights1(light, light_struct) - if ".a" in macro.args[0]: - self.last_mat.ambient_light = light.ambient + light = LightParent(light, light_struct) + light_num = int(re.search("\d", macro.args[1]).group()) + # period followed by any number of non whitespace chars + light_val = getattr(light, re.search("\\.\S+", macro.args[0]).group()[1:]) + if light_num > self.last_mat.num_lights: + self.last_mat.ambient_light = light_val else: - num = re.search("\d", macro.args[1]).group() - num = int(num) if num else 1 - self.last_mat.light_col[num] = light.diffuse + self.last_mat.light_col[light_num] = light_val return self.continue_parse # numlights0 still gives one ambient and diffuse light @@ -751,7 +832,8 @@ def gsSPTexture(self, macro: Macro): set_tex = macros.get(macro.args[-1]) if set_tex == None: set_tex = hexOrDecInt(macro.args[-1]) - self.last_mat.set_tex = set_tex == 2 + # enable is 1 or 2 depending on microcode, 0 is always off + self.last_mat.set_tex = set_tex != 0 self.last_mat.tex_scale = [ ((0x10000 * (hexOrDecInt(a) < 0)) + hexOrDecInt(a)) / 0xFFFF for a in macro.args[0:2] ] # signed half to unsigned half diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 1971382a5..e9192ff88 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -2,9 +2,13 @@ # Header # ------------------------------------------------------------------------ -# todos +# TODO: # create textures from u8 / u16 arrays (slow, give checkbox option) # make layer detection work better? +# deal with direct DLs instead of geos (model metal box for example) +# make rooms work better? (currently imports but definetly not good for export) +# add function and class descriptors per spec (triple quotes) +# make better naming for certain vars from __future__ import annotations @@ -783,21 +787,29 @@ class SM64_Material(Mat): def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None - Timg = textures.get(tex.Timg)[0].split("/")[-1] - Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") - image = bpy.data.images.get(Timg) + tex_img = textures.get(tex.Timg)[0] + # print(tex.Timg, tex_img) + if "#include" in tex_img: + return self.load_texture_png(force_new_tex, textures, path, tex) + else: + self.load_texture_array(force_new_tex, textures, path, tex) + + def load_texture_png(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): + tex_img = textures.get(tex.Timg)[0].split("/")[-1] + tex_img = tex_img.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") + image = bpy.data.images.get(tex_img) if not image or force_new_tex: - Timg = textures.get(tex.Timg)[0] - Timg = Timg.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") + tex_img = textures.get(tex.Timg)[0] + tex_img = tex_img.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") # deal with duplicate pathing (such as /actors/actors etc.) Extra = path.relative_to(Path(bpy.path.abspath(bpy.context.scene.fast64.sm64.decomp_path))) for e in Extra.parts: - Timg = Timg.replace(e + "/", "") + tex_img = tex_img.replace(e + "/", "") # deal with actor import path not working for shared textures - if "textures" in Timg: - fp = Path(bpy.path.abspath(bpy.context.scene.fast64.sm64.decomp_path)) / Timg + if "textures" in tex_img: + fp = Path(bpy.path.abspath(bpy.context.scene.fast64.sm64.decomp_path)) / tex_img else: - fp = path / Timg + fp = path / tex_img return bpy.data.images.load(filepath=str(fp)) else: return image @@ -839,6 +851,7 @@ def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_p def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path): self.set_tex_scale(f3d) if self.tex0 and self.set_tex: + self.tex0.standardize_fields() self.set_tex_settings( f3d.tex0, self.load_texture(bpy.context.scene.fast64.sm64.importer.force_new_tex, textures, tex_path, self.tex0), @@ -846,6 +859,7 @@ def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path) self.tex0.Timg, ) if self.tex1 and self.set_tex: + self.tex1.standardize_fields() self.set_tex_settings( f3d.tex1, self.load_texture(bpy.context.scene.fast64.sm64.importer.force_new_tex, textures, tex_path, self.tex1), @@ -900,14 +914,8 @@ def get_generic_textures(self, root_path: Path): # recursively parse the display list in order to return a bunch of model data def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, layer: int = None): DL = self.Gfx.get(start) - self.VertBuff = [0] * 32 # If you're doing some fucky shit with a larger vert buffer it sucks to suck I guess if not DL: raise Exception("Could not find DL {}".format(start)) - self.Verts = [] - self.Tris = [] - self.UVs = [] - self.VCs = [] - self.Mats = [] # inherit the mat based on the layer, or explicitly given one if last_mat: self.last_mat = last_mat @@ -917,7 +925,7 @@ def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, la self.last_mat = last_mat else: self.last_mat = SM64_Material() - self.parse_stream(DL, start) + self.parse_stream_DL(DL, start) self.NewMat = 0 self.StartName = start return [self.Verts, self.Tris] @@ -1176,7 +1184,7 @@ def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): geo_obj = self.add_model( ModelDat(self.parent_transform, *macro.args), "display_list", self.display_list, macro.args[0] ) - self.set_transform(geo_obj, self.last_transform) + self.set_transform(geo_obj, self.parent_transform) return self.continue_parse def GEO_BILLBOARD_WITH_PARAMS_AND_DL(self, macro: Macro, depth: int): @@ -1564,10 +1572,10 @@ def GEO_BACKGROUND(self, macro: Macro, depth: int): level_root.background = skybox_name else: level_root.background = "CUSTOM" - # this is cringe and should be changed - scene.fast64.sm64.level.backgroundID = macro.args[0] + level_root.fast64.sm64.level.backgroundID = macro.args[0] # I don't have access to the bg segment, that is in level obj - scene.fast64.sm64.level.backgroundSegment = "unavailable srry :(" + # level_root.fast64.sm64.level.backgroundSegment = "unavailable srry :(" + print("background segment not set, left at default srry") return self.continue_parse @@ -2119,7 +2127,7 @@ def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO) -> SM64 "Gfx": ["(", ")"], "Light_t": [None, None], "Ambient_t": [None, None], - "Lights1": [None, None], + "Lights": [None, None], }, collated=True, ) diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index b535398e9..d9e854e31 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -11,6 +11,32 @@ from .utility import transform_mtx_blender_to_n64 +@dataclass +class CDataArray: + """ + Used as an iterable but also contains the name and var type if called upon + Generally useful for types that have aliases but functionally act the same + like Light1 vs Light_t + """ + + var_type: str + var_name: str + var_data: any = None + + def __iter__(self): + for item in self.var_data: + yield item + + def __len__(self): + return len(self.var_data) + + def __getitem__(self, index): + return self.var_data[index] + + def __setitem__(self, index, val): + self.var_data[index] = val + + @dataclass class Macro: cmd: str @@ -105,7 +131,7 @@ def pre_parse_file(file: TextIO) -> list[str]: output_lines = [] for line in file.splitlines(): # remove line comment - if (comment := line.rfind("//")) > 0: + if (comment := line.rfind("//")) > -1: line = line[:comment] # check for macro if "#if" in line: @@ -170,10 +196,12 @@ def get_data_types_from_file(file: TextIO, type_dict, collated=False): type_found = None var_dat_buffer = [] for line in file_lines: - if type_found: + if type_found is not None: # Check for end of array if ";" in line: - output_variables[type_found[0]][type_found[1]] = "".join(var_dat_buffer) + output_variables[type_found.var_type][type_found.var_name] = CDataArray( + type_found.var_type, type_found.var_name, "".join(var_dat_buffer) + ) type_found = None var_dat_buffer = [] else: @@ -188,12 +216,13 @@ def get_data_types_from_file(file: TextIO, type_dict, collated=False): # there should ideally only be one collision type_name = type_collisions[0] variable_name = line[line.find(type_name) + len(type_name) : match.span()[0]].strip() - type_found = (type_name, variable_name) + type_found = CDataArray(type_name, variable_name) # Now remove newlines from each line, and then split macro ends # This makes each member of the array a single macro or array for data_type, delimiters in type_dict.items(): - for variable, data in output_variables[data_type].items(): - output_variables[data_type][variable] = format_data_arr(data, delimiters) + for variable_name, data_array in output_variables[data_type].items(): + data_array.var_data = format_data_arr(data_array.var_data, delimiters) + output_variables[data_type][variable_name] = data_array # if collated, organize by data type, otherwise just take the various dicts raw return ( From 5701f9785350e95a3678a896b9b0f28c6a530c34 Mon Sep 17 00:00:00 2001 From: scut Date: Tue, 3 Feb 2026 16:30:34 -0500 Subject: [PATCH 15/30] partially added texture importing from data arrays --- fast64_internal/bin_png.py | 377 +++--- fast64_internal/f3d/f3d_import.py | 137 ++- fast64_internal/sm64/sm64_level_importer.py | 13 +- fast64_internal/tmp_tex_examples.c | 1200 +++++++++++++++++++ fast64_internal/utility_importer.py | 2 + 5 files changed, 1447 insertions(+), 282 deletions(-) create mode 100644 fast64_internal/tmp_tex_examples.c diff --git a/fast64_internal/bin_png.py b/fast64_internal/bin_png.py index b3bd482e7..5b707a374 100644 --- a/fast64_internal/bin_png.py +++ b/fast64_internal/bin_png.py @@ -1,267 +1,174 @@ # TODO # current temporary binary/data array image IO tool -# remove bitstring dep +# remove print logging import struct - -# import png import math +import zlib +import re +from functools import lru_cache -# from bitstring import * - -# convert bin to png - +# ------------------------------------------------------------------------ +# helper funcs +# ------------------------------------------------------------------------ -def MakeImage(name): - return open(name + ".png", "wb") - -# file is bin, image is png -# Alpha changed to true because N64 graphics does not like PNGS with no alpha YES!!! -def I(width, height, depth, file, image): - if depth > 4: - w = png.Writer(width, height, greyscale=True, bitdepth=depth, alpha=True) - rows = CreateIRows(width, height, depth // 2, 1, file) - else: - w = png.Writer(width, height, greyscale=True, bitdepth=8, alpha=True) - rows = EditIFile(file, width, height, [4, 4], 2, 1) - w.write(image, rows) +# convert data to 8 bit int +@lru_cache(maxsize=255) +def CB_int(val, bits): + return int(((val * 255) + (2 ** (bits - 1)) - 1) / (2 ** (bits) - 1)) -def IA(width, height, depth, file, image): - if depth > 4: - w = png.Writer(width, height, greyscale=True, bitdepth=depth // 2, alpha=True) - rows = CreateRows(width, height, depth // 2, 2, file) - else: - w = png.Writer(width, height, greyscale=True, bitdepth=8, alpha=True) - rows = EditFile(file, width, height, [5, 8, 5, 8], 2, 1) - w.write(image, rows) +def CB_float(val, bits): + return val / (2**bits - 1) -def RGBA(width, height, depth, file, image): - if depth == 16: - RGBA16(width, height, file, image) +# one bit alpha +def OBA(val): + if val: + return 255 else: - RGBA32(width, height, file, image) - + return 0 -def RGBA32(width, height, file, image): - w = png.Writer(width, height, greyscale=False, bitdepth=8, alpha=True) - rows = CreateRows(width, height, 8, 4, file) - w.write(image, rows) +# unpacks individual bits +# format is csv, num_bits in each param, max is 8 +def unpack_bits(format_str: str, byte_stream: bytes, offset: int, length: int): + data_out = [] + byte_data = int.from_bytes(byte_stream[offset : offset + length], "big") + byte_mask = (1 << (length * 8)) - 1 + # convert length to number of bits in byte data + length = length * 8 + for unpack_str in format_str.split(","): + unpack_str = int(unpack_str.strip()) + dat_mask = ((1 << unpack_str) - 1) << (8 - unpack_str + length - 8) + # print("byte_data: 0x{:X} data mask: 0x{:X} append: 0x{:X}".format(byte_data, dat_mask, (byte_data & dat_mask) >> (8 - unpack_str + length - 8))) + data_out.append((byte_data & dat_mask) >> (8 - unpack_str + length - 8)) + length = length - unpack_str + return data_out -def RGBA16(width, height, file, image): - w = png.Writer(width, height, greyscale=False, bitdepth=8, alpha=True) - rows = EditFile(file, width, height, [3, 3, 3, 8], 1, 2) - w.write(image, rows) +# written for RGBA16 palette +def get_palette(byte_stream: bytes, im_siz: int): + shifts = [5, 5, 5, 1] + pal_out = [] + for tx in range(2**im_siz): + a = unpack_bits("5, 5, 5, 1", byte_stream, tx * 2, 2) + pal_out.append((*(CB_float(c, s) if s > 1 else OBA(c) / 255 for c, s in zip(a, shifts)),)) + return pal_out -def CI(width, height, depth, p, file, image): - p = GetPalette(p, depth, 2) - w = png.Writer(width, height, palette=p, bitdepth=depth) - rows = CreateRows(width, height, depth, 1, file) - w.write(image, rows) +# ------------------------------------------------------------------------ +# image funcs +# ------------------------------------------------------------------------ -def CreateIRows(width, height, depth, Channels, file): - rows = [] - for r in range(height): - L = int((depth / 8) * Channels * width) # bytes per row - bin = BitArray(file[L * r : L * r + L]) - a = bin.unpack("%d*uint:%d" % (width * Channels, depth)) - a = [b & 0xFF for b in a] - AlphaAdd = [0xFF] * (len(a) * 2) - AlphaAdd[0::2] = a - rows.append(AlphaAdd) - return rows - -def CreateRows(width, height, depth, Channels, file): - rows = [] - for r in range(height): - L = int((depth / 8) * Channels * width) # bytes per row - bin = BitArray(file[L * r : L * r + L]) - a = bin.unpack("%d*uint:%d" % (width * Channels, depth)) - a = [b & 0xFF for b in a] - rows.append(a) +# byte_stream is bin, image is png +# Alpha changed to true because N64 graphics does not like PNGS with no alpha YES!!! +def convert_I_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): + if im_siz == 8: + rows = convert_byte_stream(byte_stream, width, height, [8], 1, 1, add_alpha=True) + else: + rows = convert_byte_stream(byte_stream, width, height, [4, 4], 2, 1, add_alpha=True) return rows -# change I4 to IA88 -def EditIFile(file, width, height, shifts, PpB, b): - newfile = [] - for x in range(height): - row = [] - for pixel in range(0, width // PpB): - pixel = pixel + x * width // PpB - bin = file[b * pixel : b * pixel + b] - bin = pack(">%dB" % b, *bin) - upack = ["uint:%d" % (8 - a) if a != 8 else "uint:1" for a in shifts] - channels = bin.unpack(",".join(upack)) - channels = [CB(c, 8 - s) if s < 8 else OBA(c) for c, s in zip(channels, shifts)] - AlphaAdd = [0xFF] * (len(channels) * 2) - AlphaAdd[0::2] = channels - p = struct.pack(">%dB" % len(AlphaAdd), *AlphaAdd) - row.extend(p) - newfile.append(row) - return newfile - - -# change IA31 to IA88 or rgba5551 to rgba8888 -def EditFile(file, width, height, shifts, PpB, b): - newfile = [] - for x in range(height): - row = [] - for pixel in range(0, width // PpB): - pixel = pixel + x * width // PpB - bin = file[b * pixel : b * pixel + b] - bin = pack(">%dB" % b, *bin) - upack = ["uint:%d" % (8 - a) if a != 8 else "uint:1" for a in shifts] - channels = bin.unpack(",".join(upack)) - channels = [CB(c, 8 - s) if s < 8 else OBA(c) for c, s in zip(channels, shifts)] - p = struct.pack(">%dB" % len(channels), *channels) - row.extend(p) - newfile.append(row) - return newfile - - -# convert bits -def CB(val, bits): - return int(((val * 255) + (2 ** (bits - 1)) - 1) / (2 ** (bits) - 1)) - - -# one bit alpha -def OBA(val): - if val: - return 255 +def convert_IA_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): + if im_siz == 16: + rows = convert_byte_stream(byte_stream, width, height, [8, 8], 1, 2) + if im_siz == 8: + rows = convert_byte_stream(byte_stream, width, height, [4, 4], 1, 1) else: - return 0 - - -# Palette is [Binary Region,format],every palette uses either IA16 or RGBA16 -def GetPalette(palette, depth, bpp): - bin = palette[0] - # pad bin for the times when only partial palettes are used - if len(bin) < ((2**depth) * 2): - bin += bytes(((2**depth) * 2) - len(bin)) - shifts = [3, 3, 3, 8] - o = [] - for p in range(2**depth): - b = BitArray(bin[p * 2 : p * 2 + 2]) - a = b.unpack("3*uint:5,uint:1") - a = [CB(c, 8 - s) if s < 8 else OBA(c) for c, s in zip(a, shifts)] - o.append(tuple(a)) - return o + rows = convert_byte_stream(byte_stream, width, height, [3, 1, 3, 1], 2, 1) + return rows -def MakeRGBA(file, Bpp, Alpha): - r = png.Reader(file) - re = r.read() - depth = re[3]["bitdepth"] - channels = re[3]["planes"] - if channels == 3: - shifts = [3, 3, 3] - else: - shifts = [3, 3, 3, 7] - if depth == 8 and Bpp == 16: - # two bytes per pixel, need to convert to rgba5551 - rows = [] - for r in re[2]: - for W in range(0, len(r), channels): - b = r[W : W + channels] - a = [c >> s for c, s in zip(b, shifts)] - if len(shifts) == 3: - a.append(1) - b = pack("3*uint:5,uint:1", *a) - rows.append(b.bytes) - return rows +def convert_RGBA_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): + if im_siz == 16: + rows = convert_byte_stream(byte_stream, width, height, [5, 5, 5, 1], 1, 2) else: - if channels == 3: - solid = bytes([0xFF]) - else: - solid = bytes() - bin = [] - for r in re[2]: - for W in range(0, len(r), channels): - bin.append(r[W : W + channels] + solid) - return bin - - -def MakeCI(file, Bpp, Alpha): - r = png.Reader(file) - re = r.read() - Pal = re[3]["palette"] - Pbin = [] - shifts = [3, 3, 3, 7] - for p in Pal: - b = [a >> s for a, s in zip(p, shifts)] - if len(p) == 4: - b = pack("3*uint:5,uint:1", *b) - else: - b = pack("3*uint:5,uint:1", *b, 1) - Pbin.append(b.bytes) - bin = [] - for p in re[2]: - for w in range(0, re[0], (8 // Bpp)): - b = p[w : w + (8 // Bpp)] - b = pack("%d*uint:%d" % ((8 // Bpp), Bpp), *b) - bin.append(b.bytes) - return [bin, Pbin] + rows = convert_byte_stream(byte_stream, width, height, [8, 8, 8, 8], 1, 4) + return rows -def MakeIntensity(file, Bpp, Alpha): - r = png.Reader(file) - re = r.read() - depth = re[3]["bitdepth"] - channels = re[3]["planes"] - if channels - Alpha > 1: - # This means it has an alpha channel we must ignore - bin = [] - for r in re[2]: - last = 0 - for W in range(0, len(r), channels * depth // 8): - b = r[W : W + (max(1, Bpp // 8))] - b = [a for a in b] - if last == 0 and Bpp == 4: - last = ((b[0] >> (depth - 4)) & 0xF) << (depth - 4) - continue - elif (8 - Bpp) > 0: - a = b[0] >> (depth - 4) - else: - a = b[0] >> (depth - Bpp) - bin.append(bytes([a + last])) - last = 0 - return bin +def convert_CI_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): + p = get_palette(pal_stream, im_siz) + if im_siz == 4: + rows = convert_byte_stream(byte_stream, width, height, [4, 4], 2, 1, is_ci=True) else: - # This should mean its all ready to go - if Bpp == 4: - shifts = [4, 7] - else: - shifts = [0, 0] - bin = [] - for r in re[2]: - last = 0 - for W in range(0, len(r), channels * depth // 8): - b = r[W : W + (max(1, Bpp // 8)) * channels] - b = [a for a in b] - if last == 0 and Bpp == 4: - if Alpha: - last = ((b[0] >> (depth - 4)) & 0xE) << (depth - 4) - last += ((b[1] >> (depth - 1)) & 0xF) << (depth - 4) - else: - last = ((b[0] >> (depth - 4)) & 0xF) << (depth - 4) - continue - elif Bpp == 4: - if Alpha: - a = (b[0] >> (depth - 4)) & 0xE - a += b[1] >> (depth - 1) - else: - a = b[0] >> (depth - 4) + rows = convert_byte_stream(byte_stream, width, height, [8], 1, 1, is_ci=True) + out_rows = [] + for tx in rows: + out_rows.extend(p[tx]) + return out_rows + + +# change IA31 to IA88 or rgba5551 to rgba8888 as needed +def convert_byte_stream( + byte_stream: bytes, + width: int, + height: int, + channel_bits: list, + tx_per_byte: int, + byte_per_tx: int, + add_alpha=False, + is_ci=False, +): + data_out = [] + for im_row in range(height): + # you can only iterate min one byte at a time + # so tx_per_byte halves iteration steps for im_siz==4 textures + for tx in range(0, width // tx_per_byte): + tx = tx + (im_row * width // tx_per_byte) + channels = unpack_bits(",".join([str(a) for a in channel_bits]), byte_stream, byte_per_tx * tx, byte_per_tx) + if add_alpha: + channels.append(0xFF) + if is_ci: + data_out.extend(channels) + continue + for c, s in zip(channels, channel_bits): + if s == 1: + data_out.append(OBA(c) / 255) + if s < 8: + data_out.append(CB_float(c, s)) else: - a = b[0] >> (depth - Bpp) - if Alpha: - a = ((b[0] >> (depth - Bpp // 2)) << (Bpp // 2)) + (b[1] >> (depth - Bpp // 2)) - bin.append(bytes([a + last])) - last = 0 - return bin + data_out.append(c) + return data_out + + +def convert_tex(fmt: str, width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): + # I dislike this formulation but calling globals() is worse + funcs = { + "G_IM_FMT_CI": convert_CI_tex, + "G_IM_FMT_I": convert_I_tex, + "G_IM_FMT_IA": convert_IA_tex, + "G_IM_FMT_RGBA": convert_RGBA_tex, + } + byte_stream = bytes([int(a.strip(), 0x10) for a in byte_stream.split(",") if "0x" in a]) + if pal_stream: + pal_stream = bytes([int(a.strip(), 0x10) for a in pal_stream.split(",") if "0x" in a]) + im_siz = int(re.search("\d+", im_siz).group()) + return funcs.get(fmt)(int(width), int(height), im_siz, byte_stream, pal_stream) + + +if __name__ == "__main__": + textures = dict() + # with open("tmp_tex_examples.c", "r", newline="") as c_file: + # # For textures, try u8, and s16 aswell + # textures.update( + # get_data_types_from_file( + # c_file, + # { + # "Texture": [None, None], + # "u8": [None, None], + # "s16": [None, None], + # }, + # ) + # ) + # print(list(textures.keys())) + # pal = textures["jrb_dl_E050_O021_CI_ci4_pal_rgba16"] + # tex = textures["jrb_dl_E050_O021_CI_ci4"] + # pal_stream = bytes([int(a.strip(), 0x10) for a in pal.var_data[0].split(",") if "0x" in a]) + # tex_stream = bytes([int(a.strip(), 0x10) for a in tex.var_data[0].split(",") if "0x" in a]) + # im = convert_tex("CI", 4, 4, 4, pal_stream, tex_stream) + # print(im) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 36468afdd..1a201a40c 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -21,6 +21,7 @@ from ..utility import hexOrDecInt, gammaInverse from ..utility_importer import * +from ..bin_png import convert_tex # ------------------------------------------------------------------------ # Classes @@ -56,22 +57,22 @@ def Lights1(self, light_data: list[str]): class TexBase: # sometimes int args are used so convert them all to str DEFs def standardize_fields(self): - if self.Fmt.isnumeric(): + if self.fmt.isnumeric(): fmt_types = {0: "RGBA", 2: "CI", 3: "IA", 4: "I"} - self.Fmt = f"G_IM_FMT_{fmt_types.get(int(self.Fmt))}" - if self.Siz.isnumeric(): + self.fmt = f"G_IM_FMT_{fmt_types.get(int(self.fmt))}" + if self.siz.isnumeric(): siz_types = {0: "4b", 1: "8b", 2: "16b", 3: "32b"} - self.Siz = f"G_IM_SIZ_{siz_types.get(int(self.Siz))}" + self.siz = f"G_IM_SIZ_{siz_types.get(int(self.siz))}" def eval_texture_format(self): - return f"{self.Fmt.replace('G_IM_FMT_','')}{self.Siz.replace('G_IM_SIZ_','').replace('b','')}" + return f"{self.fmt.replace('G_IM_FMT_','')}{self.siz.replace('G_IM_SIZ_','').replace('b','')}" # this will hold tile properties class Tile(TexBase): def __init__(self): - self.Fmt = "G_IM_FMT_RGBA" - self.Siz = "G_IM_SIZ_16" + self.fmt = "G_IM_FMT_RGBA" + self.siz = "G_IM_SIZ_16" self.Slow = 32 self.Tlow = 32 self.Shigh = 32 @@ -89,15 +90,59 @@ def __init__(self): # are created in order for me to make comparisons in a set @dataclass(init=True, eq=True, unsafe_hash=True) class Texture(TexBase): - Timg: tuple - Fmt: str - Siz: int - Width: int = 0 - Height: int = 0 - Pal: tuple = None + tex_img: str + fmt: str + siz: int + width: int = 0 + height: int = 0 + pal: bool = False + dxt: int = 0 + texels: int = 0 + + def determine_size(self): + # dxt is a ratio between words and lines of a texture + # we can use it to get the true texture width for textures + # loaded via loadblock + + # that said sometimes dxt is used in funny ways for special effects + # in these cases, I will default to another measurement because + # dxt is no longer reliable + bit_size = int(re.search("\d+", self.siz).group()) + if self.dxt == 0: + # this just allows export but in no way is this a normal texture + # nor will it properly show up in blender as an import + texels = self.texels + self.width = self.texels + self.height = 1 + return + bit_size = math.log2(bit_size // 4) + if not bit_size: + bit_size = 0.5 + # 32b is normally 3, but it should be 4 for math to work + # gbi uses a different define than the normal bitsize for this + if bit_size == 3: + bit_size = 4 + # basically 0x800 represents the fixed notation of dxt (u1.11) + # 8/bit_size is the number of 64 bit chunks per texel + # dxt is chunks / texel in fixed point, so width = chunks / dxt * 0x800 + width = int((0x7FF * 8 / bit_size) / (self.dxt - 1)) + # width * bitsize can't be below one + if width * bit_size < 1: + bit_size = 1 / width + width = int((8 * 0x7FF / bit_size) / (self.dxt - 1)) + # in 4bit loading, texels are faked as if they're 16 bit + # so each texel here is actually 4 texels + if bit_size == 0.5: + height = int(4 * (self.texels + 1) / width) + else: + height = int((self.texels + 1) / width) + + print(width, height, self.tex_img, bit_size) + self.width = width + self.height = height def size(self): - return self.Width, self.Height + return self.width, self.height # This is a data storage class and mat to f3dmat converting class @@ -127,6 +172,7 @@ def __init__(self, layer: int = None): self.base_tile = 0 self.tex0 = None self.tex1 = None + self.pal = None self.set_tex = False self.other_mode = dict() self.num_lights = 1 @@ -171,8 +217,8 @@ def mat_hash_f3d(self, f3d: F3DMaterialProperty): ) if hasattr(self, "Combiner"): MyT = "" - if hasattr(self.tex0, "Timg"): - MyT = str(self.tex0.Timg) + if hasattr(self.tex0, "tex_img"): + MyT = str(self.tex0.tex_img) else: pass @@ -221,24 +267,30 @@ def load_texture(self, ForceNewTex: bool, path: Path, tex: Texture): if "#include" in tex_img: return self.load_texture_png(force_new_tex, textures, path, tex) else: - self.load_texture_array(force_new_tex, textures, path, tex) + return self.load_texture_array(force_new_tex, textures, path, tex) def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): """ Create a new/find image object and then fill pixel buffer with array data """ - tex_img = textures.get(tex.Timg) - # use something better later but for now use test rgba16 - if "RGBA16" in tex.eval_texture_format(): - img = bpy.data.images.new(tex.Timg, tex.Width, tex.Height, alpha=True) - for index, texel in enumerate(tex_img): - pass - # alpha pixel - # if index % 4 == 3: - # img.pixels[index] = texel > 0.4 - # else: - # - return None + tex_img = textures.get(tex.tex_img) + # idk if this properly deals with multiple palettes... + pal_img = textures.get(self.pal.tex_img) if self.pal else None + if pal_img: + pal_stream = bytes([int(a.strip(), 0x10) for a in pal_img.var_data[0].split(",") if "0x" in a]) + print(tex_img.var_name, pal_img.var_name, len(pal_stream)) + tex.determine_size() + image_texels = convert_tex( + tex.fmt, + tex.width, + tex.height, + tex.siz, + tex_img.var_data[0], + pal_stream=pal_img.var_data[0] if pal_img else None, + ) + i = bpy.data.images.new(tex.tex_img, tex.width, tex.height) + i.pixels = image_texels + return i # TODO: make real with reasonable basics def load_texture_png(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): @@ -287,7 +339,6 @@ def set_texture_tile_mapping(self): if tex_index < 0: continue tex = self.tmem.get(tile.tmem, None) - print(tex, index) if tex: setattr(self, f"tex{tex_index}", tex) @@ -297,12 +348,12 @@ def set_textures(self, f3d: F3DMaterialProperty, tex_path: Path): if self.tex0 and self.set_tex: self.tex0.standardize_fields() self.set_tex_settings( - f3d.tex0, self.load_texture(0, tex_path, self.tex0), self.tiles[0 + self.base_tile], self.tex0.Timg + f3d.tex0, self.load_texture(0, tex_path, self.tex0), self.tiles[0 + self.base_tile], self.tex0.tex_img ) if self.tex1 and self.set_tex: self.tex1.standardize_fields() self.set_tex_settings( - f3d.tex1, self.load_texture(0, tex_path, self.tex1), self.tiles[1 + self.base_tile], self.tex1.Timg + f3d.tex1, self.load_texture(0, tex_path, self.tex1), self.tiles[1 + self.base_tile], self.tex1.tex_img ) def set_fog(self, f3d: F3DMaterialProperty): @@ -846,7 +897,9 @@ def gsDPLoadTLUTCmd(self, macro: Macro): tex = self.last_mat.loadtex tile_index = self.eval_tile_enum(macro.args[0]) tex.tile = self.last_mat.tiles[tile_index] + tex.pal = True self.last_mat.pal = tex + self.last_mat.tmem[tex.tile.tmem] = tex else: print( "**--Load block before set t img, DL is partial and missing context" @@ -860,8 +913,8 @@ def gsDPLoadBlock(self, macro: Macro): if hasattr(self.last_mat, "loadtex"): tex = self.last_mat.loadtex # these values aren't necessary when the texture is already in png format - # tex.dxt = hexOrDecInt(args[4]) - # tex.texels = hexOrDecInt(args[3]) + tex.dxt = hexOrDecInt(macro.args[4]) + tex.texels = hexOrDecInt(macro.args[3]) tile_index = self.eval_tile_enum(macro.args[0]) tex.tile = self.last_mat.tiles[tile_index] self.last_mat.tmem[tex.tile.tmem] = tex @@ -876,10 +929,10 @@ def gsDPLoadBlock(self, macro: Macro): def gsDPSetTextureImage(self, macro: Macro): self.NewMat = 1 - Timg = macro.args[3] - Fmt = macro.args[0] - Siz = macro.args[1] - self.last_mat.loadtex = Texture(Timg, Fmt, Siz) + tex_img = macro.args[3] + fmt = macro.args[0] + siz = macro.args[1] + self.last_mat.loadtex = Texture(tex_img, fmt, siz) return self.continue_parse def gsDPSetTileSize(self, macro: Macro): @@ -895,14 +948,18 @@ def gsDPSetTile(self, macro: Macro): self.NewMat = 1 tile = self.last_mat.tiles[self.eval_tile_enum(macro.args[4])] tile.tmem = hexOrDecInt(macro.args[3]) - tile.Fmt = macro.args[0].strip() - tile.Siz = macro.args[1].strip() + tile.fmt = macro.args[0].strip() + tile.siz = macro.args[1].strip() tile.Tflags = macro.args[6].strip() tile.TMask = self.eval_tile_enum(macro.args[7]) tile.TShift = self.eval_tile_enum(macro.args[8]) tile.Sflags = macro.args[9].strip() tile.SMask = self.eval_tile_enum(macro.args[10]) tile.SShift = self.eval_tile_enum(macro.args[11]) + # on a render tile 4 bit textures will change their size here + tex = self.last_mat.tmem.get(tile.tmem, None) + if tex: + tex.siz = tile.siz return self.continue_parse # combined macros diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index e9192ff88..904256778 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -787,19 +787,18 @@ class SM64_Material(Mat): def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None - tex_img = textures.get(tex.Timg)[0] - # print(tex.Timg, tex_img) + tex_img = textures.get(tex.tex_img)[0] if "#include" in tex_img: return self.load_texture_png(force_new_tex, textures, path, tex) else: - self.load_texture_array(force_new_tex, textures, path, tex) + return self.load_texture_array(force_new_tex, textures, path, tex) def load_texture_png(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): - tex_img = textures.get(tex.Timg)[0].split("/")[-1] + tex_img = textures.get(tex.tex_img)[0].split("/")[-1] tex_img = tex_img.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") image = bpy.data.images.get(tex_img) if not image or force_new_tex: - tex_img = textures.get(tex.Timg)[0] + tex_img = textures.get(tex.tex_img)[0] tex_img = tex_img.replace("#include ", "").replace('"', "").replace("'", "").replace("inc.c", "png") # deal with duplicate pathing (such as /actors/actors etc.) Extra = path.relative_to(Path(bpy.path.abspath(bpy.context.scene.fast64.sm64.decomp_path))) @@ -856,7 +855,7 @@ def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path) f3d.tex0, self.load_texture(bpy.context.scene.fast64.sm64.importer.force_new_tex, textures, tex_path, self.tex0), self.tiles[0 + self.base_tile], - self.tex0.Timg, + self.tex0.tex_img, ) if self.tex1 and self.set_tex: self.tex1.standardize_fields() @@ -864,7 +863,7 @@ def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path) f3d.tex1, self.load_texture(bpy.context.scene.fast64.sm64.importer.force_new_tex, textures, tex_path, self.tex1), self.tiles[1 + self.base_tile], - self.tex1.Timg, + self.tex1.tex_img, ) diff --git a/fast64_internal/tmp_tex_examples.c b/fast64_internal/tmp_tex_examples.c new file mode 100644 index 000000000..a0cccddc6 --- /dev/null +++ b/fast64_internal/tmp_tex_examples.c @@ -0,0 +1,1200 @@ + +Gfx jrb_dl_tempImgEd002C_ci8_aligner[] = {gsSPEndDisplayList()}; +u8 jrb_dl_tempImgEd002C_ci8[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x05, 0x06, + 0x07, 0x08, 0x09, 0x0a, 0x08, 0x01, 0x05, 0x0b, + 0x0b, 0x05, 0x05, 0x00, 0x0c, 0x09, 0x09, 0x05, + 0x0b, 0x07, 0x0d, 0x0a, 0x0a, 0x0e, 0x0f, 0x00, + 0x09, 0x06, 0x06, 0x06, 0x01, 0x05, 0x05, 0x0c, + 0x08, 0x08, 0x08, 0x10, 0x10, 0x0d, 0x05, 0x07, + 0x07, 0x11, 0x00, 0x07, 0x07, 0x07, 0x05, 0x0d, + 0x0c, 0x00, 0x09, 0x08, 0x00, 0x01, 0x01, 0x09, + 0x05, 0x01, 0x06, 0x05, 0x05, 0x05, 0x05, 0x07, + 0x08, 0x00, 0x05, 0x08, 0x08, 0x00, 0x09, 0x00, + 0x00, 0x05, 0x09, 0x07, 0x0c, 0x05, 0x00, 0x09, + 0x00, 0x09, 0x0c, 0x08, 0x07, 0x01, 0x06, 0x05, + 0x00, 0x05, 0x0d, 0x05, 0x05, 0x09, 0x09, 0x07, + 0x0c, 0x01, 0x01, 0x0c, 0x00, 0x09, 0x05, 0x0b, + 0x0b, 0x07, 0x07, 0x00, 0x05, 0x0d, 0x0d, 0x09, + 0x09, 0x01, 0x12, 0x05, 0x07, 0x07, 0x09, 0x00, + 0x07, 0x05, 0x01, 0x02, 0x0d, 0x01, 0x0c, 0x0b, + 0x01, 0x05, 0x05, 0x13, 0x07, 0x08, 0x05, 0x05, + 0x00, 0x07, 0x0d, 0x01, 0x01, 0x01, 0x0d, 0x00, + 0x01, 0x13, 0x01, 0x01, 0x0c, 0x0b, 0x07, 0x08, + 0x07, 0x09, 0x01, 0x01, 0x01, 0x0f, 0x0c, 0x0c, + 0x14, 0x13, 0x02, 0x05, 0x00, 0x07, 0x08, 0x08, + 0x07, 0x0b, 0x0c, 0x01, 0x13, 0x13, 0x01, 0x05, + 0x01, 0x13, 0x13, 0x01, 0x00, 0x07, 0x07, 0x08, + 0x07, 0x00, 0x09, 0x13, 0x13, 0x0c, 0x0c, 0x01, + 0x13, 0x14, 0x14, 0x0d, 0x09, 0x0c, 0x0c, 0x0a, + 0x08, 0x07, 0x0c, 0x12, 0x12, 0x14, 0x0c, 0x0f, + 0x13, 0x12, 0x13, 0x0c, 0x07, 0x12, 0x05, 0x0b, + 0x0f, 0x0d, 0x00, 0x0c, 0x0c, 0x00, 0x0c, 0x13, + 0x01, 0x0f, 0x01, 0x05, 0x0c, 0x01, 0x01, 0x02, + 0x0f, 0x05, 0x07, 0x0c, 0x0c, 0x05, 0x05, 0x13, + 0x13, 0x13, 0x09, 0x07, 0x01, 0x0f, 0x0c, 0x01, + 0x05, 0x12, 0x01, 0x0c, 0x0c, 0x07, 0x07, 0x05, + 0x12, 0x01, 0x05, 0x0d, 0x01, 0x0f, 0x01, 0x12, + 0x01, 0x0f, 0x0d, 0x09, 0x0c, 0x05, 0x05, 0x0c, + 0x00, 0x00, 0x07, 0x07, 0x00, 0x05, 0x0c, 0x05, + 0x0d, 0x01, 0x0f, 0x0c, 0x0c, 0x0c, 0x07, 0x0c, + 0x05, 0x0d, 0x12, 0x12, 0x0d, 0x14, 0x13, 0x01, + 0x01, 0x02, 0x13, 0x00, 0x00, 0x05, 0x07, 0x00, + 0x09, 0x0c, 0x0f, 0x01, 0x00, 0x0c, 0x0c, 0x05, + 0x05, 0x01, 0x12, 0x05, 0x12, 0x05, 0x0c, 0x00, + 0x07, 0x09, 0x13, 0x14, 0x12, 0x13, 0x0f, 0x13, + 0x00, 0x00, 0x0c, 0x12, 0x0c, 0x0c, 0x0c, 0x05, + 0x12, 0x05, 0x0f, 0x13, 0x12, 0x0d, 0x01, 0x12, + 0x0d, 0x06, 0x0d, 0x01, 0x13, 0x15, 0x13, 0x0d, + 0x12, 0x12, 0x05, 0x01, 0x14, 0x12, 0x0e, 0x0f, + 0x01, 0x0c, 0x0d, 0x14, 0x0f, 0x0f, 0x0c, 0x09, + 0x12, 0x12, 0x14, 0x0f, 0x14, 0x0d, 0x01, 0x02, + 0x05, 0x0d, 0x13, 0x13, 0x0f, 0x15, 0x15, 0x12, + 0x13, 0x01, 0x0e, 0x05, 0x01, 0x13, 0x0c, 0x00, + 0x00, 0x12, 0x13, 0x0f, 0x0f, 0x0e, 0x0f, 0x0c, + 0x05, 0x12, 0x16, 0x01, 0x13, 0x13, 0x05, 0x05, + 0x0d, 0x01, 0x02, 0x0f, 0x0e, 0x0e, 0x13, 0x0d, + 0x0f, 0x13, 0x0f, 0x0e, 0x01, 0x0c, 0x0c, 0x00, + 0x0c, 0x0f, 0x0f, 0x0f, 0x0e, 0x0e, 0x14, 0x0c, + 0x01, 0x0d, 0x0f, 0x17, 0x01, 0x12, 0x0d, 0x05, + 0x0f, 0x0f, 0x0f, 0x0e, 0x17, 0x0e, 0x01, 0x01, + 0x14, 0x13, 0x0f, 0x18, 0x0c, 0x0c, 0x14, 0x0f, + 0x0f, 0x0f, 0x0e, 0x0f, 0x0e, 0x0e, 0x01, 0x05, + 0x13, 0x13, 0x0f, 0x18, 0x01, 0x12, 0x0f, 0x01, + 0x0c, 0x13, 0x0f, 0x01, 0x17, 0x01, 0x01, 0x17, + 0x13, 0x13, 0x12, 0x0c, 0x0c, 0x01, 0x0e, 0x0e, + 0x0e, 0x0e, 0x0e, 0x14, 0x0f, 0x0f, 0x01, 0x0f, + 0x0c, 0x0c, 0x01, 0x01, 0x01, 0x02, 0x02, 0x05, + 0x0c, 0x01, 0x0e, 0x05, 0x0f, 0x12, 0x01, 0x0e, + 0x13, 0x0f, 0x13, 0x0c, 0x0c, 0x14, 0x18, 0x0f, + 0x0e, 0x0f, 0x17, 0x12, 0x0e, 0x01, 0x13, 0x0e, + 0x12, 0x0c, 0x0c, 0x0d, 0x01, 0x0f, 0x01, 0x05, + 0x05, 0x14, 0x01, 0x05, 0x01, 0x01, 0x14, 0x14, + 0x01, 0x0f, 0x13, 0x0c, 0x12, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0e, 0x0e, 0x01, 0x0f, 0x01, 0x0f, 0x01, + 0x0c, 0x0c, 0x09, 0x09, 0x05, 0x01, 0x15, 0x0d, + 0x02, 0x0f, 0x05, 0x0d, 0x01, 0x0f, 0x01, 0x0d, + 0x01, 0x0f, 0x01, 0x0c, 0x09, 0x01, 0x0f, 0x17, + 0x0f, 0x0e, 0x01, 0x13, 0x01, 0x02, 0x13, 0x09, + 0x0c, 0x12, 0x01, 0x12, 0x05, 0x0c, 0x0c, 0x02, + 0x05, 0x01, 0x0d, 0x12, 0x14, 0x0f, 0x12, 0x12, + 0x17, 0x0f, 0x17, 0x0f, 0x0c, 0x00, 0x13, 0x0f, + 0x0f, 0x0e, 0x01, 0x01, 0x0f, 0x13, 0x12, 0x0c, + 0x01, 0x01, 0x0f, 0x15, 0x0d, 0x05, 0x06, 0x09, + 0x01, 0x07, 0x0d, 0x14, 0x14, 0x0e, 0x01, 0x12, + 0x0f, 0x0e, 0x0f, 0x15, 0x13, 0x0c, 0x07, 0x07, + 0x01, 0x12, 0x01, 0x14, 0x14, 0x0f, 0x0d, 0x0d, + 0x12, 0x01, 0x14, 0x0f, 0x05, 0x0c, 0x05, 0x05, + 0x09, 0x07, 0x05, 0x0f, 0x13, 0x0f, 0x01, 0x14, + 0x0f, 0x13, 0x18, 0x14, 0x0c, 0x0c, 0x0c, 0x07, + 0x07, 0x0c, 0x0f, 0x0f, 0x14, 0x18, 0x0c, 0x01, + 0x0f, 0x01, 0x13, 0x12, 0x05, 0x0c, 0x0c, 0x05, + 0x07, 0x00, 0x12, 0x12, 0x05, 0x01, 0x0f, 0x0f, + 0x0e, 0x01, 0x0f, 0x0c, 0x0c, 0x0d, 0x05, 0x05, + 0x00, 0x07, 0x0c, 0x12, 0x13, 0x0c, 0x0d, 0x0f, + 0x14, 0x13, 0x13, 0x05, 0x12, 0x12, 0x00, 0x00, + 0x01, 0x01, 0x0c, 0x0c, 0x05, 0x0c, 0x0c, 0x14, + 0x0f, 0x14, 0x0c, 0x0c, 0x01, 0x0f, 0x12, 0x12, + 0x05, 0x12, 0x09, 0x07, 0x09, 0x07, 0x0c, 0x0f, + 0x13, 0x12, 0x0d, 0x12, 0x13, 0x13, 0x05, 0x0d, + 0x05, 0x13, 0x01, 0x09, 0x13, 0x05, 0x0c, 0x00, + 0x00, 0x00, 0x07, 0x07, 0x07, 0x0d, 0x12, 0x12, + 0x12, 0x13, 0x0d, 0x07, 0x07, 0x07, 0x07, 0x0c, + 0x0c, 0x0c, 0x05, 0x01, 0x01, 0x01, 0x0d, 0x05, + 0x05, 0x01, 0x02, 0x00, 0x05, 0x0d, 0x0c, 0x0c, + 0x0c, 0x0c, 0x13, 0x01, 0x07, 0x0c, 0x05, 0x01, + 0x01, 0x01, 0x0f, 0x00, 0x05, 0x05, 0x0c, 0x09, + 0x0c, 0x0d, 0x05, 0x01, 0x05, 0x0d, 0x05, 0x05, + 0x00, 0x09, 0x0c, 0x0c, 0x00, 0x0c, 0x07, 0x05, + 0x12, 0x0c, 0x02, 0x0e, 0x01, 0x05, 0x0d, 0x13, + 0x05, 0x05, 0x0d, 0x07, 0x00, 0x0c, 0x07, 0x07, + 0x07, 0x0c, 0x12, 0x13, 0x13, 0x06, 0x13, 0x02, + 0x09, 0x07, 0x01, 0x02, 0x01, 0x0d, 0x07, 0x00, + 0x0c, 0x00, 0x05, 0x0f, 0x01, 0x01, 0x01, 0x01, + 0x0b, 0x00, 0x0c, 0x0d, 0x05, 0x0c, 0x00, 0x00, + 0x00, 0x0c, 0x09, 0x12, 0x01, 0x01, 0x0f, 0x19, + 0x07, 0x09, 0x01, 0x0f, 0x02, 0x0e, 0x01, 0x00, + 0x14, 0x05, 0x05, 0x05, 0x12, 0x02, 0x0c, 0x00, + 0x0b, 0x08, 0x0d, 0x02, 0x0f, 0x02, 0x05, 0x07, + 0x01, 0x0d, 0x0d, 0x00, 0x01, 0x01, 0x00, 0x07, + 0x05, 0x02, 0x02, 0x02, 0x0f, 0x0f, 0x01, 0x07, + 0x01, 0x05, 0x06, 0x05, 0x0c, 0x09, 0x0a, 0x0a, + 0x05, 0x03, 0x05, 0x13, 0x13, 0x02, 0x09, 0x07, + 0x12, 0x0d, 0x06, 0x09, 0x0d, 0x00, 0x0a, 0x08, + 0x13, 0x02, 0x0f, 0x0f, 0x02, 0x02, 0x01, 0x00, + 0x01, 0x0f, 0x11, 0x02, 0x00, 0x08, 0x11, 0x07, + 0x0f, 0x06, 0x11, 0x02, 0x01, 0x04, 0x09, 0x0b, + 0x05, 0x01, 0x05, 0x0d, 0x07, 0x08, 0x05, 0x05, + 0x00, 0x01, 0x02, 0x06, 0x02, 0x05, 0x05, 0x09, + 0x08, 0x00, 0x06, 0x00, 0x0a, 0x00, 0x05, 0x0b, + 0x00, 0x05, 0x0d, 0x09, 0x05, 0x0c, 0x0c, 0x00, + 0x09, 0x09, 0x06, 0x0b, 0x0a, 0x01, 0x0f, 0x00, + +}; + +Gfx jrb_dl_tempImgEd002C_ci8_pal_rgba16_aligner[] = {gsSPEndDisplayList()}; +u8 jrb_dl_tempImgEd002C_ci8_pal_rgba16[] = { + 0xb5, 0xed, 0xc6, 0x71, 0xc6, 0xb3, 0xbe, 0x6f, + 0xc6, 0xb1, 0xbe, 0x2f, 0xbe, 0x71, 0xb5, 0xad, + 0xad, 0xab, 0xb5, 0xef, 0xad, 0x6b, 0xad, 0xad, + 0xbd, 0xef, 0xbe, 0x31, 0xce, 0xb5, 0xce, 0xb3, + 0xa5, 0x69, 0xb6, 0x2f, 0xc6, 0x31, 0xc6, 0x73, + 0xce, 0x73, 0xce, 0xf5, 0xdf, 0x37, 0xd6, 0xf5, + 0xd6, 0xb5, 0xce, 0xf3, +}; + +Gfx jrb_dl_wild_wave01_ia8_aligner[] = {gsSPEndDisplayList()}; +u8 jrb_dl_wild_wave01_ia8[] = { + 0x96, 0xa8, 0x97, 0x97, 0x65, 0xca, 0x98, 0xb8, + 0x75, 0xdc, 0xec, 0xb9, 0xca, 0xba, 0xca, 0xdb, + 0xba, 0xdc, 0x98, 0x77, 0xba, 0xa9, 0xa8, 0xa9, + 0xcb, 0xa8, 0x98, 0xa9, 0xa9, 0xa9, 0xdc, 0xc9, + 0x87, 0x97, 0x76, 0xa9, 0xdb, 0xca, 0xda, 0xa8, + 0x98, 0xdc, 0xec, 0xec, 0xda, 0xca, 0xec, 0xdc, + 0xdc, 0xa9, 0xdb, 0xba, 0xec, 0xca, 0xcb, 0xba, + 0xdc, 0x75, 0xc9, 0xc9, 0x84, 0x75, 0x98, 0x98, + 0x76, 0xdc, 0xca, 0xa7, 0xb9, 0xb9, 0xd9, 0xa7, + 0xc9, 0xa8, 0xc8, 0xb8, 0x95, 0x86, 0xdb, 0xc9, + 0xca, 0xea, 0xd9, 0xa8, 0xcc, 0xa9, 0xba, 0x98, + 0xa9, 0x98, 0xa9, 0xba, 0x98, 0x87, 0xa9, 0xa8, + 0xb8, 0xb9, 0x87, 0xa8, 0xa9, 0xca, 0xfd, 0xec, + 0xdb, 0x97, 0xb8, 0xa5, 0xa6, 0xc9, 0xec, 0xdb, + 0xba, 0xca, 0xb9, 0xca, 0x76, 0xcb, 0x96, 0xda, + 0xcb, 0xeb, 0xb9, 0xa9, 0xa9, 0x87, 0xa8, 0x97, + 0xc8, 0xca, 0xca, 0xdb, 0xb8, 0xda, 0xa6, 0x64, + 0xa8, 0xdb, 0xda, 0xdb, 0xdb, 0xb9, 0xc9, 0xda, + 0xdd, 0xee, 0xb9, 0xcb, 0xba, 0x97, 0xcb, 0xaa, + 0xb9, 0xb9, 0x98, 0xdc, 0xcb, 0x98, 0x86, 0x98, + 0x87, 0x87, 0xa9, 0xba, 0xc9, 0x23, 0x86, 0xca, + 0x85, 0xc9, 0xc7, 0xc9, 0xed, 0xec, 0xea, 0xec, + 0xed, 0xdc, 0xec, 0x65, 0xb8, 0xda, 0xa9, 0x65, + 0x86, 0x76, 0xca, 0xda, 0xd9, 0xda, 0xc8, 0xa8, + 0xb8, 0xeb, 0xb9, 0x98, 0xc8, 0xdb, 0xda, 0xda, + 0xb7, 0xa7, 0xb9, 0xb8, 0xb9, 0xa8, 0xa6, 0x97, + 0xec, 0xb8, 0xba, 0x75, 0xb9, 0xb9, 0xb9, 0xca, + 0xa9, 0xa8, 0xa8, 0xa8, 0xda, 0xec, 0xc9, 0x76, + 0x87, 0x76, 0x76, 0x87, 0xa5, 0xa6, 0x97, 0x98, + 0x86, 0xda, 0xeb, 0x76, 0xc6, 0xb7, 0xeb, 0x97, + 0x97, 0xfd, 0xea, 0xdb, 0xdc, 0xdc, 0xda, 0xca, + 0xec, 0xeb, 0x97, 0xd9, 0xc9, 0xcb, 0xfe, 0xc9, + 0xb7, 0xdc, 0xec, 0xc8, 0x54, 0xb9, 0xdd, 0x76, + 0x86, 0xca, 0xa7, 0xa7, 0x86, 0x43, 0xdb, 0x87, + 0xb8, 0xed, 0xdb, 0xda, 0xa9, 0xca, 0xba, 0xdc, + 0xdb, 0xdb, 0x98, 0xb9, 0xc9, 0x76, 0x86, 0xdc, + 0xdc, 0x97, 0x87, 0x55, 0x97, 0x76, 0x54, 0x76, + 0x74, 0x76, 0xa6, 0x64, 0x86, 0xa7, 0x98, 0xa8, + 0xa8, 0xca, 0xda, 0xb7, 0xda, 0xfd, 0xca, 0xed, + 0xa9, 0xca, 0xee, 0xed, 0xda, 0xec, 0x75, 0xa7, + 0xb7, 0xda, 0xda, 0x85, 0xa8, 0x87, 0x55, 0xa8, + 0x97, 0x98, 0x65, 0x44, 0xc9, 0x86, 0x64, 0x75, + 0xca, 0xb8, 0xc8, 0xa4, 0xb9, 0xdc, 0xcb, 0xa8, + 0xb9, 0xba, 0x98, 0xb9, 0xb9, 0xa9, 0xca, 0xb9, + 0xa8, 0x88, 0xa9, 0x98, 0x85, 0x98, 0x98, 0x66, + 0xa5, 0x64, 0x53, 0x74, 0x76, 0x65, 0x76, 0x76, + 0x98, 0xc9, 0xc9, 0xb8, 0xec, 0xfe, 0xdb, 0xc8, + 0xea, 0xed, 0xc9, 0xec, 0xff, 0xdb, 0xb8, 0x98, + 0xb9, 0x96, 0xec, 0xc9, 0xb9, 0x65, 0xb9, 0xb9, + 0x54, 0xb7, 0x97, 0x98, 0x76, 0xba, 0xb7, 0x65, + 0xed, 0xc9, 0xa9, 0xbb, 0x87, 0xdc, 0xdc, 0xdc, + 0xed, 0xdc, 0xec, 0xfe, 0xa9, 0xdc, 0xdb, 0xb9, + 0x97, 0x76, 0xa9, 0x86, 0x76, 0x65, 0x98, 0x66, + 0x64, 0x65, 0x33, 0x76, 0x54, 0x54, 0x54, 0x87, + 0x54, 0xc8, 0xc9, 0xb7, 0xed, 0xdc, 0xca, 0x94, + 0xec, 0xec, 0xed, 0xdc, 0xed, 0xca, 0xec, 0xdb, + 0xfd, 0xec, 0x43, 0x65, 0xdb, 0xca, 0x76, 0x87, + 0xb8, 0x65, 0xb7, 0xa6, 0xa5, 0x74, 0x96, 0xed, + 0xcb, 0xa7, 0x95, 0xb9, 0xa7, 0xec, 0xca, 0xdc, + 0xdc, 0xdc, 0xdb, 0xed, 0x98, 0xa9, 0x97, 0xa8, + 0xca, 0x97, 0x87, 0x87, 0x64, 0x86, 0x97, 0x76, + 0x65, 0x44, 0x87, 0x44, 0x53, 0x44, 0x33, 0x44, + 0x43, 0x75, 0xc9, 0x65, 0xdc, 0xa5, 0xc7, 0xfe, + 0xfd, 0xca, 0xdb, 0xda, 0xc9, 0xb9, 0xcb, 0xb9, + 0xcb, 0x65, 0x76, 0xc7, 0x85, 0x86, 0x98, 0x96, + 0xcb, 0xb9, 0x86, 0x87, 0xb9, 0x87, 0xb8, 0x97, + 0xdc, 0xb8, 0xc8, 0xa7, 0xdb, 0xdb, 0xcb, 0xba, + 0xcb, 0xcb, 0xee, 0xeb, 0x87, 0xa9, 0xca, 0xb9, + 0xdc, 0x97, 0xa8, 0x98, 0x64, 0x65, 0x75, 0x65, + 0x54, 0x77, 0x33, 0x43, 0x55, 0x33, 0x44, 0x54, + 0x44, 0x76, 0x87, 0x54, 0xb8, 0xd8, 0xeb, 0xdc, + 0xc9, 0xed, 0xfe, 0xfe, 0xfe, 0xed, 0xdb, 0xdb, + 0x76, 0xca, 0xa8, 0x86, 0x76, 0x85, 0x65, 0xa8, + 0xb8, 0xa7, 0x96, 0x98, 0x86, 0xa8, 0x98, 0xa9, + 0xb8, 0x86, 0x95, 0x97, 0xdb, 0xdb, 0xdb, 0xcb, + 0xed, 0xba, 0xb9, 0xa8, 0xca, 0x88, 0x87, 0xb9, + 0x96, 0xa8, 0xba, 0xca, 0x64, 0x33, 0x65, 0x86, + 0x54, 0x44, 0x54, 0x43, 0x12, 0x44, 0x33, 0x44, + 0x65, 0x64, 0x75, 0x43, 0x65, 0x65, 0xc9, 0xa8, + 0xd6, 0xa8, 0x96, 0xec, 0xba, 0xca, 0xda, 0xdb, + 0x54, 0x76, 0x86, 0x76, 0x97, 0x65, 0x76, 0x96, + 0x43, 0x54, 0x75, 0x86, 0x87, 0x87, 0x86, 0xb7, + 0xb7, 0x86, 0xb9, 0xb9, 0xcb, 0x98, 0xba, 0xa9, + 0xcb, 0xdb, 0xba, 0x99, 0x98, 0xa8, 0x76, 0x98, + 0x65, 0x97, 0xba, 0x97, 0x43, 0xa8, 0x33, 0x76, + 0x33, 0x64, 0x65, 0x33, 0x64, 0x44, 0x54, 0x44, + 0x75, 0x54, 0x65, 0x85, 0x54, 0x33, 0xd9, 0xb9, + 0xa7, 0xa6, 0xfc, 0x96, 0x75, 0x86, 0xc9, 0xb8, + 0x96, 0x97, 0x65, 0x65, 0x98, 0x75, 0x75, 0x86, + 0x87, 0x76, 0x76, 0x86, 0x43, 0xb9, 0xb9, 0xa9, + 0x86, 0x85, 0xb9, 0x87, 0xa7, 0xda, 0xdb, 0xca, + 0xba, 0x98, 0x99, 0x98, 0xba, 0xcb, 0x98, 0xca, + 0x98, 0x85, 0x98, 0x85, 0x64, 0x85, 0x75, 0x54, + 0x54, 0x55, 0x76, 0x44, 0x44, 0x55, 0x45, 0x55, + 0x33, 0x65, 0x55, 0x87, 0x85, 0x65, 0x53, 0xb8, + 0xb8, 0xd9, 0x96, 0x65, 0xec, 0xb9, 0xd7, 0x55, + 0x76, 0x76, 0x76, 0x96, 0x65, 0x55, 0x64, 0x97, + 0x86, 0x55, 0x86, 0x97, 0x66, 0x86, 0x76, 0x76, + 0x65, 0x97, 0xb8, 0xa8, 0xa8, 0x97, 0xdc, 0xca, + 0xba, 0xba, 0xa9, 0x98, 0xba, 0xa8, 0x86, 0x98, + 0x53, 0xa9, 0x87, 0x74, 0x65, 0x65, 0x97, 0x76, + 0x75, 0x86, 0x54, 0x54, 0x33, 0x34, 0x33, 0x54, + 0x44, 0x44, 0xa8, 0xca, 0x65, 0x43, 0x55, 0x86, + 0x86, 0x64, 0x96, 0x76, 0x55, 0x76, 0x97, 0x96, + 0x96, 0x76, 0x87, 0x76, 0x66, 0x75, 0x65, 0x85, + 0x54, 0x98, 0xc9, 0x97, 0x97, 0x55, 0x75, 0xa8, + 0x85, 0xc8, 0x65, 0x96, 0xb8, 0x76, 0x98, 0xa9, + 0xcb, 0xa9, 0xa9, 0xa9, 0xa8, 0x76, 0x86, 0xa8, + 0x76, 0x87, 0x95, 0x88, 0x97, 0x65, 0x64, 0x65, + 0x75, 0x66, 0x55, 0x33, 0x55, 0x33, 0x53, 0x43, + 0x55, 0x55, 0x65, 0x64, 0x86, 0xdb, 0x65, 0xc9, + 0xb8, 0x87, 0xb8, 0xb9, 0xa7, 0x64, 0x76, 0xa8, + 0x54, 0xa8, 0x77, 0x65, 0x97, 0x87, 0x76, 0x86, + 0x87, 0x86, 0x65, 0x65, 0x54, 0xa8, 0x97, 0x96, + 0x86, 0x86, 0x98, 0x76, 0x87, 0x98, 0xa8, 0x87, + 0x98, 0x98, 0x98, 0x98, 0x85, 0x76, 0xa9, 0x87, + 0x85, 0x94, 0xa8, 0xbb, 0x96, 0x43, 0x65, 0x76, + 0x75, 0x54, 0x65, 0x55, 0x33, 0x55, 0x54, 0x54, + 0x66, 0x66, 0x97, 0x65, 0x97, 0x44, 0x33, 0x44, + 0x44, 0x64, 0xa7, 0x95, 0x86, 0x97, 0x43, 0x97, + 0x65, 0xa8, 0xa7, 0x88, 0x98, 0x75, 0x86, 0x87, + 0x86, 0x77, 0x86, 0x76, 0x97, 0x65, 0x98, 0x86, + 0x97, 0x87, 0x64, 0x97, 0x86, 0x87, 0x98, 0x87, + 0x88, 0x87, 0x87, 0x98, 0x75, 0x86, 0x95, 0x64, + 0x96, 0xa8, 0x85, 0xb9, 0x86, 0x43, 0x33, 0x32, + 0x54, 0x54, 0x64, 0x33, 0x54, 0x34, 0x66, 0x43, + 0x66, 0x75, 0x75, 0x44, 0x65, 0x45, 0x54, 0x44, + 0x65, 0x44, 0x76, 0x76, 0x87, 0x76, 0x87, 0x97, + 0x77, 0x95, 0x86, 0x76, 0x87, 0x75, 0x76, 0x88, + 0x97, 0x76, 0x97, 0x86, 0x75, 0x75, 0x75, 0x54, + 0x98, 0x98, 0x53, 0x87, 0x98, 0x98, 0x77, 0x76, + 0x88, 0x98, 0x66, 0x88, 0xa9, 0x64, 0x64, 0x76, + 0x88, 0x64, 0x75, 0x96, 0x85, 0x43, 0x53, 0x74, + 0x65, 0x33, 0x54, 0x43, 0x33, 0x53, 0x34, 0x66, + 0x65, 0x65, 0x85, 0x44, 0x43, 0x44, 0x54, 0x54, + 0x65, 0x54, 0x86, 0x98, 0x65, 0x76, 0x74, 0x96, + 0x76, 0xa9, 0xc9, 0x86, 0x87, 0x97, 0x86, 0x75, + 0x87, 0x87, 0x87, 0x98, 0x86, 0x87, 0x87, 0x87, + 0x76, 0x88, 0x75, 0x76, 0x55, 0x86, 0xa9, 0x88, + 0x87, 0x87, 0x87, 0x76, 0x77, 0x87, 0x76, 0x22, + 0x98, 0x75, 0x64, 0x54, 0x12, 0x22, 0x12, 0x54, + 0x64, 0x64, 0x44, 0x32, 0x54, 0x33, 0x33, 0x66, + 0x76, 0x66, 0x76, 0x33, 0x55, 0x86, 0x54, 0x76, + 0xa8, 0xb7, 0x76, 0x54, 0x96, 0x75, 0xa8, 0x76, + 0xa8, 0x77, 0x86, 0xaa, 0x98, 0x98, 0x98, 0x76, + 0x77, 0x76, 0x98, 0x87, 0x99, 0x98, 0x76, 0x86, + 0x65, 0x88, 0x98, 0x98, 0x98, 0x98, 0x88, 0x87, + 0x87, 0x76, 0x88, 0x87, 0x43, 0x65, 0x02, 0x75, + 0x86, 0x64, 0x87, 0x33, 0x33, 0x54, 0x64, 0x85, + 0x43, 0x64, 0x66, 0x23, 0x43, 0x43, 0x43, 0x54, + 0x76, 0x65, 0x54, 0x44, 0x96, 0x96, 0xb9, 0x86, + 0xa7, 0x55, 0x86, 0xb8, 0xb9, 0xa8, 0x97, 0x96, + 0xb9, 0x86, 0x87, 0xa8, 0x87, 0x87, 0x76, 0x98, + 0xa9, 0xa9, 0x76, 0x86, 0x75, 0x76, 0x87, 0x98, + 0x87, 0x87, 0x76, 0x98, 0x87, 0x87, 0x76, 0x77, + 0x87, 0x43, 0x77, 0x75, 0x54, 0x43, 0x75, 0x98, + 0x43, 0x76, 0x33, 0x74, 0x75, 0x55, 0x33, 0x44, + 0x54, 0x54, 0x33, 0x54, 0x75, 0x22, 0x54, 0x88, + 0x65, 0x54, 0xa8, 0xb9, 0x65, 0x65, 0x75, 0x44, + 0x65, 0x97, 0xcb, 0xca, 0xa7, 0xb8, 0xca, 0xca, + 0xb9, 0xb9, 0x76, 0xa8, 0xa8, 0x87, 0xba, 0xb8, + 0xa9, 0xba, 0x98, 0x86, 0x77, 0x87, 0x76, 0x76, + 0x88, 0x87, 0x76, 0x87, 0x86, 0x87, 0x76, 0x76, + 0x87, 0x87, 0x86, 0xa8, 0x64, 0x65, 0x75, 0x87, + 0x53, 0x86, 0x34, 0x43, 0x43, 0x44, 0x54, 0x33, + 0x43, 0x33, 0x22, 0x43, 0x55, 0x12, 0x44, 0x55, + 0x76, 0x86, 0x66, 0x65, 0x65, 0xb8, 0xba, 0x87, + 0xa8, 0xa8, 0xb8, 0xc9, 0xb9, 0xb9, 0xca, 0xa8, + 0xa7, 0xa9, 0xcc, 0xcb, 0xb9, 0x98, 0x87, 0xca, + 0x98, 0xb9, 0x99, 0x99, 0x87, 0x76, 0x87, 0x87, + 0x75, 0x76, 0x98, 0x98, 0xa7, 0x98, 0x76, 0x53, + 0x54, 0x87, 0x76, 0x53, 0x65, 0x76, 0x64, 0x33, + 0x12, 0x44, 0x64, 0x33, 0x33, 0x23, 0x33, 0x22, + 0x33, 0x33, 0x44, 0x43, 0x33, 0x55, 0x44, 0x76, + 0x97, 0xb9, 0x76, 0x87, 0xca, 0xa9, 0x65, 0xa9, + 0xa9, 0xb9, 0xdb, 0xcb, 0xba, 0xca, 0xdb, 0xca, + 0xdc, 0xb9, 0xba, 0xa9, 0x98, 0x98, 0xca, 0xcb, + 0xa8, 0xaa, 0xa9, 0xa9, 0x98, 0x87, 0x98, 0x76, + 0x86, 0x76, 0x98, 0x85, 0x88, 0x98, 0x96, 0x96, + 0x87, 0x77, 0x75, 0x76, 0x64, 0x65, 0x54, 0x22, + 0x23, 0x12, 0x32, 0x43, 0x75, 0x85, 0x63, 0x43, + 0x33, 0x22, 0x23, 0x54, 0x76, 0x75, 0x43, 0x77, + 0xa9, 0xa8, 0xca, 0x77, 0xca, 0xba, 0x65, 0xa8, + 0xb9, 0xca, 0xca, 0xb9, 0xcb, 0xba, 0xdc, 0xdb, + 0xcc, 0xdb, 0xa8, 0xa9, 0xa8, 0xba, 0xa8, 0xdb, + 0xca, 0xa9, 0xa9, 0x87, 0x98, 0x98, 0x98, 0xa9, + 0x87, 0x87, 0x76, 0x97, 0x97, 0x98, 0x97, 0x54, + 0x86, 0x86, 0x76, 0x53, 0x33, 0x75, 0x12, 0x86, + 0x97, 0x43, 0x22, 0x43, 0x43, 0x32, 0x33, 0x43, + 0x65, 0x44, 0x44, 0x98, 0x99, 0x87, 0xb7, 0x87, + 0x98, 0xa9, 0x86, 0xc9, 0x98, 0xba, 0x98, 0x96, + 0xb9, 0xa9, 0xcb, 0xed, 0xdc, 0xdc, 0xec, 0xcc, + 0xcb, 0xcb, 0xa8, 0xa9, 0xa8, 0xba, 0xa8, 0xdb, + 0xca, 0x99, 0xa9, 0x87, 0x98, 0x98, 0x97, 0xa8, + 0x97, 0x88, 0x86, 0x98, 0x97, 0xca, 0x96, 0x75, + 0x87, 0x86, 0x76, 0x87, 0x75, 0x75, 0x12, 0x86, + 0x97, 0x43, 0x22, 0x43, 0x43, 0x43, 0x44, 0x86, + 0x76, 0x65, 0x66, 0x98, 0x99, 0x77, 0x98, 0x87, + 0xca, 0xdc, 0xcb, 0xba, 0xdb, 0xdb, 0x76, 0x86, + 0x97, 0x98, 0xcb, 0xdb, 0xa8, 0xa6, 0xd8, 0x98, + 0x97, 0x97, 0xa8, 0x97, 0x86, 0x86, 0xdc, 0xcb, + 0xba, 0x88, 0xa8, 0xb9, 0xa9, 0x88, 0xcb, 0xba, + 0xca, 0xba, 0xca, 0xb9, 0xba, 0xdc, 0xdc, 0xa9, + 0xb9, 0x88, 0x86, 0x97, 0x55, 0x76, 0x54, 0x33, + 0x23, 0x22, 0x33, 0x54, 0x76, 0x87, 0xa8, 0xb9, + 0x97, 0x97, 0xaa, 0xba, 0xb9, 0xa9, 0xdc, 0xa8, + 0x87, 0xba, 0xba, 0x98, 0xcb, 0xa8, 0xb9, 0xb8, + 0x65, 0xda, 0xb9, 0x33, 0xa7, 0x33, 0x96, 0x54, + 0x54, 0x96, 0x33, 0x75, 0xa6, 0xdb, 0xdc, 0x64, + 0xc8, 0xdb, 0xa6, 0xca, 0xca, 0xdb, 0xed, 0xee, + 0xed, 0xdc, 0xee, 0xca, 0xee, 0xca, 0xdb, 0xdc, + 0x98, 0xa9, 0xa9, 0xdb, 0xa8, 0x98, 0x77, 0x65, + 0x12, 0x64, 0x76, 0xb7, 0x98, 0xba, 0xb9, 0xb8, + 0xca, 0xdb, 0x76, 0xa8, 0xcb, 0xa8, 0x98, 0x97, + 0x98, 0xca, 0xdb, 0xb9, 0xa8, 0x64, 0xb9, 0xa8, + 0xc8, 0xc7, 0x94, 0x83, 0x32, 0x33, 0x43, 0x44, + 0x22, 0x33, 0x76, 0xb7, 0x64, 0xa8, 0x64, 0xc8, + 0xdc, 0xc9, 0xb8, 0xdc, 0xb7, 0xdb, 0xdc, 0xed, + 0xed, 0xed, 0xed, 0xda, 0xa9, 0xcb, 0xdd, 0x99, + 0xba, 0xec, 0xdb, 0xb9, 0xb9, 0xcb, 0x98, 0x99, + 0x55, 0x97, 0x97, 0xdb, 0xca, 0x97, 0x96, 0xca, + 0xed, 0xca, 0xed, 0xed, 0xa7, 0x86, 0xca, 0xca, + 0x97, 0xb9, 0xba, 0xca, 0xc9, 0xa7, 0xb9, 0x33, + 0xc7, 0xa7, 0xb7, 0xc7, 0x65, 0x63, 0x12, 0x22, + 0x54, 0x75, 0xfd, 0xc9, 0xdc, 0xa7, 0xda, 0xec, + 0xa7, 0xca, 0xca, 0xed, 0xdc, 0xdc, 0xed, 0xdc, + 0xba, 0xed, 0xcb, 0xba, 0xcb, 0xdc, 0xca, 0x88, + 0xa9, 0xba, 0xba, 0xba, 0x98, 0xa8, 0xba, 0xa9, + 0x53, 0x76, 0xba, 0x98, 0xdc, 0xba, 0xba, 0xa9, + 0xa9, 0xed, 0xed, 0xc9, 0xeb, 0xfe, 0xec, 0xb9, + 0xa9, 0xca, 0x87, 0x88, 0xba, 0xa8, 0xb9, 0xa6, + 0xca, 0x96, 0xd9, 0x86, 0x65, 0x96, 0xc7, 0xb8, + 0x43, 0xc9, 0xb6, 0x95, 0xa7, 0xb8, 0xc8, 0xb7, + 0xca, 0xb8, 0xdc, 0xba, 0xed, 0xdd, 0xed, 0xdc, + 0xcb, 0xed, 0xdc, 0xca, 0xcc, 0xed, 0xba, 0xba, + 0xdc, 0xa9, 0xba, 0xb9, 0x87, 0xaa, 0xcb, 0x98, + 0xb8, 0xc8, 0x98, 0xba, 0x98, 0xb9, 0xed, 0xca, + 0xdc, 0xca, 0xca, 0xdb, 0xdc, 0xfe, 0xee, 0xcb, + 0x98, 0xa8, 0xa8, 0xb8, 0xdc, 0xa8, 0xb8, 0xa6, + 0xcb, 0xa8, 0xc6, 0xb9, 0x33, 0xb9, 0x55, 0x54, + 0x97, 0xa8, 0x44, 0xc9, 0xcb, 0xb8, 0xc9, 0xcb, + 0xc9, 0xb9, 0xec, 0xa8, 0xed, 0xdc, 0xed, 0xdb, + 0xdc, 0xed, 0x98, 0xcb, 0xba, 0xed, 0xc9, 0x87, + 0x98, 0xa9, 0xca, 0xa8, 0xb8, 0xa9, 0xba, 0xb9, + 0x98, 0xa9, 0xa8, 0xed, 0xcb, 0xdb, 0xdb, 0xfe, + 0xcb, 0xec, 0xed, 0xff, 0xfe, 0xed, 0xed, 0xba, + 0xa9, 0xa8, 0xda, 0xba, 0x76, 0xa8, 0xca, 0xb7, + 0xc8, 0xca, 0xba, 0xba, 0xd9, 0x43, 0x75, 0xa8, + 0xb9, 0x85, 0x96, 0xa7, 0xb9, 0xb9, 0xb7, 0xa8, + 0xb7, 0xa8, 0xdc, 0xba, 0xa9, 0xb9, 0xa7, 0xb9, + 0xa9, 0xec, 0xb9, 0xca, 0xba, 0xa9, 0x97, 0xba, + 0xb9, 0xaa, 0x88, 0x97, 0xa8, 0xa9, 0xb9, 0xa7, + 0xcb, 0xed, 0x77, 0xba, 0xca, 0x97, 0xdb, 0xec, + 0xb9, 0xdb, 0xed, 0xba, 0xdb, 0xfe, 0xdb, 0xcb, + 0xca, 0xa9, 0xcb, 0xb8, 0xa7, 0xb8, 0xbb, 0x97, + 0x76, 0x75, 0xc9, 0xca, 0xba, 0xa7, 0xa8, 0x86, + +}; + +u8 bob_dl_grey_brick_i4[] = { + 0x46, 0x66, 0x65, 0x45, 0x55, 0x54, 0x44, 0x55, + 0x44, 0x44, 0x35, 0x67, 0x77, 0x54, 0x56, 0x66, + 0x55, 0x66, 0x66, 0x56, 0x64, 0x44, 0x55, 0x55, + 0x44, 0x45, 0x55, 0x44, 0x34, 0x45, 0x65, 0x55, + 0x67, 0x66, 0x77, 0x66, 0x65, 0x54, 0x67, 0x77, + 0x78, 0x76, 0x66, 0x67, 0x76, 0x56, 0x67, 0x66, + 0x66, 0x66, 0x66, 0x54, 0x44, 0x44, 0x45, 0x43, + 0x44, 0x43, 0x55, 0x44, 0x44, 0x55, 0x66, 0x55, + 0x66, 0x65, 0x55, 0x65, 0x65, 0x54, 0x66, 0x77, + 0x77, 0x76, 0x55, 0x55, 0x55, 0x56, 0x65, 0x65, + 0x65, 0x55, 0x55, 0x44, 0x65, 0x55, 0x66, 0x55, + 0x45, 0x56, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x76, 0x66, 0x66, 0x77, 0x76, 0x66, 0x67, + 0x66, 0x55, 0x55, 0x55, 0x55, 0x66, 0x66, 0x66, + 0x66, 0x55, 0x55, 0x44, 0x66, 0x66, 0x66, 0x55, + 0x55, 0x55, 0x66, 0x66, 0x65, 0x55, 0x66, 0x66, + 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, + 0x66, 0x67, 0x65, 0x55, 0x66, 0x66, 0x66, 0x66, + 0x65, 0x55, 0x56, 0x55, 0x66, 0x56, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x76, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x66, + 0x66, 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x65, + 0x65, 0x55, 0x55, 0x55, 0x66, 0x66, 0x66, 0x76, + 0x66, 0x66, 0x66, 0x76, 0x56, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x55, + 0x65, 0x55, 0x55, 0x55, 0x66, 0x66, 0x76, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, + 0x55, 0x56, 0x55, 0x54, 0x66, 0x67, 0x76, 0x77, + 0x67, 0x66, 0x56, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x55, 0x67, 0x55, 0x63, 0x67, 0x76, 0x67, 0x76, + 0x66, 0x66, 0x67, 0x66, 0x76, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x77, 0x76, 0x66, 0x77, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x67, 0x55, 0x54, 0x67, 0x77, 0x76, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x77, 0x77, 0x66, 0x67, 0x76, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x55, 0x54, 0x67, 0x77, 0x76, 0x66, + 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x76, + 0x66, 0x66, 0x67, 0x77, 0x77, 0x76, 0x66, 0x66, + 0x66, 0x67, 0x77, 0x76, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x55, 0x54, 0x67, 0x77, 0x77, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, + 0x66, 0x67, 0x77, 0x76, 0x66, 0x66, 0x66, 0x65, + 0x56, 0x77, 0x76, 0x64, 0x66, 0x67, 0x76, 0x76, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x67, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, + 0x66, 0x76, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x55, 0x76, 0x66, 0x64, 0x67, 0x67, 0x76, 0x77, + 0x77, 0x77, 0x65, 0x55, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, + 0x66, 0x66, 0x77, 0x76, 0x66, 0x66, 0x56, 0x66, + 0x66, 0x66, 0x66, 0x65, 0x66, 0x66, 0x66, 0x67, + 0x77, 0x77, 0x66, 0x55, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x67, 0x77, 0x77, 0x77, 0x78, 0x77, 0x66, + 0x67, 0x67, 0x77, 0x76, 0x66, 0x65, 0x66, 0x66, + 0x66, 0x66, 0x67, 0x74, 0x66, 0x66, 0x66, 0x67, + 0x67, 0x76, 0x56, 0x55, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x68, 0x88, 0x77, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x76, 0x67, 0x65, 0x76, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x65, 0x55, 0x55, 0x55, 0x66, 0x55, + 0x77, 0x77, 0x67, 0x76, 0x67, 0x77, 0x77, 0x66, + 0x66, 0x66, 0x66, 0x67, 0x65, 0x56, 0x66, 0x66, + 0x76, 0x66, 0x67, 0x55, 0x76, 0x55, 0x56, 0x66, + 0x55, 0x66, 0x55, 0x55, 0x55, 0x55, 0x44, 0x45, + 0x67, 0x66, 0x55, 0x56, 0x65, 0x66, 0x55, 0x66, + 0x55, 0x66, 0x66, 0x66, 0x65, 0x55, 0x55, 0x55, + 0x55, 0x65, 0x55, 0x44, 0x65, 0x55, 0x55, 0x43, + 0x55, 0x54, 0x43, 0x44, 0x33, 0x22, 0x33, 0x43, + 0x55, 0x55, 0x54, 0x55, 0x55, 0x55, 0x55, 0x44, + 0x54, 0x55, 0x35, 0x66, 0x66, 0x54, 0x55, 0x55, + 0x55, 0x55, 0x55, 0x44, 0x45, 0x54, 0x55, 0x45, + 0x55, 0x55, 0x33, 0x44, 0x54, 0x33, 0x55, 0x55, + 0x68, 0x88, 0x78, 0x77, 0x67, 0x65, 0x64, 0x44, + 0x65, 0x55, 0x53, 0x21, 0x33, 0x33, 0x22, 0x22, + 0x23, 0x55, 0x55, 0x55, 0x57, 0x66, 0x76, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x77, 0x78, + 0x88, 0x88, 0x77, 0x75, 0x88, 0x87, 0x46, 0x77, + 0x77, 0x77, 0x76, 0x35, 0x67, 0x77, 0x77, 0x77, + 0x9a, 0xaa, 0xaa, 0xa9, 0x99, 0x98, 0x87, 0x77, + 0x77, 0x77, 0x66, 0x67, 0x66, 0x66, 0x77, 0x77, + 0x78, 0x88, 0x77, 0x77, 0x78, 0x88, 0x77, 0x67, + 0x77, 0x77, 0x77, 0x35, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x88, 0x88, 0x77, 0x77, 0x77, 0x66, + 0x77, 0x77, 0x66, 0x67, 0x66, 0x66, 0x77, 0x77, + 0x77, 0x77, 0x76, 0x77, 0x77, 0x77, 0x77, 0x67, + 0x77, 0x77, 0x77, 0x45, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x88, 0x88, 0x76, 0x77, 0x77, 0x67, + 0x67, 0x77, 0x66, 0x77, 0x66, 0x66, 0x77, 0x77, + 0x77, 0x87, 0x77, 0x77, 0x78, 0x87, 0x77, 0x66, + 0x77, 0x77, 0x66, 0x44, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x78, 0x89, 0x88, 0x77, 0x77, 0x76, 0x66, + 0x76, 0x66, 0x66, 0x77, 0x66, 0x65, 0x77, 0x77, + 0x77, 0x87, 0x88, 0x77, 0x77, 0x88, 0x77, 0x77, + 0x77, 0x77, 0x75, 0x44, 0x67, 0x77, 0x77, 0x77, + 0x87, 0x88, 0x88, 0x88, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x66, 0x75, 0x67, 0x77, + 0x88, 0x88, 0x87, 0x87, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x86, 0x44, 0x34, 0x77, 0x77, 0x77, + 0x77, 0x88, 0x88, 0x88, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x78, 0x77, 0x76, 0x77, 0x87, 0x77, + 0x88, 0x88, 0x87, 0x87, 0x77, 0x88, 0x77, 0x87, + 0x77, 0x77, 0x86, 0x55, 0x37, 0x77, 0x77, 0x78, + 0x77, 0x78, 0x98, 0x77, 0x77, 0x77, 0x67, 0x77, + 0x87, 0x87, 0x78, 0x77, 0x88, 0x78, 0x77, 0x66, + 0x77, 0x78, 0x87, 0x88, 0x88, 0x88, 0x77, 0x77, + 0x78, 0x88, 0x78, 0x75, 0x77, 0x88, 0x77, 0x78, + 0x98, 0x88, 0x87, 0x86, 0x67, 0x77, 0x67, 0x77, + 0x88, 0x78, 0x77, 0x77, 0x88, 0x88, 0x77, 0x66, + 0x77, 0x88, 0x87, 0x77, 0x88, 0x88, 0x77, 0x77, + 0x78, 0x88, 0x88, 0x76, 0x68, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x76, 0x67, 0x76, 0x66, 0x88, + 0x88, 0x88, 0x77, 0x77, 0x78, 0x87, 0x76, 0x67, + 0x78, 0x88, 0x88, 0x78, 0x88, 0x88, 0x87, 0x78, + 0x88, 0x88, 0x88, 0x87, 0x77, 0x78, 0x88, 0x88, + 0x88, 0x99, 0x98, 0x87, 0x88, 0x77, 0x77, 0x89, + 0x87, 0x88, 0x77, 0x77, 0x78, 0x77, 0x66, 0x67, + 0x78, 0x88, 0x88, 0x87, 0x78, 0x88, 0x77, 0x77, + 0x87, 0x88, 0x88, 0x77, 0x77, 0x88, 0x78, 0x89, + 0x99, 0x99, 0x99, 0x98, 0x88, 0x77, 0x77, 0x88, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, + 0x77, 0x88, 0x87, 0x77, 0x77, 0x87, 0x77, 0x77, + 0x88, 0x88, 0x78, 0x77, 0x77, 0x77, 0x78, 0x88, + 0x88, 0x99, 0x99, 0x98, 0x89, 0x88, 0x77, 0x88, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, + 0x88, 0x88, 0x88, 0x88, 0x89, 0x98, 0x77, 0x77, + 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, + 0x77, 0x77, 0x87, 0x66, 0x66, 0x77, 0x77, 0x68, + 0x78, 0x88, 0x77, 0x66, 0x66, 0x66, 0x77, 0x77, + 0x78, 0x88, 0x89, 0x99, 0x99, 0x99, 0x77, 0x76, + 0x77, 0x66, 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, + 0x56, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x78, 0x87, 0x76, 0x66, 0x66, 0x67, 0x77, 0x77, + 0x78, 0x88, 0x88, 0x99, 0x99, 0x98, 0x87, 0x77, + 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, 0x87, 0x66, + 0x22, 0x22, 0x44, 0x44, 0x55, 0x55, 0x55, 0x54, + 0x54, 0x55, 0x56, 0x66, 0x66, 0x66, 0x67, 0x77, + 0x77, 0x77, 0x77, 0x88, 0x87, 0x76, 0x55, 0x56, + 0x65, 0x56, 0x56, 0x66, 0x86, 0x57, 0x65, 0x64, + 0x35, 0x55, 0x67, 0x77, 0x55, 0x55, 0x55, 0x54, + 0x45, 0x55, 0x67, 0x77, 0x75, 0x65, 0x55, 0x55, + 0x66, 0x66, 0x67, 0x77, 0x76, 0x53, 0x44, 0x45, + 0x55, 0x55, 0x56, 0x66, 0x66, 0x66, 0x56, 0x65, + 0x56, 0x76, 0x67, 0x77, 0x65, 0x77, 0x77, 0x65, + 0x56, 0x67, 0x89, 0x99, 0x86, 0x67, 0x77, 0x75, + 0x55, 0x55, 0x55, 0x55, 0x53, 0x33, 0x44, 0x32, + 0x22, 0x34, 0x33, 0x33, 0x44, 0x56, 0x66, 0x78, + 0x56, 0x66, 0x77, 0x66, 0x55, 0x67, 0x77, 0x77, + 0x77, 0x88, 0x98, 0x77, 0x87, 0x88, 0x77, 0x67, + 0x66, 0x67, 0x88, 0x87, 0x77, 0x65, 0x65, 0x56, + 0x65, 0x66, 0x55, 0x67, 0x75, 0x57, 0x66, 0x88, + 0x56, 0x78, 0x77, 0x76, 0x77, 0x77, 0x76, 0x77, + 0x77, 0x77, 0x77, 0x78, 0x77, 0x67, 0x77, 0x77, + 0x66, 0x66, 0x66, 0x76, 0x67, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x44, 0x55, 0x66, 0x67, 0x76, 0x76, + 0x56, 0x78, 0x77, 0x77, 0x87, 0x78, 0x77, 0x77, + 0x77, 0x77, 0x87, 0x78, 0x87, 0x77, 0x77, 0x77, + 0x55, 0x56, 0x66, 0x66, 0x66, 0x66, 0x87, 0x66, + 0x66, 0x66, 0x55, 0x56, 0x66, 0x66, 0x76, 0x67, + 0x56, 0x67, 0x77, 0x77, 0x87, 0x88, 0x77, 0x77, + 0x77, 0x88, 0x88, 0x78, 0x88, 0x77, 0x77, 0x77, + 0x55, 0x55, 0x66, 0x66, 0x66, 0x77, 0x88, 0x66, + 0x76, 0x66, 0x55, 0x56, 0x77, 0x77, 0x76, 0x67, + 0x46, 0x66, 0x77, 0x77, 0x87, 0x88, 0x87, 0x77, + 0x77, 0x88, 0x88, 0x78, 0x88, 0x77, 0x76, 0x55, + 0x65, 0x55, 0x66, 0x66, 0x77, 0x77, 0x87, 0x66, + 0x66, 0x66, 0x55, 0x56, 0x77, 0x77, 0x75, 0x67, + 0x57, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x78, + 0x87, 0x88, 0x88, 0x78, 0x88, 0x77, 0x66, 0x66, + 0x66, 0x56, 0x56, 0x66, 0x76, 0x67, 0x77, 0x67, + 0x77, 0x66, 0x55, 0x56, 0x77, 0x77, 0x76, 0x77, + 0x67, 0x77, 0x78, 0x88, 0x77, 0x77, 0x87, 0x78, + 0x77, 0x88, 0x88, 0x88, 0x87, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, + 0x65, 0x56, 0x55, 0x56, 0x77, 0x77, 0x76, 0x78, + 0x67, 0x77, 0x77, 0x88, 0x87, 0x77, 0x88, 0x88, + 0x88, 0x88, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x65, 0x56, 0x66, 0x66, 0x77, 0x77, + 0x65, 0x55, 0x55, 0x56, 0x77, 0x77, 0x66, 0x88, + 0x57, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, + 0x88, 0x87, 0x77, 0x76, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x55, 0x56, 0x66, 0x66, 0x67, 0x77, + 0x65, 0x55, 0x54, 0x56, 0x77, 0x76, 0x77, 0x88, + 0x57, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x87, + 0x77, 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x65, 0x56, 0x66, 0x56, 0x66, 0x66, 0x66, + 0x64, 0x55, 0x66, 0x44, 0x66, 0x66, 0x77, 0x88, + 0x46, 0x67, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x66, 0x66, 0x66, 0x67, 0x66, 0x56, 0x66, + 0x55, 0x55, 0x66, 0x44, 0x45, 0x76, 0x78, 0x88, + 0x46, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, + 0x66, 0x66, 0x66, 0x66, 0x76, 0x66, 0x66, 0x66, + 0x55, 0x55, 0x43, 0x65, 0x46, 0x66, 0x78, 0x88, + 0x46, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x77, 0x77, 0x77, 0x78, 0x87, 0x77, + 0x77, 0x76, 0x66, 0x67, 0x77, 0x66, 0x66, 0x66, + 0x66, 0x65, 0x45, 0x66, 0x44, 0x66, 0x77, 0x77, + 0x56, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x78, 0x77, 0x77, 0x77, 0x77, + 0x78, 0x76, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x65, 0x46, 0x63, 0x34, 0x46, 0x67, 0x76, + 0x67, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x87, 0x77, 0x77, 0x87, 0x77, 0x67, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x65, 0x46, 0x54, 0x44, 0x56, 0x67, 0x76, + 0x66, 0x77, 0x67, 0x78, 0x87, 0x77, 0x76, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x66, 0x76, 0x77, 0x65, + 0x44, 0x55, 0x65, 0x56, 0x66, 0x65, 0x66, 0x66, + 0x54, 0x44, 0x45, 0x44, 0x45, 0x56, 0x45, 0x66, + 0x66, 0x44, 0x66, 0x76, 0x67, 0x77, 0x65, 0x66, + 0x66, 0x65, 0x55, 0x55, 0x44, 0x44, 0x45, 0x43, + 0x44, 0x45, 0x44, 0x44, 0x55, 0x55, 0x55, 0x55, + 0x55, 0x44, 0x44, 0x45, 0x55, 0x66, 0x45, 0x65, + 0x66, 0x66, 0x67, 0x66, 0x55, 0x55, 0x44, 0x44, + 0x45, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x22, + 0x34, 0x44, 0x44, 0x44, 0x46, 0x66, 0x55, 0x55, + 0x55, 0x55, 0x55, 0x55, 0x55, 0x56, 0x44, 0x56, + 0x66, 0x67, 0x78, 0x87, 0x67, 0x88, 0x77, 0x77, + 0x76, 0x65, 0x55, 0x56, 0x77, 0x77, 0x77, 0x56, + 0x55, 0x55, 0x44, 0x56, 0x56, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x44, 0x44, + 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x87, + 0x77, 0x66, 0x55, 0x57, 0x87, 0x67, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x66, 0x67, 0x77, 0x77, 0x77, + 0x77, 0x76, 0x77, 0x66, 0x87, 0x77, 0x65, 0x65, + 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, + 0x77, 0x66, 0x55, 0x67, 0x97, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x76, 0x77, 0x88, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x87, 0x88, 0x77, 0x67, + 0x77, 0x77, 0x87, 0x77, 0x88, 0x88, 0x77, 0x77, + 0x88, 0x65, 0x66, 0x78, 0x88, 0x87, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x77, 0x66, + 0x77, 0x77, 0x78, 0x77, 0x77, 0x88, 0x87, 0x77, + 0x77, 0x77, 0x77, 0x78, 0x88, 0x88, 0x77, 0x77, + 0x88, 0x55, 0x66, 0x88, 0x88, 0x87, 0x77, 0x77, + 0x77, 0x77, 0x66, 0x77, 0x87, 0x77, 0x87, 0x87, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x76, + 0x87, 0x78, 0x88, 0x88, 0x88, 0x98, 0x87, 0x77, + 0x87, 0x55, 0x66, 0x77, 0x88, 0x87, 0x77, 0x77, + 0x77, 0x77, 0x76, 0x77, 0x78, 0x77, 0x77, 0x87, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, 0x77, + 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, + 0x86, 0x54, 0x66, 0x77, 0x88, 0x88, 0x77, 0x77, + 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, + 0x88, 0x88, 0x88, 0x98, 0x88, 0x88, 0x87, 0x78, + 0x76, 0x54, 0x66, 0x77, 0x88, 0x87, 0x76, 0x77, + 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, 0x67, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x67, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, + 0x87, 0x76, 0x66, 0x88, 0x88, 0x88, 0x77, 0x77, + 0x78, 0x77, 0x76, 0x76, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, + 0x87, 0x78, 0x88, 0x78, 0x78, 0x88, 0x88, 0x88, + 0x88, 0x76, 0x67, 0x88, 0x88, 0x88, 0x77, 0x88, + 0x77, 0x87, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x77, 0x76, + 0x87, 0x78, 0x88, 0x78, 0x77, 0x78, 0x88, 0x88, + 0x88, 0x66, 0x77, 0x88, 0x88, 0x88, 0x77, 0x88, + 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x67, 0x77, + 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x87, 0x76, + 0x88, 0x88, 0x77, 0x88, 0x77, 0x77, 0x78, 0x88, + 0x76, 0x76, 0x78, 0x88, 0x88, 0x78, 0x77, 0x78, + 0x88, 0x88, 0x77, 0x77, 0x66, 0x77, 0x77, 0x88, + 0x88, 0x78, 0x77, 0x77, 0x88, 0x88, 0x77, 0x76, + 0x77, 0x77, 0x77, 0x78, 0x77, 0x78, 0x77, 0x77, + 0x76, 0x67, 0x78, 0x88, 0x88, 0x87, 0x76, 0x78, + 0x78, 0x88, 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, + 0x77, 0x77, 0x78, 0x78, 0x88, 0x88, 0x77, 0x76, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, + 0x66, 0x67, 0x78, 0x88, 0x88, 0x87, 0x77, 0x77, + 0x88, 0x88, 0x77, 0x77, 0x77, 0x77, 0x67, 0x77, + 0x77, 0x77, 0x77, 0x78, 0x88, 0x78, 0x77, 0x66, + 0x88, 0x87, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, + 0x66, 0x67, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x87, 0x77, 0x77, 0x87, 0x77, 0x77, + 0x76, 0x77, 0x77, 0x78, 0x77, 0x78, 0x76, 0x65, + 0x78, 0x87, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, + 0x66, 0x66, 0x77, 0x78, 0x78, 0x87, 0x88, 0x88, + 0x77, 0x98, 0x88, 0x88, 0x67, 0x78, 0x88, 0x87, + 0x56, 0x56, 0x77, 0x77, 0x77, 0x76, 0x65, 0x55, + 0x67, 0x77, 0x77, 0x67, 0x76, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, + 0x76, 0x56, 0x78, 0x87, 0x55, 0x65, 0x66, 0x65, + 0x44, 0x34, 0x55, 0x65, 0x55, 0x55, 0x55, 0x55, + 0x56, 0x66, 0x66, 0x66, 0x66, 0x55, 0x55, 0x55, + 0x66, 0x66, 0x67, 0x77, 0x66, 0x66, 0x66, 0x55, + 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x56, 0x55, + 0x55, 0x54, 0x55, 0x66, 0x65, 0x45, 0x45, 0x54, + 0x77, 0x78, 0x77, 0x87, 0x76, 0x65, 0x55, 0x55, + 0x66, 0x67, 0x88, 0x99, 0x99, 0x78, 0x88, 0x87, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x67, 0x66, 0x55, + 0x66, 0x55, 0x56, 0x66, 0x65, 0x54, 0x45, 0x54, + 0x88, 0x88, 0x88, 0x88, 0x77, 0x77, 0x66, 0x67, + 0x78, 0x89, 0x99, 0x99, 0x99, 0x88, 0x88, 0x87, + 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x67, 0x66, 0x56, 0x55, 0x65, 0x55, 0x55, 0x65, + 0x77, 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x88, 0x87, 0x78, 0x88, 0x77, 0x66, 0x77, 0x76, + 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x76, 0x66, 0x66, 0x44, 0x55, 0x56, 0x55, 0x66, + 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x87, 0x77, 0x88, 0x87, 0x76, 0x66, 0x66, 0x77, + 0x76, 0x76, 0x66, 0x76, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x76, 0x66, 0x55, 0x66, 0x56, 0x65, 0x66, + 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x88, 0x77, 0x66, 0x66, 0x77, 0x77, + 0x77, 0x66, 0x66, 0x66, 0x56, 0x66, 0x66, 0x65, + 0x66, 0x77, 0x76, 0x66, 0x66, 0x66, 0x65, 0x66, + 0x66, 0x77, 0x77, 0x77, 0x67, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x67, 0x77, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x76, 0x66, 0x77, 0x77, 0x67, 0x77, 0x86, 0x67, + 0x77, 0x88, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x67, 0x65, 0x56, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, 0x77, + 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x67, 0x76, 0x67, 0x66, 0x56, 0x66, 0x66, 0x66, + 0x77, 0x78, 0x77, 0x77, 0x77, 0x87, 0x67, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x67, + 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x67, 0x67, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x77, 0x88, 0x77, 0x78, 0x87, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x67, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x78, 0x88, 0x87, 0x78, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, + 0x65, 0x55, 0x55, 0x66, 0x66, 0x66, 0x66, 0x56, + 0x66, 0x67, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x78, 0x88, 0x87, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x65, + 0x66, 0x55, 0x55, 0x66, 0x76, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x77, 0x88, 0x88, 0x87, 0x77, 0x78, 0x77, 0x76, + 0x76, 0x77, 0x77, 0x67, 0x76, 0x66, 0x66, 0x65, + 0x56, 0x55, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x67, 0x76, 0x55, 0x55, 0x66, 0x66, 0x66, + 0x88, 0x88, 0x77, 0x77, 0x88, 0x88, 0x77, 0x77, + 0x66, 0x76, 0x76, 0x77, 0x66, 0x66, 0x66, 0x66, + 0x65, 0x45, 0x76, 0x66, 0x66, 0x66, 0x55, 0x67, + 0x67, 0x67, 0x76, 0x55, 0x55, 0x66, 0x67, 0x76, + 0x88, 0x88, 0x77, 0x77, 0x76, 0x66, 0x77, 0x77, + 0x66, 0x66, 0x66, 0x76, 0x65, 0x66, 0x66, 0x76, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, + 0x66, 0x65, 0x44, 0x66, 0x55, 0x66, 0x67, 0x76, + 0x78, 0x87, 0x77, 0x77, 0x66, 0x65, 0x55, 0x54, + 0x66, 0x66, 0x55, 0x55, 0x56, 0x55, 0x65, 0x55, + 0x66, 0x56, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, + 0x67, 0x75, 0x45, 0x66, 0x55, 0x55, 0x56, 0x55, + 0x56, 0x66, 0x66, 0x55, 0x55, 0x44, 0x44, 0x44, + 0x34, 0x44, 0x54, 0x43, 0x33, 0x33, 0x45, 0x53, + 0x34, 0x44, 0x33, 0x34, 0x56, 0x55, 0x55, 0x45, + 0x66, 0x55, 0x46, 0x56, 0x66, 0x54, 0x43, 0x33, + 0x56, 0x65, 0x55, 0x77, 0x66, 0x66, 0x55, 0x53, + 0x45, 0x66, 0x65, 0x66, 0x77, 0x76, 0x56, 0x65, + 0x66, 0x77, 0x77, 0x77, 0x78, 0x87, 0x76, 0x66, + 0x78, 0x85, 0x57, 0x77, 0x77, 0x76, 0x55, 0x45, + 0x66, 0x66, 0x54, 0x67, 0x66, 0x66, 0x65, 0x56, + 0x77, 0x66, 0x67, 0x76, 0x66, 0x66, 0x66, 0x55, + 0x66, 0x77, 0x77, 0x77, 0x76, 0x67, 0x77, 0x66, + 0x77, 0x76, 0x66, 0x66, 0x56, 0x66, 0x55, 0x55, + 0x55, 0x55, 0x55, 0x55, 0x65, 0x55, 0x55, 0x56, + 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x65, 0x55, + 0x66, 0x66, 0x77, 0x77, 0x66, 0x67, 0x66, 0x66, + 0x66, 0x76, 0x66, 0x65, 0x66, 0x66, 0x55, 0x54, + 0x56, 0x55, 0x66, 0x66, 0x65, 0x55, 0x55, 0x55, + 0x65, 0x66, 0x66, 0x66, 0x66, 0x56, 0x65, 0x55, + 0x66, 0x67, 0x77, 0x76, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x76, 0x66, 0x55, 0x56, 0x65, 0x56, 0x55, + 0x66, 0x66, 0x66, 0x67, 0x65, 0x55, 0x66, 0x65, + 0x55, 0x55, 0x75, 0x66, 0x55, 0x55, 0x66, 0x55, + 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x56, 0x56, + 0x66, 0x66, 0x66, 0x67, 0x65, 0x66, 0x66, 0x66, + 0x56, 0x66, 0x66, 0x66, 0x65, 0x55, 0x56, 0x55, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, + 0x65, 0x64, 0x56, 0x75, 0x66, 0x56, 0x66, 0x65, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x67, 0x76, 0x66, 0x66, 0x66, + 0x65, 0x54, 0x46, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x65, 0x46, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x76, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x76, + 0x55, 0x45, 0x76, 0x66, 0x66, 0x66, 0x66, 0x77, + 0x77, 0x77, 0x76, 0x66, 0x66, 0x76, 0x67, 0x76, + 0x66, 0x66, 0x66, 0x66, 0x55, 0x55, 0x66, 0x66, + 0x66, 0x56, 0x66, 0x66, 0x67, 0x76, 0x66, 0x66, + 0x54, 0x45, 0x76, 0x66, 0x77, 0x66, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, + 0x66, 0x66, 0x66, 0x66, 0x55, 0x56, 0x55, 0x55, + 0x66, 0x56, 0x66, 0x66, 0x66, 0x76, 0x66, 0x66, + 0x55, 0x56, 0x76, 0x66, 0x77, 0x66, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x88, 0x87, 0x77, 0x77, + 0x76, 0x66, 0x66, 0x66, 0x55, 0x66, 0x55, 0x55, + 0x56, 0x55, 0x66, 0x66, 0x66, 0x77, 0x76, 0x65, + 0x55, 0x55, 0x75, 0x56, 0x66, 0x66, 0x77, 0x77, + 0x78, 0x77, 0x77, 0x78, 0x88, 0x88, 0x87, 0x77, + 0x77, 0x66, 0x66, 0x66, 0x55, 0x65, 0x65, 0x55, + 0x55, 0x55, 0x66, 0x66, 0x66, 0x77, 0x66, 0x65, + 0x55, 0x55, 0x57, 0x66, 0x66, 0x66, 0x67, 0x77, + 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, + 0x76, 0x66, 0x66, 0x66, 0x65, 0x66, 0x65, 0x55, + 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, + 0x55, 0x56, 0x76, 0x76, 0x66, 0x66, 0x67, 0x77, + 0x77, 0x77, 0x88, 0x88, 0x88, 0x89, 0x87, 0x77, + 0x67, 0x76, 0x66, 0x75, 0x56, 0x66, 0x66, 0x55, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, + 0x55, 0x66, 0x76, 0x66, 0x66, 0x66, 0x67, 0x77, + 0x77, 0x77, 0x77, 0x78, 0x89, 0x98, 0x78, 0x77, + 0x67, 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, + 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x76, 0x66, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x67, 0x66, + 0x77, 0x65, 0x55, 0x56, 0x88, 0x77, 0x78, 0x77, + 0x66, 0x65, 0x67, 0x76, 0x66, 0x66, 0x66, 0x55, + 0x55, 0x56, 0x55, 0x65, 0x45, 0x55, 0x66, 0x56, + 0x66, 0x66, 0x66, 0x77, 0x76, 0x66, 0x65, 0x55, + 0x55, 0x44, 0x44, 0x56, 0x57, 0x77, 0x76, 0x65, + 0x54, 0x55, 0x76, 0x65, 0x66, 0x66, 0x66, 0x66, + 0x65, 0x55, 0x66, 0x77, 0x66, 0x66, 0x66, 0x66, + 0x66, 0x67, 0x77, 0x76, 0x65, 0x44, 0x43, 0x33, + 0x33, 0x33, 0x44, 0x44, 0x55, 0x55, 0x55, 0x55, + 0x54, 0x55, 0x46, 0x44, 0x55, 0x56, 0x65, 0x55, + 0x55, 0x56, 0x76, 0x77, 0x78, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x78, 0x88, + 0x89, 0x99, 0x9a, 0xa9, 0x99, 0x99, 0x99, 0x99, + 0x88, 0x87, 0x76, 0x54, 0x45, 0x55, 0x55, 0x56, + 0x67, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, 0x67, + 0x77, 0x77, 0x77, 0x77, 0x66, 0x76, 0x67, 0x76, + 0x67, 0x77, 0x76, 0x66, 0x54, 0x55, 0x66, 0x66, + 0x67, 0x66, 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, + 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x67, 0x76, + 0x77, 0x67, 0x76, 0x76, 0x65, 0x66, 0x66, 0x66, + 0x65, 0x56, 0x77, 0x78, 0x87, 0x77, 0x77, 0x77, + 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x77, + 0x77, 0x67, 0x66, 0x66, 0x66, 0x67, 0x76, 0x67, + 0x66, 0x66, 0x77, 0x77, 0x87, 0x77, 0x77, 0x77, + 0x78, 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x77, + 0x77, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, + 0x66, 0x67, 0x77, 0x77, 0x77, 0x87, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x66, 0x67, 0x67, 0x67, 0x77, 0x77, 0x77, + 0x66, 0x67, 0x77, 0x77, 0x77, 0x87, 0x78, 0x77, + 0x77, 0x77, 0x78, 0x87, 0x88, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x76, 0x67, 0x77, 0x67, 0x77, 0x77, 0x77, + 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x87, 0x88, 0x88, 0x87, 0x77, 0x77, + 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x67, 0x77, 0x66, 0x67, 0x76, 0x66, + 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x76, 0x66, 0x66, 0x77, 0x66, 0x67, 0x76, 0x66, + 0x75, 0x68, 0x78, 0x87, 0x77, 0x77, 0x77, 0x66, + 0x77, 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x76, 0x77, 0x66, 0x67, 0x77, 0x77, 0x77, + 0x76, 0x66, 0x67, 0x77, 0x77, 0x67, 0x66, 0x66, + 0x65, 0x57, 0x78, 0x87, 0x77, 0x78, 0x77, 0x76, + 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, + 0x77, 0x77, 0x76, 0x66, 0x67, 0x77, 0x67, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, + 0x75, 0x56, 0x67, 0x77, 0x77, 0x77, 0x87, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x77, + 0x77, 0x77, 0x76, 0x66, 0x67, 0x76, 0x66, 0x77, + 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x66, 0x76, 0x67, 0x77, 0x77, 0x77, 0x77, 0x67, + 0x77, 0x76, 0x77, 0x77, 0x76, 0x66, 0x67, 0x77, + 0x77, 0x77, 0x76, 0x66, 0x77, 0x66, 0x66, 0x77, + 0x66, 0x67, 0x77, 0x77, 0x76, 0x66, 0x66, 0x66, + 0x66, 0x56, 0x66, 0x77, 0x66, 0x67, 0x77, 0x66, + 0x66, 0x66, 0x76, 0x67, 0x76, 0x67, 0x77, 0x66, + 0x67, 0x77, 0x66, 0x77, 0x66, 0x67, 0x76, 0x76, + 0x66, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, 0x77, + 0x65, 0x56, 0x66, 0x66, 0x66, 0x67, 0x76, 0x66, + 0x66, 0x66, 0x66, 0x77, 0x66, 0x77, 0x76, 0x66, + 0x76, 0x76, 0x56, 0x66, 0x66, 0x67, 0x76, 0x66, + 0x66, 0x66, 0x66, 0x65, 0x56, 0x66, 0x66, 0x66, + 0x55, 0x56, 0x65, 0x66, 0x67, 0x77, 0x76, 0x77, + 0x77, 0x76, 0x66, 0x66, 0x67, 0x67, 0x77, 0x77, + 0x67, 0x76, 0x66, 0x66, 0x67, 0x77, 0x77, 0x66, + 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, + 0x35, 0x65, 0x54, 0x55, 0x66, 0x57, 0x66, 0x88, + 0x77, 0x76, 0x66, 0x66, 0x66, 0x67, 0x77, 0x77, + 0x77, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x66, + 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, + +}; + +u8 jrb_dl_RSVP8P_e3fd4de76cd3b012_14_ci4_pal_rgba16[] = { + 0x00, 0x00, 0x81, 0x93, 0xa2, 0x9b, 0xbb, 0x21, + 0xb3, 0x63, 0xcc, 0x27, 0xdc, 0xed, 0xb2, 0x93, + 0xed, 0xb3, 0xd4, 0x25, 0xee, 0x35, 0xc3, 0x5d, + 0xdc, 0xe9, 0xf6, 0xb7, 0xcb, 0xdf, 0x89, 0x09, + +}; + + +Gfx jrb_dl_E050_O021_CI_ci4_aligner[] = {gsSPEndDisplayList()}; +u8 jrb_dl_E050_O021_CI_ci4[] = { + 0x00, 0x00, 0x01, 0x22, 0x30, 0x45, 0x44, 0x45, + 0x55, 0x54, 0x44, 0x46, 0x64, 0x44, 0x55, 0x44, + 0x55, 0x55, 0x77, 0x77, 0x55, 0x55, 0x77, 0x77, + 0x55, 0x55, 0x54, 0x00, 0x32, 0x22, 0x83, 0x03, + 0x33, 0x00, 0x11, 0x29, 0x30, 0x44, 0x44, 0x64, + 0x45, 0x44, 0x44, 0x66, 0x66, 0x44, 0x57, 0x77, + 0x55, 0xaa, 0xbb, 0xcb, 0xcc, 0xdd, 0xdd, 0xcc, + 0xbb, 0xa5, 0x55, 0x00, 0x02, 0x22, 0x33, 0x03, + 0x30, 0x00, 0x02, 0x92, 0x00, 0x55, 0x55, 0x65, + 0x55, 0x55, 0x55, 0x46, 0x47, 0x55, 0xe1, 0x1c, + 0xcc, 0xdc, 0x11, 0xc1, 0xaa, 0xcc, 0xcc, 0xcc, + 0xdd, 0xdd, 0xd1, 0x23, 0x09, 0x92, 0x33, 0x03, + 0x00, 0x00, 0x09, 0x92, 0x00, 0x55, 0x54, 0x45, + 0x55, 0x55, 0x57, 0x74, 0xab, 0xdd, 0xc1, 0x11, + 0x6b, 0x11, 0xa1, 0x11, 0xa1, 0xcc, 0xcc, 0xcc, + 0xcc, 0xcc, 0x1b, 0x23, 0x0f, 0x92, 0x33, 0x03, + 0x30, 0x00, 0x09, 0xf2, 0x33, 0x55, 0x54, 0x44, + 0x45, 0x66, 0x45, 0x7a, 0xd1, 0xcc, 0xaa, 0x11, + 0xa1, 0xc1, 0xab, 0xc1, 0x11, 0xcc, 0xcc, 0xdc, + 0xdd, 0xdc, 0x11, 0x23, 0x0f, 0x92, 0x33, 0x08, + 0x33, 0x30, 0x0f, 0x92, 0x33, 0x55, 0x55, 0x77, + 0x77, 0x77, 0x55, 0xe7, 0x75, 0x1a, 0xaa, 0x11, + 0x1a, 0xae, 0x5e, 0xee, 0xee, 0xaa, 0xaa, 0xaa, + 0xa1, 0x1a, 0xa6, 0x23, 0x0f, 0x92, 0x83, 0x03, + 0x33, 0x30, 0x29, 0xf2, 0x00, 0x54, 0x55, 0x77, + 0x77, 0x77, 0x77, 0x54, 0x57, 0xe1, 0x11, 0x1c, + 0xca, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, + 0x77, 0x55, 0xee, 0x03, 0x0f, 0xf9, 0x33, 0x03, + 0x03, 0x33, 0x09, 0xf2, 0x00, 0x54, 0x57, 0x77, + 0x75, 0x55, 0x55, 0x55, 0x44, 0x7a, 0x1c, 0x1c, + 0xca, 0x55, 0xaa, 0xaa, 0xee, 0xaa, 0xaa, 0xee, + 0x57, 0x57, 0x75, 0x03, 0x0f, 0xf9, 0x83, 0x33, + 0x33, 0x33, 0x1f, 0x99, 0x00, 0x74, 0x57, 0x77, + 0x55, 0x55, 0x55, 0x55, 0x55, 0x57, 0xe1, 0xc1, + 0x11, 0xe7, 0x55, 0xee, 0x55, 0x55, 0x55, 0x55, + 0x55, 0x44, 0x44, 0x23, 0x0f, 0xff, 0x33, 0x03, + 0x03, 0x38, 0x0f, 0x99, 0x00, 0x54, 0x47, 0x77, + 0x54, 0x44, 0x44, 0x44, 0x44, 0x65, 0xec, 0xc1, + 0x11, 0xa7, 0x77, 0x77, 0x77, 0x55, 0xfe, 0x55, + 0x77, 0x77, 0x54, 0x23, 0x0f, 0xff, 0x30, 0x03, + 0x00, 0x33, 0x0f, 0xf2, 0x00, 0x55, 0x45, 0x75, + 0x55, 0x44, 0x54, 0x54, 0x45, 0x47, 0x51, 0x11, + 0xc1, 0x15, 0x7e, 0x54, 0x44, 0x4b, 0xbb, 0xbb, + 0x44, 0xb6, 0x45, 0xa3, 0x2f, 0x99, 0x80, 0x83, + 0x30, 0x33, 0x0f, 0xf2, 0x00, 0x54, 0x45, 0x7e, + 0x55, 0x64, 0x54, 0x46, 0x65, 0x47, 0x5a, 0x1c, + 0xc1, 0xa5, 0x5a, 0x55, 0x55, 0x45, 0x66, 0x44, + 0x55, 0x45, 0x65, 0xa3, 0x2f, 0x9f, 0x33, 0x83, + 0x03, 0x33, 0x2f, 0xe2, 0x00, 0x55, 0x44, 0x5e, + 0xe5, 0x54, 0x44, 0x54, 0x45, 0x47, 0x55, 0x1c, + 0xc1, 0xa5, 0x74, 0x55, 0x55, 0x45, 0x4b, 0x44, + 0x55, 0x65, 0x55, 0xa8, 0x0e, 0xff, 0x30, 0x83, + 0x00, 0x33, 0x29, 0x92, 0x00, 0x44, 0x47, 0x5e, + 0x55, 0x55, 0x44, 0x54, 0x55, 0x47, 0x55, 0x1c, + 0x11, 0xa5, 0x75, 0x77, 0x77, 0x55, 0x55, 0x44, + 0x57, 0x77, 0x76, 0xa8, 0x0e, 0xf9, 0x30, 0x88, + 0x23, 0x33, 0x19, 0x92, 0x0c, 0x45, 0x47, 0x4e, + 0x55, 0x55, 0x7e, 0x65, 0x55, 0x57, 0x77, 0x55, + 0x55, 0x55, 0xee, 0xa1, 0x11, 0xcc, 0xc1, 0xdd, + 0xdc, 0xc1, 0x44, 0xa8, 0x09, 0xf9, 0x30, 0x88, + 0x03, 0x33, 0x0f, 0x99, 0x0c, 0x44, 0x47, 0x45, + 0x5a, 0xcb, 0x64, 0x55, 0x56, 0xee, 0xbb, 0xec, + 0xdc, 0xdc, 0xb1, 0xc1, 0xaa, 0x1a, 0x1a, 0x1d, + 0xcc, 0xcc, 0xdc, 0xa8, 0x09, 0xf9, 0x03, 0x88, + 0x33, 0x03, 0x0f, 0xf9, 0x03, 0x44, 0x55, 0xe5, + 0x5d, 0xdc, 0xdd, 0xd1, 0xcd, 0xcd, 0xdd, 0xcd, + 0xdc, 0xa1, 0xaa, 0xc1, 0xac, 0x1c, 0x1a, 0xac, + 0xdc, 0xcc, 0xcb, 0x28, 0x09, 0xf9, 0x00, 0x88, + 0x33, 0x03, 0x0f, 0xf9, 0x0c, 0x44, 0x75, 0xf5, + 0x5d, 0x11, 0xcc, 0xa1, 0xc1, 0x1c, 0xc1, 0x11, + 0xcc, 0xa1, 0xba, 0x11, 0x11, 0x1a, 0xaa, 0xe1, + 0xdc, 0xc1, 0xcb, 0x28, 0x19, 0xf9, 0x00, 0x83, + 0x33, 0x03, 0x1f, 0xf2, 0x00, 0x44, 0x75, 0x55, + 0x5d, 0xca, 0xcd, 0x1c, 0x11, 0x1c, 0x11, 0x1c, + 0xcc, 0x11, 0x11, 0xab, 0xca, 0x22, 0xaa, 0xa2, + 0xdd, 0xcc, 0xcb, 0x23, 0x29, 0xf9, 0x30, 0x83, + 0x33, 0x03, 0x1f, 0xf2, 0x03, 0x44, 0x55, 0xe7, + 0xed, 0xca, 0xc1, 0x11, 0xaa, 0x1a, 0xaa, 0xea, + 0xe4, 0xe5, 0x55, 0x55, 0x57, 0x77, 0x77, 0x7e, + 0xaa, 0xa1, 0xca, 0x23, 0x19, 0x99, 0x03, 0x83, + 0x33, 0x38, 0x0f, 0xf2, 0x33, 0x44, 0x55, 0xf7, + 0xad, 0xc1, 0xca, 0x75, 0x77, 0x57, 0x75, 0x55, + 0xab, 0x1a, 0x75, 0x55, 0x55, 0x57, 0x77, 0x77, + 0xb4, 0x57, 0x5e, 0xa3, 0x09, 0xee, 0x33, 0x83, + 0x33, 0x38, 0x0f, 0xf2, 0x33, 0x44, 0x54, 0xf7, + 0xac, 0xc1, 0x1a, 0x5e, 0x56, 0x77, 0x7c, 0xcd, + 0xdd, 0xce, 0x55, 0x45, 0x55, 0x57, 0x57, 0x74, + 0xdd, 0xdd, 0xda, 0xa8, 0x09, 0xee, 0x33, 0x83, + 0x33, 0x33, 0x0f, 0xf9, 0x83, 0x64, 0x5e, 0x57, + 0xac, 0x11, 0xc5, 0x75, 0x55, 0x77, 0x5c, 0x11, + 0xcc, 0x17, 0x55, 0x55, 0xaa, 0xbb, 0x47, 0x7a, + 0xdc, 0xcc, 0xcc, 0xa3, 0x0e, 0x92, 0x33, 0x38, + 0x38, 0x03, 0x0f, 0xf9, 0x30, 0x65, 0xee, 0x55, + 0x1c, 0xc1, 0x15, 0x56, 0x57, 0x77, 0x5c, 0xb1, + 0x1c, 0xa7, 0x6b, 0x6b, 0xa4, 0x66, 0x45, 0x7c, + 0xcc, 0xcc, 0xcb, 0xa3, 0x1e, 0x92, 0x30, 0x38, + 0x88, 0x03, 0x09, 0x79, 0x33, 0x65, 0xee, 0x77, + 0xcc, 0x1c, 0x17, 0xbb, 0x55, 0x77, 0x5c, 0x11, + 0x1c, 0xa7, 0x64, 0x45, 0x46, 0x54, 0x47, 0xac, + 0xc1, 0xcc, 0xcb, 0x23, 0x29, 0xee, 0x30, 0x83, + 0x38, 0x03, 0x0f, 0xff, 0x33, 0x67, 0xee, 0x77, + 0xc1, 0xc1, 0xe7, 0xb4, 0x55, 0x57, 0x51, 0x11, + 0x11, 0xe5, 0x64, 0x44, 0x56, 0x44, 0x47, 0x11, + 0x11, 0xcc, 0xcc, 0x28, 0x29, 0xe5, 0x00, 0xd3, + 0x33, 0x03, 0x27, 0xf9, 0x00, 0x67, 0xae, 0x77, + 0x1c, 0xc1, 0xe7, 0xa5, 0x45, 0x57, 0xa1, 0x11, + 0x11, 0x55, 0x65, 0x44, 0x54, 0x64, 0x54, 0xd1, + 0x11, 0xcc, 0xcc, 0xa3, 0x29, 0xee, 0x0c, 0x83, + 0x83, 0x03, 0x07, 0xf9, 0x00, 0x67, 0xae, 0x75, + 0x1c, 0xc1, 0xe5, 0xa5, 0x47, 0x57, 0xe1, 0xa1, + 0x11, 0x5e, 0x64, 0x54, 0x45, 0x66, 0x7b, 0xc1, + 0xa1, 0x11, 0xca, 0x23, 0x2f, 0xee, 0x18, 0x83, + 0x30, 0x03, 0x05, 0x79, 0x00, 0x67, 0xee, 0x75, + 0xcc, 0x11, 0x55, 0x45, 0x67, 0x57, 0x1a, 0x11, + 0x11, 0x5a, 0x64, 0x55, 0x44, 0x46, 0x51, 0xc1, + 0x11, 0x11, 0xc4, 0x23, 0x2f, 0xf2, 0x08, 0x83, + 0x09, 0x33, 0x05, 0x59, 0x30, 0x67, 0xaa, 0x75, + 0xc1, 0x1c, 0xe5, 0x65, 0x47, 0x57, 0xbc, 0x11, + 0x11, 0x5e, 0x64, 0x45, 0x54, 0x44, 0x51, 0xc1, + 0x11, 0x11, 0x14, 0x23, 0x2f, 0xf2, 0x38, 0x83, + 0x30, 0x03, 0x09, 0xf9, 0x33, 0x67, 0xaa, 0x55, + 0xc1, 0x1c, 0x55, 0x64, 0x47, 0xe7, 0xed, 0x11, + 0x11, 0x5b, 0x44, 0x65, 0x57, 0x55, 0xad, 0x11, + 0x11, 0xbc, 0xa5, 0x23, 0x25, 0xf2, 0x88, 0x83, + 0x83, 0x33, 0x09, 0xf9, 0x33, 0x67, 0xee, 0x55, + 0x1c, 0xcc, 0x55, 0xb4, 0x47, 0x57, 0xec, 0xca, + 0x11, 0x55, 0x55, 0x75, 0xea, 0xdd, 0xcd, 0xca, + 0xac, 0x11, 0xee, 0x23, 0x25, 0xf2, 0x88, 0x83, + 0x83, 0x33, 0x09, 0xf9, 0x33, 0x65, 0xee, 0x57, + 0x11, 0xc1, 0xe5, 0xb4, 0x47, 0x57, 0x5c, 0xcb, + 0x1a, 0x77, 0x5a, 0xdd, 0xdc, 0xcc, 0x1c, 0xc1, + 0xac, 0x1b, 0x5e, 0x28, 0x25, 0xf2, 0x8d, 0x83, + 0x83, 0x38, 0x32, 0xf9, 0x00, 0x45, 0xea, 0x77, + 0x11, 0xcc, 0x55, 0xb4, 0x47, 0x57, 0x5c, 0xaa, + 0x55, 0x51, 0x1c, 0xc1, 0x11, 0xcc, 0xb1, 0xcc, + 0xa1, 0xcb, 0x5e, 0x28, 0x2e, 0xf2, 0x8d, 0x83, + 0x33, 0x33, 0xc2, 0xf9, 0x03, 0x54, 0xea, 0x55, + 0x1c, 0x11, 0xe5, 0xb4, 0x47, 0x55, 0x51, 0x55, + 0x1c, 0xd1, 0xa1, 0xc1, 0x1a, 0xcc, 0xaa, 0xc1, + 0x1a, 0x11, 0x75, 0xa3, 0xae, 0xf2, 0x8d, 0x83, + 0x38, 0x33, 0xc2, 0xf9, 0x03, 0x5e, 0xea, 0x57, + 0xc1, 0xca, 0xe7, 0xa4, 0x65, 0x55, 0x55, 0xec, + 0xd1, 0x11, 0xa1, 0xc1, 0x11, 0xcc, 0xaa, 0xcc, + 0x1a, 0x11, 0x7e, 0xa3, 0x1e, 0xf2, 0x8d, 0x83, + 0x38, 0x33, 0xc2, 0xf9, 0x33, 0x46, 0x56, 0x55, + 0x11, 0xc1, 0x17, 0x44, 0x65, 0x55, 0xec, 0xdc, + 0xcc, 0x11, 0x11, 0x11, 0x11, 0xdc, 0x11, 0xc1, + 0xba, 0xca, 0x75, 0xa3, 0xae, 0xf0, 0x88, 0xc0, + 0x33, 0x30, 0xc2, 0xf9, 0x03, 0x44, 0x56, 0x57, + 0xaa, 0xcc, 0x15, 0x54, 0x45, 0x5e, 0xcc, 0xcc, + 0xcc, 0xc1, 0x11, 0x11, 0x1d, 0xcc, 0x1a, 0xaa, + 0x55, 0xee, 0x75, 0xa3, 0xae, 0xf0, 0x88, 0xc3, + 0x33, 0x30, 0x09, 0xf2, 0x03, 0x46, 0x5e, 0x57, + 0xe1, 0x1c, 0xde, 0x55, 0x7e, 0x11, 0xac, 0xcc, + 0xc1, 0x1c, 0xa1, 0x11, 0x11, 0x55, 0x57, 0x75, + 0x77, 0x45, 0x54, 0x23, 0xa9, 0x52, 0x88, 0x33, + 0x33, 0x33, 0x09, 0x52, 0x00, 0x56, 0x75, 0x57, + 0xaa, 0x1c, 0xd1, 0x75, 0xed, 0x1b, 0x1c, 0xcc, + 0xc1, 0x11, 0x11, 0xa5, 0x57, 0x55, 0x66, 0xbb, + 0x64, 0xb6, 0xb6, 0x20, 0xa9, 0x52, 0x88, 0x03, + 0x33, 0x33, 0x19, 0xf2, 0x00, 0x56, 0x45, 0xe5, + 0x5a, 0xa1, 0xc1, 0x5a, 0xc1, 0x11, 0x1c, 0xcc, + 0xc1, 0xbe, 0x45, 0x75, 0x4b, 0xbb, 0x66, 0x64, + 0x55, 0x44, 0x44, 0x20, 0x29, 0xf1, 0x88, 0x33, + 0x03, 0x83, 0x19, 0x92, 0x33, 0x44, 0x67, 0xee, + 0x5a, 0xaa, 0x1c, 0x5a, 0x11, 0x11, 0x1a, 0xcc, + 0xc1, 0xe5, 0x55, 0x4d, 0xb6, 0x44, 0x54, 0x64, + 0x45, 0x44, 0x45, 0x20, 0x29, 0xfa, 0x83, 0x33, + 0x03, 0x33, 0x0e, 0x99, 0x33, 0x44, 0x67, 0xee, + 0x7a, 0xae, 0xac, 0xa4, 0xac, 0x11, 0xba, 0xcc, + 0xa5, 0x5e, 0xc1, 0x56, 0x46, 0xb5, 0x45, 0x44, + 0x44, 0x57, 0x5e, 0x20, 0x29, 0xe9, 0x83, 0x33, + 0x03, 0x83, 0x0e, 0x92, 0x03, 0x44, 0xb7, 0x5e, + 0x7e, 0xba, 0xa1, 0x15, 0x11, 0xca, 0xaa, 0x1a, + 0x7e, 0x1a, 0xcc, 0x55, 0xbb, 0x45, 0x44, 0x44, + 0x57, 0x57, 0x55, 0xa0, 0x2e, 0xe9, 0x30, 0x33, + 0x03, 0x80, 0x0e, 0x22, 0x30, 0x44, 0x64, 0x5e, + 0x75, 0xaa, 0xa1, 0xe5, 0x11, 0xc1, 0xaa, 0xe7, + 0xab, 0xae, 0xcc, 0x15, 0x64, 0x44, 0x64, 0x55, + 0x55, 0x55, 0xba, 0x20, 0x1e, 0xee, 0x33, 0x03, + 0x03, 0x30, 0x0e, 0x92, 0x30, 0x44, 0x45, 0x5e, + 0x55, 0xab, 0xa1, 0xee, 0xac, 0xcc, 0xe5, 0x77, + 0xaa, 0xaa, 0xcc, 0xce, 0x55, 0x64, 0x57, 0x55, + 0x5e, 0xcd, 0xca, 0x20, 0x2e, 0xe2, 0x33, 0x03, + 0x00, 0x33, 0x3e, 0x92, 0x30, 0x45, 0x44, 0x75, + 0x57, 0xea, 0xac, 0xae, 0x51, 0xcc, 0xf7, 0x57, + 0x5e, 0xab, 0xcc, 0xcb, 0x77, 0x57, 0x55, 0x7a, + 0xcd, 0xcb, 0xb6, 0x23, 0x2e, 0xe2, 0x33, 0x33, + 0x00, 0x33, 0x0e, 0x22, 0x33, 0x44, 0x44, 0x57, + 0x55, 0xea, 0xcc, 0xca, 0x5a, 0xce, 0x77, 0xee, + 0x5e, 0xab, 0x1c, 0xda, 0xe5, 0x55, 0x5e, 0xdd, + 0xcc, 0x11, 0x16, 0x23, 0x2e, 0xe1, 0x33, 0x33, + 0x03, 0x38, 0x09, 0x99, 0x33, 0x44, 0x44, 0x55, + 0xec, 0x5b, 0x1c, 0x1a, 0xe5, 0xe5, 0x46, 0x7e, + 0x57, 0xaa, 0xc1, 0xca, 0xc7, 0x55, 0x1d, 0xcc, + 0xcc, 0xcc, 0xcb, 0xa3, 0x0e, 0xe2, 0x03, 0x33, + 0x00, 0x88, 0x09, 0x99, 0x33, 0x44, 0x44, 0x55, + 0xcd, 0x5a, 0x1c, 0x11, 0x1e, 0x7a, 0x64, 0x57, + 0x55, 0xea, 0xc1, 0xc1, 0xca, 0x4c, 0xcc, 0xdc, + 0xc1, 0xcc, 0xbb, 0xa3, 0x0e, 0x22, 0x03, 0x33, + 0x30, 0x88, 0x1f, 0xe2, 0x00, 0x64, 0x44, 0x7e, + 0xcd, 0xa5, 0x1c, 0x1a, 0x1a, 0x7b, 0x45, 0x47, + 0x55, 0x7e, 0x11, 0x11, 0xc1, 0xae, 0x1d, 0x1c, + 0xc1, 0xcc, 0xae, 0x23, 0x09, 0x22, 0x33, 0x33, + 0x30, 0x88, 0x1f, 0xe2, 0x00, 0x44, 0x44, 0x7a, + 0xcc, 0xc5, 0x1c, 0x1a, 0x11, 0x47, 0x64, 0x44, + 0x55, 0x75, 0x1a, 0x1c, 0xcc, 0xc5, 0x1c, 0x1c, + 0xc1, 0x1e, 0x74, 0x23, 0x09, 0x22, 0x03, 0x03, + 0x30, 0x88, 0x1f, 0xe9, 0x30, 0x44, 0x64, 0xf1, + 0xcd, 0xce, 0x1c, 0x1a, 0x11, 0xc5, 0x56, 0x44, + 0x75, 0x55, 0xe1, 0x11, 0xcc, 0xcc, 0x5b, 0xac, + 0x15, 0x77, 0x56, 0x20, 0x0f, 0x92, 0x33, 0x00, + 0x30, 0x88, 0x1e, 0xe9, 0x00, 0x44, 0x67, 0xa1, + 0xcd, 0xcc, 0x4c, 0xaa, 0xaa, 0xca, 0x76, 0x44, + 0x77, 0x77, 0x7e, 0x1b, 0x11, 0xcc, 0xae, 0xaa, + 0x57, 0xbd, 0x56, 0x23, 0x0f, 0x92, 0x33, 0x03, + 0x30, 0x38, 0xae, 0xe9, 0x00, 0x44, 0x45, 0x1a, + 0x1c, 0xdd, 0xac, 0x1a, 0xa1, 0xc1, 0x55, 0x65, + 0x77, 0x5a, 0x17, 0xa1, 0x1c, 0xdc, 0xce, 0x57, + 0x75, 0xb4, 0x5b, 0x23, 0x1f, 0x92, 0x33, 0x03, + 0x30, 0x38, 0xae, 0xe2, 0x00, 0x44, 0x5e, 0x11, + 0xa1, 0x11, 0xa5, 0xaa, 0xa1, 0xcc, 0xa5, 0x75, + 0x75, 0xac, 0x1a, 0x51, 0x1c, 0x11, 0x11, 0x57, + 0x57, 0x44, 0x5b, 0x23, 0x1f, 0x92, 0x33, 0x03, + 0x30, 0x38, 0xae, 0xf9, 0x03, 0x46, 0x7a, 0xa1, + 0x1c, 0xc1, 0xc5, 0xa1, 0xa1, 0xcc, 0x1a, 0x75, + 0x5c, 0xc1, 0x1c, 0xae, 0xcc, 0xc1, 0xcc, 0xe7, + 0x77, 0x44, 0x56, 0x20, 0x0f, 0xf2, 0x33, 0x23, + 0x30, 0x33, 0x1e, 0xf9, 0x03, 0x44, 0x5b, 0xa1, + 0x11, 0x11, 0xca, 0x5a, 0xaa, 0x11, 0xa1, 0x55, + 0xcc, 0x11, 0xaa, 0xce, 0xec, 0xc1, 0x11, 0xe5, + 0x77, 0x66, 0x65, 0x23, 0x0f, 0x92, 0x30, 0x03, + 0x33, 0x03, 0xce, 0xf9, 0x03, 0x45, 0x51, 0xa1, + 0x11, 0x11, 0x15, 0x7e, 0xaa, 0x11, 0x1e, 0x51, + 0xdc, 0x11, 0xaa, 0xbb, 0x5a, 0xca, 0xaa, 0xea, + 0xe7, 0x45, 0x66, 0x00, 0x0f, 0x92, 0x30, 0x03, + 0x33, 0x08, 0xce, 0xf9, 0x03, 0x64, 0xad, 0xdd, + 0xcc, 0xdd, 0xde, 0x5e, 0xcc, 0x1c, 0xa5, 0x1d, + 0xcc, 0xcc, 0x1c, 0xbb, 0x55, 0x1d, 0xcc, 0x11, + 0xde, 0x76, 0x46, 0x00, 0x0f, 0xf2, 0x30, 0x03, + 0x03, 0x38, 0x1f, 0xf9, 0x03, 0x65, 0xad, 0xcc, + 0xcc, 0xcc, 0xc5, 0x55, 0xec, 0xc1, 0x5b, 0xdc, + 0xcc, 0xc1, 0x11, 0xe7, 0x55, 0x5a, 0xc1, 0xbc, + 0xcd, 0xe7, 0x44, 0x13, 0x3f, 0xf2, 0x30, 0x03, + 0x33, 0x38, 0x1f, 0xf9, 0x03, 0x65, 0xad, 0xcc, + 0xcc, 0xcc, 0xc5, 0x55, 0x5a, 0xc5, 0xad, 0xcc, + 0xcc, 0xcc, 0xae, 0x75, 0xea, 0x55, 0xa1, 0x1c, + 0x1c, 0xce, 0x54, 0x03, 0x39, 0x92, 0x80, 0x08, + 0x33, 0x3c, 0x0f, 0xe9, 0x33, 0xb7, 0x1d, 0xcd, + 0xcd, 0xcc, 0x17, 0x55, 0x55, 0xee, 0xcc, 0xcc, + 0x1c, 0xcc, 0xe7, 0x6b, 0x55, 0xe5, 0x5a, 0xcc, + 0xbc, 0xcc, 0xa5, 0x13, 0x09, 0x99, 0x80, 0x03, + 0x03, 0x3d, 0x0f, 0xe9, 0x33, 0x67, 0xac, 0x1c, + 0xcc, 0xcc, 0x17, 0x55, 0x75, 0x5c, 0x1c, 0x1c, + 0x11, 0x1e, 0x75, 0xb6, 0xa5, 0xee, 0x55, 0x11, + 0x1c, 0xba, 0x15, 0x63, 0x09, 0xf9, 0x80, 0x03, + +}; + +Gfx jrb_dl_E050_O021_CI_ci4_pal_rgba16_aligner[] = {gsSPEndDisplayList()}; +u8 jrb_dl_E050_O021_CI_ci4_pal_rgba16[] = { + 0x62, 0x4f, 0x5a, 0x51, 0x49, 0xcb, 0x6a, 0xd1, + 0x29, 0x4b, 0x21, 0x07, 0x39, 0xcf, 0x00, 0x01, + 0x7b, 0x55, 0x39, 0x47, 0x41, 0xcd, 0x52, 0x53, + 0x6a, 0xd5, 0x7b, 0x59, 0x31, 0x49, 0x29, 0x05, + +}; diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index d9e854e31..c344b2d2f 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -1,6 +1,7 @@ from __future__ import annotations import re + import bpy from functools import partial from dataclasses import dataclass @@ -8,6 +9,7 @@ from typing import TextIO, Any, Union from numbers import Number from collections.abc import Sequence + from .utility import transform_mtx_blender_to_n64 From 641661144579de7dcf4acaff1fa1db066f238c7c Mon Sep 17 00:00:00 2001 From: scut Date: Tue, 3 Feb 2026 21:58:29 -0500 Subject: [PATCH 16/30] added macro parsing for nested parenthesis and dealt with usage of CALC_DXT in load blocks, added texture importing from string arrays in model files --- fast64_internal/bin_png.py | 38 +++++++++++++------- fast64_internal/f3d/f3d_import.py | 55 ++++++++++++++++++++--------- fast64_internal/utility_importer.py | 23 +++++++++++- 3 files changed, 85 insertions(+), 31 deletions(-) diff --git a/fast64_internal/bin_png.py b/fast64_internal/bin_png.py index 5b707a374..d0d8bef20 100644 --- a/fast64_internal/bin_png.py +++ b/fast64_internal/bin_png.py @@ -42,7 +42,6 @@ def unpack_bits(format_str: str, byte_stream: bytes, offset: int, length: int): for unpack_str in format_str.split(","): unpack_str = int(unpack_str.strip()) dat_mask = ((1 << unpack_str) - 1) << (8 - unpack_str + length - 8) - # print("byte_data: 0x{:X} data mask: 0x{:X} append: 0x{:X}".format(byte_data, dat_mask, (byte_data & dat_mask) >> (8 - unpack_str + length - 8))) data_out.append((byte_data & dat_mask) >> (8 - unpack_str + length - 8)) length = length - unpack_str return data_out @@ -65,12 +64,24 @@ def get_palette(byte_stream: bytes, im_siz: int): # byte_stream is bin, image is png # Alpha changed to true because N64 graphics does not like PNGS with no alpha YES!!! +# Intensity textures must be converted to rgba for blender +def intensity_to_rgba(row_data: list[int]): + out_rows = [] + for index, tx in enumerate(row_data): + # alpha texel + if index % 2: + out_rows.append(tx) + else: + out_rows.extend([tx] * 3) + return out_rows + + def convert_I_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): if im_siz == 8: rows = convert_byte_stream(byte_stream, width, height, [8], 1, 1, add_alpha=True) else: rows = convert_byte_stream(byte_stream, width, height, [4, 4], 2, 1, add_alpha=True) - return rows + return intensity_to_rgba(rows) def convert_IA_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): @@ -80,7 +91,7 @@ def convert_IA_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal rows = convert_byte_stream(byte_stream, width, height, [4, 4], 1, 1) else: rows = convert_byte_stream(byte_stream, width, height, [3, 1, 3, 1], 2, 1) - return rows + return intensity_to_rgba(rows) def convert_RGBA_tex(width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): @@ -111,28 +122,29 @@ def convert_byte_stream( channel_bits: list, tx_per_byte: int, byte_per_tx: int, - add_alpha=False, - is_ci=False, + add_alpha: bool = False, + is_ci: bool = False, ): data_out = [] + channel_bits_str = ",".join([str(a) for a in channel_bits]) for im_row in range(height): # you can only iterate min one byte at a time - # so tx_per_byte halves iteration steps for im_siz==4 textures - for tx in range(0, width // tx_per_byte): + # so half width if 4 bit texture + for tx in range(width // tx_per_byte): tx = tx + (im_row * width // tx_per_byte) - channels = unpack_bits(",".join([str(a) for a in channel_bits]), byte_stream, byte_per_tx * tx, byte_per_tx) - if add_alpha: - channels.append(0xFF) + channels = unpack_bits(channel_bits_str, byte_stream, byte_per_tx * tx, byte_per_tx) if is_ci: data_out.extend(channels) continue for c, s in zip(channels, channel_bits): if s == 1: data_out.append(OBA(c) / 255) - if s < 8: + elif s < 8: data_out.append(CB_float(c, s)) - else: - data_out.append(c) + elif s == 8: + data_out.append(c / 255) + if add_alpha: + data_out.append(1.0) return data_out diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 1a201a40c..0235d19ed 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -107,13 +107,34 @@ def determine_size(self): # that said sometimes dxt is used in funny ways for special effects # in these cases, I will default to another measurement because # dxt is no longer reliable + # reverse load block texels to be just width * height + # dxs = (((fImage.width) * (fImage.height) + 3) >> 2) - 1 for 4B + # else + # dxs = ( + # ((fImage.width) * (fImage.height) + f3d.G_IM_SIZ_VARS[siz + "_INCR"]) + # >> f3d.G_IM_SIZ_VARS[siz + "_SHIFT"] + # ) - 1 + # define G_IM_SIZ_4b_SHIFT 2 + # define G_IM_SIZ_8b_SHIFT 1 + # define G_IM_SIZ_16b_SHIFT 0 + # define G_IM_SIZ_32b_SHIFT 0 + + # define G_IM_SIZ_4b_INCR 3 + # define G_IM_SIZ_8b_INCR 1 + # define G_IM_SIZ_16b_INCR 0 + # define G_IM_SIZ_32b_INCR 0 bit_size = int(re.search("\d+", self.siz).group()) + if bit_size == 4: + texels = (self.texels + 1) << 2 + else: + siz_adjust = 1 if bit_size == 8 else 0 + texels = (self.texels + 1) << siz_adjust if self.dxt == 0: # this just allows export but in no way is this a normal texture # nor will it properly show up in blender as an import - texels = self.texels - self.width = self.texels - self.height = 1 + if not self.width: + self.width = 1 + self.height = texels / self.width return bit_size = math.log2(bit_size // 4) if not bit_size: @@ -128,16 +149,11 @@ def determine_size(self): width = int((0x7FF * 8 / bit_size) / (self.dxt - 1)) # width * bitsize can't be below one if width * bit_size < 1: + print("width*bitsize < 1", self.tex_img, texels) bit_size = 1 / width width = int((8 * 0x7FF / bit_size) / (self.dxt - 1)) - # in 4bit loading, texels are faked as if they're 16 bit - # so each texel here is actually 4 texels - if bit_size == 0.5: - height = int(4 * (self.texels + 1) / width) - else: - height = int((self.texels + 1) / width) - print(width, height, self.tex_img, bit_size) + height = int((texels + 1) / width) self.width = width self.height = height @@ -276,9 +292,6 @@ def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, te tex_img = textures.get(tex.tex_img) # idk if this properly deals with multiple palettes... pal_img = textures.get(self.pal.tex_img) if self.pal else None - if pal_img: - pal_stream = bytes([int(a.strip(), 0x10) for a in pal_img.var_data[0].split(",") if "0x" in a]) - print(tex_img.var_name, pal_img.var_name, len(pal_stream)) tex.determine_size() image_texels = convert_tex( tex.fmt, @@ -288,7 +301,7 @@ def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, te tex_img.var_data[0], pal_stream=pal_img.var_data[0] if pal_img else None, ) - i = bpy.data.images.new(tex.tex_img, tex.width, tex.height) + i = bpy.data.images.new(tex.tex_img, tex.width, tex.height, alpha=True) i.pixels = image_texels return i @@ -913,8 +926,16 @@ def gsDPLoadBlock(self, macro: Macro): if hasattr(self.last_mat, "loadtex"): tex = self.last_mat.loadtex # these values aren't necessary when the texture is already in png format - tex.dxt = hexOrDecInt(macro.args[4]) - tex.texels = hexOrDecInt(macro.args[3]) + # texels and dxt commonly use math/expressions + if "CALC_DXT" in macro.args[4]: + tex.dxt = 0 + tex.width = re.search("\d+", macro.args[4]).group() + else: + tex.dxt = hexOrDecInt(macro.args[4]) + if "*" in macro.args[3]: + tex.texels = eval(macro.args[3]) + else: + tex.texels = hexOrDecInt(macro.args[3]) tile_index = self.eval_tile_enum(macro.args[0]) tex.tile = self.last_mat.tiles[tile_index] self.last_mat.tmem[tex.tile.tmem] = tex @@ -1083,7 +1104,7 @@ def eval_image_frac(self, arg: Union[str, Number]): return eval(arg2) def eval_tile_enum(self, arg: Union[str, Number]): - if type(arg) is str: + if type(arg) is str and not arg.isdigit(): # fix later return getattr(self.f3d_gbi, arg, 0) else: diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index c344b2d2f..da319c63e 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -108,7 +108,28 @@ def get_parser(self, entry_id: Any, relative_offset: int = 0): def c_macro_split(self, macro: str) -> list[str]: args_start = macro.find("(") - return Macro(macro[:args_start], macro[args_start + 1 : macro.rfind(")")].split(",")) + # have to deal with nested macros, such as with calc_dxt() in f3d + # maybe there is a way to oneline with regex? + str_macro = macro[args_start + 1 : macro.rfind(")")] + "," + nested_paren_regex = "\w*\(([^\)]+)\)," + arg_regex = "[\w\s*()-]+" + nested_args = [*re.finditer(nested_paren_regex, str_macro)] + if not nested_args: + macro_args = macro[args_start + 1 : macro.rfind(")")].split(",") + else: + # check if found arg overlaps with a nested one, if so throw it out + max_pos = -1 + macro_args = [] + for arg in re.finditer(arg_regex, str_macro): + if nested_args: + if arg.span()[0] > nested_args[0].span()[0] or arg.span()[1] > nested_args[0].span()[0]: + max_pos = nested_args[0].span()[1] + macro_args.append(nested_args[0].group()) + nested_args.pop(0) + continue + if arg.span()[0] > max_pos: + macro_args.append(arg.group()) + return Macro(macro[:args_start], macro_args) def transform_matrix_to_bpy(transform: Matrix) -> Matrix: From 9365d148778d2e7b4583786aa197889795137007 Mon Sep 17 00:00:00 2001 From: scut Date: Wed, 4 Feb 2026 21:26:07 -0500 Subject: [PATCH 17/30] prep for making binary importer, the road will be long --- fast64_internal/f3d/f3d_import.py | 130 +++++----- fast64_internal/sm64/sm64_level_importer.py | 256 ++++++++++---------- fast64_internal/utility_importer.py | 96 +++++++- 3 files changed, 285 insertions(+), 197 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 0235d19ed..d4f4868a3 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -555,7 +555,7 @@ def parse_stream_DL(self, display_list_arr: Sequence, start_name: str): self.parse_stream(display_list_arr, start_name) def gsSPEndDisplayList(self, macro: Macro): - return self.break_parse + return self._break_parse def gsSPBranchList(self, macro: Macro): NewDL = self.Gfx.get(branched_dl := macro.args[0]) @@ -565,9 +565,8 @@ def gsSPBranchList(self, macro: Macro): NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix ) ) - self.reset_parser(branched_dl) - self.parse_stream(NewDL, branched_dl) - return self.break_parse + self.parse_stream_from_start(NewDL, branched_dl) + return self._break_parse def gsSPDisplayList(self, macro: Macro): NewDL = self.Gfx.get(branched_dl := macro.args[0]) @@ -577,12 +576,11 @@ def gsSPDisplayList(self, macro: Macro): NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix ) ) - self.reset_parser(branched_dl) - self.parse_stream(NewDL, branched_dl) - return self.continue_parse + self.parse_stream_from_start(NewDL, branched_dl) + return self._continue_parse def gsSPEndDisplayList(self, macro: Macro): - return self.break_parse + return self._break_parse def gsSPVertex(self, macro: Macro): # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later @@ -612,7 +610,7 @@ def gsSPVertex(self, macro: Macro): self.UVs.extend([v[1] for v in Verts]) self.VCs.extend([v[2] for v in Verts]) self.LastLoad = vertex_load_length - return self.continue_parse + return self._continue_parse def gsSPModifyVertex(self, macro: Macro): vtx = self.VertBuff[hexOrDecInt(macro.args[0])] @@ -631,7 +629,7 @@ def gsSPModifyVertex(self, macro: Macro): self.UVs.append(self.UVs[vtx]) self.VCs.append(vertex_col) self.VertBuff[hexOrDecInt(macro.args[0])] = len(self.Verts) - return self.continue_parse + return self._continue_parse def gsSP2Triangles(self, macro: Macro): self.make_new_material() @@ -640,14 +638,14 @@ def gsSP2Triangles(self, macro: Macro): Tri2 = self.parse_tri(args[4:7]) self.Tris.append(Tri1) self.Tris.append(Tri2) - return self.continue_parse + return self._continue_parse def gsSP1Triangle(self, macro: Macro): self.make_new_material() args = [hexOrDecInt(a) for a in macro.args] Tri = self.parse_tri(args[:3]) self.Tris.append(Tri) - return self.continue_parse + return self._continue_parse # materials # Mats will be placed sequentially. The first item of the list is the triangle number @@ -655,7 +653,7 @@ def gsSP1Triangle(self, macro: Macro): def gsDPSetRenderMode(self, macro: Macro): self.NewMat = 1 self.last_mat.RenderMode = [a.strip() for a in macro.args] - return self.continue_parse + return self._continue_parse # The highest numbered light is always the ambient light def gsSPLight(self, macro: Macro): @@ -678,7 +676,7 @@ def gsSPLight(self, macro: Macro): self.last_mat.ambient_light = light_val else: self.last_mat.light_col[light_num] = light_val - return self.continue_parse + return self._continue_parse # numlights0 still gives one ambient and diffuse light def gsSPNumLights(self, macro: Macro): @@ -686,39 +684,39 @@ def gsSPNumLights(self, macro: Macro): num = re.search("\d", macro.args[0]).group() num = int(num) if num else 1 self.last_mat.num_lights = num - return self.continue_parse + return self._continue_parse def gsSPLightColor(self, macro: Macro): self.NewMat = 1 num = re.search("\d", macro.args[0]).group() num = int(num) if num else 1 self.last_mat.light_col[num] = eval(macro.args[-1]).to_bytes(4, "big") - return self.continue_parse + return self._continue_parse # not finished yet def gsSPSetLights0(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetLights1(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetLights2(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetLights3(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetLights4(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetLights5(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetLights6(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetLights7(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsSPSetOtherMode(self, macro: Macro): self.NewMat = 1 @@ -737,101 +735,101 @@ def gsSPSetOtherMode(self, macro: Macro): continue mode_l_attr = RDPSettings.other_mode_l_attributes[i][1] self.last_mat.other_mode[mode_l_attr] = othermode.strip() - return self.continue_parse + return self._continue_parse # some independent other mode settings def gsDPSetTexturePersp(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_textpersp"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetDepthSource(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_zsrcsel"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetColorDither(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_rgb_dither"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetAlphaDither(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_alpha_dither"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetCombineKey(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_combkey"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetTextureConvert(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_textconv"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetTextureFilter(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_text_filt"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetTextureLOD(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_textlod"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetTextureDetail(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_textdetail"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetCycleType(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_cycletype"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetTextureLUT(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_textlut"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPPipelineMode(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_pipeline"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsDPSetAlphaCompare(self, macro: Macro): self.NewMat = 1 self.last_mat.other_mode["g_mdsft_alpha_compare"] = macro.args[0] - return self.continue_parse + return self._continue_parse def gsSPFogFactor(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsDPSetFogColor(self, macro: Macro): self.NewMat = 1 self.last_mat.fog_color = macro.args - return self.continue_parse + return self._continue_parse def gsSPFogPosition(self, macro: Macro): self.NewMat = 1 self.last_mat.fog_pos = macro.args - return self.continue_parse + return self._continue_parse def gsDPSetBlendColor(self, macro: Macro): self.NewMat = 1 self.last_mat.blend_color = macro.args - return self.continue_parse + return self._continue_parse def gsDPSetPrimColor(self, macro: Macro): self.NewMat = 1 self.last_mat.prim_color = macro.args - return self.continue_parse + return self._continue_parse def gsDPSetEnvColor(self, macro: Macro): self.NewMat = 1 self.last_mat.env_color = macro.args - return self.continue_parse + return self._continue_parse # multiple geo modes can happen in a row that contradict each other # this is mostly due to culling wanting diff geo modes than drawing @@ -843,7 +841,7 @@ def gsSPClearGeometryMode(self, macro: Macro): if a in self.last_mat.GeoSet: self.last_mat.GeoSet.remove(a) self.last_mat.GeoClear.extend(args) - return self.continue_parse + return self._continue_parse def gsSPSetGeometryMode(self, macro: Macro): self.NewMat = 1 @@ -852,7 +850,7 @@ def gsSPSetGeometryMode(self, macro: Macro): if a in self.last_mat.GeoClear: self.last_mat.GeoClear.remove(a) self.last_mat.GeoSet.extend(args) - return self.continue_parse + return self._continue_parse def gsSPGeometryMode(self, macro: Macro): self.NewMat = 1 @@ -866,7 +864,7 @@ def gsSPGeometryMode(self, macro: Macro): self.last_mat.GeoClear.remove(a) self.last_mat.GeoClear.extend(argsC) self.last_mat.GeoSet.extend(argsS) - return self.continue_parse + return self._continue_parse def gsSPLoadGeometryMode(self, macro: Macro): self.NewMat = 1 @@ -874,17 +872,17 @@ def gsSPLoadGeometryMode(self, macro: Macro): all_geos = set(RDPSettings.geo_mode_attributes.values()) self.last_mat.GeoSet = list(geo_set) self.last_mat.GeoClear = list(all_geos.difference(geo_set)) - return self.continue_parse + return self._continue_parse def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 self.last_mat.Combiner = self.eval_set_combine_macro(macro.args) - return self.continue_parse + return self._continue_parse def gsDPSetCombineLERP(self, macro: Macro): self.NewMat = 1 self.last_mat.Combiner = macro.args - return self.continue_parse + return self._continue_parse # root tile, scale and set tex def gsSPTexture(self, macro: Macro): @@ -902,7 +900,7 @@ def gsSPTexture(self, macro: Macro): ((0x10000 * (hexOrDecInt(a) < 0)) + hexOrDecInt(a)) / 0xFFFF for a in macro.args[0:2] ] # signed half to unsigned half self.last_mat.base_tile = self.eval_tile_enum(macro.args[-2]) - return self.continue_parse + return self._continue_parse # last tex is a palette def gsDPLoadTLUTCmd(self, macro: Macro): @@ -920,7 +918,7 @@ def gsDPLoadTLUTCmd(self, macro: Macro): "No interpretation on file possible**--" ) return None - return self.continue_parse + return self._continue_parse def gsDPLoadBlock(self, macro: Macro): if hasattr(self.last_mat, "loadtex"): @@ -946,7 +944,7 @@ def gsDPLoadBlock(self, macro: Macro): "No interpretation on file possible**--" ) return None - return self.continue_parse + return self._continue_parse def gsDPSetTextureImage(self, macro: Macro): self.NewMat = 1 @@ -954,7 +952,7 @@ def gsDPSetTextureImage(self, macro: Macro): fmt = macro.args[0] siz = macro.args[1] self.last_mat.loadtex = Texture(tex_img, fmt, siz) - return self.continue_parse + return self._continue_parse def gsDPSetTileSize(self, macro: Macro): self.NewMat = 1 @@ -963,7 +961,7 @@ def gsDPSetTileSize(self, macro: Macro): tile.Tlow = self.eval_image_frac(macro.args[2]) tile.Shigh = self.eval_image_frac(macro.args[3]) tile.Thigh = self.eval_image_frac(macro.args[4]) - return self.continue_parse + return self._continue_parse def gsDPSetTile(self, macro: Macro): self.NewMat = 1 @@ -981,7 +979,7 @@ def gsDPSetTile(self, macro: Macro): tex = self.last_mat.tmem.get(tile.tmem, None) if tex: tex.siz = tile.siz - return self.continue_parse + return self._continue_parse # combined macros def gsDPLoadTLUT(self, macro: Macro): @@ -990,7 +988,7 @@ def gsDPLoadTLUT(self, macro: Macro): self.gsDPSetTextureImage(macro.partial("G_IM_FMT_RGBA", "G_IM_SIZ_16b", 1, args[2])) self.gsDPSetTile(macro.partial(0, 0, 0, args[1], 7, 0, 0, 0, 0, 0, 0, 0)) self.gsDPLoadTLUTCmd(macro.partial(7, args[0])) - return self.continue_parse + return self._continue_parse def gsDPLoadTextureBlock(self, macro: Macro): # 0tex, 1fmt, 2siz, 3height, 4width, 5pal, 6flags, 8masks, 10shifts @@ -1007,7 +1005,7 @@ def gsDPLoadTextureBlock(self, macro: Macro): ) self.gsDPSetTileSize(macro.partial(7, 0, 0, (hexOrDecInt(args[4]) - 1) << 2, (hexOrDecInt(args[3]) - 1) << 2)) - return self.continue_parse + return self._continue_parse def gsDPLoadTextureBlockS(self, macro: Macro): # only changes dxt and that doesn't matter here @@ -1027,7 +1025,7 @@ def _gsDPLoadTextureBlock(self, macro: Macro): macro.partial(fmt, siz, 0, 0, 0, args[5], args[7], args[9], args[11], args[6], args[8], args[10]) ) self.gsDPSetTileSize(macro.partial(7, 0, 0, (hexOrDecInt(args[4]) - 1) << 2, (hexOrDecInt(args[3]) - 1) << 2)) - return self.continue_parse + return self._continue_parse def gsDPLoadTextureBlock_4b(self, macro: Macro): # 0tex, 1fmt, 2height, 3width, 4pal, 5flags, 7masks, 9shifts @@ -1044,7 +1042,7 @@ def gsDPLoadTextureBlock_4b(self, macro: Macro): macro.partial(fmt, "G_IM_SIZ_4b", 0, 0, 0, args[4], args[3], args[8], args[10], args[3], args[7], args[9]) ) self.gsDPSetTileSize(macro.partial(7, 0, 0, (hexOrDecInt(args[4]) - 1) << 2, (hexOrDecInt(args[3]) - 1) << 2)) - return self.continue_parse + return self._continue_parse def gsDPLoadTextureBlock_4bs(self, macro: Macro): # only changes dxt and that doesn't matter here @@ -1058,22 +1056,22 @@ def gsDPLoadTextureBlock_4bs(self, macro: Macro): # syncs need no processing def gsSPCullDisplayList(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsDPPipeSync(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsDPLoadSync(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsDPTileSync(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsDPFullSync(self, macro: Macro): - return self.continue_parse + return self._continue_parse def gsDPNoOp(self, macro: Macro): - return self.continue_parse + return self._continue_parse def make_new_material(self): if self.NewMat: diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 904256778..1e5adeffc 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -338,44 +338,44 @@ def AREA(self, macro: Macro, col: bpy.types.Collection): area_root.name = f"{self.props.level_name} Area Root {macro.args[0]}" self.areas[macro.args[0]] = Area(area_root, macro.args[1], self.root, int(macro.args[0]), self.scene, area_col) self.cur_area = macro.args[0] - return self.continue_parse + return self._continue_parse def END_AREA(self, macro: Macro, col: bpy.types.Collection): self.cur_area = None - return self.continue_parse + return self._continue_parse # Jumps are only taken if they're in the script.c file for now # continues script def JUMP_LINK(self, macro: Macro, col: bpy.types.Collection): if self.scripts.get(macro.args[0]): self.parse_level_script(macro.args[0], col=col) - return self.continue_parse + return self._continue_parse # ends script def JUMP(self, macro: Macro, col: bpy.types.Collection): new_entry = self.scripts.get(macro.args[-1]) if new_entry: self.parse_level_script(macro.args[-1], col=col) - return self.break_parse + return self._break_parse def EXIT(self, macro: Macro, col: bpy.types.Collection): - return self.break_parse + return self._break_parse def RETURN(self, macro: Macro, col: bpy.types.Collection): - return self.break_parse + return self._break_parse # Now deal with data cmds rather than flow control ones def WARP_NODE(self, macro: Macro, col: bpy.types.Collection): self.areas[self.cur_area].add_warp(macro.args, "Warp") - return self.continue_parse + return self._continue_parse def PAINTING_WARP_NODE(self, macro: Macro, col: bpy.types.Collection): self.areas[self.cur_area].add_warp(macro.args, "Painting") - return self.continue_parse + return self._continue_parse def INSTANT_WARP(self, macro: Macro, col: bpy.types.Collection): self.areas[self.cur_area].add_instant_warp(macro.args) - return self.continue_parse + return self._continue_parse def OBJECT_WITH_ACTS(self, macro: Macro, col: bpy.types.Collection): # convert act mask from ORs of act names to a number @@ -392,12 +392,12 @@ def OBJECT_WITH_ACTS(self, macro: Macro, col: bpy.types.Collection): except: mask = 31 self.areas[self.cur_area].add_object([*macro.args[:-1], mask]) - return self.continue_parse + return self._continue_parse def OBJECT(self, macro: Macro, col: bpy.types.Collection): # Only difference is act mask, which I set to 31 to mean all acts self.areas[self.cur_area].add_object([*macro.args, 31]) - return self.continue_parse + return self._continue_parse def TERRAIN_TYPE(self, macro: Macro, col: bpy.types.Collection): if not macro.args[0].isdigit(): @@ -418,17 +418,17 @@ def TERRAIN_TYPE(self, macro: Macro, col: bpy.types.Collection): self.areas[self.cur_area].root.terrainEnum = terrains.get(num) except: print("could not set terrain") - return self.continue_parse + return self._continue_parse def SHOW_DIALOG(self, macro: Macro, col: bpy.types.Collection): root = self.areas[self.cur_area].root root.showStartDialog = True root.startDialog = macro.args[1] - return self.continue_parse + return self._continue_parse def TERRAIN(self, macro: Macro, col: bpy.types.Collection): self.areas[self.cur_area].terrain = macro.args[0] - return self.continue_parse + return self._continue_parse def SET_BACKGROUND_MUSIC(self, macro: Macro, col: bpy.types.Collection): return self.generic_music(macro, col) @@ -446,29 +446,29 @@ def generic_music(self, macro: Macro, col: bpy.types.Collection): root = self.areas[self.cur_area].root root.musicSeqEnum = "Custom" root.music_seq = macro.args[1] - return self.continue_parse + return self._continue_parse # Don't support these for now def MACRO_OBJECTS(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def WHIRLPOOL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def SET_ECHO(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def MARIO_POS(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def SET_REG(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def GET_OR_SET(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def CHANGE_AREA_SKYBOX(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse # Don't support for now but maybe later def JUMP_LINK_PUSH_ARG(self, macro: Macro, col: bpy.types.Collection): @@ -512,66 +512,66 @@ def UNLOAD_AREA(self, macro: Macro, col: bpy.types.Collection): # use group mapping to set groups eventually def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_MIO0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_TITLE_SCREEN_BG(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_GODDARD(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_BEHAVIOR_DATA(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_COMMON0(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_GROUPB(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_GROUPA(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_EFFECTS(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_SKYBOX(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_TEXTURE_BIN(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_LEVEL_DATA(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_YAY0(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_YAY0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_VANILLA_OBJECTS(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_RAW_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_MARIO_HEAD(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def LOAD_MODEL_FROM_GEO(self, macro: Macro, col: bpy.types.Collection): self.loaded_geos[macro.args[0]] = macro.args[1] - return self.continue_parse + return self._continue_parse def LOAD_MODEL_FROM_DL(self, macro: Macro, col: bpy.types.Collection): self.loaded_dls[macro.args[0]] = macro.args[1] - return self.continue_parse + return self._continue_parse # throw exception saying I cannot process def EXECUTE(self, macro: Macro, col: bpy.types.Collection): @@ -588,61 +588,61 @@ def EXIT_AND_EXECUTE_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): # not useful for bpy, dummy these script cmds def CMD3A(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def STOP_MUSIC(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def GAMMA(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def BLACKOUT(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def TRANSITION(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def NOP(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def CMD23(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def PUSH_POOL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def POP_POOL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def SLEEP(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def ROOMS(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def MARIO(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def INIT_LEVEL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def ALLOC_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def FREE_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def CALL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def CALL_LOOP(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def CLEAR_LEVEL(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse def SLEEP_BEFORE_EXIT(self, macro: Macro, col: bpy.types.Collection): - return self.continue_parse + return self._continue_parse @dataclass @@ -731,56 +731,56 @@ def parse_collision(self): def COL_VERTEX(self, macro: Macro): self.vertices.append([eval(v) / self.scale for v in macro.args]) - return self.continue_parse + return self._continue_parse def COL_TRI_INIT(self, macro: Macro): self.type = macro.args[0] - return self.continue_parse + return self._continue_parse def COL_TRI(self, macro: Macro): self.tris.append(ColTri(self.type, [eval(a) for a in macro.args])) - return self.continue_parse + return self._continue_parse def COL_TRI_SPECIAL(self, macro: Macro): self.tris.append(ColTri(self.type, [eval(a) for a in macro.args[0:3]], special_param=eval(macro.args[3]))) - return self.continue_parse + return self._continue_parse def COL_WATER_BOX(self, macro: Macro): # id, x1, z1, x2, z2, y self.water_boxes.append(macro.args) - return self.continue_parse + return self._continue_parse # not written out currently def SPECIAL_OBJECT(self, macro: Macro): self.special_objects.append((*macro.args, 0, 0)) - return self.continue_parse + return self._continue_parse def SPECIAL_OBJECT_WITH_YAW(self, macro: Macro): self.special_objects.append((*macro.args, 0)) - return self.continue_parse + return self._continue_parse def SPECIAL_OBJECT_WITH_YAW_AND_PARAM(self, macro: Macro): self.special_objects.append(macro.args) - return self.continue_parse + return self._continue_parse # don't do anything to bpy def COL_WATER_BOX_INIT(self, macro: Macro): - return self.continue_parse + return self._continue_parse def COL_INIT(self, macro: Macro): - return self.continue_parse + return self._continue_parse def COL_VERTEX_INIT(self, macro: Macro): - return self.continue_parse + return self._continue_parse def COL_SPECIAL_INIT(self, macro: Macro): - return self.continue_parse + return self._continue_parse def COL_TRI_STOP(self, macro: Macro): - return self.continue_parse + return self._continue_parse def COL_END(self, macro: Macro): - return self.continue_parse + return self._continue_parse class SM64_Material(Mat): @@ -1154,7 +1154,7 @@ def GEO_BRANCH_AND_LINK(self, macro: Macro, depth: int): if new_geo_layout: self.stream.append(macro.args[0]) self.parse_stream_from_start(new_geo_layout, macro.args[0], depth) - return self.continue_parse + return self._continue_parse def GEO_BRANCH(self, macro: Macro, depth: int): new_geo_layout = self.geo_layouts.get(macro.args[1]) @@ -1163,20 +1163,20 @@ def GEO_BRANCH(self, macro: Macro, depth: int): self.parse_stream_from_start(new_geo_layout, macro.args[1], depth) # arg 0 determines if you return and continue or end after the branch if eval(macro.args[0]): - return self.continue_parse + return self._continue_parse else: - return self.break_parse + return self._break_parse def GEO_END(self, macro: Macro, depth: int): self.stream = None - return self.break_parse + return self._break_parse def GEO_RETURN(self, macro: Macro, depth: int): self.stream.pop() - return self.break_parse + return self._break_parse def GEO_CLOSE_NODE(self, macro: Macro, depth: int): - return self.break_parse + return self._break_parse def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): # translation, rotation, layer, model @@ -1184,7 +1184,7 @@ def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): ModelDat(self.parent_transform, *macro.args), "display_list", self.display_list, macro.args[0] ) self.set_transform(geo_obj, self.parent_transform) - return self.continue_parse + return self._continue_parse def GEO_BILLBOARD_WITH_PARAMS_AND_DL(self, macro: Macro, depth: int): transform = Matrix() @@ -1199,7 +1199,7 @@ def GEO_BILLBOARD_WITH_PARAMS_AND_DL(self, macro: Macro, depth: int): else: geo_obj = self.setup_geo_obj("billboard", self.billboard, macro.args[0]) self.set_transform(geo_obj, self.last_transform) - return self.continue_parse + return self._continue_parse def GEO_BILLBOARD_WITH_PARAMS(self, macro: Macro, depth: int): transform = Matrix() @@ -1208,11 +1208,11 @@ def GEO_BILLBOARD_WITH_PARAMS(self, macro: Macro, depth: int): geo_obj = self.setup_geo_obj("billboard", self.billboard, macro.args[0]) self.set_transform(geo_obj, self.last_transform) - return self.continue_parse + return self._continue_parse def GEO_BILLBOARD(self, macro: Macro, depth: int): self.setup_geo_obj("billboard", self.billboard, macro.args[0]) - return self.continue_parse + return self._continue_parse def GEO_ANIMATED_PART(self, macro: Macro, depth: int): # layer, translation, DL @@ -1228,13 +1228,13 @@ def GEO_ANIMATED_PART(self, macro: Macro, depth: int): else: geo_obj = self.setup_geo_obj("bone", self.animated_part, macro.args[0]) self.set_transform(geo_obj, self.last_transform) - return self.continue_parse + return self._continue_parse def GEO_ROTATION_NODE(self, macro: Macro, depth: int): geo_obj = self.GEO_ROTATE(macro, depth) if geo_obj: self.set_geo_type(geo_obj, self.rotate) - return self.continue_parse + return self._continue_parse def GEO_ROTATE(self, macro: Macro, depth: int): transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector((1, 1, 1))) @@ -1243,7 +1243,7 @@ def GEO_ROTATE(self, macro: Macro, depth: int): def GEO_ROTATION_NODE_WITH_DL(self, macro: Macro, depth: int): geo_obj = self.GEO_ROTATE_WITH_DL(macro, depth) - return self.continue_parse + return self._continue_parse def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): transform = Matrix.LocRotScale(Vector(), self.get_rotation(macro.args[1:4]), Vector((1, 1, 1))) @@ -1277,7 +1277,7 @@ def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): else: geo_obj = self.setup_geo_obj("trans/rotate", self.translate_rotate, macro.args[0]) self.set_transform(geo_obj, self.last_transform) - return self.continue_parse + return self._continue_parse def GEO_TRANSLATE_ROTATE(self, macro: Macro, depth: int): transform = Matrix.LocRotScale( @@ -1287,13 +1287,13 @@ def GEO_TRANSLATE_ROTATE(self, macro: Macro, depth: int): geo_obj = self.setup_geo_obj("trans/rotate", self.translate_rotate, macro.args[0]) self.set_transform(geo_obj, self.last_transform) - return self.continue_parse + return self._continue_parse def GEO_TRANSLATE_WITH_DL(self, macro: Macro, depth: int): geo_obj = self.GEO_TRANSLATE_NODE_WITH_DL(macro, depth) if geo_obj: self.set_geo_type(geo_obj, self.translate_rotate) - return self.continue_parse + return self._continue_parse def GEO_TRANSLATE_NODE_WITH_DL(self, macro: Macro, depth: int): transform = Matrix() @@ -1314,7 +1314,7 @@ def GEO_TRANSLATE(self, macro: Macro, depth: int): obj = self.GEO_TRANSLATE_NODE(macro, depth) if obj: self.set_geo_type(geo_obj, self.translate_rotate) - return self.continue_parse + return self._continue_parse def GEO_TRANSLATE_NODE(self, macro: Macro, depth: int): transform = Matrix() @@ -1332,42 +1332,42 @@ def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): model = macro.args[-1] geo_obj = self.add_model(ModelDat(self.last_transform, macro.args[0], macro.args[-1])) self.set_transform(geo_obj, self.last_transform) - return self.continue_parse + return self._continue_parse # these have no affect on the bpy def GEO_NOP_1A(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_NOP_1E(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_NOP_1F(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_NODE_START(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_NODE_SCREEN_AREA(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_ZBUFFER(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_RENDER_OBJ(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse # This should probably do something but I haven't coded it in yet def GEO_COPY_VIEW(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_ASSIGN_AS_VIEW(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_UPDATE_NODE_FLAGS(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_NODE_ORTHO(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse # These need special bhv for each type def GEO_ASM(self, macro: Macro, depth: int): @@ -1518,26 +1518,26 @@ def GEO_ASM(self, macro: Macro, depth: int): if "geo_envfx_main" in macro.args[1]: env_fx = macro.args[0] if not env_fx or (env_fx == "ENVFX_MODE_NONE" and self.props.export_friendly): - return self.continue_parse + return self._continue_parse elif any(env_fx is enum_fx[0] for enum_fx in enumEnvFX): self.area_root.envOption = env_fx else: self.area_root.envOption = "Custom" self.area_root.envType = env_fx if macro.args[1] in self._skipped_geo_asm_funcs and self.props.export_friendly: - return self.continue_parse + return self._continue_parse geo_obj = self.setup_geo_obj("asm", self.asm) # probably will need to be overridden by each subclass asm = geo_obj.fast64.sm64.geo_asm asm.param = macro.args[0] asm.func = macro.args[1] - return self.continue_parse + return self._continue_parse def GEO_SCALE(self, macro: Macro, depth: int): scale = eval(macro.args[1]) / 0x10000 geo_obj = self.setup_geo_obj("scale", self.scale, macro.args[0]) geo_obj.scale = (scale, scale, scale) - return self.continue_parse + return self._continue_parse # shadows aren't naturally supported but we can emulate them with custom geo cmds # change so this can be applied to mesh on root? @@ -1547,20 +1547,20 @@ def GEO_SHADOW(self, macro: Macro, depth: int): # its probably better to just make shadows a real geo cmd or have some generic custom cmd func # geo_obj.customGeoCommand = "GEO_SHADOW" # geo_obj.customGeoCommandArgs = ", ".join(macro.args) - return self.continue_parse + return self._continue_parse def GEO_SWITCH_CASE(self, macro: Macro, depth: int): geo_obj = self.setup_geo_obj("switch", self.switch) # probably will need to be overridden by each subclass geo_obj.switchParam = eval(macro.args[0]) geo_obj.switchFunc = macro.args[1] - return self.continue_parse + return self._continue_parse # can only apply type to area root def GEO_CAMERA(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" self.area_root.camType = macro.args[0] - return self.continue_parse + return self._continue_parse def GEO_BACKGROUND(self, macro: Macro, depth: int): level_root = self.area_root.parent @@ -1576,35 +1576,35 @@ def GEO_BACKGROUND(self, macro: Macro, depth: int): # level_root.fast64.sm64.level.backgroundSegment = "unavailable srry :(" print("background segment not set, left at default srry") - return self.continue_parse + return self._continue_parse def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): level_root = self.area_root.parent level_root.useBackgroundColor = True level_root.backgroundColor = read16bitRGBA(hexOrDecInt(macro.args[0])) - return self.continue_parse + return self._continue_parse # can only apply to meshes def GEO_RENDER_RANGE(self, macro: Macro, depth: int): self.pass_args["render_range"] = [ hexOrDecInt(range) / self.scene.fast64.sm64.blender_to_sm64_scale for range in macro.args ] - return self.continue_parse + return self._continue_parse def GEO_CULLING_RADIUS(self, macro: Macro, depth: int): self.pass_args["culling_radius"] = hexOrDecInt(macro.args[0]) / self.scene.fast64.sm64.blender_to_sm64_scale - return self.continue_parse + return self._continue_parse # make better def GEO_CAMERA_FRUSTRUM(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" self.area_root.camType = macro.args[0] - return self.continue_parse + return self._continue_parse def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" self.area_root.camType = macro.args[0] - return self.continue_parse + return self._continue_parse def GEO_OPEN_NODE(self, macro: Macro, depth: int): if self.obj: @@ -1634,7 +1634,7 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): GeoChild.parent_transform = self.last_transform GeoChild.parse_stream(self.geo_layouts.get(self.stream[-1]), self.stream[-1], depth + 1) self.children.append(GeoChild) - return self.continue_parse + return self._continue_parse class GeoArmature(GraphNodes): @@ -1802,20 +1802,20 @@ def GEO_ASM(self, macro: Macro, depth: int): else: geo_obj.func_param = int(macro.args[0]) geo_obj.geo_func = macro.args[1] - return self.continue_parse + return self._continue_parse def GEO_SHADOW(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("shadow", self.shadow) geo_bone.shadow_solidity = hexOrDecInt(macro.args[1]) / 255 geo_bone.shadow_scale = hexOrDecInt(macro.args[2]) - return self.continue_parse + return self._continue_parse # cmd not supported in fast64 for some reason? def GEO_RENDER_RANGE(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("render_range", self.custom) geo_bone.fast64.sm64.custom_geo_cmd_macro = "GEO_RENDER_RANGE" geo_bone.fast64.sm64.custom_geo_cmd_args = ",".join(macro.args) - return self.continue_parse + return self._continue_parse # can switch children have their own culling radius? does it have to # be on the root? this currently allows each independent geo to have one @@ -1823,14 +1823,14 @@ def GEO_CULLING_RADIUS(self, macro: Macro, depth: int): geo_armature = self.get_or_init_geo_armature() geo_armature.use_render_area = True # cringe name, it is cull not render area geo_armature.culling_radius = float(macro.args[0]) - return self.continue_parse + return self._continue_parse def GEO_SWITCH_CASE(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("switch", self.switch) # probably will need to be overridden by each subclass geo_bone.func_param = eval(macro.args[0]) geo_bone.geo_func = macro.args[1] - return self.continue_parse + return self._continue_parse def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): scale = eval(macro.args[1]) / 0x10000 @@ -1844,23 +1844,23 @@ def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): macro.args[0], ) self.set_transform(geo_obj, self.last_transform) - return self.continue_parse + return self._continue_parse def GEO_SCALE(self, macro: Macro, depth: int): scale = eval(macro.args[1]) / 0x10000 geo_bone = self.setup_geo_obj("scale", self.scale, macro.args[0]) geo_bone.geo_scale = scale - return self.continue_parse + return self._continue_parse # can be used as a container for several nodes under a single switch child def GEO_NODE_START(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("start", self.start, "1") - return self.continue_parse + return self._continue_parse # add some stuff here def GEO_HELD_OBJECT(self, macro: Macro, depth: int): - return self.continue_parse + return self._continue_parse def GEO_OPEN_NODE(self, macro: Macro, depth: int): if self.bone: @@ -1891,7 +1891,7 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): GeoChild.parent_transform = self.last_transform GeoChild.parse_stream(self.geo_layouts.get(self.stream[-1]), self.stream[-1], depth + 1) self.children.append(GeoChild) - return self.continue_parse + return self._continue_parse # ------------------------------------------------------------------------ diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index da319c63e..fab1b26da 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -12,6 +12,10 @@ from .utility import transform_mtx_blender_to_n64 +# ------------------------------------------------------------------------ +# Array Data parsing +# ------------------------------------------------------------------------ + @dataclass class CDataArray: @@ -68,8 +72,8 @@ def stream(self): # basic methods and utility to parse scripts or data streams of bytecode class DataParser: # parsing flow status codes - continue_parse = 1 - break_parse = 2 + _continue_parse = 1 + _break_parse = 2 def __init__(self, parent: DataParser = None): # for forward referencing scripts, keep track of the stream @@ -95,7 +99,7 @@ def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs raise Exception(f"Macro {cur_macro} not found in parser function") else: flow_status = func(cur_macro, *args, **kwargs) - if flow_status == self.break_parse: + if flow_status == self._break_parse: return def reset_parser(self, entry_id: Any): @@ -136,6 +140,92 @@ def transform_matrix_to_bpy(transform: Matrix) -> Matrix: return transform_mtx_blender_to_n64().inverted() @ transform @ transform_mtx_blender_to_n64() +# ------------------------------------------------------------------------ +# Binary Classes +# ------------------------------------------------------------------------ + + +# just a base class that holds some binary processing +# this class is focused on reading data +class BinProcess: + # unpack type + def unpack_type(self, offset, type, length, iter=False): + a = struct.unpack(type, self.file[offset : offset + length]) + if iter: + return a + if len(a) == 1: + return a[0] + else: + return a + + @staticmethod + def seg2phys(num): + if num >> 24 == 4: + return num & 0xFFFFFF + else: + return num + + # get list of pointers, stop at ARR_TERMINATOR + def get_referece_list(self, start, stop=0): + x = 0 + start = self.seg2phys(start) + ref = [] + r = self.unpack_type(start, ">L", 4) + while r != stop: + x += 4 + ref.append(r) + r = self.unpack_type(start + x, ">L", 4) + ref.append(r) + return ref + + # using a list of labels, find which symbol corresponds to pointer + def get_symbol_from_locations(self, symbol_dict, pointer, size=8): + # throw out non pointers + if pointer == 0: + return 0 + closest = None + chosen_str = None + for format_str, symbols in symbol_dict.items(): + for sym in symbols: + if not closest: + closest = sym if sym < pointer else None + chosen_str = format_str + continue + if sym > pointer: + continue + if (pointer - sym) < (pointer - closest): + closest = sym + chosen_str = format_str + if not closest: + closest = min([sym for sym in symbols for symbols in symbol_dict.values()]) + return chosen_str.format(f"{closest:X}", f"[{(pointer - closest) // size}]") + + # turn dict into an array. usually to be fed into a named tuple + # dict is: key - offset, value - func->type, name, func->len, arr = None + # returns: list[ints] + def extract_dict(self, start, dict): + output = [] + for k, v in dict.items(): + try: + # if a function is used for member 4, then call with current results + if callable(v[3]): + # variable length structs are always at the end, and should be arrays + # since unpack_type sometimes is not a list and sometimes is, I will + # force this result to be a list + num = v[3](output) + output.append(self.unpack_type(start + k, v[0].format(num), v[2] * num, iter=True)) + else: + output.append(self.unpack_type(start + k, v[0], v[2])) + except: + output.append(self.unpack_type(start + k, v[0], v[2])) + return output + + +# ------------------------------------------------------------------------ +# C file scrubbing/processing +# ------------------------------------------------------------------------ + + # make something more generic here where user can supply their own function def evaluate_macro(line: str): props = bpy.context.scene.fast64.sm64.importer From 5bbcf383ce76ddf07cf00cf44e41b69054ea0d21 Mon Sep 17 00:00:00 2001 From: scut Date: Thu, 5 Feb 2026 16:54:09 -0500 Subject: [PATCH 18/30] updating from laptop: --- fast64_internal/utility_importer.py | 47 ++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index fab1b26da..b9fd469d2 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -68,9 +68,15 @@ def stream(self): self.head += 1 yield self.cur_stream[self.head] + def stream_binary(self): + pass + + def update_head(self, adv): + self.head += adv + # basic methods and utility to parse scripts or data streams of bytecode -class DataParser: +class DataParser(BinProcess): # parsing flow status codes _continue_parse = 1 _break_parse = 2 @@ -102,14 +108,47 @@ def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs if flow_status == self._break_parse: return + # entry id in this instance is a pointer, converted to physical address, e.g. file offset + def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs): + parser = self.parsed_streams.get(entry_id) + if not parser: + self.parsed_streams[entry_id] = (parser := Parser(bin_file)) + for line in parser.stream_binary(): + cmd_type, cmd_len = self.binary_cmd_get(parser) + # get a specific decoding function to make a macro + func = getattr(self, f"decode_cmd_{cmd_type}_bin", None) + # use a generic class (const?) var tuple to decode into a macro + if func: + cur_macro = func(parser) + else: + unpack_str = getattr(self, f"unpack_cmd_{cmd_type}_bin", None) + # if still no func + if not unpack_str: + raise Exception(f"No decoding for cmd {cmd_type}") + cur_macro = self.unpack_type(parser.cur_stream, parser.head, *unpack_str) + else: + flow_status = func(cur_macro, *args, **kwargs) + parser.update_head(cmd_len) + if flow_status == self._break_parse: + return + def reset_parser(self, entry_id: Any): self.parsed_streams[entry_id] = None - def get_parser(self, entry_id: Any, relative_offset: int = 0): + def get_parser(self, entry_id: Any, relative_offset: int = 0) -> Parser: parser = self.parsed_streams[entry_id] parser.head += relative_offset return parser + # MSB is cmd type, use cmd type to execute class specific logic for length + # default is 2nd MSB is length, used in level scripts and geo layouts + def binary_cmd_get(self, parser: Parser) -> tuple[int, int]: + cmd_type, cmd_len = self.unpack_type(parser.cur_stream, parser.head, ">BB", 2) + func = getattr(self, f"cmd_len_{cmd_type}_bin", None) + if func: + cmd_len = func(bin_file, offset, cmd_type) + return cmd_type, cmd_len + def c_macro_split(self, macro: str) -> list[str]: args_start = macro.find("(") # have to deal with nested macros, such as with calc_dxt() in f3d @@ -149,8 +188,8 @@ def transform_matrix_to_bpy(transform: Matrix) -> Matrix: # this class is focused on reading data class BinProcess: # unpack type - def unpack_type(self, offset, type, length, iter=False): - a = struct.unpack(type, self.file[offset : offset + length]) + def unpack_type(self, file, offset, type, length, iter=False): + a = struct.unpack(type, file[offset : offset + length]) if iter: return a if len(a) == 1: From 05af0361225b01f44ca89d7516823d791c55d46a Mon Sep 17 00:00:00 2001 From: scut Date: Mon, 9 Feb 2026 19:27:45 -0500 Subject: [PATCH 19/30] added binary importing for objects and collision, partially done f3d, reworked parsing and level importing modules to be cleaner --- fast64_internal/f3d/f3d_import.py | 204 ++- .../sm64/sm64_geolayout_constants.py | 1 + fast64_internal/sm64/sm64_level_importer.py | 1195 +++++++++++------ fast64_internal/utility_importer.py | 406 ++++-- 4 files changed, 1261 insertions(+), 545 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index d4f4868a3..babfbef7e 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -1,6 +1,7 @@ # ------------------------------------------------------------------------ # Header # ------------------------------------------------------------------------ +from __future__ import annotations import bpy @@ -519,8 +520,17 @@ def eval_tile_flags(self, flags: str): # should be inherited into a larger F3d class which wraps DL processing # does not deal with flow control or gathering the data containers (VB, Geo cls etc.) class DL(DataParser): + _skippable_cmds = { + "gsDPNoOp", + "gsDPFullSync", + "gsDPTileSync", + "gsDPPipeSync", + "gsDPLoadSync", + "gsSPCullDisplayList", + } + # the min needed for this class to work for importing - def __init__(self, lastmat: dict[any, Mat] = None): + def __init__(self, lastmat: dict[any, Mat] = None, parse_target: int = DataParser._c_parsing): self.Vtx = {} self.Gfx = {} self.Light_t = {} @@ -528,7 +538,7 @@ def __init__(self, lastmat: dict[any, Mat] = None): self.Lights = {} self.Textures = {} self.NewMat = 1 - self.f3d_gbi = get_F3D_GBI() + self.f3d_gbi = get_F3D_GBI() # make sure to set this to the right version for your game! # use the dict in subclasses to keep track of mats per layer when parsing in render order self.last_mat_dict = dict() if not lastmat: @@ -537,9 +547,159 @@ def __init__(self, lastmat: dict[any, Mat] = None): self.last_mat.name = 0 else: self.last_mat = lastmat - super().__init__() + super().__init__(parse_target=parse_target) + + # MSB: (name, PackedFormat), ones empty PackedFormat have no support yet + # f3d class changes its var values based on f3d type, so f3d_gbi.G_TRI1 matches correct MSB + def setup_unpack_dicts(self): + f3d_gbi = self.f3d_gbi + if f3d_gbi.F3DEX_GBI_2: + self.f3dex2_cmd_gbi_names = { + self.G_DMA_IO: ("gsSPDma_io", PackedFormat()), + self.G_LOAD_UCODE: ("gsSPLoadUcodeEx", PackedFormat()), + } + else: + self.f3dex2_cmd_gbi_names = dict() + if f3d_gbi.F3DEX_GBI or f3d_gbi.F3DLP_GBI or f3d_gbi.F3DEX_GBI_2: + self.f3dex_cmd_gbi_names = { + f3d_gbi.G_GEOMETRYMODE: ("gsSPGeometryMode", PackedFormat()), + f3d_gbi.G_MODIFYVTX: ("gsSPModifyVertex", PackedFormat(">BHl")), # enum buf_index new_val + f3d_gbi.G_CULLDL: ("gsSPCullDisplayList", PackedFormat()), + f3d_gbi.G_BRANCH_Z: ("gsSPBranchLessZrg", PackedFormat()), + f3d_gbi.G_VTX: ("gsSPVertex", PackedFormat()), + f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat()), + f3d_gbi.G_TRI2: ("gsSP2Triangles", PackedFormat(">7B")), # v123 pad v456 + f3d_gbi.G_QUAD: ("gsSP1Quadrangle", PackedFormat(">7B")), # v123 pad v456 + f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">7B")), + f3d_gbi.G_TEXTURE: ("gsSPTexture", PackedFormat()), + } + self.f3d_cmd_gbi_names = dict() + else: + self.f3dex_cmd_gbi_names = dict() + self.f3d_cmd_gbi_names = { + f3d_gbi.G_SETGEOMETRYMODE: ("gsSPSetGeometryMode", PackedFormat()), + f3d_gbi.G_CLEARGEOMETRYMODE: ("gsSPClearGeometryMode", PackedFormat()), + f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat()), + f3d_gbi.G_VTX: ("gsSPVertex", PackedFormat()), + f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">7B")), # pads + f3d_gbi.G_TEXTURE: ("gsSPTexture", PackedFormat()), + } + self.common_cmd_gbi_names = { + f3d_gbi.G_NOOP: ("gsDPNoOp", PackedFormat(">7B")), # pads + f3d_gbi.G_SPNOOP: ("gsDPNoOp", PackedFormat(">7B")), # pads + f3d_gbi.G_ENDDL: ("gsSPEndDisplayList", PackedFormat(">7B")), # pads + f3d_gbi.G_DL: ("gsSPDisplayList", PackedFormat(">BhL", (2,))), # branch pad dl_ptr + f3d_gbi.G_MOVEMEM: ("gsDma1p", PackedFormat()), # handle more properly? + f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat()), + f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat()), + } + self.rdp_cmd_gbi_names = { + f3d_gbi.G_SETCIMG: ("gsDPSetColorImage", PackedFormat(">7B")), # bpy ignores + f3d_gbi.G_SETZIMG: ("gsDPSetDepthImage", PackedFormat(">7B")), # bpy ignores + f3d_gbi.G_SETTIMG: ( + "gsDPSetTextureImage", + PackedFormat(">7B", (3,), bit_packing=(3, 2, 19, 32)), + ), # fmt siz pad im_ptr + f3d_gbi.G_SETCOMBINE: ( + "gsDPSetCombineMode", + PackedFormat(">7B", bit_packing=(4, 5, 3, 3, 4, 5, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3)), + ), # clr_a_1 clr_c_1 alpha_a_1 alpha_c_1 clr_a_2 clr_c_2 clr_b_1 clr_d_1 alpha_b_1 alpha_d_1 clr_b_2 alpha_a_2 alpha_c_2 clr_d_2 alpha_b_2 alpha_d_2 + f3d_gbi.G_SETENVCOLOR: ("gsDPSetEnvColor", PackedFormat(">Bh4B")), # pad pad rgba + f3d_gbi.G_SETPRIMCOLOR: ("gsDPSetPrimColor", PackedFormat(">7B")), # pad minLod loc_frac rgba + f3d_gbi.G_SETBLENDCOLOR: ("gsDPSetBlendColor", PackedFormat(">Bh4B")), # pad pad rgba + f3d_gbi.G_SETFOGCOLOR: ("gsDPSetFogColor", PackedFormat(">Bh4B")), # pad pad rgba + f3d_gbi.G_SETFILLCOLOR: ("gsDPSetFillColor", PackedFormat(">Bh4B")), # pad pad rgba + f3d_gbi.G_FILLRECT: ( + "gsDPFillRectangle", + PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), + ), # ul_s ul_t pad tile width height + f3d_gbi.G_SETTILE: ( + "gsDPSetTile", + PackedFormat(">7B", bit_packing=(3, 2, 1, 9, 9, 5, 3, 4, 2, 4, 4, 2, 4, 4)), + ), # fmt siz pad num_64_bit_vals tmem pad tile palette t_flag t_mask t_shift s_flag s_mask s_shift + f3d_gbi.G_LOADTILE: ( + "gsDPLoadTile", + PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), + ), # ul_s ul_t pad tile width height + f3d_gbi.G_LOADBLOCK: ( + "gsDPLoadBlock", + PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), + ), # ul_s ul_t pad tile width height + f3d_gbi.G_SETTILESIZE: ( + "gsDPSetTileSize", + PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), + ), # ul_s ul_t pad tile width height + f3d_gbi.G_LOADTLUT: ( + "gsDPLoadTLUTCmd", + PackedFormat(">7B", bit_packing=(28, 4, 12, 12)), + ), # pad tile clr_cnt pad + f3d_gbi.G_RDPSETOTHERMODE: ( + "gsSPSetOtherMode", + PackedFormat(">3BL"), + ), # higher_bits (need to combine) lower_bits + f3d_gbi.G_SETPRIMDEPTH: ("gsDPSetPrimDepth", PackedFormat(">B3h")), # pad pad z_val delta_z + f3d_gbi.G_SETSCISSOR: ( + "gsDPSetScissor", + PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), + ), # ul_x ul_y pad interpolation lr_x lr_y + f3d_gbi.G_SETCONVERT: ( + "gsDPSetConvert", + PackedFormat(">7B", bit_packing=(2, 9, 9, 9, 9, 9, 9)), + ), # k0 k1 k2 k3 k4 k5 + f3d_gbi.G_SETKEYR: ( + "gsDPSetKeyR", + PackedFormat(">7B", bit_packing=(28, 12, 8, 8)), + ), # pad wnd_r int_r soft_r + f3d_gbi.G_SETKEYGB: ( + "gsDPSetKeyGB", + PackedFormat(">7B", bit_packing=(12, 12, 8, 8, 8, 8)), + ), # wnd_g wnd_b int_g soft_g int_b soft_b (get proper names for args from gbi) + f3d_gbi.G_RDPFULLSYNC: ("gsDPFullSync", PackedFormat(">7B")), # bpy ignores + f3d_gbi.G_RDPTILESYNC: ("gsDPTileSync", PackedFormat(">7B")), # bpy ignores + f3d_gbi.G_RDPPIPESYNC: ("gsDPPipeSync", PackedFormat(">7B")), # bpy ignores + f3d_gbi.G_RDPLOADSYNC: ("gsDPLoadSync", PackedFormat(">7B")), # bpy ignores + # these are ignored in bpy but I unpack them anyway... + f3d_gbi.G_TEXRECTFLIP: ( + "gsDPTextureRectangleFlip", + PackedFormat(">23B", bit_packing=(12, 12, 4, 4, 12, 12, 32, 16, 16, 32, 16, 16)), + ), # lr_x lr_y pad tile, ul_x ul_y pad ul_s ul_t pad delta_t delta_s + f3d_gbi.G_TEXRECT: ( + "gsDPTextureRectangle", + PackedFormat(">23B", bit_packing=(12, 12, 4, 4, 12, 12, 32, 16, 16, 32, 16, 16)), + ), # lr_x lr_y pad tile, ul_x ul_y pad ul_s ul_t pad delta_s delta_t + } + self.all_f3d_gbi_cmds = { + **self.common_cmd_gbi_names, + **self.rdp_cmd_gbi_names, + **self.f3d_cmd_gbi_names, + **self.f3dex_cmd_gbi_names, + **self.f3dex2_cmd_gbi_names, + } + + # if binary, entry is a int and self.Gfx is empty + def get_new_stream(self, entry: Union[str, int]): + if type(entry) is str: + return self.Gfx[entry] + else: + return None + + def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: + cmd_type = self.unpack_type(parser.cur_stream, parser.head, ">B", make_str=False) + cmd_name = self.f3d_gbi.all_f3d_gbi_cmds.get(cmd_type) + # tex rects and maybe other cmds are longer + return cmd_name, 8 + + def binary_cmd_unpack( + self, parser: Parser, cmd_name: str, packed_fmt: PackedFormat + ) -> tuple[cmd_args, cmd_len:int]: + # no cmd data + if not packed_fmt.format_str: + cmd_args = [] + else: + cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) + return cmd_args, packed_fmt.format_size - def parse_stream_DL(self, display_list_arr: Sequence, start_name: str): + def parse_stream_DL(self, start_name: str): """ Initialize vars and then parse data stream """ @@ -552,7 +712,7 @@ def parse_stream_DL(self, display_list_arr: Sequence, start_name: str): # merge all lights into single lights dictionary self.Lights.update(self.Light_t) self.Lights.update(self.Ambient_t) - self.parse_stream(display_list_arr, start_name) + self.parse_stream(self.get_new_stream(start_name), start_name) def gsSPEndDisplayList(self, macro: Macro): return self._break_parse @@ -579,9 +739,6 @@ def gsSPDisplayList(self, macro: Macro): self.parse_stream_from_start(NewDL, branched_dl) return self._continue_parse - def gsSPEndDisplayList(self, macro: Macro): - return self._break_parse - def gsSPVertex(self, macro: Macro): # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later if "+" in macro.args[0]: @@ -652,7 +809,7 @@ def gsSP1Triangle(self, macro: Macro): # The second is the material class def gsDPSetRenderMode(self, macro: Macro): self.NewMat = 1 - self.last_mat.RenderMode = [a.strip() for a in macro.args] + self.last_mat.RenderMode = macro.args return self._continue_parse # The highest numbered light is always the ambient light @@ -816,16 +973,22 @@ def gsSPFogPosition(self, macro: Macro): self.last_mat.fog_pos = macro.args return self._continue_parse + _unpack_cmd_gsDPSetBlendColor_bin = PackedFormat(">Bh4B") # pad pad rgba + def gsDPSetBlendColor(self, macro: Macro): self.NewMat = 1 self.last_mat.blend_color = macro.args return self._continue_parse + _unpack_cmd_gsDPSetPrimColor_bin = PackedFormat(">7B") # pad min_lod lod_frac rgba + def gsDPSetPrimColor(self, macro: Macro): self.NewMat = 1 self.last_mat.prim_color = macro.args return self._continue_parse + _unpack_cmd_gsDPSetEnvColor_bin = PackedFormat(">Bh4B") # pad pad rgba + def gsDPSetEnvColor(self, macro: Macro): self.NewMat = 1 self.last_mat.env_color = macro.args @@ -874,6 +1037,8 @@ def gsSPLoadGeometryMode(self, macro: Macro): self.last_mat.GeoClear = list(all_geos.difference(geo_set)) return self._continue_parse + # uses bitwise unpacking + def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 self.last_mat.Combiner = self.eval_set_combine_macro(macro.args) @@ -884,6 +1049,8 @@ def gsDPSetCombineLERP(self, macro: Macro): self.last_mat.Combiner = macro.args return self._continue_parse + _unpack_cmd_gsSPTexture_bin = PackedFormat(">2B2h") # pad tile en s_scale t_scale + # root tile, scale and set tex def gsSPTexture(self, macro: Macro): self.NewMat = 1 @@ -1054,25 +1221,6 @@ def gsDPLoadTextureBlock_4bs(self, macro: Macro): # gsDPLoadMultiBlock # gsDPLoadMultiBlockS - # syncs need no processing - def gsSPCullDisplayList(self, macro: Macro): - return self._continue_parse - - def gsDPPipeSync(self, macro: Macro): - return self._continue_parse - - def gsDPLoadSync(self, macro: Macro): - return self._continue_parse - - def gsDPTileSync(self, macro: Macro): - return self._continue_parse - - def gsDPFullSync(self, macro: Macro): - return self._continue_parse - - def gsDPNoOp(self, macro: Macro): - return self._continue_parse - def make_new_material(self): if self.NewMat: self.NewMat = 0 diff --git a/fast64_internal/sm64/sm64_geolayout_constants.py b/fast64_internal/sm64/sm64_geolayout_constants.py index f2874411c..408ab1577 100644 --- a/fast64_internal/sm64/sm64_geolayout_constants.py +++ b/fast64_internal/sm64/sm64_geolayout_constants.py @@ -32,6 +32,7 @@ GEO_SCALE = 0x1D GEO_START_W_RENDERAREA = 0x20 + startCommands = [GEO_START, GEO_START_W_SHADOW, GEO_START_W_RENDERAREA] nodeGroupCmds = [ diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 1e5adeffc..0665818da 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -71,6 +71,7 @@ gammaInverse, ) from .sm64_objects import enumEnvFX +from .sm64_utility import import_rom_checks from .sm64_constants import ( enumVersionDefs, enumLevelNames, @@ -141,10 +142,11 @@ def __init__( col: bpy.types.Collection, ): self.root = root - self.geo = geo.strip() + self.geo = geo self.num = num self.scene = scene self.props = scene.fast64.sm64.importer + self.col_file = None # Set level root as parent parentObject(levelRoot, root) # set default vars @@ -162,17 +164,14 @@ def add_warp(self, args: list[str], type: str): warp = self.root.warpNodes[0] warp.warpID = args[0] warp.destNode = args[3] - level = args[1].strip().replace("LEVEL_", "").lower() + level = get_level_name(args[1]).replace("LEVEL_", "").lower() + print(level) if level == "castle": level = "castle_inside" - if level.isdigit(): - level = LEVEL_ID_NUMBERS.get(eval(level)) - if not level: - level = "bob" warp.warpType = type warp.destLevelEnum = level warp.destArea = args[2] - chkpoint = args[-1].strip() + chkpoint = args[-1] # Sorry for the hex users here if "WARP_NO_CHECKPOINT" in chkpoint or int(chkpoint.isdigit() * chkpoint + "0") == 0: warp.warpFlagEnum = "WARP_NO_CHECKPOINT" @@ -195,8 +194,9 @@ def add_object(self, args: list[str]): pos = ( Vector(hexOrDecInt(arg) for arg in args[1:4]) / self.scene.fast64.sm64.blender_to_sm64_scale ) @ transform_mtx_blender_to_n64() - angle = Euler([math.radians(eval(a.strip())) for a in args[4:7]], "ZXY") + angle = Euler([math.radians(eval_or_int(a)) for a in args[4:7]], "ZXY") angle = rotate_quat_n64_to_blender(angle).to_euler("XYZ") + # print(pos, angle) self.objects.append(Object(args[0], pos, angle, *args[7:])) def place_objects(self, col_name: str = None, actor_models: dict[model_name, bpy.Types.Object] = None): @@ -237,7 +237,7 @@ def write_special_objects(self, special_objs: list[str], col: bpy.types.Collecti else: bpy_obj.sm64_special_enum = "Custom" bpy_obj.sm64_obj_preset = special[0] - loc = [eval(a.strip()) / self.scene.fast64.sm64.blender_to_sm64_scale for a in special[1:4]] + loc = [eval_or_int(a) / self.scene.fast64.sm64.blender_to_sm64_scale for a in special[1:4]] # rotate to fit sm64s axis bpy_obj.location = [loc[0], -loc[2], loc[1]] bpy_obj.rotation_euler[2] = hexOrDecInt(special[4]) @@ -245,7 +245,7 @@ def write_special_objects(self, special_objs: list[str], col: bpy.types.Collecti if special[5]: bpy_obj.sm64_obj_set_bparam = True bpy_obj.fast64.sm64.game_object.use_individual_params = False - bpy_obj.fast64.sm64.game_object.bparams = str(special[5]) + bpy_obj.fast64.sm64.game_object.bparams = special[5] self.placed_special_objects.append(bpy_obj) def place_object(self, object: Object, col: bpy.types.Collection): @@ -255,7 +255,7 @@ def place_object(self, object: Object, col: bpy.types.Collection): bpy_obj.name = "Object {} {}".format(object.behavior, object.model) bpy_obj.sm64_obj_type = "Object" bpy_obj.sm64_behaviour_enum = "Custom" - bpy_obj.sm64_obj_behaviour = object.behavior.strip() + bpy_obj.sm64_obj_behaviour = object.behavior.strip() if type(object.behavior) is str else hex(object.behavior) # change this to look at props version number? if hasattr(bpy_obj, "sm64_obj_bparam"): bpy_obj.sm64_obj_bparam = object.bparam @@ -267,7 +267,7 @@ def place_object(self, object: Object, col: bpy.types.Collection): # set act mask, !fix this for hacker versions mask = object.act_mask if type(mask) == str and mask.isdigit(): - mask = eval(mask) + mask = eval_or_int(mask) form = "sm64_obj_use_act{}" if mask == 31: for i in range(1, 7, 1): @@ -308,8 +308,133 @@ def link_bpy_obj_to_empty( class Level(DataParser): - def __init__(self, scripts: dict[str, list[str]], scene: bpy.types.Scene, root: bpy.types.Object): - self.scripts = scripts + # class data + _skippable_cmds = { + "LOAD_MARIO_HEAD", + "SET_REG", + "FIXED_LOAD", + "CMD3A", + "STOP_MUSIC", + "GAMMA", + "BLACKOUT", + "TRANSITION", + "NOP", + "CMD23", + "PUSH_POOL", + "POP_POOL", + "SLEEP", + "ROOMS", + "MARIO", + "INIT_LEVEL", + "ALLOC_LEVEL_POOL", + "FREE_LEVEL_POOL", + "CALL", + "CLEAR_LEVEL", + "SLEEP_BEFORE_EXIT", + "LOAD_AREA", + "UNLOAD_AREA", + "UNLOAD_MARIO_AREA", + # hacker only cmds with no support needed + "CHANGE_AREA_SKYBOX", + "SET_ECHO", + "LOAD_TITLE_SCREEN_BG", + "LOAD_GODDARD", + "LOAD_BEHAVIOR_DATA", + "LOAD_COMMON0", + "LOAD_GROUPB", + "LOAD_GROUPA", + "LOAD_EFFECTS", + "LOAD_SKYBOX", + "LOAD_TEXTURE_BIN", + "LOAD_LEVEL_DATA", + "LOAD_YAY0", + "LOAD_YAY0_TEXTURE", + "LOAD_VANILLA_OBJECTS", + "LOAD_RAW_WITH_CODE", + } + # MSB: (name, PackedFormat) + _lvl_cmds_bin_format = { + 0x0: ("EXECUTE", PackedFormat(">H3L", make_str=False)), # seg script_start script_end entry_ptr + 0x1: ("EXIT_AND_EXECUTE", PackedFormat(">H3L", make_str=False)), # seg script_start script_end entry_ptr + 0x2: ("EXIT", PackedFormat(">H")), # pad + 0x3: ("SLEEP", PackedFormat(">H")), # frames + 0x4: ("SLEEP_BEFORE_EXIT", PackedFormat(">H")), # frames + 0x5: ("JUMP", PackedFormat(">HL", (1,))), # pad script_ptr + 0x6: ("JUMP_LINK", PackedFormat(">HL", (1,))), # pad script_ptr + 0x7: ("RETURN", PackedFormat(">H")), # pad + 0x8: ( + "JUMP_LINK_PUSH_ARG", + PackedFormat(">H"), + ), # arg + 0x9: ("JUMP_N_TIMES", PackedFormat(">H")), # pad + 0xA: ("LOOP_BEGIN", PackedFormat(">H")), # pad + 0xB: ("LOOP_UNTIL", PackedFormat(">BBl")), # op pad arg + 0xC: ("JUMP_IF", PackedFormat(">BBlL", (3,), make_str=False)), # op pad arg script_ptr + 0xD: ("JUMP_LINK_IF", PackedFormat(">BBlL")), # op pad arg script_ptr + 0xE: ("SKIP_IF", PackedFormat(">BBl")), # op pad arg + 0xF: ("SKIP", PackedFormat(">H")), # pad + 0x10: ("SKIP_NOP", PackedFormat(">H")), # pad + 0x11: ("CALL", PackedFormat(">HL")), # arg script_ptr + 0x12: ("CALL_LOOP", PackedFormat(">HL", make_str=False)), # arg script_ptr + 0x13: ("SET_REG", PackedFormat(">H")), # value + 0x14: ("PUSH_POOL", PackedFormat(">H")), # pad + 0x15: ("POP_POOL", PackedFormat(">H")), # pad + 0x16: ("FIXED_LOAD", PackedFormat(">H3L")), # load_addr start_ptr end_ptr + 0x17: ("LOAD_RAW", PackedFormat(">H2L", make_str=False)), # seg start_ptr end_ptr + 0x18: ("LOAD_MIO0", PackedFormat(">H2L", make_str=False)), # seg start_ptr end_ptr + 0x19: ("LOAD_MARIO_HEAD", PackedFormat(">H")), # set head + 0x1A: ("LOAD_MIO0_TEXTURE", PackedFormat(">H2L", make_str=False)), # seg start_ptr end_ptr + 0x1B: ("INIT_LEVEL", PackedFormat(">H")), # pad + 0x1C: ("CLEAR_LEVEL", PackedFormat(">H")), # pad + 0x1D: ("ALLOC_LEVEL_POOL", PackedFormat(">H")), # pad + 0x1E: ("FREE_LEVEL_POOL", PackedFormat(">H")), # pad + 0x1F: ("AREA", PackedFormat(">2BL", (2,))), # index, pad, geo_ptr + 0x20: ("END_AREA", PackedFormat(">H")), # pad + 0x21: ("LOAD_MODEL_FROM_DL", PackedFormat(">Hl")), # model|layer dl_ptr + 0x22: ("LOAD_MODEL_FROM_GEO", PackedFormat(">HL", (1,))), # model geo_ptr + 0x23: ("CMD23", PackedFormat(">HLl")), # pad ptr unk + 0x24: ( + "OBJECT_WITH_ACTS", + PackedFormat(">2B6hLL", (9,), reorder=(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)), + ), # model posXYZ angleXYZ beh_param beh acts) # acts model posXYZ angleXYZ beh_param beh + 0x25: ("MARIO", PackedFormat(">BBlL")), # pad unk beh_param beh_ptr + 0x26: ("WARP_NODE", PackedFormat(">6B")), # id dest_level dest_area dest_node flags pad + 0x27: ("PAINTING_WARP_NODE", PackedFormat(">6B")), # id dest_level dest_area dest_node flags pad + 0x28: ("INSTANT_WARP", PackedFormat(">2B4h")), # index dest_area displaceXYZ pad + 0x29: ("LOAD_AREA", PackedFormat(">H")), # area + 0x2A: ("UNLOAD_AREA", PackedFormat(">H")), # area + 0x2B: ("MARIO_POS", PackedFormat(">BB4h")), # area pad yaw posXYZ + 0x2C: ("UNLOAD_MARIO_AREA", PackedFormat(">H")), # pad + 0x2D: "UPDATE_OBJECTS", + 0x2E: ("TERRAIN", PackedFormat(">HL", (1,))), # pad col_ptr + 0x2F: ("ROOMS", PackedFormat(">HL")), # pad rooms_ptr + 0x30: ("SHOW_DIALOG", PackedFormat(">BB")), # index dialog_id + 0x31: ("TERRAIN_TYPE", PackedFormat(">H")), # terrain type + 0x32: ("NOP", PackedFormat(">H")), # pad + 0x33: ("TRANSITION", PackedFormat(">6B")), # trans_type time rgb_col pad + 0x34: ("BLACKOUT", PackedFormat(">BB")), # enable pad + 0x35: ("GAMMA", PackedFormat(">BB")), # enable pad + 0x36: ("SET_BACKGROUND_MUSIC", PackedFormat(">3H")), # preset seq pad + 0x37: ("SET_MENU_MUSIC", PackedFormat(">H")), # seq + 0x38: ("STOP_MUSIC", PackedFormat(">H")), # fade_time + 0x39: ("MACRO_OBJECTS", PackedFormat(">HL", (1,))), # pad object_list_ptr + 0x3A: ("CMD3A", PackedFormat(">5H")), # 5 pads + 0x3B: ("WHIRLPOOL", PackedFormat(">2B3hH")), # index condition posXYZ strength + 0x3C: ("GET_OR_SET", PackedFormat(">BB")), # op var + # these are hacker cmds only + 0x3D: "PUPPYVOLUME", + 0x3E: "CHANGE_AREA_SKYBOX", + 0x3F: "SET_ECHO", + } + + def __init__( + self, + scripts: dict[str, list[str]], + scene: bpy.types.Scene, + root: bpy.types.Object, + parse_target: int = DataParser._c_parsing, + ): + self.scripts = scripts # for binary, this will be empty self.scene = scene self.props = scene.fast64.sm64.importer self.areas: dict[area_index:int, Area] = {} @@ -317,70 +442,161 @@ def __init__(self, scripts: dict[str, list[str]], scene: bpy.types.Scene, root: self.root = root self.loaded_geos: dict[model_name:str, geo_name:str] = dict() self.loaded_dls: dict[model_name:str, dl_name:str] = dict() - super().__init__() + self.banks = get_bank_loads(reset=True) + super().__init__(parse_target=parse_target) + # parsing funcs, see utility_importer for how parsing works def parse_level_script(self, entry: str, col: bpy.types.Collection = None): - script_stream = self.scripts[entry] - scale = self.scene.fast64.sm64.blender_to_sm64_scale if not col: col = self.scene.collection + script_stream = self.get_new_stream(entry) self.parse_stream_from_start(script_stream, entry, col) - return self.areas - def AREA(self, macro: Macro, col: bpy.types.Collection): - area_root = bpy.data.objects.new("Empty", None) - if self.props.use_collection: - area_col = bpy.data.collections.new(f"{self.props.level_name} area {macro.args[0]}") - col.children.link(area_col) + def get_new_stream(self, entry: Union[str, int]) -> Union[Sequence, None]: + if type(entry) is str: + return self.scripts[entry] else: - area_col = col - area_col.objects.link(area_root) - area_root.name = f"{self.props.level_name} Area Root {macro.args[0]}" - self.areas[macro.args[0]] = Area(area_root, macro.args[1], self.root, int(macro.args[0]), self.scene, area_col) - self.cur_area = macro.args[0] - return self._continue_parse + return None - def END_AREA(self, macro: Macro, col: bpy.types.Collection): - self.cur_area = None - return self._continue_parse + """ + binary parsing funcs: + * run parse_stream_from_start(dat_stream, entry, *args) w/ dat_stream = None, entry = rom_ptr: int + * binary_cmd_get(parser) -> cmd_name and cmd_format, update parser.head manually to advanced num bytes read + * binary_cmd_unpack/f"_decode_cmd_{cmd_name.lower()}_bin"(parser, PackedFormat) -> cmd_args + * parser head is advanced the length of PackedFormat! Make sure all bytes are read, even padding + * call Macro function + """ - # Jumps are only taken if they're in the script.c file for now - # continues script - def JUMP_LINK(self, macro: Macro, col: bpy.types.Collection): - if self.scripts.get(macro.args[0]): - self.parse_level_script(macro.args[0], col=col) + def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: + cmd_type = self.unpack_type(parser.cur_stream, parser.head, ">B", make_str=False) + cmd_name, packed_fmt = self._lvl_cmds_bin_format.get(cmd_type) + # update head to go past cmd type and cmd length bytes + parser.advance_head(2) + return cmd_name, packed_fmt + + def load_segment_two(self, bin_file: BinaryIO): + start = self.unpack_type(bin_file, 0x3AC2, ">H", make_str=False) << 16 + start += self.unpack_type(bin_file, 0x3ACE, ">H", make_str=False) + end = self.unpack_type(bin_file, 0x3AC6, ">H", make_str=False) << 16 + end += self.unpack_type(bin_file, 0x3ACA, ">H", make_str=False) + # mio0 for seg2 just happens to expand start by 0x3156 idk how it really works + self.banks.tlb[2] = [start + 0x3156, end + 0x3156] + + # macro parsing funcs + # jump to new script, goes back via EXIT, not RETURN + # shouldn't matter though as long as game follows its own rules, can use normal recursion + def EXECUTE(self, macro: Macro, col: bpy.types.Collection): + self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) + if type(macro.args[-1]) is int: + macro.args[-1] = self.seg2phys(macro.args[-1]) + if macro.args[-1]: + self.parse_level_script(macro.args[-1], col=col) return self._continue_parse - # ends script - def JUMP(self, macro: Macro, col: bpy.types.Collection): - new_entry = self.scripts.get(macro.args[-1]) - if new_entry: + def EXIT_AND_EXECUTE(self, macro: Macro, col: bpy.types.Collection): + self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) + if type(macro.args[-1]) is int: + macro.args[-1] = self.seg2phys(macro.args[-1]) + if macro.args[-1]: self.parse_level_script(macro.args[-1], col=col) return self._break_parse + # hackersm64 alias of EXECUTE + def EXECUTE_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): + return self.EXECUTE(macro, col) + + # hackersm64 alias of EXIT_AND_EXECUTE + def EXIT_AND_EXECUTE_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): + return self.EXIT_AND_EXECUTE(macro, col) + def EXIT(self, macro: Macro, col: bpy.types.Collection): return self._break_parse + # ends script + def JUMP(self, macro: Macro, col: bpy.types.Collection): + if macro.args[-1]: + self.parse_level_script(macro.args[-1], col=col) + return self._break_parse + + # Jumps are only taken if they're in the script.c file for now + # continues script + def JUMP_LINK(self, macro: Macro, col: bpy.types.Collection): + if macro.args[-1]: + self.parse_level_script(macro.args[-1], col=col) + return self._continue_parse + def RETURN(self, macro: Macro, col: bpy.types.Collection): return self._break_parse - # Now deal with data cmds rather than flow control ones - def WARP_NODE(self, macro: Macro, col: bpy.types.Collection): - self.areas[self.cur_area].add_warp(macro.args, "Warp") + # only used once, don't need to process + def LOOP_BEGIN(self, macro: Macro, col: bpy.types.Collection): return self._continue_parse - def PAINTING_WARP_NODE(self, macro: Macro, col: bpy.types.Collection): - self.areas[self.cur_area].add_warp(macro.args, "Painting") + # only used once, signals end of script parsing because script will repeat until game over + def LOOP_UNTIL(self, macro: Macro, col: bpy.types.Collection): + return self._exit_parse + + # this is where we jump to our level specific script, only necessary in binary processing + def JUMP_IF(self, macro: Macro, col: bpy.types.Collection): + target_level = get_level_name(macro.args[-2]) + if macro.args[0] in {"OP_EQ", 2} and target_level == self.props.level_name: + if macro.args[-1]: + # reset areas so file select area isn't written out + self.areas = dict() + self.cur_area = None + self.parse_level_script(macro.args[-1], col=col) return self._continue_parse - def INSTANT_WARP(self, macro: Macro, col: bpy.types.Collection): - self.areas[self.cur_area].add_instant_warp(macro.args) + # used to run the, execute_level_script func, e.g. start the level + # will represent the end of parsing, check for specific func + def CALL_LOOP(self, macro: Macro, col: bpy.types.Collection): + if macro.args[-1] == 0x8024BCD8: + return self._exit_parse + else: + return self._continue_parse + + # use group mapping to set groups eventually + def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): + self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) + return self._continue_parse + + def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): + self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) + return self._continue_parse + + def LOAD_MIO0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): + self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) + return self._continue_parse + + def AREA(self, macro: Macro, col: bpy.types.Collection): + area_root = bpy.data.objects.new("Empty", None) + if self.props.use_collection: + area_col = bpy.data.collections.new(f"{self.props.level_name} area {macro.args[0]}") + col.children.link(area_col) + else: + area_col = col + area_col.objects.link(area_root) + area_root.name = f"{self.props.level_name} Area Root {macro.args[0]}" + self.areas[macro.args[0]] = Area(area_root, macro.args[-1], self.root, int(macro.args[0]), self.scene, area_col) + self.cur_area = macro.args[0] + return self._continue_parse + + def END_AREA(self, macro: Macro, col: bpy.types.Collection): + self.cur_area = None + return self._continue_parse + + def LOAD_MODEL_FROM_DL(self, macro: Macro, col: bpy.types.Collection): + self.loaded_dls[macro.args[0]] = macro.args[1] + return self._continue_parse + + def LOAD_MODEL_FROM_GEO(self, macro: Macro, col: bpy.types.Collection): + self.loaded_geos[macro.args[0]] = macro.args[1] return self._continue_parse def OBJECT_WITH_ACTS(self, macro: Macro, col: bpy.types.Collection): # convert act mask from ORs of act names to a number mask = macro.args[-1] - if not mask.isdigit(): + if type(mask) is str and not mask.isdigit(): mask = mask.replace("ACT_", "") mask = mask.split("|") # Attempt for safety I guess @@ -394,13 +610,39 @@ def OBJECT_WITH_ACTS(self, macro: Macro, col: bpy.types.Collection): self.areas[self.cur_area].add_object([*macro.args[:-1], mask]) return self._continue_parse + # alias of object with acts, no bin decode def OBJECT(self, macro: Macro, col: bpy.types.Collection): # Only difference is act mask, which I set to 31 to mean all acts self.areas[self.cur_area].add_object([*macro.args, 31]) return self._continue_parse + def WARP_NODE(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].add_warp(macro.args, "Warp") + return self._continue_parse + + def PAINTING_WARP_NODE(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].add_warp(macro.args, "Painting") + return self._continue_parse + + def INSTANT_WARP(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].add_instant_warp(macro.args) + return self._continue_parse + + def MARIO_POS(self, macro: Macro, col: bpy.types.Collection): + return self._continue_parse + + def TERRAIN(self, macro: Macro, col: bpy.types.Collection): + self.areas[self.cur_area].terrain = macro.args[-1] + return self._continue_parse + + def SHOW_DIALOG(self, macro: Macro, col: bpy.types.Collection): + root = self.areas[self.cur_area].root + root.showStartDialog = True + root.startDialog = macro.args[1] + return self._continue_parse + def TERRAIN_TYPE(self, macro: Macro, col: bpy.types.Collection): - if not macro.args[0].isdigit(): + if type(macro.args[0]) is str and not macro.args[0].isdigit(): self.areas[self.cur_area].root.terrainEnum = macro.args[0] else: terrains = { @@ -414,33 +656,29 @@ def TERRAIN_TYPE(self, macro: Macro, col: bpy.types.Collection): 7: "TERRAIN_MASK", } try: - num = eval(macro.args[0]) + num = eval_or_int(macro.args[0]) self.areas[self.cur_area].root.terrainEnum = terrains.get(num) except: print("could not set terrain") return self._continue_parse - def SHOW_DIALOG(self, macro: Macro, col: bpy.types.Collection): - root = self.areas[self.cur_area].root - root.showStartDialog = True - root.startDialog = macro.args[1] - return self._continue_parse - - def TERRAIN(self, macro: Macro, col: bpy.types.Collection): - self.areas[self.cur_area].terrain = macro.args[0] - return self._continue_parse - def SET_BACKGROUND_MUSIC(self, macro: Macro, col: bpy.types.Collection): return self.generic_music(macro, col) + # alias of set menu music def SET_MENU_MUSIC_WITH_REVERB(self, macro: Macro, col: bpy.types.Collection): - return self.generic_music(macro, col) + return self.SET_MENU_MUSIC(macro, col) + # alias of set bg music def SET_BACKGROUND_MUSIC_WITH_REVERB(self, macro: Macro, col: bpy.types.Collection): return self.generic_music(macro, col) + # woops no area root def SET_MENU_MUSIC(self, macro: Macro, col: bpy.types.Collection): - return self.generic_music(macro, col) + # root = self.areas[self.cur_area].root + # root.musicSeqEnum = "Custom" + # root.music_seq = macro.args[0] + return self._continue_parse def generic_music(self, macro: Macro, col: bpy.types.Collection): root = self.areas[self.cur_area].root @@ -449,43 +687,23 @@ def generic_music(self, macro: Macro, col: bpy.types.Collection): return self._continue_parse # Don't support these for now + def MACRO_OBJECTS(self, macro: Macro, col: bpy.types.Collection): return self._continue_parse def WHIRLPOOL(self, macro: Macro, col: bpy.types.Collection): return self._continue_parse - def SET_ECHO(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def MARIO_POS(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def SET_REG(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - def GET_OR_SET(self, macro: Macro, col: bpy.types.Collection): return self._continue_parse - def CHANGE_AREA_SKYBOX(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - # Don't support for now but maybe later + # unused cmds, if someone put one in somehow would mess up flow def JUMP_LINK_PUSH_ARG(self, macro: Macro, col: bpy.types.Collection): raise Exception("no support yet woops") def JUMP_N_TIMES(self, macro: Macro, col: bpy.types.Collection): raise Exception("no support yet woops") - def LOOP_BEGIN(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - - def LOOP_UNTIL(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - - def JUMP_IF(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - def JUMP_LINK_IF(self, macro: Macro, col: bpy.types.Collection): raise Exception("no support yet woops") @@ -498,152 +716,6 @@ def SKIP(self, macro: Macro, col: bpy.types.Collection): def SKIP_NOP(self, macro: Macro, col: bpy.types.Collection): raise Exception("no support yet woops") - def LOAD_AREA(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - - def UNLOAD_AREA(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - - def UNLOAD_MARIO_AREA(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - - def UNLOAD_AREA(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - - # use group mapping to set groups eventually - def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_MIO0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_TITLE_SCREEN_BG(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_GODDARD(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_BEHAVIOR_DATA(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_COMMON0(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_GROUPB(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_GROUPA(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_EFFECTS(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_SKYBOX(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_TEXTURE_BIN(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_LEVEL_DATA(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_YAY0(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_YAY0_TEXTURE(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_VANILLA_OBJECTS(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_RAW_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_MARIO_HEAD(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def LOAD_MODEL_FROM_GEO(self, macro: Macro, col: bpy.types.Collection): - self.loaded_geos[macro.args[0]] = macro.args[1] - return self._continue_parse - - def LOAD_MODEL_FROM_DL(self, macro: Macro, col: bpy.types.Collection): - self.loaded_dls[macro.args[0]] = macro.args[1] - return self._continue_parse - - # throw exception saying I cannot process - def EXECUTE(self, macro: Macro, col: bpy.types.Collection): - raise Exception("Processing of EXECUTE macro is not currently supported") - - def EXIT_AND_EXECUTE(self, macro: Macro, col: bpy.types.Collection): - raise Exception("Processing of EXIT_AND_EXECUTE macro is not currently supported") - - def EXECUTE_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): - raise Exception("Processing of EXECUTE_WITH_CODE macro is not currently supported") - - def EXIT_AND_EXECUTE_WITH_CODE(self, macro: Macro, col: bpy.types.Collection): - raise Exception("Processing of EXIT_AND_EXECUTE_WITH_CODE macro is not currently supported") - - # not useful for bpy, dummy these script cmds - def CMD3A(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def STOP_MUSIC(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def GAMMA(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def BLACKOUT(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def TRANSITION(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def NOP(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def CMD23(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def PUSH_POOL(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def POP_POOL(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def SLEEP(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def ROOMS(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def MARIO(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def INIT_LEVEL(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def ALLOC_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def FREE_LEVEL_POOL(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def CALL(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def CALL_LOOP(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def CLEAR_LEVEL(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - - def SLEEP_BEFORE_EXIT(self, macro: Macro, col: bpy.types.Collection): - return self._continue_parse - @dataclass class ColTri: @@ -654,7 +726,7 @@ class ColTri: class Collision(DataParser): def __init__(self, collision: list[str], scale: float): - self.collision = collision + self.collision = collision # will be none in binary self.scale = scale self.vertices = [] # key=type,value=tri data @@ -676,11 +748,11 @@ def write_water_boxes( parentObject(parent, Obj) Obj.name = "WaterBox_{}_{}".format(name, i) Obj.sm64_obj_type = "Water Box" - x1 = eval(w[1]) / (self.scale) - x2 = eval(w[3]) / (self.scale) - z1 = eval(w[2]) / (self.scale) - z2 = eval(w[4]) / (self.scale) - y = eval(w[5]) / (self.scale) + x1 = eval_or_int(w[1]) / (self.scale) + x2 = eval_or_int(w[3]) / (self.scale) + z1 = eval_or_int(w[2]) / (self.scale) + z2 = eval_or_int(w[4]) / (self.scale) + y = eval_or_int(w[5]) / (self.scale) Xwidth = abs(x2 - x1) / (2) Zwidth = abs(z2 - z1) / (2) loc = [x2 - Xwidth, -(z2 - Zwidth), y - 1] @@ -695,6 +767,7 @@ def write_collision( col = scene.collection self.write_water_boxes(scene, parent, name, col) mesh = bpy.data.meshes.new(f"{name} data") + print(len(self.vertices), len(self.tris)) mesh.from_pydata(self.vertices, [], [tri.verts for tri in self.tris]) obj = bpy.data.objects.new(f"{name} mesh", mesh) col.objects.link(obj) @@ -719,7 +792,7 @@ def write_collision( mat.f3d_mat.default_light_color = [a / 255 for a in (hash(id(int(i))) & 0xFFFFFFFF).to_bytes(4, "big")] if col_tri.special_param is not None: mat.use_collision_param = True - mat.collision_param = str(col_tri.special_param) + mat.collision_param = col_tri.special_param # I don't think I care about this. It makes program slow # with bpy.context.temp_override(material=mat): # bpy.ops.material.update_f3d_nodes() @@ -729,8 +802,103 @@ def write_collision( def parse_collision(self): self.parse_stream(self.collision, 0) + def parse_collision_binary(self, bin_file: BinaryIO, entry_id: int): + # can't use the generic parser since this uses a cmd_len -> dat array format + self.parsed_streams[entry_id] = (parser := Parser(bin_file)) + parser.head = entry_id + cmd_name = self.binary_cmd_get(parser) + if cmd_name == "COL_INIT": + self.parse_vertices(parser) + else: + raise Exception("Collision init not detected at col start") + self.parse_triangles(parser) + while True: + cmd_name = self.binary_cmd_get(parser) + if cmd_name == "COL_END": + return + elif cmd_name == "COL_WATER_BOX_INIT": + self.parse_water_boxes(parser) + elif cmd_name == "COL_SPECIAL_INIT": + self.parse_special_objects(parser) + else: + raise Exception("Unhandled collision type") + + def parse_special_objects(self, parser: Parser): + # parsing this requires knowing all the special object presets, will get to later + obj_nm = self.unpack_type(parser.cur_stream, parser.head, ">H", make_str=False) + parser.advance_head(2) + raise ParseException() + # for i in range(obj_nm): + # args = self.unpack_type(parser.cur_stream, parser.head, ">h5H") + # parser.advance_head(12) + # self.COL_VERTEX(Macro("COL_WATER_BOX", args)) + + def parse_water_boxes(self, parser: Parser): + box_num = self.unpack_type(parser.cur_stream, parser.head, ">H", make_str=False) + parser.advance_head(2) + for i in range(box_num): + args = self.unpack_type(parser.cur_stream, parser.head, ">h5H", make_str=False) + parser.advance_head(12) + self.COL_WATER_BOX(Macro("COL_WATER_BOX", args)) + + def parse_vertices(self, parser: Parser): + vtx_num = self.unpack_type(parser.cur_stream, parser.head, ">H", make_str=False) + parser.advance_head(2) + for i in range(vtx_num): + args = self.unpack_type(parser.cur_stream, parser.head, ">3h", make_str=False) + parser.advance_head(6) + self.COL_VERTEX(Macro("COL_VERTEX", args)) + + def parse_triangles(self, parser: Parser): + while True: + surf_type, tri_num = self.unpack_type(parser.cur_stream, parser.head, ">2H", make_str=False) + # COL_TRI_STOP + if surf_type == 0x41: + parser.advance_head(2) + return + self.type = hex(surf_type) + parser.advance_head(4) + # special col types in vanilla + if self.type in {0xE, 0x24, 0x25, 0x27, 0x2C, 0x2D}: + cmd_len = 4 + cmd_suffix = "_SPECIAL" + else: + cmd_len = 3 + cmd_suffix = "" + for i in range(tri_num): + args = self.unpack_type(parser.cur_stream, parser.head, f">{cmd_len}H", make_str=False) + parser.advance_head(cmd_len * 2) + func = getattr(self, f"COL_TRI{cmd_suffix}") + func(Macro(f"COL_TRI{cmd_suffix}", args)) + + # MSB is cmd type, use cmd type to execute class specific logic for length + # default is 2nd MSB is length, used in level scripts and geo layouts + def binary_cmd_get(self, parser: Parser) -> tuple[int, int]: + cmd_type = self.unpack_type(parser.cur_stream, parser.head, ">H", make_str=False) + cmd_name = self.get_cmd_name(cmd_type) + parser.advance_head(2) + return cmd_name + + def get_cmd_name(self, cmd_type): + col_cmds = { + 0x0040: "COL_INIT", + 0x0041: "COL_TRI_STOP", + 0x0042: "COL_END", + 0x0043: "COL_SPECIAL_INIT", + 0x0044: "COL_WATER_BOX_INIT", + } + return col_cmds.get(cmd_type) + + _skippable_cmds = { + "COL_WATER_BOX_INIT", + "COL_INIT", + "COL_VERTEX_INIT", + "COL_SPECIAL_INIT", + "COL_TRI_STOP", + } + def COL_VERTEX(self, macro: Macro): - self.vertices.append([eval(v) / self.scale for v in macro.args]) + self.vertices.append([eval_or_int(v) / self.scale for v in macro.args]) return self._continue_parse def COL_TRI_INIT(self, macro: Macro): @@ -738,15 +906,19 @@ def COL_TRI_INIT(self, macro: Macro): return self._continue_parse def COL_TRI(self, macro: Macro): - self.tris.append(ColTri(self.type, [eval(a) for a in macro.args])) + self.tris.append(ColTri(self.type, [eval_or_int(a) for a in macro.args])) return self._continue_parse def COL_TRI_SPECIAL(self, macro: Macro): - self.tris.append(ColTri(self.type, [eval(a) for a in macro.args[0:3]], special_param=eval(macro.args[3]))) + self.tris.append( + ColTri(self.type, [eval_or_int(a) for a in macro.args[0:3]], special_param=eval_or_int(macro.args[3])) + ) return self._continue_parse + def COL_END(self, macro: Macro): + return self._break_parse + def COL_WATER_BOX(self, macro: Macro): - # id, x1, z1, x2, z2, y self.water_boxes.append(macro.args) return self._continue_parse @@ -763,25 +935,6 @@ def SPECIAL_OBJECT_WITH_YAW_AND_PARAM(self, macro: Macro): self.special_objects.append(macro.args) return self._continue_parse - # don't do anything to bpy - def COL_WATER_BOX_INIT(self, macro: Macro): - return self._continue_parse - - def COL_INIT(self, macro: Macro): - return self._continue_parse - - def COL_VERTEX_INIT(self, macro: Macro): - return self._continue_parse - - def COL_SPECIAL_INIT(self, macro: Macro): - return self._continue_parse - - def COL_TRI_STOP(self, macro: Macro): - return self._continue_parse - - def COL_END(self, macro: Macro): - return self._continue_parse - class SM64_Material(Mat): def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): @@ -868,10 +1021,10 @@ def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path) class SM64_F3D(DL): - def __init__(self, scene): + def __init__(self, scene, parse_target: int = DataParser._c_parsing): self.scene = scene self.props = scene.fast64.sm64.importer - super().__init__(lastmat=SM64_Material()) + super().__init__(lastmat=SM64_Material(), parse_target=parse_target) # Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file # this will add all the textures located in the /textures/ folder in decomp @@ -912,9 +1065,6 @@ def get_generic_textures(self, root_path: Path): # recursively parse the display list in order to return a bunch of model data def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, layer: int = None): - DL = self.Gfx.get(start) - if not DL: - raise Exception("Could not find DL {}".format(start)) # inherit the mat based on the layer, or explicitly given one if last_mat: self.last_mat = last_mat @@ -924,7 +1074,7 @@ def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, la self.last_mat = last_mat else: self.last_mat = SM64_Material() - self.parse_stream_DL(DL, start) + self.parse_stream_DL(start) self.NewMat = 0 self.StartName = start return [self.Verts, self.Tris] @@ -932,7 +1082,7 @@ def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, la # turn member of vtx str arr into vtx args def parse_vert(self, Vert: str): v = Vert.replace("{", "").replace("}", "").split(",") - num = lambda x: [eval(a) for a in x] + num = lambda x: [eval_or_int(a) for a in x] pos = num(v[:3]) uv = num(v[4:6]) vc = num(v[6:10]) @@ -1039,6 +1189,7 @@ class ModelDat: # base class for geo layouts and armatures class GraphNodes(DataParser): + # class data _skipped_geo_asm_funcs = { "geo_movtex_pause_control", "geo_movtex_draw_water_regions", @@ -1046,6 +1197,78 @@ class GraphNodes(DataParser): "geo_movtex_update_horizontal", "geo_cannon_circle_base", "geo_envfx_main", + "2150433248" # geo_movtex_pause_control + "2150436940" # geo_movtex_draw_water_regions + "2150064592", # geo_envfx_main + } + _skippable_cmds = { + "GEO_NOP_1A", + "GEO_NOP_1E", + "GEO_NOP_1F", + "GEO_NODE_START", + "GEO_NODE_SCREEN_AREA", + "GEO_ZBUFFER", + "GEO_RENDER_OBJ", + } + + # geo layouts use first byte to determine if a DL is added + @staticmethod + def cmd_rm_dl(format_data, cmd_bytes): + if (cmd_bytes[1] & 0x80) != 0x80: + format_data = format_data[:-1] + return format_data + + # only used for cmd 0xA + @staticmethod + def cmd_rm_func(format_data, cmd_bytes): + if cmd_bytes[1] != 1: + format_data = format_data[:-1] + return format_data + + # for binary importing, MSB, name, PackedFormat + _geo_cmds_bin_format = { + 0x00: ("GEO_BRANCH_AND_LINK", PackedFormat(">BhL", (2,))), + 0x01: ("GEO_END", PackedFormat(">Bh")), + 0x02: ("GEO_BRANCH", PackedFormat(">BhL", (2,))), + 0x03: ("GEO_RETURN", PackedFormat(">Bh")), + 0x04: ("GEO_OPEN_NODE", PackedFormat(">Bh")), + 0x05: ("GEO_CLOSE_NODE", PackedFormat(">Bh")), + 0x06: ("GEO_ASSIGN_AS_VIEW", PackedFormat(">h")), + 0x07: ("GEO_UPDATE_NODE_FLAGS", PackedFormat(">Bh")), + 0x08: ("GEO_NODE_SCREEN_AREA", PackedFormat(">B5h")), + 0x09: ("GEO_NODE_ORTHO", PackedFormat(">Bh")), + 0x0A: ("GEO_CAMERA_FRUSTUM", PackedFormat(f">B3hL", tuple(), lambda x, y: GraphNodes.cmd_rm_func(x, y))), + 0x0B: ("GEO_START", PackedFormat(">Bh")), + 0x0C: ("GEO_ZBUFFER", PackedFormat(">Bh")), + 0x0D: ("GEO_RENDER_RANGE", PackedFormat(">B3h")), + 0x0E: ("GEO_SWITCH_CASE", PackedFormat(">BhL")), + 0x0F: ("GEO_CAMERA", PackedFormat(">B7hL")), + 0x10: ( + "GEO_TRANSLATE_ROTATE", + PackedFormat(">B"), + ), # use a specific function to decode this one, format in dict is dummy + 0x11: ( + "GEO_TRANSLATE_NODE_BIN", + PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y)), + ), + 0x12: ( + "GEO_ROTATION_NODE_BIN", + PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y)), + ), + 0x13: ("GEO_ANIMATED_PART", PackedFormat(f">B3hL", (4,))), + 0x14: ("GEO_BILLBOARD_BIN", PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y))), + 0x15: ("GEO_DISPLAY_LIST", PackedFormat(">BhL", (2,))), + 0x16: ("GEO_SHADOW", PackedFormat(">B3h")), + 0x17: ("GEO_RENDER_OBJ", PackedFormat(">Bh")), + 0x18: ("GEO_ASM", PackedFormat(">BhL")), + 0x19: ("GEO_BACKGROUND_BIN", PackedFormat(">BhL")), + 0x1A: ("GEO_NOP", PackedFormat(">B3h")), + 0x1B: ("GEO_COPY_VIEW", PackedFormat(">Bh")), + 0x1C: ("GEO_HELD_OBJECT", PackedFormat(">B3hL")), + 0x1D: ("GEO_SCALE", PackedFormat(f">BhlL", (3,), lambda x, y: GraphNodes.cmd_rm_dl(x, y))), + 0x1E: ("GEO_NOP", PackedFormat(">B3h")), + 0x1F: ("GEO_NOP", PackedFormat(">B7h")), + 0x20: ("GEO_CULLING_RADIUS", PackedFormat(">Bh")), } def __init__( @@ -1057,12 +1280,14 @@ def __init__( parent_bone: bpy.types.Bone = None, geo_parent: GeoArmature = None, stream: list[Any] = None, + parse_target: int = DataParser._c_parsing, ): self.geo_layouts = geo_layouts self.models = [] self.children = [] self.scene = scene self.props = scene.fast64.sm64.importer + self.banks = get_bank_loads() if not stream: stream = list() self.stream = stream @@ -1070,7 +1295,7 @@ def __init__( self.last_transform = transform_mtx_blender_to_n64().inverted() self.name = name self.col = col - super().__init__(parent=geo_parent) + super().__init__(parent=geo_parent, parse_target=parse_target) # pick the right subclass given contents of geo layout @staticmethod @@ -1079,6 +1304,7 @@ def new_subclass_dyn( scene: bpy.types.Scene, layout_name: str, col: bpy.types.Collection = None, + parse_target: int = DataParser._c_parsing, ) -> Union[GeoLayout, GeoArmature]: geo_layout = geo_layout_dict.get(layout_name) if not geo_layout: @@ -1091,15 +1317,56 @@ def new_subclass_dyn( name = f"Actor {layout_name}" arm_obj = bpy.data.objects.new(name, bpy.data.armatures.new(name)) col.objects.link(arm_obj) - geo_armature = GeoArmature(geo_layout_dict, arm_obj, scene, layout_name, col) + geo_armature = GeoArmature(geo_layout_dict, arm_obj, scene, layout_name, col, parse_target=parse_target) geo_armature.parse_armature(layout_name, scene.fast64.sm64.importer) return geo_armature else: - geo_layout = GeoLayout(geo_layout_dict, None, scene, layout_name, None, col=col) + geo_layout = GeoLayout(geo_layout_dict, None, scene, layout_name, None, col=col, parse_target=parse_target) geo_layout.parse_level_geo(layout_name) return geo_layout - def parse_layer(self, layer: str): + # parsing funcs + def parse_geo_from_start(self, entry: str, depth: int): + self.stream.append(entry) + script_stream = self.get_new_stream(entry) + self.parse_stream_from_start(script_stream, entry, depth) + + # if binary, entry is a int and self.scripts is None + def get_new_stream(self, entry: Union[str, int]) -> Union[Sequence, None]: + if type(entry) is str: + return self.geo_layouts[entry] + else: + return None + + """ + binary parsing funcs: + * run parse_stream_from_start(dat_stream, entry, *args) w/ dat_stream = None, entry = rom_ptr: int + * binary_cmd_get(parser) -> cmd_name and cmd_format, update parser.head manually to advanced num bytes read + * binary_cmd_unpack/f"_decode_cmd_{cmd_name.lower()}_bin"(parser, PackedFormat) -> cmd_args + * parser head is advanced the length of PackedFormat! Make sure all bytes are read, even padding + * call Macro function + """ + + def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: + cmd_type = self.unpack_type(parser.cur_stream, parser.head, ">B", make_str=False) + cmd_name, packed_cmd = self._geo_cmds_bin_format.get(cmd_type) + first_word = self.unpack_type(parser.cur_stream, parser.head, ">4B", make_str=False) + packed_cmd.edit_format(first_word) + parser.advance_head(1) + return cmd_name, packed_cmd + + def binary_cmd_unpack(self, parser: Parser, cmd_name: str, packed_fmt: PackedFormat) -> tuple[list, int]: + cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) + return cmd_args, packed_fmt.format_size + + def fix_bin_cmd_dls(self, macro: Macro) -> Macro: + if (macro.args[0] & 0x80) == 0x80: + return macro + else: + return macro.partial([*macro.args, "NULL"]) + + # macro parsing helpers + def parse_layer(self, layer: str) -> int: if not layer.isdigit(): layer = Layers.get(layer) if not layer: @@ -1107,11 +1374,11 @@ def parse_layer(self, layer: str): return layer @property - def ordered_name(self): + def ordered_name(self) -> str: return f"{self.get_parser(self.stream[-1]).head}_{self.name}" @property - def first_obj(self): + def first_obj(self) -> bpy.types.Object: if self.root: return self.root for model in self.models: @@ -1149,20 +1416,17 @@ def setup_geo_obj(self, *args): def add_model(self, *args): raise Exception("you must call this function from a sublcass") + # macro parsing def GEO_BRANCH_AND_LINK(self, macro: Macro, depth: int): - new_geo_layout = self.geo_layouts.get(macro.args[0]) - if new_geo_layout: - self.stream.append(macro.args[0]) - self.parse_stream_from_start(new_geo_layout, macro.args[0], depth) + if macro.args[-1]: + self.parse_geo_from_start(macro.args[-1], depth) return self._continue_parse def GEO_BRANCH(self, macro: Macro, depth: int): - new_geo_layout = self.geo_layouts.get(macro.args[1]) - if new_geo_layout: - self.stream.append(macro.args[1]) - self.parse_stream_from_start(new_geo_layout, macro.args[1], depth) + if macro.args[-1]: + self.parse_geo_from_start(macro.args[-1], depth) # arg 0 determines if you return and continue or end after the branch - if eval(macro.args[0]): + if eval_or_int(macro.args[0]): return self._continue_parse else: return self._break_parse @@ -1180,8 +1444,9 @@ def GEO_CLOSE_NODE(self, macro: Macro, depth: int): def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): # translation, rotation, layer, model + model = macro.args[-1] geo_obj = self.add_model( - ModelDat(self.parent_transform, *macro.args), "display_list", self.display_list, macro.args[0] + ModelDat(self.parent_transform, macro.args[0], model), "display_list", self.display_list, macro.args[1] ) self.set_transform(geo_obj, self.parent_transform) return self._continue_parse @@ -1214,6 +1479,9 @@ def GEO_BILLBOARD(self, macro: Macro, depth: int): self.setup_geo_obj("billboard", self.billboard, macro.args[0]) return self._continue_parse + def GEO_BILLBOARD_BIN(self, macro: Macro, depth: int): + return self.GEO_BILLBOARD_WITH_PARAMS_AND_DL(self.fix_bin_cmd_dls(macro), depths) + def GEO_ANIMATED_PART(self, macro: Macro, depth: int): # layer, translation, DL transform = Matrix() @@ -1230,6 +1498,9 @@ def GEO_ANIMATED_PART(self, macro: Macro, depth: int): self.set_transform(geo_obj, self.last_transform) return self._continue_parse + def GEO_ROTATION_NODE_BIN(self, macro: Macro, depth: int): + return self.GEO_ROTATE_WITH_DL(self.fix_bin_cmd_dls(macro), depth) + def GEO_ROTATION_NODE(self, macro: Macro, depth: int): geo_obj = self.GEO_ROTATE(macro, depth) if geo_obj: @@ -1259,6 +1530,32 @@ def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): self.set_transform(geo_obj, self.last_transform) return geo_obj + def _decode_cmd_geo_translate_rotate_bin(self, parser: Parser): + cmd_flags = self.unpack_type(parser.cur_stream, parser.head, ">B") + # translate rotate + if (cmd_flags & 0x30) == 0x00: + packed_fmt = PackedFormat(">B6h") + cmd_name = "GEO_TRANSLATE_ROTATE" + # translate + elif (cmd_flags & 0x10) == 0x10: + packed_fmt = PackedFormat(">B3h") + cmd_name = "GEO_TRANSLATE" + # rotate + elif (cmd_flags & 0x20) == 0x20: + packed_fmt = PackedFormat(">B3h") + cmd_name = "GEO_ROTATE" + # rotate_y + elif cmd_flags & 0x30: + packed_fmt = PackedFormat(">Bh") + cmd_name = "GEO_ROTATE_Y" + # has_dl + if (cmd_flags & 0x80) == 0x80: + packed_fmt.format_str += "L" + packed_fmt.ptr_indices = tuple(len(format_str - 1)) + cmd_name += "_WITH_DL" + cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt) + return cmd_name, cmd_args, packed_fmt + # Build a matrix that rotates around the z axis, then the x axis, then the y axis, and then translates and multiplies. def GEO_TRANSLATE_ROTATE_WITH_DL(self, macro: Macro, depth: int): transform = Matrix.LocRotScale( @@ -1316,46 +1613,25 @@ def GEO_TRANSLATE(self, macro: Macro, depth: int): self.set_geo_type(geo_obj, self.translate_rotate) return self._continue_parse + def GEO_TRANSLATE_NODE_BIN(self, macro: Macro, depth: int): + return self.GEO_TRANSLATE_NODE_WITH_DL(self.fix_bin_cmd_dls(macro), depth) + def GEO_TRANSLATE_NODE(self, macro: Macro, depth: int): transform = Matrix() transform.translation = self.get_translation(macro.args[1:4]) self.last_transform = self.parent_transform @ transform - geo_obj = self.setup_geo_obj("translate", self.translate, macro.args[0]) self.set_transform(geo_obj, self.last_transform) return geo_obj def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): - scale = eval(macro.args[1]) / 0x10000 + scale = eval_or_int(macro.args[1]) / 0x10000 self.last_transform = scale * self.last_transform - model = macro.args[-1] geo_obj = self.add_model(ModelDat(self.last_transform, macro.args[0], macro.args[-1])) self.set_transform(geo_obj, self.last_transform) return self._continue_parse - # these have no affect on the bpy - def GEO_NOP_1A(self, macro: Macro, depth: int): - return self._continue_parse - - def GEO_NOP_1E(self, macro: Macro, depth: int): - return self._continue_parse - - def GEO_NOP_1F(self, macro: Macro, depth: int): - return self._continue_parse - - def GEO_NODE_START(self, macro: Macro, depth: int): - return self._continue_parse - - def GEO_NODE_SCREEN_AREA(self, macro: Macro, depth: int): - return self._continue_parse - - def GEO_ZBUFFER(self, macro: Macro, depth: int): - return self._continue_parse - - def GEO_RENDER_OBJ(self, macro: Macro, depth: int): - return self._continue_parse - # This should probably do something but I haven't coded it in yet def GEO_COPY_VIEW(self, macro: Macro, depth: int): return self._continue_parse @@ -1394,7 +1670,7 @@ def GEO_SHADOW(self, macro: Macro, depth: int): def GEO_CAMERA(self, macro: Macro, depth: int): raise Exception("you must call this function from a sublcass") - def GEO_CAMERA_FRUSTRUM(self, macro: Macro, depth: int): + def GEO_CAMERA_FRUSTUM(self, macro: Macro, depth: int): raise Exception("you must call this function from a sublcass") def GEO_CAMERA_FRUSTUM_WITH_FUNC(self, macro: Macro, depth: int): @@ -1432,6 +1708,7 @@ def __init__( geo_parent: GeoLayout = None, stream: list[Any] = None, pass_args: dict = None, + parse_target: int = DataParser._c_parsing, ): self.parent = root self.area_root = area_root # for properties that can only be written to area @@ -1446,7 +1723,7 @@ def __init__( col = area_root.users_collection[0] else: col = col - super().__init__(geo_layouts, scene, name, col, geo_parent=geo_parent, stream=stream) + super().__init__(geo_layouts, scene, name, col, geo_parent=geo_parent, stream=stream, parse_target=parse_target) def set_transform(self, geo_obj: bpy.types.Object, transform: Matrix): if not geo_obj: @@ -1510,31 +1787,38 @@ def parse_level_geo(self, start: str): ), "pass_linked_export", ) - self.stream.append(start) - self.parse_stream_from_start(geo_layout, start, 0) + self.parse_geo_from_start(start, 0) def GEO_ASM(self, macro: Macro, depth: int): # envfx goes on the area root - if "geo_envfx_main" in macro.args[1]: - env_fx = macro.args[0] - if not env_fx or (env_fx == "ENVFX_MODE_NONE" and self.props.export_friendly): + func = macro.args[-1] + param = macro.args[-2] + if "geo_envfx_main" in func: + if not param or (param == "ENVFX_MODE_NONE" and self.props.export_friendly): return self._continue_parse - elif any(env_fx is enum_fx[0] for enum_fx in enumEnvFX): - self.area_root.envOption = env_fx + elif any(param is enum_fx[0] for enum_fx in enumEnvFX): + self.area_root.envOption = param else: self.area_root.envOption = "Custom" - self.area_root.envType = env_fx - if macro.args[1] in self._skipped_geo_asm_funcs and self.props.export_friendly: + self.area_root.envType = param + if func in self._skipped_geo_asm_funcs and self.props.export_friendly: return self._continue_parse geo_obj = self.setup_geo_obj("asm", self.asm) # probably will need to be overridden by each subclass asm = geo_obj.fast64.sm64.geo_asm - asm.param = macro.args[0] - asm.func = macro.args[1] + asm.param = param + asm.func = func return self._continue_parse + def GEO_SCALE_BIN(self, macro: Macro, depth: int): + macro = self.fix_bin_cmd_dls(macro) + if macro.args[-1] != "NULL": + return self.GEO_SCALE_WITH_DL(macro, depth) + else: + return self.GEO_SCALE(macro, depth) + def GEO_SCALE(self, macro: Macro, depth: int): - scale = eval(macro.args[1]) / 0x10000 + scale = eval_or_int(macro.args[1]) / 0x10000 geo_obj = self.setup_geo_obj("scale", self.scale, macro.args[0]) geo_obj.scale = (scale, scale, scale) return self._continue_parse @@ -1552,26 +1836,33 @@ def GEO_SHADOW(self, macro: Macro, depth: int): def GEO_SWITCH_CASE(self, macro: Macro, depth: int): geo_obj = self.setup_geo_obj("switch", self.switch) # probably will need to be overridden by each subclass - geo_obj.switchParam = eval(macro.args[0]) - geo_obj.switchFunc = macro.args[1] + geo_obj.switchParam = eval_or_int(macro.args[-2]) + geo_obj.switchFunc = macro.args[-1] return self._continue_parse # can only apply type to area root def GEO_CAMERA(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" - self.area_root.camType = macro.args[0] + self.area_root.camType = macro.args[-8] return self._continue_parse + def GEO_BACKGROUND_BIN(self, macro: Macro, depth: int): + if macro.args[-1] != 0: + self.GEO_BACKGROUND(macro.partial(*macro.args[1:]), depth) + else: + self.GEO_BACKGROUND_COLOR(macro.partial(*macro.args[1:]), depth) + def GEO_BACKGROUND(self, macro: Macro, depth: int): level_root = self.area_root.parent # check if in enum - skybox_name = macro.args[0].replace("BACKGROUND_", "") + background_id = macro.args[0] + skybox_name = background_id.replace("BACKGROUND_", "") bg_enums = {enum.identifier for enum in level_root.bl_rna.properties["background"].enum_items} if skybox_name in bg_enums: level_root.background = skybox_name else: level_root.background = "CUSTOM" - level_root.fast64.sm64.level.backgroundID = macro.args[0] + level_root.fast64.sm64.level.backgroundID = background_id # I don't have access to the bg segment, that is in level obj # level_root.fast64.sm64.level.backgroundSegment = "unavailable srry :(" print("background segment not set, left at default srry") @@ -1587,16 +1878,16 @@ def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): # can only apply to meshes def GEO_RENDER_RANGE(self, macro: Macro, depth: int): self.pass_args["render_range"] = [ - hexOrDecInt(range) / self.scene.fast64.sm64.blender_to_sm64_scale for range in macro.args + hexOrDecInt(rndr_range) / self.scene.fast64.sm64.blender_to_sm64_scale for rndr_range in macro.args[-2:] ] return self._continue_parse def GEO_CULLING_RADIUS(self, macro: Macro, depth: int): - self.pass_args["culling_radius"] = hexOrDecInt(macro.args[0]) / self.scene.fast64.sm64.blender_to_sm64_scale + self.pass_args["culling_radius"] = hexOrDecInt(macro.args[-1]) / self.scene.fast64.sm64.blender_to_sm64_scale return self._continue_parse # make better - def GEO_CAMERA_FRUSTRUM(self, macro: Macro, depth: int): + def GEO_CAMERA_FRUSTUM(self, macro: Macro, depth: int): self.area_root.camOption = "Custom" self.area_root.camType = macro.args[0] return self._continue_parse @@ -1632,7 +1923,7 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): pass_args=self.pass_args, ) GeoChild.parent_transform = self.last_transform - GeoChild.parse_stream(self.geo_layouts.get(self.stream[-1]), self.stream[-1], depth + 1) + GeoChild.parse_stream(self.get_new_stream(self.stream[-1]), self.stream[-1], depth + 1) self.children.append(GeoChild) return self._continue_parse @@ -1666,6 +1957,7 @@ def __init__( geo_parent: GeoArmature = None, switch_armatures: dict[int, bpy.types.Object] = None, stream: Any = None, + parse_target: int = DataParser._c_parsing, ): self.armature = armature_obj self.parent_bone = None if not parent_bone else parent_bone.name @@ -1678,7 +1970,7 @@ def __init__( self.switch_armatures = dict() else: self.switch_armatures = switch_armatures - super().__init__(geo_layouts, scene, name, col, geo_parent=geo_parent, stream=stream) + super().__init__(geo_layouts, scene, name, col, geo_parent=geo_parent, stream=stream, parse_target=parse_target) @property def first_obj(self): @@ -1792,29 +2084,28 @@ def parse_armature(self, start: str, props: SM64_ImportProperties): ) ) bpy.context.view_layer.objects.active = self.get_or_init_geo_armature() - self.stream.append(start) - self.parse_stream_from_start(geo_layout, start, 0) + self.parse_geo_from_start(start, 0) def GEO_ASM(self, macro: Macro, depth: int): geo_obj = self.setup_geo_obj("asm", self.asm) if not macro.args[0].isdigit(): print("could not convert geo asm arg") else: - geo_obj.func_param = int(macro.args[0]) - geo_obj.geo_func = macro.args[1] + geo_obj.func_param = int(macro.args[-2]) + geo_obj.geo_func = macro.args[-1] return self._continue_parse def GEO_SHADOW(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("shadow", self.shadow) - geo_bone.shadow_solidity = hexOrDecInt(macro.args[1]) / 255 - geo_bone.shadow_scale = hexOrDecInt(macro.args[2]) + geo_bone.shadow_solidity = hexOrDecInt(macro.args[-2]) / 255 + geo_bone.shadow_scale = hexOrDecInt(macro.args[-1]) return self._continue_parse # cmd not supported in fast64 for some reason? def GEO_RENDER_RANGE(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("render_range", self.custom) geo_bone.fast64.sm64.custom_geo_cmd_macro = "GEO_RENDER_RANGE" - geo_bone.fast64.sm64.custom_geo_cmd_args = ",".join(macro.args) + geo_bone.fast64.sm64.custom_geo_cmd_args = ",".join(macro.args[-2:]) return self._continue_parse # can switch children have their own culling radius? does it have to @@ -1822,23 +2113,30 @@ def GEO_RENDER_RANGE(self, macro: Macro, depth: int): def GEO_CULLING_RADIUS(self, macro: Macro, depth: int): geo_armature = self.get_or_init_geo_armature() geo_armature.use_render_area = True # cringe name, it is cull not render area - geo_armature.culling_radius = float(macro.args[0]) + geo_armature.culling_radius = float(macro.args[-1]) return self._continue_parse def GEO_SWITCH_CASE(self, macro: Macro, depth: int): geo_bone = self.setup_geo_obj("switch", self.switch) # probably will need to be overridden by each subclass - geo_bone.func_param = eval(macro.args[0]) - geo_bone.geo_func = macro.args[1] + geo_bone.func_param = eval_or_int(macro.args[-2]) + geo_bone.geo_func = macro.args[-1] return self._continue_parse + def GEO_SCALE_BIN(self, macro: Macro, depth: int): + macro = self.fix_bin_cmd_dls(macro) + if macro.args[-1] != "NULL": + return self.GEO_SCALE_WITH_DL(macro, depth) + else: + return self.GEO_SCALE(macro, depth) + def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): - scale = eval(macro.args[1]) / 0x10000 + scale = eval_or_int(macro.args[1]) / 0x10000 self.last_transform = [(0, 0, 0), self.last_transform[1]] model = macro.args[-1] geo_obj = self.add_model( - ModelDat((0, 0, 0), (0, 0, 0), macro.args[0], macro.args[-1], scale=scale), + ModelDat((0, 0, 0), (0, 0, 0), macro.args[0], model, scale=scale), "scale", self.scale, macro.args[0], @@ -1847,7 +2145,7 @@ def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): return self._continue_parse def GEO_SCALE(self, macro: Macro, depth: int): - scale = eval(macro.args[1]) / 0x10000 + scale = eval_or_int(macro.args[1]) / 0x10000 geo_bone = self.setup_geo_obj("scale", self.scale, macro.args[0]) geo_bone.geo_scale = scale @@ -1886,10 +2184,9 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): self.col, geo_parent=self, stream=self.stream, - # switch_armatures=self.switch_armatures, # I think double open node won't cause an issue here? ) GeoChild.parent_transform = self.last_transform - GeoChild.parse_stream(self.geo_layouts.get(self.stream[-1]), self.stream[-1], depth + 1) + GeoChild.parse_stream(self.get_new_stream(self.stream[-1]), self.stream[-1], depth + 1) self.children.append(GeoChild) return self._continue_parse @@ -1911,8 +2208,25 @@ def get_all_aggregates(aggregate_path: Path, filenames: tuple[callable], root_pa return caught_files -# given a path, get a level object by parsing the script.c file -def parse_level_script(script_files: list[Path], scene: bpy.types.Scene, col: bpy.types.Collection = None): +def get_level_name(level_arg: Union[int, str]) -> str: + if type(level_arg) is not str or level_arg.isdigit(): + level_arg = eval_or_int(level_arg) + print(level_arg, LEVEL_ID_NUMBERS.get(level_arg, level_arg)) + return LEVEL_ID_NUMBERS.get(level_arg) + else: + return level_arg + + +def get_and_check_rom(scene: bpy.types.Scene) -> filepathIO: + rom_path = Path(bpy.path.abspath(scene.fast64.sm64.import_rom)) + if not rom_path: + return None + import_rom_checks(rom_path) + return rom_path + + +# given a rom, parse the level script +def parse_level_script_binary(bin_file: BinaryIO, scene: bpy.types.Scene, col: bpy.types.Collection = None) -> Level: root = bpy.data.objects.new("Empty", None) if not col: scene.collection.objects.link(root) @@ -1921,18 +2235,64 @@ def parse_level_script(script_files: list[Path], scene: bpy.types.Scene, col: bp props = scene.fast64.sm64.importer root.name = f"Level Root {props.level_name}" root.sm64_obj_type = "Level Root" + lvl = Level(None, scene, root, DataParser._binary_parsing) + # seg 2 loaded via asm, so update it now + lvl.load_segment_two(bin_file) + lvl.bin_file = bin_file + entry = 0x108A10 # the expected value for SM64, will not work for roms that mess with this (basically none tbh) + try: + lvl.parse_level_script(entry, col=col) + except Exception as exc: + if type(exc) is not ParseException: + raise exc + return lvl + + +# given a path, get a level object by parsing the script.c file +def parse_level_script_c(script_files: list[Path], scene: bpy.types.Scene, col: bpy.types.Collection = None) -> Level: + props = scene.fast64.sm64.importer + root = bpy.data.objects.new("Empty", None) + if not col: + scene.collection.objects.link(root) + else: + col.objects.link(root) + root.name = f"Level Root {props.level_name}" + root.sm64_obj_type = "Level Root" # Now parse the script and get data about the level # Store data in attribute of a level class then assign later and return class scripts = dict() for script_file in script_files: with open(script_file, "r", newline="") as script_file: scripts.update(get_data_types_from_file(script_file, {"LevelScript": ["(", ")"]})) - lvl = Level(scripts, scene, root) + lvl = Level(scripts, scene, root, DataParser._c_parsing) entry = props.entry.format(props.level_name) - lvl.parse_level_script(entry, col=col) + try: + lvl.parse_level_script(entry, col=col) + except Exception as exc: + if type(exc) is not ParseException: + raise exc return lvl +# generate level object +def parse_level_script( + script_files: list[Path], + decomp_path: Path, + bin_path: Path, + scene: bpy.types.Scene, + col: bpy.types.Collection = None, +) -> Level: + props = scene.fast64.sm64.importer + if props.import_target == "C": + return parse_level_script_c( + [script_files, decomp_path / "levels" / "scripts.c"], scene, col=col + ) # returns level class + elif props.import_target == "Binary": + with open(bin_path, "rb") as bin_file: + bin_file = bin_file.read() + return parse_level_script_binary(bin_file, scene, col=col) + + # write the objects from a level object def write_level_objects(lvl: Level, col_name: str = None, actor_models: dict[model_name, bpy.Types.Mesh] = None): for area in lvl.areas.values(): @@ -2250,9 +2610,35 @@ def find_level_models_from_geo( return lvl +def find_level_models_binary(lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None) -> Level: + props = scene.fast64.sm64.importer + for area_index, area in lvl.areas.items(): + if col_name: + col = create_collection(area.root.users_collection[0], col_name) + else: + col = None + geo = GeoLayout( + None, + area.root, + scene, + f"GeoRoot {props.level_name} {area_index}", + area.root, + col=col, + parse_target=DataParser._binary_parsing, + ) + geo.bin_file = lvl.bin_file + try: + geo.parse_geo_from_start(area.geo, 0) + except Exception as exc: + if type(exc) is not ParseException: + raise exc + area.geo = geo + return lvl + + # import level graphics given geo.c file, and a level object def import_level_graphics( - geo_paths: list[Path], + bin_path: list[Path], lvl: Level, scene: bpy.types.Scene, root_path: Path, @@ -2260,13 +2646,22 @@ def import_level_graphics( cleanup: bool = False, col_name: str = None, ) -> Level: - lvl = find_level_models_from_geo(geo_paths, lvl, scene, root_path, col_name=col_name) - models = construct_model_data_from_file(aggregates, scene, root_path) - # just a try, in case you are importing from something other than base decomp repo (like RM2C output folder) - try: - models.get_generic_textures(root_path) - except: - print("could not import genric textures, if this errors later from missing textures this may be why") + if lvl.props.import_target == "C": + lvl = find_level_models_from_geo(geo_paths, lvl, scene, root_path, col_name=col_name) + models = construct_model_data_from_file(aggregates, scene, root_path) + # just a try, in case you are importing from something other than base decomp repo (like RM2C output folder) + try: + models.get_generic_textures(root_path) + except: + print("could not import genric textures, if this errors later from missing textures this may be why") + elif lvl.props.import_target == "Binary": + lvl = find_level_models_binary(lvl, scene, root_path, col_name=col_name) + # dummy f3d_gbi for class initialization + f3d_option = scene.f3d_type + scene.f3d_type = "F3D" + models = SM64_F3D(scene, DataParser._binary_parsing) + models.bin_file = lvl.bin_file + scene.f3d_type = f3d_option lvl = write_level_to_bpy(lvl, scene, root_path, models, cleanup=cleanup) return lvl @@ -2282,8 +2677,8 @@ def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types. col_data.update(get_data_types_from_file(col_file, {"Collision": ["(", ")"]})) # search for the area terrain from available collision data for area in lvl.areas.values(): - area.ColFile = col_data.get(area.terrain, None) - if not area.ColFile: + area.col_file = col_data.get(area.terrain, None) + if not area.col_file: props = scene.fast64.sm64.importer raise Exception( f"Collision {area.terrain} not found in levels/{props.level_name}/{props.level_prefix}leveldata.c" @@ -2303,8 +2698,15 @@ def write_level_collision_to_bpy( col = area.root.users_collection[0] else: col = create_collection(area.root.users_collection[0], col_name) - col_parser = Collision(area.ColFile, scene.fast64.sm64.blender_to_sm64_scale) - col_parser.parse_collision() + col_parser = Collision(area.col_file, scene.fast64.sm64.blender_to_sm64_scale) + if lvl.props.import_target == "C": + col_parser.parse_collision() + else: + try: + col_parser.parse_collision_binary(lvl.bin_file, area.terrain) + except Exception as exc: + if type(exc) is not ParseException: + raise exc name = "SM64 {} Area {} Col".format(scene.fast64.sm64.importer.level_name, area_index) obj = col_parser.write_collision(scene, name, area.root, col) area.write_special_objects(col_parser.special_objects, col) @@ -2323,11 +2725,18 @@ def write_level_collision_to_bpy( # import level collision given a level script def import_level_collision( - aggregate: Path, lvl: Level, scene: bpy.types.Scene, root_path: Path, cleanup: bool, col_name: str = None + aggregate: Path, + lvl: Level, + scene: bpy.types.Scene, + root_path: Path, + cleanup: bool, + col_name: str = None, ) -> Level: - lvl = find_collision_data_from_path( - aggregate, lvl, scene, root_path - ) # Now Each area has its collision file nicely formatted + if lvl.props.import_target == "C": + lvl = find_collision_data_from_path( + aggregate, lvl, scene, root_path + ) # Now Each area has its collision file nicely formatted + # in binary, the collision is at the bin_file, area.terrain ptr write_level_collision_to_bpy(lvl, scene, cleanup, col_name=col_name) return lvl @@ -2407,12 +2816,10 @@ def execute(self, context): else: obj_col = gfx_col = col_col = None + rom_path = get_and_check_rom(scene) decomp_path = Path(bpy.path.abspath(scene.fast64.sm64.decomp_path)) level_data_path, script_path, geo_path = get_operator_paths(props, decomp_path) - - lvl = parse_level_script( - [script_path, decomp_path / "levels" / "scripts.c"], scene, col=col - ) # returns level class + lvl = parse_level_script(script_path, decomp_path, rom_path, scene, col) if props.import_linked_actors: unique_model_ids = {model for model in lvl.loaded_geos.keys()} @@ -2486,12 +2893,10 @@ def execute(self, context): else: gfx_col = None + rom_path = get_and_check_rom(scene) decomp_path = Path(bpy.path.abspath(scene.fast64.sm64.decomp_path)) model_data_path, script_path, geo_path = get_operator_paths(props, decomp_path) - - lvl = parse_level_script( - [script_path, decomp_path / "levels" / "scripts.c"], scene, col=col - ) # returns level class + lvl = parse_level_script(script_path, decomp_path, rom_path, scene, gfx_col) lvl = import_level_graphics( [geo_path], lvl, scene, decomp_path, [model_data_path], cleanup=self.cleanup, col_name=gfx_col ) @@ -2514,12 +2919,10 @@ def execute(self, context): else: col_col = None + rom_path = get_and_check_rom(scene) decomp_path = Path(bpy.path.abspath(scene.fast64.sm64.decomp_path)) level_data_path, script_path, _ = get_operator_paths(props, decomp_path) - - lvl = parse_level_script( - [script_path, decomp_path / "levels" / "scripts.c"], scene, col=col - ) # returns level class + lvl = parse_level_script(script_path, decomp_path, rom_path, scene, col_col) lvl = import_level_collision(level_data_path, lvl, scene, decomp_path, self.cleanup, col_name=col_col) return {"FINISHED"} @@ -2538,12 +2941,10 @@ def execute(self, context): else: obj_col = None + rom_path = get_and_check_rom(scene) decomp_path = Path(bpy.path.abspath(scene.fast64.sm64.decomp_path)) _, script_path, _ = get_operator_paths(props, decomp_path) - - lvl = parse_level_script( - [script_path, decomp_path / "levels" / "scripts.c"], scene, col=col - ) # returns level class + lvl = parse_level_script(script_path, decomp_path, rom_path, scene, obj_col) write_level_objects(lvl, col_name=obj_col) return {"FINISHED"} @@ -2786,9 +3187,13 @@ class SM64_ImportProperties(PropertyGroup): name="Import Actors", description="Imports the models of actors. Actor models will be duplicates", default=True ) linked_groups: CollectionProperty(type=SM64_GroupProperties) - # add collection property for groups to look through - # add method to collect all groups and then turn those into paths - # look through all those path aggregates to get includes for actor importing + + import_target: EnumProperty( + name="Import Target", + description="Choose a level", + items=[("C", "C", "C"), ("Binary", "Binary", "Binary")], + default="C", + ) @property def level_name(self): @@ -2831,19 +3236,23 @@ def draw_actor(self, layout: bpy.types.UILayout): box.prop(self, "geo_layout_str") else: box.prop(self, self.geo_group_name) - box.prop(self, "version") - box.prop(self, "target") + if self.import_target is "C": + box.prop(self, "version") + box.prop(self, "target") def draw_level(self, layout: bpy.types.UILayout): + prop_split(layout, self, "import_target", "Import Target") + layout.separator() box = layout.box() box.label(text="Level Importer") box.prop(self, "level_enum") if self.level_enum == "Custom": box.prop(self, "level_custom") - box.prop(self, "entry") - box.prop(self, "level_prefix") - box.prop(self, "version") - box.prop(self, "target") + if self.import_target is "C": + box.prop(self, "entry") + box.prop(self, "level_prefix") + box.prop(self, "version") + box.prop(self, "target") row = box.row() row.prop(self, "force_new_tex") row.prop(self, "as_obj") diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index b9fd469d2..b0fd460f4 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -1,10 +1,10 @@ from __future__ import annotations -import re +import re, struct import bpy from functools import partial -from dataclasses import dataclass +from dataclasses import dataclass, field from pathlib import Path from typing import TextIO, Any, Union from numbers import Number @@ -12,6 +12,198 @@ from .utility import transform_mtx_blender_to_n64 + +# ------------------------------------------------------------------------ +# Generic helper +# ------------------------------------------------------------------------ + + +# eval line if not integer +def eval_or_int(val): + if type(val) is int: + return val + else: + return eval(val) + + +def transform_matrix_to_bpy(transform: Matrix) -> Matrix: + return transform_mtx_blender_to_n64().inverted() @ transform @ transform_mtx_blender_to_n64() + + +@dataclass +class BankLoads: + tlb: defualtdict[dict] = field(default_factory=dict) # proper name? + + +g_bank_loads = BankLoads() + + +def get_bank_loads(reset: bool = False) -> BankLoads: + global g_bank_loads + if reset: + g_bank_loads = BankLoads() + return g_bank_loads + + +# ------------------------------------------------------------------------ +# Binary Classes +# ------------------------------------------------------------------------ + + +# used to unpack data via BinProcess methods +@dataclass +class PackedFormat: + format_str: str = "" + ptr_indices: tuple = field(default_factory=tuple) + optional_arg_call: callable = None # callable used to edit format & ptrs, ran manually + make_str: bool = True # convert args to strings for blender prop compat + reorder: tuple = field( + default_factory=tuple + ) # reorders args after unpacking, called after post_unpack ptr addressing and make_str + bit_packing: tuple = field( + default_factory=tuple + ) # use a packed bitfield to unpack, each item is num bits, unpacked sequentially, make format all bytes + post_unpack: callable = None # called after unpacking, used for doing math to args, useful for f3d + + @property + def format_size(self): + return struct.calcsize(self.format_str) + + # add optional formatting + def edit_format(self, *args): + if not self.optional_arg_call: + return + self.format_str = self.optional_arg_call(self.format_str, *args) + self.ptr_indices = self.optional_arg_call(self.ptr_indices, *args) + + def unpack(self, bin_data: BinaryIO): + args = list(struct.unpack(self.format_str, bin_data)) + if self.bit_packing: + args = self.unpack_bits(args) + if self.post_unpack: + self.post_unpack(args) + return args + + # format_str must be list of unsigned bytes + def unpack_bits(self, args: list): + # combined bytes into one bit chunk of data + dat = 0 + for byte, shift in enumerate(args): + dat += byte << (shift * 8) + # unpack in reverse order using bitmask, then shifting data + args = [] + for bit_field in reversed(self.bit_packing): + args.append(dat & ((1 << bit_field) - 1)) + dat = dat >> bit_field + return args[::-1] + + def reorder_args(self, args: list) -> list: + if self.reorder: + return [args[index] for index in self.reorder] + else: + return args + + def make_args_str(self, args: list) -> list: + if self.make_str: + return [str(args[index]) if index not in self.ptr_indices else args[index] for index in range(len(args))] + else: + return args + + +class BinProcess: + """ + A base class that holds some binary processing functions + this class is focused on reading data + """ + + # a bit messy, default to str to match C except for ptrs which will always have math ops + def unpack_type( + self, + bin_file: BinaryIO, + offset: int, + unpack_str: Union[PackedFormat, str], + ret_iterable=False, + make_str: bool = True, + ): + if type(unpack_str) is str: + unpack_str = PackedFormat(unpack_str, make_str=make_str) + + args = unpack_str.unpack(bin_file[offset : offset + unpack_str.format_size]) + args = unpack_str.make_args_str(args) + for index in unpack_str.ptr_indices: + args[index] = self.seg2phys(args[index]) + args = unpack_str.reorder_args(args) + + if ret_iterable: + return args + if len(args) == 1: + return args[0] + else: + return args + + def seg2phys(self, ptr: int): + if (seg_num := ptr >> 24) != 0: + segment = self.banks.tlb[seg_num][0] + return segment + (ptr & 0xFFFFFF) + else: + return ptr + + # get list of pointers, stop at ARR_TERMINATOR + def get_referece_list(self, start, stop=0): + x = 0 + start = self.seg2phys(start) + ref = [] + r = self.unpack_type(start, ">L", 4) + while r != stop: + x += 4 + ref.append(r) + r = self.unpack_type(start + x, ">L", 4) + ref.append(r) + return ref + + # using a list of labels, find which symbol corresponds to pointer + def get_symbol_from_locations(self, symbol_dict, pointer, size=8): + # throw out non pointers + if pointer == 0: + return 0 + closest = None + chosen_str = None + for format_str, symbols in symbol_dict.items(): + for sym in symbols: + if not closest: + closest = sym if sym < pointer else None + chosen_str = format_str + continue + if sym > pointer: + continue + if (pointer - sym) < (pointer - closest): + closest = sym + chosen_str = format_str + if not closest: + closest = min([sym for sym in symbols for symbols in symbol_dict.values()]) + return chosen_str.format(f"{closest:X}", f"[{(pointer - closest) // size}]") + + # turn dict into an array. usually to be fed into a named tuple + # dict is: key - offset, value - func->type, name, func->len, arr = None + # returns: list[ints] + def extract_dict(self, start, dict): + output = [] + for k, v in dict.items(): + try: + # if a function is used for member 4, then call with current results + if callable(v[3]): + # variable length structs are always at the end, and should be arrays + # since unpack_type sometimes is not a list and sometimes is, I will + # force this result to be a list + num = v[3](output) + output.append(self.unpack_type(start + k, v[0].format(num), v[2] * num, iter=True)) + else: + output.append(self.unpack_type(start + k, v[0], v[2])) + except: + output.append(self.unpack_type(start + k, v[0], v[2])) + return output + + # ------------------------------------------------------------------------ # Array Data parsing # ------------------------------------------------------------------------ @@ -46,7 +238,7 @@ def __setitem__(self, index, val): @dataclass class Macro: cmd: str - args: list[str] + args: list[str, int] # strip each arg def __post_init__(self): @@ -68,26 +260,42 @@ def stream(self): self.head += 1 yield self.cur_stream[self.head] - def stream_binary(self): - pass - - def update_head(self, adv): + def advance_head(self, adv): self.head += adv +class ParseException(Exception): + pass + + # basic methods and utility to parse scripts or data streams of bytecode class DataParser(BinProcess): # parsing flow status codes _continue_parse = 1 _break_parse = 2 + _exit_parse = 3 # fully stop script + _binary_parsing = 0 + _c_parsing = 1 - def __init__(self, parent: DataParser = None): + def __init__(self, parent: DataParser = None, parse_target=None): # for forward referencing scripts, keep track of the stream if parent: + self.bin_file = parent.bin_file + self.parsing_target = parent.parsing_target self.parsed_streams = parent.parsed_streams else: + self.bin_file = None + self.parsing_target = parse_target self.parsed_streams = dict() + def reset_parser(self, entry_id: Any): + self.parsed_streams[entry_id] = None + + def get_parser(self, entry_id: Any, relative_offset: int = 0) -> Parser: + parser = self.parsed_streams[entry_id] + parser.head += relative_offset + return parser + # for if you're jumping, you start from the beginning, but if you're starting/stopping # then you want to just pickup from the last spot def parse_stream_from_start(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): @@ -95,11 +303,32 @@ def parse_stream_from_start(self, dat_stream: Sequence[Any], entry_id: Any, *arg self.parse_stream(dat_stream, entry_id, *args, **kwargs) def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): + if self.parsing_target == self._c_parsing: + self.parse_stream_c(dat_stream, entry_id, *args, **kwargs) + elif self.parsing_target == self._binary_parsing: + # assuming parsing of one single rom + self.parse_stream_binary(self.bin_file, entry_id, *args, **kwargs) + else: + raise Exception("Unhandled parsing type detected") + + def parse_stream_c(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): + """ + C parsing works in the following order: + * parse C files and collect data into dictionaries[var_name, CDataArray], set to class specific attrs + * set class.parse_target to DataParser._c_parsing, this is the defualt + * run parse_stream_from_start(script_stream, entry, *args) w/ script_stream = CDataArray, entry = var_name: str + * c_macro_split(pre parsed line of C code) -> Macro, assumes MACRO(macro_args) format + * Macro function is ran, e.g. EXECUTE or gsSPDisplayList + * jumps enter new recursion depth of parser, rom is supplied using attr self.bin_file + * repeat until _break_parse, use ParseException to fully exit recursion + """ parser = self.parsed_streams.get(entry_id) if not parser: self.parsed_streams[entry_id] = (parser := Parser(dat_stream)) for line in parser.stream(): cur_macro = self.c_macro_split(line) + if cur_macro.cmd in self._skippable_cmds: + continue func = getattr(self, cur_macro.cmd, None) if not func: raise Exception(f"Macro {cur_macro} not found in parser function") @@ -110,44 +339,58 @@ def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs # entry id in this instance is a pointer, converted to physical address, e.g. file offset def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs): + """ + Binary parsing works in the following order: + * set class.parse_target to DataParser._binary_parsing, and class.bin_file to rom + * run parse_stream_from_start(dat_stream, entry, *args) w/ dat_stream = None, entry = rom_ptr: int + * binary_cmd_unpack/f"_decode_cmd_{cmd_name.lower()}_bin"(parser, PackedFormat) -> cmd_args + * cmd specific func or binary_cmd_unpack unpacks cmd using stream and PackedFormat -> cmd_args + * parser head is advanced the length of PackedFormat! Make sure all bytes are read, even padding + * Macro function is ran as if were C, e.g. EXECUTE or gsSPDisplayList + * jumps enter new recursion depth of parser, rom is supplied using attr self.bin_file + * repeat until _break_parse, use ParseException to fully exit recursion + """ parser = self.parsed_streams.get(entry_id) if not parser: self.parsed_streams[entry_id] = (parser := Parser(bin_file)) - for line in parser.stream_binary(): - cmd_type, cmd_len = self.binary_cmd_get(parser) - # get a specific decoding function to make a macro - func = getattr(self, f"decode_cmd_{cmd_type}_bin", None) - # use a generic class (const?) var tuple to decode into a macro - if func: - cur_macro = func(parser) - else: - unpack_str = getattr(self, f"unpack_cmd_{cmd_type}_bin", None) - # if still no func - if not unpack_str: - raise Exception(f"No decoding for cmd {cmd_type}") - cur_macro = self.unpack_type(parser.cur_stream, parser.head, *unpack_str) + parser.head = entry_id + flow_status = self._continue_parse + while flow_status == self._continue_parse: + cmd_name, packed_fmt = self.binary_cmd_get(parser) # adv head if MSB not included in packed format + arg_decode_func = getattr(self, f"_decode_cmd_{cmd_name.lower()}_bin", None) + if arg_decode_func: + cmd_name, cmd_args, cmd_len = arg_decode_func(parser) else: - flow_status = func(cur_macro, *args, **kwargs) - parser.update_head(cmd_len) + cmd_args, cmd_len = self.binary_cmd_unpack(parser, cmd_name, packed_fmt) + parser.advance_head(cmd_len) + if cmd_name in self._skippable_cmds: + continue + cur_macro = Macro(cmd_name, cmd_args) + print(cur_macro) + func = getattr(self, cur_macro.cmd, None) + if not func: + raise Exception(f"Macro {cur_macro} not found in parser function") + flow_status = func(cur_macro, *args, **kwargs) if flow_status == self._break_parse: return + if flow_status == self._exit_parse: + raise ParseException(f"Parsing stopped") + + def get_cmd_name(cmd_type: int): + raise Exception("You must call this from subclass") + + def binary_cmd_unpack( + self, parser: Parser, cmd_name: str, packed_fmt: PackedFormat + ) -> tuple[cmd_args, cmd_len:int]: + # no cmd data + if not packed_fmt.format_str: + cmd_args = [] + else: + cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) + return cmd_args, packed_fmt.format_size - def reset_parser(self, entry_id: Any): - self.parsed_streams[entry_id] = None - - def get_parser(self, entry_id: Any, relative_offset: int = 0) -> Parser: - parser = self.parsed_streams[entry_id] - parser.head += relative_offset - return parser - - # MSB is cmd type, use cmd type to execute class specific logic for length - # default is 2nd MSB is length, used in level scripts and geo layouts - def binary_cmd_get(self, parser: Parser) -> tuple[int, int]: - cmd_type, cmd_len = self.unpack_type(parser.cur_stream, parser.head, ">BB", 2) - func = getattr(self, f"cmd_len_{cmd_type}_bin", None) - if func: - cmd_len = func(bin_file, offset, cmd_type) - return cmd_type, cmd_len + def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: + raise Exception("You must call this from a sublcass") def c_macro_split(self, macro: str) -> list[str]: args_start = macro.find("(") @@ -175,91 +418,6 @@ def c_macro_split(self, macro: str) -> list[str]: return Macro(macro[:args_start], macro_args) -def transform_matrix_to_bpy(transform: Matrix) -> Matrix: - return transform_mtx_blender_to_n64().inverted() @ transform @ transform_mtx_blender_to_n64() - - -# ------------------------------------------------------------------------ -# Binary Classes -# ------------------------------------------------------------------------ - - -# just a base class that holds some binary processing -# this class is focused on reading data -class BinProcess: - # unpack type - def unpack_type(self, file, offset, type, length, iter=False): - a = struct.unpack(type, file[offset : offset + length]) - if iter: - return a - if len(a) == 1: - return a[0] - else: - return a - - @staticmethod - def seg2phys(num): - if num >> 24 == 4: - return num & 0xFFFFFF - else: - return num - - # get list of pointers, stop at ARR_TERMINATOR - def get_referece_list(self, start, stop=0): - x = 0 - start = self.seg2phys(start) - ref = [] - r = self.unpack_type(start, ">L", 4) - while r != stop: - x += 4 - ref.append(r) - r = self.unpack_type(start + x, ">L", 4) - ref.append(r) - return ref - - # using a list of labels, find which symbol corresponds to pointer - def get_symbol_from_locations(self, symbol_dict, pointer, size=8): - # throw out non pointers - if pointer == 0: - return 0 - closest = None - chosen_str = None - for format_str, symbols in symbol_dict.items(): - for sym in symbols: - if not closest: - closest = sym if sym < pointer else None - chosen_str = format_str - continue - if sym > pointer: - continue - if (pointer - sym) < (pointer - closest): - closest = sym - chosen_str = format_str - if not closest: - closest = min([sym for sym in symbols for symbols in symbol_dict.values()]) - return chosen_str.format(f"{closest:X}", f"[{(pointer - closest) // size}]") - - # turn dict into an array. usually to be fed into a named tuple - # dict is: key - offset, value - func->type, name, func->len, arr = None - # returns: list[ints] - def extract_dict(self, start, dict): - output = [] - for k, v in dict.items(): - try: - # if a function is used for member 4, then call with current results - if callable(v[3]): - # variable length structs are always at the end, and should be arrays - # since unpack_type sometimes is not a list and sometimes is, I will - # force this result to be a list - num = v[3](output) - output.append(self.unpack_type(start + k, v[0].format(num), v[2] * num, iter=True)) - else: - output.append(self.unpack_type(start + k, v[0], v[2])) - except: - output.append(self.unpack_type(start + k, v[0], v[2])) - return output - - # ------------------------------------------------------------------------ # C file scrubbing/processing # ------------------------------------------------------------------------ From e7eb35d06842c425ef2c818d275f7c4971a67c1a Mon Sep 17 00:00:00 2001 From: scut Date: Wed, 11 Feb 2026 16:23:05 -0500 Subject: [PATCH 20/30] f3d unpackoing info5~ --- fast64_internal/f3d/f3d_import.py | 104 +++++++++++++++++++++++------- 1 file changed, 79 insertions(+), 25 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index babfbef7e..e626791e0 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -554,44 +554,98 @@ def __init__(self, lastmat: dict[any, Mat] = None, parse_target: int = DataParse def setup_unpack_dicts(self): f3d_gbi = self.f3d_gbi if f3d_gbi.F3DEX_GBI_2: + self.f3dex_cmd_gbi_names = dict() + self.f3d_cmd_gbi_names = dict() + self.f3dex2_cmd_gbi_names = { - self.G_DMA_IO: ("gsSPDma_io", PackedFormat()), - self.G_LOAD_UCODE: ("gsSPLoadUcodeEx", PackedFormat()), + f3d_gbi.G_VTX: ( + "gsSPVertex", + PackedFormat(">7B", bit_packing=(4, 8, 4, 8, 32)), + ), # pad num_v offset+num seg_ptr + f3d_gbi.G_DMA_IO: ( + "gsSPDma_io", + PackedFormat(">7B", bit_packing=(1, 10, 1, 12, 32)), + ), # i/o dmem_addr siz dram_addr + f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">3BL")), # pad123 num_mtx + f3d_gbi.G_GEOMETRYMODE: ("gsSPGeometryMode", PackedFormat(">7B", bit_packing=(24, 32))), # clear set + f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">3BL", (3,))), # pad pad type seg_ptr + f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">BHL", (2,))), # dmem_index offset seg_ptr + # set other modes } - else: + elif f3d_gbi.F3DEX_GBI: self.f3dex2_cmd_gbi_names = dict() - if f3d_gbi.F3DEX_GBI or f3d_gbi.F3DLP_GBI or f3d_gbi.F3DEX_GBI_2: + self.f3d_cmd_gbi_names = dict() + self.f3dex_cmd_gbi_names = { - f3d_gbi.G_GEOMETRYMODE: ("gsSPGeometryMode", PackedFormat()), - f3d_gbi.G_MODIFYVTX: ("gsSPModifyVertex", PackedFormat(">BHl")), # enum buf_index new_val - f3d_gbi.G_CULLDL: ("gsSPCullDisplayList", PackedFormat()), - f3d_gbi.G_BRANCH_Z: ("gsSPBranchLessZrg", PackedFormat()), - f3d_gbi.G_VTX: ("gsSPVertex", PackedFormat()), - f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat()), - f3d_gbi.G_TRI2: ("gsSP2Triangles", PackedFormat(">7B")), # v123 pad v456 - f3d_gbi.G_QUAD: ("gsSP1Quadrangle", PackedFormat(">7B")), # v123 pad v456 - f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">7B")), - f3d_gbi.G_TEXTURE: ("gsSPTexture", PackedFormat()), + f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr + f3d_gbi.G_VTX: ( + "gsSPVertex", + PackedFormat(">7B", (3,), bit_packing=(8, 6, 10, 32)), + ), # buf_start num_vert len_dat vtx_ptr + f3d_gbi.G_SETGEOMETRYMODE: ( + "gsSPSetGeometryMode", + PackedFormat(">7B", bit_packing=(24, 32)), + ), # pad word + f3d_gbi.G_CLEARGEOMETRYMODE: ( + "gsSPClearGeometryMode", + PackedFormat(">7B", bit_packing=(24, 32)), + ), # word pad + # set other mode, L and H? + f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,))), # offset dmem_index seg_ptr } - self.f3d_cmd_gbi_names = dict() else: self.f3dex_cmd_gbi_names = dict() + self.f3dex2_cmd_gbi_names = dict() + self.f3d_cmd_gbi_names = { - f3d_gbi.G_SETGEOMETRYMODE: ("gsSPSetGeometryMode", PackedFormat()), - f3d_gbi.G_CLEARGEOMETRYMODE: ("gsSPClearGeometryMode", PackedFormat()), - f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat()), - f3d_gbi.G_VTX: ("gsSPVertex", PackedFormat()), + f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr + f3d_gbi.G_MOVEMEM: ("gsMoveMem", PackedFormat(">BHL", (2,))), # dmem_index siz mem_ptr + f3d_gbi.G_VTX: ( + "gsSPVertex", + PackedFormat(">7B", (3,), bit_packing=(4, 4, 16, 32)), + ), # num_vert buf_start len_dat vtx_ptr + f3d_gbi.G_SETGEOMETRYMODE: ( + "gsSPSetGeometryMode", + PackedFormat(">7B", bit_packing=(24, 32)), + ), # pad word + f3d_gbi.G_CLEARGEOMETRYMODE: ( + "gsSPClearGeometryMode", + PackedFormat(">7B", bit_packing=(24, 32)), + ), # pad word + # set other mode, L and H? + f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,))), # offset dmem_index seg_ptr f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">7B")), # pads - f3d_gbi.G_TEXTURE: ("gsSPTexture", PackedFormat()), + f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat(">7B")), # pad1234 v123 } + if f3d_gbi.F3DEX_GBI or f3d_gbi.F3DLP_GBI or f3d_gbi.F3DEX_GBI_2: + self.f3dex_cmd_gbi_names.update( + { + f3d_gbi.G_MOVEMEM: ("gsMoveMem", PackedFormat(">3BL", (3,))), # size offset dmem_index seg_ptr + f3d_gbi.G_MODIFYVTX: ("gsSPModifyVertex", PackedFormat(">BHl")), # enum buf_index new_val + f3d_gbi.G_CULLDL: ("gsSPCullDisplayList", PackedFormat(">7B")), # I'll just be ignoring this anyway + f3d_gbi.G_BRANCH_Z: ( + "gsSPBranchLessZrg", + PackedFormat(">15B"), + ), # leads w/ rdp half cmd, deal with later + f3d_gbi.G_LOAD_UCODE: ( + "gsSPLoadUcodeEx", + PackedFormat(">15B"), + ), # leads w/ rdp half cmd, deal with later + f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat(">7B")), # v123 pad4567 + f3d_gbi.G_TRI2: ("gsSP2Triangles", PackedFormat(">7B")), # v123 pad v456 + f3d_gbi.G_QUAD: ("gsSP1Quadrangle", PackedFormat(">7B")), # v123 pad v456 + f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">3BL")), # pad123 num_mtx + } + ) self.common_cmd_gbi_names = { f3d_gbi.G_NOOP: ("gsDPNoOp", PackedFormat(">7B")), # pads f3d_gbi.G_SPNOOP: ("gsDPNoOp", PackedFormat(">7B")), # pads f3d_gbi.G_ENDDL: ("gsSPEndDisplayList", PackedFormat(">7B")), # pads f3d_gbi.G_DL: ("gsSPDisplayList", PackedFormat(">BhL", (2,))), # branch pad dl_ptr - f3d_gbi.G_MOVEMEM: ("gsDma1p", PackedFormat()), # handle more properly? - f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat()), - f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat()), + f3d_gbi.G_TEXTURE: ( + "gsSPTexture", + PackedFormat(">7B", bit_packing=(10, 3, 3, 8, 16, 16)), + ), # pad lod_lvl tile en s } self.rdp_cmd_gbi_names = { f3d_gbi.G_SETCIMG: ("gsDPSetColorImage", PackedFormat(">7B")), # bpy ignores @@ -685,9 +739,9 @@ def get_new_stream(self, entry: Union[str, int]): def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: cmd_type = self.unpack_type(parser.cur_stream, parser.head, ">B", make_str=False) - cmd_name = self.f3d_gbi.all_f3d_gbi_cmds.get(cmd_type) + cmd_name, packed_fmt = self.f3d_gbi.all_f3d_gbi_cmds.get(cmd_type) # tex rects and maybe other cmds are longer - return cmd_name, 8 + return cmd_name, packed_fmt def binary_cmd_unpack( self, parser: Parser, cmd_name: str, packed_fmt: PackedFormat From 82217aad3b56cf3052f2b635b989cf9d8a25ebf0 Mon Sep 17 00:00:00 2001 From: scut Date: Sat, 14 Feb 2026 12:48:41 -0500 Subject: [PATCH 21/30] binary level importing basics done, cleaned up custom actor importing, made actor importing use animations PR actor presets --- fast64_internal/bin_png.py | 14 +- fast64_internal/f3d/f3d_gbi.py | 2 +- fast64_internal/f3d/f3d_import.py | 213 +- fast64_internal/sm64/sm64_constants.py | 228 +- fast64_internal/sm64/sm64_function_map.py | 2 +- fast64_internal/sm64/sm64_level_importer.py | 429 +-- fast64_internal/sm64/tst.py | 2829 +++++++++++++++++++ fast64_internal/utility_importer.py | 16 +- 8 files changed, 3228 insertions(+), 505 deletions(-) create mode 100644 fast64_internal/sm64/tst.py diff --git a/fast64_internal/bin_png.py b/fast64_internal/bin_png.py index d0d8bef20..e85926658 100644 --- a/fast64_internal/bin_png.py +++ b/fast64_internal/bin_png.py @@ -148,7 +148,19 @@ def convert_byte_stream( return data_out -def convert_tex(fmt: str, width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): +def convert_tex_bin(fmt: str, width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): + # I dislike this formulation but calling globals() is worse + funcs = { + "G_IM_FMT_CI": convert_CI_tex, + "G_IM_FMT_I": convert_I_tex, + "G_IM_FMT_IA": convert_IA_tex, + "G_IM_FMT_RGBA": convert_RGBA_tex, + } + im_siz = int(re.search("\d+", im_siz).group()) + print(im_siz, width, height, len(byte_stream)) + return funcs.get(fmt)(int(width), int(height), im_siz, byte_stream, pal_stream) + +def convert_tex_c(fmt: str, width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): # I dislike this formulation but calling globals() is worse funcs = { "G_IM_FMT_CI": convert_CI_tex, diff --git a/fast64_internal/f3d/f3d_gbi.py b/fast64_internal/f3d/f3d_gbi.py index 19f7e0d9f..87046d958 100644 --- a/fast64_internal/f3d/f3d_gbi.py +++ b/fast64_internal/f3d/f3d_gbi.py @@ -230,7 +230,7 @@ def __init__(self, F3D_VER): self.G_SPRITE2D_BASE = 9 # sprite command # IMMEDIATE commands - self.G_IMMFIRST = -65 + self.G_IMMFIRST = 0xBF self.G_TRI1 = self.G_IMMFIRST - 0 self.G_CULLDL = self.G_IMMFIRST - 1 self.G_POPMTX = self.G_IMMFIRST - 2 diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index e626791e0..3f682632f 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -22,7 +22,7 @@ from ..utility import hexOrDecInt, gammaInverse from ..utility_importer import * -from ..bin_png import convert_tex +from ..bin_png import convert_tex_c, convert_tex_bin # ------------------------------------------------------------------------ # Classes @@ -47,7 +47,8 @@ def Light_t(self, light_data: list[str]): self.col = self.a = self.l = [*data[0:3], 0xFF] self.dir = data[8:11] - def Lights1(self, light_data: list[str]): + # handles all Lights* type data structures, support for Lights1 rn + def Lights(self, light_data: list[str]): data = [eval(dat.strip()) for dat in light_data[0].split(",")] self.a = [*data[0:3], 0xFF] self.col = self.l = [*data[3:6], 0xFF] @@ -99,6 +100,7 @@ class Texture(TexBase): pal: bool = False dxt: int = 0 texels: int = 0 + num_bytes: int = 0 # to be filled in after self.determine_size def determine_size(self): # dxt is a ratio between words and lines of a texture @@ -135,7 +137,7 @@ def determine_size(self): # nor will it properly show up in blender as an import if not self.width: self.width = 1 - self.height = texels / self.width + self.height = texels // self.width return bit_size = math.log2(bit_size // 4) if not bit_size: @@ -157,6 +159,7 @@ def determine_size(self): height = int((texels + 1) / width) self.width = width self.height = height + self.num_bytes = int(bit_size * width * height) def size(self): return self.width, self.height @@ -180,7 +183,7 @@ class Mat: "1", ) - def __init__(self, layer: int = None): + def __init__(self, layer: int = None, bin_file: BinaryIO = None): self.GeoSet = [] self.GeoClear = [] self.tiles = [Tile() for a in range(8)] @@ -199,6 +202,7 @@ def __init__(self, layer: int = None): self.layer = self._base_layer else: self.layer = layer + self.bin_file = bin_file # theoretically could be different for each mat # calc the hash for an f3d mat and see if its equal to this mats hash def mat_hash_f3d(self, f3d: F3DMaterialProperty): @@ -284,25 +288,51 @@ def load_texture(self, ForceNewTex: bool, path: Path, tex: Texture): if "#include" in tex_img: return self.load_texture_png(force_new_tex, textures, path, tex) else: - return self.load_texture_array(force_new_tex, textures, path, tex) + return self.load_texture_array(force_new_tex, textures, path, tex, DataParser._c_parsing) - def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): + def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture, parse_target: int): """ Create a new/find image object and then fill pixel buffer with array data """ - tex_img = textures.get(tex.tex_img) - # idk if this properly deals with multiple palettes... - pal_img = textures.get(self.pal.tex_img) if self.pal else None tex.determine_size() - image_texels = convert_tex( - tex.fmt, - tex.width, - tex.height, - tex.siz, - tex_img.var_data[0], - pal_stream=pal_img.var_data[0] if pal_img else None, - ) - i = bpy.data.images.new(tex.tex_img, tex.width, tex.height, alpha=True) + # for some reason I can't get the parsing target to be what I want, so read props instead + # based on naming structure, you shouldn't have repeat texture names since they're ROM addresses + if parse_target == DataParser._binary_parsing: + name = f"tex_img_0x{tex.tex_img:X}" + if (i := bpy.data.images.get(name, None)): + return i + tex_img = tex.tex_img + tex_img = self.bin_file[tex_img:tex_img + tex.num_bytes] + # idk if this properly deals with multiple palettes... + pal_img = self.pal.tex_img if self.pal else None + if pal_img: + # determine if CI4 or CI8 and num colors + pal_img = self.bin_file[pal_img:pal_img + 32] + image_texels = convert_tex_bin( + tex.fmt, + tex.width, + tex.height, + tex.siz, + tex_img, + pal_stream=pal_img if pal_img else None, + ) + name = f"tex_img_0x{tex.tex_img:X}" + else: + name = tex.tex_img + if (i := bpy.data.images.get(name, None)) and not force_new_tex: + return i + tex_img = textures.get(tex.tex_img) + # idk if this properly deals with multiple palettes... + pal_img = textures.get(self.pal.tex_img) if self.pal else None + image_texels = convert_tex_c( + tex.fmt, + tex.width, + tex.height, + tex.siz, + tex_img.var_data[0], + pal_stream=pal_img.var_data[0] if pal_img else None, + ) + i = bpy.data.images.new(name, tex.width, tex.height, alpha=True) i.pixels = image_texels return i @@ -539,10 +569,11 @@ def __init__(self, lastmat: dict[any, Mat] = None, parse_target: int = DataParse self.Textures = {} self.NewMat = 1 self.f3d_gbi = get_F3D_GBI() # make sure to set this to the right version for your game! + self.setup_unpack_dicts() # use the dict in subclasses to keep track of mats per layer when parsing in render order self.last_mat_dict = dict() if not lastmat: - self.last_mat = Mat() + self.last_mat = Mat(parse_target = parse_target) self.last_mat_dict[Mat.base_mat] = self.last_mat self.last_mat.name = 0 else: @@ -559,9 +590,9 @@ def setup_unpack_dicts(self): self.f3dex2_cmd_gbi_names = { f3d_gbi.G_VTX: ( - "gsSPVertex", - PackedFormat(">7B", bit_packing=(4, 8, 4, 8, 32)), - ), # pad num_v offset+num seg_ptr + "gsSPVertexBin", + PackedFormat(">7B", (3,), reorder = (1, 2, 3), make_str = False, bit_packing=(4, 8, 4, 8, 32)), + ), # pad num_v offset+num seg_ptr, reorder -> num offset ptr f3d_gbi.G_DMA_IO: ( "gsSPDma_io", PackedFormat(">7B", bit_packing=(1, 10, 1, 12, 32)), @@ -579,9 +610,9 @@ def setup_unpack_dicts(self): self.f3dex_cmd_gbi_names = { f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr f3d_gbi.G_VTX: ( - "gsSPVertex", - PackedFormat(">7B", (3,), bit_packing=(8, 6, 10, 32)), - ), # buf_start num_vert len_dat vtx_ptr + "gsSPVertexBin", + PackedFormat(">7B", (3,), reorder = (1, 0, 3), make_str = False, bit_packing=(8, 6, 10, 32)), + ), # buf_start num_vert len_dat vtx_ptr, reorder -> num offset ptr f3d_gbi.G_SETGEOMETRYMODE: ( "gsSPSetGeometryMode", PackedFormat(">7B", bit_packing=(24, 32)), @@ -599,11 +630,11 @@ def setup_unpack_dicts(self): self.f3d_cmd_gbi_names = { f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr - f3d_gbi.G_MOVEMEM: ("gsMoveMem", PackedFormat(">BHL", (2,))), # dmem_index siz mem_ptr + f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">BHL", (2,))), # dmem_index siz mem_ptr f3d_gbi.G_VTX: ( - "gsSPVertex", - PackedFormat(">7B", (3,), bit_packing=(4, 4, 16, 32)), - ), # num_vert buf_start len_dat vtx_ptr + "gsSPVertexBin", + PackedFormat(">7B", (3,), reorder = (0, 1, 3), make_str = False, bit_packing=(4, 4, 16, 32), post_unpack = self.f3d_g_vertex_parse), + ), # num_vert buf_start len_dat vtx_ptr, reorder -> num offset ptr f3d_gbi.G_SETGEOMETRYMODE: ( "gsSPSetGeometryMode", PackedFormat(">7B", bit_packing=(24, 32)), @@ -615,12 +646,12 @@ def setup_unpack_dicts(self): # set other mode, L and H? f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,))), # offset dmem_index seg_ptr f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">7B")), # pads - f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat(">7B")), # pad1234 v123 + f3d_gbi.G_TRI1: ("gsSP1Triangle", PackedFormat(">7B", make_str = False, reorder = (4, 5, 6, 3), post_unpack = lambda args: [a//10 for a in args])), # pad123 flag v123, reorder v123 flag } if f3d_gbi.F3DEX_GBI or f3d_gbi.F3DLP_GBI or f3d_gbi.F3DEX_GBI_2: self.f3dex_cmd_gbi_names.update( { - f3d_gbi.G_MOVEMEM: ("gsMoveMem", PackedFormat(">3BL", (3,))), # size offset dmem_index seg_ptr + f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">3BL", (3,), reorder=(0, 2, 3, 1))), # size offset dmem_index seg_ptr, reorder -> index siz seg_ptr offset f3d_gbi.G_MODIFYVTX: ("gsSPModifyVertex", PackedFormat(">BHl")), # enum buf_index new_val f3d_gbi.G_CULLDL: ("gsSPCullDisplayList", PackedFormat(">7B")), # I'll just be ignoring this anyway f3d_gbi.G_BRANCH_Z: ( @@ -631,9 +662,9 @@ def setup_unpack_dicts(self): "gsSPLoadUcodeEx", PackedFormat(">15B"), ), # leads w/ rdp half cmd, deal with later - f3d_gbi.G_TRI1: ("gsSP1Triangles", PackedFormat(">7B")), # v123 pad4567 - f3d_gbi.G_TRI2: ("gsSP2Triangles", PackedFormat(">7B")), # v123 pad v456 - f3d_gbi.G_QUAD: ("gsSP1Quadrangle", PackedFormat(">7B")), # v123 pad v456 + f3d_gbi.G_TRI1: ("gsSP1Triangle", PackedFormat(">7B", make_str = False, post_unpack = lambda args: [a//2 for a in args])), # v123 flag pad567 + f3d_gbi.G_TRI2: ("gsSP2Triangles", PackedFormat(">7B", make_str = False, post_unpack = lambda args: [a//2 for a in args])), # v123 flag v456 + f3d_gbi.G_QUAD: ("gsSP1Quadrangle", PackedFormat(">7B", make_str = False, post_unpack = lambda args: [a//2 for a in args])), # v123 flag v456 f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">3BL")), # pad123 num_mtx } ) @@ -641,11 +672,11 @@ def setup_unpack_dicts(self): f3d_gbi.G_NOOP: ("gsDPNoOp", PackedFormat(">7B")), # pads f3d_gbi.G_SPNOOP: ("gsDPNoOp", PackedFormat(">7B")), # pads f3d_gbi.G_ENDDL: ("gsSPEndDisplayList", PackedFormat(">7B")), # pads - f3d_gbi.G_DL: ("gsSPDisplayList", PackedFormat(">BhL", (2,))), # branch pad dl_ptr + f3d_gbi.G_DL: ("gsSPDisplayListBin", PackedFormat(">BhL", (2,))), # branch pad dl_ptr f3d_gbi.G_TEXTURE: ( "gsSPTexture", - PackedFormat(">7B", bit_packing=(10, 3, 3, 8, 16, 16)), - ), # pad lod_lvl tile en s + PackedFormat(">7B", reorder=(4, 5, 1, 2, 3), bit_packing=(10, 3, 3, 8, 16, 16)), + ), # pad lod_lvl tile en s t, reorder s t lod_lvl tile en } self.rdp_cmd_gbi_names = { f3d_gbi.G_SETCIMG: ("gsDPSetColorImage", PackedFormat(">7B")), # bpy ignores @@ -669,24 +700,24 @@ def setup_unpack_dicts(self): ), # ul_s ul_t pad tile width height f3d_gbi.G_SETTILE: ( "gsDPSetTile", - PackedFormat(">7B", bit_packing=(3, 2, 1, 9, 9, 5, 3, 4, 2, 4, 4, 2, 4, 4)), - ), # fmt siz pad num_64_bit_vals tmem pad tile palette t_flag t_mask t_shift s_flag s_mask s_shift + PackedFormat(">7B", reorder = (0, 1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13), bit_packing=(3, 2, 1, 9, 9, 5, 3, 4, 2, 4, 4, 2, 4, 4)), + ), # fmt siz pad num_64_bit_vals tmem pad tile palette t_flag t_mask t_shift s_flag s_mask s_shift, reoder -> remove pads f3d_gbi.G_LOADTILE: ( "gsDPLoadTile", PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), ), # ul_s ul_t pad tile width height f3d_gbi.G_LOADBLOCK: ( "gsDPLoadBlock", - PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), - ), # ul_s ul_t pad tile width height + PackedFormat(">7B", reorder = (3, 0, 1, 4, 5), bit_packing=(12, 12, 4, 4, 12, 12)), + ), # ul_s ul_t pad tile texels dxt, reorder -> tile ul_s ul_t texels dxt f3d_gbi.G_SETTILESIZE: ( "gsDPSetTileSize", - PackedFormat(">7B", bit_packing=(12, 12, 4, 4, 12, 12)), - ), # ul_s ul_t pad tile width height + PackedFormat(">7B", bit_packing=(12, 12, 8, 12, 12)), + ), # ul_s ul_t tile width height f3d_gbi.G_LOADTLUT: ( "gsDPLoadTLUTCmd", - PackedFormat(">7B", bit_packing=(28, 4, 12, 12)), - ), # pad tile clr_cnt pad + PackedFormat(">7B", reorder = (1, 2), bit_packing=(28, 4, 12, 12)), + ), # pad tile clr_cnt pad, reorder -> tile clr_cnt f3d_gbi.G_RDPSETOTHERMODE: ( "gsSPSetOtherMode", PackedFormat(">3BL"), @@ -739,7 +770,8 @@ def get_new_stream(self, entry: Union[str, int]): def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: cmd_type = self.unpack_type(parser.cur_stream, parser.head, ">B", make_str=False) - cmd_name, packed_fmt = self.f3d_gbi.all_f3d_gbi_cmds.get(cmd_type) + cmd_name, packed_fmt = self.all_f3d_gbi_cmds.get(cmd_type) + parser.advance_head(1) # tex rects and maybe other cmds are longer return cmd_name, packed_fmt @@ -753,7 +785,7 @@ def binary_cmd_unpack( cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) return cmd_args, packed_fmt.format_size - def parse_stream_DL(self, start_name: str): + def parse_stream_DL(self, start_name: Union[str, int]): """ Initialize vars and then parse data stream """ @@ -766,33 +798,57 @@ def parse_stream_DL(self, start_name: str): # merge all lights into single lights dictionary self.Lights.update(self.Light_t) self.Lights.update(self.Ambient_t) + self.last_mat.bin_file = self.bin_file self.parse_stream(self.get_new_stream(start_name), start_name) def gsSPEndDisplayList(self, macro: Macro): return self._break_parse + def gsSPDisplayListBin(self, macro: Macro): + if macro.args[0] == 0: + return self.gsSPBranchList(macro.partial(macro.args[2])) + else: + return self.gsSPDisplayList(macro.partial(macro.args[2])) + def gsSPBranchList(self, macro: Macro): - NewDL = self.Gfx.get(branched_dl := macro.args[0]) - if not NewDL: - raise Exception( - "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix - ) - ) + NewDL = self.get_new_stream(branched_dl := macro.args[0]) + # if not NewDL: + # raise Exception( + # "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( + # NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix + # ) + # ) self.parse_stream_from_start(NewDL, branched_dl) return self._break_parse def gsSPDisplayList(self, macro: Macro): - NewDL = self.Gfx.get(branched_dl := macro.args[0]) - if not NewDL: - raise Exception( - "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( - NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix - ) - ) + NewDL = self.get_new_stream(branched_dl := macro.args[0]) + # if not NewDL: + # raise Exception( + # "Could not find DL {} in levels/{}/{}leveldata.inc.c".format( + # NewDL, self.scene.fast64.sm64.importer.level_name, self.scene.fast64.sm64.importer.level_prefix + # ) + # ) self.parse_stream_from_start(NewDL, branched_dl) return self._continue_parse + def f3d_g_vertex_parse(self, args: list[int]): + return [args[0] + 1, *args[1:]] + + def gsSPVertexBin(self, macro: Macro): + start = macro.args[1] + length = macro.args[0] + v_data = [self.unpack_type(self.bin_file, macro.args[2] + off*0x10, ">3hH2h4B", make_str = False) for off in range(length)] + + for k, i in enumerate(range(start, length, 1)): + self.VertBuff[i] = [v_data[k], start] + # These are all independent data blocks in blender + self.Verts.extend([v[0:3] for v in v_data]) + self.UVs.extend([v[4:6] for v in v_data]) + self.VCs.extend([v[6:10] for v in v_data]) + self.LastLoad = length + return self._continue_parse + def gsSPVertex(self, macro: Macro): # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later if "+" in macro.args[0]: @@ -866,6 +922,13 @@ def gsDPSetRenderMode(self, macro: Macro): self.last_mat.RenderMode = macro.args return self._continue_parse + # not a real gbi cmd, but the binary version that utilizes G_MOVEMEM + def gsSPMoveMem(self, macro: Macro): + # just check for G_MV_L0 for now + # if macro.args[0] = self.f3d_gbi.G_MV_L0: + # return self.gsSPLight(macro) + return self._continue_parse + # The highest numbered light is always the ambient light def gsSPLight(self, macro: Macro): self.NewMat = 1 @@ -911,6 +974,7 @@ def gsSPSetLights0(self, macro: Macro): def gsSPSetLights1(self, macro: Macro): return self._continue_parse + def gsSPSetLights2(self, macro: Macro): return self._continue_parse @@ -1027,22 +1091,16 @@ def gsSPFogPosition(self, macro: Macro): self.last_mat.fog_pos = macro.args return self._continue_parse - _unpack_cmd_gsDPSetBlendColor_bin = PackedFormat(">Bh4B") # pad pad rgba - def gsDPSetBlendColor(self, macro: Macro): self.NewMat = 1 self.last_mat.blend_color = macro.args return self._continue_parse - _unpack_cmd_gsDPSetPrimColor_bin = PackedFormat(">7B") # pad min_lod lod_frac rgba - def gsDPSetPrimColor(self, macro: Macro): self.NewMat = 1 self.last_mat.prim_color = macro.args return self._continue_parse - _unpack_cmd_gsDPSetEnvColor_bin = PackedFormat(">Bh4B") # pad pad rgba - def gsDPSetEnvColor(self, macro: Macro): self.NewMat = 1 self.last_mat.env_color = macro.args @@ -1103,8 +1161,6 @@ def gsDPSetCombineLERP(self, macro: Macro): self.last_mat.Combiner = macro.args return self._continue_parse - _unpack_cmd_gsSPTexture_bin = PackedFormat(">2B2h") # pad tile en s_scale t_scale - # root tile, scale and set tex def gsSPTexture(self, macro: Macro): self.NewMat = 1 @@ -1148,7 +1204,7 @@ def gsDPLoadBlock(self, macro: Macro): # texels and dxt commonly use math/expressions if "CALC_DXT" in macro.args[4]: tex.dxt = 0 - tex.width = re.search("\d+", macro.args[4]).group() + tex.width = hexOrDecInt(re.search("\d+", macro.args[4]).group()) else: tex.dxt = hexOrDecInt(macro.args[4]) if "*" in macro.args[3]: @@ -1275,6 +1331,20 @@ def gsDPLoadTextureBlock_4bs(self, macro: Macro): # gsDPLoadMultiBlock # gsDPLoadMultiBlockS + # turn member of vtx str arr into vtx args + def parse_vert(self, Vert: str): + v = Vert.replace("{", "").replace("}", "").split(",") + num = lambda x: [eval_or_int(a) for a in x] + pos = num(v[:3]) + uv = num(v[4:6]) + vc = num(v[6:10]) + return [pos, uv, vc] + + # given tri args in gbi cmd, give appropriate tri indices in vert list + def parse_tri(self, Tri: list[int]): + L = len(self.Verts) + return [a + L - self.LastLoad for a in Tri] + def make_new_material(self): if self.NewMat: self.NewMat = 0 @@ -1282,9 +1352,6 @@ def make_new_material(self): self.last_mat = deepcopy(self.last_mat) # for safety self.last_mat_dict[self.last_mat.layer] = self.last_mat - def parse_tri(self, Tri: Sequence[int]): - return [self.VertBuff[a] for a in Tri] - # if someone uses just the int these catch that def eval_timg_format(self, fmt: str): GBI_fmt_ints = { diff --git a/fast64_internal/sm64/sm64_constants.py b/fast64_internal/sm64/sm64_constants.py index 44ffa0fa4..b6aa97fdf 100644 --- a/fast64_internal/sm64/sm64_constants.py +++ b/fast64_internal/sm64/sm64_constants.py @@ -2223,228 +2223,6 @@ def __init__(self, geoAddr, level, switchDict): ("Custom", "Custom", "Custom"), ] -# what is in specific groups and the segmented addresses -group_0_geos = [ - ("bubble_geo", "bubble_geo", "0x17000000"), - ("purple_marble_geo", "purple_marble_geo", "0x1700001c"), - ("smoke_geo", "smoke_geo", "0x17000038"), - ("burn_smoke_geo", "burn_smoke_geo", "0x17000084"), - ("small_water_splash_geo", "small_water_splash_geo", "0x1700009c"), - ("idle_water_wave_geo", "idle_water_wave_geo", "0x17000124"), - ("wave_trail_geo", "wave_trail_geo", "0x17000168"), - ("sparkles_geo", "sparkles_geo", "0x170001bc"), - ("water_splash_geo", "water_splash_geo", "0x17000230"), - ("sparkles_animation_geo", "sparkles_animation_geo", "0x17000284"), - ("mario_geo", "mario_geo", "0x17002dd4"), -] - -group_1_geos = [ - ("yellow_sphere_geo", "yellow_sphere_geo", "0x0c000000"), - ("hoot_geo", "hoot_geo", "0x0c000018"), - ("yoshi_egg_geo", "yoshi_egg_geo", "0x0c0001e4"), - ("thwomp_geo", "thwomp_geo", "0x0c000248"), - ("bullet_bill_geo", "bullet_bill_geo", "0x0c000264"), - ("heave_ho_geo", "heave_ho_geo", "0x0c00028c"), -] - -group_2_geos = [ - ("bully_geo", "bully_geo", "0x0c000000"), - ("bully_boss_geo", "bully_boss_geo", "0x0c000120"), - ("blargg_geo", "blargg_geo", "0x0c000240"), -] - -group_3_geos = [ - ("king_bobomb_geo", "king_bobomb_geo", "0x0c000000"), - ("water_bomb_geo", "water_bomb_geo", "0x0c000308"), - ("water_bomb_shadow_geo", "water_bomb_shadow_geo", "0x0c000328"), -] - -group_4_geos = [ - ("clam_shell_geo", "clam_shell_geo", "0x0c000000"), - ("sushi_geo", "sushi_geo", "0x0c000068"), - ("unagi_geo", "unagi_geo", "0x0c00010c"), -] - -group_5_geos = [ - ("klepto_geo", "klepto_geo", "0x0c000000"), - ("eyerok_left_hand_geo", "eyerok_left_hand_geo", "0x0c0005a8"), - ("eyerok_right_hand_geo", "eyerok_right_hand_geo", "0x0c0005e4"), - ("pokey_head_geo", "pokey_head_geo", "0x0c000610"), - ("pokey_body_part_geo", "pokey_body_part_geo", "0x0c000644"), -] - -group_6_geos = [ - ("monty_mole_geo", "monty_mole_geo", "0x0c000000"), - ("ukiki_geo", "ukiki_geo", "0x0c000110"), - ("fwoosh_geo", "fwoosh_geo", "0x0c00036c"), -] - -group_7_geos = [ - ("spindrift_geo", "spindrift_geo", "0x0c000000"), - ("penguin_geo", "penguin_geo", "0x0c000104"), - ("mr_blizzard_hidden_geo", "mr_blizzard_hidden_geo", "0x0c00021c"), - ("mr_blizzard_geo", "mr_blizzard_geo", "0x0c000348"), -] - -group_8_geos = [ - ("springboard_top_geo", "springboard_top_geo", "0x0c000000"), - ("springboard_spring_geo", "springboard_spring_geo", "0x0c000018"), - ("springboard_bottom_geo", "springboard_bottom_geo", "0x0c000030"), - ("cap_switch_geo", "cap_switch_geo", "0x0c000048"), -] - -group_9_geos = [ - ("bookend_part_geo", "bookend_part_geo", "0x0c000000"), - ("bookend_geo", "bookend_geo", "0x0c0000c0"), - ("haunted_chair_geo", "haunted_chair_geo", "0x0c0000d8"), - ("small_key_geo", "small_key_geo", "0x0c000188"), - ("mad_piano_geo", "mad_piano_geo", "0x0c0001b4"), - ("boo_geo", "boo_geo", "0x0c000224"), - ("haunted_cage_geo", "haunted_cage_geo", "0x0c000274"), -] - -group_10_geos = [ - ("birds_geo", "birds_geo", "0x0c000000"), - ("peach_geo", "peach_geo", "0x0c000410"), - ("yoshi_geo", "yoshi_geo", "0x0c000468"), -] - -group_11_geos = [ - ("bubba_geo", "bubba_geo", "0x0c000000"), - ("wiggler_head_geo", "wiggler_head_geo", "0x0c000030"), - ("enemy_lakitu_geo", "enemy_lakitu_geo", "0x0c0001bc"), - ("spiny_ball_geo", "spiny_ball_geo", "0x0c000290"), - ("spiny_geo", "spiny_geo", "0x0c000328"), -] - -group_12_geos = [ - ("bowser_flames_geo", "bowser_flames_geo", "0x0d000000"), - ("invisible_bowser_accessory_geo", "invisible_bowser_accessory_geo", "0x0d000090"), - ("bowser_1_yellow_sphere_geo", "bowser_1_yellow_sphere_geo", "0x0d0000b0"), - ("bowser_shadow_geo", "bowser_shadow_geo", "0x0d000ab8"), - ("bowser_geo", "bowser_geo", "0x0d000ac4"), - ("bowser2_geo", "bowser2_geo", "0x0d000b40"), - ("bowser_bomb_geo", "bowser_bomb_geo", "0x0d000bbc"), - ("bowser_impact_smoke_geo", "bowser_impact_smoke_geo", "0x0d000bfc"), -] - -group_13_geos = [ - ("skeeter_geo", "skeeter_geo", "0x0d000000"), - ("seaweed_geo", "seaweed_geo", "0x0d000284"), - ("water_mine_geo", "water_mine_geo", "0x0d0002f4"), - ("cyan_fish_geo", "cyan_fish_geo", "0x0d000324"), - ("bub_geo", "bub_geo", "0x0d00038c"), - ("water_ring_geo", "water_ring_geo", "0x0d000414"), - ("treasure_chest_base_geo", "treasure_chest_base_geo", "0x0d000450"), - ("treasure_chest_lid_geo", "treasure_chest_lid_geo", "0x0d000468"), -] - -group_14_geos = [ - ("koopa_flag_geo", "koopa_flag_geo", "0x0d000000"), - ("wooden_post_geo", "wooden_post_geo", "0x0d0000b8"), - ("koopa_without_shell_geo", "koopa_without_shell_geo", "0x0d0000d0"), - ("koopa_with_shell_geo", "koopa_with_shell_geo", "0x0d000214"), - ("piranha_plant_geo", "piranha_plant_geo", "0x0d000358"), - ("whomp_geo", "whomp_geo", "0x0d000480"), - ("metallic_ball_geo", "metallic_ball_geo", "0x0d0005d0"), - ("chain_chomp_geo", "chain_chomp_geo", "0x0d0005ec"), -] - -group_15_geos = [ - ("lakitu_geo", "lakitu_geo", "0x0d000000"), - ("toad_geo", "toad_geo", "0x0d0003e4"), - ("mips_geo", "mips_geo", "0x0d000448"), - ("boo_castle_geo", "boo_castle_geo", "0x0d0005b0"), -] - -group_16_geos = [ - ("moneybag_geo", "moneybag_geo", "0x0d0000f0"), - ("mr_i_geo", "mr_i_geo", "0x0d000000"), - ("mr_i_iris_geo", "mr_i_iris_geo", "0x0d00001c"), -] - -group_17_geos = [ - ("swoop_geo", "swoop_geo", "0x0d0000dc"), - ("snufit_geo", "snufit_geo", "0x0d0001a0"), - ("dorrie_geo", "dorrie_geo", "0x0d000230"), - ("scuttlebug_geo", "scuttlebug_geo", "0x0d000394"), -] - -common_0_geos = [ - ("blue_coin_switch_geo", "blue_coin_switch_geo", "0x0f000000"), - ("test_platform_geo", "test_platform_geo", "0x0f000020"), - ("dAmpGeo", "amp_geo", "0x0f000028"), - ("cannon_base_geo", "cannon_base_geo", "0x0f0001a8"), - ("cannon_barrel_geo", "cannon_barrel_geo", "0x0f0001c0"), - ("chuckya_geo", "chuckya_geo", "0x0f0001d8"), - ("purple_switch_geo", "purple_switch_geo", "0x0f0004cc"), - ("checkerboard_platform_geo", "checkerboard_platform_geo", "0x0f0004e4"), - ("heart_geo", "heart_geo", "0x0f0004fc"), - ("flyguy_geo", "flyguy_geo", "0x0f000518"), - ("breakable_box_geo", "breakable_box_geo", "0x0f0005d0"), - ("breakable_box_small_geo", "breakable_box_small_geo", "0x0f000610"), - ("bowling_ball_geo", "bowling_ball_geo", "0x0f000640"), - ("bowling_ball_track_geo", "bowling_ball_track_geo", "0x0f00066c"), - ("exclamation_box_geo", "exclamation_box_geo", "0x0f000694"), - ("goomba_geo", "goomba_geo", "0x0f0006e4"), - ("black_bobomb_geo", "black_bobomb_geo", "0x0f0007b8"), - ("bobomb_buddy_geo", "bobomb_buddy_geo", "0x0f0008f4"), - ("metal_box_geo", "metal_box_geo", "0x0f000a30"), - ("exclamation_box_outline_geo", "exclamation_box_outline_geo", "0x0f000a58"), - ("koopa_shell_geo", "koopa_shell_geo", "0x0f000ab0"), - ("koopa_shell2_geo", "koopa_shell2_geo", "0x0f000adc"), - ("koopa_shell3_geo", "koopa_shell3_geo", "0x0f000b08"), -] - -common_1_geos = [ - ("mist_geo", "mist_geo", "0x16000000"), - ("white_puff_geo", "white_puff_geo", "0x16000020"), - ("explosion_geo", "explosion_geo", "0x16000040"), - ("butterfly_geo", "butterfly_geo", "0x160000a8"), - ("yellow_coin_geo", "yellow_coin_geo", "0x1600013c"), - ("yellow_coin_no_shadow_geo", "yellow_coin_no_shadow_geo", "0x160001a0"), - ("blue_coin_geo", "blue_coin_geo", "0x16000200"), - ("blue_coin_no_shadow_geo", "blue_coin_no_shadow_geo", "0x16000264"), - ("red_coin_geo", "red_coin_geo", "0x160002c4"), - ("red_coin_no_shadow_geo", "red_coin_no_shadow_geo", "0x16000328"), - ("warp_pipe_geo", "warp_pipe_geo", "0x16000388"), - ("castle_door_geo", "castle_door_geo", "0x160003a8"), - ("cabin_door_geo", "cabin_door_geo", "0x1600043c"), - ("wooden_door_geo", "wooden_door_geo", "0x160004d0"), - ("wooden_door2_geo", "wooden_door2_geo", "0x16000564"), - ("metal_door_geo", "metal_door_geo", "0x160005f8"), - ("hazy_maze_door_geo", "hazy_maze_door_geo", "0x1600068c"), - ("haunted_door_geo", "haunted_door_geo", "0x16000720"), - ("castle_door_0_star_geo", "castle_door_0_star_geo", "0x160007b4"), - ("castle_door_1_star_geo", "castle_door_1_star_geo", "0x16000868"), - ("castle_door_3_stars_geo", "castle_door_3_stars_geo", "0x1600091c"), - ("key_door_geo", "key_door_geo", "0x160009d0"), - ("bowser_key_geo", "bowser_key_geo", "0x16000a84"), - ("bowser_key_cutscene_geo", "bowser_key_cutscene_geo", "0x16000ab0"), - ("red_flame_shadow_geo", "red_flame_shadow_geo", "0x16000b10"), - ("red_flame_geo", "red_flame_geo", "0x16000b2c"), - ("blue_flame_geo", "blue_flame_geo", "0x16000b8c"), - ("fish_shadow_geo", "fish_shadow_geo", "0x16000bec"), - ("fish_geo", "fish_geo", "0x16000c44"), - ("leaves_geo", "leaves_geo", "0x16000c8c"), - ("marios_cap_geo", "marios_cap_geo", "0x16000ca4"), - ("marios_metal_cap_geo", "marios_metal_cap_geo", "0x16000cf0"), - ("marios_wing_cap_geo", "marios_wing_cap_geo", "0x16000d3c"), - ("marios_winged_metal_cap_geo", "marios_winged_metal_cap_geo", "0x16000da8"), - ("number_geo", "number_geo", "0x16000e14"), - ("mushroom_1up_geo", "mushroom_1up_geo", "0x16000e84"), - ("star_geo", "star_geo", "0x16000ea0"), - ("dirt_animation_geo", "dirt_animation_geo", "0x16000ed4"), - ("cartoon_star_geo", "cartoon_star_geo", "0x16000f24"), - ("transparent_star_geo", "transparent_star_geo", "0x16000f6c"), - ("white_particle_geo", "white_particle_geo", "0x16000f98"), - ("wooden_signpost_geo", "wooden_signpost_geo", "0x16000fb4"), - ("bubbly_tree_geo", "bubbly_tree_geo", "0x16000fe8"), - ("spiky_tree_geo", "spiky_tree_geo", "0x16001000"), - ("snow_tree_geo", "snow_tree_geo", "0x16001018"), - ("spiky_tree1_geo", "spiky_tree1_geo", "0x16001030"), - ("palm_tree_geo", "palm_tree_geo", "0x16001048"), -] BEHAVIOR_EXITS = [ "RETURN", "GOTO", @@ -2543,7 +2321,6 @@ def validate_dict(val: DictOrVal, val_type: type): def validate_list(val: ListOrVal, val_type: type): return all(isinstance(v, val_type) for v in as_list(val)) - @dataclasses.dataclass class AnimInfo: address: int @@ -2653,6 +2430,11 @@ def __post_init__(self): def get_member_as_dict(name: str, member: DictOrVal[T]): return as_dict(member, name) + def get_model_info(self, name: str): + if type(self.models) == dict: + return self.models.get(name) + else: + return self.models ACTOR_PRESET_INFO = { "Amp": ActorPresetInfo( diff --git a/fast64_internal/sm64/sm64_function_map.py b/fast64_internal/sm64/sm64_function_map.py index 9247391d5..af3f3d604 100644 --- a/fast64_internal/sm64/sm64_function_map.py +++ b/fast64_internal/sm64/sm64_function_map.py @@ -50963,7 +50963,7 @@ "007cc6c0": "_common0_geoSegmentRomStart", "0f000000": "blue_coin_switch_geo", "0f000020": "test_platform_geo", - "0f000028": "amp_geo", + "0f000028": "dAmpGeo", "0f0001a8": "cannon_base_geo", "0f0001c0": "cannon_barrel_geo", "0f0001d8": "chuckya_geo", diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 0665818da..c407aca6b 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -3,12 +3,17 @@ # ------------------------------------------------------------------------ # TODO: -# create textures from u8 / u16 arrays (slow, give checkbox option) -# make layer detection work better? +# fix materials for binary (mostly render modes, color combiners and lights) +# clean up code base, remove existing sm64 binary importer +# make sure props play nice in prop updating system + +# stretch goals # deal with direct DLs instead of geos (model metal box for example) # make rooms work better? (currently imports but definetly not good for export) +# make layer detection work better? # add function and class descriptors per spec (triple quotes) # make better naming for certain vars +# try to fix edge cases and any weird importing stuff (basically lots of testing, it feels mostly good but this must be done last) from __future__ import annotations @@ -52,8 +57,6 @@ from numbers import Number from collections.abc import Sequence -# from SM64classes import * - from ..f3d.f3d_import import * from ..f3d.f3d_material import update_node_values_of_material, getDefaultMaterialPreset, createF3DMat from ..panels import SM64_Panel @@ -71,33 +74,15 @@ gammaInverse, ) from .sm64_objects import enumEnvFX -from .sm64_utility import import_rom_checks +from .sm64_utility import import_rom_checks, convert_addr_to_func from .sm64_constants import ( + ACTOR_PRESET_INFO, + ModelInfo, enumVersionDefs, enumLevelNames, enumSpecialsNames, LEVEL_ID_NUMBERS, - groups_obj_export, - group_0_geos, - group_1_geos, - group_2_geos, - group_3_geos, - group_4_geos, - group_5_geos, - group_6_geos, - group_7_geos, - group_8_geos, - group_9_geos, - group_10_geos, - group_11_geos, - group_12_geos, - group_13_geos, - group_14_geos, - group_15_geos, - group_16_geos, - group_17_geos, - common_0_geos, - common_1_geos, + groups_obj_export ) # ------------------------------------------------------------------------ @@ -143,6 +128,7 @@ def __init__( ): self.root = root self.geo = geo + self.geo_data = None self.num = num self.scene = scene self.props = scene.fast64.sm64.importer @@ -165,7 +151,6 @@ def add_warp(self, args: list[str], type: str): warp.warpID = args[0] warp.destNode = args[3] level = get_level_name(args[1]).replace("LEVEL_", "").lower() - print(level) if level == "castle": level = "castle_inside" warp.warpType = type @@ -196,7 +181,6 @@ def add_object(self, args: list[str]): ) @ transform_mtx_blender_to_n64() angle = Euler([math.radians(eval_or_int(a)) for a in args[4:7]], "ZXY") angle = rotate_quat_n64_to_blender(angle).to_euler("XYZ") - # print(pos, angle) self.objects.append(Object(args[0], pos, angle, *args[7:])) def place_objects(self, col_name: str = None, actor_models: dict[model_name, bpy.Types.Object] = None): @@ -380,15 +364,15 @@ class Level(DataParser): 0x14: ("PUSH_POOL", PackedFormat(">H")), # pad 0x15: ("POP_POOL", PackedFormat(">H")), # pad 0x16: ("FIXED_LOAD", PackedFormat(">H3L")), # load_addr start_ptr end_ptr - 0x17: ("LOAD_RAW", PackedFormat(">H2L", make_str=False)), # seg start_ptr end_ptr - 0x18: ("LOAD_MIO0", PackedFormat(">H2L", make_str=False)), # seg start_ptr end_ptr + 0x17: ("LOAD_RAW", PackedFormat(">2B2L", reorder = (1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr + 0x18: ("LOAD_MIO0", PackedFormat(">2B2L", reorder = (1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr 0x19: ("LOAD_MARIO_HEAD", PackedFormat(">H")), # set head - 0x1A: ("LOAD_MIO0_TEXTURE", PackedFormat(">H2L", make_str=False)), # seg start_ptr end_ptr + 0x1A: ("LOAD_MIO0_TEXTURE", PackedFormat(">2B2L", reorder = (1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr 0x1B: ("INIT_LEVEL", PackedFormat(">H")), # pad 0x1C: ("CLEAR_LEVEL", PackedFormat(">H")), # pad 0x1D: ("ALLOC_LEVEL_POOL", PackedFormat(">H")), # pad 0x1E: ("FREE_LEVEL_POOL", PackedFormat(">H")), # pad - 0x1F: ("AREA", PackedFormat(">2BL", (2,))), # index, pad, geo_ptr + 0x1F: ("AREA", PackedFormat(">2BL", make_str=False)), # index, pad, geo_ptr, delay ptr retrieval because hacks do 0x20: ("END_AREA", PackedFormat(">H")), # pad 0x21: ("LOAD_MODEL_FROM_DL", PackedFormat(">Hl")), # model|layer dl_ptr 0x22: ("LOAD_MODEL_FROM_GEO", PackedFormat(">HL", (1,))), # model geo_ptr @@ -406,7 +390,7 @@ class Level(DataParser): 0x2B: ("MARIO_POS", PackedFormat(">BB4h")), # area pad yaw posXYZ 0x2C: ("UNLOAD_MARIO_AREA", PackedFormat(">H")), # pad 0x2D: "UPDATE_OBJECTS", - 0x2E: ("TERRAIN", PackedFormat(">HL", (1,))), # pad col_ptr + 0x2E: ("TERRAIN", PackedFormat(">HL", make_str=False)), # pad col_ptr, delay ptr retrieval because hacks do 0x2F: ("ROOMS", PackedFormat(">HL")), # pad rooms_ptr 0x30: ("SHOW_DIALOG", PackedFormat(">BB")), # index dialog_id 0x31: ("TERRAIN_TYPE", PackedFormat(">H")), # terrain type @@ -479,9 +463,52 @@ def load_segment_two(self, bin_file: BinaryIO): start += self.unpack_type(bin_file, 0x3ACE, ">H", make_str=False) end = self.unpack_type(bin_file, 0x3AC6, ">H", make_str=False) << 16 end += self.unpack_type(bin_file, 0x3ACA, ">H", make_str=False) - # mio0 for seg2 just happens to expand start by 0x3156 idk how it really works + # mio0 for seg2 expands by 0x3156, from mio0 header 0xC self.banks.tlb[2] = [start + 0x3156, end + 0x3156] + def check_rom_manager(self, editor: bool = False, rom_manager: bool = True): + """ + # custom hacks override the level script execute jump table (0x8038B914 -> 0x00108694) cmd 0x17 LOAD_RAW with a cmd in custom memory + # in vanilla it is 0x8037ECA4 -> 0x00FBA24 + # the function goes to 0x80402000 -> 0x1204000 + # in editor the override goes to 0x80401500 -> 0x1201500 + # other versions of editor/rom manager may use other overrides but I doubt it's that common + # for debugging purposes, sSegmentTable is 0x8033B400 + + # check for version based on args, default is rom manager. False for vanilla, True if matching specific tool + """ + load_raw_func_addr = self.unpack_type(self.bin_file, 0x00108694, ">L", make_str=False) + if load_raw_func_addr == 0x8037ECA4: + return False + if load_raw_func_addr == 0x80402000 and rom_manager: + return True + else: + return editor + + # update area terrain and geo_ptr + def update_col_ptr(self, area_index: int): + if self.areas[area_index].terrain: + self.areas[area_index].terrain = self.seg2phys(self.areas[area_index].terrain) + + def update_geo_ptr(self, area_index: int): + if self.areas[area_index].geo: + self.areas[area_index].geo = self.seg2phys(self.areas[area_index].geo) + + def load_segment_E(self, area_index: int): + # for RM custom levels, segment 0xE has a hook on the CALL level script to dma new data to seg 0xE + # for blender purposes, this can just be emulated by calling this func before each area is parsed + is_rm = self.check_rom_manager() + if not is_rm: + return + # if it is a custom level it is using bank 0x19 + if not self.banks.tlb.get(0x19, None): + return + area_index = int(area_index) + load_addr = self.seg2phys(0x19005f00) + start = self.unpack_type(self.bin_file, load_addr+area_index*16, ">L", make_str=False) + end = self.unpack_type(self.bin_file, load_addr+4+area_index*16, ">L", make_str=False) + self.banks.tlb[0x0E] = [start,end] + # macro parsing funcs # jump to new script, goes back via EXIT, not RETURN # shouldn't matter though as long as game follows its own rules, can use normal recursion @@ -560,6 +587,16 @@ def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) return self._continue_parse + # mio0 header is sig, len, comp_off decomp_off. Add decomp_off to bank start + def _decode_cmd_load_mio0_texture_bin(self, packed_fmt: PackedFormat, parser: Parser) -> tuple[cmd_name: str, cmd_args: list[int], cmd_len: int]: + return self._decode_cmd_load_mio0_bin(packed_fmt, parser) + + def _decode_cmd_load_mio0_bin(self, packed_fmt: PackedFormat, parser: Parser) -> tuple[cmd_name: str, cmd_args: list[int], cmd_len: int]: + cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) + mio0_header = cmd_args[1] + mio0_offset = self.unpack_type(parser.cur_stream, mio0_header + 0xC, ">L", make_str = False) + return ("LOAD_MIO0", [cmd_args[0], cmd_args[1] + mio0_offset, cmd_args[2] + mio0_offset], packed_fmt.format_size) + def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) return self._continue_parse @@ -725,7 +762,7 @@ class ColTri: class Collision(DataParser): - def __init__(self, collision: list[str], scale: float): + def __init__(self, collision: list[str], scale: float, parse_target = DataParser._c_parsing): self.collision = collision # will be none in binary self.scale = scale self.vertices = [] @@ -734,7 +771,7 @@ def __init__(self, collision: list[str], scale: float): self.type: str = None self.special_objects = [] self.water_boxes = [] - super().__init__() + super().__init__(parse_target = parse_target) def write_water_boxes( self, scene: bpy.types.Scene, parent: bpy.types.Object, name: str, col: bpy.types.Collection = None @@ -767,7 +804,6 @@ def write_collision( col = scene.collection self.write_water_boxes(scene, parent, name, col) mesh = bpy.data.meshes.new(f"{name} data") - print(len(self.vertices), len(self.tris)) mesh.from_pydata(self.vertices, [], [tri.verts for tri in self.tris]) obj = bpy.data.objects.new(f"{name} mesh", mesh) col.objects.link(obj) @@ -940,7 +976,12 @@ class SM64_Material(Mat): def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None - tex_img = textures.get(tex.tex_img)[0] + # for some reason I can't get the parsing target to be what I want, so read props instead + # would like for this to be better + if bpy.context.scene.fast64.sm64.importer.import_target == "Binary": + return self.load_texture_array(force_new_tex, textures, path, tex, DataParser._binary_parsing) + else: + tex_img = textures.get(tex.tex_img)[0] if "#include" in tex_img: return self.load_texture_png(force_new_tex, textures, path, tex) else: @@ -1079,20 +1120,6 @@ def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, la self.StartName = start return [self.Verts, self.Tris] - # turn member of vtx str arr into vtx args - def parse_vert(self, Vert: str): - v = Vert.replace("{", "").replace("}", "").split(",") - num = lambda x: [eval_or_int(a) for a in x] - pos = num(v[:3]) - uv = num(v[4:6]) - vc = num(v[6:10]) - return [pos, uv, vc] - - # given tri args in gbi cmd, give appropriate tri indices in vert list - def parse_tri(self, Tri: list[int]): - L = len(self.Verts) - return [a + L - self.LastLoad for a in Tri] - def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path): bpy.context.view_layer.objects.active = obj ind = -1 @@ -1209,6 +1236,7 @@ class GraphNodes(DataParser): "GEO_NODE_SCREEN_AREA", "GEO_ZBUFFER", "GEO_RENDER_OBJ", + "GEO_START", } # geo layouts use first byte to determine if a DL is added @@ -1299,7 +1327,42 @@ def __init__( # pick the right subclass given contents of geo layout @staticmethod - def new_subclass_dyn( + def new_subclass_dyn_bin( + bin_file: BinaryIO, + scene: bpy.types.Scene, + entry_ptr: int, + col: bpy.types.Collection = None, + parse_target: int = DataParser._binary_parsing, + ) -> Union[GeoLayout, GeoArmature]: + if not bin_file: + raise Exception( + "no binary file included for geo export", + "pass_linked_export", + ) + offset = 0 + # hopefully this doesn't go on long + while offset < 0x40: + cmd_type = struct.unpack(">B", bin_file[entry_ptr+offset:entry_ptr+1+offset])[0] + cmd_name, packed_cmd = GraphNodes._geo_cmds_bin_format.get(cmd_type) + offset += packed_cmd.format_size + 1 + # this won't be perfect but it'll avoid having to parse the entire geo layout + if cmd_name in {"GEO_ANIMATED_PART", "GEO_SHADOW", "GEO_SWITCH_CASE", "GEO_SCALE", "GEO_BILLBOARD_BIN"}: + arm_obj = bpy.data.objects.new(f"geo_arm_{entry_ptr}", bpy.data.armatures.new(f"geo_arm_{entry_ptr}")) + col.objects.link(arm_obj) + geo_layout = GeoArmature(None, arm_obj, scene, entry_ptr, col=col, parse_target=parse_target) + bpy.context.view_layer.objects.active = geo_layout.get_or_init_geo_armature() + break + elif cmd_name in {"GEO_END", "GEO_BRANCH_AND_LINK", "GEO_BRANCH", "GEO_TRANSLATE_ROTATE", "GEO_ROTATION_NODE_BIN", "GEO_TRANSLATE_NODE_BIN"} or offset > 0x40: + geo_layout = GeoLayout(None, None, scene, entry_ptr, None, col=col, parse_target=parse_target) + break + + geo_layout.bin_file = bin_file + geo_layout.parse_geo_from_start(entry_ptr, 0) + return geo_layout + + # pick the right subclass given contents of geo layout + @staticmethod + def new_subclass_dyn_c( geo_layout_dict: dict[geo_name:str, geo_data : list[str]], scene: bpy.types.Scene, layout_name: str, @@ -1530,7 +1593,7 @@ def GEO_ROTATE_WITH_DL(self, macro: Macro, depth: int): self.set_transform(geo_obj, self.last_transform) return geo_obj - def _decode_cmd_geo_translate_rotate_bin(self, parser: Parser): + def _decode_cmd_geo_translate_rotate_bin(self, packed_fmt: PackedFormat, parser: Parser): cmd_flags = self.unpack_type(parser.cur_stream, parser.head, ">B") # translate rotate if (cmd_flags & 0x30) == 0x00: @@ -1702,7 +1765,7 @@ def __init__( geo_layouts: dict, root: bpy.types.Object, scene: bpy.types.Scene, - name: str, + name: Union[str, int], area_root: bpy.types.Object, col: bpy.types.Collection = None, geo_parent: GeoLayout = None, @@ -1950,7 +2013,7 @@ def __init__( geo_layouts: dict, armature_obj: bpy.types.Armature, scene: bpy.types.Scene, - name: str, + name: Union[str, int], col: bpy.types.Collection, is_switch_child: bool = False, parent_bone: bpy.types.Bone = None, @@ -2198,6 +2261,8 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): # parse aggregate files, and search for sm64 specific fast64 export name schemes def get_all_aggregates(aggregate_path: Path, filenames: tuple[callable], root_path: Path) -> list[Path]: + if not aggregate_path or not aggregate_path.exists(): + return [] with open(aggregate_path, "r", newline="") as file: caught_files = parse_aggregate_file(file, filenames, root_path, aggregate_path) # catch fast64 includes @@ -2211,7 +2276,6 @@ def get_all_aggregates(aggregate_path: Path, filenames: tuple[callable], root_pa def get_level_name(level_arg: Union[int, str]) -> str: if type(level_arg) is not str or level_arg.isdigit(): level_arg = eval_or_int(level_arg) - print(level_arg, LEVEL_ID_NUMBERS.get(level_arg, level_arg)) return LEVEL_ID_NUMBERS.get(level_arg) else: return level_arg @@ -2455,8 +2519,8 @@ def write_geo_to_bpy( # write the gfx for a level given the level data, and f3d data def write_level_to_bpy(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: SM64_F3D, cleanup: bool = False): - for area in lvl.areas.values(): - write_geo_to_bpy(area.geo, scene, f3d_dat, root_path, dict(), cleanup=cleanup) + for area_index, area in lvl.areas.items(): + write_geo_to_bpy(area.geo_data, scene, f3d_dat, root_path, dict(), cleanup=cleanup) return lvl @@ -2569,7 +2633,7 @@ def find_actor_models_from_model_ids( print(f"could not find model {model}") continue try: - geo_layout = GraphNodes.new_subclass_dyn(geo_layout_dict, scene, layout_name, col) + geo_layout = GraphNodes.new_subclass_dyn_c(geo_layout_dict, scene, layout_name, col) geo_layout_per_model[model] = geo_layout except Exception as exc: if exc.args[1] == "pass_linked_export": @@ -2588,7 +2652,18 @@ def find_actor_models_from_geo( col: bpy.types.Collection = None, ) -> GeoLayout: geo_layout_dict = construct_geo_layouts_from_file(geo_paths, root_path) - return GraphNodes.new_subclass_dyn(geo_layout_dict, scene, layout_name, col) + return GraphNodes.new_subclass_dyn_c(geo_layout_dict, scene, layout_name, col) + + +# Parse an aggregate group file or level data file for geo layouts +def find_actor_models_binary( + bin_file: BinaryIO, + entry: int, + scene: bpy.types.Scene, + root_path: Path, + col: bpy.types.Collection = None, +) -> GeoLayout: + return GraphNodes.new_subclass_dyn_bin(bin_file, scene, entry, col) # Find DL references given a level geo file and a path to a level folder @@ -2613,6 +2688,8 @@ def find_level_models_from_geo( def find_level_models_binary(lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None) -> Level: props = scene.fast64.sm64.importer for area_index, area in lvl.areas.items(): + lvl.load_segment_E(area_index) + lvl.update_geo_ptr(area_index) if col_name: col = create_collection(area.root.users_collection[0], col_name) else: @@ -2632,13 +2709,13 @@ def find_level_models_binary(lvl: Level, scene: bpy.types.Scene, root_path: Path except Exception as exc: if type(exc) is not ParseException: raise exc - area.geo = geo + area.geo_data = geo return lvl # import level graphics given geo.c file, and a level object def import_level_graphics( - bin_path: list[Path], + geo_paths: list[Path], lvl: Level, scene: bpy.types.Scene, root_path: Path, @@ -2661,6 +2738,7 @@ def import_level_graphics( scene.f3d_type = "F3D" models = SM64_F3D(scene, DataParser._binary_parsing) models.bin_file = lvl.bin_file + models.banks = lvl.banks scene.f3d_type = f3d_option lvl = write_level_to_bpy(lvl, scene, root_path, models, cleanup=cleanup) return lvl @@ -2694,6 +2772,8 @@ def write_level_collision_to_bpy( actor_models: dict[model_name, bpy.Types.Mesh] = None, ): for area_index, area in lvl.areas.items(): + lvl.load_segment_E(area_index) + lvl.update_col_ptr(area_index) if not col_name: col = area.root.users_collection[0] else: @@ -2758,6 +2838,7 @@ def execute(self, context): rt_col = context.collection props = scene.fast64.sm64.importer + rom_path = get_and_check_rom(scene) decomp_path = Path(bpy.path.abspath(scene.fast64.sm64.decomp_path)) group_prefix = props.group_prefix @@ -2772,10 +2853,25 @@ def execute(self, context): decomp_path / "levels" / level_name / (level_prefix + "leveldata.c"), ) - geo_layout = find_actor_models_from_geo( - geo_paths, props.geo_layout, scene, decomp_path, col=rt_col - ) # return geo layout class and write the geo layout - models = construct_model_data_from_file(model_data_paths, scene, decomp_path) + if props.import_target == "C": + geo_layout = find_actor_models_from_geo( + geo_paths, props.geo_layout, scene, decomp_path, col=rt_col + ) # return geo layout class and write the geo layout + models = construct_model_data_from_file(model_data_paths, scene, decomp_path) + elif props.import_target == "Binary": + # levels need to be parsed to get the rom bank loads, choose level object is used in + lvl = parse_level_script(None, None, rom_path, scene, rt_col) + entry = lvl.seg2phys(props.geo_layout_binary) + geo_layout = find_actor_models_binary( + lvl.bin_file, entry, scene, decomp_path, col=rt_col + ) # return geo layout class and write the geo layout + f3d_option = scene.f3d_type + scene.f3d_type = "F3D" + models = SM64_F3D(scene, DataParser._binary_parsing) + models.bin_file = lvl.bin_file + models.banks = lvl.banks + scene.f3d_type = f3d_option + # just a try, in case you are importing from not the base decomp repo try: models.get_generic_textures(decomp_path) @@ -3021,115 +3117,29 @@ def draw(self, layout, index): row.operator("scene.remove_group", text="Remove Group").option = index +def get_sm64_geos(): + # model_name, common name, description + enum_list = [] + for name, actor in ACTOR_PRESET_INFO.items(): + if not actor.models: + continue + if type(actor.models) is ModelInfo: + enum_list.append((name, name, name)) + else: + for model in actor.models.keys(): + enum_list.append((model, model, name)) + return enum_list + class SM64_ImportProperties(PropertyGroup): # actor props - geo_layout_str: StringProperty(name="geo_layout", description="Name of GeoLayout") + custom_geo_layout_str: StringProperty(name="Geo Layout Name", description="Name of GeoLayout") + custom_geo_layout_addr: StringProperty(name="Geo Layout Address", description="Address of GeoLayout") - group_preset: EnumProperty( - name="group preset", description="The group you want to load geo from", items=groups_obj_export - ) - group_0_geo_enum: EnumProperty( - name="group 0 geos", - description="preset geos from vanilla in group 0", - items=[*group_0_geos, ("Custom", "Custom", "Custom")], - ) - group_1_geo_enum: EnumProperty( - name="group 1 geos", - description="preset geos from vanilla in group 1", - items=[*group_1_geos, ("Custom", "Custom", "Custom")], - ) - group_2_geo_enum: EnumProperty( - name="group 2 geos", - description="preset geos from vanilla in group 2", - items=[*group_2_geos, ("Custom", "Custom", "Custom")], - ) - group_3_geo_enum: EnumProperty( - name="group 3 geos", - description="preset geos from vanilla in group 3", - items=[*group_3_geos, ("Custom", "Custom", "Custom")], - ) - group_4_geo_enum: EnumProperty( - name="group 4 geos", - description="preset geos from vanilla in group 4", - items=[*group_4_geos, ("Custom", "Custom", "Custom")], - ) - group_5_geo_enum: EnumProperty( - name="group 5 geos", - description="preset geos from vanilla in group 5", - items=[*group_5_geos, ("Custom", "Custom", "Custom")], - ) - group_6_geo_enum: EnumProperty( - name="group 6 geos", - description="preset geos from vanilla in group 6", - items=[*group_6_geos, ("Custom", "Custom", "Custom")], - ) - group_7_geo_enum: EnumProperty( - name="group 7 geos", - description="preset geos from vanilla in group 7", - items=[*group_7_geos, ("Custom", "Custom", "Custom")], - ) - group_8_geo_enum: EnumProperty( - name="group 8 geos", - description="preset geos from vanilla in group 8", - items=[*group_8_geos, ("Custom", "Custom", "Custom")], - ) - group_9_geo_enum: EnumProperty( - name="group 9 geos", - description="preset geos from vanilla in group 9", - items=[*group_9_geos, ("Custom", "Custom", "Custom")], - ) - group_10_geo_enum: EnumProperty( - name="group 10 geos", - description="preset geos from vanilla in group 10", - items=[*group_10_geos, ("Custom", "Custom", "Custom")], - ) - group_11_geo_enum: EnumProperty( - name="group 11 geos", - description="preset geos from vanilla in group 11", - items=[*group_11_geos, ("Custom", "Custom", "Custom")], - ) - group_12_geo_enum: EnumProperty( - name="group 12 geos", - description="preset geos from vanilla in group 12", - items=[*group_12_geos, ("Custom", "Custom", "Custom")], - ) - group_13_geo_enum: EnumProperty( - name="group 13 geos", - description="preset geos from vanilla in group 13", - items=[*group_13_geos, ("Custom", "Custom", "Custom")], - ) - group_14_geo_enum: EnumProperty( - name="group 14 geos", - description="preset geos from vanilla in group 14", - items=[*group_14_geos, ("Custom", "Custom", "Custom")], + actor_preset :EnumProperty( + name="actor preset", description="Actor to import", items=[*get_sm64_geos(), ("Custom", "Custom", "Custom")] ) - group_15_geo_enum: EnumProperty( - name="group 15 geos", - description="preset geos from vanilla in group 15", - items=[*group_15_geos, ("Custom", "Custom", "Custom")], - ) - group_16_geo_enum: EnumProperty( - name="group 16 geos", - description="preset geos from vanilla in group 16", - items=[*group_16_geos, ("Custom", "Custom", "Custom")], - ) - group_17_geo_enum: EnumProperty( - name="group 17 geos", - description="preset geos from vanilla in group 17", - items=[*group_17_geos, ("Custom", "Custom", "Custom")], - ) - common_0_geo_enum: EnumProperty( - name="common 0 geos", - description="preset geos from vanilla in common 0", - items=[*common_0_geos, ("Custom", "Custom", "Custom")], - ) - common_1_geo_enum: EnumProperty( - name="common 1 geos", - description="preset geos from vanilla in common 1", - items=[*common_1_geos, ("Custom", "Custom", "Custom")], - ) - actor_prefix_custom: StringProperty( - name="Prefix", + custom_actor_prefix: StringProperty( + name="File Prefix", description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c. Enter group name if not using dropdowns.", default="", ) @@ -3144,13 +3154,13 @@ class SM64_ImportProperties(PropertyGroup): # level props level_enum: EnumProperty(name="Level", description="Choose a level", items=enumLevelNames, default="bob") - level_custom: StringProperty( + custom_level_name: StringProperty( name="Custom Level Name", description="Custom level name", default="", ) level_prefix: StringProperty( - name="Prefix", + name="Level Prefix", description="Prefix before expected aggregator files like script.c, leveldata.c and geo.c. Leave blank unless using custom files", default="", ) @@ -3195,48 +3205,67 @@ class SM64_ImportProperties(PropertyGroup): default="C", ) + def get_actor_preset(self): + enumProp = self.bl_rna.properties.get("actor_preset") + chosen_enum = None + for enum in enumProp.enum_items: + if self.actor_preset == enum.name: + chosen_enum = enum + break + else: + return None + return ACTOR_PRESET_INFO[chosen_enum.description] + @property def level_name(self): if self.level_enum == "Custom": - return self.level_custom + return self.custom_level_name else: return self.level_enum @property - def geo_group_name(self): - if self.group_preset == "Custom": - return None - if self.group_preset == "common0": - return "common_0_geo_enum" - if self.group_preset == "common1": - return "common_1_geo_enum" + def group_prefix(self): + if self.actor_preset == "Custom": + return self.custom_actor_prefix else: - return f"group_{self.group_preset.removeprefix('group')}_geo_enum" + preset_full = self.get_actor_preset() + model_info = preset_full.get_model_info(self.actor_preset) + return preset_full.group @property - def group_prefix(self): - if self.group_preset == "custom": - return self.actor_prefix_custom + def geo_layout(self): + if self.actor_preset == "Custom": + return self.custom_geo_layout_str else: - return self.group_preset + preset_full = self.get_actor_preset() + model_info = preset_full.get_model_info(self.actor_preset) + return convert_addr_to_func(f"{model_info.geolayout:08x}") @property - def geo_layout(self): - if self.group_preset == "custom": - return self.geo_layout_str + def geo_layout_binary(self): + if self.actor_preset == "Custom": + convert_addr_to_func(self.custom_geo_layout_addr) + return self.custom_geo_layout_str else: - return getattr(self, self.geo_group_name) + preset_full = self.get_actor_preset() + model_info = preset_full.get_model_info(self.actor_preset) + return model_info.geolayout def draw_actor(self, layout: bpy.types.UILayout): box = layout.box() box.label(text="SM64 Actor Importer") - box.prop(self, "group_preset") - if self.group_preset == "Custom": - box.prop(self, "actor_prefix_custom") - box.prop(self, "geo_layout_str") - else: - box.prop(self, self.geo_group_name) - if self.import_target is "C": + box.prop(self, "actor_preset") + if self.actor_preset == "Custom": + if self.import_target == "C": + box.prop(self, "custom_actor_prefix") + box.prop(self, "custom_geo_layout_str") + box.prop(self, "level_prefix") + note = box.box() + note.label(text=f"Geo must be in /levels/{self.level_name}/{self.level_prefix}geo.c") + note.label(text=f"or in /actors/{self.group_prefix}_geo.c") + else: + box.prop(self, "custom_geo_layout_addr") + if self.import_target == "C": box.prop(self, "version") box.prop(self, "target") @@ -3247,8 +3276,8 @@ def draw_level(self, layout: bpy.types.UILayout): box.label(text="Level Importer") box.prop(self, "level_enum") if self.level_enum == "Custom": - box.prop(self, "level_custom") - if self.import_target is "C": + box.prop(self, "custom_level_name") + if self.import_target == "C": box.prop(self, "entry") box.prop(self, "level_prefix") box.prop(self, "version") diff --git a/fast64_internal/sm64/tst.py b/fast64_internal/sm64/tst.py new file mode 100644 index 000000000..3ba287cd4 --- /dev/null +++ b/fast64_internal/sm64/tst.py @@ -0,0 +1,2829 @@ +{ + "Amp": ActorPresetInfo( + decomp_path="actors/amp", + level="bbh", + group="common0", + animation=AnimInfo( + address=134234164, + behaviours={"Circling Amp": 318780296, "Homing Amp": 318780244}, + size=None, + ignore_bone_count=True, + dma=False, + directory=None, + names=["Moving"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=194, enum="MODEL_AMP")], geolayout=251658280, c_name=None, displaylist=None + ), + collision={}, + ), + "Bird": ActorPresetInfo( + decomp_path="actors/bird", + level="castle_grounds", + group="group10", + animation=AnimInfo( + address=83888616, + behaviours={"Bird": 318788436, "End Birds 1": 318789212, "End Birds 2": 318789248}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Flying", "Gliding"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_BIRDS")], geolayout=201326592, c_name=None, displaylist=None + ), + collision={}, + ), + "Blargg": ActorPresetInfo( + decomp_path="actors/blargg", + level="lll", + group="group2", + animation=AnimInfo( + address=83911020, + behaviours={}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Idle", "Bite"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_BLARGG")], + geolayout=201327168, + c_name="blargg_geo", + displaylist=None, + ), + collision={}, + ), + "Blue Coin Switch": ActorPresetInfo( + decomp_path="actors/blue_coin_switch", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=140, enum="MODEL_BLUE_COIN_SWITCH")], + geolayout=251658240, + c_name=None, + displaylist=None, + ), + collision=CollisionInfo(address=134221464, c_name="blue_coin_switch_seg8_collision_08000E98"), + ), + "Blue Fish": ActorPresetInfo( + decomp_path="actors/blue_fish", + level="bbh", + group="common1", + animation=AnimInfo( + address=50447024, + behaviours=318774060, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Swimming", "Diving"], + ), + models={ + "Fish": ModelInfo( + model_id=[ModelIDInfo(number=185, enum="MODEL_FISH")], + geolayout=369101892, + c_name=None, + displaylist=None, + ), + "Fish (With Shadow)": ModelInfo( + model_id=[ModelIDInfo(number=186, enum="MODEL_FISH_SHADOW")], + geolayout=369101804, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Bobomb": ActorPresetInfo( + decomp_path="actors/bobomb", + level="bbh", + group="common0", + animation=AnimInfo( + address=134363500, + behaviours={"Bobomb": 318779764, "Bobomb Buddy": 318779868, "Bobomb Buddy (Opens Cannon)": 318779944}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walking", "Strugling"], + ), + models={ + "Bobomb": ModelInfo( + model_id=[ModelIDInfo(number=188, enum="MODEL_BLACK_BOBOMB")], + geolayout=251660216, + c_name=None, + displaylist=None, + ), + "Bobomb Buddy": ModelInfo( + model_id=[ModelIDInfo(number=195, enum="MODEL_BOBOMB_BUDDY")], + geolayout=251660532, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Bowser Bomb": ActorPresetInfo( + decomp_path="actors/bomb", + level="bowser_1", + group="group12", + animation={}, + models=ModelInfo( + model_id=[ + ModelIDInfo(number=101, enum="MODEL_BOWSER_BOMB_CHILD_OBJ"), + ModelIDInfo(number=179, enum="MODEL_BOWSER_BOMB"), + ], + geolayout=218106812, + c_name="bowser_bomb_geo", + displaylist=None, + ), + collision={}, + ), + "Boo": ActorPresetInfo( + decomp_path="actors/boo", + level="bbh", + group="group9", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_BOO")], geolayout=201327140, c_name="boo_geo", displaylist=None + ), + collision={}, + ), + "Boo (Inside Castle)": ActorPresetInfo( + decomp_path="actors/boo_castle", + level="castle_inside", + group="group15", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=101, enum="MODEL_BOO_CASTLE")], + geolayout=218105264, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Bookend": ActorPresetInfo( + decomp_path="actors/book", + level="bbh", + group="group9", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=89, enum="MODEL_BOOKEND")], + geolayout=201326784, + c_name="bookend_geo", + displaylist=None, + ), + collision={}, + ), + "Bookend Part": ActorPresetInfo( + decomp_path="actors/bookend", + level="bbh", + group="group9", + animation=AnimInfo( + address=83895616, + behaviours=318787692, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Opening Mouth", "Bite", "Closed"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=88, enum="MODEL_BOOKEND_PART")], + geolayout=201326592, + c_name="bookend_part_geo", + displaylist=None, + ), + collision={}, + ), + "Metal Ball": ActorPresetInfo( + decomp_path="actors/bowling_ball", + level="bbh", + group="common0", + animation={}, + models={ + "Bowling Ball": ModelInfo( + model_id=[ModelIDInfo(number=180, enum="MODEL_BOWLING_BALL")], + geolayout=251659840, + c_name=None, + displaylist=None, + ), + "Trajectory Marker Ball": ModelInfo( + model_id=[ModelIDInfo(number=225, enum="MODEL_TRAJECTORY_MARKER_BALL")], + geolayout=251659884, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Bowser": ActorPresetInfo( + decomp_path="actors/bowser", + level="bowser_1", + group="group12", + animation=AnimInfo( + address=101021664, + behaviours=318773328, + size=27, + ignore_bone_count=True, + dma=False, + directory=None, + names=[ + "Stand Up", + "Stand Up (Unused)", + "Shaking", + "Grabbed", + "Broken Animation (Unused)", + "Fall Down", + "Fire Breath", + "Jump", + "Jump Stop", + "Jump Start", + "Dance", + "Fire Breath Up", + "Idle", + "Slow Gait", + "Look Down Stop Walk", + "Look Up Start Walk", + "Flip Down", + "Lay Down", + "Run Start", + "Run", + "Run Stop", + "Run Slip", + "Fire Breath Quick", + "Edge Move", + "Edge Stop", + "Flip", + "Stand Up From Flip", + ], + ), + models={ + "Bowser": ModelInfo( + model_id=[ModelIDInfo(number=100, enum="MODEL_BOWSER")], + geolayout=218106564, + c_name=None, + displaylist=None, + ), + "Bowser (No Shadow)": ModelInfo( + model_id=[ModelIDInfo(number=105, enum="MODEL_BOWSER_NO_SHADOW")], + geolayout=218106688, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Bowser Flame": ActorPresetInfo( + decomp_path="actors/bowser_flame", + level="bowser_1", + group="group12", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=103, enum="MODEL_BOWSER_FLAMES")], + geolayout=218103808, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Bowser Key": ActorPresetInfo( + decomp_path="actors/bowser_key", + level="bbh", + group="common1", + animation=AnimInfo( + address=50426576, + behaviours={"Bowser Key": 318774196, "Bowser Key (Cutscene)": 318774228}, + size=2, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Unlock Door", "Course Exit"], + ), + models={ + "Bowser Key (Cutscene)": ModelInfo( + model_id=[ModelIDInfo(number=200, enum="MODEL_BOWSER_KEY_CUTSCENE")], + geolayout=369101488, + c_name=None, + displaylist=None, + ), + "Bowser Key": ModelInfo( + model_id=[ModelIDInfo(number=204, enum="MODEL_BOWSER_KEY")], + geolayout=369101444, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Breakable Box": ActorPresetInfo( + decomp_path="actors/breakable_box", + level="bbh", + group="common0", + animation={}, + models={ + "Breakable Box": ModelInfo( + model_id=[ModelIDInfo(number=129, enum="MODEL_BREAKABLE_BOX")], + geolayout=251659728, + c_name=None, + displaylist=None, + ), + "Breakable Box (Small)": ModelInfo( + model_id=[ModelIDInfo(number=130, enum="MODEL_BREAKABLE_BOX_SMALL")], + geolayout=251659792, + c_name=None, + displaylist=None, + ), + }, + collision=CollisionInfo(address=134294896, c_name="breakable_box_seg8_collision_08012D70"), + ), + "Bub": ActorPresetInfo( + decomp_path="actors/bub", + level="wdw", + group="group13", + animation=AnimInfo( + address=100737876, + behaviours=318775820, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Swimming"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=100, enum="MODEL_BUB")], + geolayout=218104716, + c_name="bub_geo", + displaylist=None, + ), + collision={}, + ), + "Bubba": ActorPresetInfo( + decomp_path="actors/bubba", + level="thi", + group="group11", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=89, enum="MODEL_BUBBA")], + geolayout=201326592, + c_name="bubba_geo", + displaylist=None, + ), + collision={}, + ), + "Bubble": ActorPresetInfo( + decomp_path="actors/bubble", + level="bbh", + group="group0", + animation={}, + models={ + "Bubble": ModelInfo( + model_id=[ModelIDInfo(number=168, enum="MODEL_BUBBLE")], + geolayout=385875968, + c_name=None, + displaylist=None, + ), + "Bubble Marble": ModelInfo( + model_id=[ModelIDInfo(number=170, enum="MODEL_PURPLE_MARBLE")], + geolayout=385875996, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Bullet Bill": ActorPresetInfo( + decomp_path="actors/bullet_bill", + level="wf", + group="group1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_BULLET_BILL")], + geolayout=201327204, + c_name="bullet_bill_geo", + displaylist=None, + ), + collision={}, + ), + "Bully": ActorPresetInfo( + decomp_path="actors/bully", + level="lll", + group="group2", + animation=AnimInfo( + address=83904268, + behaviours={"Bully": 318781024, "Bully (With Minions)": 318781076, "Bully (Small)": 318780972}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Patrol", "Chase", "Falling over (Unused)", "Knockback"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_BULLY")], + geolayout=201326592, + c_name="bully_geo", + displaylist=None, + ), + collision={}, + ), + "Burn Smoke": ActorPresetInfo( + decomp_path="actors/burn_smoke", + level="bbh", + group="group0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=148, enum="MODEL_BURN_SMOKE")], + geolayout=385876100, + c_name="burn_smoke_geo", + displaylist=None, + ), + collision={}, + ), + "Butterfly": ActorPresetInfo( + decomp_path="actors/butterfly", + level="bbh", + group="common1", + animation=AnimInfo( + address=50353840, + behaviours={"Butterfly": 318780348, "Triplet Butterfly": 318789016}, + size=2, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Flying", "Resting"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=187, enum="MODEL_BUTTERFLY")], + geolayout=369098920, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Cannon Barrel": ActorPresetInfo( + decomp_path="actors/cannon_barrel", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=127, enum="MODEL_CANNON_BARREL")], + geolayout=251658688, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Cannon Base": ActorPresetInfo( + decomp_path="actors/cannon_base", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=128, enum="MODEL_CANNON_BASE")], + geolayout=251658664, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Cannon Lid": ActorPresetInfo( + decomp_path="actors/cannon_lid", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=201, enum="MODEL_DL_CANNON_LID")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=134236384, c_name="cannon_lid_seg8_dl_080048E0"), + ), + collision=CollisionInfo(address=134236496, c_name="cannon_lid_seg8_collision_08004950"), + ), + "Cap Switch": ActorPresetInfo( + decomp_path="actors/capswitch", + level="vcutm", + group="group8", + animation={}, + models={ + "Cap Switch": ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_CAP_SWITCH")], + geolayout=201326664, + c_name=None, + displaylist=None, + ), + "Cap Switch (Exclamation)": ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_CAP_SWITCH_EXCLAMATION")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=83897856, c_name="cap_switch_exclamation_seg5_dl_05002E00"), + ), + "Cap Switch (Base)": ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_CAP_SWITCH_BASE")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=83898656, c_name="cap_switch_base_seg5_dl_05003120"), + ), + }, + collision={ + "Cap Switch (Base)": CollisionInfo(address=83899344, c_name="capswitch_collision_050033D0"), + "Cap Switch (Top)": CollisionInfo(address=83899464, c_name="capswitch_collision_05003448"), + }, + ), + "Chain Ball": ActorPresetInfo( + decomp_path="actors/chain_ball", + level="bob", + group="group14", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=101, enum="MODEL_METALLIC_BALL")], + geolayout=218105296, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Chain Chomp": ActorPresetInfo( + decomp_path="actors/chain_chomp", + level="bob", + group="group14", + animation=AnimInfo( + address=100815224, + behaviours=318785420, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Chomping"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=102, enum="MODEL_CHAIN_CHOMP")], + geolayout=218105324, + c_name="chain_chomp_geo", + displaylist=None, + ), + collision={}, + ), + "Haunted Chair": ActorPresetInfo( + decomp_path="actors/chair", + level="bbh", + group="group9", + animation=AnimInfo( + address=83908484, + behaviours=318787540, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Default Pose"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_HAUNTED_CHAIR")], + geolayout=201326808, + c_name="haunted_chair_geo", + displaylist=None, + ), + collision={}, + ), + "Checkerboard Platform": ActorPresetInfo( + decomp_path="actors/checkerboard_platform", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=202, enum="MODEL_CHECKERBOARD_PLATFORM")], + geolayout=251659492, + c_name=None, + displaylist=None, + ), + collision=CollisionInfo(address=134272784, c_name="checkerboard_platform_seg8_collision_0800D710"), + ), + "Chilly Chief": ActorPresetInfo( + decomp_path="actors/chilly_chief", + level="ccm", + group="group16", + animation=AnimInfo( + address=100678036, + behaviours={"Chilly Chief (Small)": 318781128, "Chilly Chief (Big)": 318781184}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Patrol", "Chase", "Falling over (Unused)", "Knockback"], + ), + models={ + "Chilly Chief (Small)": ModelInfo( + model_id=[ModelIDInfo(number=100, enum="MODEL_CHILL_BULLY")], + geolayout=100677460, + c_name=None, + displaylist=None, + ), + "Chilly Chief (Big)": ModelInfo( + model_id=[ModelIDInfo(number=101, enum="MODEL_BIG_CHILL_BULLY")], + geolayout=100677748, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Chuckya": ActorPresetInfo( + decomp_path="actors/chuckya", + level="bbh", + group="common0", + animation=AnimInfo( + address=134266992, + behaviours=318768424, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Grab Mario", "Holding Mario", "Being Held", "Throwing", "Moving", "Balancing/Idle (Unused)"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=223, enum="MODEL_CHUCKYA")], geolayout=251658712, c_name=None, displaylist=None + ), + collision={}, + ), + "Clam Shell": ActorPresetInfo( + decomp_path="actors/clam", + level="jrb", + group="group4", + animation=AnimInfo( + address=83892036, + behaviours=318788672, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Close", "Open"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=88, enum="MODEL_CLAM_SHELL")], + geolayout=201326592, + c_name="clam_shell_geo", + displaylist=None, + ), + collision={}, + ), + "Coin": ActorPresetInfo( + decomp_path="actors/coin", + level="bbh", + group="common1", + animation={}, + models={ + "Yellow Coin": ModelInfo( + model_id=[ModelIDInfo(number=116, enum="MODEL_YELLOW_COIN")], + geolayout=369099068, + c_name=None, + displaylist=None, + ), + "Yellow Coin (No Shadow)": ModelInfo( + model_id=[ModelIDInfo(number=117, enum="MODEL_YELLOW_COIN_NO_SHADOW")], + geolayout=369099168, + c_name=None, + displaylist=None, + ), + "Blue Coin": ModelInfo( + model_id=[ModelIDInfo(number=118, enum="MODEL_BLUE_COIN")], + geolayout=369099264, + c_name=None, + displaylist=None, + ), + "Blue Coin (No Shadow)": ModelInfo( + model_id=[ModelIDInfo(number=119, enum="MODEL_BLUE_COIN_NO_SHADOW")], + geolayout=369099364, + c_name=None, + displaylist=None, + ), + "Red Coin": ModelInfo( + model_id=[ModelIDInfo(number=215, enum="MODEL_RED_COIN")], + geolayout=369099460, + c_name=None, + displaylist=None, + ), + "Red Coin (No Shadow)": ModelInfo( + model_id=[ModelIDInfo(number=216, enum="MODEL_RED_COIN_NO_SHADOW")], + geolayout=369099560, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Cyan Fish": ActorPresetInfo( + decomp_path="actors/cyan_fish", + level="wdw", + group="group13", + animation=AnimInfo( + address=100721252, + behaviours={}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Swimming"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=103, enum="MODEL_CYAN_FISH")], + geolayout=218104612, + c_name="cyan_fish_geo", + displaylist=None, + ), + collision={}, + ), + "Dirt": ActorPresetInfo( + decomp_path="actors/dirt", + level="bbh", + group="common1", + animation={}, + models={ + "Dirt": ModelInfo( + model_id=[ModelIDInfo(number=138, enum="MODEL_DIRT_ANIMATION")], + geolayout=369102548, + c_name=None, + displaylist=None, + ), + "(Unused) Cartoon Start": ModelInfo( + model_id=[ModelIDInfo(number=139, enum="MODEL_CARTOON_STAR")], + geolayout=369102628, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Door": ActorPresetInfo( + decomp_path="actors/door", + level="bbh", + group="common1", + animation=AnimInfo( + address=50419392, + behaviours=318769932, + size=None, + ignore_bone_count=True, + dma=False, + directory=None, + names=[ + "Closed", + "Open and Close", + "Open and Close (Slower?)", + "Open and Close (Slower? Last 10 frames)", + "Open and Close (Last 10 frames)", + ], + ), + models={ + "Castle Door": ModelInfo( + model_id=[ + ModelIDInfo(number=38, enum="MODEL_CASTLE_GROUNDS_CASTLE_DOOR"), + ModelIDInfo(number=38, enum="MODEL_CASTLE_CASTLE_DOOR"), + ModelIDInfo(number=28, enum="MODEL_CASTLE_CASTLE_DOOR_UNUSED"), + ], + geolayout=369099688, + c_name=None, + displaylist=None, + ), + "Cabin Door": ModelInfo( + model_id=[ModelIDInfo(number=39, enum="MODEL_CCM_CABIN_DOOR")], + geolayout=369099836, + c_name=None, + displaylist=None, + ), + "Wooden Door": ModelInfo( + model_id=[ + ModelIDInfo(number=29, enum="MODEL_CASTLE_WOODEN_DOOR_UNUSED"), + ModelIDInfo(number=29, enum="MODEL_HMC_WOODEN_DOOR"), + ModelIDInfo(number=39, enum="MODEL_CASTLE_WOODEN_DOOR"), + ModelIDInfo(number=39, enum="MODEL_COURTYARD_WOODEN_DOOR"), + ], + geolayout=369099984, + c_name=None, + displaylist=None, + ), + "Wooden Door 2": ModelInfo(model_id=[], geolayout=369100132, c_name=None, displaylist=None), + "Metal Door": ModelInfo( + model_id=[ + ModelIDInfo(number=31, enum="MODEL_HMC_METAL_DOOR"), + ModelIDInfo(number=41, enum="MODEL_CASTLE_METAL_DOOR"), + ModelIDInfo(number=41, enum="MODEL_CASTLE_GROUNDS_METAL_DOOR"), + ], + geolayout=369100312, + c_name=None, + displaylist=None, + ), + "Hazy Maze Door": ModelInfo( + model_id=[ModelIDInfo(number=32, enum="MODEL_HMC_HAZY_MAZE_DOOR")], + geolayout=369100428, + c_name=None, + displaylist=None, + ), + "Haunted Door": ModelInfo( + model_id=[ModelIDInfo(number=29, enum="MODEL_BBH_HAUNTED_DOOR")], + geolayout=369100576, + c_name=None, + displaylist=None, + ), + "Castle Door (0 Star)": ModelInfo( + model_id=[ModelIDInfo(number=34, enum="MODEL_CASTLE_DOOR_0_STARS")], + geolayout=369100724, + c_name=None, + displaylist=None, + ), + "Castle Door (1 Star)": ModelInfo( + model_id=[ModelIDInfo(number=35, enum="MODEL_CASTLE_DOOR_1_STAR")], + geolayout=369100904, + c_name=None, + displaylist=None, + ), + "Castle Door (3 Star)": ModelInfo( + model_id=[ModelIDInfo(number=36, enum="MODEL_CASTLE_DOOR_3_STARS")], + geolayout=369101084, + c_name=None, + displaylist=None, + ), + "Key Door": ModelInfo( + model_id=[ModelIDInfo(number=37, enum="MODEL_CASTLE_KEY_DOOR")], + geolayout=369101264, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Dorrie": ActorPresetInfo( + decomp_path="actors/dorrie", + level="hmc", + group="group17", + animation=AnimInfo( + address=100726328, + behaviours=318787472, + size=3, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Idle", "Moving", "Lower and Raise Head"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=104, enum="MODEL_DORRIE")], + geolayout=218104368, + c_name="dorrie_geo", + displaylist=None, + ), + collision={}, + ), + "Exclamation Box": ActorPresetInfo( + decomp_path="actors/exclamation_box", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=137, enum="MODEL_EXCLAMATION_BOX")], + geolayout=251659924, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Exclamation Box Outline": ActorPresetInfo( + decomp_path="actors/exclamation_box_outline", + level="bbh", + group="common0", + animation={}, + models={ + "Exclamation Box Outline": ModelInfo( + model_id=[ModelIDInfo(number=131, enum="MODEL_EXCLAMATION_BOX_OUTLINE")], + geolayout=251660890, + c_name=None, + displaylist=None, + ), + "Exclamation Point": ModelInfo( + model_id=[ModelIDInfo(number=132, enum="MODEL_EXCLAMATION_POINT")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=134373128, c_name="exclamation_box_outline_seg8_dl_08025F08"), + ), + }, + collision=CollisionInfo(address=134373240, c_name="exclamation_box_outline_seg8_collision_08025F78"), + ), + "Explosion": ActorPresetInfo( + decomp_path="actors/explosion", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=205, enum="MODEL_EXPLOSION")], + geolayout=369098816, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Eyerok": ActorPresetInfo( + decomp_path="actors/eyerok", + level="ssl", + group="group5", + animation=AnimInfo( + address=83957476, + behaviours=318788276, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Recovering", "Death", "Idle", "Attacked", "Open", "Show Eye", "Sleep", "Close"], + ), + models={ + "Eyerok Left Hand": ModelInfo( + model_id=[ModelIDInfo(number=88, enum="MODEL_EYEROK_LEFT_HAND")], + geolayout=201328040, + c_name=None, + displaylist=None, + ), + "Eyerok Right Hand": ModelInfo( + model_id=[ModelIDInfo(number=89, enum="MODEL_EYEROK_RIGHT_HAND")], + geolayout=201328100, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Flame": ActorPresetInfo( + decomp_path="actors/flame", + level="bbh", + group="common1", + animation={}, + models={ + "Red Flame (With Shadow)": ModelInfo( + model_id=[ModelIDInfo(number=203, enum="MODEL_RED_FLAME_SHADOW")], + geolayout=369101584, + c_name=None, + displaylist=None, + ), + "Red Flame": ModelInfo( + model_id=[ModelIDInfo(number=144, enum="MODEL_RED_FLAME")], + geolayout=369101612, + c_name=None, + displaylist=None, + ), + "Blue Flame": ModelInfo( + model_id=[ModelIDInfo(number=145, enum="MODEL_BLUE_FLAME")], + geolayout=369101708, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Fly Guy": ActorPresetInfo( + decomp_path="actors/flyguy", + level="bbh", + group="common0", + animation=AnimInfo( + address=134290020, + behaviours=318785244, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Flying"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=220, enum="MODEL_FLYGUY")], geolayout=251659544, c_name=None, displaylist=None + ), + collision={}, + ), + "Fwoosh": ActorPresetInfo( + decomp_path="actors/fwoosh", + level="ttm", + group="group6", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=87, enum="MODEL_FWOOSH")], + geolayout=201327468, + c_name="fwoosh_geo", + displaylist=None, + ), + collision={}, + ), + "Goomba": ActorPresetInfo( + decomp_path="actors/goomba", + level="bbh", + group="common0", + animation=AnimInfo( + address=134339148, + behaviours=318785324, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walking"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=192, enum="MODEL_GOOMBA")], geolayout=251660004, c_name=None, displaylist=None + ), + collision={}, + ), + "Haunted Cage": ActorPresetInfo( + decomp_path="actors/haunted_cage", + level="bbh", + group="group9", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=90, enum="MODEL_HAUNTED_CAGE")], + geolayout=201327220, + c_name="haunted_cage_geo", + displaylist=None, + ), + collision={}, + ), + "Heart": ActorPresetInfo( + decomp_path="actors/heart", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=120, enum="MODEL_HEART")], geolayout=251659516, c_name=None, displaylist=None + ), + collision={}, + ), + "Heave-Ho": ActorPresetInfo( + decomp_path="actors/heave_ho", + level="wf", + group="group1", + animation=AnimInfo( + address=83972940, + behaviours=318772552, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Moving", "Throwing", "Stop"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=89, enum="MODEL_HEAVE_HO")], + geolayout=201327244, + c_name="heave_ho_geo", + displaylist=None, + ), + collision={}, + ), + "Hoot": ActorPresetInfo( + decomp_path="actors/hoot", + level="wf", + group="group1", + animation=AnimInfo( + address=83908456, + behaviours=318780396, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Flying", "Flying Fast"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_HOOT")], + geolayout=201326616, + c_name="hoot_geo", + displaylist=None, + ), + collision={}, + ), + "Bowser Impact Ring": ActorPresetInfo( + decomp_path="actors/impact_ring", + level="bowser_1", + group="group12", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=104, enum="MODEL_BOWSER_WAVE")], + geolayout=218103952, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Bowser Impact Smoke": ActorPresetInfo( + decomp_path="actors/impact_smoke", + level="bowser_1", + group="group12", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=102, enum="MODEL_BOWSER_SMOKE")], + geolayout=218106876, + c_name="bowser_impact_smoke_geo", + displaylist=None, + ), + collision={}, + ), + "King Bobomb": ActorPresetInfo( + decomp_path="actors/bobomb", + level="bob", + group="group3", + animation=AnimInfo( + address=83951152, + behaviours=318767604, + size=12, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Grab Mario", + "Holding Mario", + "Hit Ground", + "Unkwnown (Unused)", + "Stomp", + "Idle", + "Being Held", + "Landing", + "Jump", + "Throw Mario", + "Stand Up", + "Walking", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_KING_BOBOMB")], + geolayout=201326592, + c_name="king_bobomb_geo", + displaylist=None, + ), + collision={}, + ), + "Klepto": ActorPresetInfo( + decomp_path="actors/klepto", + level="ssl", + group="group5", + animation=AnimInfo( + address=83922172, + behaviours=318788368, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Dive", + "Struck By Mario", + "Dive at Mario", + "Dive at Mario 2", + "Dive at Mario 3", + "Dive at Mario 4", + "Dive Flap", + "Dive Flap 2", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=87, enum="MODEL_KLEPTO")], + geolayout=201326592, + c_name="klepto_geo", + displaylist=None, + ), + collision={}, + ), + "Koopa": ActorPresetInfo( + decomp_path="actors/koopa", + level="bob", + group="group14", + animation=AnimInfo( + address=100733796, + behaviours=318784896, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Falling Over (Unused Shelled Act 3)", + "Run Away", + "Laying (Unshelled)", + "Running", + "Run (Unused)", + "Laying (Shelled)", + "Stand Up", + "Stopped", + "Wake Up (Unused)", + "Walk", + "Walk Stop", + "Walk Start", + "Jump", + "Land", + ], + ), + models={ + "Koopa (Without Shell)": ModelInfo( + model_id=[ModelIDInfo(number=191, enum="MODEL_KOOPA_WITHOUT_SHELL")], + geolayout=218104016, + c_name=None, + displaylist=None, + ), + "Koopa (With Shell)": ModelInfo( + model_id=[ModelIDInfo(number=104, enum="MODEL_KOOPA_WITH_SHELL")], + geolayout=218104340, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Koopa Flag": ActorPresetInfo( + decomp_path="actors/koopa_flag", + level="bob", + group="group14", + animation=AnimInfo( + address=100667432, + behaviours=318785016, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Waving"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=106, enum="MODEL_KOOPA_FLAG")], + geolayout=218103808, + c_name="koopa_flag_geo", + displaylist=None, + ), + collision={}, + ), + "Koopa Shell": ActorPresetInfo( + decomp_path="actors/koopa_shell", + level="bbh", + group="common0", + animation={}, + models={ + "Koopa Shell": ModelInfo( + model_id=[ModelIDInfo(number=190, enum="MODEL_KOOPA_SHELL")], + geolayout=251660976, + c_name=None, + displaylist=None, + ), + "(Unused) Koopa Shell 1": ModelInfo(model_id=[], geolayout=251661020, c_name=None, displaylist=None), + "(Unused) Koopa Shell 2": ModelInfo(model_id=[], geolayout=251661064, c_name=None, displaylist=None), + }, + collision={}, + ), + "Lakitu (Cameraman)": ActorPresetInfo( + decomp_path="actors/lakitu_cameraman", + level="castle_inside", + group="group15", + animation=AnimInfo( + address=100686072, + behaviours={"Lakitu (Beginning)": 318789136, "Lakitu (Cameraman)": 318785876}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Flying"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=102, enum="MODEL_LAKITU")], geolayout=218103808, c_name=None, displaylist=None + ), + collision={}, + ), + "Lakitu (Enemy)": ActorPresetInfo( + decomp_path="actors/lakitu_enemy", + level="thi", + group="group11", + animation=AnimInfo( + address=83969236, + behaviours=318785816, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Flying", "No Spiny", "Throw Spiny", "Hold Spiny"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_ENEMY_LAKITU")], + geolayout=201327036, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Leaves": ActorPresetInfo( + decomp_path="actors/leaves", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=162, enum="MODEL_LEAVES")], geolayout=369101964, c_name=None, displaylist=None + ), + collision={}, + ), + "Mad Piano": ActorPresetInfo( + decomp_path="actors/mad_piano", + level="bbh", + group="group9", + animation=AnimInfo( + address=83925780, + behaviours=318787620, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Sleeping", "Chomping"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=87, enum="MODEL_MAD_PIANO")], + geolayout=201327028, + c_name="mad_piano_geo", + displaylist=None, + ), + collision={}, + ), + "Manta Ray": ActorPresetInfo( + decomp_path="actors/manta", + level="jrb", + group="group4", + animation=AnimInfo( + address=83922612, + behaviours=318784368, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Swimming"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_MANTA_RAY")], geolayout=83922196, c_name=None, displaylist=None + ), + collision={}, + ), + "Mario": ActorPresetInfo( + decomp_path="actors/mario", + level="bbh", + group="group0", + animation=AnimInfo( + address=5160960, + behaviours={}, + size=None, + ignore_bone_count=False, + dma=True, + directory="assets/anims", + names=[ + "Slow ledge climb up", + "Fall over backwards", + "Backward air kb", + "Dying on back", + "Backflip", + "Climbing up pole", + "Grab pole short", + "Grab pole swing part 1", + "Grab pole swing part 2", + "Handstand idle", + "Handstand jump", + "Start handstand", + "Return from handstand", + "Idle on pole", + "A pose", + "Skid on ground", + "Stop skid", + "Crouch from fast longjump", + "Crouch from a slow longjump", + "Fast longjump", + "Slow longjump", + "Airborne on stomach", + "Walk with light object", + "Run with light object", + "Slow walk with light object", + "Shivering and warming hands", + "Shivering return to idle ", + "Shivering", + "Climb down on ledge", + "Waving (Credits)", + "Look up (Credits)", + "Return from look up (Credits)", + "Raising hand (Credits)", + "Lowering hand (Credits)", + "Taking off cap (Credits)", + "Start walking and look up (Credits)", + "Look back then run (Credits)", + "Final Bowser - Raise hand and spin", + "Final Bowser - Wing cap take off", + "Peach sign (Credits)", + "Stand up from lava boost", + "Fire/Lava burn", + "Wing cap flying", + "Hang on owl", + "Land on stomach", + "Air forward kb", + "Dying on stomach", + "Suffocating", + "Coughing", + "Throw catch key", + "Dying fall over", + "Idle on ledge", + "Fast ledge grab", + "Hang on ceiling", + "Put cap on", + "Take cap off then on", + "Quickly put cap on", + "Head stuck in ground", + "Ground pound landing", + "Triple jump ground-pound", + "Start ground-pound", + "Ground-pound", + "Bottom stuck in ground", + "Idle with light object", + "Jump land with light object", + "Jump with light object", + "Fall land with light object", + "Fall with light object", + "Fall from sliding with light object", + "Sliding on bottom with light object", + "Stand up from sliding with light object", + "Riding shell", + "Walking", + "Forward flip", + "Jump riding shell", + "Land from double jump", + "Double jump fall", + "Single jump", + "Land from single jump", + "Air kick", + "Double jump rise", + "Start forward spinning", + "Throw light object", + "Fall from slide kick", + "Bend kness riding shell", + "Legs stuck in ground", + "General fall", + "General land", + "Being grabbed", + "Grab heavy object", + "Slow land from dive", + "Fly from cannon", + "Moving right while hanging", + "Moving left while hanging", + "Missing cap", + "Pull door walk in", + "Push door walk in", + "Unlock door", + "Start reach pocket", + "Reach pocket", + "Stop reach pocket", + "Ground throw", + "Ground kick", + "First punch", + "Second punch", + "First punch fast", + "Second punch fast", + "Pick up light object", + "Pushing", + "Start riding shell", + "Place light object", + "Forward spinning", + "Backward spinning", + "Breakdance", + "Running", + "Running (unused)", + "Soft back kb", + "Soft front kb", + "Dying in quicksand", + "Idle in quicksand", + "Move in quicksand", + "Electrocution", + "Shocked", + "Backward kb", + "Forward kb", + "Idle heavy object", + "Stand against wall", + "Side step left", + "Side step right", + "Start sleep idle", + "Start sleep scratch", + "Start sleep yawn", + "Start sleep sitting", + "Sleep idle", + "Sleep start laying", + "Sleep laying", + "Dive", + "Slide dive", + "Ground bonk", + "Stop slide light object", + "Slide kick", + "Crouch from slide kick", + "Slide motionless", + "Stop slide", + "Fall from slide", + "Slide", + "Tiptoe", + "Twirl land", + "Twirl", + "Start twirl", + "Stop crouching", + "Start crouching", + "Crouching", + "Crawling", + "Stop crawling", + "Start crawling", + "Summon star", + "Return star approach door", + "Backwards water kb", + "Swim with object part 1", + "Swim with object part 2", + "Flutter kick with object", + "Action end with object in water", + "Stop holding object in water", + "Holding object in water", + "Drowning part 1", + "Drowning part 2", + "Dying in water", + "Forward kb in water", + "Falling from water", + "Swimming part 1", + "Swimming part 2", + "Flutter kick", + "Action end in water", + "Pick up object in water", + "Grab object in water part 2", + "Grab object in water part 1", + "Throw object in water", + "Idle in water", + "Star dance in water", + "Return from in water star dance", + "Grab bowser", + "Swing bowser", + "Release bowser", + "Holding bowser", + "Heavy throw", + "Walk panting", + "Walk with heavy object", + "Turning part 1", + "Turning part 2", + "Side flip land", + "Side flip", + "Triple jump land", + "Triple jump", + "First person", + "Idle head left", + "Idle head right", + "Idle head center", + "Handstand left", + "Handstand right", + "Wake up from sleeping", + "Wake up from laying", + "Start tiptoeing", + "Slide jump", + "Start wallkick", + "Star dance", + "Return from star dance", + "Forwards spinning flip", + "Triple jump fly", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=1, enum="MODEL_MARIO")], + geolayout=385887700, + c_name="mario_geo", + displaylist=None, + ), + collision={}, + ), + "Mario's Cap": ActorPresetInfo( + decomp_path="actors/mario_cap", + level="bbh", + group="common1", + animation={}, + models={ + "Mario's Cap": ModelInfo( + model_id=[ModelIDInfo(number=136, enum="MODEL_MARIOS_CAP")], + geolayout=369101988, + c_name=None, + displaylist=None, + ), + "Mario's Metal Cap": ModelInfo( + model_id=[ModelIDInfo(number=134, enum="MODEL_MARIOS_METAL_CAP")], + geolayout=369102064, + c_name=None, + displaylist=None, + ), + "Mario's Wing Cap": ModelInfo( + model_id=[ModelIDInfo(number=135, enum="MODEL_MARIOS_WING_CAP")], + geolayout=369102140, + c_name=None, + displaylist=None, + ), + "Mario's Winged Metal Cap": ModelInfo( + model_id=[ModelIDInfo(number=133, enum="MODEL_MARIOS_WINGED_METAL_CAP")], + geolayout=369102248, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Metal Box": ActorPresetInfo( + decomp_path="actors/metal_box", + level="bbh", + group="common0", + animation={}, + models={ + "Metal Box": ModelInfo( + model_id=[ModelIDInfo(number=217, enum="MODEL_METAL_BOX")], + geolayout=251660848, + c_name=None, + displaylist=None, + ), + "Metal Box (DL)": ModelInfo( + model_id=[ModelIDInfo(number=218, enum="MODEL_METAL_BOX_DL")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=134368184, c_name="metal_box_dl"), + ), + }, + collision=CollisionInfo(address=134368296, c_name="metal_box_seg8_collision_08024C28"), + ), + "Mips": ActorPresetInfo( + decomp_path="actors/mips", + level="castle_inside", + group="group15", + animation=AnimInfo( + address=100751140, + behaviours=318784764, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Idle", "Hopping", "Thrown", "Thrown (Unused)", "Held"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=100, enum="MODEL_MIPS")], + geolayout=218104904, + c_name="mips_geo", + displaylist=None, + ), + collision={}, + ), + "Mist": ActorPresetInfo( + decomp_path="actors/mist", + level="bbh", + group="common1", + animation={}, + models={ + "Mist": ModelInfo( + model_id=[ModelIDInfo(number=142, enum="MODEL_MIST")], + geolayout=369098752, + c_name=None, + displaylist=None, + ), + "White Puff": ModelInfo( + model_id=[ModelIDInfo(number=224, enum="MODEL_WHITE_PUFF")], + geolayout=369098784, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Moneybag": ActorPresetInfo( + decomp_path="actors/moneybag", + level="ccm", + group="group16", + animation=AnimInfo( + address=100687452, + behaviours=318781856, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Idle", "Prepare", "Jump", "Land", "Walk"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=102, enum="MODEL_MONEYBAG")], + geolayout=218104048, + c_name="moneybag_geo", + displaylist=None, + ), + collision={}, + ), + "Monty Mole": ActorPresetInfo( + decomp_path="actors/monty_mole", + level="ttm", + group="group6", + animation=AnimInfo( + address=83915336, + behaviours=318786048, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Jump Into Hole", + "Rise", + "Get Rock", + "Begin Jump Into Hole", + "Jump Out Of Hole Down", + "Unused 5", + "Unused 6", + "Unused 7", + "Throw Rock", + "Jump Out Of Hole Up", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_MONTY_MOLE")], + geolayout=201326592, + c_name="monty_mole_geo", + displaylist=None, + ), + collision={}, + ), + "Montey Mole Hole": ActorPresetInfo( + decomp_path="actors/monty_mole_hole", + level="ttm", + group="group6", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_DL_MONTY_MOLE_HOLE")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=83888192, c_name="monty_mole_hole_seg5_dl_05000840"), + ), + collision={}, + ), + "Mr. I Eyeball": ActorPresetInfo( + decomp_path="actors/mr_i_eyeball", + level="ccm", + group="group16", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=103, enum="MODEL_MR_I")], geolayout=218103808, c_name=None, displaylist=None + ), + collision={}, + ), + "Mr. I Iris": ActorPresetInfo( + decomp_path="actors/mr_i_iris", + level="ccm", + group="group16", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=102, enum="MODEL_MR_I_IRIS")], + geolayout=218103836, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Mushroom 1up": ActorPresetInfo( + decomp_path="actors/mushroom_1up", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=212, enum="MODEL_1UP")], geolayout=369102468, c_name=None, displaylist=None + ), + collision={}, + ), + "Orange Numbers": ActorPresetInfo( + decomp_path="actors/number", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=219, enum="MODEL_NUMBER")], geolayout=369102356, c_name=None, displaylist=None + ), + collision={}, + ), + "Peach": ActorPresetInfo( + decomp_path="actors/peach", + level="castle_grounds", + group="group10", + animation=AnimInfo( + address=84002052, + behaviours={"Peach (Beginning)": 318789176, "Peach (End)": 318770860}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Listen Everybody", + "Turning Away", + "Walking away", + "Walking away 2", + "Descend", + "Descend And Look Down", + "Look Up And Open Eyes", + "Mario", + "Power Of The Stars", + "Thanks To You", + "Kiss", + "Waving", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=222, enum="MODEL_PEACH")], + geolayout=201327632, + c_name="peach_geo", + displaylist=None, + ), + collision={}, + ), + "Pebble": ActorPresetInfo( + decomp_path="actors/pebble", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=161, enum="MODEL_PEBBLE")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=50449152, c_name="pebble_seg3_dl_0301CB00"), + ), + collision={}, + ), + "Penguin": ActorPresetInfo( + decomp_path="actors/penguin", + level="ccm", + group="group7", + animation=AnimInfo( + address=83921780, + behaviours={ + "Penguin (Tuxies Mother)": 318775432, + "Penguin (Small)": 318775528, + "Penguin (SML)": 318778968, + "Racing Penguin": 318788480, + }, + size=5, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walk", "Dive Slide", "Stand Up", "Idle", "Walk"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=87, enum="MODEL_PENGUIN")], + geolayout=201326852, + c_name="penguin_geo", + displaylist=None, + ), + collision=CollisionInfo(address=83921800, c_name="penguin_seg5_collision_05008B88"), + ), + "Piranha Plant": ActorPresetInfo( + decomp_path="actors/piranha_plant", + level="bob", + group="group14", + animation=AnimInfo( + address=100778780, + behaviours={"Fire Piranha Plant": 318787872, "Piranha Plant": 318775228}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Bite", + "Sleeping? (Unused)", + "Falling over", + "Bite (Unused)", + "Grow", + "Attacked", + "Stop Bitting", + "Sleeping (Unused)", + "Sleeping", + "Bite (Duplicate)", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=100, enum="MODEL_PIRANHA_PLANT")], + geolayout=218104664, + c_name="piranha_plant_geo", + displaylist=None, + ), + collision={}, + ), + "Pokey": ActorPresetInfo( + decomp_path="actors/pokey", + level="ssl", + group="group5", + animation={}, + models={ + "Pokey Head": ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_POKEY_HEAD")], + geolayout=201328144, + c_name=None, + displaylist=None, + ), + "Pokey Body Part": ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_POKEY_BODY_PART")], + geolayout=201328196, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Wooden Post": ActorPresetInfo( + decomp_path="actors/poundable_pole", + level="bob", + group="group14", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=107, enum="MODEL_WOODEN_POST")], + geolayout=218103992, + c_name="wooden_post_geo", + displaylist=None, + ), + collision=CollisionInfo(address=100672656, c_name="poundable_pole_collision_06002490"), + ), + "Power Meter": ActorPresetInfo( + decomp_path="actors/power_meter", + level="bbh", + group="common1", + animation={}, + models={ + "Power Meter (Base)": ModelInfo( + model_id=[], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=50500736, c_name="dl_power_meter_base"), + ), + "Power Meter (Health)": ModelInfo( + model_id=[], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=50500976, c_name="dl_power_meter_health_segments_begin"), + ), + }, + collision={}, + ), + "Purple Switch": ActorPresetInfo( + decomp_path="actors/purple_switch", + level="bbh", + group="common0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=207, enum="MODEL_PURPLE_SWITCH")], + geolayout=251659468, + c_name=None, + displaylist=None, + ), + collision=CollisionInfo(address=134268840, c_name="purple_switch_seg8_collision_0800C7A8"), + ), + "Sand": ActorPresetInfo( + decomp_path="actors/sand", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=159, enum="MODEL_SAND_DUST")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=50511056, c_name="sand_seg3_dl_0302BCD0"), + ), + collision={}, + ), + "Scuttlebug": ActorPresetInfo( + decomp_path="actors/scuttlebug", + level="hmc", + group="group17", + animation=AnimInfo( + address=100749412, + behaviours=318778204, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walking"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=101, enum="MODEL_SCUTTLEBUG")], + geolayout=218104724, + c_name="scuttlebug_geo", + displaylist=None, + ), + collision={}, + ), + "Seaweed": ActorPresetInfo( + decomp_path="actors/seaweed", + level="wdw", + group="group13", + animation=AnimInfo( + address=100705492, + behaviours=318779700, + size=1, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Wave"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=193, enum="MODEL_SEAWEED")], + geolayout=218104452, + c_name="seaweed_geo", + displaylist=None, + ), + collision={}, + ), + "Skeeter": ActorPresetInfo( + decomp_path="actors/skeeter", + level="wdw", + group="group13", + animation=AnimInfo( + address=100695520, + behaviours=318788712, + size=4, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Water Lunge", "Water Idle", "Walk", "Idle"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=105, enum="MODEL_SKEETER")], + geolayout=218103808, + c_name="skeeter_geo", + displaylist=None, + ), + collision={}, + ), + "(Beta) Boo Key": ActorPresetInfo( + decomp_path="actors/small_key", + level="bbh", + group="group9", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_BETA_BOO_KEY")], + geolayout=201326984, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "(Unused) Smoke": ActorPresetInfo( + decomp_path="actors/smoke", + level="ttm", + group="group6", + animation={}, + models=ModelInfo( + model_id=[], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=83917560, c_name="smoke_seg5_dl_05007AF8"), + ), + collision={}, + ), + "Mr. Blizzard": ActorPresetInfo( + decomp_path="actors/snowman", + level="ccm", + group="group7", + animation=AnimInfo( + address=83939608, + behaviours={"Mr. Blizzard": 318787004}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Spawn Snowball", "Throw Snowball"], + ), + models={ + "Mr. Blizzard": ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_MR_BLIZZARD")], + geolayout=201327432, + c_name=None, + displaylist=None, + ), + "Mr. Blizzard (Hidden)": ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_MR_BLIZZARD_HIDDEN")], + geolayout=201327132, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Snufit": ActorPresetInfo( + decomp_path="actors/snufit", + level="hmc", + group="group17", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=206, enum="MODEL_SNUFIT")], + geolayout=218104224, + c_name="snufit_geo", + displaylist=None, + ), + collision={}, + ), + "Sparkle": ActorPresetInfo( + decomp_path="actors/sparkle", + level="bbh", + group="group0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=149, enum="MODEL_SPARKLES")], + geolayout=385876412, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Sparkle Animation": ActorPresetInfo( + decomp_path="actors/sparkle_animation", + level="bbh", + group="group0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=143, enum="MODEL_SPARKLES_ANIMATION")], + geolayout=385876612, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Spindrift": ActorPresetInfo( + decomp_path="actors/spindrift", + level="ccm", + group="group7", + animation=AnimInfo( + address=83897704, + behaviours=318771892, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Flying"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_SPINDRIFT")], + geolayout=201326592, + c_name="spindrift_geo", + displaylist=None, + ), + collision={}, + ), + "Spiny": ActorPresetInfo( + decomp_path="actors/spiny", + level="thi", + group="group11", + animation=AnimInfo( + address=83979948, + behaviours={"Spiny": 318785992}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walk"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_SPINY")], + geolayout=201327400, + c_name="spiny_geo", + displaylist=None, + ), + collision={}, + ), + "Spiny Egg": ActorPresetInfo( + decomp_path="actors/spiny_egg", + level="thi", + group="group11", + animation=AnimInfo( + address=83974116, + behaviours={}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Default"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_SPINY_BALL")], + geolayout=201327248, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Springboard": ActorPresetInfo( + decomp_path="actors/springboard", + level="vcutm", + group="group8", + animation={}, + models={ + "Springboard Top": ModelInfo( + model_id=[ModelIDInfo(number=181, enum="MODEL_TRAMPOLINE")], + geolayout=201326592, + c_name=None, + displaylist=None, + ), + "Springboard Middle": ModelInfo( + model_id=[ModelIDInfo(number=182, enum="MODEL_TRAMPOLINE_CENTER")], + geolayout=201326616, + c_name=None, + displaylist=None, + ), + "Springboard Bottom": ModelInfo( + model_id=[ModelIDInfo(number=183, enum="MODEL_TRAMPOLINE_BASE")], + geolayout=201326640, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Star": ActorPresetInfo( + decomp_path="actors/star", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=122, enum="MODEL_STAR")], geolayout=369102496, c_name=None, displaylist=None + ), + collision={}, + ), + "Small Water Splash": ActorPresetInfo( + decomp_path="actors/stomp_smoke", + level="bbh", + group="group0", + animation={}, + models={ + "Small Water Splash": ModelInfo( + model_id=[ModelIDInfo(number=165, enum="MODEL_SMALL_WATER_SPLASH")], + geolayout=385876124, + c_name=None, + displaylist=None, + ), + "(Unused) Small Water Splash": ModelInfo(model_id=[], geolayout=385876192, c_name=None, displaylist=None), + }, + collision={}, + ), + "Sushi Shark": ActorPresetInfo( + decomp_path="actors/sushi", + level="jrb", + group="group4", + animation=AnimInfo( + address=83930708, + behaviours=318776120, + size=1, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Swimming", "Diving"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_SUSHI")], geolayout=201326696, c_name=None, displaylist=None + ), + collision={}, + ), + "Swoop": ActorPresetInfo( + decomp_path="actors/swoop", + level="hmc", + group="group17", + animation=AnimInfo( + address=100692176, + behaviours=318785176, + size=2, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Idle", "Move"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=100, enum="MODEL_SWOOP")], + geolayout=218104028, + c_name="swoop_geo", + displaylist=None, + ), + collision={}, + ), + "Test Plataform": ActorPresetInfo( + decomp_path="actors/test_plataform", + level="bbh", + group="common0", + animation={}, + models={}, + collision=CollisionInfo(address=134374136, c_name="unknown_seg8_collision_080262F8"), + ), + "Thwomp": ActorPresetInfo( + decomp_path="actors/thwomp", + level="wf", + group="group1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=88, enum="MODEL_THWOMP")], + geolayout=201327176, + c_name="thwomp_geo", + displaylist=None, + ), + collision={ + "Thwomp": CollisionInfo(address=83933136, c_name="thwomp_seg5_collision_0500B7D0"), + "Thwomp 2": CollisionInfo(address=83933484, c_name="thwomp_seg5_collision_0500B92C"), + }, + ), + "Toad": ActorPresetInfo( + decomp_path="actors/toad", + level="castle_inside", + group="group15", + animation=AnimInfo( + address=100727880, + behaviours={"End Toad": 318770824, "Toad Message": 318779128}, + size=8, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Wave Then Run (West)", + "Walking (West)", + "Node Then Turn (East)", + "Walking (East)", + "Standing (West)", + "Standing (East)", + "Waving Both Arms (West)", + "Waving One Arm (East)", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=221, enum="MODEL_TOAD")], + geolayout=218104804, + c_name="toad_geo", + displaylist=None, + ), + collision={}, + ), + "Tweester/Tornado": ActorPresetInfo( + decomp_path="actors/tornado", + level="ssl", + group="group5", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_TWEESTER")], geolayout=83969584, c_name=None, displaylist=None + ), + collision={}, + ), + "Transparent Star": ActorPresetInfo( + decomp_path="actors/transperant_star", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=121, enum="MODEL_TRANSPARENT_STAR")], + geolayout=369102700, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Treasure Chest": ActorPresetInfo( + decomp_path="actors/treasure_chest", + level="wdw", + group="group13", + animation={}, + models={ + "Treasure Chest Base": ModelInfo( + model_id=[ModelIDInfo(number=101, enum="MODEL_TREASURE_CHEST_BASE")], + geolayout=218104912, + c_name=None, + displaylist=None, + ), + "Treasure Chest Lid": ModelInfo( + model_id=[ModelIDInfo(number=102, enum="MODEL_TREASURE_CHEST_LID")], + geolayout=218104936, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Tree": ActorPresetInfo( + decomp_path="actors/tree", + level="bbh", + group="common1", + animation={}, + models={ + "Bubbly Tree": ModelInfo( + model_id=[ + ModelIDInfo(number=23, enum="MODEL_BOB_BUBBLY_TREE"), + ModelIDInfo(number=23, enum="MODEL_WDW_BUBBLY_TREE"), + ModelIDInfo(number=23, enum="MODEL_CASTLE_GROUNDS_BUBBLY_TREE"), + ModelIDInfo(number=23, enum="MODEL_WF_BUBBLY_TREE"), + ModelIDInfo(number=23, enum="MODEL_THI_BUBBLY_TREE"), + ], + geolayout=369102824, + c_name=None, + displaylist=None, + ), + "Pine Tree": ModelInfo( + model_id=[ModelIDInfo(number=24, enum="MODEL_COURTYARD_SPIKY_TREE")], + geolayout=369102848, + c_name=None, + displaylist=None, + ), + "(Unused) Pine Tree": ModelInfo(model_id=[], geolayout=369102896, c_name=None, displaylist=None), + "Snow Tree": ModelInfo( + model_id=[ + ModelIDInfo(number=25, enum="MODEL_CCM_SNOW_TREE"), + ModelIDInfo(number=25, enum="MODEL_SL_SNOW_TREE"), + ], + geolayout=369102872, + c_name=None, + displaylist=None, + ), + "Palm Tree": ModelInfo( + model_id=[ModelIDInfo(number=27, enum="MODEL_SSL_PALM_TREE")], + geolayout=369102920, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Ukiki": ActorPresetInfo( + decomp_path="actors/ukiki", + level="ttm", + group="group6", + animation=AnimInfo( + address=83974020, + behaviours={"Ukiki": 318774448}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=[ + "Run", + "Walk (Unused)", + "Apose (Unused)", + "Death (Unused)", + "Screech", + "Jump Clap", + "Hop (Unused)", + "Land", + "Jump", + "Itch", + "Handstand", + "Turn", + "Held", + ], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=86, enum="MODEL_UKIKI")], + geolayout=201326864, + c_name="ukiki_geo", + displaylist=None, + ), + collision={}, + ), + "Unagi": ActorPresetInfo( + decomp_path="actors/unagi", + level="jrb", + group="group4", + animation=AnimInfo( + address=83961892, + behaviours=318787392, + size=7, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Yawn", "Bite", "Swimming", "Static Straight", "Idle", "Open Mouth", "Idle 2"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_UNAGI")], + geolayout=201326860, + c_name="unagi_geo", + displaylist=None, + ), + collision={}, + ), + "Smoke": ActorPresetInfo( + decomp_path="actors/walk_smoke", + level="bbh", + group="group0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=150, enum="MODEL_SMOKE")], + geolayout=385876024, + c_name="smoke_geo", + displaylist=None, + ), + collision={}, + ), + "Warp Collision": ActorPresetInfo( + decomp_path="actors/warp_collision", + level="bbh", + group="common1", + animation={}, + models={}, + collision={ + "Door": CollisionInfo(address=50450040, c_name="door_seg3_collision_0301CE78"), + "LLL Hexagonal Mesh": CollisionInfo(address=50450124, c_name="lll_hexagonal_mesh_seg3_collision_0301CECC"), + }, + ), + "Warp Pipe": ActorPresetInfo( + decomp_path="actors/warp_pipe", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ + ModelIDInfo(number=73, enum="MODEL_BITS_WARP_PIPE"), + ModelIDInfo(number=18, enum="MODEL_BITDW_WARP_PIPE"), + ModelIDInfo(number=22, enum="MODEL_THI_WARP_PIPE"), + ModelIDInfo(number=22, enum="MODEL_VCUTM_WARP_PIPE"), + ModelIDInfo(number=22, enum="MODEL_CASTLE_GROUNDS_WARP_PIPE"), + ], + geolayout=369099656, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Water Bomb": ActorPresetInfo( + decomp_path="actors/water_bubble", + level="bob", + group="group3", + animation={}, + models={ + "Water Bomb": ModelInfo( + model_id=[ModelIDInfo(number=84, enum="MODEL_WATER_BOMB")], + geolayout=201327368, + c_name=None, + displaylist=None, + ), + "Water Bomb's Shadow": ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_WATER_BOMB_SHADOW")], + geolayout=201327400, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Water Mine": ActorPresetInfo( + decomp_path="actors/water_mine", + level="wdw", + group="group13", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=179, enum="MODEL_WATER_MINE")], + geolayout=218104564, + c_name="water_mine_geo", + displaylist=None, + ), + collision={}, + ), + "Water Ring": ActorPresetInfo( + decomp_path="actors/water_ring", + level="wdw", + group="group13", + animation=AnimInfo( + address=100745084, + behaviours={"Water Ring (Jet Stream)": 318781264, "Water Ring (Manta Ray)": 13003798}, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Wobble"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=104, enum="MODEL_WATER_RING")], + geolayout=218104852, + c_name="water_ring_geo", + displaylist=None, + ), + collision={}, + ), + "Water Splash": ActorPresetInfo( + decomp_path="actors/water_splash", + level="bbh", + group="group0", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=167, enum="MODEL_WATER_SPLASH")], + geolayout=385876528, + c_name="water_splash_geo", + displaylist=None, + ), + collision={}, + ), + "Water Wave": ActorPresetInfo( + decomp_path="actors/water_wave", + level="bbh", + group="group0", + animation={}, + models={ + "Idle Water Wave": ModelInfo( + model_id=[ModelIDInfo(number=166, enum="MODEL_IDLE_WATER_WAVE")], + geolayout=385876260, + c_name=None, + displaylist=None, + ), + "Water Wave Trail": ModelInfo( + model_id=[ModelIDInfo(number=163, enum="MODEL_WAVE_TRAIL")], + geolayout=385876328, + c_name=None, + displaylist=None, + ), + }, + collision={}, + ), + "Whirlpool": ActorPresetInfo( + decomp_path="actors/whirlpool", + level="jrb", + group="group4", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=87, enum="MODEL_DL_WHIRLPOOL")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=83967160, c_name="whirlpool_seg5_dl_05013CB8"), + ), + collision={}, + ), + "White Particle": ActorPresetInfo( + decomp_path="actors/white_particle", + level="bbh", + group="common1", + animation={}, + models={ + "White Particle": ModelInfo( + model_id=[ModelIDInfo(number=160, enum="MODEL_WHITE_PARTICLE")], + geolayout=369102744, + c_name=None, + displaylist=None, + ), + "White Particle (DL)": ModelInfo( + model_id=[ModelIDInfo(number=158, enum="MODEL_WHITE_PARTICLE_DL")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=50514080, c_name="white_particle_dl"), + ), + }, + collision={}, + ), + "White Particle Small": ActorPresetInfo( + decomp_path="actors/white_particle_small", + level="bbh", + group="group0", + animation={}, + models={ + "White Particle Small": ModelInfo( + model_id=[ModelIDInfo(number=164, enum="MODEL_WHITE_PARTICLE_SMALL")], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=67316248, c_name="white_particle_small_dl"), + ), + "(Unused) White Particle Small": ModelInfo( + model_id=[], + geolayout=None, + c_name=None, + displaylist=DisplaylistInfo(address=67316272, c_name="white_particle_small_unused_dl"), + ), + }, + collision={}, + ), + "Whomp": ActorPresetInfo( + decomp_path="actors/whomp", + level="bob", + group="group14", + animation=AnimInfo( + address=100796932, + behaviours=318778316, + size=2, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walk", "Jump"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=103, enum="MODEL_WHOMP")], + geolayout=218104960, + c_name="whomp_geo", + displaylist=None, + ), + collision=CollisionInfo(address=100796940, c_name="whomp_seg6_collision_06020A0C"), + ), + "Wiggler Body": ActorPresetInfo( + decomp_path="actors/wiggler_body", + level="thi", + group="group11", + animation=AnimInfo( + address=83937396, + behaviours=318785760, + size=1, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walk"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=88, enum="MODEL_WIGGLER_BODY")], + geolayout=83937144, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Wiggler Head": ActorPresetInfo( + decomp_path="actors/wiggler_head", + level="thi", + group="group11", + animation=AnimInfo( + address=83946636, + behaviours=318785688, + size=1, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Walk"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=87, enum="MODEL_WIGGLER_HEAD")], + geolayout=201326640, + c_name="wiggler_head_geo", + displaylist=None, + ), + collision={}, + ), + "Wooden Signpost": ActorPresetInfo( + decomp_path="actors/wooden_signpost", + level="bbh", + group="common1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=124, enum="MODEL_WOODEN_SIGNPOST")], + geolayout=369102772, + c_name=None, + displaylist=None, + ), + collision=CollisionInfo(address=50519424, c_name="wooden_signpost_seg3_collision_0302DD80"), + ), + "Yellow Sphere (Bowser 1)": ActorPresetInfo( + decomp_path="actors/yellow_sphere", + level="bowser_1", + group="group12", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=3, enum="MODEL_LEVEL_GEOMETRY_03")], + geolayout=218103984, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Yellow Sphere": ActorPresetInfo( + decomp_path="actors/yellow_sphere_small", + level="wf", + group="group1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_YELLOW_SPHERE")], + geolayout=201326592, + c_name="yellow_sphere_geo", + displaylist=None, + ), + collision={}, + ), + "Yoshi": ActorPresetInfo( + decomp_path="actors/yoshi", + level="castle_grounds", + group="group10", + animation=AnimInfo( + address=84034024, + behaviours=318784824, + size=None, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Idle", "Walk", "Jump"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=85, enum="MODEL_YOSHI")], + geolayout=201327720, + c_name="yoshi_geo", + displaylist=None, + ), + collision={}, + ), + "(Unused) Yoshi Egg": ActorPresetInfo( + decomp_path="actors/yoshi_egg", + level="wf", + group="group1", + animation={}, + models=ModelInfo( + model_id=[ModelIDInfo(number=87, enum="MODEL_YOSHI_EGG")], + geolayout=201327076, + c_name=None, + displaylist=None, + ), + collision={}, + ), + "Castle Flag": ActorPresetInfo( + decomp_path="levels/castle_grounds/areas/1/11", + level="CG", + group=None, + animation=AnimInfo( + address=117492060, + behaviours=318782552, + size=1, + ignore_bone_count=False, + dma=False, + directory=None, + names=["Wave"], + ), + models=ModelInfo( + model_id=[ModelIDInfo(number=55, enum="MODEL_CASTLE_GROUNDS_FLAG")], + geolayout=234882656, + c_name=None, + displaylist=None, + ), + collision={}, + ), +} diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index b0fd460f4..e2d45702d 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -64,6 +64,8 @@ class PackedFormat: default_factory=tuple ) # use a packed bitfield to unpack, each item is num bits, unpacked sequentially, make format all bytes post_unpack: callable = None # called after unpacking, used for doing math to args, useful for f3d + # it may instead be more convenient to just change the macro name to BIN for specific processing + # usually in the case where a binary cmd can be one of several equivalent C macros the pre processor simplifies @property def format_size(self): @@ -81,14 +83,14 @@ def unpack(self, bin_data: BinaryIO): if self.bit_packing: args = self.unpack_bits(args) if self.post_unpack: - self.post_unpack(args) + args = self.post_unpack(args) return args # format_str must be list of unsigned bytes def unpack_bits(self, args: list): # combined bytes into one bit chunk of data dat = 0 - for byte, shift in enumerate(args): + for shift, byte in enumerate(reversed(args)): dat += byte << (shift * 8) # unpack in reverse order using bitmask, then shifting data args = [] @@ -341,7 +343,7 @@ def parse_stream_c(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwar def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs): """ Binary parsing works in the following order: - * set class.parse_target to DataParser._binary_parsing, and class.bin_file to rom + * set class.parse_target to DataParser._binary_parsing, cls.banks to tlb mapping and class.bin_file to rom * run parse_stream_from_start(dat_stream, entry, *args) w/ dat_stream = None, entry = rom_ptr: int * binary_cmd_unpack/f"_decode_cmd_{cmd_name.lower()}_bin"(parser, PackedFormat) -> cmd_args * cmd specific func or binary_cmd_unpack unpacks cmd using stream and PackedFormat -> cmd_args @@ -359,15 +361,15 @@ def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs cmd_name, packed_fmt = self.binary_cmd_get(parser) # adv head if MSB not included in packed format arg_decode_func = getattr(self, f"_decode_cmd_{cmd_name.lower()}_bin", None) if arg_decode_func: - cmd_name, cmd_args, cmd_len = arg_decode_func(parser) + cmd_name, cmd_args, cmd_len = arg_decode_func(packed_fmt, parser) else: cmd_args, cmd_len = self.binary_cmd_unpack(parser, cmd_name, packed_fmt) parser.advance_head(cmd_len) if cmd_name in self._skippable_cmds: continue cur_macro = Macro(cmd_name, cmd_args) - print(cur_macro) func = getattr(self, cur_macro.cmd, None) + print(cur_macro) if not func: raise Exception(f"Macro {cur_macro} not found in parser function") flow_status = func(cur_macro, *args, **kwargs) @@ -525,7 +527,9 @@ def get_data_types_from_file(file: TextIO, type_dict, collated=False): if match and type_collisions: # there should ideally only be one collision type_name = type_collisions[0] - variable_name = line[line.find(type_name) + len(type_name) : match.span()[0]].strip() + # type_name plus any extra chars(non greedy) until a space + name_start = re.search(f"{type_name}.*?\s", line, flags=re.IGNORECASE).span()[1] + variable_name = line[name_start : match.span()[0]].strip() type_found = CDataArray(type_name, variable_name) # Now remove newlines from each line, and then split macro ends # This makes each member of the array a single macro or array From 0fb9da0c43a5450dc0275b75a7c92217ce1cb9e0 Mon Sep 17 00:00:00 2001 From: scut Date: Wed, 18 Feb 2026 19:47:22 -0500 Subject: [PATCH 22/30] fixed lights, geo modes and color combiners for binary importing, unflip textures, clean up actor importing --- fast64_internal/bin_png.py | 1 - fast64_internal/f3d/f3d_import.py | 85 +- fast64_internal/sm64/sm64_level_importer.py | 44 +- fast64_internal/sm64/tst.py | 2829 ------------------- fast64_internal/utility_importer.py | 6 +- 5 files changed, 94 insertions(+), 2871 deletions(-) delete mode 100644 fast64_internal/sm64/tst.py diff --git a/fast64_internal/bin_png.py b/fast64_internal/bin_png.py index e85926658..ef8d36614 100644 --- a/fast64_internal/bin_png.py +++ b/fast64_internal/bin_png.py @@ -157,7 +157,6 @@ def convert_tex_bin(fmt: str, width: int, height: int, im_siz: int, byte_stream: "G_IM_FMT_RGBA": convert_RGBA_tex, } im_siz = int(re.search("\d+", im_siz).group()) - print(im_siz, width, height, len(byte_stream)) return funcs.get(fmt)(int(width), int(height), im_siz, byte_stream, pal_stream) def convert_tex_c(fmt: str, width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 3f682632f..5f81e958a 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -35,6 +35,20 @@ def __init__(self, name: str, light_struct: Sequence): self.name = name getattr(self, light_struct.var_type)(light_struct.var_data) + # I'm not 100% sure this covers all kinds of light struct from movemem cmd + @staticmethod + def ambient_from_binary(bin_file: BinaryIO, macro: Macro): + # just get first color + col = [*struct.unpack(">3B", bin_file[macro.args[2]:macro.args[2] + 3]), 0xFF] + return col + + @staticmethod + def diffuse_from_binary(bin_file: BinaryIO, macro: Macro): + # just get first color + # cls.dir = [*struct.unpack(">3B", bin_file[macro.args[2] + 8:macro.args[2] + 11]), 0xFF] + col = [*struct.unpack(">3B", bin_file[macro.args[2]:macro.args[2] + 3]), 0xFF] + return col + # naming matches var types def Ambient_t(self, light_data: list[str]): light_data = light_data[0].replace("{", "").replace("}", "").split(",") @@ -420,6 +434,9 @@ def set_color_registers(self, f3d: F3DMaterialProperty): f3d.set_lights = True if self.light_col.get(1): f3d.default_light_color = self.convert_color(self.light_col[1]) + if self.ambient_light: + f3d.set_ambient_from_light = False + f3d.ambient_light_color = self.convert_color(self.ambient_light) if hasattr(self, "blend_color"): f3d.set_blend = True f3d.blend_color = self.convert_color(self.blend_color) @@ -591,16 +608,16 @@ def setup_unpack_dicts(self): self.f3dex2_cmd_gbi_names = { f3d_gbi.G_VTX: ( "gsSPVertexBin", - PackedFormat(">7B", (3,), reorder = (1, 2, 3), make_str = False, bit_packing=(4, 8, 4, 8, 32)), + PackedFormat(">7B", (2,), reorder = (1, 2, 3), make_str = False, bit_packing=(4, 8, 4, 8, 32)), ), # pad num_v offset+num seg_ptr, reorder -> num offset ptr f3d_gbi.G_DMA_IO: ( "gsSPDma_io", PackedFormat(">7B", bit_packing=(1, 10, 1, 12, 32)), ), # i/o dmem_addr siz dram_addr f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">3BL")), # pad123 num_mtx - f3d_gbi.G_GEOMETRYMODE: ("gsSPGeometryMode", PackedFormat(">7B", bit_packing=(24, 32))), # clear set + f3d_gbi.G_GEOMETRYMODE: ("gsSPGeometryMode", PackedFormat(">7B", bit_packing=(24, 32), post_unpack = self.parse_geo_flags)), # clear set f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">3BL", (3,))), # pad pad type seg_ptr - f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">BHL", (2,))), # dmem_index offset seg_ptr + f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">BHL", (2,), make_str = False)), # dmem_index offset seg_ptr # set other modes } elif f3d_gbi.F3DEX_GBI: @@ -611,18 +628,18 @@ def setup_unpack_dicts(self): f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr f3d_gbi.G_VTX: ( "gsSPVertexBin", - PackedFormat(">7B", (3,), reorder = (1, 0, 3), make_str = False, bit_packing=(8, 6, 10, 32)), + PackedFormat(">7B", (2,), reorder = (1, 0, 3), make_str = False, bit_packing=(8, 6, 10, 32)), ), # buf_start num_vert len_dat vtx_ptr, reorder -> num offset ptr f3d_gbi.G_SETGEOMETRYMODE: ( "gsSPSetGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32)), + PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), ), # pad word f3d_gbi.G_CLEARGEOMETRYMODE: ( "gsSPClearGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32)), + PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), ), # word pad # set other mode, L and H? - f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,))), # offset dmem_index seg_ptr + f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,), make_str = False)), # offset dmem_index seg_ptr } else: self.f3dex_cmd_gbi_names = dict() @@ -630,28 +647,28 @@ def setup_unpack_dicts(self): self.f3d_cmd_gbi_names = { f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr - f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">BHL", (2,))), # dmem_index siz mem_ptr + f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">BHL", (2,), make_str = False)), # dmem_index siz mem_ptr f3d_gbi.G_VTX: ( "gsSPVertexBin", - PackedFormat(">7B", (3,), reorder = (0, 1, 3), make_str = False, bit_packing=(4, 4, 16, 32), post_unpack = self.f3d_g_vertex_parse), + PackedFormat(">7B", (2,), reorder = (0, 1, 3), make_str = False, bit_packing=(4, 4, 16, 32), post_unpack = self.f3d_g_vertex_parse), ), # num_vert buf_start len_dat vtx_ptr, reorder -> num offset ptr f3d_gbi.G_SETGEOMETRYMODE: ( "gsSPSetGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32)), + PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), ), # pad word f3d_gbi.G_CLEARGEOMETRYMODE: ( "gsSPClearGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32)), + PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), ), # pad word # set other mode, L and H? - f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,))), # offset dmem_index seg_ptr + f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,), make_str = False)), # offset dmem_index seg_ptr f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">7B")), # pads f3d_gbi.G_TRI1: ("gsSP1Triangle", PackedFormat(">7B", make_str = False, reorder = (4, 5, 6, 3), post_unpack = lambda args: [a//10 for a in args])), # pad123 flag v123, reorder v123 flag } if f3d_gbi.F3DEX_GBI or f3d_gbi.F3DLP_GBI or f3d_gbi.F3DEX_GBI_2: self.f3dex_cmd_gbi_names.update( { - f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">3BL", (3,), reorder=(0, 2, 3, 1))), # size offset dmem_index seg_ptr, reorder -> index siz seg_ptr offset + f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">3BL", (3,), make_str = False, reorder=(0, 2, 3, 1))), # size offset dmem_index seg_ptr, reorder -> index siz seg_ptr offset f3d_gbi.G_MODIFYVTX: ("gsSPModifyVertex", PackedFormat(">BHl")), # enum buf_index new_val f3d_gbi.G_CULLDL: ("gsSPCullDisplayList", PackedFormat(">7B")), # I'll just be ignoring this anyway f3d_gbi.G_BRANCH_Z: ( @@ -686,8 +703,8 @@ def setup_unpack_dicts(self): PackedFormat(">7B", (3,), bit_packing=(3, 2, 19, 32)), ), # fmt siz pad im_ptr f3d_gbi.G_SETCOMBINE: ( - "gsDPSetCombineMode", - PackedFormat(">7B", bit_packing=(4, 5, 3, 3, 4, 5, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3)), + "gsDPSetCombineLERP", + PackedFormat(">7B", bit_packing=(4, 5, 3, 3, 4, 5, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3), reorder = (0, 6, 1, 10, 2, 11, 3, 12, 4, 7, 5, 13, 8, 14, 9, 15), post_unpack = self.parse_color_combiner), ), # clr_a_1 clr_c_1 alpha_a_1 alpha_c_1 clr_a_2 clr_c_2 clr_b_1 clr_d_1 alpha_b_1 alpha_d_1 clr_b_2 alpha_a_2 alpha_c_2 clr_d_2 alpha_b_2 alpha_d_2 f3d_gbi.G_SETENVCOLOR: ("gsDPSetEnvColor", PackedFormat(">Bh4B")), # pad pad rgba f3d_gbi.G_SETPRIMCOLOR: ("gsDPSetPrimColor", PackedFormat(">7B")), # pad minLod loc_frac rgba @@ -922,11 +939,22 @@ def gsDPSetRenderMode(self, macro: Macro): self.last_mat.RenderMode = macro.args return self._continue_parse - # not a real gbi cmd, but the binary version that utilizes G_MOVEMEM + # TODO: add support at some point, affects fog, and light color + def gsMoveWd(self, macro: Macro): + return self._continue_parse + + # aliased in gbi C macros, the binary version affects lights and matrices def gsSPMoveMem(self, macro: Macro): - # just check for G_MV_L0 for now - # if macro.args[0] = self.f3d_gbi.G_MV_L0: - # return self.gsSPLight(macro) + # dmem_index siz mem_ptr + # just check for lights + dmem_indices = {12: 'G_MV_POINT', 14: 'G_MV_MATRIX', 0: 'G_MV_LOOKATX', 24: 'G_MV_LOOKATY', 48: 'G_MV_L0', 72: 'G_MV_L1', 96: 'G_MV_L2', 120: 'G_MV_L3', 144: 'G_MV_L5', 168: 'G_MV_L5', 192: 'G_MV_L6', 216: 'G_MV_L7', 128: 'G_MV_VIEWPORT', 130: 'G_MV_LOOKATY', 132: 'G_MV_LOOKATX', 134: 'G_MV_L0', 136: 'G_MV_L1', 138: 'G_MV_L2', 140: 'G_MV_L3', 142: 'G_MV_L4', 146: 'G_MV_L6', 148: 'G_MV_L7', 150: 'G_MV_TXTATT', 158: 'G_MV_MATRIX_1', 152: 'G_MV_MATRIX_2', 154: 'G_MV_MATRIX_3', 156: 'G_MV_MATRIX_4'} + index = dmem_indices.get(macro.args[0], None) + if "G_MV_L" in index: + light_num = int(re.search("\d", index).group()) + if light_num >= self.last_mat.num_lights: + self.last_mat.ambient_light = LightParent.ambient_from_binary(self.bin_file, macro) + else: + self.last_mat.light_col[light_num] = LightParent.diffuse_from_binary(self.bin_file, macro) return self._continue_parse # The highest numbered light is always the ambient light @@ -1109,6 +1137,16 @@ def gsDPSetEnvColor(self, macro: Macro): # multiple geo modes can happen in a row that contradict each other # this is mostly due to culling wanting diff geo modes than drawing # but sometimes using the same vertices + def parse_geo_flags(self, args: list[int]): + def get_flags(arg: int): + used_flags = [] + for flag in self.f3d_gbi.allGeomModeFlags: + flag_val = getattr(self.f3d_gbi, flag, None) + if flag_val and ((arg & flag_val) == flag_val): + used_flags.append(flag) + return " | ".join(used_flags) + return [get_flags(arg) for arg in args] + def gsSPClearGeometryMode(self, macro: Macro): self.NewMat = 1 args = [a.strip() for a in macro.args[0].split("|")] @@ -1150,6 +1188,15 @@ def gsSPLoadGeometryMode(self, macro: Macro): return self._continue_parse # uses bitwise unpacking + def parse_color_combiner(self, args: list[int]): + a = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: 'NOISE'} + b = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: 'CENTER', 7: 'K4'} + c = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: 'SCALE', 7: 'COMBINED_ALPHA', 8: 'TEXEL0_ALPHA', 9: 'TEXEL1_ALPHA', 10: 'PRIMITIVE_ALPHA', 11: 'SHADE_ALPHA', 12: 'ENV_ALPHA', 13: 'LOD_FRACTION', 14: 'PRIM_LOD_FRAC', 15: 'K5'} + d = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: '0'} + aa = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: '0'} + ba = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: '0'} + ca = da= aa + return [d.get(val, 0) for val, d in zip(args, [a,b,c,d,aa,ba,ca,da]*2)] def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index c407aca6b..23ff95cf3 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -3,7 +3,7 @@ # ------------------------------------------------------------------------ # TODO: -# fix materials for binary (mostly render modes, color combiners and lights) +# fix set tile flags for binary? # clean up code base, remove existing sm64 binary importer # make sure props play nice in prop updating system @@ -380,7 +380,7 @@ class Level(DataParser): 0x24: ( "OBJECT_WITH_ACTS", PackedFormat(">2B6hLL", (9,), reorder=(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)), - ), # model posXYZ angleXYZ beh_param beh acts) # acts model posXYZ angleXYZ beh_param beh + ), # model posXYZ angleXYZ beh_param beh acts, reorder -> acts model posXYZ angleXYZ beh_param beh 0x25: ("MARIO", PackedFormat(">BBlL")), # pad unk beh_param beh_ptr 0x26: ("WARP_NODE", PackedFormat(">6B")), # id dest_level dest_area dest_node flags pad 0x27: ("PAINTING_WARP_NODE", PackedFormat(">6B")), # id dest_level dest_area dest_node flags pad @@ -1182,7 +1182,11 @@ def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv # scale verts l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] # idk why this is necessary. N64 thing or something? - l[uv_map].uv[1] = l[uv_map].uv[1] * -1 + 1 + if self.parsing_target == DataParser._binary_parsing: + flip = 1 + else: + flip = -1 + l[uv_map].uv[1] = l[uv_map].uv[1] * flip + 1 l[v_color] = [*gammaInverse([a / 255 for a in vcol]), 255] l[v_alpha] = [vcol[3] / 255 for i in range(4)] @@ -1277,14 +1281,14 @@ def cmd_rm_func(format_data, cmd_bytes): ), # use a specific function to decode this one, format in dict is dummy 0x11: ( "GEO_TRANSLATE_NODE_BIN", - PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y)), + PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False), ), 0x12: ( "GEO_ROTATION_NODE_BIN", - PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y)), + PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False), ), 0x13: ("GEO_ANIMATED_PART", PackedFormat(f">B3hL", (4,))), - 0x14: ("GEO_BILLBOARD_BIN", PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y))), + 0x14: ("GEO_BILLBOARD_BIN", PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False)), 0x15: ("GEO_DISPLAY_LIST", PackedFormat(">BhL", (2,))), 0x16: ("GEO_SHADOW", PackedFormat(">B3h")), 0x17: ("GEO_RENDER_OBJ", PackedFormat(">Bh")), @@ -1293,7 +1297,7 @@ def cmd_rm_func(format_data, cmd_bytes): 0x1A: ("GEO_NOP", PackedFormat(">B3h")), 0x1B: ("GEO_COPY_VIEW", PackedFormat(">Bh")), 0x1C: ("GEO_HELD_OBJECT", PackedFormat(">B3hL")), - 0x1D: ("GEO_SCALE", PackedFormat(f">BhlL", (3,), lambda x, y: GraphNodes.cmd_rm_dl(x, y))), + 0x1D: ("GEO_SCALE", PackedFormat(f">BhlL", (3,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False)), 0x1E: ("GEO_NOP", PackedFormat(">B3h")), 0x1F: ("GEO_NOP", PackedFormat(">B7h")), 0x20: ("GEO_CULLING_RADIUS", PackedFormat(">Bh")), @@ -1426,7 +1430,7 @@ def fix_bin_cmd_dls(self, macro: Macro) -> Macro: if (macro.args[0] & 0x80) == 0x80: return macro else: - return macro.partial([*macro.args, "NULL"]) + return macro.partial(*macro.args, "NULL") # macro parsing helpers def parse_layer(self, layer: str) -> int: @@ -1508,9 +1512,10 @@ def GEO_CLOSE_NODE(self, macro: Macro, depth: int): def GEO_DISPLAY_LIST(self, macro: Macro, depth: int): # translation, rotation, layer, model model = macro.args[-1] - geo_obj = self.add_model( - ModelDat(self.parent_transform, macro.args[0], model), "display_list", self.display_list, macro.args[1] - ) + if model != "NULL": + geo_obj = self.add_model( + ModelDat(self.parent_transform, macro.args[0], model), "display_list", self.display_list, macro.args[1] + ) self.set_transform(geo_obj, self.parent_transform) return self._continue_parse @@ -1543,7 +1548,7 @@ def GEO_BILLBOARD(self, macro: Macro, depth: int): return self._continue_parse def GEO_BILLBOARD_BIN(self, macro: Macro, depth: int): - return self.GEO_BILLBOARD_WITH_PARAMS_AND_DL(self.fix_bin_cmd_dls(macro), depths) + return self.GEO_BILLBOARD_WITH_PARAMS_AND_DL(self.fix_bin_cmd_dls(macro), depth) def GEO_ANIMATED_PART(self, macro: Macro, depth: int): # layer, translation, DL @@ -1552,7 +1557,7 @@ def GEO_ANIMATED_PART(self, macro: Macro, depth: int): self.last_transform = self.parent_transform @ transform model = macro.args[-1] - if model != "NULL": + if model != "NULL" and model != 0: geo_obj = self.add_model( ModelDat(self.last_transform, macro.args[0], model), "bone", self.animated_part, macro.args[0] ) @@ -2189,9 +2194,9 @@ def GEO_SWITCH_CASE(self, macro: Macro, depth: int): def GEO_SCALE_BIN(self, macro: Macro, depth: int): macro = self.fix_bin_cmd_dls(macro) if macro.args[-1] != "NULL": - return self.GEO_SCALE_WITH_DL(macro, depth) + return self.GEO_SCALE_WITH_DL(macro.partial(macro[1:]), depth) else: - return self.GEO_SCALE(macro, depth) + return self.GEO_SCALE(macro.partial(macro.args[0], macro.args[2]), depth) def GEO_SCALE_WITH_DL(self, macro: Macro, depth: int): scale = eval_or_int(macro.args[1]) / 0x10000 @@ -2681,7 +2686,7 @@ def find_level_models_from_geo( geo_layout_dict, area.root, scene, f"GeoRoot {props.level_name} {area_index}", area.root, col=col ) geo.parse_level_geo(area.geo) - area.geo = geo + area.geo_data = geo return lvl @@ -2917,7 +2922,7 @@ def execute(self, context): level_data_path, script_path, geo_path = get_operator_paths(props, decomp_path) lvl = parse_level_script(script_path, decomp_path, rom_path, scene, col) - if props.import_linked_actors: + if props.import_linked_actors and props.import_target == "C": unique_model_ids = {model for model in lvl.loaded_geos.keys()} unique_model_ids.update({model for model in lvl.loaded_dls.keys()}) unique_model_ids.update({object.model for area in lvl.areas.values() for object in area.objects}) @@ -3286,9 +3291,10 @@ def draw_level(self, layout: bpy.types.UILayout): row.prop(self, "force_new_tex") row.prop(self, "as_obj") row.prop(self, "export_friendly") - row.prop(self, "import_linked_actors") + if self.import_target == "C": + row.prop(self, "import_linked_actors") row.prop(self, "use_collection") - if self.import_linked_actors: + if self.import_linked_actors and self.import_target == "C": box = box.box() box.operator("scene.add_group", text="Add Group Load") for index, group in enumerate(self.linked_groups): diff --git a/fast64_internal/sm64/tst.py b/fast64_internal/sm64/tst.py deleted file mode 100644 index 3ba287cd4..000000000 --- a/fast64_internal/sm64/tst.py +++ /dev/null @@ -1,2829 +0,0 @@ -{ - "Amp": ActorPresetInfo( - decomp_path="actors/amp", - level="bbh", - group="common0", - animation=AnimInfo( - address=134234164, - behaviours={"Circling Amp": 318780296, "Homing Amp": 318780244}, - size=None, - ignore_bone_count=True, - dma=False, - directory=None, - names=["Moving"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=194, enum="MODEL_AMP")], geolayout=251658280, c_name=None, displaylist=None - ), - collision={}, - ), - "Bird": ActorPresetInfo( - decomp_path="actors/bird", - level="castle_grounds", - group="group10", - animation=AnimInfo( - address=83888616, - behaviours={"Bird": 318788436, "End Birds 1": 318789212, "End Birds 2": 318789248}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Flying", "Gliding"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_BIRDS")], geolayout=201326592, c_name=None, displaylist=None - ), - collision={}, - ), - "Blargg": ActorPresetInfo( - decomp_path="actors/blargg", - level="lll", - group="group2", - animation=AnimInfo( - address=83911020, - behaviours={}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Idle", "Bite"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_BLARGG")], - geolayout=201327168, - c_name="blargg_geo", - displaylist=None, - ), - collision={}, - ), - "Blue Coin Switch": ActorPresetInfo( - decomp_path="actors/blue_coin_switch", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=140, enum="MODEL_BLUE_COIN_SWITCH")], - geolayout=251658240, - c_name=None, - displaylist=None, - ), - collision=CollisionInfo(address=134221464, c_name="blue_coin_switch_seg8_collision_08000E98"), - ), - "Blue Fish": ActorPresetInfo( - decomp_path="actors/blue_fish", - level="bbh", - group="common1", - animation=AnimInfo( - address=50447024, - behaviours=318774060, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Swimming", "Diving"], - ), - models={ - "Fish": ModelInfo( - model_id=[ModelIDInfo(number=185, enum="MODEL_FISH")], - geolayout=369101892, - c_name=None, - displaylist=None, - ), - "Fish (With Shadow)": ModelInfo( - model_id=[ModelIDInfo(number=186, enum="MODEL_FISH_SHADOW")], - geolayout=369101804, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Bobomb": ActorPresetInfo( - decomp_path="actors/bobomb", - level="bbh", - group="common0", - animation=AnimInfo( - address=134363500, - behaviours={"Bobomb": 318779764, "Bobomb Buddy": 318779868, "Bobomb Buddy (Opens Cannon)": 318779944}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walking", "Strugling"], - ), - models={ - "Bobomb": ModelInfo( - model_id=[ModelIDInfo(number=188, enum="MODEL_BLACK_BOBOMB")], - geolayout=251660216, - c_name=None, - displaylist=None, - ), - "Bobomb Buddy": ModelInfo( - model_id=[ModelIDInfo(number=195, enum="MODEL_BOBOMB_BUDDY")], - geolayout=251660532, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Bowser Bomb": ActorPresetInfo( - decomp_path="actors/bomb", - level="bowser_1", - group="group12", - animation={}, - models=ModelInfo( - model_id=[ - ModelIDInfo(number=101, enum="MODEL_BOWSER_BOMB_CHILD_OBJ"), - ModelIDInfo(number=179, enum="MODEL_BOWSER_BOMB"), - ], - geolayout=218106812, - c_name="bowser_bomb_geo", - displaylist=None, - ), - collision={}, - ), - "Boo": ActorPresetInfo( - decomp_path="actors/boo", - level="bbh", - group="group9", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_BOO")], geolayout=201327140, c_name="boo_geo", displaylist=None - ), - collision={}, - ), - "Boo (Inside Castle)": ActorPresetInfo( - decomp_path="actors/boo_castle", - level="castle_inside", - group="group15", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=101, enum="MODEL_BOO_CASTLE")], - geolayout=218105264, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Bookend": ActorPresetInfo( - decomp_path="actors/book", - level="bbh", - group="group9", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=89, enum="MODEL_BOOKEND")], - geolayout=201326784, - c_name="bookend_geo", - displaylist=None, - ), - collision={}, - ), - "Bookend Part": ActorPresetInfo( - decomp_path="actors/bookend", - level="bbh", - group="group9", - animation=AnimInfo( - address=83895616, - behaviours=318787692, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Opening Mouth", "Bite", "Closed"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=88, enum="MODEL_BOOKEND_PART")], - geolayout=201326592, - c_name="bookend_part_geo", - displaylist=None, - ), - collision={}, - ), - "Metal Ball": ActorPresetInfo( - decomp_path="actors/bowling_ball", - level="bbh", - group="common0", - animation={}, - models={ - "Bowling Ball": ModelInfo( - model_id=[ModelIDInfo(number=180, enum="MODEL_BOWLING_BALL")], - geolayout=251659840, - c_name=None, - displaylist=None, - ), - "Trajectory Marker Ball": ModelInfo( - model_id=[ModelIDInfo(number=225, enum="MODEL_TRAJECTORY_MARKER_BALL")], - geolayout=251659884, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Bowser": ActorPresetInfo( - decomp_path="actors/bowser", - level="bowser_1", - group="group12", - animation=AnimInfo( - address=101021664, - behaviours=318773328, - size=27, - ignore_bone_count=True, - dma=False, - directory=None, - names=[ - "Stand Up", - "Stand Up (Unused)", - "Shaking", - "Grabbed", - "Broken Animation (Unused)", - "Fall Down", - "Fire Breath", - "Jump", - "Jump Stop", - "Jump Start", - "Dance", - "Fire Breath Up", - "Idle", - "Slow Gait", - "Look Down Stop Walk", - "Look Up Start Walk", - "Flip Down", - "Lay Down", - "Run Start", - "Run", - "Run Stop", - "Run Slip", - "Fire Breath Quick", - "Edge Move", - "Edge Stop", - "Flip", - "Stand Up From Flip", - ], - ), - models={ - "Bowser": ModelInfo( - model_id=[ModelIDInfo(number=100, enum="MODEL_BOWSER")], - geolayout=218106564, - c_name=None, - displaylist=None, - ), - "Bowser (No Shadow)": ModelInfo( - model_id=[ModelIDInfo(number=105, enum="MODEL_BOWSER_NO_SHADOW")], - geolayout=218106688, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Bowser Flame": ActorPresetInfo( - decomp_path="actors/bowser_flame", - level="bowser_1", - group="group12", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=103, enum="MODEL_BOWSER_FLAMES")], - geolayout=218103808, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Bowser Key": ActorPresetInfo( - decomp_path="actors/bowser_key", - level="bbh", - group="common1", - animation=AnimInfo( - address=50426576, - behaviours={"Bowser Key": 318774196, "Bowser Key (Cutscene)": 318774228}, - size=2, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Unlock Door", "Course Exit"], - ), - models={ - "Bowser Key (Cutscene)": ModelInfo( - model_id=[ModelIDInfo(number=200, enum="MODEL_BOWSER_KEY_CUTSCENE")], - geolayout=369101488, - c_name=None, - displaylist=None, - ), - "Bowser Key": ModelInfo( - model_id=[ModelIDInfo(number=204, enum="MODEL_BOWSER_KEY")], - geolayout=369101444, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Breakable Box": ActorPresetInfo( - decomp_path="actors/breakable_box", - level="bbh", - group="common0", - animation={}, - models={ - "Breakable Box": ModelInfo( - model_id=[ModelIDInfo(number=129, enum="MODEL_BREAKABLE_BOX")], - geolayout=251659728, - c_name=None, - displaylist=None, - ), - "Breakable Box (Small)": ModelInfo( - model_id=[ModelIDInfo(number=130, enum="MODEL_BREAKABLE_BOX_SMALL")], - geolayout=251659792, - c_name=None, - displaylist=None, - ), - }, - collision=CollisionInfo(address=134294896, c_name="breakable_box_seg8_collision_08012D70"), - ), - "Bub": ActorPresetInfo( - decomp_path="actors/bub", - level="wdw", - group="group13", - animation=AnimInfo( - address=100737876, - behaviours=318775820, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Swimming"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=100, enum="MODEL_BUB")], - geolayout=218104716, - c_name="bub_geo", - displaylist=None, - ), - collision={}, - ), - "Bubba": ActorPresetInfo( - decomp_path="actors/bubba", - level="thi", - group="group11", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=89, enum="MODEL_BUBBA")], - geolayout=201326592, - c_name="bubba_geo", - displaylist=None, - ), - collision={}, - ), - "Bubble": ActorPresetInfo( - decomp_path="actors/bubble", - level="bbh", - group="group0", - animation={}, - models={ - "Bubble": ModelInfo( - model_id=[ModelIDInfo(number=168, enum="MODEL_BUBBLE")], - geolayout=385875968, - c_name=None, - displaylist=None, - ), - "Bubble Marble": ModelInfo( - model_id=[ModelIDInfo(number=170, enum="MODEL_PURPLE_MARBLE")], - geolayout=385875996, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Bullet Bill": ActorPresetInfo( - decomp_path="actors/bullet_bill", - level="wf", - group="group1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_BULLET_BILL")], - geolayout=201327204, - c_name="bullet_bill_geo", - displaylist=None, - ), - collision={}, - ), - "Bully": ActorPresetInfo( - decomp_path="actors/bully", - level="lll", - group="group2", - animation=AnimInfo( - address=83904268, - behaviours={"Bully": 318781024, "Bully (With Minions)": 318781076, "Bully (Small)": 318780972}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Patrol", "Chase", "Falling over (Unused)", "Knockback"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_BULLY")], - geolayout=201326592, - c_name="bully_geo", - displaylist=None, - ), - collision={}, - ), - "Burn Smoke": ActorPresetInfo( - decomp_path="actors/burn_smoke", - level="bbh", - group="group0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=148, enum="MODEL_BURN_SMOKE")], - geolayout=385876100, - c_name="burn_smoke_geo", - displaylist=None, - ), - collision={}, - ), - "Butterfly": ActorPresetInfo( - decomp_path="actors/butterfly", - level="bbh", - group="common1", - animation=AnimInfo( - address=50353840, - behaviours={"Butterfly": 318780348, "Triplet Butterfly": 318789016}, - size=2, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Flying", "Resting"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=187, enum="MODEL_BUTTERFLY")], - geolayout=369098920, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Cannon Barrel": ActorPresetInfo( - decomp_path="actors/cannon_barrel", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=127, enum="MODEL_CANNON_BARREL")], - geolayout=251658688, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Cannon Base": ActorPresetInfo( - decomp_path="actors/cannon_base", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=128, enum="MODEL_CANNON_BASE")], - geolayout=251658664, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Cannon Lid": ActorPresetInfo( - decomp_path="actors/cannon_lid", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=201, enum="MODEL_DL_CANNON_LID")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=134236384, c_name="cannon_lid_seg8_dl_080048E0"), - ), - collision=CollisionInfo(address=134236496, c_name="cannon_lid_seg8_collision_08004950"), - ), - "Cap Switch": ActorPresetInfo( - decomp_path="actors/capswitch", - level="vcutm", - group="group8", - animation={}, - models={ - "Cap Switch": ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_CAP_SWITCH")], - geolayout=201326664, - c_name=None, - displaylist=None, - ), - "Cap Switch (Exclamation)": ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_CAP_SWITCH_EXCLAMATION")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=83897856, c_name="cap_switch_exclamation_seg5_dl_05002E00"), - ), - "Cap Switch (Base)": ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_CAP_SWITCH_BASE")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=83898656, c_name="cap_switch_base_seg5_dl_05003120"), - ), - }, - collision={ - "Cap Switch (Base)": CollisionInfo(address=83899344, c_name="capswitch_collision_050033D0"), - "Cap Switch (Top)": CollisionInfo(address=83899464, c_name="capswitch_collision_05003448"), - }, - ), - "Chain Ball": ActorPresetInfo( - decomp_path="actors/chain_ball", - level="bob", - group="group14", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=101, enum="MODEL_METALLIC_BALL")], - geolayout=218105296, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Chain Chomp": ActorPresetInfo( - decomp_path="actors/chain_chomp", - level="bob", - group="group14", - animation=AnimInfo( - address=100815224, - behaviours=318785420, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Chomping"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=102, enum="MODEL_CHAIN_CHOMP")], - geolayout=218105324, - c_name="chain_chomp_geo", - displaylist=None, - ), - collision={}, - ), - "Haunted Chair": ActorPresetInfo( - decomp_path="actors/chair", - level="bbh", - group="group9", - animation=AnimInfo( - address=83908484, - behaviours=318787540, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Default Pose"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_HAUNTED_CHAIR")], - geolayout=201326808, - c_name="haunted_chair_geo", - displaylist=None, - ), - collision={}, - ), - "Checkerboard Platform": ActorPresetInfo( - decomp_path="actors/checkerboard_platform", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=202, enum="MODEL_CHECKERBOARD_PLATFORM")], - geolayout=251659492, - c_name=None, - displaylist=None, - ), - collision=CollisionInfo(address=134272784, c_name="checkerboard_platform_seg8_collision_0800D710"), - ), - "Chilly Chief": ActorPresetInfo( - decomp_path="actors/chilly_chief", - level="ccm", - group="group16", - animation=AnimInfo( - address=100678036, - behaviours={"Chilly Chief (Small)": 318781128, "Chilly Chief (Big)": 318781184}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Patrol", "Chase", "Falling over (Unused)", "Knockback"], - ), - models={ - "Chilly Chief (Small)": ModelInfo( - model_id=[ModelIDInfo(number=100, enum="MODEL_CHILL_BULLY")], - geolayout=100677460, - c_name=None, - displaylist=None, - ), - "Chilly Chief (Big)": ModelInfo( - model_id=[ModelIDInfo(number=101, enum="MODEL_BIG_CHILL_BULLY")], - geolayout=100677748, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Chuckya": ActorPresetInfo( - decomp_path="actors/chuckya", - level="bbh", - group="common0", - animation=AnimInfo( - address=134266992, - behaviours=318768424, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Grab Mario", "Holding Mario", "Being Held", "Throwing", "Moving", "Balancing/Idle (Unused)"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=223, enum="MODEL_CHUCKYA")], geolayout=251658712, c_name=None, displaylist=None - ), - collision={}, - ), - "Clam Shell": ActorPresetInfo( - decomp_path="actors/clam", - level="jrb", - group="group4", - animation=AnimInfo( - address=83892036, - behaviours=318788672, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Close", "Open"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=88, enum="MODEL_CLAM_SHELL")], - geolayout=201326592, - c_name="clam_shell_geo", - displaylist=None, - ), - collision={}, - ), - "Coin": ActorPresetInfo( - decomp_path="actors/coin", - level="bbh", - group="common1", - animation={}, - models={ - "Yellow Coin": ModelInfo( - model_id=[ModelIDInfo(number=116, enum="MODEL_YELLOW_COIN")], - geolayout=369099068, - c_name=None, - displaylist=None, - ), - "Yellow Coin (No Shadow)": ModelInfo( - model_id=[ModelIDInfo(number=117, enum="MODEL_YELLOW_COIN_NO_SHADOW")], - geolayout=369099168, - c_name=None, - displaylist=None, - ), - "Blue Coin": ModelInfo( - model_id=[ModelIDInfo(number=118, enum="MODEL_BLUE_COIN")], - geolayout=369099264, - c_name=None, - displaylist=None, - ), - "Blue Coin (No Shadow)": ModelInfo( - model_id=[ModelIDInfo(number=119, enum="MODEL_BLUE_COIN_NO_SHADOW")], - geolayout=369099364, - c_name=None, - displaylist=None, - ), - "Red Coin": ModelInfo( - model_id=[ModelIDInfo(number=215, enum="MODEL_RED_COIN")], - geolayout=369099460, - c_name=None, - displaylist=None, - ), - "Red Coin (No Shadow)": ModelInfo( - model_id=[ModelIDInfo(number=216, enum="MODEL_RED_COIN_NO_SHADOW")], - geolayout=369099560, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Cyan Fish": ActorPresetInfo( - decomp_path="actors/cyan_fish", - level="wdw", - group="group13", - animation=AnimInfo( - address=100721252, - behaviours={}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Swimming"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=103, enum="MODEL_CYAN_FISH")], - geolayout=218104612, - c_name="cyan_fish_geo", - displaylist=None, - ), - collision={}, - ), - "Dirt": ActorPresetInfo( - decomp_path="actors/dirt", - level="bbh", - group="common1", - animation={}, - models={ - "Dirt": ModelInfo( - model_id=[ModelIDInfo(number=138, enum="MODEL_DIRT_ANIMATION")], - geolayout=369102548, - c_name=None, - displaylist=None, - ), - "(Unused) Cartoon Start": ModelInfo( - model_id=[ModelIDInfo(number=139, enum="MODEL_CARTOON_STAR")], - geolayout=369102628, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Door": ActorPresetInfo( - decomp_path="actors/door", - level="bbh", - group="common1", - animation=AnimInfo( - address=50419392, - behaviours=318769932, - size=None, - ignore_bone_count=True, - dma=False, - directory=None, - names=[ - "Closed", - "Open and Close", - "Open and Close (Slower?)", - "Open and Close (Slower? Last 10 frames)", - "Open and Close (Last 10 frames)", - ], - ), - models={ - "Castle Door": ModelInfo( - model_id=[ - ModelIDInfo(number=38, enum="MODEL_CASTLE_GROUNDS_CASTLE_DOOR"), - ModelIDInfo(number=38, enum="MODEL_CASTLE_CASTLE_DOOR"), - ModelIDInfo(number=28, enum="MODEL_CASTLE_CASTLE_DOOR_UNUSED"), - ], - geolayout=369099688, - c_name=None, - displaylist=None, - ), - "Cabin Door": ModelInfo( - model_id=[ModelIDInfo(number=39, enum="MODEL_CCM_CABIN_DOOR")], - geolayout=369099836, - c_name=None, - displaylist=None, - ), - "Wooden Door": ModelInfo( - model_id=[ - ModelIDInfo(number=29, enum="MODEL_CASTLE_WOODEN_DOOR_UNUSED"), - ModelIDInfo(number=29, enum="MODEL_HMC_WOODEN_DOOR"), - ModelIDInfo(number=39, enum="MODEL_CASTLE_WOODEN_DOOR"), - ModelIDInfo(number=39, enum="MODEL_COURTYARD_WOODEN_DOOR"), - ], - geolayout=369099984, - c_name=None, - displaylist=None, - ), - "Wooden Door 2": ModelInfo(model_id=[], geolayout=369100132, c_name=None, displaylist=None), - "Metal Door": ModelInfo( - model_id=[ - ModelIDInfo(number=31, enum="MODEL_HMC_METAL_DOOR"), - ModelIDInfo(number=41, enum="MODEL_CASTLE_METAL_DOOR"), - ModelIDInfo(number=41, enum="MODEL_CASTLE_GROUNDS_METAL_DOOR"), - ], - geolayout=369100312, - c_name=None, - displaylist=None, - ), - "Hazy Maze Door": ModelInfo( - model_id=[ModelIDInfo(number=32, enum="MODEL_HMC_HAZY_MAZE_DOOR")], - geolayout=369100428, - c_name=None, - displaylist=None, - ), - "Haunted Door": ModelInfo( - model_id=[ModelIDInfo(number=29, enum="MODEL_BBH_HAUNTED_DOOR")], - geolayout=369100576, - c_name=None, - displaylist=None, - ), - "Castle Door (0 Star)": ModelInfo( - model_id=[ModelIDInfo(number=34, enum="MODEL_CASTLE_DOOR_0_STARS")], - geolayout=369100724, - c_name=None, - displaylist=None, - ), - "Castle Door (1 Star)": ModelInfo( - model_id=[ModelIDInfo(number=35, enum="MODEL_CASTLE_DOOR_1_STAR")], - geolayout=369100904, - c_name=None, - displaylist=None, - ), - "Castle Door (3 Star)": ModelInfo( - model_id=[ModelIDInfo(number=36, enum="MODEL_CASTLE_DOOR_3_STARS")], - geolayout=369101084, - c_name=None, - displaylist=None, - ), - "Key Door": ModelInfo( - model_id=[ModelIDInfo(number=37, enum="MODEL_CASTLE_KEY_DOOR")], - geolayout=369101264, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Dorrie": ActorPresetInfo( - decomp_path="actors/dorrie", - level="hmc", - group="group17", - animation=AnimInfo( - address=100726328, - behaviours=318787472, - size=3, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Idle", "Moving", "Lower and Raise Head"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=104, enum="MODEL_DORRIE")], - geolayout=218104368, - c_name="dorrie_geo", - displaylist=None, - ), - collision={}, - ), - "Exclamation Box": ActorPresetInfo( - decomp_path="actors/exclamation_box", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=137, enum="MODEL_EXCLAMATION_BOX")], - geolayout=251659924, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Exclamation Box Outline": ActorPresetInfo( - decomp_path="actors/exclamation_box_outline", - level="bbh", - group="common0", - animation={}, - models={ - "Exclamation Box Outline": ModelInfo( - model_id=[ModelIDInfo(number=131, enum="MODEL_EXCLAMATION_BOX_OUTLINE")], - geolayout=251660890, - c_name=None, - displaylist=None, - ), - "Exclamation Point": ModelInfo( - model_id=[ModelIDInfo(number=132, enum="MODEL_EXCLAMATION_POINT")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=134373128, c_name="exclamation_box_outline_seg8_dl_08025F08"), - ), - }, - collision=CollisionInfo(address=134373240, c_name="exclamation_box_outline_seg8_collision_08025F78"), - ), - "Explosion": ActorPresetInfo( - decomp_path="actors/explosion", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=205, enum="MODEL_EXPLOSION")], - geolayout=369098816, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Eyerok": ActorPresetInfo( - decomp_path="actors/eyerok", - level="ssl", - group="group5", - animation=AnimInfo( - address=83957476, - behaviours=318788276, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Recovering", "Death", "Idle", "Attacked", "Open", "Show Eye", "Sleep", "Close"], - ), - models={ - "Eyerok Left Hand": ModelInfo( - model_id=[ModelIDInfo(number=88, enum="MODEL_EYEROK_LEFT_HAND")], - geolayout=201328040, - c_name=None, - displaylist=None, - ), - "Eyerok Right Hand": ModelInfo( - model_id=[ModelIDInfo(number=89, enum="MODEL_EYEROK_RIGHT_HAND")], - geolayout=201328100, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Flame": ActorPresetInfo( - decomp_path="actors/flame", - level="bbh", - group="common1", - animation={}, - models={ - "Red Flame (With Shadow)": ModelInfo( - model_id=[ModelIDInfo(number=203, enum="MODEL_RED_FLAME_SHADOW")], - geolayout=369101584, - c_name=None, - displaylist=None, - ), - "Red Flame": ModelInfo( - model_id=[ModelIDInfo(number=144, enum="MODEL_RED_FLAME")], - geolayout=369101612, - c_name=None, - displaylist=None, - ), - "Blue Flame": ModelInfo( - model_id=[ModelIDInfo(number=145, enum="MODEL_BLUE_FLAME")], - geolayout=369101708, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Fly Guy": ActorPresetInfo( - decomp_path="actors/flyguy", - level="bbh", - group="common0", - animation=AnimInfo( - address=134290020, - behaviours=318785244, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Flying"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=220, enum="MODEL_FLYGUY")], geolayout=251659544, c_name=None, displaylist=None - ), - collision={}, - ), - "Fwoosh": ActorPresetInfo( - decomp_path="actors/fwoosh", - level="ttm", - group="group6", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=87, enum="MODEL_FWOOSH")], - geolayout=201327468, - c_name="fwoosh_geo", - displaylist=None, - ), - collision={}, - ), - "Goomba": ActorPresetInfo( - decomp_path="actors/goomba", - level="bbh", - group="common0", - animation=AnimInfo( - address=134339148, - behaviours=318785324, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walking"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=192, enum="MODEL_GOOMBA")], geolayout=251660004, c_name=None, displaylist=None - ), - collision={}, - ), - "Haunted Cage": ActorPresetInfo( - decomp_path="actors/haunted_cage", - level="bbh", - group="group9", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=90, enum="MODEL_HAUNTED_CAGE")], - geolayout=201327220, - c_name="haunted_cage_geo", - displaylist=None, - ), - collision={}, - ), - "Heart": ActorPresetInfo( - decomp_path="actors/heart", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=120, enum="MODEL_HEART")], geolayout=251659516, c_name=None, displaylist=None - ), - collision={}, - ), - "Heave-Ho": ActorPresetInfo( - decomp_path="actors/heave_ho", - level="wf", - group="group1", - animation=AnimInfo( - address=83972940, - behaviours=318772552, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Moving", "Throwing", "Stop"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=89, enum="MODEL_HEAVE_HO")], - geolayout=201327244, - c_name="heave_ho_geo", - displaylist=None, - ), - collision={}, - ), - "Hoot": ActorPresetInfo( - decomp_path="actors/hoot", - level="wf", - group="group1", - animation=AnimInfo( - address=83908456, - behaviours=318780396, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Flying", "Flying Fast"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_HOOT")], - geolayout=201326616, - c_name="hoot_geo", - displaylist=None, - ), - collision={}, - ), - "Bowser Impact Ring": ActorPresetInfo( - decomp_path="actors/impact_ring", - level="bowser_1", - group="group12", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=104, enum="MODEL_BOWSER_WAVE")], - geolayout=218103952, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Bowser Impact Smoke": ActorPresetInfo( - decomp_path="actors/impact_smoke", - level="bowser_1", - group="group12", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=102, enum="MODEL_BOWSER_SMOKE")], - geolayout=218106876, - c_name="bowser_impact_smoke_geo", - displaylist=None, - ), - collision={}, - ), - "King Bobomb": ActorPresetInfo( - decomp_path="actors/bobomb", - level="bob", - group="group3", - animation=AnimInfo( - address=83951152, - behaviours=318767604, - size=12, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Grab Mario", - "Holding Mario", - "Hit Ground", - "Unkwnown (Unused)", - "Stomp", - "Idle", - "Being Held", - "Landing", - "Jump", - "Throw Mario", - "Stand Up", - "Walking", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_KING_BOBOMB")], - geolayout=201326592, - c_name="king_bobomb_geo", - displaylist=None, - ), - collision={}, - ), - "Klepto": ActorPresetInfo( - decomp_path="actors/klepto", - level="ssl", - group="group5", - animation=AnimInfo( - address=83922172, - behaviours=318788368, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Dive", - "Struck By Mario", - "Dive at Mario", - "Dive at Mario 2", - "Dive at Mario 3", - "Dive at Mario 4", - "Dive Flap", - "Dive Flap 2", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=87, enum="MODEL_KLEPTO")], - geolayout=201326592, - c_name="klepto_geo", - displaylist=None, - ), - collision={}, - ), - "Koopa": ActorPresetInfo( - decomp_path="actors/koopa", - level="bob", - group="group14", - animation=AnimInfo( - address=100733796, - behaviours=318784896, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Falling Over (Unused Shelled Act 3)", - "Run Away", - "Laying (Unshelled)", - "Running", - "Run (Unused)", - "Laying (Shelled)", - "Stand Up", - "Stopped", - "Wake Up (Unused)", - "Walk", - "Walk Stop", - "Walk Start", - "Jump", - "Land", - ], - ), - models={ - "Koopa (Without Shell)": ModelInfo( - model_id=[ModelIDInfo(number=191, enum="MODEL_KOOPA_WITHOUT_SHELL")], - geolayout=218104016, - c_name=None, - displaylist=None, - ), - "Koopa (With Shell)": ModelInfo( - model_id=[ModelIDInfo(number=104, enum="MODEL_KOOPA_WITH_SHELL")], - geolayout=218104340, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Koopa Flag": ActorPresetInfo( - decomp_path="actors/koopa_flag", - level="bob", - group="group14", - animation=AnimInfo( - address=100667432, - behaviours=318785016, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Waving"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=106, enum="MODEL_KOOPA_FLAG")], - geolayout=218103808, - c_name="koopa_flag_geo", - displaylist=None, - ), - collision={}, - ), - "Koopa Shell": ActorPresetInfo( - decomp_path="actors/koopa_shell", - level="bbh", - group="common0", - animation={}, - models={ - "Koopa Shell": ModelInfo( - model_id=[ModelIDInfo(number=190, enum="MODEL_KOOPA_SHELL")], - geolayout=251660976, - c_name=None, - displaylist=None, - ), - "(Unused) Koopa Shell 1": ModelInfo(model_id=[], geolayout=251661020, c_name=None, displaylist=None), - "(Unused) Koopa Shell 2": ModelInfo(model_id=[], geolayout=251661064, c_name=None, displaylist=None), - }, - collision={}, - ), - "Lakitu (Cameraman)": ActorPresetInfo( - decomp_path="actors/lakitu_cameraman", - level="castle_inside", - group="group15", - animation=AnimInfo( - address=100686072, - behaviours={"Lakitu (Beginning)": 318789136, "Lakitu (Cameraman)": 318785876}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Flying"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=102, enum="MODEL_LAKITU")], geolayout=218103808, c_name=None, displaylist=None - ), - collision={}, - ), - "Lakitu (Enemy)": ActorPresetInfo( - decomp_path="actors/lakitu_enemy", - level="thi", - group="group11", - animation=AnimInfo( - address=83969236, - behaviours=318785816, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Flying", "No Spiny", "Throw Spiny", "Hold Spiny"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_ENEMY_LAKITU")], - geolayout=201327036, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Leaves": ActorPresetInfo( - decomp_path="actors/leaves", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=162, enum="MODEL_LEAVES")], geolayout=369101964, c_name=None, displaylist=None - ), - collision={}, - ), - "Mad Piano": ActorPresetInfo( - decomp_path="actors/mad_piano", - level="bbh", - group="group9", - animation=AnimInfo( - address=83925780, - behaviours=318787620, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Sleeping", "Chomping"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=87, enum="MODEL_MAD_PIANO")], - geolayout=201327028, - c_name="mad_piano_geo", - displaylist=None, - ), - collision={}, - ), - "Manta Ray": ActorPresetInfo( - decomp_path="actors/manta", - level="jrb", - group="group4", - animation=AnimInfo( - address=83922612, - behaviours=318784368, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Swimming"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_MANTA_RAY")], geolayout=83922196, c_name=None, displaylist=None - ), - collision={}, - ), - "Mario": ActorPresetInfo( - decomp_path="actors/mario", - level="bbh", - group="group0", - animation=AnimInfo( - address=5160960, - behaviours={}, - size=None, - ignore_bone_count=False, - dma=True, - directory="assets/anims", - names=[ - "Slow ledge climb up", - "Fall over backwards", - "Backward air kb", - "Dying on back", - "Backflip", - "Climbing up pole", - "Grab pole short", - "Grab pole swing part 1", - "Grab pole swing part 2", - "Handstand idle", - "Handstand jump", - "Start handstand", - "Return from handstand", - "Idle on pole", - "A pose", - "Skid on ground", - "Stop skid", - "Crouch from fast longjump", - "Crouch from a slow longjump", - "Fast longjump", - "Slow longjump", - "Airborne on stomach", - "Walk with light object", - "Run with light object", - "Slow walk with light object", - "Shivering and warming hands", - "Shivering return to idle ", - "Shivering", - "Climb down on ledge", - "Waving (Credits)", - "Look up (Credits)", - "Return from look up (Credits)", - "Raising hand (Credits)", - "Lowering hand (Credits)", - "Taking off cap (Credits)", - "Start walking and look up (Credits)", - "Look back then run (Credits)", - "Final Bowser - Raise hand and spin", - "Final Bowser - Wing cap take off", - "Peach sign (Credits)", - "Stand up from lava boost", - "Fire/Lava burn", - "Wing cap flying", - "Hang on owl", - "Land on stomach", - "Air forward kb", - "Dying on stomach", - "Suffocating", - "Coughing", - "Throw catch key", - "Dying fall over", - "Idle on ledge", - "Fast ledge grab", - "Hang on ceiling", - "Put cap on", - "Take cap off then on", - "Quickly put cap on", - "Head stuck in ground", - "Ground pound landing", - "Triple jump ground-pound", - "Start ground-pound", - "Ground-pound", - "Bottom stuck in ground", - "Idle with light object", - "Jump land with light object", - "Jump with light object", - "Fall land with light object", - "Fall with light object", - "Fall from sliding with light object", - "Sliding on bottom with light object", - "Stand up from sliding with light object", - "Riding shell", - "Walking", - "Forward flip", - "Jump riding shell", - "Land from double jump", - "Double jump fall", - "Single jump", - "Land from single jump", - "Air kick", - "Double jump rise", - "Start forward spinning", - "Throw light object", - "Fall from slide kick", - "Bend kness riding shell", - "Legs stuck in ground", - "General fall", - "General land", - "Being grabbed", - "Grab heavy object", - "Slow land from dive", - "Fly from cannon", - "Moving right while hanging", - "Moving left while hanging", - "Missing cap", - "Pull door walk in", - "Push door walk in", - "Unlock door", - "Start reach pocket", - "Reach pocket", - "Stop reach pocket", - "Ground throw", - "Ground kick", - "First punch", - "Second punch", - "First punch fast", - "Second punch fast", - "Pick up light object", - "Pushing", - "Start riding shell", - "Place light object", - "Forward spinning", - "Backward spinning", - "Breakdance", - "Running", - "Running (unused)", - "Soft back kb", - "Soft front kb", - "Dying in quicksand", - "Idle in quicksand", - "Move in quicksand", - "Electrocution", - "Shocked", - "Backward kb", - "Forward kb", - "Idle heavy object", - "Stand against wall", - "Side step left", - "Side step right", - "Start sleep idle", - "Start sleep scratch", - "Start sleep yawn", - "Start sleep sitting", - "Sleep idle", - "Sleep start laying", - "Sleep laying", - "Dive", - "Slide dive", - "Ground bonk", - "Stop slide light object", - "Slide kick", - "Crouch from slide kick", - "Slide motionless", - "Stop slide", - "Fall from slide", - "Slide", - "Tiptoe", - "Twirl land", - "Twirl", - "Start twirl", - "Stop crouching", - "Start crouching", - "Crouching", - "Crawling", - "Stop crawling", - "Start crawling", - "Summon star", - "Return star approach door", - "Backwards water kb", - "Swim with object part 1", - "Swim with object part 2", - "Flutter kick with object", - "Action end with object in water", - "Stop holding object in water", - "Holding object in water", - "Drowning part 1", - "Drowning part 2", - "Dying in water", - "Forward kb in water", - "Falling from water", - "Swimming part 1", - "Swimming part 2", - "Flutter kick", - "Action end in water", - "Pick up object in water", - "Grab object in water part 2", - "Grab object in water part 1", - "Throw object in water", - "Idle in water", - "Star dance in water", - "Return from in water star dance", - "Grab bowser", - "Swing bowser", - "Release bowser", - "Holding bowser", - "Heavy throw", - "Walk panting", - "Walk with heavy object", - "Turning part 1", - "Turning part 2", - "Side flip land", - "Side flip", - "Triple jump land", - "Triple jump", - "First person", - "Idle head left", - "Idle head right", - "Idle head center", - "Handstand left", - "Handstand right", - "Wake up from sleeping", - "Wake up from laying", - "Start tiptoeing", - "Slide jump", - "Start wallkick", - "Star dance", - "Return from star dance", - "Forwards spinning flip", - "Triple jump fly", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=1, enum="MODEL_MARIO")], - geolayout=385887700, - c_name="mario_geo", - displaylist=None, - ), - collision={}, - ), - "Mario's Cap": ActorPresetInfo( - decomp_path="actors/mario_cap", - level="bbh", - group="common1", - animation={}, - models={ - "Mario's Cap": ModelInfo( - model_id=[ModelIDInfo(number=136, enum="MODEL_MARIOS_CAP")], - geolayout=369101988, - c_name=None, - displaylist=None, - ), - "Mario's Metal Cap": ModelInfo( - model_id=[ModelIDInfo(number=134, enum="MODEL_MARIOS_METAL_CAP")], - geolayout=369102064, - c_name=None, - displaylist=None, - ), - "Mario's Wing Cap": ModelInfo( - model_id=[ModelIDInfo(number=135, enum="MODEL_MARIOS_WING_CAP")], - geolayout=369102140, - c_name=None, - displaylist=None, - ), - "Mario's Winged Metal Cap": ModelInfo( - model_id=[ModelIDInfo(number=133, enum="MODEL_MARIOS_WINGED_METAL_CAP")], - geolayout=369102248, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Metal Box": ActorPresetInfo( - decomp_path="actors/metal_box", - level="bbh", - group="common0", - animation={}, - models={ - "Metal Box": ModelInfo( - model_id=[ModelIDInfo(number=217, enum="MODEL_METAL_BOX")], - geolayout=251660848, - c_name=None, - displaylist=None, - ), - "Metal Box (DL)": ModelInfo( - model_id=[ModelIDInfo(number=218, enum="MODEL_METAL_BOX_DL")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=134368184, c_name="metal_box_dl"), - ), - }, - collision=CollisionInfo(address=134368296, c_name="metal_box_seg8_collision_08024C28"), - ), - "Mips": ActorPresetInfo( - decomp_path="actors/mips", - level="castle_inside", - group="group15", - animation=AnimInfo( - address=100751140, - behaviours=318784764, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Idle", "Hopping", "Thrown", "Thrown (Unused)", "Held"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=100, enum="MODEL_MIPS")], - geolayout=218104904, - c_name="mips_geo", - displaylist=None, - ), - collision={}, - ), - "Mist": ActorPresetInfo( - decomp_path="actors/mist", - level="bbh", - group="common1", - animation={}, - models={ - "Mist": ModelInfo( - model_id=[ModelIDInfo(number=142, enum="MODEL_MIST")], - geolayout=369098752, - c_name=None, - displaylist=None, - ), - "White Puff": ModelInfo( - model_id=[ModelIDInfo(number=224, enum="MODEL_WHITE_PUFF")], - geolayout=369098784, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Moneybag": ActorPresetInfo( - decomp_path="actors/moneybag", - level="ccm", - group="group16", - animation=AnimInfo( - address=100687452, - behaviours=318781856, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Idle", "Prepare", "Jump", "Land", "Walk"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=102, enum="MODEL_MONEYBAG")], - geolayout=218104048, - c_name="moneybag_geo", - displaylist=None, - ), - collision={}, - ), - "Monty Mole": ActorPresetInfo( - decomp_path="actors/monty_mole", - level="ttm", - group="group6", - animation=AnimInfo( - address=83915336, - behaviours=318786048, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Jump Into Hole", - "Rise", - "Get Rock", - "Begin Jump Into Hole", - "Jump Out Of Hole Down", - "Unused 5", - "Unused 6", - "Unused 7", - "Throw Rock", - "Jump Out Of Hole Up", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_MONTY_MOLE")], - geolayout=201326592, - c_name="monty_mole_geo", - displaylist=None, - ), - collision={}, - ), - "Montey Mole Hole": ActorPresetInfo( - decomp_path="actors/monty_mole_hole", - level="ttm", - group="group6", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_DL_MONTY_MOLE_HOLE")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=83888192, c_name="monty_mole_hole_seg5_dl_05000840"), - ), - collision={}, - ), - "Mr. I Eyeball": ActorPresetInfo( - decomp_path="actors/mr_i_eyeball", - level="ccm", - group="group16", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=103, enum="MODEL_MR_I")], geolayout=218103808, c_name=None, displaylist=None - ), - collision={}, - ), - "Mr. I Iris": ActorPresetInfo( - decomp_path="actors/mr_i_iris", - level="ccm", - group="group16", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=102, enum="MODEL_MR_I_IRIS")], - geolayout=218103836, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Mushroom 1up": ActorPresetInfo( - decomp_path="actors/mushroom_1up", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=212, enum="MODEL_1UP")], geolayout=369102468, c_name=None, displaylist=None - ), - collision={}, - ), - "Orange Numbers": ActorPresetInfo( - decomp_path="actors/number", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=219, enum="MODEL_NUMBER")], geolayout=369102356, c_name=None, displaylist=None - ), - collision={}, - ), - "Peach": ActorPresetInfo( - decomp_path="actors/peach", - level="castle_grounds", - group="group10", - animation=AnimInfo( - address=84002052, - behaviours={"Peach (Beginning)": 318789176, "Peach (End)": 318770860}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Listen Everybody", - "Turning Away", - "Walking away", - "Walking away 2", - "Descend", - "Descend And Look Down", - "Look Up And Open Eyes", - "Mario", - "Power Of The Stars", - "Thanks To You", - "Kiss", - "Waving", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=222, enum="MODEL_PEACH")], - geolayout=201327632, - c_name="peach_geo", - displaylist=None, - ), - collision={}, - ), - "Pebble": ActorPresetInfo( - decomp_path="actors/pebble", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=161, enum="MODEL_PEBBLE")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=50449152, c_name="pebble_seg3_dl_0301CB00"), - ), - collision={}, - ), - "Penguin": ActorPresetInfo( - decomp_path="actors/penguin", - level="ccm", - group="group7", - animation=AnimInfo( - address=83921780, - behaviours={ - "Penguin (Tuxies Mother)": 318775432, - "Penguin (Small)": 318775528, - "Penguin (SML)": 318778968, - "Racing Penguin": 318788480, - }, - size=5, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walk", "Dive Slide", "Stand Up", "Idle", "Walk"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=87, enum="MODEL_PENGUIN")], - geolayout=201326852, - c_name="penguin_geo", - displaylist=None, - ), - collision=CollisionInfo(address=83921800, c_name="penguin_seg5_collision_05008B88"), - ), - "Piranha Plant": ActorPresetInfo( - decomp_path="actors/piranha_plant", - level="bob", - group="group14", - animation=AnimInfo( - address=100778780, - behaviours={"Fire Piranha Plant": 318787872, "Piranha Plant": 318775228}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Bite", - "Sleeping? (Unused)", - "Falling over", - "Bite (Unused)", - "Grow", - "Attacked", - "Stop Bitting", - "Sleeping (Unused)", - "Sleeping", - "Bite (Duplicate)", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=100, enum="MODEL_PIRANHA_PLANT")], - geolayout=218104664, - c_name="piranha_plant_geo", - displaylist=None, - ), - collision={}, - ), - "Pokey": ActorPresetInfo( - decomp_path="actors/pokey", - level="ssl", - group="group5", - animation={}, - models={ - "Pokey Head": ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_POKEY_HEAD")], - geolayout=201328144, - c_name=None, - displaylist=None, - ), - "Pokey Body Part": ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_POKEY_BODY_PART")], - geolayout=201328196, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Wooden Post": ActorPresetInfo( - decomp_path="actors/poundable_pole", - level="bob", - group="group14", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=107, enum="MODEL_WOODEN_POST")], - geolayout=218103992, - c_name="wooden_post_geo", - displaylist=None, - ), - collision=CollisionInfo(address=100672656, c_name="poundable_pole_collision_06002490"), - ), - "Power Meter": ActorPresetInfo( - decomp_path="actors/power_meter", - level="bbh", - group="common1", - animation={}, - models={ - "Power Meter (Base)": ModelInfo( - model_id=[], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=50500736, c_name="dl_power_meter_base"), - ), - "Power Meter (Health)": ModelInfo( - model_id=[], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=50500976, c_name="dl_power_meter_health_segments_begin"), - ), - }, - collision={}, - ), - "Purple Switch": ActorPresetInfo( - decomp_path="actors/purple_switch", - level="bbh", - group="common0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=207, enum="MODEL_PURPLE_SWITCH")], - geolayout=251659468, - c_name=None, - displaylist=None, - ), - collision=CollisionInfo(address=134268840, c_name="purple_switch_seg8_collision_0800C7A8"), - ), - "Sand": ActorPresetInfo( - decomp_path="actors/sand", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=159, enum="MODEL_SAND_DUST")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=50511056, c_name="sand_seg3_dl_0302BCD0"), - ), - collision={}, - ), - "Scuttlebug": ActorPresetInfo( - decomp_path="actors/scuttlebug", - level="hmc", - group="group17", - animation=AnimInfo( - address=100749412, - behaviours=318778204, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walking"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=101, enum="MODEL_SCUTTLEBUG")], - geolayout=218104724, - c_name="scuttlebug_geo", - displaylist=None, - ), - collision={}, - ), - "Seaweed": ActorPresetInfo( - decomp_path="actors/seaweed", - level="wdw", - group="group13", - animation=AnimInfo( - address=100705492, - behaviours=318779700, - size=1, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Wave"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=193, enum="MODEL_SEAWEED")], - geolayout=218104452, - c_name="seaweed_geo", - displaylist=None, - ), - collision={}, - ), - "Skeeter": ActorPresetInfo( - decomp_path="actors/skeeter", - level="wdw", - group="group13", - animation=AnimInfo( - address=100695520, - behaviours=318788712, - size=4, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Water Lunge", "Water Idle", "Walk", "Idle"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=105, enum="MODEL_SKEETER")], - geolayout=218103808, - c_name="skeeter_geo", - displaylist=None, - ), - collision={}, - ), - "(Beta) Boo Key": ActorPresetInfo( - decomp_path="actors/small_key", - level="bbh", - group="group9", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_BETA_BOO_KEY")], - geolayout=201326984, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "(Unused) Smoke": ActorPresetInfo( - decomp_path="actors/smoke", - level="ttm", - group="group6", - animation={}, - models=ModelInfo( - model_id=[], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=83917560, c_name="smoke_seg5_dl_05007AF8"), - ), - collision={}, - ), - "Mr. Blizzard": ActorPresetInfo( - decomp_path="actors/snowman", - level="ccm", - group="group7", - animation=AnimInfo( - address=83939608, - behaviours={"Mr. Blizzard": 318787004}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Spawn Snowball", "Throw Snowball"], - ), - models={ - "Mr. Blizzard": ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_MR_BLIZZARD")], - geolayout=201327432, - c_name=None, - displaylist=None, - ), - "Mr. Blizzard (Hidden)": ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_MR_BLIZZARD_HIDDEN")], - geolayout=201327132, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Snufit": ActorPresetInfo( - decomp_path="actors/snufit", - level="hmc", - group="group17", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=206, enum="MODEL_SNUFIT")], - geolayout=218104224, - c_name="snufit_geo", - displaylist=None, - ), - collision={}, - ), - "Sparkle": ActorPresetInfo( - decomp_path="actors/sparkle", - level="bbh", - group="group0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=149, enum="MODEL_SPARKLES")], - geolayout=385876412, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Sparkle Animation": ActorPresetInfo( - decomp_path="actors/sparkle_animation", - level="bbh", - group="group0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=143, enum="MODEL_SPARKLES_ANIMATION")], - geolayout=385876612, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Spindrift": ActorPresetInfo( - decomp_path="actors/spindrift", - level="ccm", - group="group7", - animation=AnimInfo( - address=83897704, - behaviours=318771892, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Flying"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_SPINDRIFT")], - geolayout=201326592, - c_name="spindrift_geo", - displaylist=None, - ), - collision={}, - ), - "Spiny": ActorPresetInfo( - decomp_path="actors/spiny", - level="thi", - group="group11", - animation=AnimInfo( - address=83979948, - behaviours={"Spiny": 318785992}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walk"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_SPINY")], - geolayout=201327400, - c_name="spiny_geo", - displaylist=None, - ), - collision={}, - ), - "Spiny Egg": ActorPresetInfo( - decomp_path="actors/spiny_egg", - level="thi", - group="group11", - animation=AnimInfo( - address=83974116, - behaviours={}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Default"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_SPINY_BALL")], - geolayout=201327248, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Springboard": ActorPresetInfo( - decomp_path="actors/springboard", - level="vcutm", - group="group8", - animation={}, - models={ - "Springboard Top": ModelInfo( - model_id=[ModelIDInfo(number=181, enum="MODEL_TRAMPOLINE")], - geolayout=201326592, - c_name=None, - displaylist=None, - ), - "Springboard Middle": ModelInfo( - model_id=[ModelIDInfo(number=182, enum="MODEL_TRAMPOLINE_CENTER")], - geolayout=201326616, - c_name=None, - displaylist=None, - ), - "Springboard Bottom": ModelInfo( - model_id=[ModelIDInfo(number=183, enum="MODEL_TRAMPOLINE_BASE")], - geolayout=201326640, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Star": ActorPresetInfo( - decomp_path="actors/star", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=122, enum="MODEL_STAR")], geolayout=369102496, c_name=None, displaylist=None - ), - collision={}, - ), - "Small Water Splash": ActorPresetInfo( - decomp_path="actors/stomp_smoke", - level="bbh", - group="group0", - animation={}, - models={ - "Small Water Splash": ModelInfo( - model_id=[ModelIDInfo(number=165, enum="MODEL_SMALL_WATER_SPLASH")], - geolayout=385876124, - c_name=None, - displaylist=None, - ), - "(Unused) Small Water Splash": ModelInfo(model_id=[], geolayout=385876192, c_name=None, displaylist=None), - }, - collision={}, - ), - "Sushi Shark": ActorPresetInfo( - decomp_path="actors/sushi", - level="jrb", - group="group4", - animation=AnimInfo( - address=83930708, - behaviours=318776120, - size=1, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Swimming", "Diving"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_SUSHI")], geolayout=201326696, c_name=None, displaylist=None - ), - collision={}, - ), - "Swoop": ActorPresetInfo( - decomp_path="actors/swoop", - level="hmc", - group="group17", - animation=AnimInfo( - address=100692176, - behaviours=318785176, - size=2, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Idle", "Move"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=100, enum="MODEL_SWOOP")], - geolayout=218104028, - c_name="swoop_geo", - displaylist=None, - ), - collision={}, - ), - "Test Plataform": ActorPresetInfo( - decomp_path="actors/test_plataform", - level="bbh", - group="common0", - animation={}, - models={}, - collision=CollisionInfo(address=134374136, c_name="unknown_seg8_collision_080262F8"), - ), - "Thwomp": ActorPresetInfo( - decomp_path="actors/thwomp", - level="wf", - group="group1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=88, enum="MODEL_THWOMP")], - geolayout=201327176, - c_name="thwomp_geo", - displaylist=None, - ), - collision={ - "Thwomp": CollisionInfo(address=83933136, c_name="thwomp_seg5_collision_0500B7D0"), - "Thwomp 2": CollisionInfo(address=83933484, c_name="thwomp_seg5_collision_0500B92C"), - }, - ), - "Toad": ActorPresetInfo( - decomp_path="actors/toad", - level="castle_inside", - group="group15", - animation=AnimInfo( - address=100727880, - behaviours={"End Toad": 318770824, "Toad Message": 318779128}, - size=8, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Wave Then Run (West)", - "Walking (West)", - "Node Then Turn (East)", - "Walking (East)", - "Standing (West)", - "Standing (East)", - "Waving Both Arms (West)", - "Waving One Arm (East)", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=221, enum="MODEL_TOAD")], - geolayout=218104804, - c_name="toad_geo", - displaylist=None, - ), - collision={}, - ), - "Tweester/Tornado": ActorPresetInfo( - decomp_path="actors/tornado", - level="ssl", - group="group5", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_TWEESTER")], geolayout=83969584, c_name=None, displaylist=None - ), - collision={}, - ), - "Transparent Star": ActorPresetInfo( - decomp_path="actors/transperant_star", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=121, enum="MODEL_TRANSPARENT_STAR")], - geolayout=369102700, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Treasure Chest": ActorPresetInfo( - decomp_path="actors/treasure_chest", - level="wdw", - group="group13", - animation={}, - models={ - "Treasure Chest Base": ModelInfo( - model_id=[ModelIDInfo(number=101, enum="MODEL_TREASURE_CHEST_BASE")], - geolayout=218104912, - c_name=None, - displaylist=None, - ), - "Treasure Chest Lid": ModelInfo( - model_id=[ModelIDInfo(number=102, enum="MODEL_TREASURE_CHEST_LID")], - geolayout=218104936, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Tree": ActorPresetInfo( - decomp_path="actors/tree", - level="bbh", - group="common1", - animation={}, - models={ - "Bubbly Tree": ModelInfo( - model_id=[ - ModelIDInfo(number=23, enum="MODEL_BOB_BUBBLY_TREE"), - ModelIDInfo(number=23, enum="MODEL_WDW_BUBBLY_TREE"), - ModelIDInfo(number=23, enum="MODEL_CASTLE_GROUNDS_BUBBLY_TREE"), - ModelIDInfo(number=23, enum="MODEL_WF_BUBBLY_TREE"), - ModelIDInfo(number=23, enum="MODEL_THI_BUBBLY_TREE"), - ], - geolayout=369102824, - c_name=None, - displaylist=None, - ), - "Pine Tree": ModelInfo( - model_id=[ModelIDInfo(number=24, enum="MODEL_COURTYARD_SPIKY_TREE")], - geolayout=369102848, - c_name=None, - displaylist=None, - ), - "(Unused) Pine Tree": ModelInfo(model_id=[], geolayout=369102896, c_name=None, displaylist=None), - "Snow Tree": ModelInfo( - model_id=[ - ModelIDInfo(number=25, enum="MODEL_CCM_SNOW_TREE"), - ModelIDInfo(number=25, enum="MODEL_SL_SNOW_TREE"), - ], - geolayout=369102872, - c_name=None, - displaylist=None, - ), - "Palm Tree": ModelInfo( - model_id=[ModelIDInfo(number=27, enum="MODEL_SSL_PALM_TREE")], - geolayout=369102920, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Ukiki": ActorPresetInfo( - decomp_path="actors/ukiki", - level="ttm", - group="group6", - animation=AnimInfo( - address=83974020, - behaviours={"Ukiki": 318774448}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=[ - "Run", - "Walk (Unused)", - "Apose (Unused)", - "Death (Unused)", - "Screech", - "Jump Clap", - "Hop (Unused)", - "Land", - "Jump", - "Itch", - "Handstand", - "Turn", - "Held", - ], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=86, enum="MODEL_UKIKI")], - geolayout=201326864, - c_name="ukiki_geo", - displaylist=None, - ), - collision={}, - ), - "Unagi": ActorPresetInfo( - decomp_path="actors/unagi", - level="jrb", - group="group4", - animation=AnimInfo( - address=83961892, - behaviours=318787392, - size=7, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Yawn", "Bite", "Swimming", "Static Straight", "Idle", "Open Mouth", "Idle 2"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_UNAGI")], - geolayout=201326860, - c_name="unagi_geo", - displaylist=None, - ), - collision={}, - ), - "Smoke": ActorPresetInfo( - decomp_path="actors/walk_smoke", - level="bbh", - group="group0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=150, enum="MODEL_SMOKE")], - geolayout=385876024, - c_name="smoke_geo", - displaylist=None, - ), - collision={}, - ), - "Warp Collision": ActorPresetInfo( - decomp_path="actors/warp_collision", - level="bbh", - group="common1", - animation={}, - models={}, - collision={ - "Door": CollisionInfo(address=50450040, c_name="door_seg3_collision_0301CE78"), - "LLL Hexagonal Mesh": CollisionInfo(address=50450124, c_name="lll_hexagonal_mesh_seg3_collision_0301CECC"), - }, - ), - "Warp Pipe": ActorPresetInfo( - decomp_path="actors/warp_pipe", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ - ModelIDInfo(number=73, enum="MODEL_BITS_WARP_PIPE"), - ModelIDInfo(number=18, enum="MODEL_BITDW_WARP_PIPE"), - ModelIDInfo(number=22, enum="MODEL_THI_WARP_PIPE"), - ModelIDInfo(number=22, enum="MODEL_VCUTM_WARP_PIPE"), - ModelIDInfo(number=22, enum="MODEL_CASTLE_GROUNDS_WARP_PIPE"), - ], - geolayout=369099656, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Water Bomb": ActorPresetInfo( - decomp_path="actors/water_bubble", - level="bob", - group="group3", - animation={}, - models={ - "Water Bomb": ModelInfo( - model_id=[ModelIDInfo(number=84, enum="MODEL_WATER_BOMB")], - geolayout=201327368, - c_name=None, - displaylist=None, - ), - "Water Bomb's Shadow": ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_WATER_BOMB_SHADOW")], - geolayout=201327400, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Water Mine": ActorPresetInfo( - decomp_path="actors/water_mine", - level="wdw", - group="group13", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=179, enum="MODEL_WATER_MINE")], - geolayout=218104564, - c_name="water_mine_geo", - displaylist=None, - ), - collision={}, - ), - "Water Ring": ActorPresetInfo( - decomp_path="actors/water_ring", - level="wdw", - group="group13", - animation=AnimInfo( - address=100745084, - behaviours={"Water Ring (Jet Stream)": 318781264, "Water Ring (Manta Ray)": 13003798}, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Wobble"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=104, enum="MODEL_WATER_RING")], - geolayout=218104852, - c_name="water_ring_geo", - displaylist=None, - ), - collision={}, - ), - "Water Splash": ActorPresetInfo( - decomp_path="actors/water_splash", - level="bbh", - group="group0", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=167, enum="MODEL_WATER_SPLASH")], - geolayout=385876528, - c_name="water_splash_geo", - displaylist=None, - ), - collision={}, - ), - "Water Wave": ActorPresetInfo( - decomp_path="actors/water_wave", - level="bbh", - group="group0", - animation={}, - models={ - "Idle Water Wave": ModelInfo( - model_id=[ModelIDInfo(number=166, enum="MODEL_IDLE_WATER_WAVE")], - geolayout=385876260, - c_name=None, - displaylist=None, - ), - "Water Wave Trail": ModelInfo( - model_id=[ModelIDInfo(number=163, enum="MODEL_WAVE_TRAIL")], - geolayout=385876328, - c_name=None, - displaylist=None, - ), - }, - collision={}, - ), - "Whirlpool": ActorPresetInfo( - decomp_path="actors/whirlpool", - level="jrb", - group="group4", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=87, enum="MODEL_DL_WHIRLPOOL")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=83967160, c_name="whirlpool_seg5_dl_05013CB8"), - ), - collision={}, - ), - "White Particle": ActorPresetInfo( - decomp_path="actors/white_particle", - level="bbh", - group="common1", - animation={}, - models={ - "White Particle": ModelInfo( - model_id=[ModelIDInfo(number=160, enum="MODEL_WHITE_PARTICLE")], - geolayout=369102744, - c_name=None, - displaylist=None, - ), - "White Particle (DL)": ModelInfo( - model_id=[ModelIDInfo(number=158, enum="MODEL_WHITE_PARTICLE_DL")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=50514080, c_name="white_particle_dl"), - ), - }, - collision={}, - ), - "White Particle Small": ActorPresetInfo( - decomp_path="actors/white_particle_small", - level="bbh", - group="group0", - animation={}, - models={ - "White Particle Small": ModelInfo( - model_id=[ModelIDInfo(number=164, enum="MODEL_WHITE_PARTICLE_SMALL")], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=67316248, c_name="white_particle_small_dl"), - ), - "(Unused) White Particle Small": ModelInfo( - model_id=[], - geolayout=None, - c_name=None, - displaylist=DisplaylistInfo(address=67316272, c_name="white_particle_small_unused_dl"), - ), - }, - collision={}, - ), - "Whomp": ActorPresetInfo( - decomp_path="actors/whomp", - level="bob", - group="group14", - animation=AnimInfo( - address=100796932, - behaviours=318778316, - size=2, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walk", "Jump"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=103, enum="MODEL_WHOMP")], - geolayout=218104960, - c_name="whomp_geo", - displaylist=None, - ), - collision=CollisionInfo(address=100796940, c_name="whomp_seg6_collision_06020A0C"), - ), - "Wiggler Body": ActorPresetInfo( - decomp_path="actors/wiggler_body", - level="thi", - group="group11", - animation=AnimInfo( - address=83937396, - behaviours=318785760, - size=1, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walk"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=88, enum="MODEL_WIGGLER_BODY")], - geolayout=83937144, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Wiggler Head": ActorPresetInfo( - decomp_path="actors/wiggler_head", - level="thi", - group="group11", - animation=AnimInfo( - address=83946636, - behaviours=318785688, - size=1, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Walk"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=87, enum="MODEL_WIGGLER_HEAD")], - geolayout=201326640, - c_name="wiggler_head_geo", - displaylist=None, - ), - collision={}, - ), - "Wooden Signpost": ActorPresetInfo( - decomp_path="actors/wooden_signpost", - level="bbh", - group="common1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=124, enum="MODEL_WOODEN_SIGNPOST")], - geolayout=369102772, - c_name=None, - displaylist=None, - ), - collision=CollisionInfo(address=50519424, c_name="wooden_signpost_seg3_collision_0302DD80"), - ), - "Yellow Sphere (Bowser 1)": ActorPresetInfo( - decomp_path="actors/yellow_sphere", - level="bowser_1", - group="group12", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=3, enum="MODEL_LEVEL_GEOMETRY_03")], - geolayout=218103984, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Yellow Sphere": ActorPresetInfo( - decomp_path="actors/yellow_sphere_small", - level="wf", - group="group1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_YELLOW_SPHERE")], - geolayout=201326592, - c_name="yellow_sphere_geo", - displaylist=None, - ), - collision={}, - ), - "Yoshi": ActorPresetInfo( - decomp_path="actors/yoshi", - level="castle_grounds", - group="group10", - animation=AnimInfo( - address=84034024, - behaviours=318784824, - size=None, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Idle", "Walk", "Jump"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=85, enum="MODEL_YOSHI")], - geolayout=201327720, - c_name="yoshi_geo", - displaylist=None, - ), - collision={}, - ), - "(Unused) Yoshi Egg": ActorPresetInfo( - decomp_path="actors/yoshi_egg", - level="wf", - group="group1", - animation={}, - models=ModelInfo( - model_id=[ModelIDInfo(number=87, enum="MODEL_YOSHI_EGG")], - geolayout=201327076, - c_name=None, - displaylist=None, - ), - collision={}, - ), - "Castle Flag": ActorPresetInfo( - decomp_path="levels/castle_grounds/areas/1/11", - level="CG", - group=None, - animation=AnimInfo( - address=117492060, - behaviours=318782552, - size=1, - ignore_bone_count=False, - dma=False, - directory=None, - names=["Wave"], - ), - models=ModelInfo( - model_id=[ModelIDInfo(number=55, enum="MODEL_CASTLE_GROUNDS_FLAG")], - geolayout=234882656, - c_name=None, - displaylist=None, - ), - collision={}, - ), -} diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index e2d45702d..e32a8d59d 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -59,7 +59,7 @@ class PackedFormat: make_str: bool = True # convert args to strings for blender prop compat reorder: tuple = field( default_factory=tuple - ) # reorders args after unpacking, called after post_unpack ptr addressing and make_str + ) # reorders args after unpacking, called right after bit unpacking, before post_unpack bit_packing: tuple = field( default_factory=tuple ) # use a packed bitfield to unpack, each item is num bits, unpacked sequentially, make format all bytes @@ -82,6 +82,7 @@ def unpack(self, bin_data: BinaryIO): args = list(struct.unpack(self.format_str, bin_data)) if self.bit_packing: args = self.unpack_bits(args) + args = self.reorder_args(args) if self.post_unpack: args = self.post_unpack(args) return args @@ -134,7 +135,6 @@ def unpack_type( args = unpack_str.make_args_str(args) for index in unpack_str.ptr_indices: args[index] = self.seg2phys(args[index]) - args = unpack_str.reorder_args(args) if ret_iterable: return args @@ -369,7 +369,7 @@ def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs continue cur_macro = Macro(cmd_name, cmd_args) func = getattr(self, cur_macro.cmd, None) - print(cur_macro) + # print(cur_macro) if not func: raise Exception(f"Macro {cur_macro} not found in parser function") flow_status = func(cur_macro, *args, **kwargs) From d9c1a2396f25238613b2c68a531fcf2014f7c264 Mon Sep 17 00:00:00 2001 From: scut Date: Thu, 19 Feb 2026 13:41:38 -0500 Subject: [PATCH 23/30] added othermode processing --- fast64_internal/bin_png.py | 1 + fast64_internal/f3d/f3d_import.py | 270 ++++++++++++++++---- fast64_internal/sm64/sm64_constants.py | 2 + fast64_internal/sm64/sm64_level_importer.py | 73 ++++-- 4 files changed, 277 insertions(+), 69 deletions(-) diff --git a/fast64_internal/bin_png.py b/fast64_internal/bin_png.py index ef8d36614..200233635 100644 --- a/fast64_internal/bin_png.py +++ b/fast64_internal/bin_png.py @@ -159,6 +159,7 @@ def convert_tex_bin(fmt: str, width: int, height: int, im_siz: int, byte_stream: im_siz = int(re.search("\d+", im_siz).group()) return funcs.get(fmt)(int(width), int(height), im_siz, byte_stream, pal_stream) + def convert_tex_c(fmt: str, width: int, height: int, im_siz: int, byte_stream: bytes, pal_stream: bytes = None): # I dislike this formulation but calling globals() is worse funcs = { diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 5f81e958a..50d4a7e5e 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -19,6 +19,19 @@ from ..f3d.f3d_material import F3DMaterialProperty, RDPSettings, TextureProperty from ..f3d.f3d_gbi import get_F3D_GBI +from ..f3d.f3d_enums import ( + enumAlphaCompare, + enumRGBDither, + enumCombKey, + enumTextConv, + enumTextFilt, + enumTextLUT, + enumTextDetail, + enumTextPersp, + enumCycleType, + enumColorDither, + enumPipelineMode, +) from ..utility import hexOrDecInt, gammaInverse from ..utility_importer import * @@ -39,14 +52,14 @@ def __init__(self, name: str, light_struct: Sequence): @staticmethod def ambient_from_binary(bin_file: BinaryIO, macro: Macro): # just get first color - col = [*struct.unpack(">3B", bin_file[macro.args[2]:macro.args[2] + 3]), 0xFF] + col = [*struct.unpack(">3B", bin_file[macro.args[2] : macro.args[2] + 3]), 0xFF] return col @staticmethod def diffuse_from_binary(bin_file: BinaryIO, macro: Macro): # just get first color # cls.dir = [*struct.unpack(">3B", bin_file[macro.args[2] + 8:macro.args[2] + 11]), 0xFF] - col = [*struct.unpack(">3B", bin_file[macro.args[2]:macro.args[2] + 3]), 0xFF] + col = [*struct.unpack(">3B", bin_file[macro.args[2] : macro.args[2] + 3]), 0xFF] return col # naming matches var types @@ -114,7 +127,7 @@ class Texture(TexBase): pal: bool = False dxt: int = 0 texels: int = 0 - num_bytes: int = 0 # to be filled in after self.determine_size + num_bytes: int = 0 # to be filled in after self.determine_size def determine_size(self): # dxt is a ratio between words and lines of a texture @@ -216,7 +229,7 @@ def __init__(self, layer: int = None, bin_file: BinaryIO = None): self.layer = self._base_layer else: self.layer = layer - self.bin_file = bin_file # theoretically could be different for each mat + self.bin_file = bin_file # theoretically could be different for each mat # calc the hash for an f3d mat and see if its equal to this mats hash def mat_hash_f3d(self, f3d: F3DMaterialProperty): @@ -313,15 +326,15 @@ def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, te # based on naming structure, you shouldn't have repeat texture names since they're ROM addresses if parse_target == DataParser._binary_parsing: name = f"tex_img_0x{tex.tex_img:X}" - if (i := bpy.data.images.get(name, None)): + if i := bpy.data.images.get(name, None): return i tex_img = tex.tex_img - tex_img = self.bin_file[tex_img:tex_img + tex.num_bytes] + tex_img = self.bin_file[tex_img : tex_img + tex.num_bytes] # idk if this properly deals with multiple palettes... pal_img = self.pal.tex_img if self.pal else None if pal_img: # determine if CI4 or CI8 and num colors - pal_img = self.bin_file[pal_img:pal_img + 32] + pal_img = self.bin_file[pal_img : pal_img + 32] image_texels = convert_tex_bin( tex.fmt, tex.width, @@ -590,8 +603,8 @@ def __init__(self, lastmat: dict[any, Mat] = None, parse_target: int = DataParse # use the dict in subclasses to keep track of mats per layer when parsing in render order self.last_mat_dict = dict() if not lastmat: - self.last_mat = Mat(parse_target = parse_target) - self.last_mat_dict[Mat.base_mat] = self.last_mat + self.last_mat = Mat() + self.last_mat_dict[Mat._base_layer] = self.last_mat self.last_mat.name = 0 else: self.last_mat = lastmat @@ -608,17 +621,26 @@ def setup_unpack_dicts(self): self.f3dex2_cmd_gbi_names = { f3d_gbi.G_VTX: ( "gsSPVertexBin", - PackedFormat(">7B", (2,), reorder = (1, 2, 3), make_str = False, bit_packing=(4, 8, 4, 8, 32)), + PackedFormat(">7B", (2,), reorder=(1, 2, 3), make_str=False, bit_packing=(4, 8, 4, 8, 32)), ), # pad num_v offset+num seg_ptr, reorder -> num offset ptr f3d_gbi.G_DMA_IO: ( "gsSPDma_io", PackedFormat(">7B", bit_packing=(1, 10, 1, 12, 32)), ), # i/o dmem_addr siz dram_addr f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">3BL")), # pad123 num_mtx - f3d_gbi.G_GEOMETRYMODE: ("gsSPGeometryMode", PackedFormat(">7B", bit_packing=(24, 32), post_unpack = self.parse_geo_flags)), # clear set + f3d_gbi.G_GEOMETRYMODE: ( + "gsSPGeometryMode", + PackedFormat(">7B", bit_packing=(24, 32), post_unpack=self.parse_geo_flags), + ), # clear set f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">3BL", (3,))), # pad pad type seg_ptr - f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">BHL", (2,), make_str = False)), # dmem_index offset seg_ptr - # set other modes + f3d_gbi.G_MOVEWORD: ( + "gsMoveWd", + PackedFormat(">BHL", (2,), make_str=False), + ), # dmem_index offset seg_ptr + f3d_gbi.G_QUAD: ( + "gsSP1Quadrangle", + PackedFormat(">7B", make_str=False, post_unpack=lambda args: [a // 2 for a in args]), + ), # v123 flag v456 } elif f3d_gbi.F3DEX_GBI: self.f3dex2_cmd_gbi_names = dict() @@ -628,18 +650,20 @@ def setup_unpack_dicts(self): f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr f3d_gbi.G_VTX: ( "gsSPVertexBin", - PackedFormat(">7B", (2,), reorder = (1, 0, 3), make_str = False, bit_packing=(8, 6, 10, 32)), + PackedFormat(">7B", (2,), reorder=(1, 0, 3), make_str=False, bit_packing=(8, 6, 10, 32)), ), # buf_start num_vert len_dat vtx_ptr, reorder -> num offset ptr f3d_gbi.G_SETGEOMETRYMODE: ( "gsSPSetGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), + PackedFormat(">7B", bit_packing=(24, 32), reorder=(1,), post_unpack=self.parse_geo_flags), ), # pad word f3d_gbi.G_CLEARGEOMETRYMODE: ( "gsSPClearGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), + PackedFormat(">7B", bit_packing=(24, 32), reorder=(1,), post_unpack=self.parse_geo_flags), ), # word pad - # set other mode, L and H? - f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,), make_str = False)), # offset dmem_index seg_ptr + f3d_gbi.G_MOVEWORD: ( + "gsMoveWd", + PackedFormat(">HBL", (2,), make_str=False), + ), # offset dmem_index seg_ptr } else: self.f3dex_cmd_gbi_names = dict() @@ -647,28 +671,48 @@ def setup_unpack_dicts(self): self.f3d_cmd_gbi_names = { f3d_gbi.G_MTX: ("gsSPMatrix", PackedFormat(">BhL", (2,))), # type pad seg_ptr - f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">BHL", (2,), make_str = False)), # dmem_index siz mem_ptr + f3d_gbi.G_MOVEMEM: ( + "gsSPMoveMem", + PackedFormat(">BHL", (2,), make_str=False), + ), # dmem_index siz mem_ptr f3d_gbi.G_VTX: ( "gsSPVertexBin", - PackedFormat(">7B", (2,), reorder = (0, 1, 3), make_str = False, bit_packing=(4, 4, 16, 32), post_unpack = self.f3d_g_vertex_parse), + PackedFormat( + ">7B", + (2,), + reorder=(0, 1, 3), + make_str=False, + bit_packing=(4, 4, 16, 32), + post_unpack=self.f3d_g_vertex_parse, + ), ), # num_vert buf_start len_dat vtx_ptr, reorder -> num offset ptr f3d_gbi.G_SETGEOMETRYMODE: ( "gsSPSetGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), + PackedFormat(">7B", bit_packing=(24, 32), reorder=(1,), post_unpack=self.parse_geo_flags), ), # pad word f3d_gbi.G_CLEARGEOMETRYMODE: ( "gsSPClearGeometryMode", - PackedFormat(">7B", bit_packing=(24, 32), reorder = (1,), post_unpack = self.parse_geo_flags), + PackedFormat(">7B", bit_packing=(24, 32), reorder=(1,), post_unpack=self.parse_geo_flags), ), # pad word - # set other mode, L and H? - f3d_gbi.G_MOVEWORD: ("gsMoveWd", PackedFormat(">HBL", (2,), make_str = False)), # offset dmem_index seg_ptr + f3d_gbi.G_MOVEWORD: ( + "gsMoveWd", + PackedFormat(">HBL", (2,), make_str=False), + ), # offset dmem_index seg_ptr f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">7B")), # pads - f3d_gbi.G_TRI1: ("gsSP1Triangle", PackedFormat(">7B", make_str = False, reorder = (4, 5, 6, 3), post_unpack = lambda args: [a//10 for a in args])), # pad123 flag v123, reorder v123 flag + f3d_gbi.G_TRI1: ( + "gsSP1Triangle", + PackedFormat( + ">7B", make_str=False, reorder=(4, 5, 6, 3), post_unpack=lambda args: [a // 10 for a in args] + ), + ), # pad123 flag v123, reorder v123 flag } if f3d_gbi.F3DEX_GBI or f3d_gbi.F3DLP_GBI or f3d_gbi.F3DEX_GBI_2: self.f3dex_cmd_gbi_names.update( { - f3d_gbi.G_MOVEMEM: ("gsSPMoveMem", PackedFormat(">3BL", (3,), make_str = False, reorder=(0, 2, 3, 1))), # size offset dmem_index seg_ptr, reorder -> index siz seg_ptr offset + f3d_gbi.G_MOVEMEM: ( + "gsSPMoveMem", + PackedFormat(">3BL", (3,), make_str=False, reorder=(0, 2, 3, 1)), + ), # size offset dmem_index seg_ptr, reorder -> index siz seg_ptr offset f3d_gbi.G_MODIFYVTX: ("gsSPModifyVertex", PackedFormat(">BHl")), # enum buf_index new_val f3d_gbi.G_CULLDL: ("gsSPCullDisplayList", PackedFormat(">7B")), # I'll just be ignoring this anyway f3d_gbi.G_BRANCH_Z: ( @@ -679,9 +723,14 @@ def setup_unpack_dicts(self): "gsSPLoadUcodeEx", PackedFormat(">15B"), ), # leads w/ rdp half cmd, deal with later - f3d_gbi.G_TRI1: ("gsSP1Triangle", PackedFormat(">7B", make_str = False, post_unpack = lambda args: [a//2 for a in args])), # v123 flag pad567 - f3d_gbi.G_TRI2: ("gsSP2Triangles", PackedFormat(">7B", make_str = False, post_unpack = lambda args: [a//2 for a in args])), # v123 flag v456 - f3d_gbi.G_QUAD: ("gsSP1Quadrangle", PackedFormat(">7B", make_str = False, post_unpack = lambda args: [a//2 for a in args])), # v123 flag v456 + f3d_gbi.G_TRI1: ( + "gsSP1Triangle", + PackedFormat(">7B", make_str=False, post_unpack=lambda args: [a // 2 for a in args]), + ), # v123 flag pad567 + f3d_gbi.G_TRI2: ( + "gsSP2Triangles", + PackedFormat(">7B", make_str=False, post_unpack=lambda args: [a // 2 for a in args]), + ), # v123 flag v456 f3d_gbi.G_POPMTX: ("gsSPPopMatrix", PackedFormat(">3BL")), # pad123 num_mtx } ) @@ -694,6 +743,15 @@ def setup_unpack_dicts(self): "gsSPTexture", PackedFormat(">7B", reorder=(4, 5, 1, 2, 3), bit_packing=(10, 3, 3, 8, 16, 16)), ), # pad lod_lvl tile en s t, reorder s t lod_lvl tile en + f3d_gbi.G_SETOTHERMODE_H: ( + "gsSPSetOtherMode_H", + PackedFormat(">3BL", make_str=False), + ), # bit_shift num_bits mode_bits + f3d_gbi.G_SETOTHERMODE_L: ( + "gsSPSetOtherMode_L", + PackedFormat(">3BL", make_str=False), + ), # bit_shift num_bits mode_bits + # set other modes } self.rdp_cmd_gbi_names = { f3d_gbi.G_SETCIMG: ("gsDPSetColorImage", PackedFormat(">7B")), # bpy ignores @@ -704,7 +762,12 @@ def setup_unpack_dicts(self): ), # fmt siz pad im_ptr f3d_gbi.G_SETCOMBINE: ( "gsDPSetCombineLERP", - PackedFormat(">7B", bit_packing=(4, 5, 3, 3, 4, 5, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3), reorder = (0, 6, 1, 10, 2, 11, 3, 12, 4, 7, 5, 13, 8, 14, 9, 15), post_unpack = self.parse_color_combiner), + PackedFormat( + ">7B", + bit_packing=(4, 5, 3, 3, 4, 5, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3), + reorder=(0, 6, 1, 10, 2, 11, 3, 12, 4, 7, 5, 13, 8, 14, 9, 15), + post_unpack=self.parse_color_combiner, + ), ), # clr_a_1 clr_c_1 alpha_a_1 alpha_c_1 clr_a_2 clr_c_2 clr_b_1 clr_d_1 alpha_b_1 alpha_d_1 clr_b_2 alpha_a_2 alpha_c_2 clr_d_2 alpha_b_2 alpha_d_2 f3d_gbi.G_SETENVCOLOR: ("gsDPSetEnvColor", PackedFormat(">Bh4B")), # pad pad rgba f3d_gbi.G_SETPRIMCOLOR: ("gsDPSetPrimColor", PackedFormat(">7B")), # pad minLod loc_frac rgba @@ -717,7 +780,11 @@ def setup_unpack_dicts(self): ), # ul_s ul_t pad tile width height f3d_gbi.G_SETTILE: ( "gsDPSetTile", - PackedFormat(">7B", reorder = (0, 1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13), bit_packing=(3, 2, 1, 9, 9, 5, 3, 4, 2, 4, 4, 2, 4, 4)), + PackedFormat( + ">7B", + reorder=(0, 1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13), + bit_packing=(3, 2, 1, 9, 9, 5, 3, 4, 2, 4, 4, 2, 4, 4), + ), ), # fmt siz pad num_64_bit_vals tmem pad tile palette t_flag t_mask t_shift s_flag s_mask s_shift, reoder -> remove pads f3d_gbi.G_LOADTILE: ( "gsDPLoadTile", @@ -725,7 +792,7 @@ def setup_unpack_dicts(self): ), # ul_s ul_t pad tile width height f3d_gbi.G_LOADBLOCK: ( "gsDPLoadBlock", - PackedFormat(">7B", reorder = (3, 0, 1, 4, 5), bit_packing=(12, 12, 4, 4, 12, 12)), + PackedFormat(">7B", reorder=(3, 0, 1, 4, 5), bit_packing=(12, 12, 4, 4, 12, 12)), ), # ul_s ul_t pad tile texels dxt, reorder -> tile ul_s ul_t texels dxt f3d_gbi.G_SETTILESIZE: ( "gsDPSetTileSize", @@ -733,10 +800,10 @@ def setup_unpack_dicts(self): ), # ul_s ul_t tile width height f3d_gbi.G_LOADTLUT: ( "gsDPLoadTLUTCmd", - PackedFormat(">7B", reorder = (1, 2), bit_packing=(28, 4, 12, 12)), + PackedFormat(">7B", reorder=(1, 2), bit_packing=(28, 4, 12, 12)), ), # pad tile clr_cnt pad, reorder -> tile clr_cnt f3d_gbi.G_RDPSETOTHERMODE: ( - "gsSPSetOtherMode", + "gsDPSetOtherMode", PackedFormat(">3BL"), ), # higher_bits (need to combine) lower_bits f3d_gbi.G_SETPRIMDEPTH: ("gsDPSetPrimDepth", PackedFormat(">B3h")), # pad pad z_val delta_z @@ -855,7 +922,10 @@ def f3d_g_vertex_parse(self, args: list[int]): def gsSPVertexBin(self, macro: Macro): start = macro.args[1] length = macro.args[0] - v_data = [self.unpack_type(self.bin_file, macro.args[2] + off*0x10, ">3hH2h4B", make_str = False) for off in range(length)] + v_data = [ + self.unpack_type(self.bin_file, macro.args[2] + off * 0x10, ">3hH2h4B", make_str=False) + for off in range(length) + ] for k, i in enumerate(range(start, length, 1)): self.VertBuff[i] = [v_data[k], start] @@ -947,12 +1017,40 @@ def gsMoveWd(self, macro: Macro): def gsSPMoveMem(self, macro: Macro): # dmem_index siz mem_ptr # just check for lights - dmem_indices = {12: 'G_MV_POINT', 14: 'G_MV_MATRIX', 0: 'G_MV_LOOKATX', 24: 'G_MV_LOOKATY', 48: 'G_MV_L0', 72: 'G_MV_L1', 96: 'G_MV_L2', 120: 'G_MV_L3', 144: 'G_MV_L5', 168: 'G_MV_L5', 192: 'G_MV_L6', 216: 'G_MV_L7', 128: 'G_MV_VIEWPORT', 130: 'G_MV_LOOKATY', 132: 'G_MV_LOOKATX', 134: 'G_MV_L0', 136: 'G_MV_L1', 138: 'G_MV_L2', 140: 'G_MV_L3', 142: 'G_MV_L4', 146: 'G_MV_L6', 148: 'G_MV_L7', 150: 'G_MV_TXTATT', 158: 'G_MV_MATRIX_1', 152: 'G_MV_MATRIX_2', 154: 'G_MV_MATRIX_3', 156: 'G_MV_MATRIX_4'} + dmem_indices = { + 12: "G_MV_POINT", + 14: "G_MV_MATRIX", + 0: "G_MV_LOOKATX", + 24: "G_MV_LOOKATY", + 48: "G_MV_L0", + 72: "G_MV_L1", + 96: "G_MV_L2", + 120: "G_MV_L3", + 144: "G_MV_L5", + 168: "G_MV_L5", + 192: "G_MV_L6", + 216: "G_MV_L7", + 128: "G_MV_VIEWPORT", + 130: "G_MV_LOOKATY", + 132: "G_MV_LOOKATX", + 134: "G_MV_L0", + 136: "G_MV_L1", + 138: "G_MV_L2", + 140: "G_MV_L3", + 142: "G_MV_L4", + 146: "G_MV_L6", + 148: "G_MV_L7", + 150: "G_MV_TXTATT", + 158: "G_MV_MATRIX_1", + 152: "G_MV_MATRIX_2", + 154: "G_MV_MATRIX_3", + 156: "G_MV_MATRIX_4", + } index = dmem_indices.get(macro.args[0], None) if "G_MV_L" in index: light_num = int(re.search("\d", index).group()) if light_num >= self.last_mat.num_lights: - self.last_mat.ambient_light = LightParent.ambient_from_binary(self.bin_file, macro) + self.last_mat.ambient_light = LightParent.ambient_from_binary(self.bin_file, macro) else: self.last_mat.light_col[light_num] = LightParent.diffuse_from_binary(self.bin_file, macro) return self._continue_parse @@ -1002,7 +1100,6 @@ def gsSPSetLights0(self, macro: Macro): def gsSPSetLights1(self, macro: Macro): return self._continue_parse - def gsSPSetLights2(self, macro: Macro): return self._continue_parse @@ -1021,7 +1118,59 @@ def gsSPSetLights6(self, macro: Macro): def gsSPSetLights7(self, macro: Macro): return self._continue_parse - def gsSPSetOtherMode(self, macro: Macro): + # helper for othermode, gets first item from enum + def first_from_enum(self, enum: list[tuple]): + return [val[0] for val in enum] + + def gsSPSetOtherMode_H(self, macro: Macro): + mask = ((1 << args[2]) - 1) << args[1] + data = args[3] & mask + + def set_mode_data(shift: int, num_bits: int, enum: list[tuple], call: callable, vals: list = None): + mode_bits = ((1 << num_bits) - 1) << shift + # for modes that don't use all bit combos + if not vals: + vals = range(2**num_bits) + if mask & mode_bits: + mode_data = data & mode_bits + mode_options = {a << shift: first_from_enum(enum) for a in vals} + call(Macro("", [mode_options.get(mode_data)])) + + set_mode_data(self.f3d.G_MDSFT_ALPHADITHER, 2, enumAlphaDither) + set_mode_data(self.f3d.G_MDSFT_RGBDITHER, 2, enumRGBDither) + set_mode_data(self.f3d.G_MDSFT_COMBKEY, 1, enumCombKey) + set_mode_data(self.f3d.G_MDSFT_TEXTCONV, 3, enumTextConv, vals=[0, 5, 6]) + set_mode_data(self.f3d.G_MDSFT_TEXTFILT, 2, enumTextFilt, vals=[0, 2, 3]) + set_mode_data(self.f3d.G_MDSFT_TEXTLUT, 2, enumTextLUT, vals=[0, 2, 3]) + set_mode_data(self.f3d.G_MDSFT_TEXTLOD, 1, enumRGBDither) + set_mode_data(self.f3d.G_MDSFT_TEXTDETAIL, 2, enumTextDetail, vals=[0, 2, 3]) + set_mode_data(self.f3d.G_MDSFT_TEXTPERSP, 1, enumTextPersp) + set_mode_data(self.f3d.G_MDSFT_CYCLETYPE, 2, enumCycleType) + set_mode_data(self.f3d.G_MDSFT_COLORDITHER, 1, enumColorDither) + set_mode_data(self.f3d.G_MDSFT_PIPELINE, 1, enumPipelineMode) + return self._continue_parse + + def gsSPSetOtherMode_L(self, macro: Macro): + mask = ((1 << args[2]) - 1) << args[1] + data = args[3] & mask + # ignore this for now + if mask & 0xFFFFFFF8: + render_mode = data & 0xFFFFFFF8 + if mask & 4: + mode_data = data & 0x4 + self.gsDPSetDepthSource(macro.partial("G_ZS_PRIM" if mode_data else "G_ZS_PIXEL")) + if mask & 3: + mode_data = data & 0x3 + mode_options = { + 0: "G_AC_NONE", + 1 << self.f3d.G_MDSFT_ALPHACOMPARE: "G_AC_THRESHOLD", + 3 << self.f3d.G_MDSFT_ALPHACOMPARE: "G_AC_DITHER", + } + self.gsDPSetAlphaCompare(macro.partial(mode_options.get(mode_data))) + return self._continue_parse + + # this is kind of wacky? + def gsDPSetOtherMode(self, macro: Macro): self.NewMat = 1 if macro.args[0] == "G_SETOTHERMODE_H": for i, othermode in enumerate(macro.args[3].split("|")): @@ -1145,6 +1294,7 @@ def get_flags(arg: int): if flag_val and ((arg & flag_val) == flag_val): used_flags.append(flag) return " | ".join(used_flags) + return [get_flags(arg) for arg in args] def gsSPClearGeometryMode(self, macro: Macro): @@ -1189,14 +1339,40 @@ def gsSPLoadGeometryMode(self, macro: Macro): # uses bitwise unpacking def parse_color_combiner(self, args: list[int]): - a = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: 'NOISE'} - b = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: 'CENTER', 7: 'K4'} - c = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: 'SCALE', 7: 'COMBINED_ALPHA', 8: 'TEXEL0_ALPHA', 9: 'TEXEL1_ALPHA', 10: 'PRIMITIVE_ALPHA', 11: 'SHADE_ALPHA', 12: 'ENV_ALPHA', 13: 'LOD_FRACTION', 14: 'PRIM_LOD_FRAC', 15: 'K5'} - d = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: '0'} - aa = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: '0'} - ba = {0: 'COMBINED', 1: 'TEXEL0', 2: 'TEXEL1', 3: 'PRIMITIVE', 4: 'SHADE', 5: 'ENVIRONMENT', 6: '1', 7: '0'} - ca = da= aa - return [d.get(val, 0) for val, d in zip(args, [a,b,c,d,aa,ba,ca,da]*2)] + a = {0: "COMBINED", 1: "TEXEL0", 2: "TEXEL1", 3: "PRIMITIVE", 4: "SHADE", 5: "ENVIRONMENT", 6: "1", 7: "NOISE"} + b = { + 0: "COMBINED", + 1: "TEXEL0", + 2: "TEXEL1", + 3: "PRIMITIVE", + 4: "SHADE", + 5: "ENVIRONMENT", + 6: "CENTER", + 7: "K4", + } + c = { + 0: "COMBINED", + 1: "TEXEL0", + 2: "TEXEL1", + 3: "PRIMITIVE", + 4: "SHADE", + 5: "ENVIRONMENT", + 6: "SCALE", + 7: "COMBINED_ALPHA", + 8: "TEXEL0_ALPHA", + 9: "TEXEL1_ALPHA", + 10: "PRIMITIVE_ALPHA", + 11: "SHADE_ALPHA", + 12: "ENV_ALPHA", + 13: "LOD_FRACTION", + 14: "PRIM_LOD_FRAC", + 15: "K5", + } + d = {0: "COMBINED", 1: "TEXEL0", 2: "TEXEL1", 3: "PRIMITIVE", 4: "SHADE", 5: "ENVIRONMENT", 6: "1", 7: "0"} + aa = {0: "COMBINED", 1: "TEXEL0", 2: "TEXEL1", 3: "PRIMITIVE", 4: "SHADE", 5: "ENVIRONMENT", 6: "1", 7: "0"} + ba = {0: "COMBINED", 1: "TEXEL0", 2: "TEXEL1", 3: "PRIMITIVE", 4: "SHADE", 5: "ENVIRONMENT", 6: "1", 7: "0"} + ca = da = aa + return [d.get(val, 0) for val, d in zip(args, [a, b, c, d, aa, ba, ca, da] * 2)] def gsDPSetCombineMode(self, macro: Macro): self.NewMat = 1 diff --git a/fast64_internal/sm64/sm64_constants.py b/fast64_internal/sm64/sm64_constants.py index b6aa97fdf..ba575573e 100644 --- a/fast64_internal/sm64/sm64_constants.py +++ b/fast64_internal/sm64/sm64_constants.py @@ -2321,6 +2321,7 @@ def validate_dict(val: DictOrVal, val_type: type): def validate_list(val: ListOrVal, val_type: type): return all(isinstance(v, val_type) for v in as_list(val)) + @dataclasses.dataclass class AnimInfo: address: int @@ -2436,6 +2437,7 @@ def get_model_info(self, name: str): else: return self.models + ACTOR_PRESET_INFO = { "Amp": ActorPresetInfo( decomp_path="actors/amp", diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 23ff95cf3..e3be4d829 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -82,7 +82,7 @@ enumLevelNames, enumSpecialsNames, LEVEL_ID_NUMBERS, - groups_obj_export + groups_obj_export, ) # ------------------------------------------------------------------------ @@ -364,15 +364,21 @@ class Level(DataParser): 0x14: ("PUSH_POOL", PackedFormat(">H")), # pad 0x15: ("POP_POOL", PackedFormat(">H")), # pad 0x16: ("FIXED_LOAD", PackedFormat(">H3L")), # load_addr start_ptr end_ptr - 0x17: ("LOAD_RAW", PackedFormat(">2B2L", reorder = (1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr - 0x18: ("LOAD_MIO0", PackedFormat(">2B2L", reorder = (1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr + 0x17: ("LOAD_RAW", PackedFormat(">2B2L", reorder=(1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr + 0x18: ("LOAD_MIO0", PackedFormat(">2B2L", reorder=(1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr 0x19: ("LOAD_MARIO_HEAD", PackedFormat(">H")), # set head - 0x1A: ("LOAD_MIO0_TEXTURE", PackedFormat(">2B2L", reorder = (1, 2, 3), make_str=False)), # pad seg start_ptr end_ptr + 0x1A: ( + "LOAD_MIO0_TEXTURE", + PackedFormat(">2B2L", reorder=(1, 2, 3), make_str=False), + ), # pad seg start_ptr end_ptr 0x1B: ("INIT_LEVEL", PackedFormat(">H")), # pad 0x1C: ("CLEAR_LEVEL", PackedFormat(">H")), # pad 0x1D: ("ALLOC_LEVEL_POOL", PackedFormat(">H")), # pad 0x1E: ("FREE_LEVEL_POOL", PackedFormat(">H")), # pad - 0x1F: ("AREA", PackedFormat(">2BL", make_str=False)), # index, pad, geo_ptr, delay ptr retrieval because hacks do + 0x1F: ( + "AREA", + PackedFormat(">2BL", make_str=False), + ), # index, pad, geo_ptr, delay ptr retrieval because hacks do 0x20: ("END_AREA", PackedFormat(">H")), # pad 0x21: ("LOAD_MODEL_FROM_DL", PackedFormat(">Hl")), # model|layer dl_ptr 0x22: ("LOAD_MODEL_FROM_GEO", PackedFormat(">HL", (1,))), # model geo_ptr @@ -504,10 +510,10 @@ def load_segment_E(self, area_index: int): if not self.banks.tlb.get(0x19, None): return area_index = int(area_index) - load_addr = self.seg2phys(0x19005f00) - start = self.unpack_type(self.bin_file, load_addr+area_index*16, ">L", make_str=False) - end = self.unpack_type(self.bin_file, load_addr+4+area_index*16, ">L", make_str=False) - self.banks.tlb[0x0E] = [start,end] + load_addr = self.seg2phys(0x19005F00) + start = self.unpack_type(self.bin_file, load_addr + area_index * 16, ">L", make_str=False) + end = self.unpack_type(self.bin_file, load_addr + 4 + area_index * 16, ">L", make_str=False) + self.banks.tlb[0x0E] = [start, end] # macro parsing funcs # jump to new script, goes back via EXIT, not RETURN @@ -588,14 +594,22 @@ def LOAD_RAW(self, macro: Macro, col: bpy.types.Collection): return self._continue_parse # mio0 header is sig, len, comp_off decomp_off. Add decomp_off to bank start - def _decode_cmd_load_mio0_texture_bin(self, packed_fmt: PackedFormat, parser: Parser) -> tuple[cmd_name: str, cmd_args: list[int], cmd_len: int]: + def _decode_cmd_load_mio0_texture_bin( + self, packed_fmt: PackedFormat, parser: Parser + ) -> tuple[cmd_name:str, cmd_args : list[int], cmd_len:int]: return self._decode_cmd_load_mio0_bin(packed_fmt, parser) - def _decode_cmd_load_mio0_bin(self, packed_fmt: PackedFormat, parser: Parser) -> tuple[cmd_name: str, cmd_args: list[int], cmd_len: int]: + def _decode_cmd_load_mio0_bin( + self, packed_fmt: PackedFormat, parser: Parser + ) -> tuple[cmd_name:str, cmd_args : list[int], cmd_len:int]: cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) mio0_header = cmd_args[1] - mio0_offset = self.unpack_type(parser.cur_stream, mio0_header + 0xC, ">L", make_str = False) - return ("LOAD_MIO0", [cmd_args[0], cmd_args[1] + mio0_offset, cmd_args[2] + mio0_offset], packed_fmt.format_size) + mio0_offset = self.unpack_type(parser.cur_stream, mio0_header + 0xC, ">L", make_str=False) + return ( + "LOAD_MIO0", + [cmd_args[0], cmd_args[1] + mio0_offset, cmd_args[2] + mio0_offset], + packed_fmt.format_size, + ) def LOAD_MIO0(self, macro: Macro, col: bpy.types.Collection): self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) @@ -762,7 +776,7 @@ class ColTri: class Collision(DataParser): - def __init__(self, collision: list[str], scale: float, parse_target = DataParser._c_parsing): + def __init__(self, collision: list[str], scale: float, parse_target=DataParser._c_parsing): self.collision = collision # will be none in binary self.scale = scale self.vertices = [] @@ -771,7 +785,7 @@ def __init__(self, collision: list[str], scale: float, parse_target = DataParser self.type: str = None self.special_objects = [] self.water_boxes = [] - super().__init__(parse_target = parse_target) + super().__init__(parse_target=parse_target) def write_water_boxes( self, scene: bpy.types.Scene, parent: bpy.types.Object, name: str, col: bpy.types.Collection = None @@ -1281,14 +1295,17 @@ def cmd_rm_func(format_data, cmd_bytes): ), # use a specific function to decode this one, format in dict is dummy 0x11: ( "GEO_TRANSLATE_NODE_BIN", - PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False), + PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str=False), ), 0x12: ( "GEO_ROTATION_NODE_BIN", - PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False), + PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str=False), ), 0x13: ("GEO_ANIMATED_PART", PackedFormat(f">B3hL", (4,))), - 0x14: ("GEO_BILLBOARD_BIN", PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False)), + 0x14: ( + "GEO_BILLBOARD_BIN", + PackedFormat(f">B3hL", (4,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str=False), + ), 0x15: ("GEO_DISPLAY_LIST", PackedFormat(">BhL", (2,))), 0x16: ("GEO_SHADOW", PackedFormat(">B3h")), 0x17: ("GEO_RENDER_OBJ", PackedFormat(">Bh")), @@ -1297,7 +1314,7 @@ def cmd_rm_func(format_data, cmd_bytes): 0x1A: ("GEO_NOP", PackedFormat(">B3h")), 0x1B: ("GEO_COPY_VIEW", PackedFormat(">Bh")), 0x1C: ("GEO_HELD_OBJECT", PackedFormat(">B3hL")), - 0x1D: ("GEO_SCALE", PackedFormat(f">BhlL", (3,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str = False)), + 0x1D: ("GEO_SCALE", PackedFormat(f">BhlL", (3,), lambda x, y: GraphNodes.cmd_rm_dl(x, y), make_str=False)), 0x1E: ("GEO_NOP", PackedFormat(">B3h")), 0x1F: ("GEO_NOP", PackedFormat(">B7h")), 0x20: ("GEO_CULLING_RADIUS", PackedFormat(">Bh")), @@ -1346,7 +1363,7 @@ def new_subclass_dyn_bin( offset = 0 # hopefully this doesn't go on long while offset < 0x40: - cmd_type = struct.unpack(">B", bin_file[entry_ptr+offset:entry_ptr+1+offset])[0] + cmd_type = struct.unpack(">B", bin_file[entry_ptr + offset : entry_ptr + 1 + offset])[0] cmd_name, packed_cmd = GraphNodes._geo_cmds_bin_format.get(cmd_type) offset += packed_cmd.format_size + 1 # this won't be perfect but it'll avoid having to parse the entire geo layout @@ -1356,7 +1373,18 @@ def new_subclass_dyn_bin( geo_layout = GeoArmature(None, arm_obj, scene, entry_ptr, col=col, parse_target=parse_target) bpy.context.view_layer.objects.active = geo_layout.get_or_init_geo_armature() break - elif cmd_name in {"GEO_END", "GEO_BRANCH_AND_LINK", "GEO_BRANCH", "GEO_TRANSLATE_ROTATE", "GEO_ROTATION_NODE_BIN", "GEO_TRANSLATE_NODE_BIN"} or offset > 0x40: + elif ( + cmd_name + in { + "GEO_END", + "GEO_BRANCH_AND_LINK", + "GEO_BRANCH", + "GEO_TRANSLATE_ROTATE", + "GEO_ROTATION_NODE_BIN", + "GEO_TRANSLATE_NODE_BIN", + } + or offset > 0x40 + ): geo_layout = GeoLayout(None, None, scene, entry_ptr, None, col=col, parse_target=parse_target) break @@ -3135,12 +3163,13 @@ def get_sm64_geos(): enum_list.append((model, model, name)) return enum_list + class SM64_ImportProperties(PropertyGroup): # actor props custom_geo_layout_str: StringProperty(name="Geo Layout Name", description="Name of GeoLayout") custom_geo_layout_addr: StringProperty(name="Geo Layout Address", description="Address of GeoLayout") - actor_preset :EnumProperty( + actor_preset: EnumProperty( name="actor preset", description="Actor to import", items=[*get_sm64_geos(), ("Custom", "Custom", "Custom")] ) custom_actor_prefix: StringProperty( From a37794e08a0d69c111fc63faec80437495a32acc Mon Sep 17 00:00:00 2001 From: scut Date: Sat, 21 Feb 2026 19:57:29 -0500 Subject: [PATCH 24/30] cleaned up code, removed sm64 binary f3d importer --- fast64_internal/f3d/f3d_import.py | 175 ++++++++++++++++---- fast64_internal/f3d/f3d_parser.py | 75 --------- fast64_internal/sm64/__init__.py | 11 -- fast64_internal/sm64/sm64_f3d_parser.py | 115 ------------- fast64_internal/sm64/sm64_level_importer.py | 131 ++++----------- fast64_internal/utility_importer.py | 150 ++++++++++++++--- 6 files changed, 300 insertions(+), 357 deletions(-) delete mode 100644 fast64_internal/sm64/sm64_f3d_parser.py diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 50d4a7e5e..734228c97 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -3,7 +3,7 @@ # ------------------------------------------------------------------------ from __future__ import annotations -import bpy +import bpy, bmesh import os, struct, math @@ -17,7 +17,7 @@ from numbers import Number from collections.abc import Sequence -from ..f3d.f3d_material import F3DMaterialProperty, RDPSettings, TextureProperty +from ..f3d.f3d_material import F3DMaterialProperty, RDPSettings, TextureProperty, getDefaultMaterialPreset, createF3DMat from ..f3d.f3d_gbi import get_F3D_GBI from ..f3d.f3d_enums import ( enumAlphaCompare, @@ -33,7 +33,7 @@ enumPipelineMode, ) -from ..utility import hexOrDecInt, gammaInverse +from ..utility import hexOrDecInt, gammaInverse, GetEnums from ..utility_importer import * from ..bin_png import convert_tex_c, convert_tex_bin @@ -84,8 +84,14 @@ def Lights(self, light_data: list[str]): # just holds common methods for tiles & textures class TexBase: + def check_tex_hack(self): + # check for hacky 4b loading + if "RGBA" in self.fmt and "4b" in self.siz: + self.siz = "16b" + # sometimes int args are used so convert them all to str DEFs def standardize_fields(self): + self.check_tex_hack() if self.fmt.isnumeric(): fmt_types = {0: "RGBA", 2: "CI", 3: "IA", 4: "I"} self.fmt = f"G_IM_FMT_{fmt_types.get(int(self.fmt))}" @@ -94,6 +100,7 @@ def standardize_fields(self): self.siz = f"G_IM_SIZ_{siz_types.get(int(self.siz))}" def eval_texture_format(self): + self.check_tex_hack() return f"{self.fmt.replace('G_IM_FMT_','')}{self.siz.replace('G_IM_SIZ_','').replace('b','')}" @@ -308,14 +315,21 @@ def mat_hash(self, mat: bpy.types.Material): def convert_color(self, color: Sequence[Number]): return (*gammaInverse([int(a) / 255 for a in color[:3]]), int(color[3]) / 255) - def load_texture(self, ForceNewTex: bool, path: Path, tex: Texture): + def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None - tex_img = textures.get(tex.Timg)[0] - if "#include" in tex_img: + tex_img = textures.get(tex.tex_img) + if tex_img and "#include" in tex_img[0]: return self.load_texture_png(force_new_tex, textures, path, tex) - else: - return self.load_texture_array(force_new_tex, textures, path, tex, DataParser._c_parsing) + # TODO improve this + elif tex_img or self.bin_file: + return self.load_texture_array( + force_new_tex, + textures, + path, + tex, + DataParser._c_parsing if not self.bin_file else DataParser._binary_parsing, + ) def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture, parse_target: int): """ @@ -382,12 +396,12 @@ def apply_PBSDF_Mat(self, mat: bpy.types.Material, tex_path: Path, tex: Texture) if image: tex_node.image = image - def apply_material_settings(self, mat: bpy.types.Material, tex_path: Path): + def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_path: Path): f3d = mat.f3d_mat self.set_texture_tile_mapping() self.set_register_settings(mat, f3d) - self.set_textures(f3d) + self.set_textures(f3d, textures, tex_path) with bpy.context.temp_override(material=mat): bpy.ops.material.update_f3d_nodes() @@ -414,17 +428,23 @@ def set_texture_tile_mapping(self): setattr(self, f"tex{tex_index}", tex) # TODO: add load texture call - def set_textures(self, f3d: F3DMaterialProperty, tex_path: Path): + def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path): self.set_tex_scale(f3d) if self.tex0 and self.set_tex: self.tex0.standardize_fields() self.set_tex_settings( - f3d.tex0, self.load_texture(0, tex_path, self.tex0), self.tiles[0 + self.base_tile], self.tex0.tex_img + f3d.tex0, + self.load_texture(0, textures, tex_path, self.tex0), + self.tiles[0 + self.base_tile], + self.tex0.tex_img, ) if self.tex1 and self.set_tex: self.tex1.standardize_fields() self.set_tex_settings( - f3d.tex1, self.load_texture(0, tex_path, self.tex1), self.tiles[1 + self.base_tile], self.tex1.tex_img + f3d.tex1, + self.load_texture(0, textures, tex_path, self.tex1), + self.tiles[1 + self.base_tile], + self.tex1.tex_img, ) def set_fog(self, f3d: F3DMaterialProperty): @@ -610,6 +630,93 @@ def __init__(self, lastmat: dict[any, Mat] = None, parse_target: int = DataParse self.last_mat = lastmat super().__init__(parse_target=parse_target) + def apply_mesh_data( + self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path, force_new_tex: bool = False + ): + bpy.context.view_layer.objects.active = obj + ind = -1 + new = -1 + UVmap = obj.data.uv_layers.new(name="UVMap") + # I can get the available enums for color attrs with this func + vcol_enums = GetEnums(bpy.types.FloatColorAttribute, "data_type") + # enums were changed in a blender version, this should future proof it a little + if "FLOAT_COLOR" in vcol_enums: + e = "FLOAT_COLOR" + else: + e = "COLOR" + Vcol = obj.data.color_attributes.get("Col") + if not Vcol: + Vcol = obj.data.color_attributes.new(name="Col", type=e, domain="CORNER") + Valph = obj.data.color_attributes.get("Alpha") + if not Valph: + Valph = obj.data.color_attributes.new(name="Alpha", type=e, domain="CORNER") + + b_mesh = bmesh.new() + b_mesh.from_mesh(mesh) + tris = b_mesh.faces + tris.ensure_lookup_table() + uv_map = b_mesh.loops.layers.uv.active + v_color = b_mesh.loops.layers.float_color["Col"] + v_alpha = b_mesh.loops.layers.float_color["Alpha"] + + self.Mats.append([len(tris), 0]) + for i, t in enumerate(tris): + if i > self.Mats[ind + 1][0]: + new = self.create_new_f3d_mat(self.Mats[ind + 1][1], obj, force_new_tex) + ind += 1 + if not new: + new = len(mesh.materials) - 1 + mat = mesh.materials[new] + mat.name = "F3D Mat {} {}".format(obj.name, new) + self.Mats[new][1].apply_material_settings(mat, self.Textures, tex_path, layer) + else: + # I tried to re use mat slots but it is much slower, and not as accurate + # idk if I was just doing it wrong or the search is that much slower, but this is easier + mesh.materials.append(new) + new = len(mesh.materials) - 1 + # if somehow there is no material assigned to the triangle or something is lost + if new != -1: + self.apply_loop_data(new, mesh, t, uv_map, v_color, v_alpha) + b_mesh.to_mesh(mesh) + + def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv_map, v_color, v_alpha): + tri.material_index = mat + # Get texture size or assume 32, 32 otherwise + i = mesh.materials[mat].f3d_mat.tex0.tex + if not i: + WH = (32, 32) + else: + WH = i.size + # Set UV data and Vertex Color Data + for v, l in zip(tri.verts, tri.loops): + uv = self.UVs[v.index] + vcol = self.VCs[v.index] + # scale verts + l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] + # idk why this is necessary. N64 thing or something? + if self.parsing_target == DataParser._binary_parsing: + flip = 1 + else: + flip = -1 + l[uv_map].uv[1] = l[uv_map].uv[1] * flip + 1 + l[v_color] = [*gammaInverse([a / 255 for a in vcol]), 255] + l[v_alpha] = [vcol[3] / 255 for i in range(4)] + + # create a new f3d_mat given an SM64_Material class but don't create copies with same props + def create_new_f3d_mat(self, mat: SM64_Material, obj: bpy.types.Object, force_new_tex: bool): + if not force_new_tex: + # check if this mat was used already in another mesh (or this mat if DL is suboptimal or something) + # even looping n^2 is probably faster than duping 3 mats with blender speed + for j, F3Dmat in enumerate(bpy.data.materials): + if F3Dmat.is_f3d: + dupe = mat.mat_hash_f3d(F3Dmat.f3d_mat) + if dupe: + return F3Dmat + # make new mat + preset = getDefaultMaterialPreset("Shaded Solid") + createF3DMat(obj, preset) + return None + # MSB: (name, PackedFormat), ones empty PackedFormat have no support yet # f3d class changes its var values based on f3d type, so f3d_gbi.G_TRI1 matches correct MSB def setup_unpack_dicts(self): @@ -1123,8 +1230,8 @@ def first_from_enum(self, enum: list[tuple]): return [val[0] for val in enum] def gsSPSetOtherMode_H(self, macro: Macro): - mask = ((1 << args[2]) - 1) << args[1] - data = args[3] & mask + mask = ((1 << macro.args[2]) - 1) << macro.args[1] + data = macro.args[3] & mask def set_mode_data(shift: int, num_bits: int, enum: list[tuple], call: callable, vals: list = None): mode_bits = ((1 << num_bits) - 1) << shift @@ -1133,26 +1240,26 @@ def set_mode_data(shift: int, num_bits: int, enum: list[tuple], call: callable, vals = range(2**num_bits) if mask & mode_bits: mode_data = data & mode_bits - mode_options = {a << shift: first_from_enum(enum) for a in vals} - call(Macro("", [mode_options.get(mode_data)])) - - set_mode_data(self.f3d.G_MDSFT_ALPHADITHER, 2, enumAlphaDither) - set_mode_data(self.f3d.G_MDSFT_RGBDITHER, 2, enumRGBDither) - set_mode_data(self.f3d.G_MDSFT_COMBKEY, 1, enumCombKey) - set_mode_data(self.f3d.G_MDSFT_TEXTCONV, 3, enumTextConv, vals=[0, 5, 6]) - set_mode_data(self.f3d.G_MDSFT_TEXTFILT, 2, enumTextFilt, vals=[0, 2, 3]) - set_mode_data(self.f3d.G_MDSFT_TEXTLUT, 2, enumTextLUT, vals=[0, 2, 3]) - set_mode_data(self.f3d.G_MDSFT_TEXTLOD, 1, enumRGBDither) - set_mode_data(self.f3d.G_MDSFT_TEXTDETAIL, 2, enumTextDetail, vals=[0, 2, 3]) - set_mode_data(self.f3d.G_MDSFT_TEXTPERSP, 1, enumTextPersp) - set_mode_data(self.f3d.G_MDSFT_CYCLETYPE, 2, enumCycleType) - set_mode_data(self.f3d.G_MDSFT_COLORDITHER, 1, enumColorDither) - set_mode_data(self.f3d.G_MDSFT_PIPELINE, 1, enumPipelineMode) + mode_options = {a << shift: self.first_from_enum(enum) for a in vals} + call(Macro("", mode_options.get(mode_data))) + + set_mode_data(self.f3d_gbi.G_MDSFT_ALPHADITHER, 2, enumAlphaDither, self.gsDPSetAlphaCompare) + set_mode_data(self.f3d_gbi.G_MDSFT_RGBDITHER, 2, enumRGBDither, self.gsDPSetColorDither) + set_mode_data(self.f3d_gbi.G_MDSFT_COMBKEY, 1, enumCombKey, self.gsDPSetCombineKey) + set_mode_data(self.f3d_gbi.G_MDSFT_TEXTCONV, 3, enumTextConv, self.gsDPSetTextureConvert, vals=[0, 5, 6]) + set_mode_data(self.f3d_gbi.G_MDSFT_TEXTFILT, 2, enumTextFilt, self.gsDPSetTextureFilter, vals=[0, 2, 3]) + set_mode_data(self.f3d_gbi.G_MDSFT_TEXTLUT, 2, enumTextLUT, self.gsDPSetTextureLUT, vals=[0, 2, 3]) + set_mode_data(self.f3d_gbi.G_MDSFT_TEXTLOD, 1, enumTextLOD, self.gsDPSetTextureLOD) + set_mode_data(self.f3d_gbi.G_MDSFT_TEXTDETAIL, 2, enumTextDetail, self.gsDPSetTextureDetail, vals=[0, 2, 3]) + set_mode_data(self.f3d_gbi.G_MDSFT_TEXTPERSP, 1, enumTextPersp, self.gsDPSetTexturePersp) + set_mode_data(self.f3d_gbi.G_MDSFT_CYCLETYPE, 2, enumCycleType, self.gsDPSetCycleType) + set_mode_data(self.f3d_gbi.G_MDSFT_COLORDITHER, 1, enumColorDither, self.gsDPSetColorDither) + set_mode_data(self.f3d_gbi.G_MDSFT_PIPELINE, 1, enumPipelineMode, self.gsDPPipelineMode) return self._continue_parse def gsSPSetOtherMode_L(self, macro: Macro): - mask = ((1 << args[2]) - 1) << args[1] - data = args[3] & mask + mask = ((1 << macro.args[2]) - 1) << macro.args[1] + data = macro.args[3] & mask # ignore this for now if mask & 0xFFFFFFF8: render_mode = data & 0xFFFFFFF8 @@ -1163,8 +1270,8 @@ def gsSPSetOtherMode_L(self, macro: Macro): mode_data = data & 0x3 mode_options = { 0: "G_AC_NONE", - 1 << self.f3d.G_MDSFT_ALPHACOMPARE: "G_AC_THRESHOLD", - 3 << self.f3d.G_MDSFT_ALPHACOMPARE: "G_AC_DITHER", + 1 << self.f3d_gbi.G_MDSFT_ALPHACOMPARE: "G_AC_THRESHOLD", + 3 << self.f3d_gbi.G_MDSFT_ALPHACOMPARE: "G_AC_DITHER", } self.gsDPSetAlphaCompare(macro.partial(mode_options.get(mode_data))) return self._continue_parse diff --git a/fast64_internal/f3d/f3d_parser.py b/fast64_internal/f3d/f3d_parser.py index 57f2dbb28..255d9905a 100644 --- a/fast64_internal/f3d/f3d_parser.py +++ b/fast64_internal/f3d/f3d_parser.py @@ -32,81 +32,6 @@ from .f3d_material import RDPSettings -colorCombinationCommands = [ - 0x03, # load lighting data - 0xB6, # clear geometry params - 0xB7, # set geometry params - 0xBB, # set texture scaling factor - 0xF3, # set texture size - 0xF5, # set texture properties - 0xF7, # set fill color - 0xF8, # set fog color - 0xFB, # set env color - 0xFC, # set color combination - 0xFD, # load texture -] - -drawCommands = [0x04, 0xBF] # load vertex data # draw triangle - - -def getAxisVector(enumValue): - sign = -1 if enumValue[0] == "-" else 1 - axis = enumValue[0] if sign == 1 else enumValue[1] - return (sign if axis == "X" else 0, sign if axis == "Y" else 0, sign if axis == "Z" else 0) - - -def getExportRotation(forwardAxisEnum, convertTransformMatrix): - if "Z" in forwardAxisEnum: - print("Z axis reserved for verticals.") - return None - elif forwardAxisEnum == "X": - rightAxisEnum = "-Y" - elif forwardAxisEnum == "-Y": - rightAxisEnum = "-X" - elif forwardAxisEnum == "-X": - rightAxisEnum = "Y" - else: - rightAxisEnum = "X" - - forwardAxis = getAxisVector(forwardAxisEnum) - rightAxis = getAxisVector(rightAxisEnum) - - upAxis = (0, 0, 1) - - # Z assumed to be up - columns = [rightAxis, forwardAxis, upAxis] - localToBlenderRotation = mathutils.Matrix( - [[col[0] for col in columns], [col[1] for col in columns], [col[2] for col in columns]] - ).to_quaternion() - - return convertTransformMatrix.to_quaternion() @ localToBlenderRotation - - -def F3DtoBlenderObject(romfile, startAddress, scene, newname, transformMatrix, segmentData, shadeSmooth): - mesh = bpy.data.meshes.new(newname + "-mesh") - obj = bpy.data.objects.new(newname, mesh) - scene.collection.objects.link(obj) - createBlankMaterial(obj) - - bMesh = bmesh.new() - bMesh.from_mesh(mesh) - - parseF3DBinary(romfile, startAddress, scene, bMesh, obj, transformMatrix, newname, segmentData, [None] * 16 * 16) - - # bmesh.ops.rotate(bMesh, cent = [0,0,0], - # matrix = blenderToSM64Rotation, - # verts = bMesh.verts) - bMesh.to_mesh(mesh) - bMesh.free() - mesh.update() - - if shadeSmooth: - selectSingleObject(obj) - bpy.ops.object.shade_smooth() - - return obj - - def cmdToPositiveInt(cmd): return cmd if cmd >= 0 else 256 + cmd diff --git a/fast64_internal/sm64/__init__.py b/fast64_internal/sm64/__init__.py index 92ed6fabe..45af6aeb8 100644 --- a/fast64_internal/sm64/__init__.py +++ b/fast64_internal/sm64/__init__.py @@ -73,13 +73,6 @@ sm64_spline_unregister, ) -from .sm64_f3d_parser import ( - sm64_dl_parser_panel_register, - sm64_dl_parser_panel_unregister, - sm64_dl_parser_register, - sm64_dl_parser_unregister, -) - from .sm64_f3d_writer import ( sm64_dl_writer_panel_register, sm64_dl_writer_panel_unregister, @@ -124,7 +117,6 @@ def sm64_panel_register(): sm64_geo_writer_panel_register() sm64_spline_panel_register() sm64_dl_writer_panel_register() - sm64_dl_parser_panel_register() anim_panel_register() @@ -140,7 +132,6 @@ def sm64_panel_unregister(): sm64_geo_writer_panel_unregister() sm64_spline_panel_unregister() sm64_dl_writer_panel_unregister() - sm64_dl_parser_panel_unregister() anim_panel_unregister() @@ -159,7 +150,6 @@ def sm64_register(register_panels: bool): sm64_level_register() sm64_spline_register() sm64_dl_writer_register() - sm64_dl_parser_register() settings_props_register() register_class(SM64_ActionProperty) @@ -181,7 +171,6 @@ def sm64_unregister(unregister_panels: bool): sm64_level_unregister() sm64_spline_unregister() sm64_dl_writer_unregister() - sm64_dl_parser_unregister() settings_props_unregister() sm64_import_unregister() unregister_class(SM64_ActionProperty) diff --git a/fast64_internal/sm64/sm64_f3d_parser.py b/fast64_internal/sm64/sm64_f3d_parser.py deleted file mode 100644 index 45152ccd5..000000000 --- a/fast64_internal/sm64/sm64_f3d_parser.py +++ /dev/null @@ -1,115 +0,0 @@ -from mathutils import Matrix -from math import radians -from bpy.types import Operator, Scene -from bpy.path import abspath -from bpy.utils import register_class, unregister_class -from bpy.ops import object -from bpy.props import StringProperty, EnumProperty, BoolProperty -from ..panels import SM64_Panel -from ..f3d.f3d_parser import F3DtoBlenderObject -from .sm64_constants import enumLevelNames -from .sm64_utility import import_rom_checks -from .sm64_level_parser import parse_level_binary - -from ..utility import ( - PluginError, - applyRotation, - raisePluginError, - decodeSegmentedAddr, - applyRotation, - prop_split, -) - - -class SM64_ImportDL(Operator): - # set bl_ properties - bl_idname = "object.sm64_import_dl" - bl_label = "Import Display List" - bl_options = {"REGISTER", "UNDO", "PRESET"} - - # Called on demand (i.e. button press, menu item) - # Can also be called from operator search menu (Spacebar) - def execute(self, context): - romfileSrc = None - try: - if context.mode != "OBJECT": - raise PluginError("Operator can only be used in object mode.") - except Exception as e: - raisePluginError(self, e) - return {"CANCELLED"} - try: - import_rom_checks(abspath(context.scene.fast64.sm64.import_rom)) - romfileSrc = open(abspath(context.scene.fast64.sm64.import_rom), "rb") - levelParsed = parse_level_binary(romfileSrc, context.scene.levelDLImport) - segmentData = levelParsed.segmentData - start = ( - decodeSegmentedAddr(int(context.scene.DLImportStart, 16).to_bytes(4, "big"), segmentData) - if context.scene.isSegmentedAddrDLImport - else int(context.scene.DLImportStart, 16) - ) - readObj = F3DtoBlenderObject( - romfileSrc, start, context.scene, "sm64_mesh", Matrix.Identity(4), segmentData, True - ) - - applyRotation([readObj], radians(-90), "X") - romfileSrc.close() - - self.report({"INFO"}, "Generic import succeeded.") - return {"FINISHED"} # must return a set - - except Exception as e: - if context.mode != "OBJECT": - object.mode_set(mode="OBJECT") - if romfileSrc is not None: - romfileSrc.close() - raisePluginError(self, e) - return {"CANCELLED"} - - -class SM64_ImportDLPanel(SM64_Panel): - bl_idname = "SM64_PT_import_dl" - bl_label = "SM64 DL Importer" - import_panel = True - - # called every frame - def draw(self, context): - col = self.layout.column() - propsDLI = col.operator(SM64_ImportDL.bl_idname) - - prop_split(col, context.scene, "DLImportStart", "Start Address") - col.prop(context.scene, "levelDLImport") - col.prop(context.scene, "isSegmentedAddrDLImport") - col.box().label(text="Only Fast3D mesh importing allowed.") - - -sm64_dl_parser_classes = (SM64_ImportDL,) - -sm64_dl_parser_panel_classes = (SM64_ImportDLPanel,) - - -def sm64_dl_parser_panel_register(): - for cls in sm64_dl_parser_panel_classes: - register_class(cls) - - -def sm64_dl_parser_panel_unregister(): - for cls in sm64_dl_parser_panel_classes: - unregister_class(cls) - - -def sm64_dl_parser_register(): - for cls in sm64_dl_parser_classes: - register_class(cls) - - Scene.DLImportStart = StringProperty(name="Start Address", default="A3BE1C") - Scene.levelDLImport = EnumProperty(items=enumLevelNames, name="Level", default="castle_grounds") - Scene.isSegmentedAddrDLImport = BoolProperty(name="Is Segmented Address", default=False) - - -def sm64_dl_parser_unregister(): - for cls in reversed(sm64_dl_parser_classes): - unregister_class(cls) - - del Scene.levelDLImport - del Scene.DLImportStart - del Scene.isSegmentedAddrDLImport diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index e3be4d829..e02b30618 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -3,7 +3,6 @@ # ------------------------------------------------------------------------ # TODO: -# fix set tile flags for binary? # clean up code base, remove existing sm64 binary importer # make sure props play nice in prop updating system @@ -45,16 +44,12 @@ from pstats import SortKey import os, sys, math, re, typing -from array import array from struct import * -from shutil import copy from pathlib import Path -from types import ModuleType from mathutils import Vector, Euler, Matrix, Quaternion from copy import deepcopy from dataclasses import dataclass -from typing import TextIO -from numbers import Number +from typing import TextIO, BinaryIO from collections.abc import Sequence from ..f3d.f3d_import import * @@ -995,11 +990,13 @@ def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Tex if bpy.context.scene.fast64.sm64.importer.import_target == "Binary": return self.load_texture_array(force_new_tex, textures, path, tex, DataParser._binary_parsing) else: - tex_img = textures.get(tex.tex_img)[0] - if "#include" in tex_img: + tex_img = textures.get(tex.tex_img) + if tex_img and "#include" in tex_img[0]: return self.load_texture_png(force_new_tex, textures, path, tex) - else: + elif tex_img: return self.load_texture_array(force_new_tex, textures, path, tex) + else: + print(f"No tex_img found for tex {tex}") def load_texture_png(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): tex_img = textures.get(tex.tex_img)[0].split("/")[-1] @@ -1114,6 +1111,7 @@ def get_generic_textures(self, root_path: Path): "u8": [None, None], "s16": [None, None], }, + macro_check=self.props.version, ) ) t.close() @@ -1134,91 +1132,6 @@ def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, la self.StartName = start return [self.Verts, self.Tris] - def apply_mesh_data(self, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, tex_path: Path): - bpy.context.view_layer.objects.active = obj - ind = -1 - new = -1 - UVmap = obj.data.uv_layers.new(name="UVMap") - # I can get the available enums for color attrs with this func - vcol_enums = GetEnums(bpy.types.FloatColorAttribute, "data_type") - # enums were changed in a blender version, this should future proof it a little - if "FLOAT_COLOR" in vcol_enums: - e = "FLOAT_COLOR" - else: - e = "COLOR" - Vcol = obj.data.color_attributes.get("Col") - if not Vcol: - Vcol = obj.data.color_attributes.new(name="Col", type=e, domain="CORNER") - Valph = obj.data.color_attributes.get("Alpha") - if not Valph: - Valph = obj.data.color_attributes.new(name="Alpha", type=e, domain="CORNER") - - b_mesh = bmesh.new() - b_mesh.from_mesh(mesh) - tris = b_mesh.faces - tris.ensure_lookup_table() - uv_map = b_mesh.loops.layers.uv.active - v_color = b_mesh.loops.layers.float_color["Col"] - v_alpha = b_mesh.loops.layers.float_color["Alpha"] - - self.Mats.append([len(tris), 0]) - for i, t in enumerate(tris): - if i > self.Mats[ind + 1][0]: - new = self.create_new_f3d_mat(self.Mats[ind + 1][1], obj) - ind += 1 - if not new: - new = len(mesh.materials) - 1 - mat = mesh.materials[new] - mat.name = "sm64 F3D Mat {} {}".format(obj.name, new) - self.Mats[new][1].apply_material_settings(mat, self.Textures, tex_path, layer) - else: - # I tried to re use mat slots but it is much slower, and not as accurate - # idk if I was just doing it wrong or the search is that much slower, but this is easier - mesh.materials.append(new) - new = len(mesh.materials) - 1 - # if somehow there is no material assigned to the triangle or something is lost - if new != -1: - self.apply_loop_data(new, mesh, t, uv_map, v_color, v_alpha) - b_mesh.to_mesh(mesh) - - def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv_map, v_color, v_alpha): - tri.material_index = mat - # Get texture size or assume 32, 32 otherwise - i = mesh.materials[mat].f3d_mat.tex0.tex - if not i: - WH = (32, 32) - else: - WH = i.size - # Set UV data and Vertex Color Data - for v, l in zip(tri.verts, tri.loops): - uv = self.UVs[v.index] - vcol = self.VCs[v.index] - # scale verts - l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] - # idk why this is necessary. N64 thing or something? - if self.parsing_target == DataParser._binary_parsing: - flip = 1 - else: - flip = -1 - l[uv_map].uv[1] = l[uv_map].uv[1] * flip + 1 - l[v_color] = [*gammaInverse([a / 255 for a in vcol]), 255] - l[v_alpha] = [vcol[3] / 255 for i in range(4)] - - # create a new f3d_mat given an SM64_Material class but don't create copies with same props - def create_new_f3d_mat(self, mat: SM64_Material, obj: bpy.types.Object): - if not self.props.force_new_tex: - # check if this mat was used already in another mesh (or this mat if DL is suboptimal or something) - # even looping n^2 is probably faster than duping 3 mats with blender speed - for j, F3Dmat in enumerate(bpy.data.materials): - if F3Dmat.is_f3d: - dupe = mat.mat_hash_f3d(F3Dmat.f3d_mat) - if dupe: - return F3Dmat - # make new mat - preset = getDefaultMaterialPreset("Shaded Solid") - createF3DMat(obj, preset) - return None - # holds model found by geo @dataclass @@ -2296,13 +2209,18 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): def get_all_aggregates(aggregate_path: Path, filenames: tuple[callable], root_path: Path) -> list[Path]: if not aggregate_path or not aggregate_path.exists(): return [] + version = bpy.context.scene.fast64.sm64.importer.version with open(aggregate_path, "r", newline="") as file: - caught_files = parse_aggregate_file(file, filenames, root_path, aggregate_path) + caught_files = parse_aggregate_file(file, filenames, root_path, aggregate_path, macro_check=version) # catch fast64 includes - fast64 = parse_aggregate_file(file, (lambda path: "leveldata.inc.c" in path.name,), root_path, aggregate_path) + fast64 = parse_aggregate_file( + file, (lambda path: "leveldata.inc.c" in path.name,), root_path, aggregate_path, macro_check=version + ) if fast64: with open(fast64[0], "r", newline="") as fast64_dat: - caught_files.extend(parse_aggregate_file(fast64_dat, filenames, root_path, aggregate_path)) + caught_files.extend( + parse_aggregate_file(fast64_dat, filenames, root_path, aggregate_path, macro_check=version) + ) return caught_files @@ -2360,7 +2278,9 @@ def parse_level_script_c(script_files: list[Path], scene: bpy.types.Scene, col: scripts = dict() for script_file in script_files: with open(script_file, "r", newline="") as script_file: - scripts.update(get_data_types_from_file(script_file, {"LevelScript": ["(", ")"]})) + scripts.update( + get_data_types_from_file(script_file, {"LevelScript": ["(", ")"]}, macro_check=props.version) + ) lvl = Level(scripts, scene, root, DataParser._c_parsing) entry = props.entry.format(props.level_name) try: @@ -2441,7 +2361,7 @@ def glob_models_in_arm(object_dict: dict, geo_armature: GeoArmature): def apply_mesh_data( f3d_dat: SM64_F3D, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, root_path: Path, cleanup: bool = False ): - f3d_dat.apply_mesh_data(obj, mesh, layer, root_path) + f3d_dat.apply_mesh_data(obj, mesh, layer, root_path, f3d_dat.props.force_new_tex) if cleanup: mesh = obj.data # clean up after applying dat @@ -2570,7 +2490,11 @@ def construct_geo_layouts_from_file(geo_paths: list[Path], root_path: Path) -> d geo_layout_data = {} # stores cleaned up geo layout lines for geo_file in geo_layout_files: with open(geo_file, "r", newline="") as geo_file: - geo_layout_data.update(get_data_types_from_file(geo_file, {"GeoLayout": ["(", ")"]})) + geo_layout_data.update( + get_data_types_from_file( + geo_file, {"GeoLayout": ["(", ")"]}, macro_check=bpy.context.scene.fast64.sm64.importer.version + ) + ) return geo_layout_data @@ -2585,6 +2509,7 @@ def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO) -> SM64 "Ambient_t": [None, None], "Lights": [None, None], }, + macro_check=gfx.props.version, collated=True, ) for key, value in gfx_dat.items(): @@ -2598,6 +2523,7 @@ def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO) -> SM64 "u8": [None, None], "s16": [None, None], }, + macro_check=gfx.props.version, ) ) return gfx @@ -2643,6 +2569,7 @@ def construct_model_data_from_file(aggregates: list[Path], scene: bpy.types.Scen "u8": [None, None], "s16": [None, None], }, + macro_check=sm64_f3d_data.props.version, ) ) return sm64_f3d_data @@ -2785,7 +2712,9 @@ def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types. if not os.path.isfile(col_file): continue with open(col_file, "r", newline="") as col_file: - col_data.update(get_data_types_from_file(col_file, {"Collision": ["(", ")"]})) + col_data.update( + get_data_types_from_file(col_file, {"Collision": ["(", ")"]}, macro_check=lvl.props.version) + ) # search for the area terrain from available collision data for area in lvl.areas.values(): area.col_file = col_data.get(area.terrain, None) diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index e32a8d59d..35150dc89 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -4,7 +4,7 @@ import bpy from functools import partial -from dataclasses import dataclass, field +from dataclasses import dataclass, field, fields from pathlib import Path from typing import TextIO, Any, Union from numbers import Number @@ -18,6 +18,14 @@ # ------------------------------------------------------------------------ +def is_arr(val): + if type(val) == str: + return False + if hasattr(val, "__iter__"): + return True + return False + + # eval line if not integer def eval_or_int(val): if type(val) is int: @@ -188,24 +196,58 @@ def get_symbol_from_locations(self, symbol_dict, pointer, size=8): # turn dict into an array. usually to be fed into a named tuple # dict is: key - offset, value - func->type, name, func->len, arr = None # returns: list[ints] - def extract_dict(self, start, dict): + def extract_dict(self, start, type_dict): output = [] - for k, v in dict.items(): + for k, v in type_dict.items(): try: # if a function is used for member 4, then call with current results - if callable(v[3]): + if callable(v[2]): # variable length structs are always at the end, and should be arrays # since unpack_type sometimes is not a list and sometimes is, I will # force this result to be a list - num = v[3](output) - output.append(self.unpack_type(start + k, v[0].format(num), v[2] * num, iter=True)) + num = v[2](output) + output.append(self.unpack_type(start + k, v[1].format(num), ret_iterable=True)) else: - output.append(self.unpack_type(start + k, v[0], v[2])) + output.append(self.unpack_type(start + k, v[1], make_str=False)) except: - output.append(self.unpack_type(start + k, v[0], v[2])) + output.append(self.unpack_type(start + k, v[1], make_str=False)) return output +class BinWrite: + def type_declare(self, type_name: str, var_name: str): + return f"static {type_name} {var_name}[{len(data_arr)}] = {{\n" + + def unroll_iter(self, data): + if type(data) is str: + return data + if not is_arr(data): + return f"{hex(data) if type(data) is int else str(data)}" + "}" + else: + return "{" + ", ".join([f"{self.unroll_iter(a)}" for a in data]) + "}" + + def dataclass_str(self, cls): + return ", ".join([f"/* {a.name} */ {self.unroll_iter(getattr(cls, a.name))}" for a in fields(cls)]) + + def dataclass_arr(self, data_arr): + out = str() + for data in data_arr: + out += f"\t{{{self.dataclass_str(data)}}},\n" + out += "};\n\n" + return out + + def dataclass_write(self, data): + out = f"\t{self.dataclass_str(data)},\n" + out += "};\n\n" + return out + + def simple_write(self, data: Sequence, no_arr=False): + if not is_arr(data) or no_arr: + return f"{data}\n" + for dat in data: + return f"{dat}\n" + + # ------------------------------------------------------------------------ # Array Data parsing # ------------------------------------------------------------------------ @@ -425,18 +467,16 @@ def c_macro_split(self, macro: str) -> list[str]: # ------------------------------------------------------------------------ -# make something more generic here where user can supply their own function -def evaluate_macro(line: str): - props = bpy.context.scene.fast64.sm64.importer - if props.version in line: +def evaluate_macro(line: str, macro_check: str): + if macro_check in line: return False - if props.target in line: + if macro_check in line: return False return True # gets rid of comments, whitespace and macros in a file -def pre_parse_file(file: TextIO) -> list[str]: +def pre_parse_file(file: TextIO, macro_check: str) -> list[str]: multi_line_comment_regx = "/\*[^*]*\*+(?:[^/*][^*]*\*+)*/" file = re.sub(multi_line_comment_regx, "", file.read()) skip_macro = 0 # bool to skip during macros @@ -447,12 +487,12 @@ def pre_parse_file(file: TextIO) -> list[str]: line = line[:comment] # check for macro if "#if" in line: - skip_macro = evaluate_macro(line) + skip_macro = evaluate_macro(line, macro_check) if "#ifdef" in line: - skip_macro = evaluate_macro(line) + skip_macro = evaluate_macro(line, macro_check) continue if "#elif" in line: - skip_macro = evaluate_macro(line) + skip_macro = evaluate_macro(line, macro_check) continue if "#else" in line or "#endif" in line: skip_macro = 0 @@ -464,11 +504,11 @@ def pre_parse_file(file: TextIO) -> list[str]: # given an aggregate file that imports many files, find files with the name of type def parse_aggregate_file( - agg_file: TextIO, file_catches: tuple[callable], root_path: Path, aggregate_path: Path + agg_file: TextIO, file_catches: tuple[callable], root_path: Path, aggregate_path: Path, macro_check: str ) -> list[Path]: agg_file.seek(0) # so it may be read multiple times - file_lines = pre_parse_file(agg_file) + file_lines = pre_parse_file(agg_file, macro_check) # remove include and quotes remove = {"#include", '"', "'"} caught_files = [] @@ -499,9 +539,9 @@ def get_file_path(root_path: Path, include: str): # Search through a C file to find data of typeName[] and split it into a list # of data types with all comments removed -def get_data_types_from_file(file: TextIO, type_dict, collated=False): +def get_data_types_from_file(file: TextIO, type_dict, macro_check: str, collated=False): # from a raw file, create a dict of types. Types should all be arrays - file_lines = pre_parse_file(file) + file_lines = pre_parse_file(file, macro_check) array_bounds_regx = "\[[0-9a-fx]*\]" # basically [] with any valid number in it equality_regx = "\s*=" # finds the first char before the equals sign output_variables = {type_name: dict() for type_name in type_dict.keys()} @@ -546,6 +586,74 @@ def get_data_types_from_file(file: TextIO, type_dict, collated=False): ) +# Search through a C file to find data of struct/enum typeName{ }; +# merge this with the above function at some point +def get_enum_struct_data_from_file(file: TextIO, type_dict, macro_check: str, collated=False): + # from a raw file, create a dict of types. Types should all be arrays + file_lines = pre_parse_file(file, macro_check) + array_bounds_regx = "\[[0-9a-fx]*\]" # basically [] with any valid number in it + equality_regx = "\\s*=" # finds the first char before the equals sign + output_variables = {type_name: dict() for type_name in type_dict.keys()} + type_found = None + enum_found = None + var_dat_buffer = [] + for line in file_lines: + if type_found is not None: + # Check for end of array + if ";" in line: + output_variables[type_found.var_type][type_found.var_name] = CDataArray( + type_found.var_type, type_found.var_name, "".join(var_dat_buffer) + ) + type_found = None + var_dat_buffer = [] + else: + var_dat_buffer.append(line) + continue + # name ends at the array bounds, or the equals sign + match = re.search(array_bounds_regx, line, flags=re.IGNORECASE) + if not match: + match = re.search(equality_regx, line, flags=re.IGNORECASE) + type_collisions = [type_name for type_name in type_dict.keys() if type_name in line] + if match and type_collisions: + # there should ideally only be one collision + type_name = type_collisions[0] + # type_name plus any extra chars(non greedy) until a space + name_start = re.search(f"{type_name}.*?\\s", line, flags=re.IGNORECASE).span()[1] + variable_name = line[name_start : match.span()[0]].strip() + type_found = CDataArray(type_name, variable_name) + continue + # if no equals sign just check for line to have a '{' + # this is a bit hokey I think but it works for the current purposes + if type_collisions: + enum_found = type_collisions[0] + name_start = re.search(f"{enum_found}.*?\\s", line, flags=re.IGNORECASE) + # caught a typedef probably or var declaration + if not name_start or ";" in line or "(" in line: + enum_found = None + continue + name_start = name_start.span()[1] + # get var name + match = re.search("\\S+?\\b", line[name_start:], flags=re.IGNORECASE) + variable_name = match.group().strip() + enum_found = CDataArray(type_collisions[0], variable_name) + if enum_found is not None and "{" in line: + type_found = enum_found + enum_found = None + # Now remove newlines from each line, and then split macro ends + # This makes each member of the array a single macro or array + for data_type, delimiters in type_dict.items(): + for variable_name, data_array in output_variables[data_type].items(): + data_array.var_data = format_data_arr(data_array.var_data, delimiters) + output_variables[data_type][variable_name] = data_array + + # if collated, organize by data type, otherwise just take the various dicts raw + return ( + output_variables + if collated + else {vd_key: vd_value for var_dict in output_variables.values() for vd_key, vd_value in var_dict.items()} + ) + + # takes a raw string representing data and then formats it into an array def format_data_arr(raw_data: str, delimiters: tuple[str]) -> list[str]: raw_data = raw_data.replace("\n", "") From 9abec73d469bc647728927cd60ef476f8bc07e5d Mon Sep 17 00:00:00 2001 From: scut Date: Sat, 21 Feb 2026 22:45:51 -0500 Subject: [PATCH 25/30] removed old sm64 binary importers for f3d and geo layouts, fixed geo layout importing bone offsets and naming issues and various other geo issues --- fast64_internal/f3d/f3d_import.py | 6 +- fast64_internal/f3d/f3d_parser.py | 254 --- fast64_internal/sm64/__init__.py | 13 +- fast64_internal/sm64/sm64_geolayout_parser.py | 1639 ----------------- fast64_internal/sm64/sm64_level_importer.py | 37 +- fast64_internal/sm64/tools/operators.py | 19 +- 6 files changed, 43 insertions(+), 1925 deletions(-) delete mode 100644 fast64_internal/sm64/sm64_geolayout_parser.py diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 734228c97..3ef4edfd6 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -1605,7 +1605,7 @@ def gsDPLoadTextureBlock(self, macro: Macro): self.gsDPSetTextureImage(macro.partial(fmt, siz, 1, args[0])) self.gsDPSetTile(macro.partial(fmt, siz, 0, 0, 7, 0, args[7], args[9], args[11], args[6], args[8], args[10])) # self.gsDPLoadSync(macro) - self.gsDPLoadBlock(macro.partial(7, 0, 0, 0, 0)) # I don't need args + self.gsDPLoadBlock(macro.partial(7, 0, 0, "0", "0")) # I don't need args # self.gsDPPipeSync(macro) self.gsDPSetTile( macro.partial(fmt, siz, 0, 0, 0, args[5], args[7], args[9], args[11], args[6], args[8], args[10]) @@ -1626,7 +1626,7 @@ def _gsDPLoadTextureBlock(self, macro: Macro): self.gsDPSetTextureImage(macro.partial(fmt, siz, 1, args[0])) self.gsDPSetTile(macro.partial(fmt, siz, 0, 0, 7, 0, args[8], args[10], args[12], args[7], args[9], args[11])) # self.gsDPLoadSync(macro) - self.gsDPLoadBlock(macro.partial(7, 0, 0, 0, 0)) + self.gsDPLoadBlock(macro.partial(7, 0, 0, "0", "0")) # self.gsDPPipeSync(macro) self.gsDPSetTile( macro.partial(fmt, siz, 0, 0, 0, args[5], args[7], args[9], args[11], args[6], args[8], args[10]) @@ -1643,7 +1643,7 @@ def gsDPLoadTextureBlock_4b(self, macro: Macro): macro.partial(fmt, "G_IM_SIZ_16b", 0, 0, 7, 0, args[6], args[8], args[10], args[5], args[7], args[9]) ) # self.gsDPLoadSync(macro) - self.gsDPLoadBlock(macro.partial(7, 0, 0, 0, 0)) + self.gsDPLoadBlock(macro.partial(7, 0, 0, "0", "0")) # self.gsDPPipeSync(macro) self.gsDPSetTile( macro.partial(fmt, "G_IM_SIZ_4b", 0, 0, 0, args[4], args[3], args[8], args[10], args[3], args[7], args[9]) diff --git a/fast64_internal/f3d/f3d_parser.py b/fast64_internal/f3d/f3d_parser.py index 255d9905a..90437c6d6 100644 --- a/fast64_internal/f3d/f3d_parser.py +++ b/fast64_internal/f3d/f3d_parser.py @@ -32,260 +32,6 @@ from .f3d_material import RDPSettings -def cmdToPositiveInt(cmd): - return cmd if cmd >= 0 else 256 + cmd - - -def parseF3DBinary(romfile, startAddress, scene, bMesh, obj, transformMatrix, groupName, segmentData, vertexBuffer): - f3d = F3D("F3D") - currentAddress = startAddress - romfile.seek(currentAddress) - command = romfile.read(8) - - faceSeq = bMesh.faces - vertSeq = bMesh.verts - uv_layer = bMesh.loops.layers.uv.verify() - deform_layer = bMesh.verts.layers.deform.verify() - vertexGroup = getOrMakeVertexGroup(obj, groupName) - groupIndex = vertexGroup.index - - textureSize = [32, 32] - - currentTextureAddr = -1 - jumps = [startAddress] - - # Used for remove_double op at end - vertList = [] - - while len(jumps) > 0: - # FD, FC, B7 (tex, shader, geomode) - # print(format(command[0], '#04x') + ' at ' + hex(currentAddress)) - if command[0] == cmdToPositiveInt(f3d.G_TRI1): - try: - newVerts = interpretDrawTriangle( - command, vertexBuffer, faceSeq, vertSeq, uv_layer, deform_layer, groupIndex - ) - vertList.extend(newVerts) - except TypeError: - print("Ignoring triangle from unloaded vertices.") - - elif command[0] == cmdToPositiveInt(f3d.G_VTX): - interpretLoadVertices(romfile, vertexBuffer, transformMatrix, command, segmentData) - - # Note: size can usually be indicated in LoadTile / LoadBlock. - elif command[0] == cmdToPositiveInt(f3d.G_SETTILESIZE): - textureSize = interpretSetTileSize(int.from_bytes(command[4:8], "big")) - - elif command[0] == cmdToPositiveInt(f3d.G_DL): - if command[1] == 0: - jumps.append(currentAddress) - currentAddress = decodeSegmentedAddr(command[4:8], segmentData=segmentData) - romfile.seek(currentAddress) - command = romfile.read(8) - continue - - elif command[0] == cmdToPositiveInt(f3d.G_ENDDL): - currentAddress = jumps.pop() - - elif command[0] == cmdToPositiveInt(f3d.G_SETGEOMETRYMODE): - pass - elif command[0] == cmdToPositiveInt(f3d.G_SETCOMBINE): - pass - - elif command[0] == cmdToPositiveInt(f3d.G_SETTIMG): - currentTextureAddr = interpretSetTImage(command, segmentData) - - elif command[0] == cmdToPositiveInt(f3d.G_LOADBLOCK): - # for now only 16bit RGBA is supported. - interpretLoadBlock(command, romfile, currentTextureAddr, textureSize, "RGBA", 16) - - elif command[0] == cmdToPositiveInt(f3d.G_SETTILE): - interpretSetTile(int.from_bytes(command[4:8], "big"), None) - - else: - pass - # print(format(command[0], '#04x') + ' at ' + hex(currentAddress)) - - currentAddress += 8 - romfile.seek(currentAddress) - command = romfile.read(8) - - bmesh.ops.remove_doubles(bMesh, verts=vertList, dist=0.0001) - return vertexBuffer - - -def getPosition(vertexBuffer, index): - xStart = index * 16 + 0 - yStart = index * 16 + 2 - zStart = index * 16 + 4 - - xBytes = vertexBuffer[xStart : xStart + 2] - yBytes = vertexBuffer[yStart : yStart + 2] - zBytes = vertexBuffer[zStart : zStart + 2] - - x = int.from_bytes(xBytes, "big", signed=True) / bpy.context.scene.fast64.sm64.blender_to_sm64_scale - y = int.from_bytes(yBytes, "big", signed=True) / bpy.context.scene.fast64.sm64.blender_to_sm64_scale - z = int.from_bytes(zBytes, "big", signed=True) / bpy.context.scene.fast64.sm64.blender_to_sm64_scale - - return (x, y, z) - - -def getNormalorColor(vertexBuffer, index, isNormal=True): - xByte = bytes([vertexBuffer[index * 16 + 12]]) - yByte = bytes([vertexBuffer[index * 16 + 13]]) - zByte = bytes([vertexBuffer[index * 16 + 14]]) - wByte = bytes([vertexBuffer[index * 16 + 15]]) - - if isNormal: - x = int.from_bytes(xByte, "big", signed=True) - y = int.from_bytes(yByte, "big", signed=True) - z = int.from_bytes(zByte, "big", signed=True) - return (x, y, z) - - else: # vertex color - r = int.from_bytes(xByte, "big") / 255 - g = int.from_bytes(yByte, "big") / 255 - b = int.from_bytes(zByte, "big") / 255 - a = int.from_bytes(wByte, "big") / 255 - return (r, g, b, a) - - -def getUV(vertexBuffer, index, textureDimensions=[32, 32]): - uStart = index * 16 + 8 - vStart = index * 16 + 10 - - uBytes = vertexBuffer[uStart : uStart + 2] - vBytes = vertexBuffer[vStart : vStart + 2] - - u = int.from_bytes(uBytes, "big", signed=True) / 32 - v = int.from_bytes(vBytes, "big", signed=True) / 32 - - # We don't know texture size, so assume 32x32. - u /= textureDimensions[0] - v /= textureDimensions[1] - v = 1 - v - - return (u, v) - - -def interpretSetTile(data, texture): - clampMirrorFlags = bitMask(data, 18, 2) - - -def interpretSetTileSize(data): - hVal = bitMask(data, 0, 12) - wVal = bitMask(data, 12, 12) - - height = hVal >> 2 + 1 - width = wVal >> 2 + 1 - - return (width, height) - - -def interpretLoadVertices(romfile, vertexBuffer, transformMatrix, command, segmentData=None): - command = int.from_bytes(command, "big", signed=True) - - numVerts = bitMask(command, 52, 4) + 1 - startIndex = bitMask(command, 48, 4) - dataLength = bitMask(command, 32, 16) - segmentedAddr = bitMask(command, 0, 32) - - dataStartAddr = decodeSegmentedAddr(segmentedAddr.to_bytes(4, "big"), segmentData=segmentData) - - romfile.seek(dataStartAddr) - data = romfile.read(dataLength) - - for i in range(numVerts): - vert = Vector(readVectorFromShorts(data, i * 16)) - vert = transformMatrix @ vert - transformedVert = bytearray(6) - writeVectorToShorts(transformedVert, 0, vert) - - start = (startIndex + i) * 16 - vertexBuffer[start : start + 6] = transformedVert - vertexBuffer[start + 6 : start + 16] = data[i * 16 + 6 : i * 16 + 16] - - -# Note the divided by 0x0A, which is due to the way BF command stores indices. -# Without this the triangles are drawn incorrectly. -def interpretDrawTriangle(command, vertexBuffer, faceSeq, vertSeq, uv_layer, deform_layer, groupIndex): - verts = [None, None, None] - - index0 = int(command[5] / 0x0A) - index1 = int(command[6] / 0x0A) - index2 = int(command[7] / 0x0A) - - vert0 = Vector(getPosition(vertexBuffer, index0)) - vert1 = Vector(getPosition(vertexBuffer, index1)) - vert2 = Vector(getPosition(vertexBuffer, index2)) - - verts[0] = vertSeq.new(vert0) - verts[1] = vertSeq.new(vert1) - verts[2] = vertSeq.new(vert2) - - tri = faceSeq.new(verts) - - # Assign vertex group - for vert in tri.verts: - vert[deform_layer][groupIndex] = 1 - - loopIndex = 0 - for loop in tri.loops: - loop[uv_layer].uv = Vector(getUV(vertexBuffer, int(command[5 + loopIndex] / 0x0A))) - loopIndex += 1 - - return verts - - -def interpretSetTImage(command, levelData): - segmentedAddr = command[4:8] - return decodeSegmentedAddr(segmentedAddr, levelData) - - -def interpretLoadBlock(command, romfile, textureStart, textureSize, colorFormat, colorDepth): - numTexels = ((int.from_bytes(command[6:8], "big")) >> 12) + 1 - - # This is currently broken. - # createNewTextureMaterial(romfile, textureStart, textureSize, numTexels, colorFormat, colorDepth, obj) - - -def printvbuf(vertexBuffer): - for i in range(0, int(len(vertexBuffer) / 16)): - print(getPosition(vertexBuffer, i)) - print(getNormalorColor(vertexBuffer, i)) - print(getUV(vertexBuffer, i)) - - -def createBlankMaterial(obj): - material = createF3DMat(obj) - update_preset_manual(material, bpy.context) - - -def createNewTextureMaterial(romfile, textureStart, textureSize, texelCount, colorFormat, colorDepth, obj): - newMat = bpy.data.materials.new("f3d_material") - newTex = bpy.data.textures.new("f3d_texture", "IMAGE") - newImg = bpy.data.images.new("f3d_texture", *textureSize, True, True) - - newTex.image = newImg - newSlot = newMat.texture_slots.add() - newSlot.texture = newTex - - obj.data.materials.append(newMat) - - romfile.seek(textureStart) - texelSize = int(colorDepth / 8) - dataLength = texelCount * texelSize - textureData = romfile.read(dataLength) - - if colorDepth != 16: - print("Warning: Only 16bit RGBA supported, input was " + str(colorDepth) + "bit " + colorFormat) - else: - print(str(texelSize) + " " + str(colorDepth)) - for n in range(0, dataLength, texelSize): - oldPixel = textureData[n : n + texelSize] - newImg.pixels[n : n + 4] = read16bitRGBA(int.from_bytes(oldPixel, "big")) - - def math_eval(s, f3d): if isinstance(s, int): return s diff --git a/fast64_internal/sm64/__init__.py b/fast64_internal/sm64/__init__.py index 45af6aeb8..53b256d6f 100644 --- a/fast64_internal/sm64/__init__.py +++ b/fast64_internal/sm64/__init__.py @@ -47,13 +47,6 @@ sm64_obj_unregister, ) -from .sm64_geolayout_parser import ( - sm64_geo_parser_panel_register, - sm64_geo_parser_panel_unregister, - sm64_geo_parser_register, - sm64_geo_parser_unregister, -) - from .sm64_geolayout_writer import ( sm64_geo_writer_panel_register, sm64_geo_writer_panel_unregister, @@ -113,7 +106,6 @@ def sm64_panel_register(): sm64_cam_panel_register() sm64_obj_panel_register() sm64_import_panel_register() - sm64_geo_parser_panel_register() sm64_geo_writer_panel_register() sm64_spline_panel_register() sm64_dl_writer_panel_register() @@ -128,7 +120,6 @@ def sm64_panel_unregister(): sm64_cam_panel_unregister() sm64_obj_panel_unregister() sm64_import_panel_unregister() - sm64_geo_parser_panel_unregister() sm64_geo_writer_panel_unregister() sm64_spline_panel_unregister() sm64_dl_writer_panel_unregister() @@ -144,9 +135,8 @@ def sm64_register(register_panels: bool): sm64_bone_register() sm64_cam_register() sm64_obj_register() - sm64_geo_parser_register() - sm64_geo_writer_register() sm64_import_register() + sm64_geo_writer_register() sm64_level_register() sm64_spline_register() sm64_dl_writer_register() @@ -166,7 +156,6 @@ def sm64_unregister(unregister_panels: bool): sm64_bone_unregister() sm64_cam_unregister() sm64_obj_unregister() - sm64_geo_parser_unregister() sm64_geo_writer_unregister() sm64_level_unregister() sm64_spline_unregister() diff --git a/fast64_internal/sm64/sm64_geolayout_parser.py b/fast64_internal/sm64/sm64_geolayout_parser.py deleted file mode 100644 index 095dfa89e..000000000 --- a/fast64_internal/sm64/sm64_geolayout_parser.py +++ /dev/null @@ -1,1639 +0,0 @@ -import bpy, mathutils, math, bmesh, copy -from bpy.utils import register_class, unregister_class -from ..f3d.f3d_parser import createBlankMaterial, parseF3DBinary -from ..panels import SM64_Panel -from .sm64_level_parser import parse_level_binary -from .sm64_constants import enumLevelNames -from .sm64_geolayout_bone import enumShadowType -from .sm64_geolayout_utility import is_bone_animatable -from .sm64_geolayout_constants import getGeoLayoutCmdLength, nodeGroupCmds, GEO_BRANCH_STORE -from .sm64_utility import import_rom_checks - -from ..utility import ( - PluginError, - decodeSegmentedAddr, - raisePluginError, - bytesToHexClean, - bitMask, - readVectorFromShorts, - findStartBones, - readEulerVectorFromShorts, - readFloatFromShort, - doRotation, - prop_split, - sm64BoneUp, - geoNodeRotateOrder, - selectSingleObject, - deselectAllObjects, -) - -from .sm64_geolayout_utility import ( - createBoneGroups, - createBoneLayerMask, - getBoneGroupIndex, - addBoneToGroup, - boneLayers, -) - -from .sm64_geolayout_classes import ( - GEO_NODE_CLOSE, - GEO_END, - GEO_BRANCH, - GEO_RETURN, - GEO_NODE_OPEN, - GEO_START, - GEO_SWITCH, - GEO_TRANSLATE_ROTATE, - GEO_TRANSLATE, - GEO_ROTATE, - GEO_LOAD_DL_W_OFFSET, - GEO_BILLBOARD, - GEO_START_W_SHADOW, - GEO_CALL_ASM, - GEO_HELD_OBJECT, - GEO_SCALE, - GEO_START_W_RENDERAREA, - GEO_LOAD_DL, -) - - -blender_modes = {"OBJECT", "BONE"} - -# This geolayout parser is designed to rip armature / model. -# It will only handle transform/mesh related commands. -# For switch cases, only the first option will be chosen. - - -def parseGeoLayout( - romfile, - startAddress, - scene, - segmentData, - convertTransformMatrix, - useArmature, - ignoreSwitch, - shadeSmooth, -): - currentAddress = startAddress - romfile.seek(currentAddress) - - # Create new skinned mesh - # bpy.ops.object.mode_set(mode = 'OBJECT') - mesh = bpy.data.meshes.new("skinnned-mesh") - obj = bpy.data.objects.new("skinned", mesh) - scene.collection.objects.link(obj) - createBlankMaterial(obj) - - bMesh = bmesh.new() - bMesh.from_mesh(mesh) - - # Create new armature - if useArmature: - armature = bpy.data.armatures.new("Armature") - armatureObj = bpy.data.objects.new("ArmatureObj", armature) - armatureObj.show_in_front = True - armature.show_names = True - - bpy.context.scene.collection.objects.link(armatureObj) - bpy.context.view_layer.objects.active = armatureObj - bpy.ops.object.mode_set(mode="EDIT") - createBoneGroups(armatureObj) - else: - armatureObj = None - - # Parse geolayout - # Pretend that command starts with an 0x04 - currentAddress, armatureMeshGroups = parseNode( - romfile, - startAddress, - currentAddress - 4, - [0x04, 0x00], - [currentAddress], - convertTransformMatrix.to_4x4(), - bMesh, - obj, - armatureObj, - None, - ignoreSwitch, - False, - 0, - 0, - [None] * 16 * 16, - segmentData=segmentData, - ) - - armatureMeshGroups.insert(0, (armatureObj, bMesh, obj)) - - for i in range(len(armatureMeshGroups)): - listObj = armatureMeshGroups[i][2] - listBMesh = armatureMeshGroups[i][1] - listBMesh.to_mesh(listObj.data) - listBMesh.free() - listObj.data.update() - - if shadeSmooth: - if bpy.context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - selectSingleObject(listObj) - bpy.ops.object.shade_smooth() - - # Dont remove doubles here, as importing geolayout all at once results - # in some overlapping verts from different display lists. - # bmesh.ops.remove_doubles(bMesh, verts = bMesh.verts, dist = 0.000001) - - if useArmature: - # Set bone rotation mode. - for bone in armatureObj.pose.bones: - bone.rotation_mode = "XYZ" - - for i in range(len(armatureMeshGroups)): - obj = armatureMeshGroups[i][2] - switchArmatureObj = armatureMeshGroups[i][0] - # Apply mesh to armature. - if bpy.context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - deselectAllObjects() - obj.select_set(True) - switchArmatureObj.select_set(True) - bpy.context.view_layer.objects.active = switchArmatureObj - bpy.ops.object.parent_set(type="ARMATURE") - switchArmatureObj.matrix_world = switchArmatureObj.matrix_world @ mathutils.Matrix.Translation( - mathutils.Vector((3 * i, 0, 0)) - ) - - # Make Mario face forward. - # bpy.ops.object.select_all(action = 'DESELECT') - # armatureObj.select_set(True) - # bpy.ops.transform.rotate(value = math.radians(-90), orient_axis = 'X') - # bpy.ops.object.transform_apply() - - if bpy.app.version < (4, 0, 0) and useArmature: - armatureObj.data.layers[1] = True - - return armatureMeshGroups, armatureObj - - -# Every node is passed in the address of its OWN command. -# Every node returns the address AFTER the end of its processing extent. -# Make sure to NOT create blender objects if the node is being ignored. -def parseNode( - romfile, - geoStartAddress, - currentAddress, - currentCmd, - jumps, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreSwitch, - ignoreNode, - switchLevel, - switchCount, - vertexBuffer, - singleChild=False, - endCmd=GEO_NODE_CLOSE, - segmentData=None, -): - print("NODE " + hex(currentAddress)) - currentTransform = copy.deepcopy(currentTransform) - originalTransform = copy.deepcopy(currentTransform) - currentAddress += getGeoLayoutCmdLength(*currentCmd) - romfile.seek(currentAddress) - currentCmd = romfile.read(2) - armatureMeshGroups = [] - - # True if at least one complete node processed. - # This is used for switch cases. - nodeProcessed = False - - # True when a complete node group is processed. - # Certain commands like 0x13 will be grouped with a proceeding 0x4 commmand. - # However, they will stand individually if this is not the case. - # This distinction is important when handling switch cases. - completeNodeProcessed = False - - # In the case of branches in switches we must treat the branch as one option, - # not just the first node that is being branched to. - # We cannot treat a branch as a node because some branches don't return. - singleChildStack = [singleChild] - switchActive = False - localSwitchCount = 0 - - # a 0x13 command creates a bone, but we only use it as a parent if - # a 0x4 command follows. If another 0x13 command follows, we don't use it. - nextParentBoneName = parentBoneName - nextParentTransform = copy.deepcopy(currentTransform) - nodeIndex = [0] - while currentCmd[0] is not endCmd and currentCmd[0] is not GEO_END: - isSwitchOption = singleChildStack[-1] and nodeProcessed and completeNodeProcessed - - # Create a separate sub-armature for switch options. - if isSwitchOption: - switchCount += 1 - localSwitchCount += 1 - if ignoreSwitch: - ignoreNode = True - if not ignoreNode: - parentBoneName, armatureMeshTuple, currentTransform, nextParentTransform = createSwitchOption( - armatureObj, - parentBoneName, - format(nodeIndex[-1], "03") + "-switch_option", - currentTransform, - nextParentTransform, - switchLevel, - switchCount, - ) - armatureMeshGroups.append(armatureMeshTuple) - obj = armatureMeshTuple[2] - bMesh = armatureMeshTuple[1] - nextParentBoneName = parentBoneName - armatureObj = armatureMeshTuple[0] - switchLevel = switchCount - - if currentCmd[0] == GEO_BRANCH_STORE and not ignoreNode: # 0x00 - currentAddress = parseBranchStore(romfile, currentCmd, currentAddress, jumps, segmentData=segmentData) - singleChildStack.append(False) - nodeIndex.append(0) - elif currentCmd[0] == GEO_BRANCH and not ignoreNode: # 0x02 - currentAddress = parseBranch(romfile, currentCmd, currentAddress, jumps, segmentData=segmentData) - singleChildStack.append(False) - nodeIndex.append(0) - - elif currentCmd[0] == GEO_RETURN and not ignoreNode: # 0x03 - currentAddress = parseReturn(currentCmd, currentAddress, jumps) - singleChildStack = singleChildStack[:-1] - nodeIndex = nodeIndex[:-1] - - elif currentCmd[0] == GEO_NODE_OPEN: # 0x04 - # print(str(switchCount) + " - " + str(localSwitchCount) + " - " + \ - # str(switchLevel)) - currentAddress, newArmatureMeshGroups = parseNode( - romfile, - geoStartAddress, - currentAddress, - currentCmd, - jumps, - nextParentTransform, - bMesh, - obj, - armatureObj, - nextParentBoneName, - ignoreSwitch, - ignoreNode, - switchLevel, - switchCount, - vertexBuffer, - singleChild=switchActive, - segmentData=segmentData, - ) - armatureMeshGroups.extend(newArmatureMeshGroups) - switchActive = False - nextParentTransform = copy.deepcopy(currentTransform) - - elif currentCmd[0] == GEO_START: # 0x0B - currentAddress, nextParentBoneName, nextParentTransform = parseStart( - romfile, - currentAddress, - currentTransform, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - ) - - elif currentCmd[0] == GEO_SWITCH: # 0x0E - currentAddress, nextParentBoneName = parseSwitch( - romfile, - currentAddress, - currentTransform, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - ) - switchActive = True - - # We skip translate/rotate/scale nodes if before the first 0x13 node. - # This allows us to import model animations without having to transform keyframes. - elif currentCmd[0] == GEO_TRANSLATE_ROTATE: # 0x10 - currentAddress, nextParentBoneName, nextParentTransform = parseTranslateRotate( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - vertexBuffer, - ) - - elif currentCmd[0] == GEO_TRANSLATE: # 0x11 - currentAddress, nextParentBoneName, nextParentTransform = parseTranslate( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - vertexBuffer, - ) - - elif currentCmd[0] == GEO_ROTATE: # 0x12 - currentAddress, nextParentBoneName, nextParentTransform = parseRotate( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - vertexBuffer, - ) - - elif currentCmd[0] == GEO_LOAD_DL_W_OFFSET: # 0x13 - currentAddress, nextParentBoneName, nextParentTransform = parseDLWithOffset( - romfile, - currentAddress, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - currentCmd, - segmentData, - vertexBuffer, - ) - - elif currentCmd[0] == GEO_BILLBOARD: # 0x14 - currentAddress, nextParentBoneName, nextParentTransform = parseBillboard( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - vertexBuffer, - ) - - elif currentCmd[0] == GEO_LOAD_DL: # 0x15 - currentAddress = parseDL( - romfile, - currentAddress, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - currentCmd, - nodeIndex[-1], - segmentData, - vertexBuffer, - ) - - elif currentCmd[0] == GEO_START_W_SHADOW: # 0x16 - currentAddress, nextParentBoneName, nextParentTransform = parseShadow( - romfile, - currentAddress, - currentTransform, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - ) - - elif currentCmd[0] == GEO_CALL_ASM: # 0x18 - currentAddress = parseFunction( - romfile, - currentAddress, - currentTransform, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - ) - - elif currentCmd[0] == GEO_HELD_OBJECT: # 0x1C - currentAddress, nextParentTransform = parseHeldObject( - romfile, - currentAddress, - currentTransform, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - ) - - elif currentCmd[0] == GEO_SCALE: # 0x1D - currentAddress, nextParentBoneName, nextParentTransform = parseScale( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - vertexBuffer, - ) - - elif currentCmd[0] == GEO_START_W_RENDERAREA: # 0x20 - currentAddress, nextParentBoneName, nextParentTransform = parseStartWithRenderArea( - romfile, - currentAddress, - currentTransform, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex[-1], - segmentData, - ) - - else: - currentAddress += getGeoLayoutCmdLength(*currentCmd) - print("Unhandled command: " + hex(currentCmd[0])) - - nodeIndex[-1] += 1 - - romfile.seek(currentAddress) - previousCmdType = currentCmd[0] - currentCmd = romfile.read(2) - - if previousCmdType not in nodeGroupCmds or currentCmd[0] != GEO_NODE_OPEN: - completeNodeProcessed = True - nodeProcessed = True - else: - completeNodeProcessed = False - - if currentCmd[0] == GEO_END: - currentAddress = jumps.pop() - else: - currentAddress += getGeoLayoutCmdLength(*currentCmd) - return currentAddress, armatureMeshGroups - - -def generateMetarig(armatureObj): - armature = armatureObj.data - startBones = findStartBones(armatureObj) - createBoneGroups(armatureObj) - for boneName in startBones: - traverseArmatureForMetarig(armatureObj, boneName, None) - if bpy.app.version >= (4, 0, 0): - if not "visual" in armature.collections: - armature.collections.new(name="visual") - armature.collections["visual"].assign(armature.bones[boneName]) - else: - armatureObj.data.layers = createBoneLayerMask([boneLayers["visual"]]) - - if bpy.context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - - -def traverseArmatureForMetarig(armatureObj, boneName, parentName): - if bpy.context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - - armature = armatureObj.data - bone = armature.bones[boneName] - poseBone = armatureObj.pose.bones[boneName] - - if bpy.app.version >= (4, 0, 0): - if "Ignore" in bone.collections: - return - if is_bone_animatable(bone): - processBoneMeta(armatureObj, boneName, parentName) - nextParentName = boneName if is_bone_animatable(bone) else parentName - bone = armature.bones[boneName] # re-obtain reference after edit mode changes - childrenNames = [child.name for child in bone.children] - - else: - if poseBone.bone_group is None: - processBoneMeta(armatureObj, boneName, parentName) - elif poseBone.bone_group.name == "Ignore": - return - - poseBone = armatureObj.pose.bones[boneName] # re-obtain reference after edit mode changes - nextParentName = boneName if poseBone.bone_group is None else parentName - childrenNames = [child.name for child in poseBone.children] - - for childName in childrenNames: - traverseArmatureForMetarig(armatureObj, childName, nextParentName) - - -def processBoneMeta(armatureObj, boneName, parentName): - bpy.ops.object.mode_set(mode="EDIT") - bone = armatureObj.data.edit_bones[boneName] - armature = armatureObj.data - - # create meta bone, which the actual bone copies the rotation of - metabone = armatureObj.data.edit_bones.new("meta_" + boneName) - metabone.use_connect = False - metabone.head = bone.head - metabone.tail = bone.tail - metabone.roll = bone.roll - - # create visual bone, which visually connect parent bone to child - visualBone = armatureObj.data.edit_bones.new("vis_" + boneName) - visualBone.use_connect = False - visualBone.head = bone.head - visualBone.tail = bone.head + sm64BoneUp * 0.2 - metabone.parent = visualBone - - metaboneName = metabone.name - visualBoneName = visualBone.name - - if bpy.context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - poseBone = armatureObj.pose.bones[boneName] - metabonePose = armatureObj.pose.bones[metaboneName] - visualBonePose = armatureObj.pose.bones[visualBoneName] - - metabone = armatureObj.data.bones[metaboneName] - visualBone = armatureObj.data.bones[visualBoneName] - metabone.geo_cmd = "Ignore" - visualBone.geo_cmd = "Ignore" - - # apply rotation constraint - constraint = poseBone.constraints.new(type="COPY_ROTATION") - constraint.target = armatureObj - constraint.subtarget = metaboneName - - translateConstraint = poseBone.constraints.new(type="COPY_LOCATION") - translateConstraint.target = armatureObj - translateConstraint.subtarget = metaboneName - - if bpy.app.version >= (4, 0, 0): - if "meta" not in armature.collections: - armature.collections.new(name="meta") - armature.collections["meta"].assign(metabone) - - if not "visual" in armature.collections: - armature.collections.new(name="visual") - armature.collections["visual"].assign(visualBone) - - # Ignore collection should always be created, but check just in case - # (generateMetarig() calls createBoneGroups() before traverseArmatureForMetarig()) - if not "Ignore" in armature.collections: - armature.collections.new(name="Ignore") - armature.collections["Ignore"].assign(visualBone) - armature.collections["Ignore"].assign(metabone) - - else: - metabone.layers = createBoneLayerMask([boneLayers["meta"]]) - visualBone.layers = createBoneLayerMask([boneLayers["visual"]]) - - metabonePose.bone_group_index = getBoneGroupIndex(armatureObj, "Ignore") - visualBonePose.bone_group_index = getBoneGroupIndex(armatureObj, "Ignore") - - metabone.use_deform = False - metabonePose.lock_rotation = (True, True, True) - visualBone.use_deform = False - - bpy.ops.object.mode_set(mode="EDIT") - metabone = armatureObj.data.edit_bones[metaboneName] - visualBone = armatureObj.data.edit_bones[visualBoneName] - - if parentName is not None: - parentVisualBone = armatureObj.data.edit_bones["vis_" + parentName] - parentVisualBoneName = parentVisualBone.name - visualChildren = [child for child in parentVisualBone.children if child.name[:5] != "meta_"] - print(str(parentVisualBoneName) + " " + str([child.name for child in parentVisualBone.children])) - if len(visualChildren) == 0: - print("Zero children: " + str(visualBone.name)) - parentVisualBone.tail = visualBone.head - if parentVisualBone.length < 0.00001: - parentVisualBone.tail = parentVisualBone.head + sm64BoneUp * 0.1 - else: - visualBone.use_connect = True - visualBone.parent = parentVisualBone - - else: - print("Some children: " + str(visualBone.name) + " " + str([child.name for child in visualChildren])) - # If multiple children, make parent bone a "straight upward" - # bone, then add "connection" bones to connect children to parent - for child in visualChildren: - # if parentVisualBone.vector.angle(sm64BoneUp, 1) > 0.0001: - child.use_connect = False - parentVisualBone.tail = parentVisualBone.head + sm64BoneUp * 0.2 - # createConnectBone(armatureObj, child.name, parentVisualBoneName) - visualBone = armatureObj.data.edit_bones[visualBoneName] - parentVisualBone = armatureObj.data.edit_bones[parentVisualBoneName] - # createConnectBone(armatureObj, visualBone.name, - # parentVisualBone.name) - visualBone.use_connect = False - visualBone.parent = parentVisualBone - else: - pass # connect to root anim bone - - -def createConnectBone(armatureObj, childName, parentName): - armature = armatureObj.data - child = armatureObj.data.edit_bones[childName] - parent = armatureObj.data.edit_bones[parentName] - - connectBone = armatureObj.data.edit_bones.new("connect_" + child.name) - connectBoneName = connectBone.name - connectBone.head = parent.head - connectBone.use_connect = False - connectBone.parent = parent - connectBone.tail = child.head - child.use_connect = False - connectBone.use_deform = False - child.parent = connectBone - if (connectBone.head - connectBone.tail).length < 0.0001: - connectBone.tail = connectBone.head + sm64BoneUp * 0.2 - else: - child.use_connect = True - - if bpy.context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - connectPoseBone = armatureObj.pose.bones[connectBoneName] - connectBone = armatureObj.data.bones[connectBoneName] - - if bpy.app.version > (4, 0, 0): - if not "visual" in armature.collections: - armature.collections.new(name="visual") - armature.collections["visual"].assign(connectBone) - armature.collections["Ignore"].assign(connectBone) - else: - connectBone.layers = createBoneLayerMask([boneLayers["visual"]]) - connectPoseBone.bone_group_index = getBoneGroupIndex(armatureObj, "Ignore") - - connectPoseBone.lock_rotation = (True, True, True) - bpy.ops.object.mode_set(mode="EDIT") - - -def createBone(armatureObj, parentBoneName, boneName, currentTransform, boneGroup, loadDL): - if bpy.context.mode != "EDIT": - bpy.ops.object.mode_set(mode="EDIT") - edit_bone: bpy.types.EditBone = armatureObj.data.edit_bones.new(boneName) - boneName = edit_bone.name - edit_bone.use_connect = False - if parentBoneName is not None: - edit_bone.parent = armatureObj.data.edit_bones[parentBoneName] - edit_bone.head = currentTransform @ mathutils.Vector((0, 0, 0)) - edit_bone.tail = edit_bone.head + ( - currentTransform.to_quaternion() @ mathutils.Vector((0, 1, 0)) * (0.2 if boneGroup != "DisplayList" else 0.1) - ) - - # Connect bone to parent if it is possible without changing parent direction. - - if parentBoneName is not None: - nodeOffsetVector = mathutils.Vector(edit_bone.head - edit_bone.parent.head) - # set fallback to nonzero to avoid creating zero length bones - if nodeOffsetVector.angle(edit_bone.parent.tail - edit_bone.parent.head, 1) < 0.0001 and loadDL: - for child in edit_bone.parent.children: - if child != edit_bone: - child.use_connect = False - edit_bone.parent.tail = edit_bone.head - edit_bone.use_connect = True - elif edit_bone.head == edit_bone.parent.head and edit_bone.tail == edit_bone.parent.tail: - edit_bone.tail += currentTransform.to_quaternion() @ mathutils.Vector((0, 1, 0)) * 0.02 - - bpy.ops.object.mode_set(mode="OBJECT") - bone: bpy.types.Bone = armatureObj.data.bones[boneName] - bone.geo_cmd = boneGroup if boneGroup is not None else "DisplayListWithOffset" - addBoneToGroup(armatureObj, boneName) - - return boneName - - -def createSwitchOption( - armatureObj, switchBoneName, boneName, currentTransform, nextParentTransform, switchLevel, switchCount -): - bpy.ops.object.mode_set(mode="OBJECT") - deselectAllObjects() - # bpy.context.view_layer.objects.active = armatureObj - # bpy.ops.object.mode_set(mode="EDIT") - # bone = armatureObj.data.edit_bones.new(boneName) - # bone.use_connect = False - - # calculate transform - translation = mathutils.Matrix.Translation(mathutils.Vector((0, 3 * (switchCount - switchLevel), 0))) - translation = mathutils.Matrix.Translation((0, 0, 0)) - finalTransform = translation @ currentTransform - finalNextParentTransform = translation @ nextParentTransform - - # create armature - armature = bpy.data.armatures.new("Armature") - switchArmature = bpy.data.objects.new("armature_" + boneName, armature) - switchArmature.show_in_front = True - armature.show_names = True - - bpy.context.scene.collection.objects.link(switchArmature) - bpy.ops.object.mode_set(mode="POSE") - bpy.ops.object.mode_set(mode="OBJECT") - createBoneGroups(switchArmature) - bpy.context.view_layer.objects.active = switchArmature - # switchArmature.matrix_world = mathutils.Matrix.Translation( - # finalTransform.to_translation()) - bpy.ops.object.mode_set(mode="EDIT") - - # create switch option bone - bone = switchArmature.data.edit_bones.new(boneName) - bone.use_connect = False - bone.head = finalTransform @ mathutils.Vector((0, 0, 0)) - bone.tail = bone.head + currentTransform.to_quaternion() @ mathutils.Vector((0, 1, 0)) * 0.2 - - boneName = bone.name - bpy.ops.object.mode_set(mode="OBJECT") - bone = switchArmature.data.bones[boneName] - # poseBone = switchArmature.pose.bones[boneName] - switchBone = armatureObj.data.bones[switchBoneName] - - # rotConstraint = poseBone.constraints.new(type = 'COPY_ROTATION') - # rotConstraint.target = armatureObj - # rotConstraint.subtarget = switchBone.name - - bone.geo_cmd = "SwitchOption" - - # switchOption = switchBone.switch_options.add() - # switchOption.switchType = 'Mesh' - # switchOption.optionArmature = switchArmature - - # Create new mesh as well - mesh = bpy.data.meshes.new("skinnned-mesh") - obj = bpy.data.objects.new("skinned", mesh) - bpy.context.scene.collection.objects.link(obj) - obj.matrix_world = switchArmature.matrix_world - # material = createF3DMat(obj) - # material.node_tree.nodes['Case A 1'].inA = '1' - # material.set_env = False - - bMesh = bmesh.new() - bMesh.from_mesh(mesh) - - addBoneToGroup(switchArmature, boneName) - - return boneName, (switchArmature, bMesh, obj), finalTransform, finalNextParentTransform - - -def parseSwitch( - romfile, currentAddress, currentTransform, armatureObj, parentBoneName, ignoreNode, nodeIndex, segmentData -): - print("SWITCH " + hex(currentAddress)) - - commandSize = 8 - - if not ignoreNode: - romfile.seek(currentAddress) - command = romfile.read(commandSize) - funcParam = int.from_bytes(command[2:4], "big", signed=True) - switchFunc = bytesToHexClean(command[4:8]) - - boneName = format(nodeIndex, "03") + "-switch" - if armatureObj is not None: - boneName = createBone(armatureObj, parentBoneName, boneName, currentTransform, "Switch", False) - bone = armatureObj.data.bones[boneName] - bone.geo_func = switchFunc - bone.func_param = funcParam - else: - boneName = None - - currentAddress += commandSize - return currentAddress, boneName - - -def parseDL( - romfile, - currentAddress, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - currentCmd, - nodeIndex, - segmentData, - vertexBuffer, -): - drawLayer = bitMask(currentCmd[1], 0, 4) - - romfile.seek(currentAddress) - commandSize = 8 - command = romfile.read(commandSize) - - if not ignoreNode: - boneName = handleNodeCommon( - romfile, - armatureObj, - parentBoneName, - currentTransform, - True, - command, - segmentData, - bMesh, - obj, - nodeIndex, - "DisplayList", - vertexBuffer, - ) - if armatureObj is not None: - bone = armatureObj.data.bones[boneName] - bone.draw_layer = str(drawLayer) - - currentAddress += commandSize - return currentAddress - - -def parseDLWithOffset( - romfile, - currentAddress, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex, - currentCmd, - segmentData, - vertexBuffer, -): - print("DL_OFFSET " + hex(currentAddress)) - romfile.seek(currentAddress) - - command = romfile.read(getGeoLayoutCmdLength(*currentCmd)) - - drawLayer = command[1] - - translationVector = readVectorFromShorts(command, 2) - translation = mathutils.Matrix.Translation(mathutils.Vector(translationVector)) - finalTransform = currentTransform @ translation - - boneName = format(nodeIndex, "03") + "-offset" - - # Handle parent object and transformation - # Note: Since we are storing the world transform for each node, - # we must set the transforms in preorder traversal. - segmentedAddr = command[8:12] - hasMeshData = int.from_bytes(segmentedAddr, "big") != 0 - - if not ignoreNode: - if armatureObj is not None: - # Create bone - boneName = createBone(armatureObj, parentBoneName, boneName, finalTransform, None, hasMeshData) - if bpy.context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - bone = armatureObj.data.bones[boneName] - bone.draw_layer = str(drawLayer) - armatureObj.data.bones[boneName].use_deform = hasMeshData - bpy.ops.object.mode_set(mode="EDIT") - - # load mesh data - if hasMeshData: - displayListStartAddress = decodeSegmentedAddr(segmentedAddr, segmentData=segmentData) - # print(displayListStartAddress) - parseF3DBinary( - romfile, - displayListStartAddress, - bpy.context.scene, - bMesh, - obj, - finalTransform, - boneName, - segmentData, - vertexBuffer, - ) - - # Handle child objects - # Validate that next command is 04 (open node) - currentAddress += getGeoLayoutCmdLength(*currentCmd) - romfile.seek(currentAddress) # DONT FORGET THIS, FIXES PARENTING BUG - currentCmd = romfile.read(2) - - return currentAddress, boneName, finalTransform - - -def parseBranch(romfile, currentCmd, currentAddress, jumps, segmentData=None): - print("BRANCH " + hex(currentAddress)) - romfile.seek(currentAddress) - postJumpAddr = currentAddress + getGeoLayoutCmdLength(*currentCmd) - currentCmd = romfile.read(getGeoLayoutCmdLength(*currentCmd)) - - if currentCmd[1] == 1: - jumps.append(postJumpAddr) - currentAddress = decodeSegmentedAddr(currentCmd[4:8], segmentData=segmentData) - - return currentAddress - - -def parseBranchStore(romfile, currentCmd, currentAddress, jumps, segmentData=None): - print("BRANCH AND STORE " + hex(currentAddress)) - romfile.seek(currentAddress) - postJumpAddr = currentAddress + getGeoLayoutCmdLength(*currentCmd) - currentCmd = romfile.read(getGeoLayoutCmdLength(*currentCmd)) - - jumps.append(postJumpAddr) - currentAddress = decodeSegmentedAddr(currentCmd[4:8], segmentData=segmentData) - - return currentAddress - - -def parseReturn(currentCmd, currentAddress, jumps): - print("RETURN " + hex(currentAddress)) - currentAddress = jumps.pop() - return currentAddress - - -# Create bone and load geometry -def handleNodeCommon( - romfile, - armatureObj, - parentBoneName, - finalTransform, - loadDL, - command, - segmentData, - bMesh, - obj, - nodeIndex, - boneGroupName, - vertexBuffer, -): - boneName = format(nodeIndex, "03") + "-" + boneGroupName.lower() - - if armatureObj is not None: - # Create bone - boneName = createBone(armatureObj, parentBoneName, boneName, finalTransform, boneGroupName, loadDL) - - if loadDL: - segmentedAddr = command[-4:] - hasMeshData = int.from_bytes(segmentedAddr, "big") != 0 - if hasMeshData: - startAddress = decodeSegmentedAddr(segmentedAddr, segmentData) - parseF3DBinary( - romfile, - startAddress, - bpy.context.scene, - bMesh, - obj, - finalTransform, - boneName, - segmentData, - vertexBuffer, - ) - elif armatureObj is not None: - armatureObj.data.bones[boneName].use_deform = False - return boneName - - -def parseScale( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex, - segmentData, - vertexBuffer, -): - print("SCALE " + hex(currentAddress)) - - loadDL = bitMask(currentCmd[1], 7, 1) - drawLayer = bitMask(currentCmd[1], 0, 4) - - romfile.seek(currentAddress) - commandSize = 8 + (4 if loadDL else 0) - command = romfile.read(commandSize) - - scale = int.from_bytes(command[4:8], "big") / 0x10000 - # finalTransform = currentTransform @ mathutils.Matrix.Scale(scale, 4) - finalTransform = currentTransform # Don't apply to armature - - if not ignoreNode: - boneName = handleNodeCommon( - romfile, - armatureObj, - parentBoneName, - finalTransform, - loadDL, - command, - segmentData, - bMesh, - obj, - nodeIndex, - "Scale", - vertexBuffer, - ) - if armatureObj is not None: - bone = armatureObj.data.bones[boneName] - bone.draw_layer = str(drawLayer) - bone.geo_scale = scale - else: - boneName = None - - currentAddress += commandSize - return (currentAddress, boneName, finalTransform) - - -def parseTranslateRotate( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex, - segmentData, - vertexBuffer, -): - print("TRANSLATE_ROTATE " + hex(currentAddress)) - - loadDL = bitMask(currentCmd[1], 7, 1) - fieldLayout = bitMask(currentCmd[1], 4, 3) - drawLayer = bitMask(currentCmd[1], 0, 4) - - if fieldLayout == 0: - commandSize = 16 - elif fieldLayout == 1 or fieldLayout == 2: - commandSize = 8 - else: - commandSize = 4 - if loadDL: - commandSize += 4 - - romfile.seek(currentAddress) - command = romfile.read(commandSize) - - if fieldLayout == 0: - pos = readVectorFromShorts(command, 4) - rot = readEulerVectorFromShorts(command, 10) - - rotation = mathutils.Euler(rot, geoNodeRotateOrder).to_matrix().to_4x4() - translation = mathutils.Matrix.Translation(mathutils.Vector(pos)) - finalTransform = currentTransform @ translation @ rotation - - elif fieldLayout == 1: - pos = readVectorFromShorts(command, 2) - translation = mathutils.Matrix.Translation(mathutils.Vector(pos)) - finalTransform = currentTransform @ translation - - elif fieldLayout == 2: - rot = readEulerVectorFromShorts(command, 2) - rotation = mathutils.Euler(rot, geoNodeRotateOrder).to_matrix().to_4x4() - finalTransform = currentTransform @ rotation - - else: - yRot = readFloatFromShort(command, 2) - rotation = mathutils.Euler((0, yRot, 0), geoNodeRotateOrder).to_matrix().to_4x4() - finalTransform = currentTransform @ rotation - - if not ignoreNode: - boneName = handleNodeCommon( - romfile, - armatureObj, - parentBoneName, - finalTransform, - loadDL, - command, - segmentData, - bMesh, - obj, - nodeIndex, - "TranslateRotate", - vertexBuffer, - ) - if armatureObj is not None: - bone = armatureObj.data.bones[boneName] - bone.draw_layer = str(drawLayer) - - # Rotate Y complicates exporting code, so we treat it as Rotate. - if fieldLayout == 3: - fieldLayout = 2 - bone.field_layout = str(fieldLayout) - else: - boneName = None - - currentAddress += commandSize - - return (currentAddress, boneName, finalTransform) - - -def parseTranslate( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex, - segmentData, - vertexBuffer, -): - print("TRANSLATE " + hex(currentAddress)) - - loadDL = bitMask(currentCmd[1], 7, 1) - drawLayer = bitMask(currentCmd[1], 0, 4) - - if loadDL: - commandSize = 12 - else: - commandSize = 8 - - romfile.seek(currentAddress) - command = romfile.read(commandSize) - - pos = readVectorFromShorts(command, 2) - translation = mathutils.Matrix.Translation(mathutils.Vector(pos)) - finalTransform = currentTransform @ translation - - if not ignoreNode: - boneName = handleNodeCommon( - romfile, - armatureObj, - parentBoneName, - finalTransform, - loadDL, - command, - segmentData, - bMesh, - obj, - nodeIndex, - "Translate", - vertexBuffer, - ) - if armatureObj is not None: - bone = armatureObj.data.bones[boneName] - bone.draw_layer = str(drawLayer) - else: - boneName = None - - currentAddress += commandSize - - return (currentAddress, boneName, finalTransform) - - -def parseRotate( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex, - segmentData, - vertexBuffer, -): - print("ROTATE " + hex(currentAddress)) - - loadDL = bitMask(currentCmd[1], 7, 1) - drawLayer = bitMask(currentCmd[1], 0, 4) - - if loadDL: - commandSize = 12 - else: - commandSize = 8 - - romfile.seek(currentAddress) - command = romfile.read(commandSize) - - rot = readEulerVectorFromShorts(command, 2) - rotation = mathutils.Euler(rot, geoNodeRotateOrder).to_matrix().to_4x4() - finalTransform = currentTransform @ rotation - - if not ignoreNode: - boneName = handleNodeCommon( - romfile, - armatureObj, - parentBoneName, - finalTransform, - loadDL, - command, - segmentData, - bMesh, - obj, - nodeIndex, - "Rotate", - vertexBuffer, - ) - if armatureObj is not None: - bone = armatureObj.data.bones[boneName] - bone.draw_layer = str(drawLayer) - else: - boneName = None - - currentAddress += commandSize - return (currentAddress, boneName, finalTransform) - - -def parseBillboard( - romfile, - currentAddress, - currentCmd, - currentTransform, - bMesh, - obj, - armatureObj, - parentBoneName, - ignoreNode, - nodeIndex, - segmentData, - vertexBuffer, -): - print("BILLBOARD " + hex(currentAddress)) - - loadDL = bitMask(currentCmd[1], 7, 1) - drawLayer = bitMask(currentCmd[1], 0, 4) - - if loadDL: - commandSize = 12 - else: - commandSize = 8 - - romfile.seek(currentAddress) - command = romfile.read(commandSize) - - pos = readVectorFromShorts(command, 2) - translation = mathutils.Matrix.Translation(mathutils.Vector(pos)) - finalTransform = currentTransform @ translation - - if not ignoreNode: - boneName = handleNodeCommon( - romfile, - armatureObj, - parentBoneName, - finalTransform, - loadDL, - command, - segmentData, - bMesh, - obj, - nodeIndex, - "Billboard", - vertexBuffer, - ) - if armatureObj is not None: - bone = armatureObj.data.bones[boneName] - bone.draw_layer = str(drawLayer) - else: - boneName = None - - currentAddress += commandSize - - return (currentAddress, boneName, finalTransform) - - -def parseShadow( - romfile, currentAddress, currentTransform, armatureObj, parentBoneName, ignoreNode, nodeIndex, segmentData -): - print("SHADOW " + hex(currentAddress)) - commandSize = 8 - - romfile.seek(currentAddress) - command = romfile.read(commandSize) - shadowType = int.from_bytes(command[2:4], "big") - if str(shadowType) not in enumShadowType: - if shadowType > 12 and shadowType < 50: # Square Shadow - shadowType = 12 - elif shadowType > 50 and shadowType < 99: # Rectangle Shadow - shadowType = 50 - else: # Invalid shadow - shadowType = 0 - shadowSolidity = int.from_bytes(command[4:6], "big") - shadowScale = int.from_bytes(command[6:8], "big") - - if not ignoreNode: - boneName = format(nodeIndex, "03") + "-shadow" - if armatureObj is not None: - boneName = createBone(armatureObj, parentBoneName, boneName, currentTransform, "Shadow", False) - bone = armatureObj.data.bones[boneName] - bone.shadow_type = str(shadowType) - bone.shadow_solidity = shadowSolidity / 0xFF - bone.shadow_scale = shadowScale - else: - boneName = None - - currentAddress += commandSize - return currentAddress, boneName, copy.deepcopy(currentTransform) - - -def parseStart( - romfile, currentAddress, currentTransform, armatureObj, parentBoneName, ignoreNode, nodeIndex, segmentData -): - print("START " + hex(currentAddress)) - - commandSize = 4 - romfile.seek(currentAddress) - - if not ignoreNode: - boneName = format(nodeIndex, "03") + "-start" - if armatureObj is not None: - boneName = createBone(armatureObj, parentBoneName, boneName, currentTransform, "Start", False) - else: - boneName = None - - currentAddress += commandSize - return currentAddress, boneName, copy.deepcopy(currentTransform) - - -def parseStartWithRenderArea( - romfile, currentAddress, currentTransform, armatureObj, parentBoneName, ignoreNode, nodeIndex, segmentData -): - print("START W/ RENDER AREA" + hex(currentAddress)) - - commandSize = 4 - romfile.seek(currentAddress) - command = romfile.read(commandSize) - cullingRadius = int.from_bytes(command[2:4], "big") / bpy.context.scene.fast64.sm64.blender_to_sm64_scale - - if not ignoreNode: - boneName = format(nodeIndex, "03") + "-start_render_area" - if armatureObj is not None: - boneName = createBone(armatureObj, parentBoneName, boneName, currentTransform, "StartRenderArea", False) - bone = armatureObj.data.bones[boneName] - bone.geo_cmd = "StartRenderArea" - bone.culling_radius = cullingRadius - else: - boneName = None - - currentAddress += commandSize - return currentAddress, boneName, copy.deepcopy(currentTransform) - - -def parseFunction( - romfile, currentAddress, currentTransform, armatureObj, parentBoneName, ignoreNode, nodeIndex, segmentData -): - print("Function " + hex(currentAddress)) - - commandSize = 8 - - romfile.seek(currentAddress) - command = romfile.read(commandSize) - asmParam = int.from_bytes(command[2:4], "big", signed=True) - asmFunc = bytesToHexClean(command[4:8]) - - boneName = format(nodeIndex, "03") + "-asm" - if armatureObj is not None and not ignoreNode: - boneName = createBone(armatureObj, parentBoneName, boneName, currentTransform, "Function", False) - bone = armatureObj.data.bones[boneName] - bone.geo_func = asmFunc - bone.func_param = asmParam - - currentAddress += commandSize - return currentAddress - - -def parseHeldObject( - romfile, currentAddress, currentTransform, armatureObj, parentBoneName, ignoreNode, nodeIndex, segmentData -): - print("HELD OBJECT " + hex(currentAddress)) - commandSize = 12 - romfile.seek(currentAddress) - command = romfile.read(commandSize) - - pos = readVectorFromShorts(command, 2) - translation = mathutils.Matrix.Translation(mathutils.Vector(pos)) - finalTransform = currentTransform @ translation - asmFunc = bytesToHexClean(command[8:12]) - - if not ignoreNode: - boneName = format(nodeIndex, "03") + "-held_object" - if armatureObj is not None: - boneName = createBone(armatureObj, parentBoneName, boneName, finalTransform, "HeldObject", False) - bone = armatureObj.data.bones[boneName] - bone.geo_func = asmFunc - - currentAddress += commandSize - return currentAddress, finalTransform - - -def getMarioBoneName(startRelativeAddr, armatureData, default="sm64_mesh"): - try: - boneName = armatureData.findBoneByOffset(startRelativeAddr).name - return boneName - except Exception: - return default - - -def assignMarioGeoMetadata(obj, commandAddress, geoStartAddress, cmdType, armatureData, lastTransRotAddr=None): - # for geo_pointer reading offsets: - # cmd = 0 - # draw layer = 1 - # translation = 2 (for 0x13) - # display lists = 4 (for 0x15) or 8 (for 0x13) - sm64_geo_meta = { - "geo_start": geoStartAddress, - "geo_pointer_relative": commandAddress - geoStartAddress, - "geo_cmd_type": cmdType, - "geo_has_mesh": len(obj.data.loops) > 0, - "geo_top_overlap_ptr": None, - "geo_other_overlap_ptrs": [], - } - - # actual value doesn't matter, just a flag - if lastTransRotAddr is not None: - sm64_geo_meta["geo_trans_ptr"] = lastTransRotAddr - - obj["sm64_geo_meta"] = sm64_geo_meta - - if armatureData is not None: - obj["sm64_part_names"] = [armatureData.findBoneByOffset(commandAddress - geoStartAddress).name] - - -def handleOverlapGeoMetadata(bone): - parentBone = bone.parent - if parentBone is not None and "sm64_geo_meta" in parentBone: - # boneMeta = copyBlenderPropDict(bone['sm64_geo_meta']) - boneMeta = bone["sm64_geo_meta"] - parentBoneMeta = parentBone["sm64_geo_meta"] - - if parentBoneMeta["geo_top_overlap_ptr"] is None: - parentBoneMeta["geo_top_overlap_ptr"] = parentBoneMeta["geo_pointer_relative"] - - else: - # Done this way since we cannot deepcopy blender ID property arrays - parentBoneMeta["geo_other_overlap_ptrs"] = [ptr for ptr in parentBoneMeta["geo_other_overlap_ptrs"]] + [ - parentBoneMeta["geo_pointer_relative"] - ] - - parentBoneMeta["geo_pointer_relative"] = boneMeta["geo_pointer_relative"] - parentBoneMeta["geo_cmd_type"] = boneMeta["geo_cmd_type"] - parentBoneMeta["geo_has_mesh"] = boneMeta["geo_has_mesh"] - - bone["sm64_geo_meta"] = parentBoneMeta - del parentBone["sm64_geo_meta"] - - -# See SM64GeoLayoutPtrsByLevels.txt by VLTone -class SM64_ImportGeolayout(bpy.types.Operator): - # set bl_ properties - bl_idname = "object.sm64_import_geolayout" - bl_label = "Import Geolayout" - bl_options = {"REGISTER", "UNDO", "PRESET"} - - # Called on demand (i.e. button press, menu item) - # Can also be called from operator search menu (Spacebar) - def execute(self, context): - romfileSrc = None - try: - geoImportAddr = context.scene.geoImportAddr - generateArmature = context.scene.generateArmature - levelGeoImport = context.scene.levelGeoImport - ignoreSwitch = context.scene.ignoreSwitch - - # finalTransform = mathutils.Matrix.Rotation(math.radians(-90), 4, 'X') - finalTransform = mathutils.Matrix.Identity(4) - if context.mode != "OBJECT": - raise PluginError("Operator can only be used in object mode.") - except Exception as e: - raisePluginError(self, e) - return {"CANCELLED"} - try: - import_rom_checks(bpy.path.abspath(context.scene.fast64.sm64.import_rom)) - - romfileSrc = open(bpy.path.abspath(context.scene.fast64.sm64.import_rom), "rb") - - armatureObj = None - - # Get segment data - levelParsed = parse_level_binary(romfileSrc, levelGeoImport) - segmentData = levelParsed.segmentData - geoStart = int(geoImportAddr, 16) - if context.scene.geoIsSegPtr: - geoStart = decodeSegmentedAddr(geoStart.to_bytes(4, "big"), segmentData) - - # Armature mesh groups includes armatureObj. - armatureMeshGroups, armatureObj = parseGeoLayout( - romfileSrc, - geoStart, - context.scene, - segmentData, - finalTransform, - generateArmature, - ignoreSwitch, - True, - ) - romfileSrc.close() - - deselectAllObjects() - if armatureObj is not None: - for armatureMeshGroup in armatureMeshGroups: - armatureMeshGroup[0].select_set(True) - doRotation(math.radians(-90), "X") - - for armatureMeshGroup in armatureMeshGroups: - selectSingleObject(armatureMeshGroup[0]) - bpy.ops.object.make_single_user(obdata=True) - bpy.ops.object.transform_apply(location=False, rotation=True, scale=False, properties=False) - else: - doRotation(math.radians(-90), "X") - deselectAllObjects() - # objs[-1].select_set(True) - - self.report({"INFO"}, "Generic import succeeded.") - return {"FINISHED"} # must return a set - - except Exception as e: - if context.mode != "OBJECT": - bpy.ops.object.mode_set(mode="OBJECT") - - if romfileSrc is not None: - romfileSrc.close() - raisePluginError(self, e) - return {"CANCELLED"} # must return a set - - -class SM64_ImportGeolayoutPanel(SM64_Panel): - bl_idname = "SM64_PT_import_geolayout" - bl_label = "SM64 Geolayout Importer" - goal = "Object/Actor/Anim" - import_panel = True - - # called every frame - def draw(self, context): - col = self.layout.column() - propsGeoI = col.operator(SM64_ImportGeolayout.bl_idname) - - # col.prop(context.scene, 'rotationOrder') - # col.prop(context.scene, 'rotationAxis') - # col.prop(context.scene, 'rotationAngle') - prop_split(col, context.scene, "geoImportAddr", "Start Address") - col.prop(context.scene, "geoIsSegPtr") - col.prop(context.scene, "levelGeoImport") - col.prop(context.scene, "generateArmature") - col.prop(context.scene, "ignoreSwitch") - if not context.scene.ignoreSwitch: - boxLayout = col.box() - boxLayout.label(text="WARNING: May take a long time.") - boxLayout.label(text="Switch nodes won't be setup.") - col.box().label(text="Only Fast3D mesh importing allowed.") - - -sm64_geo_parser_classes = (SM64_ImportGeolayout,) - -sm64_geo_parser_panel_classes = (SM64_ImportGeolayoutPanel,) - - -def sm64_geo_parser_panel_register(): - for cls in sm64_geo_parser_panel_classes: - register_class(cls) - - -def sm64_geo_parser_panel_unregister(): - for cls in sm64_geo_parser_panel_classes: - unregister_class(cls) - - -def sm64_geo_parser_register(): - for cls in sm64_geo_parser_classes: - register_class(cls) - - bpy.types.Scene.geoImportAddr = bpy.props.StringProperty(name="Start Address", default="1F1D60") - bpy.types.Scene.generateArmature = bpy.props.BoolProperty(name="Generate Armature?", default=True) - bpy.types.Scene.levelGeoImport = bpy.props.EnumProperty(items=enumLevelNames, name="Level", default="hmc") - bpy.types.Scene.ignoreSwitch = bpy.props.BoolProperty(name="Ignore Switch Nodes", default=True) - - -def sm64_geo_parser_unregister(): - for cls in reversed(sm64_geo_parser_classes): - unregister_class(cls) - - del bpy.types.Scene.generateArmature - del bpy.types.Scene.geoImportAddr - del bpy.types.Scene.levelGeoImport - del bpy.types.Scene.ignoreSwitch diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index e02b30618..ce437efd0 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -1321,7 +1321,7 @@ def new_subclass_dyn_c( "pass_linked_export", ) for line in geo_layout: - if "GEO_ANIMATED_PART" in line: + if "GEO_ANIMATED_PART" in line or "GEO_SWITCH_CASE" in line: name = f"Actor {layout_name}" arm_obj = bpy.data.objects.new(name, bpy.data.armatures.new(name)) col.objects.link(arm_obj) @@ -1383,7 +1383,7 @@ def parse_layer(self, layer: str) -> int: @property def ordered_name(self) -> str: - return f"{self.get_parser(self.stream[-1]).head}_{self.name}" + return f"{self.get_parser(self.stream[-1]).head:04}_{self.name}" @property def first_obj(self) -> bpy.types.Object: @@ -1694,7 +1694,7 @@ def GEO_BACKGROUND_COLOR(self, macro: Macro, depth: int): class GeoLayout(GraphNodes): switch = "Switch" - translate_rotate = "Geo Translate/Rotat" + translate_rotate = "Geo Translate/Rotate" translate = "Geo Translate Node" rotate = "Geo Rotation Node" billboard = "Geo Billboard" @@ -1703,7 +1703,6 @@ class GeoLayout(GraphNodes): asm = "Geo ASM" scale = "Geo Scale" animated_part = "Geo Translate Node" - custom_animated = "Custom" custom = "Custom" def __init__( @@ -1932,6 +1931,7 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): pass_args=self.pass_args, ) GeoChild.parent_transform = self.last_transform + GeoChild.last_transform = self.last_transform GeoChild.parse_stream(self.get_new_stream(self.stream[-1]), self.stream[-1], depth + 1) self.children.append(GeoChild) return self._continue_parse @@ -1951,8 +1951,7 @@ class GeoArmature(GraphNodes): scale = "Scale" render_area = "StartRenderArea" animated_part = "DisplayListWithOffset" - custom_animated = "CustomAnimated" - custom = "CustomNonAnimated" + custom = "Custom" def __init__( self, @@ -2004,6 +2003,8 @@ def get_or_init_geo_armature(self): name = f"{self.ordered_name} switch_option" switch_armature = bpy.data.objects.new(name, bpy.data.armatures.new(name)) self.col.objects.link(switch_armature) + # offset the location + switch_armature.location += Vector((2.0 * self.switch_index, 0, 0)) self.switch_armatures[self.switch_index] = switch_armature self.enter_edit_mode(switch_armature) @@ -2061,7 +2062,7 @@ def make_root(self, name: str): eb_name = edit_bone.name # give it a non zero length edit_bone.head = (0, 0, 0) - edit_bone.tail = (0, 0, 1) + edit_bone.tail = (0, 0, 0.1) # use self.switch_option_bone as parent, this does not logically follow from sm64 graph # but is due to fast64 rules, where switch option acts as "virtual" bone in between child and parent if self.switch_option_bone or self.parent_bone: @@ -2112,9 +2113,10 @@ def GEO_SHADOW(self, macro: Macro, depth: int): # cmd not supported in fast64 for some reason? def GEO_RENDER_RANGE(self, macro: Macro, depth: int): - geo_bone = self.setup_geo_obj("render_range", self.custom) - geo_bone.fast64.sm64.custom_geo_cmd_macro = "GEO_RENDER_RANGE" - geo_bone.fast64.sm64.custom_geo_cmd_args = ",".join(macro.args[-2:]) + # don't bother tbh + # geo_bone = self.setup_geo_obj("render_range", self.custom) + # geo_bone.fast64.sm64.custom.dl_command = "GEO_RENDER_RANGE" + # geo_bone.fast64.sm64.custom_geo_cmd_args = ",".join(macro.args[-2:]) return self._continue_parse # can switch children have their own culling radius? does it have to @@ -2195,6 +2197,7 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): stream=self.stream, ) GeoChild.parent_transform = self.last_transform + GeoChild.last_transform = self.last_transform GeoChild.parse_stream(self.get_new_stream(self.stream[-1]), self.stream[-1], depth + 1) self.children.append(GeoChild) return self._continue_parse @@ -2343,14 +2346,14 @@ def glob_models_in_arm(object_dict: dict, geo_armature: GeoArmature): for armature_obj, objects in objects_by_armature.items(): # I don't really know the specific override needed for this to work - override = {**bpy.context.copy(), "selected_editable_objects": objects, "active_object": objects[0]} - with bpy.context.temp_override(**override): - bpy.ops.object.join() + if len(objects) > 1: + override = {**bpy.context.copy(), "selected_editable_objects": objects, "active_object": objects[0]} + with bpy.context.temp_override(**override): + bpy.ops.object.join() obj = objects[0] - parentObject(armature_obj, obj) - obj.scale *= 1 / scene.fast64.sm64.blender_to_sm64_scale - rotate_object(-90, obj) + obj.location += armature_obj.location + parentObject(armature_obj, obj, keep=1) obj.ignore_collision = True # armature deform mod = obj.modifiers.new("deform", "ARMATURE") @@ -2816,6 +2819,7 @@ def execute(self, context): ) if props.import_target == "C": + print(props.geo_layout) geo_layout = find_actor_models_from_geo( geo_paths, props.geo_layout, scene, decomp_path, col=rt_col ) # return geo layout class and write the geo layout @@ -3202,6 +3206,7 @@ def geo_layout(self): else: preset_full = self.get_actor_preset() model_info = preset_full.get_model_info(self.actor_preset) + print(f"preset: {self.actor_preset}, geo: {model_info.geolayout:08x}") return convert_addr_to_func(f"{model_info.geolayout:08x}") @property diff --git a/fast64_internal/sm64/tools/operators.py b/fast64_internal/sm64/tools/operators.py index 01e82f549..efea81599 100644 --- a/fast64_internal/sm64/tools/operators.py +++ b/fast64_internal/sm64/tools/operators.py @@ -14,7 +14,6 @@ from ..sm64_utility import import_rom_checks, int_from_str from ..sm64_level_parser import parse_level_binary from ..sm64_geolayout_utility import createBoneGroups -from ..sm64_geolayout_parser import generateMetarig enum_address_conversion_options = [ ("TO_VIR", "Segmented To Virtual", "Convert address from segmented to virtual"), @@ -80,6 +79,24 @@ def execute_operator(self, context: Context): self.report({"INFO"}, "Created bone groups.") +# TODO find new spot for this? +def generateMetarig(armatureObj): + armature = armatureObj.data + startBones = findStartBones(armatureObj) + createBoneGroups(armatureObj) + for boneName in startBones: + traverseArmatureForMetarig(armatureObj, boneName, None) + if bpy.app.version >= (4, 0, 0): + if not "visual" in armature.collections: + armature.collections.new(name="visual") + armature.collections["visual"].assign(armature.bones[boneName]) + else: + armatureObj.data.layers = createBoneLayerMask([boneLayers["visual"]]) + + if bpy.context.mode != "OBJECT": + bpy.ops.object.mode_set(mode="OBJECT") + + class SM64_CreateMetarig(OperatorBase): bl_description = ( "SM64 imported armatures are usually not good for " From 6e9746c0f49b4a2456150b4e146c2df7a87ea8c6 Mon Sep 17 00:00:00 2001 From: scut Date: Sun, 22 Feb 2026 20:42:10 -0500 Subject: [PATCH 26/30] fixed actor presets not working due to duplicate keys in function map, fixed actors that had common group models not having proper context --- fast64_internal/sm64/sm64_function_map.py | 113081 ++++++++--------- fast64_internal/sm64/sm64_level_importer.py | 12 +- fast64_internal/sm64/sm64_utility.py | 10 +- 3 files changed, 56311 insertions(+), 56792 deletions(-) diff --git a/fast64_internal/sm64/sm64_function_map.py b/fast64_internal/sm64/sm64_function_map.py index af3f3d604..896509e6a 100644 --- a/fast64_internal/sm64/sm64_function_map.py +++ b/fast64_internal/sm64/sm64_function_map.py @@ -2,56812 +2,56319 @@ func_map = { "Refresh 3": { - "80000300": "osTvType", - "80000308": "osRomBase", - "8000030c": "osResetType", - "80000318": "osMemSize", - "8000031c": "osAppNmiBuffer", - "80000400": "gZBuffer", - "80000000": "D_80000000", - "a4000000": "D_A4000000", - "a40004c0": "D_A40004C0", - "a4000774": "D_A4000774", - "a4001000": "D_A4001000", - "a4040010": "D_A4040010", - "a4080000": "D_A4080000", - "a4300000": "D_A4300000", - "a4300004": "D_A4300004", - "a4300008": "D_A4300008", - "a430000c": "D_A430000C", - "a4400010": "D_A4400010", - "a450000c": "D_A450000C", - "a4600000": "D_A4600000", - "a4600004": "D_A4600004", - "a460000c": "D_A460000C", - "a4600010": "D_A4600010", - "a4700000": "D_A4700000", - "a4700010": "D_A4700010", - "a4800018": "D_A4800018", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802ef700": "__osGetCurrFaultedThread", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "EntryPoint", - "80246050": "handle_debug_key_sequences", - "80246170": "Unknown80246170", - "802461cc": "Dummy802461CC", - "802461dc": "Dummy802461DC", - "802461ec": "Dummy802461EC", - "802461fc": "setup_mesg_queues", - "802462e0": "AllocPool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "SendMessage", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "Main", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "func_80247D84", - "80247f08": "func_80247ED8", - "80247fdc": "func_80247FAC", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "func_80248C10", - "80248c58": "func_80248C28", - "80248ce8": "func_80248CB8", - "80248d78": "func_80248D48", - "80248dc0": "func_80248D90", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "func_802491FC", - "8024927c": "func_8024924C", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_paused", - "80249764": "set_play_mode", - "8024978c": "func_8024975C", - "802497b8": "func_80249788", - "8024982c": "nop_802497FC", - "8024983c": "func_8024980C", - "8024995c": "func_8024992C", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "func_8024A02C", - "8024a18c": "func_8024A094", - "8024a1d8": "func_8024A0E0", - "8024a374": "check_instant_warp", - "8024a584": "func_8024A48C", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "func_8024D664", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "func_8024FC94", - "8024ff04": "func_8024FD2C", - "80250098": "func_8024FEC0", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "nop_80254E3C", - "802550b0": "nop_80254E50", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "BehEndPeachLoop", - "802570dc": "BehEndToadLoop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "func_8025F0DC", - "8025f560": "func_8025F188", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "func_802604E0", - "80260aac": "func_802606DC", - "80260cb4": "act_idle", - "80260f94": "func_80260BC4", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "func_802615C4", - "80261ad0": "func_802616C4", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "func_80261C74", - "8026217c": "func_80261D70", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "func_80261F8C", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "func_80262574", - "80262bc4": "func_802627B8", - "80262c34": "func_80262828", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "func_80262CEC", - "802631f0": "func_80262DE4", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "func_80263378", - "80263898": "mario_execute_stationary_action", - "80263e60": "func_80263A50", - "80263ee4": "func_80263AD4", - "80264024": "func_80263C14", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "func_802652F0", - "80265b1c": "func_8026570C", - "80265d90": "func_80265980", - "80265df8": "func_802659E8", - "80266038": "func_80265C28", - "802661cc": "func_80265DBC", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "func_80267814", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "func_u_8026A090", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "func_8026CDFC", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_enfvx_main", - "802763d4": "geo_skybox_main", - "802764b0": "Geo18_802764B0", - "8027684c": "bhvToadMessage_loop", - "80276910": "bhvToadMessage_init", - "80276bb8": "bhvUnlockDoorStar_init", - "80276ccc": "bhvUnlockDoorStar_loop", - "802770a4": "Geo18_802770A4", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "Geo18_80277294", - "802773a4": "Geo18_802773A4", - "802774f4": "geo_switch_mario_hand", - "802775cc": "Geo18_802775CC", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "Geo18_80277824", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "func_80278304", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "func_80278AD4", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "func_8027A220", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "func_8027A478", - "8027aa74": "func_8027A4C4", - "8027ab04": "clear_areas", - "8027ad74": "func_8027A7C4", - "8027ae44": "load_area", - "8027af48": "func_8027A998", - "8027afbc": "load_mario_area", - "8027b038": "func_8027AA88", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake", - "8027f8b8": "set_camera_shake_2", - "8027f9f0": "func_8027F440", - "8027fb74": "unused_set_camera_shake", - "8027fc18": "return_height_above_floor", - "8027fe20": "set_cam_focus_and_pos_rel_mario", - "8027fff8": "set_camera_height", - "80280368": "return_pitch_parallel_floor", - "802804f4": "func_8027FF44", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "return_open_camera_yaw", - "80280970": "return_platform_camera_yaw", - "80280b00": "func_80280550", - "80281188": "func_80280BD8", - "802813bc": "func_80280E0C", - "802813ec": "func_80280E3C", - "8028146c": "update_open_camera", - "80281588": "update_platform_level_camera", - "802816a0": "return_reverse_tower_camera_yaw", - "802817fc": "update_reverse_tower_camera", - "80281904": "return_parallel_tracking_camera_yaw", - "80282280": "return_fixed_camera_yaw", - "802826a0": "return_boss_fight_camera_yaw", - "80282c0c": "unused_return_mode_5_camera_yaw", - "80282c28": "unused_80282678", - "80282c3c": "update_boss_fight_camera", - "80282c7c": "update_parallel_tracking_camera", - "80282ce0": "update_fixed_camera", - "80282d78": "return_behind_mario_camera_yaw", - "80283340": "return_behind_mario_water_camera_yaw", - "80283578": "return_slide_camera_yaw", - "802839e4": "update_behind_mario_camera", - "80283a18": "nop_return_water_camera_yaw", - "80283a34": "update_water_surface_camera", - "80283a68": "return_mario_yaw", - "80283af8": "return_close_or_free_roam_cam_yaw", - "80284cb8": "update_close_or_free_roam_camera", - "80284cfc": "camera_lakitu_zoom_distance", - "80284d38": "camera_mario_zoom_distance", - "80284d74": "return_spiral_stairs_camera_yaw", - "802850ac": "update_spiral_stairs_camera", - "802850ec": "return_slide_or_0f_camera_yaw", - "802851dc": "update_slide_camera", - "8028526c": "func_80284CBC", - "802852f4": "func_80284D44", - "80285370": "exit_c_up_mode", - "80285808": "return_first_person_camera_yaw", - "802858a4": "operate_c_up_looking", - "80285a2c": "func_8028547C", - "80285d20": "update_c_up_camera", - "80285ed8": "return_cannon_camera_yaw", - "80285f60": "update_cannon_camera", - "8028603c": "init_transitional_movement", - "80286088": "set_camera_preset", - "80286188": "func_80285BD8", - "80286420": "func_80285E70", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "func_80287404", - "80287bc4": "select_mario_cam_mode", - "80287be0": "func_802875F8", - "80287cb8": "func_802876D0", - "80287d30": "geo_camera_preset_and_pos", - "80287dc0": "dummy_802877D8", - "80287dd4": "dummy_802877EC", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "select_or_activate_mario_cam", - "80288718": "test_or_set_mario_cam_active", - "80288888": "set_spline_values", - "802889b0": "set_face_angle_from_spline", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_status", - "80288f5c": "find_and_return_count_wall_collisions", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_exponential", - "802893f4": "approach_f32_exponential_bool", - "80289488": "approach_f32_exponential", - "802894b4": "approach_s16_exponential_bool", - "8028956c": "approach_s16_exponential", - "80289610": "approach_vec3f_exponential", - "80289684": "set_or_approach_vec3f_exponential", - "802896f8": "approach_vec3s_exponential", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "func_80289738", - "80289f88": "clamp_positions_and_find_yaw_angle", - "8028a080": "func_80289A98", - "8028a0f4": "is_pos_less_than_bounds", - "8028a4ec": "is_behind_surface", - "8028a6bc": "func_8028A0D4", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "check_if_vector_fits_in_bounds", - "8028aa28": "calculate_verticle_angle", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "func_8028AA80", - "8028b11c": "Unknown8028AB34", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "func_8028AF24", - "8028b724": "func_8028B13C", - "8028b754": "func_8028B16C", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "func_8028B36C", - "8028b9c4": "func_8028B3DC", - "8028bd34": "stop_mario", - "8028bd98": "handle_c_button_movement", - "8028c038": "func_8028BA38", - "8028c13c": "set_camera_cutscene_table", - "8028c18c": "determine_star_fadeout_cutscene_table", - "8028c26c": "return_table_door_push_or_pull", - "8028c2c8": "return_cutscene_table", - "8028c7a0": "instant_warp_camera_update", - "8028c8f0": "approach_camera_height", - "8028c9ac": "Unknown8028C3AC", - "8028c9cc": "set_focus_position", - "8028cbf0": "set_pos_from_face_angle_and_vec3f", - "8028cd94": "set_pos_from_face_angle_and_rel_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "func_8028C824", - "8028d44c": "set_camera_preset_fixed_ref_point", - "8028d5ac": "set_camera_preset_platform_level", - "8028d5fc": "set_camera_preset_boss_fight", - "8028d658": "set_camera_preset_close_cam", - "8028d698": "set_camera_preset_open_camera", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "func_8028D32C", - "8028da18": "CameraRR00", - "8028da50": "CameraRR04", - "8028daec": "CameraRR02", - "8028db38": "CameraRR0305", - "8028dbb4": "CameraRR01", - "8028dbf4": "CameraCotMC00", - "8028dc1c": "CameraSL00", - "8028dc70": "camera_change_set_free_roam_mode", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "camera_change_hmc_maze_entrance", - "8028de2c": "CameraHMC02", - "8028de5c": "CameraHMC03", - "8028de90": "CameraHMC04", - "8028dec4": "CameraHMC05", - "8028def8": "CameraSSL00", - "8028df24": "CameraSSL0102", - "8028df6c": "CameraSSL03", - "8028dfb4": "CameraTHI00", - "8028dfe8": "CameraTHI01", - "8028e01c": "CameraRR07", - "8028e064": "CameraRR08", - "8028e098": "camera_change_hmc_cotmc_pool_entry", - "8028e0ec": "CameraInside20", - "8028e164": "CameraInside1E", - "8028e210": "CameraInside1F", - "8028e298": "CameraInside01", - "8028e300": "CameraInside1213", - "8028e38c": "CameraInside00", - "8028e3b8": "CameraInside0E", - "8028e3f0": "CameraInside0F", - "8028e41c": "bbh_room_6_camera", - "8028e450": "CameraBBH24", - "8028e47c": "CameraBBH2E2F", - "8028e524": "bbh_room_1_camera", - "8028e55c": "CameraBBH01", - "8028e594": "bbh_room_2_lower_camera", - "8028e5cc": "bbh_room_4_camera", - "8028e604": "bbh_room_8_camera", - "8028e63c": "bbh_room_5_library_camera", - "8028e674": "bbh_room_5_library_to_hidden_transition", - "8028e6c4": "bbh_room_5_hidden_to_library_transition", - "8028e714": "bbh_room_5_hidden_camera", - "8028e758": "bbh_room_3_camera", - "8028e790": "bbh_room_7_mr_i_camera", - "8028e7c8": "bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "CameraBBH3033", - "8028e8a0": "CameraBBH34", - "8028e8cc": "CameraBBH38", - "8028e930": "bbh_room_12_upper_camera", - "8028e974": "CameraBBH00", - "8028e9a0": "bbh_room_2_library_camera", - "8028e9d8": "bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "bbh_room_2_trapdoor_camera", - "8028ea60": "bbh_room_2_trapdoor_transition", - "8028eab0": "bbh_room_9_attic_camera", - "8028eae8": "bbh_room_9_attic_transition", - "8028eb38": "bbh_room_9_mr_i_transition", - "8028eb88": "bbh_room_13_balcony_camera", - "8028ebc0": "bbh_room_0_camera", - "8028ec04": "camera_change_activate_ccm_slide_flag", - "8028ec2c": "camera_change_deactivate_ccm_slide_flag", - "8028ec58": "surface_type_presets", - "8028ed30": "set_preset_via_surface_or_input", - "8028ed98": "surface_type_presets_thi", - "8028eeb0": "level_specific_camera_update", - "8028f670": "resolve_geometry_collisions", - "8028f914": "func_8028F2F0", - "8028fc9c": "find_mario_relative_geometry", - "8028fe24": "func_8028F800", - "8028fe58": "func_8028F834", - "8028fe84": "unused_8028F860", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "set_cam_yaw_from_focus_and_pos", - "802900e0": "func_8028FABC", - "80290104": "func_8028FAE0", - "80290168": "cap_switch_save", - "802901a4": "func_8028FB80", - "802901fc": "func_8028FBD8", - "802903b8": "func_8028FD94", - "802904a8": "CutsceneIntroPeach0_2", - "802904e4": "CutsceneIntroPeach2_1", - "8029051c": "func_8028FEDC", - "8029053c": "move_credits_camera", - "80290784": "func_80290144", - "802907f4": "func_802901B4", - "80290864": "func_80290224", - "802908e8": "func_802902A8", - "802909d0": "rotate_camera", - "80290a5c": "CutsceneEnterSomething8029041C", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "func_80290514", - "80290ba4": "func_80290564", - "80290bd8": "func_80290598", - "80290c08": "unused_802905C8", - "80290c1c": "Cutscene0FTodo0", - "80290c30": "Cutscene0FTodo1", - "80290c44": "CutscenePeachEnd0_1", - "80290c9c": "CutscenePeachEnd0_2", - "80290d90": "CutscenePeachEnd0", - "80290e00": "CutscenePeachEnd2", - "80290e74": "CutscenePeachEndCommon367A", - "80290eb0": "CutscenePeachEnd3_1", - "80290f1c": "CutscenePeachEnd3", - "80290f8c": "CutscenePeachEnd1", - "80291074": "CutscenePeachEnd4_1", - "80291108": "CutscenePeachEnd4", - "802911c8": "CutscenePeachEnd5_1", - "80291208": "CutscenePeachEnd5_2", - "8029127c": "CutscenePeachEnd5_3", - "802912b8": "CutscenePeachEnd5_4", - "80291354": "CutscenePeachEnd5", - "8029142c": "CutscenePeachEnd6", - "802914cc": "CutscenePeachEnd7_1", - "80291514": "CutscenePeachEnd7", - "802915d4": "CutscenePeachEnd8", - "80291654": "CutscenePeachEnd9_1", - "802916b8": "CutscenePeachEnd9_2", - "80291774": "CutscenePeachEnd9", - "802917e4": "CutscenePeachEndA_1", - "8029184c": "CutscenePeachEndA_2", - "80291870": "CutscenePeachEndA", - "80291924": "CutscenePeachEndB", - "80291964": "CutsceneGrandStar0_1", - "802919dc": "CutsceneGrandStar0_2", - "80291ab4": "CutsceneGrandStar0_4", - "80291b18": "CutsceneGrandStar0_5", - "80291b68": "CutsceneGrandStar0_6", - "80291bf4": "CutsceneGrandStar0_7", - "80291c3c": "CutsceneGrandStar0_3", - "80291cd0": "CutsceneGrandStar0", - "80291db0": "CutsceneGrandStar1_1", - "80291e84": "CutsceneGrandStar1_2", - "80291f18": "CutsceneGrandStar1_3", - "80292038": "CutsceneGrandStar1_4", - "80292164": "CutsceneGrandStar1", - "802921fc": "func_80291BBC", - "8029228c": "CutsceneDanceCommon", - "80292324": "CutsceneStarDance1_4", - "80292370": "CutsceneStarDance1_5", - "802923b8": "CutsceneStarDance1_6", - "80292400": "dummy_80291DC0", - "80292414": "CutsceneStarDance1_1", - "8029244c": "CutsceneStarDance1_3", - "80292484": "CutsceneStarDance1_2", - "802924b8": "CutsceneStarDance1", - "80292628": "func_80291FE8", - "802926dc": "CutsceneStarDance3_1", - "802927d0": "CutsceneStarDance3_2", - "80292868": "CutsceneStarDance3_3", - "80292974": "CutsceneStarDance3_4", - "80292a20": "CutsceneStarDance3_5", - "80292a4c": "CutsceneStarDance3_6", - "80292a80": "CutsceneStarDance3", - "80292c00": "CutsceneStarDance2_1", - "80292d80": "CutsceneStarDance2_3", - "80292e2c": "CutsceneStarDance2_2", - "80292ec4": "func_80292884", - "80292f40": "CutsceneStarDance2_4", - "80292f98": "CutsceneStarDance2_5", - "80292fe4": "CutsceneStarDance2_6", - "80293018": "CutsceneStarDance2", - "802930f0": "CutsceneKeyDance0_6", - "80293164": "CutsceneKeyDance0_2", - "802931c0": "CutsceneKeyDance0_3", - "80293220": "CutsceneKeyDance0_4", - "8029328c": "CutsceneKeyDance0_5", - "802932f4": "CutsceneKeyDance0_7", - "80293328": "CutsceneKeyDance0_8", - "80293354": "CutsceneKeyDance0_1", - "8029338c": "CutsceneKeyDance0", - "80293488": "CutsceneEnterBowserPlatform0_4", - "802934b4": "CutsceneEnterBowserPlatform0_3", - "802934d8": "CutsceneEnterBowserPlatform0_5", - "80293548": "CutsceneEnterBowserPlatform0_8", - "802935e0": "CutsceneEnterBowserPlatform0_9", - "80293624": "CutsceneEnterBowserPlatform0_7", - "8029369c": "CutsceneEnterBowserPlatform0_6", - "802936dc": "CutsceneEnterBowserPlatform0_1", - "80293708": "func_802930C8", - "80293734": "CutsceneEnterBowserPlatform0_2", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "CutsceneEnterBowserPlatform1", - "802938c8": "CutsceneEnterBowserPlatform2", - "80293944": "CutsceneEnterBowserPlatform0", - "80293abc": "CutsceneStarSpawn0_1", - "80293ae8": "CutsceneStarSpawn0_2", - "80293b70": "CutsceneStarSpawn1_1", - "80293bf4": "CutsceneStarSpawn1_2", - "80293c2c": "CutsceneStarSpawn0", - "80293cb0": "CutsceneStarSpawn1", - "80293d5c": "CutsceneStarSpawn2", - "80293d90": "CutsceneExitWaterfall0_1", - "80293dd4": "Cutscene80293794", - "80293e7c": "CutsceneExitWaterfall0", - "80293ed8": "CutsceneFallCommon1", - "80293f2c": "CutsceneFallToCastleGrounds0_1", - "80293f70": "CutsceneFallToCastleGrounds0", - "80293fcc": "CutsceneSpecialStarSpawn0_1", - "80294024": "CutsceneSpecialStarSpawn0_3", - "80294088": "CutsceneSpecialStarSpawn0_4", - "802940cc": "CutsceneSpecialStarSpawn0_5", - "8029410c": "CutsceneSpecialStarSpawn0_2", - "802942cc": "CutsceneSpecialStarSpawn0_6", - "802942f0": "CutsceneSpecialStarSpawn0", - "802943d4": "CutsceneSpecialStarSpawn1", - "80294428": "func_80293DE8", - "80294718": "CutscenePrepareCannon0_1", - "802947a4": "CutscenePrepareCannon0_2", - "8029480c": "func_802941CC", - "802948a0": "CutscenePrepareCannon0_3", - "80294a14": "CutscenePrepareCannon0", - "80294a94": "CutscenePrepareCannon1", - "80294ae8": "func_802944A8", - "80294b78": "func_80294538", - "80294bb4": "CutsceneDeath1_1", - "80294c28": "CutsceneDeath1_2", - "80294c5c": "CutsceneDeath1", - "80294cc4": "CutsceneDeath2_1", - "80294d48": "CutsceneDeath2_2", - "80294db4": "CutsceneDeath2", - "80294e24": "CutsceneBBHDeath0_1", - "80294ea8": "CutsceneBBHDeath0_2", - "80294ee8": "CutsceneBBHDeath0", - "80294f58": "CutsceneQuicksandDeath0_1", - "80294f94": "CutsceneQuicksandDeath0_2", - "80294fec": "CutsceneQuicksandDeath0", - "802950b0": "Cutscene1ATodo0_3", - "80295140": "Cutscene1ATodo0_2", - "802951f0": "Cutscene1ATodo0_1", - "80295270": "Cutscene1ATodo0", - "80295310": "CutsceneEnterPool0_1", - "802953dc": "CutsceneEnterPool0_2", - "80295418": "CutsceneEnterPool0", - "80295480": "Cutscene26Todo1_1", - "802954ec": "Cutscene26Todo1_5", - "80295518": "Cutscene26Todo1_2", - "80295580": "Cutscene26Todo1_3", - "80295670": "Cutscene26Todo1_4", - "80295740": "Cutscene26Todo1_7", - "8029576c": "Cutscene26Todo1_6", - "802957c8": "Cutscene26Todo1", - "80295894": "Cutscene26Todo2", - "802958d4": "CutsceneEnterPyramidTop0_1", - "80295930": "CutsceneEnterPyramidTop0", - "80295a58": "CutsceneDialog0_1", - "80295bf0": "CutsceneDialog0_2", - "80295e24": "CutsceneDialog0_3", - "80295e8c": "CutsceneDialog0", - "80295fb0": "CutsceneDialog1", - "80295fd8": "CutsceneDialog2", - "80296020": "CutsceneReadMessage0_1", - "80296160": "CutsceneReadMessage0", - "802962c8": "CutsceneReadMessage1", - "802962f0": "CutsceneReadMessage2", - "80296318": "CutsceneExitSuccess1", - "802963b8": "CutsceneExitSuccess2", - "8029652c": "CutsceneExitSuccess4", - "8029665c": "CutsceneExitSuccess3", - "8029669c": "CutsceneExitBowserSuccess0_1", - "802966e4": "CutsceneExitSuccess5", - "80296710": "CutsceneExitBowserSuccess0", - "802967c4": "CutsceneExitNonPainting1", - "8029685c": "CutsceneBBHExitSuccess0_1", - "802968a0": "CutsceneBBHExitSuccess0", - "8029695c": "CutsceneNonPaintingDeath0_1", - "802969f8": "Cutscene1CTodo_0", - "80296a64": "CutsceneNonPaintingDeath0_2", - "80296b30": "CutsceneNonPaintingDeath0", - "80296bc8": "CutsceneCapSwitchPress0_1", - "80296c4c": "CutsceneCapSwitchPress0_4", - "80296d60": "CutsceneCapSwitchPress0_5", - "80296da8": "CutsceneCapSwitchPress0_2", - "80296eb4": "CutsceneCapSwitchPress0_3", - "80296f38": "CutsceneCapSwitchPress0_6", - "80296fa8": "CutsceneCapSwitchPress0", - "80297148": "CutsceneUnlockKeyDoor0_1", - "8029720c": "CutsceneUnlockKeyDoor0_2", - "80297290": "CutsceneUnlockKeyDoor0_5", - "802972ec": "CutsceneUnlockKeyDoor0_6", - "80297300": "CutsceneUnlockKeyDoor0_3", - "80297384": "CutsceneUnlockKeyDoor0_4", - "802973b0": "CutsceneUnlockKeyDoor0", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "CutsceneIntroPeachCommon", - "8029762c": "CutsceneIntroPeach4", - "802976bc": "CutsceneIntroPeach3_2", - "80297728": "CutsceneIntroPeach2_2", - "80297748": "CutsceneIntroPeach0_1", - "80297784": "CutsceneIntroPeach3_1", - "802977c8": "CutsceneIntroPeach3_3", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "CutsceneIntroPeach2", - "80297908": "CutsceneIntroPeach3", - "80297a38": "CutsceneIntroPeach1", - "80297a64": "CutsceneIntroPeach0", - "80297b58": "CutsceneEndWaving0_1", - "80297b84": "CutsceneEndWaving0", - "80297c14": "CutsceneCredits0_1", - "80297c40": "CutsceneCredits0", - "802980dc": "CutsceneSlidingDoorsOpen0_1", - "8029819c": "CutsceneSlidingDoorsOpen0_2", - "80298218": "CutsceneSlidingDoorsOpen0_3", - "80298254": "CutsceneSlidingDoorsOpen0_4", - "80298290": "CutsceneSlidingDoorsOpen0_5", - "802983b4": "CutsceneSlidingDoorsOpen0", - "80298458": "CutsceneDoubleDoorsOpen1", - "802984a0": "CutsceneEnterPainting0_1", - "802984b4": "CutsceneEnterPainting0", - "802987b0": "CutsceneExitPainting80298094", - "8029894c": "CutsceneExitPainting80298230", - "802989e8": "CutsceneExitPainting802982CC", - "80298af8": "CutsceneExitPainting0", - "80298ba0": "Cutscene11Todo_0", - "80298c2c": "Cutscene11Todo_1", - "80298ccc": "CutsceneExitPainting1", - "80298d44": "CutsceneEnterCannon2", - "80298d9c": "CutsceneEnterCannon1", - "80298fe8": "CutsceneEnterCannon0", - "80299100": "CutsceneDoor0", - "80299154": "CutsceneDoor1", - "802991a8": "CutsceneDoorWarp1", - "802991f0": "CutsceneDoor2", - "802992cc": "CutsceneDoor3", - "80299360": "CutsceneDoor4", - "80299404": "CutsceneDoorAB_2", - "802994e8": "handle_cutscenes", - "8029a2f8": "call_cutscene_func_in_time_range", - "8029a37c": "set_cutscene_phase_at_frame", - "8029a3b4": "func_80299C98", - "8029a41c": "func_80299D00", - "8029a4d0": "func_80299DB4", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "zoom_fov_for_sleep", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "func_8029A288", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "func_8029A494", - "8029ac30": "func_8029A514", - "8029aef8": "func_8029A7DC", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "func_8029B964", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_8029CA50", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "Geo18_8029D890", - "8029d924": "Geo18_8029D924", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "func_8029D558", - "8029dda8": "apply_object_scale_to_matrix", - "8029de80": "func_8029D704", - "8029e1b0": "set_object_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "obj_rotate_yaw_toward", - "8029e694": "angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "set_object_parent_relative_pos", - "8029e914": "set_object_pos", - "8029e96c": "set_object_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "Unknown8029E330", - "8029eb04": "spawn_water_splash", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "obj_move_using_vel", - "8029f0c8": "copy_object_graph_y_offset", - "8029f0e0": "copy_object_pos_and_angle", - "8029f120": "copy_object_pos", - "8029f148": "copy_object_angle", - "8029f188": "func_8029EA0C", - "8029f1b0": "Unknown8029EA34", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "apply_scale_to_object_transform", - "8029f3a8": "copy_object_scale", - "8029f3d0": "scale_object_xyz", - "8029f404": "scale_object", - "8029f430": "obj_scale", - "8029f464": "SetObjAnimation", - "8029f4b4": "set_obj_animation_and_sound_state", - "8029f514": "func_8029ED98", - "8029f59c": "func_8029EE20", - "8029f600": "obj_enable_rendering_and_become_tangible", - "8029f620": "obj_enable_rendering", - "8029f644": "obj_disable_rendering_and_become_intangible", - "8029f66c": "obj_disable_rendering", - "8029f694": "obj_unhide", - "8029f6bc": "obj_hide", - "8029f6e0": "obj_set_pos_relative", - "8029f7d8": "obj_set_pos_relative_to_parent", - "8029f820": "obj_enable_rendering_2", - "8029f848": "obj_unused_init_on_floor", - "8029f8ec": "obj_set_facing_to_move_angles", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "obj_nearest_object_with_behavior", - "8029f998": "obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "obj_find_nearby_held_actor", - "8029fdb4": "obj_change_action", - "8029fe00": "func_8029F684", - "8029fe6c": "func_8029F6F0", - "8029fea4": "func_8029F728", - "8029ff04": "func_8029F788", - "8029ffa4": "func_8029F828", - "802a0008": "obj_check_anim_frame", - "802a0050": "obj_check_anim_frame_in_range", - "802a00ac": "Unknown8029F930", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "func_8029FA1C", - "802a01d8": "func_8029FA5C", - "802a0380": "obj_get_thrown_or_placed", - "802a0474": "obj_get_dropped", - "802a04c0": "obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "obj_clear_interact_status_flag", - "802a0568": "mark_object_for_deletion", - "802a057c": "obj_disable", - "802a05b4": "obj_become_intangible", - "802a05d4": "obj_become_tangible", - "802a05f0": "make_object_tangible", - "802a0604": "obj_update_floor_height", - "802a064c": "obj_update_floor_height_and_get_floor", - "802a079c": "obj_apply_drag_xz", - "802a0e68": "obj_move_y", - "802a113c": "obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "obj_move_xz_using_fvel_and_yaw", - "802a12a4": "obj_move_y_with_terminal_vel", - "802a1308": "obj_compute_vel_xz", - "802a1370": "func_802A0BF4", - "802a1424": "are_objects_collided", - "802a148c": "obj_set_behavior", - "802a14c4": "set_object_behavior", - "802a14fc": "obj_has_behavior", - "802a1554": "object_has_behavior", - "802a15ac": "obj_lateral_dist_from_mario_to_home", - "802a1634": "obj_lateral_dist_to_home", - "802a16ac": "obj_outside_home_square", - "802a1774": "obj_outside_home_rectangle", - "802a184c": "obj_set_pos_to_home", - "802a188c": "obj_set_pos_to_home_and_stop", - "802a18dc": "obj_shake_y", - "802a1930": "func_802A11B4", - "802a1960": "Unknown802A11E4", - "802a19ac": "obj_set_billboard", - "802a19c8": "obj_set_hitbox_radius_and_height", - "802a19f0": "obj_set_hurtbox_radius_and_height", - "802a1b34": "spawn_object_loot_blue_coins", - "802a1b8c": "spawn_object_loot_yellow_coins", - "802a1bdc": "obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "obj_abs_y_dist_to_home", - "802a1cc4": "Unknown802A1548", - "802a1f3c": "obj_resolve_wall_collisions", - "802a2320": "obj_update_floor_and_walls", - "802a2348": "obj_move_standard", - "802a25b4": "obj_move_using_vel_and_gravity", - "802a2644": "obj_move_using_fvel_and_gravity", - "802a2674": "set_object_pos_relative", - "802a2748": "obj_angle_to_home", - "802a27b0": "func_802A2008", - "802a2804": "translate_object_local", - "802a2930": "build_object_transform_from_pos_and_angle", - "802a2a18": "func_802A2270", - "802a2a84": "build_object_transform_relative_to_parent", - "802a2b28": "Unknown802A2380", - "802a2b6c": "obj_rotate_move_angle_using_vel", - "802a2bc4": "obj_rotate_face_angle_using_vel", - "802a2c1c": "obj_set_face_angle_to_move_angle", - "802a2c5c": "obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "scale_object_random", - "802a2fc0": "translate_object_xyz_random", - "802a308c": "translate_object_xz_random", - "802a31e0": "func_802A2A38", - "802a3268": "obj_reflect_move_angle_off_wall", - "802a32ac": "obj_spawn_particles", - "802a34a4": "set_object_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "obj_wait_then_blink", - "802a3754": "obj_is_mario_ground_pounding_platform", - "802a37ac": "func_802A3004", - "802a37dc": "func_802A3034", - "802a3818": "obj_push_mario_away", - "802a390c": "obj_push_mario_away_from_cylinder", - "802a399c": "BehDustSmokeLoop", - "802a3a4c": "func_802A32A4", - "802a3a88": "func_802A32E0", - "802a3b40": "func_802A3398", - "802a3c18": "func_802A3470", - "802a3cfc": "obj_is_mario_on_platform", - "802a3d40": "obj_shake_y_until", - "802a3dd4": "func_802A362C", - "802a3e30": "obj_call_action_function", - "802a3ef8": "Unknown802A3750", - "802a3f24": "func_802A377C", - "802a3f48": "obj_mario_far_away", - "802a404c": "obj_is_mario_moving_fast_or_in_air", - "802a40b8": "item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "obj_enable_rendering_if_mario_in_room", - "802a4360": "obj_set_hitbox_and_die_if_attacked", - "802a4440": "func_802A3C98", - "802a44f4": "set_object_collision_data", - "802a452c": "obj_if_hit_wall_bounce_away", - "802a4564": "obj_hide_if_mario_far_away_y", - "802a45e4": "Geo18_802A45E4", - "802a462c": "Unknown802A3E84", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "func_802A3FF8", - "802a48bc": "obj_is_mario_in_range_and_ready_to_speak", - "802a4960": "obj_update_dialog", - "802a4be4": "obj_update_dialog_with_cutscene", - "802a4f04": "obj_has_model", - "802a4f58": "obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "ShakeScreen", - "802a513c": "attack_collided_non_mario_object", - "802a51ac": "obj_was_attacked_or_ground_pounded", - "802a5228": "copy_object_behavior_params", - "802a5248": "func_802A4A70", - "802a5288": "func_802A4AB0", - "802a52c4": "func_802A4AEC", - "802a52f8": "obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "obj_check_interacted", - "802a5524": "obj_spawn_loot_blue_coin", - "802a5588": "obj_spawn_star_at_y_offset", - "802a5620": "func_802A4DB0", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "ActionMrIParticle0", - "802a5a44": "ActionMrIParticle1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "func_802A525C", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "ActionMrI3", - "802a6518": "ActionMrI2", - "802a68a0": "ActionMrI1", - "802a6ad8": "ActionMrI0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "ActionActivateCapSwitch0", - "802a7020": "ActionActivateCapSwitch1", - "802a708c": "ActionActivateCapSwitch2", - "802a7160": "ActionActivateCapSwitch3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "Geo18_802A719C", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "ActionKingBobomb0", - "802a7384": "func_802A6AF8", - "802a73d8": "ActionKingBobomb2", - "802a7598": "ActionKingBobomb3", - "802a7804": "ActionKingBobomb1", - "802a78d8": "ActionKingBobomb6", - "802a7a60": "ActionKingBobomb7", - "802a7b1c": "ActionKingBobomb8", - "802a7b5c": "ActionKingBobomb4", - "802a7d14": "ActionKingBobomb5", - "802a7fbc": "func_802A7748", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "Unknown802A7E48", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "func_802A81C4", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "ActionOpenedCannon0", - "802a8f40": "ActionOpenedCannon4", - "802a9114": "ActionOpenedCannon6", - "802a92fc": "ActionOpenedCannon5", - "802a93f8": "ActionOpenedCannon1", - "802a9440": "ActionOpenedCannon2", - "802a9460": "ActionOpenedCannon3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "func_802A8D18", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "Unknown802A8EC8", - "802a98c4": "func_802A9050", - "802a9994": "ActionChuckya0", - "802a9d08": "ActionChuckya1", - "802a9f54": "ActionChuckya3", - "802a9fc8": "ActionChuckya2", - "802aa02c": "func_802A97B8", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "func_802A9A0C", - "802aa3c8": "func_802A9B54", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "func_802AA0D4", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "BehFadingWarpLoop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "func_802AA618", - "802aaf48": "bhv_unused_080c_init", - "802aaffc": "func_802AA788", - "802ab060": "func_802AA7EC", - "802ab158": "func_802AA8E4", - "802ab18c": "func_802AA918", - "802ab1c8": "bhv_unused_080c_loop", - "802ab558": "bhv_spawn_star_objects", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "func_802AB364", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "ActionCoinInsideBoo1", - "802ac15c": "ActionCoinInsideBoo0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "func_802AC070", - "802ac958": "func_802AC0B8", - "802ac9d0": "func_802AC130", - "802aca6c": "func_802AC1CC", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "ActionGrindelThwomp4", - "802ad10c": "ActionGrindelThwomp2", - "802ad1a4": "ActionGrindelThwomp3", - "802ad238": "ActionGrindelThwomp1", - "802ad2d0": "ActionGrindelThwomp0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "ActionTumblingBridge1", - "802ad76c": "ActionTumblingBridge2", - "802ad7f4": "ActionTumblingBridge3", - "802ad828": "ActionTumblingBridge0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "func_802AD01C", - "802ad8f0": "ActionElevator0", - "802ada4c": "ActionElevator1", - "802adb88": "ActionElevator2", - "802adce4": "ActionElevator4", - "802add70": "ActionElevator3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "func_802ADA94", - "802ae360": "bhv_unused_0e40_init", - "802ae394": "Unknown802ADAF4", - "802ae45c": "func_802ADBBC", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "func_802ADC20", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "func_802AF9A4", - "802b039c": "func_802AFAFC", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "func_802B02FC", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "func_802B0C54", - "802b15e8": "bhv_pushable_loop", - "802b1714": "func_802B0E74", - "802b17f4": "func_802B0F54", - "802b19d8": "func_802B1138", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "Geo18_802B1BB0", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "ActionHeaveHo1", - "802b1e6c": "ActionHeaveHo2", - "802b1ff4": "ActionHeaveHo3", - "802b20a0": "ActionHeaveHo0", - "802b2154": "func_802B18B4", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "ActionJumpingBox0", - "802b27d8": "ActionJumpingBox1", - "802b2824": "func_802B1F84", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "func_802B2328", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "func_802B2894", - "802b3250": "func_802B29B0", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "ActionBulletBill0", - "802b38b8": "ActionBulletBill1", - "802b394c": "ActionBulletBill2", - "802b3b08": "ActionBulletBill3", - "802b3b24": "ActionBulletBill4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "ActionBowserTailAnchor0", - "802b3cdc": "ActionBowserTailAnchor1", - "802b3d10": "ActionBowserTailAnchor2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "func_802B38B4", - "802b41fc": "func_802B392C", - "802b4288": "func_802B39B8", - "802b4300": "func_802B3A30", - "802b4368": "func_802B3A98", - "802b43dc": "func_802B3B0C", - "802b4478": "ActionBowser5", - "802b44bc": "ActionBowser6", - "802b45f4": "func_802B3D24", - "802b473c": "func_802B3E44", - "802b48d4": "func_802B3FDC", - "802b4a1c": "func_802B4124", - "802b4a3c": "func_802B4144", - "802b4af4": "func_u_802B4AF4", - "802b4bac": "ActionBowser18", - "802b4be8": "ActionBowser0", - "802b4ca4": "ActionBowser15", - "802b4d14": "ActionBowser14", - "802b4f00": "ActionBowser16", - "802b5104": "ActionBowser8", - "802b5218": "ActionBowser12", - "802b53f4": "func_802B4A44", - "802b5444": "func_802B4A94", - "802b5554": "func_802B4BA4", - "802b55cc": "ActionBowser13", - "802b5798": "ActionBowser17", - "802b58bc": "ActionBowser10", - "802b59cc": "ActionBowser9", - "802b5aec": "func_802B5108", - "802b5c00": "ActionBowser11", - "802b5c40": "ActionBowser7", - "802b5f6c": "func_802B5588", - "802b5fec": "ActionBowser1", - "802b611c": "func_802B5738", - "802b6190": "ActionBowser2", - "802b6568": "ActionBowser3", - "802b65d0": "func_802B5C78", - "802b6670": "func_802B5D18", - "802b6730": "func_802B5DD8", - "802b67d4": "func_802B5E7C", - "802b6878": "func_802B5F20", - "802b6a10": "func_802B60B8", - "802b6a78": "func_802B6120", - "802b6bac": "func_802B6254", - "802b6cf0": "ActionBowser4", - "802b6e40": "func_802B64E8", - "802b6ee0": "ActionBowser19", - "802b711c": "func_802B67C4", - "802b71e4": "func_802B688C", - "802b72d4": "func_802B697C", - "802b7418": "func_802B6AC0", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "Geo18_802B798C", - "802b7a20": "func_802B70C8", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "Geo18_802B7D44", - "802b7e68": "ActionFallingBowserPlatform0", - "802b7ef0": "ActionFallingBowserPlatform1", - "802b8024": "ActionFallingBowserPlatform2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "func_802B7A58", - "802b8434": "func_802B7ADC", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "func_802B7CFC", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "func_802B8F7C", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "func_802B9120", - "802b9af8": "func_802B91A0", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "func_802B95A4", - "802ba13c": "func_802B97E4", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "Geo18_802BA2B0", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "unused_Geo18_8029D890", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "func_802BB414", - "802bbfd8": "func_802BB680", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "func_802BB9F0", - "802bc4f4": "ActionRotatingCwFireBars0", - "802bc538": "ActionRotatingCwFireBars1", - "802bc590": "ActionRotatingCwFireBars2", - "802bc5fc": "ActionRotatingCwFireBars3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "func_802BBFDC", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "func_802BC390", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "func_802BC544", - "802bcf40": "bhv_tilting_platform_init", - "802bcfc4": "func_802BC66C", - "802bd058": "bhv_tilting_platform_loop", - "802bd3e4": "func_802BCA8C", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "func_802BCCD4", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "func_802BCF78", - "802bd91c": "func_802BCFC4", - "802bdb04": "ActionToxBox4", - "802bdb3c": "ActionToxBox5", - "802bdb74": "ActionToxBox6", - "802bdbac": "ActionToxBox7", - "802bdbe4": "ActionToxBox1", - "802bdc7c": "ActionToxBox2", - "802bdcc8": "ActionToxBox3", - "802bdd14": "ActionToxBox0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "func_802BE2E8", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "ActionTuxiesMother2", - "802bef8c": "ActionTuxiesMother1", - "802bf1d8": "ActionTuxiesMother0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "func_802BEA58", - "802bf474": "ActionSmallPenguin2", - "802bf57c": "ActionSmallPenguin1", - "802bf648": "ActionSmallPenguin3", - "802bf6e4": "ActionSmallPenguin4", - "802bf760": "ActionSmallPenguin0", - "802bf90c": "ActionSmallPenguin5", - "802bfa14": "func_802BF048", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "ActionFish0", - "802bfeb8": "ActionFish1", - "802bff20": "ActionFish2", - "802bff3c": "bhv_fish_loop", - "802bff68": "func_802BF59C", - "802c00b4": "ActionFishGroup1", - "802c0348": "ActionFishGroup2", - "802c06a8": "ActionFishGroup0", - "802c0768": "bhv_fish_group_2_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "ActionBirdChirpChirp0", - "802c0b50": "ActionBirdChirpChirp1", - "802c0ba4": "ActionBirdChirpChirp2", - "802c0bc4": "ActionBirdChirpChirp3", - "802c0be0": "bhv_bird_chirp_chirp_loop", - "802c0c0c": "func_802C0240", - "802c0cd4": "ActionCheepCheep0", - "802c0d44": "ActionCheepCheep1", - "802c0f90": "ActionCheepCheep2", - "802c1204": "bhv_cheep_cheep_loop", - "802c12c0": "bhv_rotatin_exclamation_box_loop", - "802c1308": "ActionExclamationBox0", - "802c13ec": "ActionExclamationBox1", - "802c14b0": "ActionExclamationBox2", - "802c15b8": "ActionExclamationBox3", - "802c17bc": "func_802C0DF0", - "802c18d0": "ActionExclamationBox4", - "802c1988": "ActionExclamationBox5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "func_802C231C", - "802c2ebc": "ActionTweester0", - "802c2fbc": "ActionTweester1", - "802c31c4": "ActionTweester2", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "BehClimbDetectLoop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "func_802C5A64", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "func_802C61CC", - "802c6d6c": "ActionWhomp0", - "802c6ec8": "ActionWhomp7", - "802c6fb0": "ActionWhomp1", - "802c710c": "ActionWhomp2", - "802c7254": "ActionWhomp3", - "802c72b4": "ActionWhomp4", - "802c7380": "ActionWhomp5", - "802c7428": "func_802C6954", - "802c75fc": "func_802C6B28", - "802c76d4": "ActionWhomp6", - "802c7858": "ActionWhomp8", - "802c7998": "ActionWhomp9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_loop", - "802c7b14": "bhv_water_drops_loop", - "802c7cac": "bhv_surface_waves_loop", - "802c7d40": "bhv_water_surface_white_wave_init", - "802c7d90": "bhv_object_bubble_ripples_init", - "802c7dfc": "bhv_surface_wave_shrinking_init", - "802c7e5c": "bhv_wave_trail_loop", - "802c7f98": "bhv_white_wind_particle_loop", - "802c81b4": "func_802C76E0", - "802c834c": "bhv_snowman_wind_blowing_loop", - "802c85a4": "func_802C7AD0", - "802c863c": "bhv_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "Unknown802C8460", - "802c8fe4": "func_802C8504", - "802c91ec": "func_802C870C", - "802c9388": "func_802C88A8", - "802c93f8": "func_802C8918", - "802c94ac": "func_802C89CC", - "802c95b4": "func_802C8AD4", - "802c9630": "func_802C8B50", - "802c9724": "detect_object_collisions", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "PlaySound", - "802ca1e0": "PlaySound2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "Stub802C9890", - "802ca380": "Stub802C98A0", - "802ca390": "Stub802C98B0", - "802ca3a0": "Stub802C98C0", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_802CA5D0", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "Unknown802CAA84", - "802cb5c0": "func_802CAAE0", - "802cb640": "func_802CAB60", - "802cb894": "func_802CADB4", - "802cba18": "func_802CAF38", - "802cbbc4": "func_802CB0E4", - "802cbc20": "func_802CB140", - "802cbc7c": "func_802CB19C", - "802cbd54": "func_802CB274", - "802cbe64": "func_802CB384", - "802cbee0": "func_802CB400", - "802cbf64": "func_802CB484", - "802cbfe8": "func_802CB508", - "802cc180": "func_802CB6A0", - "802cc4d8": "func_802CB9F8", - "802ccbe8": "func_802CC108", - "802ccdc8": "func_802CC2E8", - "802cd1e8": "Geo18_802CD1E8", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stopAllRippleExcept", - "802d2a74": "find_mario_y_position_on_painting", - "802d2b08": "find_mario_z_position_on_painting", - "802d2b84": "painting_find_vertical_ripple_location", - "802d2c40": "find_part_of_painting_near_mario", - "802d2d80": "find_mario_x_position_on_painting", - "802d2dfc": "painting_find_horizontal_ripple_location", - "802d2eb8": "painting_set_ripple_type", - "802d2ffc": "vertical_proximity_ripple_painting_ripple", - "802d319c": "vertical_proximity_ripple_painting_ripple_if_mario_enters", - "802d327c": "vertical_continuous_ripple_painting_ripple", - "802d341c": "vertical_continuous_ripple_painting_ripple_if_mario_enters", - "802d34fc": "horizontal_proximity_ripple_painting_ripple", - "802d36ac": "horizontal_proximity_ripple_painting_ripple_if_mario_enters", - "802d379c": "horizontal_continuous_ripple_painting_ripple", - "802d393c": "horizontal_continuous_ripple_painting_ripple_if_mario_enters", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_status", - "802d3cec": "painting_calculate_point_ripple", - "802d3e6c": "painting_conditionally_calculate_point_ripple", - "802d3ee4": "Print1", - "802d404c": "Print2", - "802d43f8": "small_float_to_byte", - "802d44bc": "func_802D39DC", - "802d47d0": "func_802D3CF0", - "802d4edc": "func_802D43FC", - "802d50dc": "func_802D45FC", - "802d5354": "func_802D4874", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "update_ddd_painting", - "802d58e4": "func_802D4E04", - "802d593c": "display_painting", - "802d59a8": "vertical_painting_ripple", - "802d5aa0": "horizontal_painting_ripple", - "802d5b98": "Geo18_802D5B98", - "802d5d0c": "Geo18_802D5D0C", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "func_802E2F40", - "802e3e68": "func_802E2F58", - "802e3f68": "absf_2", - "802e3fac": "TurnObjAwayFromSurface", - "802e405c": "ObjFindWall", - "802e41a4": "TurnObjAwayFromAwkwardFloor", - "802e42e0": "ObjOrientGraph", - "802e43e4": "CalcObjFriction", - "802e445c": "CalcNewObjVelAndPosY", - "802e4814": "CalcNewObjVelAndPosYUnderwater", - "802e4cec": "ObjUpdatePosVelXZ", - "802e4d88": "ObjSplash", - "802e4e90": "ObjectStep", - "802e5114": "func_802E4204", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "IsPointCloseToObject", - "802e5360": "SetObjectVisibility", - "802e53f4": "ObjLeaveIfMarioIsNearHome", - "802e54b0": "ObjDisplaceHome", - "802e55d0": "func_802E46C0", - "802e569c": "func_802E478C", - "802e5760": "ObjSpawnYellowCoins", - "802e5824": "ObjFlickerAndDisappear", - "802e58b4": "func_802E49A4", - "802e5948": "func_802E4A38", - "802e5a80": "ObjCheckFloorDeath", - "802e5b18": "ObjLavaDeath", - "802e5c6c": "SpawnOrangeNumber", - "802e5d04": "Unknown802E4DF4", - "802e5de8": "CoinStep", - "802e5e6c": "MovingCoinFlickerLoop", - "802e5ea4": "CoinCollected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "func_802E540C", - "802e63ec": "func_802E54DC", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "func_802E5B7C", - "802e6af8": "BobombExplodeLoop", - "802e6bd4": "CheckBobombInteractions", - "802e6cf0": "BobombPatrolLoop", - "802e6dc8": "BobombChaseMarioLoop", - "802e6e84": "BobombLaunchedLoop", - "802e6ed8": "GenericBobombFreeLoop", - "802e7020": "StationaryBobombFreeLoop", - "802e7134": "BobombFreeLoop", - "802e7180": "BobombHeldLoop", - "802e7220": "BobombDroppedLoop", - "802e7280": "BobombThrownLoop", - "802e7324": "ObjRandomBlink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "BobombBuddyIdleLoop", - "802e7814": "BobombBuddyCannonLoop", - "802e79dc": "BobombBuddyTalkLoop", - "802e7b00": "BobombBuddyTurnToTalkLoop", - "802e7bb0": "BobombBuddyActionLoop", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "CannonTrapDoorOpeningLoop", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "func_802E70A8", - "802e7fec": "func_802E70DC", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "ButterflyStep", - "802e9278": "CalculateButterflyAngle", - "802e9470": "ButterflyRestingLoop", - "802e94e4": "ButterflyFollowMarioLoop", - "802e9548": "ButterflyReturnHomeLoop", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "HootFindNextFloor", - "802e98c0": "HootFloorBounce", - "802e9a4c": "HootFreeStep", - "802e9cf4": "PlayerSetHootYaw", - "802e9d98": "HootCarryStep", - "802e9f60": "HootSurfaceCollision", - "802ea144": "HootAscentLoop", - "802ea258": "HootActionLoop", - "802ea3f0": "HootTurnToHome", - "802ea4ec": "HootAwakeLoop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "BullyCheckMarioCollision", - "802eb288": "BullyChaseMarioLoop", - "802eb3f0": "BullyKnockbackLoop", - "802eb510": "BullyBackUpLoop", - "802eb5c4": "BullyBackUpCheck", - "802eb630": "PlayBullyStompingSound", - "802eb744": "BullyStep", - "802eb7e0": "BullySpawnCoin", - "802eb8b0": "BullyLavaDeath", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "BigBullySpawnMinion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "BigBullyWithMinionsLavaDeath", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "WaterRingCalcMarioDistInFront", - "802ec030": "WaterRingInit", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "CheckWaterRingCollection", - "802ec3d0": "SetWaterRingScale", - "802ec4e0": "WaterRingCollectedLoop", - "802ec59c": "JetStreamWaterRingNotCollectedLoop", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "Unknown802EB8A4", - "802ec818": "JetStreamRingSpawnerActiveLoop", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "MantaRayWaterRingNotCollectedLoop", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "CelebrationStarSpinAroundMarioLoop", - "802ed28c": "CelebrationStarFaceCameraLoop", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "MoneybagCheckMarioCollision", - "802ee268": "MoneybagJump", - "802ee46c": "MoneybagMoveAroundLoop", - "802ee598": "MoneybagReturnHomeLoop", - "802ee728": "MoneybagDisappearLoop", - "802ee778": "MoneybagDeathLoop", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "func_802EDA14", - "802eea7c": "func_802EDA6C", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "func_802EFB2C", - "802f0bd4": "func_802EFB84", - "802f0c94": "func_802EFC44", - "802f0df0": "func_802EFDA0", - "802f0fa8": "func_802EFF58", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "func_802F05DC", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "func_802F0904", - "802f19c8": "func_802F0978", - "802f1a10": "func_802F09C0", - "802f1bb8": "func_802F0B68", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "func_802F0D70", - "802f1e5c": "func_802F0E0C", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "func_802F0FE0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "func_802F1190", - "802f2284": "func_802F1234", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "func_802F1A50", - "802f2b88": "create_star", - "802f2bd4": "func_802F1B84", - "802f2c24": "func_802F1BD4", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "func_802F238C", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "func_802F2820", - "802f39b4": "func_802F2924", - "802f3a30": "bhvLllVolcanoFallingTrap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "func_802F2D40", - "802f3ea8": "func_802F2E18", - "802f401c": "func_802F2F8C", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "func_802F3328", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "func_802F3BD8", - "802f4ce0": "func_802F3C50", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "func_802F3F80", - "802f5068": "func_802F3FD8", - "802f52c0": "func_802F4230", - "802f547c": "func_802F43EC", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "func_802F4CE8", - "802f5e44": "func_802F4DB4", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "func_802F54F8", - "802f665c": "func_802F55CC", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "func_802F5E20", - "802f7068": "func_802F5FD8", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "func_802F6E8C", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "BehYoshiLoop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "Geo18_8030D93C", - "8030d9ac": "Geo18_8030D9AC", - "8030da14": "snufit_act_0", - "8030db38": "snufit_act_1", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_manager_loop", - "80312370": "coffin_act_0", - "8031262c": "coffin_act_1", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "func_8031758C", - "803188f4": "func_8031784C", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "func_80318870", - "80319998": "note_disable2", - "803199b8": "func_80318908", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "func_80318F04", - "8031a1d0": "func_80319164", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "func_80319BC8", - "8031adac": "note_init_all", - "8031aee0": "func_80319E70", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "func_8031AF74", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L_U_8031C200", - "8031c23c": "L_U_8031C23C", - "8031c298": "L_U_8031C298", - "8031c2dc": "L_U_8031C2DC", - "8031c328": "L_U_8031C328", - "8031c36c": "L_U_8031C36C", - "8031c3bc": "L_U_8031C3BC", - "8031c3e8": "L_U_8031C3E8", - "8031c454": "L_U_8031C454", - "8031c4a4": "L_U_8031C4A4", - "8031c5c8": "L_U_8031C5C8", - "8031c698": "L_U_8031C698", - "8031c6a0": "L_U_8031C6A0", - "8031cbe0": "L_U_8031CBE0", - "8031cbec": "L_U_8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "func_8031D4B8", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "unused_8032050C", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": ".", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "D_8032CE9C", - "8032de4c": "D_8032CEEC", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused_8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused_8032CFC8", - "8032df2c": "unused_8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "D_8032CFD4", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "D_8032CFE0", - "8032df44": "D_8032CFE4", - "8032df48": "D_8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sTempCutsceneNumber", - "8032df54": "gCutsceneNumber", - "8032df58": "sCutsceneTransitionTimer", - "8032df5c": "D_8032CFFC", - "8032df60": "sMarioStatusForCamera", - "8032df64": "sLuigiStatusForCamera", - "8032df68": "D_8032D008", - "8032df6c": "sFixedPresetBasePosition", - "8032df78": "D_8032D00C_2", - "8032df84": "D_8032D00C_3", - "8032df90": "D_8032D00C_4", - "8032df9c": "D_8032D00C_5", - "8032dfa8": "TableCameraTransitions", - "8032e008": "unused_8032D0A8", - "8032e010": "unused_8032D0B0", - "8032e018": "D_8032D0B8", - "8032e050": "BBHRoom6ParallelTrackingTable", - "8032e098": "TableCameraSL", - "8032e0e0": "TableCameraTHI", - "8032e128": "TableCameraHMC", - "8032e1d0": "TableCameraSSL", - "8032e248": "TableCameraRR", - "8032e338": "TableCameraCotMC", - "8032e368": "TableCameraCCM", - "8032e3b0": "TableCameraInside", - "8032e6f8": "TableCameraBBH", - "8032ecb0": "TableLevelCinematicCamera", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "D_8032E040", - "8032eff0": "D_8032E090", - "8032f048": "D_8032E0E8", - "8032f0e8": "D_8032E188", - "8032f130": "D_8032E1D0", - "8032f178": "D_8032E218", - "8032f1b8": "D_8032E258", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "D_8032E4E4", - "8032f48c": "D_8032E52C", - "8032f4d4": "TableCutscenePeachEnd", - "8032f534": "TableCutsceneGrandStar", - "8032f544": "TableCutscene0FTodo", - "8032f554": "TableCutsceneDoorWarp", - "8032f564": "TableCutsceneEndWaving", - "8032f56c": "TableCutsceneCredits", - "8032f574": "TableCutsceneDoor00", - "8032f59c": "TableCutsceneDoor01", - "8032f5c4": "TableCutsceneDoor0A", - "8032f5dc": "TableCutsceneDoor0B", - "8032f5f4": "TableCutsceneEnterCannon", - "8032f60c": "TableCutsceneStarSpawn", - "8032f624": "TableCutsceneSpecialStarSpawn", - "8032f634": "TableCutsceneEnterPainting", - "8032f63c": "TableCutsceneDeathExit", - "8032f64c": "TableCutsceneExitPaintingSuccess", - "8032f65c": "TableCutscene11Todo", - "8032f674": "TableCutsceneIntroPeach", - "8032f69c": "TableCutscenePrepareCannon", - "8032f6ac": "TableCutsceneExitWaterfall", - "8032f6bc": "TableCutsceneFallToCastleGrounds", - "8032f6cc": "TableCutsceneEnterPyramidTop", - "8032f6dc": "TableCutscene26Todo", - "8032f6f4": "TableCutsceneStandingDeath", - "8032f6fc": "TableCutsceneEnterPool", - "8032f70c": "TableCutsceneDeath2", - "8032f714": "TableCutsceneDeathOnBack", - "8032f71c": "TableCutsceneQuicksandDeath", - "8032f72c": "TableCutsceneSuffocationDeath", - "8032f734": "TableCutsceneEnterBowserPlatform", - "8032f74c": "TableCutsceneStarDance1", - "8032f754": "TableCutsceneStarDance2", - "8032f75c": "TableCutsceneStarDance3", - "8032f764": "TableCutsceneKeyDance", - "8032f76c": "TableCutsceneCapSwitchPress", - "8032f774": "TableCutsceneSlidingDoorsOpen", - "8032f784": "TableCutsceneUnlockKeyDoor", - "8032f794": "TableCutsceneExitBowserSuccess", - "8032f7a4": "TableCutscene1CTodo", - "8032f7b4": "TableCutsceneBBHExitSuccess", - "8032f7c4": "TableCutsceneNonPaintingDeath", - "8032f7d4": "TableCutsceneDialog", - "8032f7ec": "TableCutsceneReadMessage", - "8032f804": "D_8032E8A4", - "8032f870": "D_8032E910", - "8032f884": "sBobCreditsCameraPositions", - "8032f8ac": "sBobCreditsCameraFocus", - "8032f8d4": "sWfCreditsCameraPositions", - "8032f8fc": "sWfCreditsCameraFocus", - "8032f924": "sJrbCreditsCameraPositions", - "8032f94c": "sJrbCreditsCameraFocus", - "8032f974": "sCcmSlideCreditsCameraPositions", - "8032f99c": "sCcmSlideCreditsCameraFocus", - "8032f9c4": "sBbhCreditsCameraPositions", - "8032f9e4": "sBbhCreditsCameraFocus", - "8032fa04": "sHmcCreditsCameraPositions", - "8032fa2c": "sHmcCreditsCameraFocus", - "8032fa54": "sThiWigglerCreditsCameraPositions", - "8032fa6c": "sThiWigglerCreditsCameraFocus", - "8032fa84": "sVolcanoCreditsCameraPositions", - "8032fab4": "sVolcanoCreditsCameraFocus", - "8032fae4": "sSslCreditsCameraPositions", - "8032fb14": "sSslCreditsCameraFocus", - "8032fb44": "sDddCreditsCameraPositions", - "8032fb7c": "sDddCreditsCameraFocus", - "8032fbb4": "sSlCreditsCameraPositions", - "8032fbd4": "sSlCreditsCameraFocus", - "8032fbf4": "sWdwCreditsCameraPositions", - "8032fc14": "sWdwCreditsCameraFocus", - "8032fc34": "sTtmCreditsCameraPositions", - "8032fc64": "sTtmCreditsCameraFocus", - "8032fc94": "sThiHugeCreditsCameraPositions", - "8032fccc": "sThiHugeCreditsCameraFocus", - "8032fd04": "sTtcCreditsCameraPositions", - "8032fd24": "sTtcCreditsCameraFocus", - "8032fd44": "sRrCreditsCameraPositions", - "8032fd64": "sRrCreditsCameraFocus", - "8032fd84": "sSaCreditsCameraPositions", - "8032fdac": "sSaCreditsCameraFocus", - "8032fdd4": "sCotmcCreditsCameraPositions", - "8032fdfc": "sCotmcCreditsCameraFocus", - "8032fe24": "sDddSubCreditsCameraPositions", - "8032fe4c": "sDddSubCreditsCameraFocus", - "8032fe74": "sCcmOutsideCreditsCameraPositions", - "8032fe94": "sCcmOutsideCreditsCameraFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "803306dc": "sCageUkikiPath", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "D_8032FCE8", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "D_8032FDAC", - "80330d30": "D_8032FDD0", - "80330d54": "D_8032FDF4", - "80330d78": "D_8032FE18", - "80330d9c": "sWindParticleHitbox", - "80330dac": "D_8032FE4C", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "D_8032FF60", - "80330ec4": "D_8032FF64", - "80330ec8": "D_8032FF68", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "hmcPaintings", - "80331308": "insideCastlePaintings", - "80331344": "ttmPaintings", - "8033134c": "paintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332610": "D_80331500", - "80332614": "D_80331504", - "80332618": "D_80331508", - "8033261c": "D_8033150C", - "80332620": "D_80331510", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b10": "D_80331A00", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "D_80331C00", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "gPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "D_803320C8", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "gUnusedSoundArgs", - "80333208": "gSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358d0": "viMgrMainArgs", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "D_80334810", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "unknown", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338da0": "D_80337BB0", - "80338da8": "D_80337BB8", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "D_80339F50", - "8033b350": "D_80339FE0", - "8033b3b0": "gBodyStates", - "8033b494": "D_8033A124", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerStatusForCamera", - "8033c568": "sCameraPosition", - "8033c578": "sCameraFocus", - "8033c588": "D_8033B218", - "8033c594": "sCreditsCameraPitch", - "8033c596": "sCreditsCameraYaw", - "8033c598": "gFramesPaused", - "8033c5a0": "D_8033B230", - "8033c5c0": "sCameraTransition", - "8033c5e8": "sGeometryForMario", - "8033c61c": "unused_8033B2AC", - "8033c61e": "sCameraYawVelocity", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unused_spline_pitch", - "8033c624": "unused_spline_yaw", - "8033c628": "sSplineParameters", - "8033c668": "sSplineParameterMax", - "8033c66c": "sPositionAlongSpline", - "8033c670": "sSplinePositionLimit", - "8033c674": "sCameraCutscenePitchOffset", - "8033c676": "sCameraCutsceneYawOffset", - "8033c678": "sCameraCutsceneRollOffset", - "8033c67c": "unused_8033B30C", - "8033c680": "unused_8033B310", - "8033c684": "gCameraModeFlags", - "8033c686": "unused_8033B316", - "8033c688": "sCameraSideCFlags", - "8033c68a": "unused_8033B31A", - "8033c68c": "gCameraFlags1", - "8033c68e": "gCButtonsPressed", - "8033c690": "D_8033B320", - "8033c698": "gCameraStatus", - "8033c758": "unused_8033B3E8", - "8033c75a": "sYawFocToMario", - "8033c75c": "D_8033B3EC", - "8033c75e": "D_8033B3EE", - "8033c760": "D_8033B3F0", - "8033c764": "D_8033B3F4", - "8033c768": "sCSideButtonYaw", - "8033c76a": "D_8033B3FA", - "8033c76c": "D_8033B3FC", - "8033c770": "sFirstPersonCameraPitch", - "8033c772": "sFirstPersonCameraYaw", - "8033c774": "D_8033B404", - "8033c776": "sPlatformLevelPresetBaseYaw", - "8033c778": "gPlatformLevelYawOffset", - "8033c77c": "D_8033B40C", - "8033c780": "D_8033B410", - "8033c788": "D_8033B418", - "8033c7d0": "sFixedPresetBasePositionOffset", - "8033c7dc": "D_8033B46C", - "8033c7e0": "D_8033B470", - "8033c7e8": "D_8033B478", - "8033c808": "D_8033B498", - "8033c828": "D_8033B4B8", - "8033c848": "gCameraMovementFlags", - "8033c84a": "gCameraFlags2", - "8033c850": "D_8033B4E0", - "8033c950": "D_8033B5E0", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "D_8033B6E8", - "8033ca5a": "D_8033B6EA", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "D_8033B6F0", - "8033cbc8": "gCutsceneActive", - "8033cbcc": "sCutscenePhase", - "8033cbd0": "gCurrLevelCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gBehCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361270": "sGrabReleaseState", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "D_8035FFA0", - "80361314": "D_8035FFA4", - "80361318": "ripplingPainting", - "8036131c": "dddStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361450": "D_803600E0", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "D_80360C28", - "80361fa8": "D_80360C38", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80364c60": "viMgrThread", - "80364e10": "viMgrStack", - "80365e10": "__osViMesgQueue", - "80365e28": "viMgrMesgBuff", - "80365e40": "viEventViMesg", - "80365e58": "viEventCounterMesg", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "D_80365CE0", - "8036708c": "D_80365D1C", - "80367090": "D_80365D20", - "80367091": "_osCont_numControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "D_80365DAC", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "RandomU16", - "80383cb4": "RandomFloat", - "80383d1c": "RandomSign", - "80383d68": "func_80383D68", - "80385bf0": "stub_80385BF0", - "80385c00": "cur_object_exec_behavior", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "00000001": "ASSERT", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "spot_on_ground_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "water_waves_surface_geo", - "17000168": "water_waves_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleMario", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvWaterWaves", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvUnused080C", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvWallTinyStarParticleSpawn", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvPoundTinyStarParticleSpawn", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvPunchTinyTriangleSpawn", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvWaterMistSpawn", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvPoundWhitePuffs", - "13000e3c": "bhvGroundSand", - "13000e58": "bhvGroundSnow", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingSquarePlatform", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFlameMario", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvSnowLeafParticleSpawn", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingSquarePlatform", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFishGroup2", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvUnused243C", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMarioDustGenerator", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTornadoSandParticle", - "13002650": "bhvTornado", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSpecialTripleJumpSparkles", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDrops", - "13002c7c": "bhvWaterSurfaceWhiteWave", - "13002cb0": "bhvObjectBubbleRipples", - "13002ce0": "bhvSurfaceWaves", - "13002d28": "bhvWaterSurfaceWhiteWave2", - "13002d50": "bhvWavesGenerator", - "13002d7c": "bhvSurfaceWaveShrinking", - "13002db0": "bhvWaterType", - "13002dc0": "bhvWaveTrailOnSurface", - "13002e04": "bhvTinyWhiteWindParticle", - "13002e20": "bhvWindParticle", - "13002e3c": "bhvSnowmanWindBlowing", - "13002e58": "bhvWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvWarps60", - "13002f64": "bhvWarps64", - "13002f68": "bhvWarps68", - "13002f6c": "bhvWarps6C", - "13002f70": "bhvWarps70", - "13002f74": "bhvWarps74", - "13002f78": "bhvWarps78", - "13002f7c": "bhvWarps7C", - "13002f80": "bhvWarps80", - "13002f84": "bhvWarps84", - "13002f88": "bhvWarps88", - "13002f8c": "bhvWarps8C", - "13002f90": "bhvWarps90", - "13002f94": "bhvWarps94", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinManager", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000300": ["osTvType"], + "80000308": ["osRomBase"], + "8000030c": ["osResetType"], + "80000318": ["osMemSize"], + "8000031c": ["osAppNmiBuffer"], + "80000400": ["gZBuffer"], + "80000000": ["D_80000000"], + "a4000000": ["D_A4000000"], + "a40004c0": ["D_A40004C0"], + "a4000774": ["D_A4000774"], + "a4001000": ["D_A4001000"], + "a4040010": ["D_A4040010"], + "a4080000": ["D_A4080000"], + "a4300000": ["D_A4300000"], + "a4300004": ["D_A4300004"], + "a4300008": ["D_A4300008"], + "a430000c": ["D_A430000C"], + "a4400010": ["D_A4400010"], + "a450000c": ["D_A450000C"], + "a4600000": ["D_A4600000"], + "a4600004": ["D_A4600004"], + "a460000c": ["D_A460000C"], + "a4600010": ["D_A4600010"], + "a4700000": ["D_A4700000"], + "a4700010": ["D_A4700010"], + "a4800018": ["D_A4800018"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802ef700": ["__osGetCurrFaultedThread"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80246000": ["_mainSegmentStart", "EntryPoint"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["Unknown80246170"], + "802461cc": ["Dummy802461CC"], + "802461dc": ["Dummy802461DC"], + "802461ec": ["Dummy802461EC"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["AllocPool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["SendMessage"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["Main"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["func_80247D84"], + "80247f08": ["func_80247ED8"], + "80247fdc": ["func_80247FAC"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["func_80248C10"], + "80248c58": ["func_80248C28"], + "80248ce8": ["func_80248CB8"], + "80248d78": ["func_80248D48"], + "80248dc0": ["func_80248D90"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["func_802491FC"], + "8024927c": ["func_8024924C"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_paused"], + "80249764": ["set_play_mode"], + "8024978c": ["func_8024975C"], + "802497b8": ["func_80249788"], + "8024982c": ["nop_802497FC"], + "8024983c": ["func_8024980C"], + "8024995c": ["func_8024992C"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["func_8024A02C"], + "8024a18c": ["func_8024A094"], + "8024a1d8": ["func_8024A0E0"], + "8024a374": ["check_instant_warp"], + "8024a584": ["func_8024A48C"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["func_8024D664"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["func_8024FC94"], + "8024ff04": ["func_8024FD2C"], + "80250098": ["func_8024FEC0"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["nop_80254E3C"], + "802550b0": ["nop_80254E50"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["BehEndPeachLoop"], + "802570dc": ["BehEndToadLoop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["func_8025F0DC"], + "8025f560": ["func_8025F188"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["func_802604E0"], + "80260aac": ["func_802606DC"], + "80260cb4": ["act_idle"], + "80260f94": ["func_80260BC4"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["func_802615C4"], + "80261ad0": ["func_802616C4"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["func_80261C74"], + "8026217c": ["func_80261D70"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["func_80261F8C"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["func_80262574"], + "80262bc4": ["func_802627B8"], + "80262c34": ["func_80262828"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["func_80262CEC"], + "802631f0": ["func_80262DE4"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["func_80263378"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["func_80263A50"], + "80263ee4": ["func_80263AD4"], + "80264024": ["func_80263C14"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["func_802652F0"], + "80265b1c": ["func_8026570C"], + "80265d90": ["func_80265980"], + "80265df8": ["func_802659E8"], + "80266038": ["func_80265C28"], + "802661cc": ["func_80265DBC"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["func_80267814"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["func_u_8026A090"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["func_8026CDFC"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_enfvx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["Geo18_802764B0"], + "8027684c": ["bhvToadMessage_loop"], + "80276910": ["bhvToadMessage_init"], + "80276bb8": ["bhvUnlockDoorStar_init"], + "80276ccc": ["bhvUnlockDoorStar_loop"], + "802770a4": ["Geo18_802770A4"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["Geo18_80277294"], + "802773a4": ["Geo18_802773A4"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["Geo18_802775CC"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["Geo18_80277824"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["func_80278304"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["func_80278AD4"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["func_8027A220"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["func_8027A478"], + "8027aa74": ["func_8027A4C4"], + "8027ab04": ["clear_areas"], + "8027ad74": ["func_8027A7C4"], + "8027ae44": ["load_area"], + "8027af48": ["func_8027A998"], + "8027afbc": ["load_mario_area"], + "8027b038": ["func_8027AA88"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake"], + "8027f8b8": ["set_camera_shake_2"], + "8027f9f0": ["func_8027F440"], + "8027fb74": ["unused_set_camera_shake"], + "8027fc18": ["return_height_above_floor"], + "8027fe20": ["set_cam_focus_and_pos_rel_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["return_pitch_parallel_floor"], + "802804f4": ["func_8027FF44"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["return_open_camera_yaw"], + "80280970": ["return_platform_camera_yaw"], + "80280b00": ["func_80280550"], + "80281188": ["func_80280BD8"], + "802813bc": ["func_80280E0C"], + "802813ec": ["func_80280E3C"], + "8028146c": ["update_open_camera"], + "80281588": ["update_platform_level_camera"], + "802816a0": ["return_reverse_tower_camera_yaw"], + "802817fc": ["update_reverse_tower_camera"], + "80281904": ["return_parallel_tracking_camera_yaw"], + "80282280": ["return_fixed_camera_yaw"], + "802826a0": ["return_boss_fight_camera_yaw"], + "80282c0c": ["unused_return_mode_5_camera_yaw"], + "80282c28": ["unused_80282678"], + "80282c3c": ["update_boss_fight_camera"], + "80282c7c": ["update_parallel_tracking_camera"], + "80282ce0": ["update_fixed_camera"], + "80282d78": ["return_behind_mario_camera_yaw"], + "80283340": ["return_behind_mario_water_camera_yaw"], + "80283578": ["return_slide_camera_yaw"], + "802839e4": ["update_behind_mario_camera"], + "80283a18": ["nop_return_water_camera_yaw"], + "80283a34": ["update_water_surface_camera"], + "80283a68": ["return_mario_yaw"], + "80283af8": ["return_close_or_free_roam_cam_yaw"], + "80284cb8": ["update_close_or_free_roam_camera"], + "80284cfc": ["camera_lakitu_zoom_distance"], + "80284d38": ["camera_mario_zoom_distance"], + "80284d74": ["return_spiral_stairs_camera_yaw"], + "802850ac": ["update_spiral_stairs_camera"], + "802850ec": ["return_slide_or_0f_camera_yaw"], + "802851dc": ["update_slide_camera"], + "8028526c": ["func_80284CBC"], + "802852f4": ["func_80284D44"], + "80285370": ["exit_c_up_mode"], + "80285808": ["return_first_person_camera_yaw"], + "802858a4": ["operate_c_up_looking"], + "80285a2c": ["func_8028547C"], + "80285d20": ["update_c_up_camera"], + "80285ed8": ["return_cannon_camera_yaw"], + "80285f60": ["update_cannon_camera"], + "8028603c": ["init_transitional_movement"], + "80286088": ["set_camera_preset"], + "80286188": ["func_80285BD8"], + "80286420": ["func_80285E70"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["func_80287404"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["func_802875F8"], + "80287cb8": ["func_802876D0"], + "80287d30": ["geo_camera_preset_and_pos"], + "80287dc0": ["dummy_802877D8"], + "80287dd4": ["dummy_802877EC"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["select_or_activate_mario_cam"], + "80288718": ["test_or_set_mario_cam_active"], + "80288888": ["set_spline_values"], + "802889b0": ["set_face_angle_from_spline"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_status"], + "80288f5c": ["find_and_return_count_wall_collisions"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_exponential"], + "802893f4": ["approach_f32_exponential_bool"], + "80289488": ["approach_f32_exponential"], + "802894b4": ["approach_s16_exponential_bool"], + "8028956c": ["approach_s16_exponential"], + "80289610": ["approach_vec3f_exponential"], + "80289684": ["set_or_approach_vec3f_exponential"], + "802896f8": ["approach_vec3s_exponential"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["func_80289738"], + "80289f88": ["clamp_positions_and_find_yaw_angle"], + "8028a080": ["func_80289A98"], + "8028a0f4": ["is_pos_less_than_bounds"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["func_8028A0D4"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["check_if_vector_fits_in_bounds"], + "8028aa28": ["calculate_verticle_angle"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["func_8028AA80"], + "8028b11c": ["Unknown8028AB34"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["func_8028AF24"], + "8028b724": ["func_8028B13C"], + "8028b754": ["func_8028B16C"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["func_8028B36C"], + "8028b9c4": ["func_8028B3DC"], + "8028bd34": ["stop_mario"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["func_8028BA38"], + "8028c13c": ["set_camera_cutscene_table"], + "8028c18c": ["determine_star_fadeout_cutscene_table"], + "8028c26c": ["return_table_door_push_or_pull"], + "8028c2c8": ["return_cutscene_table"], + "8028c7a0": ["instant_warp_camera_update"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["Unknown8028C3AC"], + "8028c9cc": ["set_focus_position"], + "8028cbf0": ["set_pos_from_face_angle_and_vec3f"], + "8028cd94": ["set_pos_from_face_angle_and_rel_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["func_8028C824"], + "8028d44c": ["set_camera_preset_fixed_ref_point"], + "8028d5ac": ["set_camera_preset_platform_level"], + "8028d5fc": ["set_camera_preset_boss_fight"], + "8028d658": ["set_camera_preset_close_cam"], + "8028d698": ["set_camera_preset_open_camera"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["func_8028D32C"], + "8028da18": ["CameraRR00"], + "8028da50": ["CameraRR04"], + "8028daec": ["CameraRR02"], + "8028db38": ["CameraRR0305"], + "8028dbb4": ["CameraRR01"], + "8028dbf4": ["CameraCotMC00"], + "8028dc1c": ["CameraSL00"], + "8028dc70": ["camera_change_set_free_roam_mode"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["camera_change_hmc_maze_entrance"], + "8028de2c": ["CameraHMC02"], + "8028de5c": ["CameraHMC03"], + "8028de90": ["CameraHMC04"], + "8028dec4": ["CameraHMC05"], + "8028def8": ["CameraSSL00"], + "8028df24": ["CameraSSL0102"], + "8028df6c": ["CameraSSL03"], + "8028dfb4": ["CameraTHI00"], + "8028dfe8": ["CameraTHI01"], + "8028e01c": ["CameraRR07"], + "8028e064": ["CameraRR08"], + "8028e098": ["camera_change_hmc_cotmc_pool_entry"], + "8028e0ec": ["CameraInside20"], + "8028e164": ["CameraInside1E"], + "8028e210": ["CameraInside1F"], + "8028e298": ["CameraInside01"], + "8028e300": ["CameraInside1213"], + "8028e38c": ["CameraInside00"], + "8028e3b8": ["CameraInside0E"], + "8028e3f0": ["CameraInside0F"], + "8028e41c": ["bbh_room_6_camera"], + "8028e450": ["CameraBBH24"], + "8028e47c": ["CameraBBH2E2F"], + "8028e524": ["bbh_room_1_camera"], + "8028e55c": ["CameraBBH01"], + "8028e594": ["bbh_room_2_lower_camera"], + "8028e5cc": ["bbh_room_4_camera"], + "8028e604": ["bbh_room_8_camera"], + "8028e63c": ["bbh_room_5_library_camera"], + "8028e674": ["bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["bbh_room_5_hidden_to_library_transition"], + "8028e714": ["bbh_room_5_hidden_camera"], + "8028e758": ["bbh_room_3_camera"], + "8028e790": ["bbh_room_7_mr_i_camera"], + "8028e7c8": ["bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["CameraBBH3033"], + "8028e8a0": ["CameraBBH34"], + "8028e8cc": ["CameraBBH38"], + "8028e930": ["bbh_room_12_upper_camera"], + "8028e974": ["CameraBBH00"], + "8028e9a0": ["bbh_room_2_library_camera"], + "8028e9d8": ["bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["bbh_room_2_trapdoor_camera"], + "8028ea60": ["bbh_room_2_trapdoor_transition"], + "8028eab0": ["bbh_room_9_attic_camera"], + "8028eae8": ["bbh_room_9_attic_transition"], + "8028eb38": ["bbh_room_9_mr_i_transition"], + "8028eb88": ["bbh_room_13_balcony_camera"], + "8028ebc0": ["bbh_room_0_camera"], + "8028ec04": ["camera_change_activate_ccm_slide_flag"], + "8028ec2c": ["camera_change_deactivate_ccm_slide_flag"], + "8028ec58": ["surface_type_presets"], + "8028ed30": ["set_preset_via_surface_or_input"], + "8028ed98": ["surface_type_presets_thi"], + "8028eeb0": ["level_specific_camera_update"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["func_8028F2F0"], + "8028fc9c": ["find_mario_relative_geometry"], + "8028fe24": ["func_8028F800"], + "8028fe58": ["func_8028F834"], + "8028fe84": ["unused_8028F860"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["set_cam_yaw_from_focus_and_pos"], + "802900e0": ["func_8028FABC"], + "80290104": ["func_8028FAE0"], + "80290168": ["cap_switch_save"], + "802901a4": ["func_8028FB80"], + "802901fc": ["func_8028FBD8"], + "802903b8": ["func_8028FD94"], + "802904a8": ["CutsceneIntroPeach0_2"], + "802904e4": ["CutsceneIntroPeach2_1"], + "8029051c": ["func_8028FEDC"], + "8029053c": ["move_credits_camera"], + "80290784": ["func_80290144"], + "802907f4": ["func_802901B4"], + "80290864": ["func_80290224"], + "802908e8": ["func_802902A8"], + "802909d0": ["rotate_camera"], + "80290a5c": ["CutsceneEnterSomething8029041C"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["func_80290514"], + "80290ba4": ["func_80290564"], + "80290bd8": ["func_80290598"], + "80290c08": ["unused_802905C8"], + "80290c1c": ["Cutscene0FTodo0"], + "80290c30": ["Cutscene0FTodo1"], + "80290c44": ["CutscenePeachEnd0_1"], + "80290c9c": ["CutscenePeachEnd0_2"], + "80290d90": ["CutscenePeachEnd0"], + "80290e00": ["CutscenePeachEnd2"], + "80290e74": ["CutscenePeachEndCommon367A"], + "80290eb0": ["CutscenePeachEnd3_1"], + "80290f1c": ["CutscenePeachEnd3"], + "80290f8c": ["CutscenePeachEnd1"], + "80291074": ["CutscenePeachEnd4_1"], + "80291108": ["CutscenePeachEnd4"], + "802911c8": ["CutscenePeachEnd5_1"], + "80291208": ["CutscenePeachEnd5_2"], + "8029127c": ["CutscenePeachEnd5_3"], + "802912b8": ["CutscenePeachEnd5_4"], + "80291354": ["CutscenePeachEnd5"], + "8029142c": ["CutscenePeachEnd6"], + "802914cc": ["CutscenePeachEnd7_1"], + "80291514": ["CutscenePeachEnd7"], + "802915d4": ["CutscenePeachEnd8"], + "80291654": ["CutscenePeachEnd9_1"], + "802916b8": ["CutscenePeachEnd9_2"], + "80291774": ["CutscenePeachEnd9"], + "802917e4": ["CutscenePeachEndA_1"], + "8029184c": ["CutscenePeachEndA_2"], + "80291870": ["CutscenePeachEndA"], + "80291924": ["CutscenePeachEndB"], + "80291964": ["CutsceneGrandStar0_1"], + "802919dc": ["CutsceneGrandStar0_2"], + "80291ab4": ["CutsceneGrandStar0_4"], + "80291b18": ["CutsceneGrandStar0_5"], + "80291b68": ["CutsceneGrandStar0_6"], + "80291bf4": ["CutsceneGrandStar0_7"], + "80291c3c": ["CutsceneGrandStar0_3"], + "80291cd0": ["CutsceneGrandStar0"], + "80291db0": ["CutsceneGrandStar1_1"], + "80291e84": ["CutsceneGrandStar1_2"], + "80291f18": ["CutsceneGrandStar1_3"], + "80292038": ["CutsceneGrandStar1_4"], + "80292164": ["CutsceneGrandStar1"], + "802921fc": ["func_80291BBC"], + "8029228c": ["CutsceneDanceCommon"], + "80292324": ["CutsceneStarDance1_4"], + "80292370": ["CutsceneStarDance1_5"], + "802923b8": ["CutsceneStarDance1_6"], + "80292400": ["dummy_80291DC0"], + "80292414": ["CutsceneStarDance1_1"], + "8029244c": ["CutsceneStarDance1_3"], + "80292484": ["CutsceneStarDance1_2"], + "802924b8": ["CutsceneStarDance1"], + "80292628": ["func_80291FE8"], + "802926dc": ["CutsceneStarDance3_1"], + "802927d0": ["CutsceneStarDance3_2"], + "80292868": ["CutsceneStarDance3_3"], + "80292974": ["CutsceneStarDance3_4"], + "80292a20": ["CutsceneStarDance3_5"], + "80292a4c": ["CutsceneStarDance3_6"], + "80292a80": ["CutsceneStarDance3"], + "80292c00": ["CutsceneStarDance2_1"], + "80292d80": ["CutsceneStarDance2_3"], + "80292e2c": ["CutsceneStarDance2_2"], + "80292ec4": ["func_80292884"], + "80292f40": ["CutsceneStarDance2_4"], + "80292f98": ["CutsceneStarDance2_5"], + "80292fe4": ["CutsceneStarDance2_6"], + "80293018": ["CutsceneStarDance2"], + "802930f0": ["CutsceneKeyDance0_6"], + "80293164": ["CutsceneKeyDance0_2"], + "802931c0": ["CutsceneKeyDance0_3"], + "80293220": ["CutsceneKeyDance0_4"], + "8029328c": ["CutsceneKeyDance0_5"], + "802932f4": ["CutsceneKeyDance0_7"], + "80293328": ["CutsceneKeyDance0_8"], + "80293354": ["CutsceneKeyDance0_1"], + "8029338c": ["CutsceneKeyDance0"], + "80293488": ["CutsceneEnterBowserPlatform0_4"], + "802934b4": ["CutsceneEnterBowserPlatform0_3"], + "802934d8": ["CutsceneEnterBowserPlatform0_5"], + "80293548": ["CutsceneEnterBowserPlatform0_8"], + "802935e0": ["CutsceneEnterBowserPlatform0_9"], + "80293624": ["CutsceneEnterBowserPlatform0_7"], + "8029369c": ["CutsceneEnterBowserPlatform0_6"], + "802936dc": ["CutsceneEnterBowserPlatform0_1"], + "80293708": ["func_802930C8"], + "80293734": ["CutsceneEnterBowserPlatform0_2"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["CutsceneEnterBowserPlatform1"], + "802938c8": ["CutsceneEnterBowserPlatform2"], + "80293944": ["CutsceneEnterBowserPlatform0"], + "80293abc": ["CutsceneStarSpawn0_1"], + "80293ae8": ["CutsceneStarSpawn0_2"], + "80293b70": ["CutsceneStarSpawn1_1"], + "80293bf4": ["CutsceneStarSpawn1_2"], + "80293c2c": ["CutsceneStarSpawn0"], + "80293cb0": ["CutsceneStarSpawn1"], + "80293d5c": ["CutsceneStarSpawn2"], + "80293d90": ["CutsceneExitWaterfall0_1"], + "80293dd4": ["Cutscene80293794"], + "80293e7c": ["CutsceneExitWaterfall0"], + "80293ed8": ["CutsceneFallCommon1"], + "80293f2c": ["CutsceneFallToCastleGrounds0_1"], + "80293f70": ["CutsceneFallToCastleGrounds0"], + "80293fcc": ["CutsceneSpecialStarSpawn0_1"], + "80294024": ["CutsceneSpecialStarSpawn0_3"], + "80294088": ["CutsceneSpecialStarSpawn0_4"], + "802940cc": ["CutsceneSpecialStarSpawn0_5"], + "8029410c": ["CutsceneSpecialStarSpawn0_2"], + "802942cc": ["CutsceneSpecialStarSpawn0_6"], + "802942f0": ["CutsceneSpecialStarSpawn0"], + "802943d4": ["CutsceneSpecialStarSpawn1"], + "80294428": ["func_80293DE8"], + "80294718": ["CutscenePrepareCannon0_1"], + "802947a4": ["CutscenePrepareCannon0_2"], + "8029480c": ["func_802941CC"], + "802948a0": ["CutscenePrepareCannon0_3"], + "80294a14": ["CutscenePrepareCannon0"], + "80294a94": ["CutscenePrepareCannon1"], + "80294ae8": ["func_802944A8"], + "80294b78": ["func_80294538"], + "80294bb4": ["CutsceneDeath1_1"], + "80294c28": ["CutsceneDeath1_2"], + "80294c5c": ["CutsceneDeath1"], + "80294cc4": ["CutsceneDeath2_1"], + "80294d48": ["CutsceneDeath2_2"], + "80294db4": ["CutsceneDeath2"], + "80294e24": ["CutsceneBBHDeath0_1"], + "80294ea8": ["CutsceneBBHDeath0_2"], + "80294ee8": ["CutsceneBBHDeath0"], + "80294f58": ["CutsceneQuicksandDeath0_1"], + "80294f94": ["CutsceneQuicksandDeath0_2"], + "80294fec": ["CutsceneQuicksandDeath0"], + "802950b0": ["Cutscene1ATodo0_3"], + "80295140": ["Cutscene1ATodo0_2"], + "802951f0": ["Cutscene1ATodo0_1"], + "80295270": ["Cutscene1ATodo0"], + "80295310": ["CutsceneEnterPool0_1"], + "802953dc": ["CutsceneEnterPool0_2"], + "80295418": ["CutsceneEnterPool0"], + "80295480": ["Cutscene26Todo1_1"], + "802954ec": ["Cutscene26Todo1_5"], + "80295518": ["Cutscene26Todo1_2"], + "80295580": ["Cutscene26Todo1_3"], + "80295670": ["Cutscene26Todo1_4"], + "80295740": ["Cutscene26Todo1_7"], + "8029576c": ["Cutscene26Todo1_6"], + "802957c8": ["Cutscene26Todo1"], + "80295894": ["Cutscene26Todo2"], + "802958d4": ["CutsceneEnterPyramidTop0_1"], + "80295930": ["CutsceneEnterPyramidTop0"], + "80295a58": ["CutsceneDialog0_1"], + "80295bf0": ["CutsceneDialog0_2"], + "80295e24": ["CutsceneDialog0_3"], + "80295e8c": ["CutsceneDialog0"], + "80295fb0": ["CutsceneDialog1"], + "80295fd8": ["CutsceneDialog2"], + "80296020": ["CutsceneReadMessage0_1"], + "80296160": ["CutsceneReadMessage0"], + "802962c8": ["CutsceneReadMessage1"], + "802962f0": ["CutsceneReadMessage2"], + "80296318": ["CutsceneExitSuccess1"], + "802963b8": ["CutsceneExitSuccess2"], + "8029652c": ["CutsceneExitSuccess4"], + "8029665c": ["CutsceneExitSuccess3"], + "8029669c": ["CutsceneExitBowserSuccess0_1"], + "802966e4": ["CutsceneExitSuccess5"], + "80296710": ["CutsceneExitBowserSuccess0"], + "802967c4": ["CutsceneExitNonPainting1"], + "8029685c": ["CutsceneBBHExitSuccess0_1"], + "802968a0": ["CutsceneBBHExitSuccess0"], + "8029695c": ["CutsceneNonPaintingDeath0_1"], + "802969f8": ["Cutscene1CTodo_0"], + "80296a64": ["CutsceneNonPaintingDeath0_2"], + "80296b30": ["CutsceneNonPaintingDeath0"], + "80296bc8": ["CutsceneCapSwitchPress0_1"], + "80296c4c": ["CutsceneCapSwitchPress0_4"], + "80296d60": ["CutsceneCapSwitchPress0_5"], + "80296da8": ["CutsceneCapSwitchPress0_2"], + "80296eb4": ["CutsceneCapSwitchPress0_3"], + "80296f38": ["CutsceneCapSwitchPress0_6"], + "80296fa8": ["CutsceneCapSwitchPress0"], + "80297148": ["CutsceneUnlockKeyDoor0_1"], + "8029720c": ["CutsceneUnlockKeyDoor0_2"], + "80297290": ["CutsceneUnlockKeyDoor0_5"], + "802972ec": ["CutsceneUnlockKeyDoor0_6"], + "80297300": ["CutsceneUnlockKeyDoor0_3"], + "80297384": ["CutsceneUnlockKeyDoor0_4"], + "802973b0": ["CutsceneUnlockKeyDoor0"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["CutsceneIntroPeachCommon"], + "8029762c": ["CutsceneIntroPeach4"], + "802976bc": ["CutsceneIntroPeach3_2"], + "80297728": ["CutsceneIntroPeach2_2"], + "80297748": ["CutsceneIntroPeach0_1"], + "80297784": ["CutsceneIntroPeach3_1"], + "802977c8": ["CutsceneIntroPeach3_3"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["CutsceneIntroPeach2"], + "80297908": ["CutsceneIntroPeach3"], + "80297a38": ["CutsceneIntroPeach1"], + "80297a64": ["CutsceneIntroPeach0"], + "80297b58": ["CutsceneEndWaving0_1"], + "80297b84": ["CutsceneEndWaving0"], + "80297c14": ["CutsceneCredits0_1"], + "80297c40": ["CutsceneCredits0"], + "802980dc": ["CutsceneSlidingDoorsOpen0_1"], + "8029819c": ["CutsceneSlidingDoorsOpen0_2"], + "80298218": ["CutsceneSlidingDoorsOpen0_3"], + "80298254": ["CutsceneSlidingDoorsOpen0_4"], + "80298290": ["CutsceneSlidingDoorsOpen0_5"], + "802983b4": ["CutsceneSlidingDoorsOpen0"], + "80298458": ["CutsceneDoubleDoorsOpen1"], + "802984a0": ["CutsceneEnterPainting0_1"], + "802984b4": ["CutsceneEnterPainting0"], + "802987b0": ["CutsceneExitPainting80298094"], + "8029894c": ["CutsceneExitPainting80298230"], + "802989e8": ["CutsceneExitPainting802982CC"], + "80298af8": ["CutsceneExitPainting0"], + "80298ba0": ["Cutscene11Todo_0"], + "80298c2c": ["Cutscene11Todo_1"], + "80298ccc": ["CutsceneExitPainting1"], + "80298d44": ["CutsceneEnterCannon2"], + "80298d9c": ["CutsceneEnterCannon1"], + "80298fe8": ["CutsceneEnterCannon0"], + "80299100": ["CutsceneDoor0"], + "80299154": ["CutsceneDoor1"], + "802991a8": ["CutsceneDoorWarp1"], + "802991f0": ["CutsceneDoor2"], + "802992cc": ["CutsceneDoor3"], + "80299360": ["CutsceneDoor4"], + "80299404": ["CutsceneDoorAB_2"], + "802994e8": ["handle_cutscenes"], + "8029a2f8": ["call_cutscene_func_in_time_range"], + "8029a37c": ["set_cutscene_phase_at_frame"], + "8029a3b4": ["func_80299C98"], + "8029a41c": ["func_80299D00"], + "8029a4d0": ["func_80299DB4"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["zoom_fov_for_sleep"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["func_8029A288"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["func_8029A494"], + "8029ac30": ["func_8029A514"], + "8029aef8": ["func_8029A7DC"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["func_8029B964"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_8029CA50"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["Geo18_8029D890"], + "8029d924": ["Geo18_8029D924"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["func_8029D558"], + "8029dda8": ["apply_object_scale_to_matrix"], + "8029de80": ["func_8029D704"], + "8029e1b0": ["set_object_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["obj_rotate_yaw_toward"], + "8029e694": ["angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["set_object_parent_relative_pos"], + "8029e914": ["set_object_pos"], + "8029e96c": ["set_object_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["Unknown8029E330"], + "8029eb04": ["spawn_water_splash"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["obj_move_using_vel"], + "8029f0c8": ["copy_object_graph_y_offset"], + "8029f0e0": ["copy_object_pos_and_angle"], + "8029f120": ["copy_object_pos"], + "8029f148": ["copy_object_angle"], + "8029f188": ["func_8029EA0C"], + "8029f1b0": ["Unknown8029EA34"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["apply_scale_to_object_transform"], + "8029f3a8": ["copy_object_scale"], + "8029f3d0": ["scale_object_xyz"], + "8029f404": ["scale_object"], + "8029f430": ["obj_scale"], + "8029f464": ["SetObjAnimation"], + "8029f4b4": ["set_obj_animation_and_sound_state"], + "8029f514": ["func_8029ED98"], + "8029f59c": ["func_8029EE20"], + "8029f600": ["obj_enable_rendering_and_become_tangible"], + "8029f620": ["obj_enable_rendering"], + "8029f644": ["obj_disable_rendering_and_become_intangible"], + "8029f66c": ["obj_disable_rendering"], + "8029f694": ["obj_unhide"], + "8029f6bc": ["obj_hide"], + "8029f6e0": ["obj_set_pos_relative"], + "8029f7d8": ["obj_set_pos_relative_to_parent"], + "8029f820": ["obj_enable_rendering_2"], + "8029f848": ["obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_facing_to_move_angles"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["obj_nearest_object_with_behavior"], + "8029f998": ["obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["obj_find_nearby_held_actor"], + "8029fdb4": ["obj_change_action"], + "8029fe00": ["func_8029F684"], + "8029fe6c": ["func_8029F6F0"], + "8029fea4": ["func_8029F728"], + "8029ff04": ["func_8029F788"], + "8029ffa4": ["func_8029F828"], + "802a0008": ["obj_check_anim_frame"], + "802a0050": ["obj_check_anim_frame_in_range"], + "802a00ac": ["Unknown8029F930"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["func_8029FA1C"], + "802a01d8": ["func_8029FA5C"], + "802a0380": ["obj_get_thrown_or_placed"], + "802a0474": ["obj_get_dropped"], + "802a04c0": ["obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["obj_clear_interact_status_flag"], + "802a0568": ["mark_object_for_deletion"], + "802a057c": ["obj_disable"], + "802a05b4": ["obj_become_intangible"], + "802a05d4": ["obj_become_tangible"], + "802a05f0": ["make_object_tangible"], + "802a0604": ["obj_update_floor_height"], + "802a064c": ["obj_update_floor_height_and_get_floor"], + "802a079c": ["obj_apply_drag_xz"], + "802a0e68": ["obj_move_y"], + "802a113c": ["obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["obj_move_y_with_terminal_vel"], + "802a1308": ["obj_compute_vel_xz"], + "802a1370": ["func_802A0BF4"], + "802a1424": ["are_objects_collided"], + "802a148c": ["obj_set_behavior"], + "802a14c4": ["set_object_behavior"], + "802a14fc": ["obj_has_behavior"], + "802a1554": ["object_has_behavior"], + "802a15ac": ["obj_lateral_dist_from_mario_to_home"], + "802a1634": ["obj_lateral_dist_to_home"], + "802a16ac": ["obj_outside_home_square"], + "802a1774": ["obj_outside_home_rectangle"], + "802a184c": ["obj_set_pos_to_home"], + "802a188c": ["obj_set_pos_to_home_and_stop"], + "802a18dc": ["obj_shake_y"], + "802a1930": ["func_802A11B4"], + "802a1960": ["Unknown802A11E4"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["obj_set_hitbox_radius_and_height"], + "802a19f0": ["obj_set_hurtbox_radius_and_height"], + "802a1b34": ["spawn_object_loot_blue_coins"], + "802a1b8c": ["spawn_object_loot_yellow_coins"], + "802a1bdc": ["obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["obj_abs_y_dist_to_home"], + "802a1cc4": ["Unknown802A1548"], + "802a1f3c": ["obj_resolve_wall_collisions"], + "802a2320": ["obj_update_floor_and_walls"], + "802a2348": ["obj_move_standard"], + "802a25b4": ["obj_move_using_vel_and_gravity"], + "802a2644": ["obj_move_using_fvel_and_gravity"], + "802a2674": ["set_object_pos_relative"], + "802a2748": ["obj_angle_to_home"], + "802a27b0": ["func_802A2008"], + "802a2804": ["translate_object_local"], + "802a2930": ["build_object_transform_from_pos_and_angle"], + "802a2a18": ["func_802A2270"], + "802a2a84": ["build_object_transform_relative_to_parent"], + "802a2b28": ["Unknown802A2380"], + "802a2b6c": ["obj_rotate_move_angle_using_vel"], + "802a2bc4": ["obj_rotate_face_angle_using_vel"], + "802a2c1c": ["obj_set_face_angle_to_move_angle"], + "802a2c5c": ["obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["scale_object_random"], + "802a2fc0": ["translate_object_xyz_random"], + "802a308c": ["translate_object_xz_random"], + "802a31e0": ["func_802A2A38"], + "802a3268": ["obj_reflect_move_angle_off_wall"], + "802a32ac": ["obj_spawn_particles"], + "802a34a4": ["set_object_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["obj_wait_then_blink"], + "802a3754": ["obj_is_mario_ground_pounding_platform"], + "802a37ac": ["func_802A3004"], + "802a37dc": ["func_802A3034"], + "802a3818": ["obj_push_mario_away"], + "802a390c": ["obj_push_mario_away_from_cylinder"], + "802a399c": ["BehDustSmokeLoop"], + "802a3a4c": ["func_802A32A4"], + "802a3a88": ["func_802A32E0"], + "802a3b40": ["func_802A3398"], + "802a3c18": ["func_802A3470"], + "802a3cfc": ["obj_is_mario_on_platform"], + "802a3d40": ["obj_shake_y_until"], + "802a3dd4": ["func_802A362C"], + "802a3e30": ["obj_call_action_function"], + "802a3ef8": ["Unknown802A3750"], + "802a3f24": ["func_802A377C"], + "802a3f48": ["obj_mario_far_away"], + "802a404c": ["obj_is_mario_moving_fast_or_in_air"], + "802a40b8": ["item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["obj_enable_rendering_if_mario_in_room"], + "802a4360": ["obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["func_802A3C98"], + "802a44f4": ["set_object_collision_data"], + "802a452c": ["obj_if_hit_wall_bounce_away"], + "802a4564": ["obj_hide_if_mario_far_away_y"], + "802a45e4": ["Geo18_802A45E4"], + "802a462c": ["Unknown802A3E84"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["func_802A3FF8"], + "802a48bc": ["obj_is_mario_in_range_and_ready_to_speak"], + "802a4960": ["obj_update_dialog"], + "802a4be4": ["obj_update_dialog_with_cutscene"], + "802a4f04": ["obj_has_model"], + "802a4f58": ["obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["ShakeScreen"], + "802a513c": ["attack_collided_non_mario_object"], + "802a51ac": ["obj_was_attacked_or_ground_pounded"], + "802a5228": ["copy_object_behavior_params"], + "802a5248": ["func_802A4A70"], + "802a5288": ["func_802A4AB0"], + "802a52c4": ["func_802A4AEC"], + "802a52f8": ["obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["obj_check_interacted"], + "802a5524": ["obj_spawn_loot_blue_coin"], + "802a5588": ["obj_spawn_star_at_y_offset"], + "802a5620": ["func_802A4DB0"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["ActionMrIParticle0"], + "802a5a44": ["ActionMrIParticle1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["func_802A525C"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["ActionMrI3"], + "802a6518": ["ActionMrI2"], + "802a68a0": ["ActionMrI1"], + "802a6ad8": ["ActionMrI0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["ActionActivateCapSwitch0"], + "802a7020": ["ActionActivateCapSwitch1"], + "802a708c": ["ActionActivateCapSwitch2"], + "802a7160": ["ActionActivateCapSwitch3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["Geo18_802A719C"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["ActionKingBobomb0"], + "802a7384": ["func_802A6AF8"], + "802a73d8": ["ActionKingBobomb2"], + "802a7598": ["ActionKingBobomb3"], + "802a7804": ["ActionKingBobomb1"], + "802a78d8": ["ActionKingBobomb6"], + "802a7a60": ["ActionKingBobomb7"], + "802a7b1c": ["ActionKingBobomb8"], + "802a7b5c": ["ActionKingBobomb4"], + "802a7d14": ["ActionKingBobomb5"], + "802a7fbc": ["func_802A7748"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["Unknown802A7E48"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["func_802A81C4"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["ActionOpenedCannon0"], + "802a8f40": ["ActionOpenedCannon4"], + "802a9114": ["ActionOpenedCannon6"], + "802a92fc": ["ActionOpenedCannon5"], + "802a93f8": ["ActionOpenedCannon1"], + "802a9440": ["ActionOpenedCannon2"], + "802a9460": ["ActionOpenedCannon3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["func_802A8D18"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["Unknown802A8EC8"], + "802a98c4": ["func_802A9050"], + "802a9994": ["ActionChuckya0"], + "802a9d08": ["ActionChuckya1"], + "802a9f54": ["ActionChuckya3"], + "802a9fc8": ["ActionChuckya2"], + "802aa02c": ["func_802A97B8"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["func_802A9A0C"], + "802aa3c8": ["func_802A9B54"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["func_802AA0D4"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["BehFadingWarpLoop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["func_802AA618"], + "802aaf48": ["bhv_unused_080c_init"], + "802aaffc": ["func_802AA788"], + "802ab060": ["func_802AA7EC"], + "802ab158": ["func_802AA8E4"], + "802ab18c": ["func_802AA918"], + "802ab1c8": ["bhv_unused_080c_loop"], + "802ab558": ["bhv_spawn_star_objects"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["func_802AB364"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["ActionCoinInsideBoo1"], + "802ac15c": ["ActionCoinInsideBoo0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["func_802AC070"], + "802ac958": ["func_802AC0B8"], + "802ac9d0": ["func_802AC130"], + "802aca6c": ["func_802AC1CC"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["ActionGrindelThwomp4"], + "802ad10c": ["ActionGrindelThwomp2"], + "802ad1a4": ["ActionGrindelThwomp3"], + "802ad238": ["ActionGrindelThwomp1"], + "802ad2d0": ["ActionGrindelThwomp0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["ActionTumblingBridge1"], + "802ad76c": ["ActionTumblingBridge2"], + "802ad7f4": ["ActionTumblingBridge3"], + "802ad828": ["ActionTumblingBridge0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["func_802AD01C"], + "802ad8f0": ["ActionElevator0"], + "802ada4c": ["ActionElevator1"], + "802adb88": ["ActionElevator2"], + "802adce4": ["ActionElevator4"], + "802add70": ["ActionElevator3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["func_802ADA94"], + "802ae360": ["bhv_unused_0e40_init"], + "802ae394": ["Unknown802ADAF4"], + "802ae45c": ["func_802ADBBC"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["func_802ADC20"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["func_802AF9A4"], + "802b039c": ["func_802AFAFC"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["func_802B02FC"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["func_802B0C54"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["func_802B0E74"], + "802b17f4": ["func_802B0F54"], + "802b19d8": ["func_802B1138"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["Geo18_802B1BB0"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["ActionHeaveHo1"], + "802b1e6c": ["ActionHeaveHo2"], + "802b1ff4": ["ActionHeaveHo3"], + "802b20a0": ["ActionHeaveHo0"], + "802b2154": ["func_802B18B4"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["ActionJumpingBox0"], + "802b27d8": ["ActionJumpingBox1"], + "802b2824": ["func_802B1F84"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["func_802B2328"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["func_802B2894"], + "802b3250": ["func_802B29B0"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["ActionBulletBill0"], + "802b38b8": ["ActionBulletBill1"], + "802b394c": ["ActionBulletBill2"], + "802b3b08": ["ActionBulletBill3"], + "802b3b24": ["ActionBulletBill4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["ActionBowserTailAnchor0"], + "802b3cdc": ["ActionBowserTailAnchor1"], + "802b3d10": ["ActionBowserTailAnchor2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["func_802B38B4"], + "802b41fc": ["func_802B392C"], + "802b4288": ["func_802B39B8"], + "802b4300": ["func_802B3A30"], + "802b4368": ["func_802B3A98"], + "802b43dc": ["func_802B3B0C"], + "802b4478": ["ActionBowser5"], + "802b44bc": ["ActionBowser6"], + "802b45f4": ["func_802B3D24"], + "802b473c": ["func_802B3E44"], + "802b48d4": ["func_802B3FDC"], + "802b4a1c": ["func_802B4124"], + "802b4a3c": ["func_802B4144"], + "802b4af4": ["func_u_802B4AF4"], + "802b4bac": ["ActionBowser18"], + "802b4be8": ["ActionBowser0"], + "802b4ca4": ["ActionBowser15"], + "802b4d14": ["ActionBowser14"], + "802b4f00": ["ActionBowser16"], + "802b5104": ["ActionBowser8"], + "802b5218": ["ActionBowser12"], + "802b53f4": ["func_802B4A44"], + "802b5444": ["func_802B4A94"], + "802b5554": ["func_802B4BA4"], + "802b55cc": ["ActionBowser13"], + "802b5798": ["ActionBowser17"], + "802b58bc": ["ActionBowser10"], + "802b59cc": ["ActionBowser9"], + "802b5aec": ["func_802B5108"], + "802b5c00": ["ActionBowser11"], + "802b5c40": ["ActionBowser7"], + "802b5f6c": ["func_802B5588"], + "802b5fec": ["ActionBowser1"], + "802b611c": ["func_802B5738"], + "802b6190": ["ActionBowser2"], + "802b6568": ["ActionBowser3"], + "802b65d0": ["func_802B5C78"], + "802b6670": ["func_802B5D18"], + "802b6730": ["func_802B5DD8"], + "802b67d4": ["func_802B5E7C"], + "802b6878": ["func_802B5F20"], + "802b6a10": ["func_802B60B8"], + "802b6a78": ["func_802B6120"], + "802b6bac": ["func_802B6254"], + "802b6cf0": ["ActionBowser4"], + "802b6e40": ["func_802B64E8"], + "802b6ee0": ["ActionBowser19"], + "802b711c": ["func_802B67C4"], + "802b71e4": ["func_802B688C"], + "802b72d4": ["func_802B697C"], + "802b7418": ["func_802B6AC0"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["Geo18_802B798C"], + "802b7a20": ["func_802B70C8"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["Geo18_802B7D44"], + "802b7e68": ["ActionFallingBowserPlatform0"], + "802b7ef0": ["ActionFallingBowserPlatform1"], + "802b8024": ["ActionFallingBowserPlatform2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["func_802B7A58"], + "802b8434": ["func_802B7ADC"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["func_802B7CFC"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["func_802B8F7C"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["func_802B9120"], + "802b9af8": ["func_802B91A0"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["func_802B95A4"], + "802ba13c": ["func_802B97E4"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["Geo18_802BA2B0"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["unused_Geo18_8029D890"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["func_802BB414"], + "802bbfd8": ["func_802BB680"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["func_802BB9F0"], + "802bc4f4": ["ActionRotatingCwFireBars0"], + "802bc538": ["ActionRotatingCwFireBars1"], + "802bc590": ["ActionRotatingCwFireBars2"], + "802bc5fc": ["ActionRotatingCwFireBars3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["func_802BBFDC"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["func_802BC390"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["func_802BC544"], + "802bcf40": ["bhv_tilting_platform_init"], + "802bcfc4": ["func_802BC66C"], + "802bd058": ["bhv_tilting_platform_loop"], + "802bd3e4": ["func_802BCA8C"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["func_802BCCD4"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["func_802BCF78"], + "802bd91c": ["func_802BCFC4"], + "802bdb04": ["ActionToxBox4"], + "802bdb3c": ["ActionToxBox5"], + "802bdb74": ["ActionToxBox6"], + "802bdbac": ["ActionToxBox7"], + "802bdbe4": ["ActionToxBox1"], + "802bdc7c": ["ActionToxBox2"], + "802bdcc8": ["ActionToxBox3"], + "802bdd14": ["ActionToxBox0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["func_802BE2E8"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["ActionTuxiesMother2"], + "802bef8c": ["ActionTuxiesMother1"], + "802bf1d8": ["ActionTuxiesMother0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["func_802BEA58"], + "802bf474": ["ActionSmallPenguin2"], + "802bf57c": ["ActionSmallPenguin1"], + "802bf648": ["ActionSmallPenguin3"], + "802bf6e4": ["ActionSmallPenguin4"], + "802bf760": ["ActionSmallPenguin0"], + "802bf90c": ["ActionSmallPenguin5"], + "802bfa14": ["func_802BF048"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["ActionFish0"], + "802bfeb8": ["ActionFish1"], + "802bff20": ["ActionFish2"], + "802bff3c": ["bhv_fish_loop"], + "802bff68": ["func_802BF59C"], + "802c00b4": ["ActionFishGroup1"], + "802c0348": ["ActionFishGroup2"], + "802c06a8": ["ActionFishGroup0"], + "802c0768": ["bhv_fish_group_2_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["ActionBirdChirpChirp0"], + "802c0b50": ["ActionBirdChirpChirp1"], + "802c0ba4": ["ActionBirdChirpChirp2"], + "802c0bc4": ["ActionBirdChirpChirp3"], + "802c0be0": ["bhv_bird_chirp_chirp_loop"], + "802c0c0c": ["func_802C0240"], + "802c0cd4": ["ActionCheepCheep0"], + "802c0d44": ["ActionCheepCheep1"], + "802c0f90": ["ActionCheepCheep2"], + "802c1204": ["bhv_cheep_cheep_loop"], + "802c12c0": ["bhv_rotatin_exclamation_box_loop"], + "802c1308": ["ActionExclamationBox0"], + "802c13ec": ["ActionExclamationBox1"], + "802c14b0": ["ActionExclamationBox2"], + "802c15b8": ["ActionExclamationBox3"], + "802c17bc": ["func_802C0DF0"], + "802c18d0": ["ActionExclamationBox4"], + "802c1988": ["ActionExclamationBox5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["func_802C231C"], + "802c2ebc": ["ActionTweester0"], + "802c2fbc": ["ActionTweester1"], + "802c31c4": ["ActionTweester2"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["BehClimbDetectLoop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["func_802C5A64"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["func_802C61CC"], + "802c6d6c": ["ActionWhomp0"], + "802c6ec8": ["ActionWhomp7"], + "802c6fb0": ["ActionWhomp1"], + "802c710c": ["ActionWhomp2"], + "802c7254": ["ActionWhomp3"], + "802c72b4": ["ActionWhomp4"], + "802c7380": ["ActionWhomp5"], + "802c7428": ["func_802C6954"], + "802c75fc": ["func_802C6B28"], + "802c76d4": ["ActionWhomp6"], + "802c7858": ["ActionWhomp8"], + "802c7998": ["ActionWhomp9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_loop"], + "802c7b14": ["bhv_water_drops_loop"], + "802c7cac": ["bhv_surface_waves_loop"], + "802c7d40": ["bhv_water_surface_white_wave_init"], + "802c7d90": ["bhv_object_bubble_ripples_init"], + "802c7dfc": ["bhv_surface_wave_shrinking_init"], + "802c7e5c": ["bhv_wave_trail_loop"], + "802c7f98": ["bhv_white_wind_particle_loop"], + "802c81b4": ["func_802C76E0"], + "802c834c": ["bhv_snowman_wind_blowing_loop"], + "802c85a4": ["func_802C7AD0"], + "802c863c": ["bhv_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["Unknown802C8460"], + "802c8fe4": ["func_802C8504"], + "802c91ec": ["func_802C870C"], + "802c9388": ["func_802C88A8"], + "802c93f8": ["func_802C8918"], + "802c94ac": ["func_802C89CC"], + "802c95b4": ["func_802C8AD4"], + "802c9630": ["func_802C8B50"], + "802c9724": ["detect_object_collisions"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["PlaySound"], + "802ca1e0": ["PlaySound2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["Stub802C9890"], + "802ca380": ["Stub802C98A0"], + "802ca390": ["Stub802C98B0"], + "802ca3a0": ["Stub802C98C0"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_802CA5D0"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["Unknown802CAA84"], + "802cb5c0": ["func_802CAAE0"], + "802cb640": ["func_802CAB60"], + "802cb894": ["func_802CADB4"], + "802cba18": ["func_802CAF38"], + "802cbbc4": ["func_802CB0E4"], + "802cbc20": ["func_802CB140"], + "802cbc7c": ["func_802CB19C"], + "802cbd54": ["func_802CB274"], + "802cbe64": ["func_802CB384"], + "802cbee0": ["func_802CB400"], + "802cbf64": ["func_802CB484"], + "802cbfe8": ["func_802CB508"], + "802cc180": ["func_802CB6A0"], + "802cc4d8": ["func_802CB9F8"], + "802ccbe8": ["func_802CC108"], + "802ccdc8": ["func_802CC2E8"], + "802cd1e8": ["Geo18_802CD1E8"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stopAllRippleExcept"], + "802d2a74": ["find_mario_y_position_on_painting"], + "802d2b08": ["find_mario_z_position_on_painting"], + "802d2b84": ["painting_find_vertical_ripple_location"], + "802d2c40": ["find_part_of_painting_near_mario"], + "802d2d80": ["find_mario_x_position_on_painting"], + "802d2dfc": ["painting_find_horizontal_ripple_location"], + "802d2eb8": ["painting_set_ripple_type"], + "802d2ffc": ["vertical_proximity_ripple_painting_ripple"], + "802d319c": ["vertical_proximity_ripple_painting_ripple_if_mario_enters"], + "802d327c": ["vertical_continuous_ripple_painting_ripple"], + "802d341c": ["vertical_continuous_ripple_painting_ripple_if_mario_enters"], + "802d34fc": ["horizontal_proximity_ripple_painting_ripple"], + "802d36ac": ["horizontal_proximity_ripple_painting_ripple_if_mario_enters"], + "802d379c": ["horizontal_continuous_ripple_painting_ripple"], + "802d393c": ["horizontal_continuous_ripple_painting_ripple_if_mario_enters"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_status"], + "802d3cec": ["painting_calculate_point_ripple"], + "802d3e6c": ["painting_conditionally_calculate_point_ripple"], + "802d3ee4": ["Print1"], + "802d404c": ["Print2"], + "802d43f8": ["small_float_to_byte"], + "802d44bc": ["func_802D39DC"], + "802d47d0": ["func_802D3CF0"], + "802d4edc": ["func_802D43FC"], + "802d50dc": ["func_802D45FC"], + "802d5354": ["func_802D4874"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["update_ddd_painting"], + "802d58e4": ["func_802D4E04"], + "802d593c": ["display_painting"], + "802d59a8": ["vertical_painting_ripple"], + "802d5aa0": ["horizontal_painting_ripple"], + "802d5b98": ["Geo18_802D5B98"], + "802d5d0c": ["Geo18_802D5D0C"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["func_802E2F40"], + "802e3e68": ["func_802E2F58"], + "802e3f68": ["absf_2"], + "802e3fac": ["TurnObjAwayFromSurface"], + "802e405c": ["ObjFindWall"], + "802e41a4": ["TurnObjAwayFromAwkwardFloor"], + "802e42e0": ["ObjOrientGraph"], + "802e43e4": ["CalcObjFriction"], + "802e445c": ["CalcNewObjVelAndPosY"], + "802e4814": ["CalcNewObjVelAndPosYUnderwater"], + "802e4cec": ["ObjUpdatePosVelXZ"], + "802e4d88": ["ObjSplash"], + "802e4e90": ["ObjectStep"], + "802e5114": ["func_802E4204"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["IsPointCloseToObject"], + "802e5360": ["SetObjectVisibility"], + "802e53f4": ["ObjLeaveIfMarioIsNearHome"], + "802e54b0": ["ObjDisplaceHome"], + "802e55d0": ["func_802E46C0"], + "802e569c": ["func_802E478C"], + "802e5760": ["ObjSpawnYellowCoins"], + "802e5824": ["ObjFlickerAndDisappear"], + "802e58b4": ["func_802E49A4"], + "802e5948": ["func_802E4A38"], + "802e5a80": ["ObjCheckFloorDeath"], + "802e5b18": ["ObjLavaDeath"], + "802e5c6c": ["SpawnOrangeNumber"], + "802e5d04": ["Unknown802E4DF4"], + "802e5de8": ["CoinStep"], + "802e5e6c": ["MovingCoinFlickerLoop"], + "802e5ea4": ["CoinCollected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["func_802E540C"], + "802e63ec": ["func_802E54DC"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["func_802E5B7C"], + "802e6af8": ["BobombExplodeLoop"], + "802e6bd4": ["CheckBobombInteractions"], + "802e6cf0": ["BobombPatrolLoop"], + "802e6dc8": ["BobombChaseMarioLoop"], + "802e6e84": ["BobombLaunchedLoop"], + "802e6ed8": ["GenericBobombFreeLoop"], + "802e7020": ["StationaryBobombFreeLoop"], + "802e7134": ["BobombFreeLoop"], + "802e7180": ["BobombHeldLoop"], + "802e7220": ["BobombDroppedLoop"], + "802e7280": ["BobombThrownLoop"], + "802e7324": ["ObjRandomBlink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["BobombBuddyIdleLoop"], + "802e7814": ["BobombBuddyCannonLoop"], + "802e79dc": ["BobombBuddyTalkLoop"], + "802e7b00": ["BobombBuddyTurnToTalkLoop"], + "802e7bb0": ["BobombBuddyActionLoop"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["CannonTrapDoorOpeningLoop"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["func_802E70A8"], + "802e7fec": ["func_802E70DC"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["ButterflyStep"], + "802e9278": ["CalculateButterflyAngle"], + "802e9470": ["ButterflyRestingLoop"], + "802e94e4": ["ButterflyFollowMarioLoop"], + "802e9548": ["ButterflyReturnHomeLoop"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["HootFindNextFloor"], + "802e98c0": ["HootFloorBounce"], + "802e9a4c": ["HootFreeStep"], + "802e9cf4": ["PlayerSetHootYaw"], + "802e9d98": ["HootCarryStep"], + "802e9f60": ["HootSurfaceCollision"], + "802ea144": ["HootAscentLoop"], + "802ea258": ["HootActionLoop"], + "802ea3f0": ["HootTurnToHome"], + "802ea4ec": ["HootAwakeLoop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["BullyCheckMarioCollision"], + "802eb288": ["BullyChaseMarioLoop"], + "802eb3f0": ["BullyKnockbackLoop"], + "802eb510": ["BullyBackUpLoop"], + "802eb5c4": ["BullyBackUpCheck"], + "802eb630": ["PlayBullyStompingSound"], + "802eb744": ["BullyStep"], + "802eb7e0": ["BullySpawnCoin"], + "802eb8b0": ["BullyLavaDeath"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["BigBullySpawnMinion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["BigBullyWithMinionsLavaDeath"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["WaterRingCalcMarioDistInFront"], + "802ec030": ["WaterRingInit"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["CheckWaterRingCollection"], + "802ec3d0": ["SetWaterRingScale"], + "802ec4e0": ["WaterRingCollectedLoop"], + "802ec59c": ["JetStreamWaterRingNotCollectedLoop"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["Unknown802EB8A4"], + "802ec818": ["JetStreamRingSpawnerActiveLoop"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["MantaRayWaterRingNotCollectedLoop"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["CelebrationStarSpinAroundMarioLoop"], + "802ed28c": ["CelebrationStarFaceCameraLoop"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["MoneybagCheckMarioCollision"], + "802ee268": ["MoneybagJump"], + "802ee46c": ["MoneybagMoveAroundLoop"], + "802ee598": ["MoneybagReturnHomeLoop"], + "802ee728": ["MoneybagDisappearLoop"], + "802ee778": ["MoneybagDeathLoop"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["func_802EDA14"], + "802eea7c": ["func_802EDA6C"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["func_802EFB2C"], + "802f0bd4": ["func_802EFB84"], + "802f0c94": ["func_802EFC44"], + "802f0df0": ["func_802EFDA0"], + "802f0fa8": ["func_802EFF58"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["func_802F05DC"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["func_802F0904"], + "802f19c8": ["func_802F0978"], + "802f1a10": ["func_802F09C0"], + "802f1bb8": ["func_802F0B68"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["func_802F0D70"], + "802f1e5c": ["func_802F0E0C"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["func_802F0FE0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["func_802F1190"], + "802f2284": ["func_802F1234"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["func_802F1A50"], + "802f2b88": ["create_star"], + "802f2bd4": ["func_802F1B84"], + "802f2c24": ["func_802F1BD4"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["func_802F238C"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["func_802F2820"], + "802f39b4": ["func_802F2924"], + "802f3a30": ["bhvLllVolcanoFallingTrap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["func_802F2D40"], + "802f3ea8": ["func_802F2E18"], + "802f401c": ["func_802F2F8C"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["func_802F3328"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["func_802F3BD8"], + "802f4ce0": ["func_802F3C50"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["func_802F3F80"], + "802f5068": ["func_802F3FD8"], + "802f52c0": ["func_802F4230"], + "802f547c": ["func_802F43EC"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["func_802F4CE8"], + "802f5e44": ["func_802F4DB4"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["func_802F54F8"], + "802f665c": ["func_802F55CC"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["func_802F5E20"], + "802f7068": ["func_802F5FD8"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["func_802F6E8C"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["BehYoshiLoop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["Geo18_8030D93C"], + "8030d9ac": ["Geo18_8030D9AC"], + "8030da14": ["snufit_act_0"], + "8030db38": ["snufit_act_1"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_manager_loop"], + "80312370": ["coffin_act_0"], + "8031262c": ["coffin_act_1"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["func_8031758C"], + "803188f4": ["func_8031784C"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["func_80318870"], + "80319998": ["note_disable2"], + "803199b8": ["func_80318908"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["func_80318F04"], + "8031a1d0": ["func_80319164"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["func_80319BC8"], + "8031adac": ["note_init_all"], + "8031aee0": ["func_80319E70"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["func_8031AF74"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L_U_8031C200"], + "8031c23c": ["L_U_8031C23C"], + "8031c298": ["L_U_8031C298"], + "8031c2dc": ["L_U_8031C2DC"], + "8031c328": ["L_U_8031C328"], + "8031c36c": ["L_U_8031C36C"], + "8031c3bc": ["L_U_8031C3BC"], + "8031c3e8": ["L_U_8031C3E8"], + "8031c454": ["L_U_8031C454"], + "8031c4a4": ["L_U_8031C4A4"], + "8031c5c8": ["L_U_8031C5C8"], + "8031c698": ["L_U_8031C698"], + "8031c6a0": ["L_U_8031C6A0"], + "8031cbe0": ["L_U_8031CBE0"], + "8031cbec": ["L_U_8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["func_8031D4B8"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["unused_8032050C"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": [".", "osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["D_8032CE9C"], + "8032de4c": ["D_8032CEEC"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused_8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused_8032CFC8"], + "8032df2c": ["unused_8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["D_8032CFD4"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["D_8032CFE0"], + "8032df44": ["D_8032CFE4"], + "8032df48": ["D_8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sTempCutsceneNumber"], + "8032df54": ["gCutsceneNumber"], + "8032df58": ["sCutsceneTransitionTimer"], + "8032df5c": ["D_8032CFFC"], + "8032df60": ["sMarioStatusForCamera"], + "8032df64": ["sLuigiStatusForCamera"], + "8032df68": ["D_8032D008"], + "8032df6c": ["sFixedPresetBasePosition"], + "8032df78": ["D_8032D00C_2"], + "8032df84": ["D_8032D00C_3"], + "8032df90": ["D_8032D00C_4"], + "8032df9c": ["D_8032D00C_5"], + "8032dfa8": ["TableCameraTransitions"], + "8032e008": ["unused_8032D0A8"], + "8032e010": ["unused_8032D0B0"], + "8032e018": ["D_8032D0B8"], + "8032e050": ["BBHRoom6ParallelTrackingTable"], + "8032e098": ["TableCameraSL"], + "8032e0e0": ["TableCameraTHI"], + "8032e128": ["TableCameraHMC"], + "8032e1d0": ["TableCameraSSL"], + "8032e248": ["TableCameraRR"], + "8032e338": ["TableCameraCotMC"], + "8032e368": ["TableCameraCCM"], + "8032e3b0": ["TableCameraInside"], + "8032e6f8": ["TableCameraBBH"], + "8032ecb0": ["TableLevelCinematicCamera"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["D_8032E040"], + "8032eff0": ["D_8032E090"], + "8032f048": ["D_8032E0E8"], + "8032f0e8": ["D_8032E188"], + "8032f130": ["D_8032E1D0"], + "8032f178": ["D_8032E218"], + "8032f1b8": ["D_8032E258"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["D_8032E4E4"], + "8032f48c": ["D_8032E52C"], + "8032f4d4": ["TableCutscenePeachEnd"], + "8032f534": ["TableCutsceneGrandStar"], + "8032f544": ["TableCutscene0FTodo"], + "8032f554": ["TableCutsceneDoorWarp"], + "8032f564": ["TableCutsceneEndWaving"], + "8032f56c": ["TableCutsceneCredits"], + "8032f574": ["TableCutsceneDoor00"], + "8032f59c": ["TableCutsceneDoor01"], + "8032f5c4": ["TableCutsceneDoor0A"], + "8032f5dc": ["TableCutsceneDoor0B"], + "8032f5f4": ["TableCutsceneEnterCannon"], + "8032f60c": ["TableCutsceneStarSpawn"], + "8032f624": ["TableCutsceneSpecialStarSpawn"], + "8032f634": ["TableCutsceneEnterPainting"], + "8032f63c": ["TableCutsceneDeathExit"], + "8032f64c": ["TableCutsceneExitPaintingSuccess"], + "8032f65c": ["TableCutscene11Todo"], + "8032f674": ["TableCutsceneIntroPeach"], + "8032f69c": ["TableCutscenePrepareCannon"], + "8032f6ac": ["TableCutsceneExitWaterfall"], + "8032f6bc": ["TableCutsceneFallToCastleGrounds"], + "8032f6cc": ["TableCutsceneEnterPyramidTop"], + "8032f6dc": ["TableCutscene26Todo"], + "8032f6f4": ["TableCutsceneStandingDeath"], + "8032f6fc": ["TableCutsceneEnterPool"], + "8032f70c": ["TableCutsceneDeath2"], + "8032f714": ["TableCutsceneDeathOnBack"], + "8032f71c": ["TableCutsceneQuicksandDeath"], + "8032f72c": ["TableCutsceneSuffocationDeath"], + "8032f734": ["TableCutsceneEnterBowserPlatform"], + "8032f74c": ["TableCutsceneStarDance1"], + "8032f754": ["TableCutsceneStarDance2"], + "8032f75c": ["TableCutsceneStarDance3"], + "8032f764": ["TableCutsceneKeyDance"], + "8032f76c": ["TableCutsceneCapSwitchPress"], + "8032f774": ["TableCutsceneSlidingDoorsOpen"], + "8032f784": ["TableCutsceneUnlockKeyDoor"], + "8032f794": ["TableCutsceneExitBowserSuccess"], + "8032f7a4": ["TableCutscene1CTodo"], + "8032f7b4": ["TableCutsceneBBHExitSuccess"], + "8032f7c4": ["TableCutsceneNonPaintingDeath"], + "8032f7d4": ["TableCutsceneDialog"], + "8032f7ec": ["TableCutsceneReadMessage"], + "8032f804": ["D_8032E8A4"], + "8032f870": ["D_8032E910"], + "8032f884": ["sBobCreditsCameraPositions"], + "8032f8ac": ["sBobCreditsCameraFocus"], + "8032f8d4": ["sWfCreditsCameraPositions"], + "8032f8fc": ["sWfCreditsCameraFocus"], + "8032f924": ["sJrbCreditsCameraPositions"], + "8032f94c": ["sJrbCreditsCameraFocus"], + "8032f974": ["sCcmSlideCreditsCameraPositions"], + "8032f99c": ["sCcmSlideCreditsCameraFocus"], + "8032f9c4": ["sBbhCreditsCameraPositions"], + "8032f9e4": ["sBbhCreditsCameraFocus"], + "8032fa04": ["sHmcCreditsCameraPositions"], + "8032fa2c": ["sHmcCreditsCameraFocus"], + "8032fa54": ["sThiWigglerCreditsCameraPositions"], + "8032fa6c": ["sThiWigglerCreditsCameraFocus"], + "8032fa84": ["sVolcanoCreditsCameraPositions"], + "8032fab4": ["sVolcanoCreditsCameraFocus"], + "8032fae4": ["sSslCreditsCameraPositions"], + "8032fb14": ["sSslCreditsCameraFocus"], + "8032fb44": ["sDddCreditsCameraPositions"], + "8032fb7c": ["sDddCreditsCameraFocus"], + "8032fbb4": ["sSlCreditsCameraPositions"], + "8032fbd4": ["sSlCreditsCameraFocus"], + "8032fbf4": ["sWdwCreditsCameraPositions"], + "8032fc14": ["sWdwCreditsCameraFocus"], + "8032fc34": ["sTtmCreditsCameraPositions"], + "8032fc64": ["sTtmCreditsCameraFocus"], + "8032fc94": ["sThiHugeCreditsCameraPositions"], + "8032fccc": ["sThiHugeCreditsCameraFocus"], + "8032fd04": ["sTtcCreditsCameraPositions"], + "8032fd24": ["sTtcCreditsCameraFocus"], + "8032fd44": ["sRrCreditsCameraPositions"], + "8032fd64": ["sRrCreditsCameraFocus"], + "8032fd84": ["sSaCreditsCameraPositions"], + "8032fdac": ["sSaCreditsCameraFocus"], + "8032fdd4": ["sCotmcCreditsCameraPositions"], + "8032fdfc": ["sCotmcCreditsCameraFocus"], + "8032fe24": ["sDddSubCreditsCameraPositions"], + "8032fe4c": ["sDddSubCreditsCameraFocus"], + "8032fe74": ["sCcmOutsideCreditsCameraPositions"], + "8032fe94": ["sCcmOutsideCreditsCameraFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "803306dc": ["sCageUkikiPath"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["D_8032FCE8"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["D_8032FDAC"], + "80330d30": ["D_8032FDD0"], + "80330d54": ["D_8032FDF4"], + "80330d78": ["D_8032FE18"], + "80330d9c": ["sWindParticleHitbox"], + "80330dac": ["D_8032FE4C"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["D_8032FF60"], + "80330ec4": ["D_8032FF64"], + "80330ec8": ["D_8032FF68"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["hmcPaintings"], + "80331308": ["insideCastlePaintings"], + "80331344": ["ttmPaintings"], + "8033134c": ["paintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332610": ["D_80331500"], + "80332614": ["D_80331504"], + "80332618": ["D_80331508"], + "8033261c": ["D_8033150C"], + "80332620": ["D_80331510"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b10": ["D_80331A00"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["D_80331C00"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["gPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["D_803320C8"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["gUnusedSoundArgs"], + "80333208": ["gSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358d0": ["viMgrMainArgs"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["D_80334810"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["unknown"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338da0": ["D_80337BB0"], + "80338da8": ["D_80337BB8"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["D_80339F50"], + "8033b350": ["D_80339FE0"], + "8033b3b0": ["gBodyStates"], + "8033b494": ["D_8033A124"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerStatusForCamera"], + "8033c568": ["sCameraPosition"], + "8033c578": ["sCameraFocus"], + "8033c588": ["D_8033B218"], + "8033c594": ["sCreditsCameraPitch"], + "8033c596": ["sCreditsCameraYaw"], + "8033c598": ["gFramesPaused"], + "8033c5a0": ["D_8033B230"], + "8033c5c0": ["sCameraTransition"], + "8033c5e8": ["sGeometryForMario"], + "8033c61c": ["unused_8033B2AC"], + "8033c61e": ["sCameraYawVelocity"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unused_spline_pitch"], + "8033c624": ["unused_spline_yaw"], + "8033c628": ["sSplineParameters"], + "8033c668": ["sSplineParameterMax"], + "8033c66c": ["sPositionAlongSpline"], + "8033c670": ["sSplinePositionLimit"], + "8033c674": ["sCameraCutscenePitchOffset"], + "8033c676": ["sCameraCutsceneYawOffset"], + "8033c678": ["sCameraCutsceneRollOffset"], + "8033c67c": ["unused_8033B30C"], + "8033c680": ["unused_8033B310"], + "8033c684": ["gCameraModeFlags"], + "8033c686": ["unused_8033B316"], + "8033c688": ["sCameraSideCFlags"], + "8033c68a": ["unused_8033B31A"], + "8033c68c": ["gCameraFlags1"], + "8033c68e": ["gCButtonsPressed"], + "8033c690": ["D_8033B320"], + "8033c698": ["gCameraStatus"], + "8033c758": ["unused_8033B3E8"], + "8033c75a": ["sYawFocToMario"], + "8033c75c": ["D_8033B3EC"], + "8033c75e": ["D_8033B3EE"], + "8033c760": ["D_8033B3F0"], + "8033c764": ["D_8033B3F4"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["D_8033B3FA"], + "8033c76c": ["D_8033B3FC"], + "8033c770": ["sFirstPersonCameraPitch"], + "8033c772": ["sFirstPersonCameraYaw"], + "8033c774": ["D_8033B404"], + "8033c776": ["sPlatformLevelPresetBaseYaw"], + "8033c778": ["gPlatformLevelYawOffset"], + "8033c77c": ["D_8033B40C"], + "8033c780": ["D_8033B410"], + "8033c788": ["D_8033B418"], + "8033c7d0": ["sFixedPresetBasePositionOffset"], + "8033c7dc": ["D_8033B46C"], + "8033c7e0": ["D_8033B470"], + "8033c7e8": ["D_8033B478"], + "8033c808": ["D_8033B498"], + "8033c828": ["D_8033B4B8"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["gCameraFlags2"], + "8033c850": ["D_8033B4E0"], + "8033c950": ["D_8033B5E0"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["D_8033B6E8"], + "8033ca5a": ["D_8033B6EA"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["D_8033B6F0"], + "8033cbc8": ["gCutsceneActive"], + "8033cbcc": ["sCutscenePhase"], + "8033cbd0": ["gCurrLevelCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gBehCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361270": ["sGrabReleaseState"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["D_8035FFA0"], + "80361314": ["D_8035FFA4"], + "80361318": ["ripplingPainting"], + "8036131c": ["dddStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361450": ["D_803600E0"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["D_80360C28"], + "80361fa8": ["D_80360C38"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80364c60": ["viMgrThread"], + "80364e10": ["viMgrStack"], + "80365e10": ["__osViMesgQueue"], + "80365e28": ["viMgrMesgBuff"], + "80365e40": ["viEventViMesg"], + "80365e58": ["viEventCounterMesg"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["D_80365CE0"], + "8036708c": ["D_80365D1C"], + "80367090": ["D_80365D20"], + "80367091": ["_osCont_numControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["D_80365DAC"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": ["_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["RandomU16"], + "80383cb4": ["RandomFloat"], + "80383d1c": ["RandomSign"], + "80383d68": ["func_80383D68"], + "80385bf0": ["stub_80385BF0"], + "80385c00": ["cur_object_exec_behavior"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["spot_on_ground_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["water_waves_surface_geo"], + "17000168": ["water_waves_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleMario"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvWaterWaves"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvUnused080C"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvWallTinyStarParticleSpawn"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvPoundTinyStarParticleSpawn"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvPunchTinyTriangleSpawn"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvWaterMistSpawn"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvPoundWhitePuffs"], + "13000e3c": ["bhvGroundSand"], + "13000e58": ["bhvGroundSnow"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingSquarePlatform"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFlameMario"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvSnowLeafParticleSpawn"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingSquarePlatform"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFishGroup2"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvUnused243C"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMarioDustGenerator"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTornadoSandParticle"], + "13002650": ["bhvTornado"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSpecialTripleJumpSparkles"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDrops"], + "13002c7c": ["bhvWaterSurfaceWhiteWave"], + "13002cb0": ["bhvObjectBubbleRipples"], + "13002ce0": ["bhvSurfaceWaves"], + "13002d28": ["bhvWaterSurfaceWhiteWave2"], + "13002d50": ["bhvWavesGenerator"], + "13002d7c": ["bhvSurfaceWaveShrinking"], + "13002db0": ["bhvWaterType"], + "13002dc0": ["bhvWaveTrailOnSurface"], + "13002e04": ["bhvTinyWhiteWindParticle"], + "13002e20": ["bhvWindParticle"], + "13002e3c": ["bhvSnowmanWindBlowing"], + "13002e58": ["bhvWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvWarps60"], + "13002f64": ["bhvWarps64"], + "13002f68": ["bhvWarps68"], + "13002f6c": ["bhvWarps6C"], + "13002f70": ["bhvWarps70"], + "13002f74": ["bhvWarps74"], + "13002f78": ["bhvWarps78"], + "13002f7c": ["bhvWarps7C"], + "13002f80": ["bhvWarps80"], + "13002f84": ["bhvWarps84"], + "13002f88": ["bhvWarps88"], + "13002f8c": ["bhvWarps8C"], + "13002f90": ["bhvWarps90"], + "13002f94": ["bhvWarps94"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinManager"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 4": { - "80000300": "osTvType", - "80000308": "osRomBase", - "8000030c": "osResetType", - "80000318": "osMemSize", - "8000031c": "osAppNmiBuffer", - "80000000": "D_80000000", - "a4000000": "D_A4000000", - "a40004c0": "D_A40004C0", - "a4000774": "D_A4000774", - "a4001000": "D_A4001000", - "a4040010": "D_A4040010", - "a4080000": "D_A4080000", - "a4300000": "D_A4300000", - "a4300004": "D_A4300004", - "a4300008": "D_A4300008", - "a430000c": "D_A430000C", - "a4400010": "D_A4400010", - "a450000c": "D_A450000C", - "a4600000": "D_A4600000", - "a4600004": "D_A4600004", - "a460000c": "D_A460000C", - "a4600010": "D_A4600010", - "a4700000": "D_A4700000", - "a4700010": "D_A4700010", - "a4800018": "D_A4800018", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802ef700": "__osGetCurrFaultedThread", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "EntryPoint", - "80246050": "handle_debug_key_sequences", - "80246170": "Unknown80246170", - "802461cc": "Dummy802461CC", - "802461dc": "Dummy802461DC", - "802461ec": "Dummy802461EC", - "802461fc": "setup_mesg_queues", - "802462e0": "AllocPool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "SendMessage", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "Main", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "func_80247D84", - "80247f08": "func_80247ED8", - "80247fdc": "func_80247FAC", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "func_80248C10", - "80248c58": "func_80248C28", - "80248ce8": "func_80248CB8", - "80248d78": "func_80248D48", - "80248dc0": "func_80248D90", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "func_802491FC", - "8024927c": "func_8024924C", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_paused", - "80249764": "set_play_mode", - "8024978c": "func_8024975C", - "802497b8": "func_80249788", - "8024982c": "nop_802497FC", - "8024983c": "func_8024980C", - "8024995c": "func_8024992C", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "func_8024A02C", - "8024a18c": "func_8024A094", - "8024a1d8": "func_8024A0E0", - "8024a374": "check_instant_warp", - "8024a584": "func_8024A48C", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "func_8024D664", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "func_8024FC94", - "8024ff04": "func_8024FD2C", - "80250098": "func_8024FEC0", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "nop_80254E3C", - "802550b0": "nop_80254E50", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "BehEndPeachLoop", - "802570dc": "BehEndToadLoop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "func_8025F0DC", - "8025f560": "func_8025F188", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "func_802604E0", - "80260aac": "func_802606DC", - "80260cb4": "act_idle", - "80260f94": "func_80260BC4", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "func_80261D70", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "func_80261F8C", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "func_80262574", - "80262bc4": "func_802627B8", - "80262c34": "func_80262828", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "func_80262CEC", - "802631f0": "func_80262DE4", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "func_80263378", - "80263898": "mario_execute_stationary_action", - "80263e60": "func_80263A50", - "80263ee4": "func_80263AD4", - "80264024": "func_80263C14", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "func_802652F0", - "80265b1c": "func_8026570C", - "80265d90": "func_80265980", - "80265df8": "func_802659E8", - "80266038": "func_80265C28", - "802661cc": "func_80265DBC", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "func_80267814", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "func_u_8026A090", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "func_8026CDFC", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_enfvx_main", - "802763d4": "geo_skybox_main", - "802764b0": "Geo18_802764B0", - "8027684c": "bhvToadMessage_loop", - "80276910": "bhvToadMessage_init", - "80276bb8": "bhvUnlockDoorStar_init", - "80276ccc": "bhvUnlockDoorStar_loop", - "802770a4": "Geo18_802770A4", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "Geo18_80277294", - "802773a4": "Geo18_802773A4", - "802774f4": "geo_switch_mario_hand", - "802775cc": "Geo18_802775CC", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "Geo18_80277824", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "func_80278304", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "func_80278AD4", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "func_8027A220", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "func_8027A478", - "8027aa74": "func_8027A4C4", - "8027ab04": "clear_areas", - "8027ad74": "func_8027A7C4", - "8027ae44": "load_area", - "8027af48": "func_8027A998", - "8027afbc": "load_mario_area", - "8027b038": "func_8027AA88", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake", - "8027f8b8": "set_camera_shake_2", - "8027f9f0": "func_8027F440", - "8027fb74": "unused_set_camera_shake", - "8027fc18": "return_height_above_floor", - "8027fe20": "set_cam_focus_and_pos_rel_mario", - "8027fff8": "set_camera_height", - "80280368": "return_pitch_parallel_floor", - "802804f4": "func_8027FF44", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "return_open_camera_yaw", - "80280970": "return_platform_camera_yaw", - "80280b00": "func_80280550", - "80281188": "func_80280BD8", - "802813bc": "func_80280E0C", - "802813ec": "func_80280E3C", - "8028146c": "update_open_camera", - "80281588": "update_platform_level_camera", - "802816a0": "return_reverse_tower_camera_yaw", - "802817fc": "update_reverse_tower_camera", - "80281904": "return_parallel_tracking_camera_yaw", - "80282280": "return_fixed_camera_yaw", - "802826a0": "return_boss_fight_camera_yaw", - "80282c0c": "unused_return_mode_5_camera_yaw", - "80282c28": "unused_80282678", - "80282c3c": "update_boss_fight_camera", - "80282c7c": "update_parallel_tracking_camera", - "80282ce0": "update_fixed_camera", - "80282d78": "return_behind_mario_camera_yaw", - "80283340": "return_behind_mario_water_camera_yaw", - "80283578": "return_slide_camera_yaw", - "802839e4": "update_behind_mario_camera", - "80283a18": "nop_return_water_camera_yaw", - "80283a34": "update_water_surface_camera", - "80283a68": "return_mario_yaw", - "80283af8": "return_close_or_free_roam_cam_yaw", - "80284cb8": "update_close_or_free_roam_camera", - "80284cfc": "camera_lakitu_zoom_distance", - "80284d38": "camera_mario_zoom_distance", - "80284d74": "return_spiral_stairs_camera_yaw", - "802850ac": "update_spiral_stairs_camera", - "802850ec": "return_slide_or_0f_camera_yaw", - "802851dc": "update_slide_camera", - "8028526c": "func_80284CBC", - "802852f4": "func_80284D44", - "80285370": "exit_c_up_mode", - "80285808": "return_first_person_camera_yaw", - "802858a4": "operate_c_up_looking", - "80285a2c": "func_8028547C", - "80285d20": "update_c_up_camera", - "80285ed8": "return_cannon_camera_yaw", - "80285f60": "update_cannon_camera", - "8028603c": "init_transitional_movement", - "80286088": "set_camera_preset", - "80286188": "func_80285BD8", - "80286420": "func_80285E70", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "func_80287404", - "80287bc4": "select_mario_cam_mode", - "80287be0": "func_802875F8", - "80287cb8": "func_802876D0", - "80287d30": "geo_camera_preset_and_pos", - "80287dc0": "dummy_802877D8", - "80287dd4": "dummy_802877EC", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "select_or_activate_mario_cam", - "80288718": "test_or_set_mario_cam_active", - "80288888": "set_spline_values", - "802889b0": "set_face_angle_from_spline", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_status", - "80288f5c": "find_and_return_count_wall_collisions", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_exponential", - "802893f4": "approach_f32_exponential_bool", - "80289488": "approach_f32_exponential", - "802894b4": "approach_s16_exponential_bool", - "8028956c": "approach_s16_exponential", - "80289610": "approach_vec3f_exponential", - "80289684": "set_or_approach_vec3f_exponential", - "802896f8": "approach_vec3s_exponential", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "func_80289738", - "80289f88": "clamp_positions_and_find_yaw_angle", - "8028a080": "func_80289A98", - "8028a0f4": "is_pos_less_than_bounds", - "8028a4ec": "is_behind_surface", - "8028a6bc": "func_8028A0D4", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "check_if_vector_fits_in_bounds", - "8028aa28": "calculate_verticle_angle", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "func_8028AA80", - "8028b11c": "Unknown8028AB34", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "func_8028AF24", - "8028b724": "func_8028B13C", - "8028b754": "func_8028B16C", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "func_8028B36C", - "8028b9c4": "func_8028B3DC", - "8028bd34": "stop_mario", - "8028bd98": "handle_c_button_movement", - "8028c038": "func_8028BA38", - "8028c13c": "set_camera_cutscene_table", - "8028c18c": "determine_star_fadeout_cutscene_table", - "8028c26c": "return_table_door_push_or_pull", - "8028c2c8": "return_cutscene_table", - "8028c7a0": "instant_warp_camera_update", - "8028c8f0": "approach_camera_height", - "8028c9ac": "Unknown8028C3AC", - "8028c9cc": "set_focus_position", - "8028cbf0": "set_pos_from_face_angle_and_vec3f", - "8028cd94": "set_pos_from_face_angle_and_rel_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "func_8028C824", - "8028d44c": "set_camera_preset_fixed_ref_point", - "8028d5ac": "set_camera_preset_platform_level", - "8028d5fc": "set_camera_preset_boss_fight", - "8028d658": "set_camera_preset_close_cam", - "8028d698": "set_camera_preset_open_camera", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "func_8028D32C", - "8028da18": "CameraRR00", - "8028da50": "CameraRR04", - "8028daec": "CameraRR02", - "8028db38": "CameraRR0305", - "8028dbb4": "CameraRR01", - "8028dbf4": "CameraCotMC00", - "8028dc1c": "CameraSL00", - "8028dc70": "camera_change_set_free_roam_mode", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "camera_change_hmc_maze_entrance", - "8028de2c": "CameraHMC02", - "8028de5c": "CameraHMC03", - "8028de90": "CameraHMC04", - "8028dec4": "CameraHMC05", - "8028def8": "CameraSSL00", - "8028df24": "CameraSSL0102", - "8028df6c": "CameraSSL03", - "8028dfb4": "CameraTHI00", - "8028dfe8": "CameraTHI01", - "8028e01c": "CameraRR07", - "8028e064": "CameraRR08", - "8028e098": "camera_change_hmc_cotmc_pool_entry", - "8028e0ec": "CameraInside20", - "8028e164": "CameraInside1E", - "8028e210": "CameraInside1F", - "8028e298": "CameraInside01", - "8028e300": "CameraInside1213", - "8028e38c": "CameraInside00", - "8028e3b8": "CameraInside0E", - "8028e3f0": "CameraInside0F", - "8028e41c": "bbh_room_6_camera", - "8028e450": "CameraBBH24", - "8028e47c": "CameraBBH2E2F", - "8028e524": "bbh_room_1_camera", - "8028e55c": "CameraBBH01", - "8028e594": "bbh_room_2_lower_camera", - "8028e5cc": "bbh_room_4_camera", - "8028e604": "bbh_room_8_camera", - "8028e63c": "bbh_room_5_library_camera", - "8028e674": "bbh_room_5_library_to_hidden_transition", - "8028e6c4": "bbh_room_5_hidden_to_library_transition", - "8028e714": "bbh_room_5_hidden_camera", - "8028e758": "bbh_room_3_camera", - "8028e790": "bbh_room_7_mr_i_camera", - "8028e7c8": "bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "CameraBBH3033", - "8028e8a0": "CameraBBH34", - "8028e8cc": "CameraBBH38", - "8028e930": "bbh_room_12_upper_camera", - "8028e974": "CameraBBH00", - "8028e9a0": "bbh_room_2_library_camera", - "8028e9d8": "bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "bbh_room_2_trapdoor_camera", - "8028ea60": "bbh_room_2_trapdoor_transition", - "8028eab0": "bbh_room_9_attic_camera", - "8028eae8": "bbh_room_9_attic_transition", - "8028eb38": "bbh_room_9_mr_i_transition", - "8028eb88": "bbh_room_13_balcony_camera", - "8028ebc0": "bbh_room_0_camera", - "8028ec04": "camera_change_activate_ccm_slide_flag", - "8028ec2c": "camera_change_deactivate_ccm_slide_flag", - "8028ec58": "surface_type_presets", - "8028ed30": "set_preset_via_surface_or_input", - "8028ed98": "surface_type_presets_thi", - "8028eeb0": "level_specific_camera_update", - "8028f670": "resolve_geometry_collisions", - "8028f914": "func_8028F2F0", - "8028fc9c": "find_mario_relative_geometry", - "8028fe24": "func_8028F800", - "8028fe58": "func_8028F834", - "8028fe84": "unused_8028F860", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "set_cam_yaw_from_focus_and_pos", - "802900e0": "func_8028FABC", - "80290104": "func_8028FAE0", - "80290168": "cap_switch_save", - "802901a4": "func_8028FB80", - "802901fc": "func_8028FBD8", - "802903b8": "func_8028FD94", - "802904a8": "CutsceneIntroPeach0_2", - "802904e4": "CutsceneIntroPeach2_1", - "8029051c": "func_8028FEDC", - "8029053c": "move_credits_camera", - "80290784": "func_80290144", - "802907f4": "func_802901B4", - "80290864": "func_80290224", - "802908e8": "func_802902A8", - "802909d0": "rotate_camera", - "80290a5c": "CutsceneEnterSomething8029041C", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "func_80290514", - "80290ba4": "func_80290564", - "80290bd8": "func_80290598", - "80290c08": "unused_802905C8", - "80290c1c": "Cutscene0FTodo0", - "80290c30": "Cutscene0FTodo1", - "80290c44": "CutscenePeachEnd0_1", - "80290c9c": "CutscenePeachEnd0_2", - "80290d90": "CutscenePeachEnd0", - "80290e00": "CutscenePeachEnd2", - "80290e74": "CutscenePeachEndCommon367A", - "80290eb0": "CutscenePeachEnd3_1", - "80290f1c": "CutscenePeachEnd3", - "80290f8c": "CutscenePeachEnd1", - "80291074": "CutscenePeachEnd4_1", - "80291108": "CutscenePeachEnd4", - "802911c8": "CutscenePeachEnd5_1", - "80291208": "CutscenePeachEnd5_2", - "8029127c": "CutscenePeachEnd5_3", - "802912b8": "CutscenePeachEnd5_4", - "80291354": "CutscenePeachEnd5", - "8029142c": "CutscenePeachEnd6", - "802914cc": "CutscenePeachEnd7_1", - "80291514": "CutscenePeachEnd7", - "802915d4": "CutscenePeachEnd8", - "80291654": "CutscenePeachEnd9_1", - "802916b8": "CutscenePeachEnd9_2", - "80291774": "CutscenePeachEnd9", - "802917e4": "CutscenePeachEndA_1", - "8029184c": "CutscenePeachEndA_2", - "80291870": "CutscenePeachEndA", - "80291924": "CutscenePeachEndB", - "80291964": "CutsceneGrandStar0_1", - "802919dc": "CutsceneGrandStar0_2", - "80291ab4": "CutsceneGrandStar0_4", - "80291b18": "CutsceneGrandStar0_5", - "80291b68": "CutsceneGrandStar0_6", - "80291bf4": "CutsceneGrandStar0_7", - "80291c3c": "CutsceneGrandStar0_3", - "80291cd0": "CutsceneGrandStar0", - "80291db0": "CutsceneGrandStar1_1", - "80291e84": "CutsceneGrandStar1_2", - "80291f18": "CutsceneGrandStar1_3", - "80292038": "CutsceneGrandStar1_4", - "80292164": "CutsceneGrandStar1", - "802921fc": "func_80291BBC", - "8029228c": "CutsceneDanceCommon", - "80292324": "CutsceneStarDance1_4", - "80292370": "CutsceneStarDance1_5", - "802923b8": "CutsceneStarDance1_6", - "80292400": "dummy_80291DC0", - "80292414": "CutsceneStarDance1_1", - "8029244c": "CutsceneStarDance1_3", - "80292484": "CutsceneStarDance1_2", - "802924b8": "CutsceneStarDance1", - "80292628": "func_80291FE8", - "802926dc": "CutsceneStarDance3_1", - "802927d0": "CutsceneStarDance3_2", - "80292868": "CutsceneStarDance3_3", - "80292974": "CutsceneStarDance3_4", - "80292a20": "CutsceneStarDance3_5", - "80292a4c": "CutsceneStarDance3_6", - "80292a80": "CutsceneStarDance3", - "80292c00": "CutsceneStarDance2_1", - "80292d80": "CutsceneStarDance2_3", - "80292e2c": "CutsceneStarDance2_2", - "80292ec4": "func_80292884", - "80292f40": "CutsceneStarDance2_4", - "80292f98": "CutsceneStarDance2_5", - "80292fe4": "CutsceneStarDance2_6", - "80293018": "CutsceneStarDance2", - "802930f0": "CutsceneKeyDance0_6", - "80293164": "CutsceneKeyDance0_2", - "802931c0": "CutsceneKeyDance0_3", - "80293220": "CutsceneKeyDance0_4", - "8029328c": "CutsceneKeyDance0_5", - "802932f4": "CutsceneKeyDance0_7", - "80293328": "CutsceneKeyDance0_8", - "80293354": "CutsceneKeyDance0_1", - "8029338c": "CutsceneKeyDance0", - "80293488": "CutsceneEnterBowserPlatform0_4", - "802934b4": "CutsceneEnterBowserPlatform0_3", - "802934d8": "CutsceneEnterBowserPlatform0_5", - "80293548": "CutsceneEnterBowserPlatform0_8", - "802935e0": "CutsceneEnterBowserPlatform0_9", - "80293624": "CutsceneEnterBowserPlatform0_7", - "8029369c": "CutsceneEnterBowserPlatform0_6", - "802936dc": "CutsceneEnterBowserPlatform0_1", - "80293708": "func_802930C8", - "80293734": "CutsceneEnterBowserPlatform0_2", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "CutsceneEnterBowserPlatform1", - "802938c8": "CutsceneEnterBowserPlatform2", - "80293944": "CutsceneEnterBowserPlatform0", - "80293abc": "CutsceneStarSpawn0_1", - "80293ae8": "CutsceneStarSpawn0_2", - "80293b70": "CutsceneStarSpawn1_1", - "80293bf4": "CutsceneStarSpawn1_2", - "80293c2c": "CutsceneStarSpawn0", - "80293cb0": "CutsceneStarSpawn1", - "80293d5c": "CutsceneStarSpawn2", - "80293d90": "CutsceneExitWaterfall0_1", - "80293dd4": "Cutscene80293794", - "80293e7c": "CutsceneExitWaterfall0", - "80293ed8": "CutsceneFallCommon1", - "80293f2c": "CutsceneFallToCastleGrounds0_1", - "80293f70": "CutsceneFallToCastleGrounds0", - "80293fcc": "CutsceneSpecialStarSpawn0_1", - "80294024": "CutsceneSpecialStarSpawn0_3", - "80294088": "CutsceneSpecialStarSpawn0_4", - "802940cc": "CutsceneSpecialStarSpawn0_5", - "8029410c": "CutsceneSpecialStarSpawn0_2", - "802942cc": "CutsceneSpecialStarSpawn0_6", - "802942f0": "CutsceneSpecialStarSpawn0", - "802943d4": "CutsceneSpecialStarSpawn1", - "80294428": "func_80293DE8", - "80294718": "CutscenePrepareCannon0_1", - "802947a4": "CutscenePrepareCannon0_2", - "8029480c": "func_802941CC", - "802948a0": "CutscenePrepareCannon0_3", - "80294a14": "CutscenePrepareCannon0", - "80294a94": "CutscenePrepareCannon1", - "80294ae8": "func_802944A8", - "80294b78": "func_80294538", - "80294bb4": "CutsceneDeath1_1", - "80294c28": "CutsceneDeath1_2", - "80294c5c": "CutsceneDeath1", - "80294cc4": "CutsceneDeath2_1", - "80294d48": "CutsceneDeath2_2", - "80294db4": "CutsceneDeath2", - "80294e24": "CutsceneBBHDeath0_1", - "80294ea8": "CutsceneBBHDeath0_2", - "80294ee8": "CutsceneBBHDeath0", - "80294f58": "CutsceneQuicksandDeath0_1", - "80294f94": "CutsceneQuicksandDeath0_2", - "80294fec": "CutsceneQuicksandDeath0", - "802950b0": "Cutscene1ATodo0_3", - "80295140": "Cutscene1ATodo0_2", - "802951f0": "Cutscene1ATodo0_1", - "80295270": "Cutscene1ATodo0", - "80295310": "CutsceneEnterPool0_1", - "802953dc": "CutsceneEnterPool0_2", - "80295418": "CutsceneEnterPool0", - "80295480": "Cutscene26Todo1_1", - "802954ec": "Cutscene26Todo1_5", - "80295518": "Cutscene26Todo1_2", - "80295580": "Cutscene26Todo1_3", - "80295670": "Cutscene26Todo1_4", - "80295740": "Cutscene26Todo1_7", - "8029576c": "Cutscene26Todo1_6", - "802957c8": "Cutscene26Todo1", - "80295894": "Cutscene26Todo2", - "802958d4": "CutsceneEnterPyramidTop0_1", - "80295930": "CutsceneEnterPyramidTop0", - "80295a58": "CutsceneDialog0_1", - "80295bf0": "CutsceneDialog0_2", - "80295e24": "CutsceneDialog0_3", - "80295e8c": "CutsceneDialog0", - "80295fb0": "CutsceneDialog1", - "80295fd8": "CutsceneDialog2", - "80296020": "CutsceneReadMessage0_1", - "80296160": "CutsceneReadMessage0", - "802962c8": "CutsceneReadMessage1", - "802962f0": "CutsceneReadMessage2", - "80296318": "CutsceneExitSuccess1", - "802963b8": "CutsceneExitSuccess2", - "8029652c": "CutsceneExitSuccess4", - "8029665c": "CutsceneExitSuccess3", - "8029669c": "CutsceneExitBowserSuccess0_1", - "802966e4": "CutsceneExitSuccess5", - "80296710": "CutsceneExitBowserSuccess0", - "802967c4": "CutsceneExitNonPainting1", - "8029685c": "CutsceneBBHExitSuccess0_1", - "802968a0": "CutsceneBBHExitSuccess0", - "8029695c": "CutsceneNonPaintingDeath0_1", - "802969f8": "Cutscene1CTodo_0", - "80296a64": "CutsceneNonPaintingDeath0_2", - "80296b30": "CutsceneNonPaintingDeath0", - "80296bc8": "CutsceneCapSwitchPress0_1", - "80296c4c": "CutsceneCapSwitchPress0_4", - "80296d60": "CutsceneCapSwitchPress0_5", - "80296da8": "CutsceneCapSwitchPress0_2", - "80296eb4": "CutsceneCapSwitchPress0_3", - "80296f38": "CutsceneCapSwitchPress0_6", - "80296fa8": "CutsceneCapSwitchPress0", - "80297148": "CutsceneUnlockKeyDoor0_1", - "8029720c": "CutsceneUnlockKeyDoor0_2", - "80297290": "CutsceneUnlockKeyDoor0_5", - "802972ec": "CutsceneUnlockKeyDoor0_6", - "80297300": "CutsceneUnlockKeyDoor0_3", - "80297384": "CutsceneUnlockKeyDoor0_4", - "802973b0": "CutsceneUnlockKeyDoor0", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "CutsceneIntroPeachCommon", - "8029762c": "CutsceneIntroPeach4", - "802976bc": "CutsceneIntroPeach3_2", - "80297728": "CutsceneIntroPeach2_2", - "80297748": "CutsceneIntroPeach0_1", - "80297784": "CutsceneIntroPeach3_1", - "802977c8": "CutsceneIntroPeach3_3", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "CutsceneIntroPeach2", - "80297908": "CutsceneIntroPeach3", - "80297a38": "CutsceneIntroPeach1", - "80297a64": "CutsceneIntroPeach0", - "80297b58": "CutsceneEndWaving0_1", - "80297b84": "CutsceneEndWaving0", - "80297c14": "CutsceneCredits0_1", - "80297c40": "CutsceneCredits0", - "802980dc": "CutsceneSlidingDoorsOpen0_1", - "8029819c": "CutsceneSlidingDoorsOpen0_2", - "80298218": "CutsceneSlidingDoorsOpen0_3", - "80298254": "CutsceneSlidingDoorsOpen0_4", - "80298290": "CutsceneSlidingDoorsOpen0_5", - "802983b4": "CutsceneSlidingDoorsOpen0", - "80298458": "CutsceneDoubleDoorsOpen1", - "802984a0": "CutsceneEnterPainting0_1", - "802984b4": "CutsceneEnterPainting0", - "802987b0": "CutsceneExitPainting80298094", - "8029894c": "CutsceneExitPainting80298230", - "802989e8": "CutsceneExitPainting802982CC", - "80298af8": "CutsceneExitPainting0", - "80298ba0": "Cutscene11Todo_0", - "80298c2c": "Cutscene11Todo_1", - "80298ccc": "CutsceneExitPainting1", - "80298d44": "CutsceneEnterCannon2", - "80298d9c": "CutsceneEnterCannon1", - "80298fe8": "CutsceneEnterCannon0", - "80299100": "CutsceneDoor0", - "80299154": "CutsceneDoor1", - "802991a8": "CutsceneDoorWarp1", - "802991f0": "CutsceneDoor2", - "802992cc": "CutsceneDoor3", - "80299360": "CutsceneDoor4", - "80299404": "CutsceneDoorAB_2", - "802994e8": "handle_cutscenes", - "8029a2f8": "call_cutscene_func_in_time_range", - "8029a37c": "set_cutscene_phase_at_frame", - "8029a3b4": "func_80299C98", - "8029a41c": "func_80299D00", - "8029a4d0": "func_80299DB4", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "zoom_fov_for_sleep", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "func_8029A288", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "func_8029A494", - "8029ac30": "func_8029A514", - "8029aef8": "func_8029A7DC", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "func_8029B964", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_8029CA50", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "Geo18_8029D890", - "8029d924": "Geo18_8029D924", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "func_8029D558", - "8029dda8": "apply_object_scale_to_matrix", - "8029de80": "func_8029D704", - "8029e1b0": "set_object_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "obj_rotate_yaw_toward", - "8029e694": "angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "set_object_parent_relative_pos", - "8029e914": "set_object_pos", - "8029e96c": "set_object_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "Unknown8029E330", - "8029eb04": "spawn_water_splash", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "obj_move_using_vel", - "8029f0c8": "copy_object_graph_y_offset", - "8029f0e0": "copy_object_pos_and_angle", - "8029f120": "copy_object_pos", - "8029f148": "copy_object_angle", - "8029f188": "func_8029EA0C", - "8029f1b0": "Unknown8029EA34", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "apply_scale_to_object_transform", - "8029f3a8": "copy_object_scale", - "8029f3d0": "scale_object_xyz", - "8029f404": "scale_object", - "8029f430": "obj_scale", - "8029f464": "SetObjAnimation", - "8029f4b4": "set_obj_animation_and_sound_state", - "8029f514": "func_8029ED98", - "8029f59c": "func_8029EE20", - "8029f600": "obj_enable_rendering_and_become_tangible", - "8029f620": "obj_enable_rendering", - "8029f644": "obj_disable_rendering_and_become_intangible", - "8029f66c": "obj_disable_rendering", - "8029f694": "obj_unhide", - "8029f6bc": "obj_hide", - "8029f6e0": "obj_set_pos_relative", - "8029f7d8": "obj_set_pos_relative_to_parent", - "8029f820": "obj_enable_rendering_2", - "8029f848": "obj_unused_init_on_floor", - "8029f8ec": "obj_set_facing_to_move_angles", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "obj_nearest_object_with_behavior", - "8029f998": "obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "obj_find_nearby_held_actor", - "8029fdb4": "obj_change_action", - "8029fe00": "func_8029F684", - "8029fe6c": "func_8029F6F0", - "8029fea4": "func_8029F728", - "8029ff04": "func_8029F788", - "8029ffa4": "func_8029F828", - "802a0008": "obj_check_anim_frame", - "802a0050": "obj_check_anim_frame_in_range", - "802a00ac": "Unknown8029F930", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "func_8029FA1C", - "802a01d8": "func_8029FA5C", - "802a0380": "obj_get_thrown_or_placed", - "802a0474": "obj_get_dropped", - "802a04c0": "obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "obj_clear_interact_status_flag", - "802a0568": "mark_object_for_deletion", - "802a057c": "obj_disable", - "802a05b4": "obj_become_intangible", - "802a05d4": "obj_become_tangible", - "802a05f0": "make_object_tangible", - "802a0604": "obj_update_floor_height", - "802a064c": "obj_update_floor_height_and_get_floor", - "802a079c": "obj_apply_drag_xz", - "802a0e68": "obj_move_y", - "802a113c": "obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "obj_move_xz_using_fvel_and_yaw", - "802a12a4": "obj_move_y_with_terminal_vel", - "802a1308": "obj_compute_vel_xz", - "802a1370": "func_802A0BF4", - "802a1424": "are_objects_collided", - "802a148c": "obj_set_behavior", - "802a14c4": "set_object_behavior", - "802a14fc": "obj_has_behavior", - "802a1554": "object_has_behavior", - "802a15ac": "obj_lateral_dist_from_mario_to_home", - "802a1634": "obj_lateral_dist_to_home", - "802a16ac": "obj_outside_home_square", - "802a1774": "obj_outside_home_rectangle", - "802a184c": "obj_set_pos_to_home", - "802a188c": "obj_set_pos_to_home_and_stop", - "802a18dc": "obj_shake_y", - "802a1930": "func_802A11B4", - "802a1960": "Unknown802A11E4", - "802a19ac": "obj_set_billboard", - "802a19c8": "obj_set_hitbox_radius_and_height", - "802a19f0": "obj_set_hurtbox_radius_and_height", - "802a1b34": "spawn_object_loot_blue_coins", - "802a1b8c": "spawn_object_loot_yellow_coins", - "802a1bdc": "obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "obj_abs_y_dist_to_home", - "802a1cc4": "Unknown802A1548", - "802a1f3c": "obj_resolve_wall_collisions", - "802a2320": "obj_update_floor_and_walls", - "802a2348": "obj_move_standard", - "802a25b4": "obj_move_using_vel_and_gravity", - "802a2644": "obj_move_using_fvel_and_gravity", - "802a2674": "set_object_pos_relative", - "802a2748": "obj_angle_to_home", - "802a27b0": "func_802A2008", - "802a2804": "translate_object_local", - "802a2930": "build_object_transform_from_pos_and_angle", - "802a2a18": "func_802A2270", - "802a2a84": "build_object_transform_relative_to_parent", - "802a2b28": "Unknown802A2380", - "802a2b6c": "obj_rotate_move_angle_using_vel", - "802a2bc4": "obj_rotate_face_angle_using_vel", - "802a2c1c": "obj_set_face_angle_to_move_angle", - "802a2c5c": "obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "scale_object_random", - "802a2fc0": "translate_object_xyz_random", - "802a308c": "translate_object_xz_random", - "802a31e0": "func_802A2A38", - "802a3268": "obj_reflect_move_angle_off_wall", - "802a32ac": "obj_spawn_particles", - "802a34a4": "set_object_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "obj_wait_then_blink", - "802a3754": "obj_is_mario_ground_pounding_platform", - "802a37ac": "func_802A3004", - "802a37dc": "func_802A3034", - "802a3818": "obj_push_mario_away", - "802a390c": "obj_push_mario_away_from_cylinder", - "802a399c": "BehDustSmokeLoop", - "802a3a4c": "func_802A32A4", - "802a3a88": "func_802A32E0", - "802a3b40": "func_802A3398", - "802a3c18": "func_802A3470", - "802a3cfc": "obj_is_mario_on_platform", - "802a3d40": "obj_shake_y_until", - "802a3dd4": "func_802A362C", - "802a3e30": "obj_call_action_function", - "802a3ef8": "Unknown802A3750", - "802a3f24": "func_802A377C", - "802a3f48": "obj_mario_far_away", - "802a404c": "obj_is_mario_moving_fast_or_in_air", - "802a40b8": "item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "obj_enable_rendering_if_mario_in_room", - "802a4360": "obj_set_hitbox_and_die_if_attacked", - "802a4440": "func_802A3C98", - "802a44f4": "set_object_collision_data", - "802a452c": "obj_if_hit_wall_bounce_away", - "802a4564": "obj_hide_if_mario_far_away_y", - "802a45e4": "Geo18_802A45E4", - "802a462c": "Unknown802A3E84", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "func_802A3FF8", - "802a48bc": "obj_is_mario_in_range_and_ready_to_speak", - "802a4960": "obj_update_dialog", - "802a4be4": "obj_update_dialog_with_cutscene", - "802a4f04": "obj_has_model", - "802a4f58": "obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "ShakeScreen", - "802a513c": "attack_collided_non_mario_object", - "802a51ac": "obj_was_attacked_or_ground_pounded", - "802a5228": "copy_object_behavior_params", - "802a5248": "func_802A4A70", - "802a5288": "func_802A4AB0", - "802a52c4": "func_802A4AEC", - "802a52f8": "obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "obj_check_interacted", - "802a5524": "obj_spawn_loot_blue_coin", - "802a5588": "obj_spawn_star_at_y_offset", - "802a5620": "func_802A4DB0", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "ActionMrIParticle0", - "802a5a44": "ActionMrIParticle1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "func_802A525C", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "ActionMrI3", - "802a6518": "ActionMrI2", - "802a68a0": "ActionMrI1", - "802a6ad8": "ActionMrI0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "ActionActivateCapSwitch0", - "802a7020": "ActionActivateCapSwitch1", - "802a708c": "ActionActivateCapSwitch2", - "802a7160": "ActionActivateCapSwitch3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "Geo18_802A719C", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "ActionKingBobomb0", - "802a7384": "func_802A6AF8", - "802a73d8": "ActionKingBobomb2", - "802a7598": "ActionKingBobomb3", - "802a7804": "ActionKingBobomb1", - "802a78d8": "ActionKingBobomb6", - "802a7a60": "ActionKingBobomb7", - "802a7b1c": "ActionKingBobomb8", - "802a7b5c": "ActionKingBobomb4", - "802a7d14": "ActionKingBobomb5", - "802a7fbc": "func_802A7748", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "Unknown802A7E48", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "func_802A81C4", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "ActionOpenedCannon0", - "802a8f40": "ActionOpenedCannon4", - "802a9114": "ActionOpenedCannon6", - "802a92fc": "ActionOpenedCannon5", - "802a93f8": "ActionOpenedCannon1", - "802a9440": "ActionOpenedCannon2", - "802a9460": "ActionOpenedCannon3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "func_802A8D18", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "Unknown802A8EC8", - "802a98c4": "func_802A9050", - "802a9994": "ActionChuckya0", - "802a9d08": "ActionChuckya1", - "802a9f54": "ActionChuckya3", - "802a9fc8": "ActionChuckya2", - "802aa02c": "func_802A97B8", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "func_802A9A0C", - "802aa3c8": "func_802A9B54", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "func_802AA0D4", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "BehFadingWarpLoop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "func_802AA618", - "802aaf48": "bhv_unused_080c_init", - "802aaffc": "func_802AA788", - "802ab060": "func_802AA7EC", - "802ab158": "func_802AA8E4", - "802ab18c": "func_802AA918", - "802ab1c8": "bhv_unused_080c_loop", - "802ab558": "bhv_spawn_star_objects", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "func_802AB364", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "ActionCoinInsideBoo1", - "802ac15c": "ActionCoinInsideBoo0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "func_802AC070", - "802ac958": "func_802AC0B8", - "802ac9d0": "func_802AC130", - "802aca6c": "func_802AC1CC", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "ActionGrindelThwomp4", - "802ad10c": "ActionGrindelThwomp2", - "802ad1a4": "ActionGrindelThwomp3", - "802ad238": "ActionGrindelThwomp1", - "802ad2d0": "ActionGrindelThwomp0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "ActionTumblingBridge1", - "802ad76c": "ActionTumblingBridge2", - "802ad7f4": "ActionTumblingBridge3", - "802ad828": "ActionTumblingBridge0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "func_802AD01C", - "802ad8f0": "ActionElevator0", - "802ada4c": "ActionElevator1", - "802adb88": "ActionElevator2", - "802adce4": "ActionElevator4", - "802add70": "ActionElevator3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "func_802ADA94", - "802ae360": "bhv_unused_0e40_init", - "802ae394": "Unknown802ADAF4", - "802ae45c": "func_802ADBBC", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "func_802ADC20", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "func_802AF9A4", - "802b039c": "func_802AFAFC", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "func_802B02FC", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "func_802B0C54", - "802b15e8": "bhv_pushable_loop", - "802b1714": "func_802B0E74", - "802b17f4": "func_802B0F54", - "802b19d8": "func_802B1138", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "Geo18_802B1BB0", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "ActionHeaveHo1", - "802b1e6c": "ActionHeaveHo2", - "802b1ff4": "ActionHeaveHo3", - "802b20a0": "ActionHeaveHo0", - "802b2154": "func_802B18B4", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "ActionJumpingBox0", - "802b27d8": "ActionJumpingBox1", - "802b2824": "func_802B1F84", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "func_802B2328", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "func_802B2894", - "802b3250": "func_802B29B0", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "ActionBulletBill0", - "802b38b8": "ActionBulletBill1", - "802b394c": "ActionBulletBill2", - "802b3b08": "ActionBulletBill3", - "802b3b24": "ActionBulletBill4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "ActionBowserTailAnchor0", - "802b3cdc": "ActionBowserTailAnchor1", - "802b3d10": "ActionBowserTailAnchor2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "func_802B38B4", - "802b41fc": "func_802B392C", - "802b4288": "func_802B39B8", - "802b4300": "func_802B3A30", - "802b4368": "func_802B3A98", - "802b43dc": "func_802B3B0C", - "802b4478": "ActionBowser5", - "802b44bc": "ActionBowser6", - "802b45f4": "func_802B3D24", - "802b473c": "func_802B3E44", - "802b48d4": "func_802B3FDC", - "802b4a1c": "func_802B4124", - "802b4a3c": "func_802B4144", - "802b4af4": "func_u_802B4AF4", - "802b4bac": "ActionBowser18", - "802b4be8": "ActionBowser0", - "802b4ca4": "ActionBowser15", - "802b4d14": "ActionBowser14", - "802b4f00": "ActionBowser16", - "802b5104": "ActionBowser8", - "802b5218": "ActionBowser12", - "802b53f4": "func_802B4A44", - "802b5444": "func_802B4A94", - "802b5554": "func_802B4BA4", - "802b55cc": "ActionBowser13", - "802b5798": "ActionBowser17", - "802b58bc": "ActionBowser10", - "802b59cc": "ActionBowser9", - "802b5aec": "func_802B5108", - "802b5c00": "ActionBowser11", - "802b5c40": "ActionBowser7", - "802b5f6c": "func_802B5588", - "802b5fec": "ActionBowser1", - "802b611c": "func_802B5738", - "802b6190": "ActionBowser2", - "802b6568": "ActionBowser3", - "802b65d0": "func_802B5C78", - "802b6670": "func_802B5D18", - "802b6730": "func_802B5DD8", - "802b67d4": "func_802B5E7C", - "802b6878": "func_802B5F20", - "802b6a10": "func_802B60B8", - "802b6a78": "func_802B6120", - "802b6bac": "func_802B6254", - "802b6cf0": "ActionBowser4", - "802b6e40": "func_802B64E8", - "802b6ee0": "ActionBowser19", - "802b711c": "func_802B67C4", - "802b71e4": "func_802B688C", - "802b72d4": "func_802B697C", - "802b7418": "func_802B6AC0", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "Geo18_802B798C", - "802b7a20": "func_802B70C8", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "Geo18_802B7D44", - "802b7e68": "ActionFallingBowserPlatform0", - "802b7ef0": "ActionFallingBowserPlatform1", - "802b8024": "ActionFallingBowserPlatform2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "func_802B7A58", - "802b8434": "func_802B7ADC", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "func_802B7CFC", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "func_802B8F7C", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "func_802B9120", - "802b9af8": "func_802B91A0", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "func_802B95A4", - "802ba13c": "func_802B97E4", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "Geo18_802BA2B0", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "unused_Geo18_8029D890", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "func_802BB414", - "802bbfd8": "func_802BB680", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "func_802BB9F0", - "802bc4f4": "ActionRotatingCwFireBars0", - "802bc538": "ActionRotatingCwFireBars1", - "802bc590": "ActionRotatingCwFireBars2", - "802bc5fc": "ActionRotatingCwFireBars3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "func_802BBFDC", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "func_802BC390", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "func_802BCA8C", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "func_802BCCD4", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "func_802BCF78", - "802bd91c": "func_802BCFC4", - "802bdb04": "ActionToxBox4", - "802bdb3c": "ActionToxBox5", - "802bdb74": "ActionToxBox6", - "802bdbac": "ActionToxBox7", - "802bdbe4": "ActionToxBox1", - "802bdc7c": "ActionToxBox2", - "802bdcc8": "ActionToxBox3", - "802bdd14": "ActionToxBox0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "func_802BE2E8", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "ActionTuxiesMother2", - "802bef8c": "ActionTuxiesMother1", - "802bf1d8": "ActionTuxiesMother0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "func_802BEA58", - "802bf474": "ActionSmallPenguin2", - "802bf57c": "ActionSmallPenguin1", - "802bf648": "ActionSmallPenguin3", - "802bf6e4": "ActionSmallPenguin4", - "802bf760": "ActionSmallPenguin0", - "802bf90c": "ActionSmallPenguin5", - "802bfa14": "func_802BF048", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "ActionFish0", - "802bfeb8": "ActionFish1", - "802bff20": "ActionFish2", - "802bff3c": "bhv_fish_loop", - "802bff68": "func_802BF59C", - "802c00b4": "ActionFishGroup1", - "802c0348": "ActionFishGroup2", - "802c06a8": "ActionFishGroup0", - "802c0768": "bhv_fish_group_2_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "ActionBirdChirpChirp0", - "802c0b50": "ActionBirdChirpChirp1", - "802c0ba4": "ActionBirdChirpChirp2", - "802c0bc4": "ActionBirdChirpChirp3", - "802c0be0": "bhv_bird_chirp_chirp_loop", - "802c0c0c": "func_802C0240", - "802c0cd4": "ActionCheepCheep0", - "802c0d44": "ActionCheepCheep1", - "802c0f90": "ActionCheepCheep2", - "802c1204": "bhv_cheep_cheep_loop", - "802c12c0": "bhv_rotatin_exclamation_box_loop", - "802c1308": "ActionExclamationBox0", - "802c13ec": "ActionExclamationBox1", - "802c14b0": "ActionExclamationBox2", - "802c15b8": "ActionExclamationBox3", - "802c17bc": "func_802C0DF0", - "802c18d0": "ActionExclamationBox4", - "802c1988": "ActionExclamationBox5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "func_802C231C", - "802c2ebc": "ActionTweester0", - "802c2fbc": "ActionTweester1", - "802c31c4": "ActionTweester2", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "BehClimbDetectLoop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "func_802C5A64", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "func_802C61CC", - "802c6d6c": "ActionWhomp0", - "802c6ec8": "ActionWhomp7", - "802c6fb0": "ActionWhomp1", - "802c710c": "ActionWhomp2", - "802c7254": "ActionWhomp3", - "802c72b4": "ActionWhomp4", - "802c7380": "ActionWhomp5", - "802c7428": "func_802C6954", - "802c75fc": "func_802C6B28", - "802c76d4": "ActionWhomp6", - "802c7858": "ActionWhomp8", - "802c7998": "ActionWhomp9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_loop", - "802c7b14": "bhv_water_drops_loop", - "802c7cac": "bhv_surface_waves_loop", - "802c7d40": "bhv_water_surface_white_wave_init", - "802c7d90": "bhv_object_bubble_ripples_init", - "802c7dfc": "bhv_surface_wave_shrinking_init", - "802c7e5c": "bhv_wave_trail_loop", - "802c7f98": "bhv_white_wind_particle_loop", - "802c81b4": "func_802C76E0", - "802c834c": "bhv_snowman_wind_blowing_loop", - "802c85a4": "func_802C7AD0", - "802c863c": "bhv_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "Unknown802C8460", - "802c8fe4": "func_802C8504", - "802c91ec": "func_802C870C", - "802c9388": "func_802C88A8", - "802c93f8": "func_802C8918", - "802c94ac": "func_802C89CC", - "802c95b4": "func_802C8AD4", - "802c9630": "func_802C8B50", - "802c9724": "detect_object_collisions", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "PlaySound", - "802ca1e0": "PlaySound2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "Stub802C9890", - "802ca380": "Stub802C98A0", - "802ca390": "Stub802C98B0", - "802ca3a0": "Stub802C98C0", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_802CA5D0", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "Unknown802CAA84", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stopAllRippleExcept", - "802d2a74": "find_mario_y_position_on_painting", - "802d2b08": "find_mario_z_position_on_painting", - "802d2b84": "painting_find_vertical_ripple_location", - "802d2c40": "find_part_of_painting_near_mario", - "802d2d80": "find_mario_x_position_on_painting", - "802d2dfc": "painting_find_horizontal_ripple_location", - "802d2eb8": "painting_set_ripple_type", - "802d2ffc": "vertical_proximity_ripple_painting_ripple", - "802d319c": "vertical_proximity_ripple_painting_ripple_if_mario_enters", - "802d327c": "vertical_continuous_ripple_painting_ripple", - "802d341c": "vertical_continuous_ripple_painting_ripple_if_mario_enters", - "802d34fc": "horizontal_proximity_ripple_painting_ripple", - "802d36ac": "horizontal_proximity_ripple_painting_ripple_if_mario_enters", - "802d379c": "horizontal_continuous_ripple_painting_ripple", - "802d393c": "horizontal_continuous_ripple_painting_ripple_if_mario_enters", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_status", - "802d3cec": "painting_calculate_point_ripple", - "802d3e6c": "painting_conditionally_calculate_point_ripple", - "802d3ee4": "Print1", - "802d404c": "Print2", - "802d43f8": "small_float_to_byte", - "802d44bc": "func_802D39DC", - "802d47d0": "func_802D3CF0", - "802d4edc": "func_802D43FC", - "802d50dc": "func_802D45FC", - "802d5354": "func_802D4874", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "update_ddd_painting", - "802d58e4": "func_802D4E04", - "802d593c": "display_painting", - "802d59a8": "vertical_painting_ripple", - "802d5aa0": "horizontal_painting_ripple", - "802d5b98": "Geo18_802D5B98", - "802d5d0c": "Geo18_802D5D0C", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "CoinStep", - "802e5e6c": "MovingCoinFlickerLoop", - "802e5ea4": "CoinCollected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "func_802E540C", - "802e63ec": "func_802E54DC", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "func_802E5B7C", - "802e6af8": "BobombExplodeLoop", - "802e6bd4": "CheckBobombInteractions", - "802e6cf0": "BobombPatrolLoop", - "802e6dc8": "BobombChaseMarioLoop", - "802e6e84": "BobombLaunchedLoop", - "802e6ed8": "GenericBobombFreeLoop", - "802e7020": "StationaryBobombFreeLoop", - "802e7134": "BobombFreeLoop", - "802e7180": "BobombHeldLoop", - "802e7220": "BobombDroppedLoop", - "802e7280": "BobombThrownLoop", - "802e7324": "ObjRandomBlink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "BobombBuddyIdleLoop", - "802e7814": "BobombBuddyCannonLoop", - "802e79dc": "BobombBuddyTalkLoop", - "802e7b00": "BobombBuddyTurnToTalkLoop", - "802e7bb0": "BobombBuddyActionLoop", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "CannonTrapDoorOpeningLoop", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "func_802E70A8", - "802e7fec": "func_802E70DC", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "ButterflyStep", - "802e9278": "CalculateButterflyAngle", - "802e9470": "ButterflyRestingLoop", - "802e94e4": "ButterflyFollowMarioLoop", - "802e9548": "ButterflyReturnHomeLoop", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "HootFindNextFloor", - "802e98c0": "HootFloorBounce", - "802e9a4c": "HootFreeStep", - "802e9cf4": "PlayerSetHootYaw", - "802e9d98": "HootCarryStep", - "802e9f60": "HootSurfaceCollision", - "802ea144": "HootAscentLoop", - "802ea258": "HootActionLoop", - "802ea3f0": "HootTurnToHome", - "802ea4ec": "HootAwakeLoop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "BullyCheckMarioCollision", - "802eb288": "BullyChaseMarioLoop", - "802eb3f0": "BullyKnockbackLoop", - "802eb510": "BullyBackUpLoop", - "802eb5c4": "BullyBackUpCheck", - "802eb630": "PlayBullyStompingSound", - "802eb744": "BullyStep", - "802eb7e0": "BullySpawnCoin", - "802eb8b0": "BullyLavaDeath", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "BigBullySpawnMinion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "BigBullyWithMinionsLavaDeath", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "WaterRingCalcMarioDistInFront", - "802ec030": "WaterRingInit", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "CheckWaterRingCollection", - "802ec3d0": "SetWaterRingScale", - "802ec4e0": "WaterRingCollectedLoop", - "802ec59c": "JetStreamWaterRingNotCollectedLoop", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "Unknown802EB8A4", - "802ec818": "JetStreamRingSpawnerActiveLoop", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "MantaRayWaterRingNotCollectedLoop", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "CelebrationStarSpinAroundMarioLoop", - "802ed28c": "CelebrationStarFaceCameraLoop", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "MoneybagCheckMarioCollision", - "802ee268": "MoneybagJump", - "802ee46c": "MoneybagMoveAroundLoop", - "802ee598": "MoneybagReturnHomeLoop", - "802ee728": "MoneybagDisappearLoop", - "802ee778": "MoneybagDeathLoop", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "func_802EDA14", - "802eea7c": "func_802EDA6C", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "func_802EFB2C", - "802f0bd4": "func_802EFB84", - "802f0c94": "func_802EFC44", - "802f0df0": "func_802EFDA0", - "802f0fa8": "func_802EFF58", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "func_802F05DC", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "func_802F0904", - "802f19c8": "func_802F0978", - "802f1a10": "func_802F09C0", - "802f1bb8": "func_802F0B68", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "func_802F0D70", - "802f1e5c": "func_802F0E0C", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "func_802F0FE0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "func_802F1190", - "802f2284": "func_802F1234", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "func_802F1A50", - "802f2b88": "create_star", - "802f2bd4": "func_802F1B84", - "802f2c24": "func_802F1BD4", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "func_802F238C", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "func_802F2820", - "802f39b4": "func_802F2924", - "802f3a30": "bhvLllVolcanoFallingTrap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "func_802F2D40", - "802f3ea8": "func_802F2E18", - "802f401c": "func_802F2F8C", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "func_802F3328", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "func_802F3BD8", - "802f4ce0": "func_802F3C50", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "func_802F3F80", - "802f5068": "func_802F3FD8", - "802f52c0": "func_802F4230", - "802f547c": "func_802F43EC", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "func_802F4CE8", - "802f5e44": "func_802F4DB4", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "func_802F54F8", - "802f665c": "func_802F55CC", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "func_802F5E20", - "802f7068": "func_802F5FD8", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "func_802F6E8C", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "BehYoshiLoop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "Geo18_8030D93C", - "8030d9ac": "Geo18_8030D9AC", - "8030da14": "snufit_act_0", - "8030db38": "snufit_act_1", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_manager_loop", - "80312370": "coffin_act_0", - "8031262c": "coffin_act_1", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee0": "func_80319E70", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L_U_8031C200", - "8031c23c": "L_U_8031C23C", - "8031c298": "L_U_8031C298", - "8031c2dc": "L_U_8031C2DC", - "8031c328": "L_U_8031C328", - "8031c36c": "L_U_8031C36C", - "8031c3bc": "L_U_8031C3BC", - "8031c3e8": "L_U_8031C3E8", - "8031c454": "L_U_8031C454", - "8031c4a4": "L_U_8031C4A4", - "8031c5c8": "L_U_8031C5C8", - "8031c698": "L_U_8031C698", - "8031c6a0": "L_U_8031C6A0", - "8031cbe0": "L_U_8031CBE0", - "8031cbec": "L_U_8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": ".", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "D_8032CE9C", - "8032de4c": "D_8032CEEC", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused_8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused_8032CFC8", - "8032df2c": "unused_8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "D_8032CFD4", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "D_8032CFE0", - "8032df44": "D_8032CFE4", - "8032df48": "D_8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sTempCutsceneNumber", - "8032df54": "gCutsceneNumber", - "8032df58": "sCutsceneTransitionTimer", - "8032df5c": "D_8032CFFC", - "8032df60": "sMarioStatusForCamera", - "8032df64": "sLuigiStatusForCamera", - "8032df68": "D_8032D008", - "8032df6c": "sFixedPresetBasePosition", - "8032df78": "D_8032D00C_2", - "8032df84": "D_8032D00C_3", - "8032df90": "D_8032D00C_4", - "8032df9c": "D_8032D00C_5", - "8032dfa8": "TableCameraTransitions", - "8032e008": "unused_8032D0A8", - "8032e010": "unused_8032D0B0", - "8032e018": "D_8032D0B8", - "8032e050": "BBHRoom6ParallelTrackingTable", - "8032e098": "TableCameraSL", - "8032e0e0": "TableCameraTHI", - "8032e128": "TableCameraHMC", - "8032e1d0": "TableCameraSSL", - "8032e248": "TableCameraRR", - "8032e338": "TableCameraCotMC", - "8032e368": "TableCameraCCM", - "8032e3b0": "TableCameraInside", - "8032e6f8": "TableCameraBBH", - "8032ecb0": "TableLevelCinematicCamera", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "D_8032E040", - "8032eff0": "D_8032E090", - "8032f048": "D_8032E0E8", - "8032f0e8": "D_8032E188", - "8032f130": "D_8032E1D0", - "8032f178": "D_8032E218", - "8032f1b8": "D_8032E258", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "D_8032E4E4", - "8032f48c": "D_8032E52C", - "8032f4d4": "TableCutscenePeachEnd", - "8032f534": "TableCutsceneGrandStar", - "8032f544": "TableCutscene0FTodo", - "8032f554": "TableCutsceneDoorWarp", - "8032f564": "TableCutsceneEndWaving", - "8032f56c": "TableCutsceneCredits", - "8032f574": "TableCutsceneDoor00", - "8032f59c": "TableCutsceneDoor01", - "8032f5c4": "TableCutsceneDoor0A", - "8032f5dc": "TableCutsceneDoor0B", - "8032f5f4": "TableCutsceneEnterCannon", - "8032f60c": "TableCutsceneStarSpawn", - "8032f624": "TableCutsceneSpecialStarSpawn", - "8032f634": "TableCutsceneEnterPainting", - "8032f63c": "TableCutsceneDeathExit", - "8032f64c": "TableCutsceneExitPaintingSuccess", - "8032f65c": "TableCutscene11Todo", - "8032f674": "TableCutsceneIntroPeach", - "8032f69c": "TableCutscenePrepareCannon", - "8032f6ac": "TableCutsceneExitWaterfall", - "8032f6bc": "TableCutsceneFallToCastleGrounds", - "8032f6cc": "TableCutsceneEnterPyramidTop", - "8032f6dc": "TableCutscene26Todo", - "8032f6f4": "TableCutsceneStandingDeath", - "8032f6fc": "TableCutsceneEnterPool", - "8032f70c": "TableCutsceneDeath2", - "8032f714": "TableCutsceneDeathOnBack", - "8032f71c": "TableCutsceneQuicksandDeath", - "8032f72c": "TableCutsceneSuffocationDeath", - "8032f734": "TableCutsceneEnterBowserPlatform", - "8032f74c": "TableCutsceneStarDance1", - "8032f754": "TableCutsceneStarDance2", - "8032f75c": "TableCutsceneStarDance3", - "8032f764": "TableCutsceneKeyDance", - "8032f76c": "TableCutsceneCapSwitchPress", - "8032f774": "TableCutsceneSlidingDoorsOpen", - "8032f784": "TableCutsceneUnlockKeyDoor", - "8032f794": "TableCutsceneExitBowserSuccess", - "8032f7a4": "TableCutscene1CTodo", - "8032f7b4": "TableCutsceneBBHExitSuccess", - "8032f7c4": "TableCutsceneNonPaintingDeath", - "8032f7d4": "TableCutsceneDialog", - "8032f7ec": "TableCutsceneReadMessage", - "8032f804": "D_8032E8A4", - "8032f870": "zoomOutAreaMasks", - "8032f884": "sBobCreditsCameraPositions", - "8032f8ac": "sBobCreditsCameraFocus", - "8032f8d4": "sWfCreditsCameraPositions", - "8032f8fc": "sWfCreditsCameraFocus", - "8032f924": "sJrbCreditsCameraPositions", - "8032f94c": "sJrbCreditsCameraFocus", - "8032f974": "sCcmSlideCreditsCameraPositions", - "8032f99c": "sCcmSlideCreditsCameraFocus", - "8032f9c4": "sBbhCreditsCameraPositions", - "8032f9e4": "sBbhCreditsCameraFocus", - "8032fa04": "sHmcCreditsCameraPositions", - "8032fa2c": "sHmcCreditsCameraFocus", - "8032fa54": "sThiWigglerCreditsCameraPositions", - "8032fa6c": "sThiWigglerCreditsCameraFocus", - "8032fa84": "sVolcanoCreditsCameraPositions", - "8032fab4": "sVolcanoCreditsCameraFocus", - "8032fae4": "sSslCreditsCameraPositions", - "8032fb14": "sSslCreditsCameraFocus", - "8032fb44": "sDddCreditsCameraPositions", - "8032fb7c": "sDddCreditsCameraFocus", - "8032fbb4": "sSlCreditsCameraPositions", - "8032fbd4": "sSlCreditsCameraFocus", - "8032fbf4": "sWdwCreditsCameraPositions", - "8032fc14": "sWdwCreditsCameraFocus", - "8032fc34": "sTtmCreditsCameraPositions", - "8032fc64": "sTtmCreditsCameraFocus", - "8032fc94": "sThiHugeCreditsCameraPositions", - "8032fccc": "sThiHugeCreditsCameraFocus", - "8032fd04": "sTtcCreditsCameraPositions", - "8032fd24": "sTtcCreditsCameraFocus", - "8032fd44": "sRrCreditsCameraPositions", - "8032fd64": "sRrCreditsCameraFocus", - "8032fd84": "sSaCreditsCameraPositions", - "8032fdac": "sSaCreditsCameraFocus", - "8032fdd4": "sCotmcCreditsCameraPositions", - "8032fdfc": "sCotmcCreditsCameraFocus", - "8032fe24": "sDddSubCreditsCameraPositions", - "8032fe4c": "sDddSubCreditsCameraFocus", - "8032fe74": "sCcmOutsideCreditsCameraPositions", - "8032fe94": "sCcmOutsideCreditsCameraFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "803306dc": "sCageUkikiPath", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "D_8032FCE8", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "D_8032FDAC", - "80330d30": "D_8032FDD0", - "80330d54": "D_8032FDF4", - "80330d78": "D_8032FE18", - "80330d9c": "sWindParticleHitbox", - "80330dac": "D_8032FE4C", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "hmcPaintings", - "80331308": "insideCastlePaintings", - "80331344": "ttmPaintings", - "8033134c": "paintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b10": "D_80331A00", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "D_80331C00", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358d0": "viMgrMainArgs", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "D_80334810", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "unknown", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338da0": "D_80337BB0", - "80338da8": "D_80337BB8", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "D_80339F50", - "8033b350": "D_80339FE0", - "8033b3b0": "gBodyStates", - "8033b494": "D_8033A124", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerStatusForCamera", - "8033c568": "sCameraPosition", - "8033c578": "sCameraFocus", - "8033c588": "D_8033B218", - "8033c594": "sCreditsCameraPitch", - "8033c596": "sCreditsCameraYaw", - "8033c598": "gFramesPaused", - "8033c5a0": "D_8033B230", - "8033c5c0": "sCameraTransition", - "8033c5e8": "sGeometryForMario", - "8033c61c": "unused_8033B2AC", - "8033c61e": "sCameraYawVelocity", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unused_spline_pitch", - "8033c624": "unused_spline_yaw", - "8033c628": "sSplineParameters", - "8033c668": "sSplineParameterMax", - "8033c66c": "sPositionAlongSpline", - "8033c670": "sSplinePositionLimit", - "8033c674": "sCameraCutscenePitchOffset", - "8033c676": "sCameraCutsceneYawOffset", - "8033c678": "sCameraCutsceneRollOffset", - "8033c67c": "unused_8033B30C", - "8033c680": "unused_8033B310", - "8033c684": "gCameraModeFlags", - "8033c686": "unused_8033B316", - "8033c688": "sCameraSideCFlags", - "8033c68a": "unused_8033B31A", - "8033c68c": "gCameraFlags1", - "8033c68e": "gCButtonsPressed", - "8033c690": "D_8033B320", - "8033c698": "gCameraStatus", - "8033c758": "unused_8033B3E8", - "8033c75a": "sYawFocToMario", - "8033c75c": "D_8033B3EC", - "8033c75e": "D_8033B3EE", - "8033c760": "D_8033B3F0", - "8033c764": "D_8033B3F4", - "8033c768": "sCSideButtonYaw", - "8033c76a": "D_8033B3FA", - "8033c76c": "D_8033B3FC", - "8033c770": "sFirstPersonCameraPitch", - "8033c772": "sFirstPersonCameraYaw", - "8033c774": "D_8033B404", - "8033c776": "sPlatformLevelPresetBaseYaw", - "8033c778": "gPlatformLevelYawOffset", - "8033c77c": "D_8033B40C", - "8033c780": "D_8033B410", - "8033c788": "D_8033B418", - "8033c7d0": "sFixedPresetBasePositionOffset", - "8033c7dc": "D_8033B46C", - "8033c7e0": "D_8033B470", - "8033c7e8": "D_8033B478", - "8033c808": "D_8033B498", - "8033c828": "D_8033B4B8", - "8033c848": "gCameraMovementFlags", - "8033c84a": "gCameraFlags2", - "8033c850": "D_8033B4E0", - "8033c950": "D_8033B5E0", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "D_8033B6E8", - "8033ca5a": "D_8033B6EA", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "D_8033B6F0", - "8033cbc8": "gCutsceneActive", - "8033cbcc": "sCutscenePhase", - "8033cbd0": "gCurrLevelCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gBehCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361270": "sGrabReleaseState", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "D_8035FFA0", - "80361314": "D_8035FFA4", - "80361318": "ripplingPainting", - "8036131c": "dddStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80364c60": "viMgrThread", - "80364e10": "viMgrStack", - "80365e10": "__osViMesgQueue", - "80365e28": "viMgrMesgBuff", - "80365e40": "viEventViMesg", - "80365e58": "viEventCounterMesg", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "D_80365CE0", - "8036708c": "D_80365D1C", - "80367090": "D_80365D20", - "80367091": "_osCont_numControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "D_80365DAC", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "RandomU16", - "80383cb4": "RandomFloat", - "80383d1c": "RandomSign", - "80383d68": "func_80383D68", - "80385bf0": "stub_80385BF0", - "80385c00": "cur_object_exec_behavior", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "00000001": "ASSERT", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "spot_on_ground_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "water_waves_surface_geo", - "17000168": "water_waves_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleMario", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvWaterWaves", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvUnused080C", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvWallTinyStarParticleSpawn", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvPoundTinyStarParticleSpawn", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvPunchTinyTriangleSpawn", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvWaterMistSpawn", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvPoundWhitePuffs", - "13000e3c": "bhvGroundSand", - "13000e58": "bhvGroundSnow", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFlameMario", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvSnowLeafParticleSpawn", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFishGroup2", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvUnused243C", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMarioDustGenerator", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTornadoSandParticle", - "13002650": "bhvTornado", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSpecialTripleJumpSparkles", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDrops", - "13002c7c": "bhvWaterSurfaceWhiteWave", - "13002cb0": "bhvObjectBubbleRipples", - "13002ce0": "bhvSurfaceWaves", - "13002d28": "bhvWaterSurfaceWhiteWave2", - "13002d50": "bhvWavesGenerator", - "13002d7c": "bhvSurfaceWaveShrinking", - "13002db0": "bhvWaterType", - "13002dc0": "bhvWaveTrailOnSurface", - "13002e04": "bhvTinyWhiteWindParticle", - "13002e20": "bhvWindParticle", - "13002e3c": "bhvSnowmanWindBlowing", - "13002e58": "bhvWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvWarps60", - "13002f64": "bhvWarps64", - "13002f68": "bhvWarps68", - "13002f6c": "bhvWarps6C", - "13002f70": "bhvWarps70", - "13002f74": "bhvWarps74", - "13002f78": "bhvWarps78", - "13002f7c": "bhvWarps7C", - "13002f80": "bhvWarps80", - "13002f84": "bhvWarps84", - "13002f88": "bhvWarps88", - "13002f8c": "bhvWarps8C", - "13002f90": "bhvWarps90", - "13002f94": "bhvWarps94", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinManager", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000300": ["osTvType"], + "80000308": ["osRomBase"], + "8000030c": ["osResetType"], + "80000318": ["osMemSize"], + "8000031c": ["osAppNmiBuffer"], + "80000000": ["D_80000000"], + "a4000000": ["D_A4000000"], + "a40004c0": ["D_A40004C0"], + "a4000774": ["D_A4000774"], + "a4001000": ["D_A4001000"], + "a4040010": ["D_A4040010"], + "a4080000": ["D_A4080000"], + "a4300000": ["D_A4300000"], + "a4300004": ["D_A4300004"], + "a4300008": ["D_A4300008"], + "a430000c": ["D_A430000C"], + "a4400010": ["D_A4400010"], + "a450000c": ["D_A450000C"], + "a4600000": ["D_A4600000"], + "a4600004": ["D_A4600004"], + "a460000c": ["D_A460000C"], + "a4600010": ["D_A4600010"], + "a4700000": ["D_A4700000"], + "a4700010": ["D_A4700010"], + "a4800018": ["D_A4800018"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802ef700": ["__osGetCurrFaultedThread"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "EntryPoint"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["Unknown80246170"], + "802461cc": ["Dummy802461CC"], + "802461dc": ["Dummy802461DC"], + "802461ec": ["Dummy802461EC"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["AllocPool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["SendMessage"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["Main"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["func_80247D84"], + "80247f08": ["func_80247ED8"], + "80247fdc": ["func_80247FAC"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["func_80248C10"], + "80248c58": ["func_80248C28"], + "80248ce8": ["func_80248CB8"], + "80248d78": ["func_80248D48"], + "80248dc0": ["func_80248D90"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["func_802491FC"], + "8024927c": ["func_8024924C"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_paused"], + "80249764": ["set_play_mode"], + "8024978c": ["func_8024975C"], + "802497b8": ["func_80249788"], + "8024982c": ["nop_802497FC"], + "8024983c": ["func_8024980C"], + "8024995c": ["func_8024992C"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["func_8024A02C"], + "8024a18c": ["func_8024A094"], + "8024a1d8": ["func_8024A0E0"], + "8024a374": ["check_instant_warp"], + "8024a584": ["func_8024A48C"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["func_8024D664"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["func_8024FC94"], + "8024ff04": ["func_8024FD2C"], + "80250098": ["func_8024FEC0"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["nop_80254E3C"], + "802550b0": ["nop_80254E50"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["BehEndPeachLoop"], + "802570dc": ["BehEndToadLoop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["func_8025F0DC"], + "8025f560": ["func_8025F188"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["func_802604E0"], + "80260aac": ["func_802606DC"], + "80260cb4": ["act_idle"], + "80260f94": ["func_80260BC4"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["func_80261D70"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["func_80261F8C"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["func_80262574"], + "80262bc4": ["func_802627B8"], + "80262c34": ["func_80262828"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["func_80262CEC"], + "802631f0": ["func_80262DE4"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["func_80263378"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["func_80263A50"], + "80263ee4": ["func_80263AD4"], + "80264024": ["func_80263C14"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["func_802652F0"], + "80265b1c": ["func_8026570C"], + "80265d90": ["func_80265980"], + "80265df8": ["func_802659E8"], + "80266038": ["func_80265C28"], + "802661cc": ["func_80265DBC"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["func_80267814"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["func_u_8026A090"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["func_8026CDFC"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_enfvx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["Geo18_802764B0"], + "8027684c": ["bhvToadMessage_loop"], + "80276910": ["bhvToadMessage_init"], + "80276bb8": ["bhvUnlockDoorStar_init"], + "80276ccc": ["bhvUnlockDoorStar_loop"], + "802770a4": ["Geo18_802770A4"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["Geo18_80277294"], + "802773a4": ["Geo18_802773A4"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["Geo18_802775CC"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["Geo18_80277824"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["func_80278304"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["func_80278AD4"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["func_8027A220"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["func_8027A478"], + "8027aa74": ["func_8027A4C4"], + "8027ab04": ["clear_areas"], + "8027ad74": ["func_8027A7C4"], + "8027ae44": ["load_area"], + "8027af48": ["func_8027A998"], + "8027afbc": ["load_mario_area"], + "8027b038": ["func_8027AA88"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake"], + "8027f8b8": ["set_camera_shake_2"], + "8027f9f0": ["func_8027F440"], + "8027fb74": ["unused_set_camera_shake"], + "8027fc18": ["return_height_above_floor"], + "8027fe20": ["set_cam_focus_and_pos_rel_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["return_pitch_parallel_floor"], + "802804f4": ["func_8027FF44"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["return_open_camera_yaw"], + "80280970": ["return_platform_camera_yaw"], + "80280b00": ["func_80280550"], + "80281188": ["func_80280BD8"], + "802813bc": ["func_80280E0C"], + "802813ec": ["func_80280E3C"], + "8028146c": ["update_open_camera"], + "80281588": ["update_platform_level_camera"], + "802816a0": ["return_reverse_tower_camera_yaw"], + "802817fc": ["update_reverse_tower_camera"], + "80281904": ["return_parallel_tracking_camera_yaw"], + "80282280": ["return_fixed_camera_yaw"], + "802826a0": ["return_boss_fight_camera_yaw"], + "80282c0c": ["unused_return_mode_5_camera_yaw"], + "80282c28": ["unused_80282678"], + "80282c3c": ["update_boss_fight_camera"], + "80282c7c": ["update_parallel_tracking_camera"], + "80282ce0": ["update_fixed_camera"], + "80282d78": ["return_behind_mario_camera_yaw"], + "80283340": ["return_behind_mario_water_camera_yaw"], + "80283578": ["return_slide_camera_yaw"], + "802839e4": ["update_behind_mario_camera"], + "80283a18": ["nop_return_water_camera_yaw"], + "80283a34": ["update_water_surface_camera"], + "80283a68": ["return_mario_yaw"], + "80283af8": ["return_close_or_free_roam_cam_yaw"], + "80284cb8": ["update_close_or_free_roam_camera"], + "80284cfc": ["camera_lakitu_zoom_distance"], + "80284d38": ["camera_mario_zoom_distance"], + "80284d74": ["return_spiral_stairs_camera_yaw"], + "802850ac": ["update_spiral_stairs_camera"], + "802850ec": ["return_slide_or_0f_camera_yaw"], + "802851dc": ["update_slide_camera"], + "8028526c": ["func_80284CBC"], + "802852f4": ["func_80284D44"], + "80285370": ["exit_c_up_mode"], + "80285808": ["return_first_person_camera_yaw"], + "802858a4": ["operate_c_up_looking"], + "80285a2c": ["func_8028547C"], + "80285d20": ["update_c_up_camera"], + "80285ed8": ["return_cannon_camera_yaw"], + "80285f60": ["update_cannon_camera"], + "8028603c": ["init_transitional_movement"], + "80286088": ["set_camera_preset"], + "80286188": ["func_80285BD8"], + "80286420": ["func_80285E70"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["func_80287404"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["func_802875F8"], + "80287cb8": ["func_802876D0"], + "80287d30": ["geo_camera_preset_and_pos"], + "80287dc0": ["dummy_802877D8"], + "80287dd4": ["dummy_802877EC"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["select_or_activate_mario_cam"], + "80288718": ["test_or_set_mario_cam_active"], + "80288888": ["set_spline_values"], + "802889b0": ["set_face_angle_from_spline"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_status"], + "80288f5c": ["find_and_return_count_wall_collisions"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_exponential"], + "802893f4": ["approach_f32_exponential_bool"], + "80289488": ["approach_f32_exponential"], + "802894b4": ["approach_s16_exponential_bool"], + "8028956c": ["approach_s16_exponential"], + "80289610": ["approach_vec3f_exponential"], + "80289684": ["set_or_approach_vec3f_exponential"], + "802896f8": ["approach_vec3s_exponential"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["func_80289738"], + "80289f88": ["clamp_positions_and_find_yaw_angle"], + "8028a080": ["func_80289A98"], + "8028a0f4": ["is_pos_less_than_bounds"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["func_8028A0D4"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["check_if_vector_fits_in_bounds"], + "8028aa28": ["calculate_verticle_angle"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["func_8028AA80"], + "8028b11c": ["Unknown8028AB34"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["func_8028AF24"], + "8028b724": ["func_8028B13C"], + "8028b754": ["func_8028B16C"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["func_8028B36C"], + "8028b9c4": ["func_8028B3DC"], + "8028bd34": ["stop_mario"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["func_8028BA38"], + "8028c13c": ["set_camera_cutscene_table"], + "8028c18c": ["determine_star_fadeout_cutscene_table"], + "8028c26c": ["return_table_door_push_or_pull"], + "8028c2c8": ["return_cutscene_table"], + "8028c7a0": ["instant_warp_camera_update"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["Unknown8028C3AC"], + "8028c9cc": ["set_focus_position"], + "8028cbf0": ["set_pos_from_face_angle_and_vec3f"], + "8028cd94": ["set_pos_from_face_angle_and_rel_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["func_8028C824"], + "8028d44c": ["set_camera_preset_fixed_ref_point"], + "8028d5ac": ["set_camera_preset_platform_level"], + "8028d5fc": ["set_camera_preset_boss_fight"], + "8028d658": ["set_camera_preset_close_cam"], + "8028d698": ["set_camera_preset_open_camera"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["func_8028D32C"], + "8028da18": ["CameraRR00"], + "8028da50": ["CameraRR04"], + "8028daec": ["CameraRR02"], + "8028db38": ["CameraRR0305"], + "8028dbb4": ["CameraRR01"], + "8028dbf4": ["CameraCotMC00"], + "8028dc1c": ["CameraSL00"], + "8028dc70": ["camera_change_set_free_roam_mode"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["camera_change_hmc_maze_entrance"], + "8028de2c": ["CameraHMC02"], + "8028de5c": ["CameraHMC03"], + "8028de90": ["CameraHMC04"], + "8028dec4": ["CameraHMC05"], + "8028def8": ["CameraSSL00"], + "8028df24": ["CameraSSL0102"], + "8028df6c": ["CameraSSL03"], + "8028dfb4": ["CameraTHI00"], + "8028dfe8": ["CameraTHI01"], + "8028e01c": ["CameraRR07"], + "8028e064": ["CameraRR08"], + "8028e098": ["camera_change_hmc_cotmc_pool_entry"], + "8028e0ec": ["CameraInside20"], + "8028e164": ["CameraInside1E"], + "8028e210": ["CameraInside1F"], + "8028e298": ["CameraInside01"], + "8028e300": ["CameraInside1213"], + "8028e38c": ["CameraInside00"], + "8028e3b8": ["CameraInside0E"], + "8028e3f0": ["CameraInside0F"], + "8028e41c": ["bbh_room_6_camera"], + "8028e450": ["CameraBBH24"], + "8028e47c": ["CameraBBH2E2F"], + "8028e524": ["bbh_room_1_camera"], + "8028e55c": ["CameraBBH01"], + "8028e594": ["bbh_room_2_lower_camera"], + "8028e5cc": ["bbh_room_4_camera"], + "8028e604": ["bbh_room_8_camera"], + "8028e63c": ["bbh_room_5_library_camera"], + "8028e674": ["bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["bbh_room_5_hidden_to_library_transition"], + "8028e714": ["bbh_room_5_hidden_camera"], + "8028e758": ["bbh_room_3_camera"], + "8028e790": ["bbh_room_7_mr_i_camera"], + "8028e7c8": ["bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["CameraBBH3033"], + "8028e8a0": ["CameraBBH34"], + "8028e8cc": ["CameraBBH38"], + "8028e930": ["bbh_room_12_upper_camera"], + "8028e974": ["CameraBBH00"], + "8028e9a0": ["bbh_room_2_library_camera"], + "8028e9d8": ["bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["bbh_room_2_trapdoor_camera"], + "8028ea60": ["bbh_room_2_trapdoor_transition"], + "8028eab0": ["bbh_room_9_attic_camera"], + "8028eae8": ["bbh_room_9_attic_transition"], + "8028eb38": ["bbh_room_9_mr_i_transition"], + "8028eb88": ["bbh_room_13_balcony_camera"], + "8028ebc0": ["bbh_room_0_camera"], + "8028ec04": ["camera_change_activate_ccm_slide_flag"], + "8028ec2c": ["camera_change_deactivate_ccm_slide_flag"], + "8028ec58": ["surface_type_presets"], + "8028ed30": ["set_preset_via_surface_or_input"], + "8028ed98": ["surface_type_presets_thi"], + "8028eeb0": ["level_specific_camera_update"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["func_8028F2F0"], + "8028fc9c": ["find_mario_relative_geometry"], + "8028fe24": ["func_8028F800"], + "8028fe58": ["func_8028F834"], + "8028fe84": ["unused_8028F860"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["set_cam_yaw_from_focus_and_pos"], + "802900e0": ["func_8028FABC"], + "80290104": ["func_8028FAE0"], + "80290168": ["cap_switch_save"], + "802901a4": ["func_8028FB80"], + "802901fc": ["func_8028FBD8"], + "802903b8": ["func_8028FD94"], + "802904a8": ["CutsceneIntroPeach0_2"], + "802904e4": ["CutsceneIntroPeach2_1"], + "8029051c": ["func_8028FEDC"], + "8029053c": ["move_credits_camera"], + "80290784": ["func_80290144"], + "802907f4": ["func_802901B4"], + "80290864": ["func_80290224"], + "802908e8": ["func_802902A8"], + "802909d0": ["rotate_camera"], + "80290a5c": ["CutsceneEnterSomething8029041C"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["func_80290514"], + "80290ba4": ["func_80290564"], + "80290bd8": ["func_80290598"], + "80290c08": ["unused_802905C8"], + "80290c1c": ["Cutscene0FTodo0"], + "80290c30": ["Cutscene0FTodo1"], + "80290c44": ["CutscenePeachEnd0_1"], + "80290c9c": ["CutscenePeachEnd0_2"], + "80290d90": ["CutscenePeachEnd0"], + "80290e00": ["CutscenePeachEnd2"], + "80290e74": ["CutscenePeachEndCommon367A"], + "80290eb0": ["CutscenePeachEnd3_1"], + "80290f1c": ["CutscenePeachEnd3"], + "80290f8c": ["CutscenePeachEnd1"], + "80291074": ["CutscenePeachEnd4_1"], + "80291108": ["CutscenePeachEnd4"], + "802911c8": ["CutscenePeachEnd5_1"], + "80291208": ["CutscenePeachEnd5_2"], + "8029127c": ["CutscenePeachEnd5_3"], + "802912b8": ["CutscenePeachEnd5_4"], + "80291354": ["CutscenePeachEnd5"], + "8029142c": ["CutscenePeachEnd6"], + "802914cc": ["CutscenePeachEnd7_1"], + "80291514": ["CutscenePeachEnd7"], + "802915d4": ["CutscenePeachEnd8"], + "80291654": ["CutscenePeachEnd9_1"], + "802916b8": ["CutscenePeachEnd9_2"], + "80291774": ["CutscenePeachEnd9"], + "802917e4": ["CutscenePeachEndA_1"], + "8029184c": ["CutscenePeachEndA_2"], + "80291870": ["CutscenePeachEndA"], + "80291924": ["CutscenePeachEndB"], + "80291964": ["CutsceneGrandStar0_1"], + "802919dc": ["CutsceneGrandStar0_2"], + "80291ab4": ["CutsceneGrandStar0_4"], + "80291b18": ["CutsceneGrandStar0_5"], + "80291b68": ["CutsceneGrandStar0_6"], + "80291bf4": ["CutsceneGrandStar0_7"], + "80291c3c": ["CutsceneGrandStar0_3"], + "80291cd0": ["CutsceneGrandStar0"], + "80291db0": ["CutsceneGrandStar1_1"], + "80291e84": ["CutsceneGrandStar1_2"], + "80291f18": ["CutsceneGrandStar1_3"], + "80292038": ["CutsceneGrandStar1_4"], + "80292164": ["CutsceneGrandStar1"], + "802921fc": ["func_80291BBC"], + "8029228c": ["CutsceneDanceCommon"], + "80292324": ["CutsceneStarDance1_4"], + "80292370": ["CutsceneStarDance1_5"], + "802923b8": ["CutsceneStarDance1_6"], + "80292400": ["dummy_80291DC0"], + "80292414": ["CutsceneStarDance1_1"], + "8029244c": ["CutsceneStarDance1_3"], + "80292484": ["CutsceneStarDance1_2"], + "802924b8": ["CutsceneStarDance1"], + "80292628": ["func_80291FE8"], + "802926dc": ["CutsceneStarDance3_1"], + "802927d0": ["CutsceneStarDance3_2"], + "80292868": ["CutsceneStarDance3_3"], + "80292974": ["CutsceneStarDance3_4"], + "80292a20": ["CutsceneStarDance3_5"], + "80292a4c": ["CutsceneStarDance3_6"], + "80292a80": ["CutsceneStarDance3"], + "80292c00": ["CutsceneStarDance2_1"], + "80292d80": ["CutsceneStarDance2_3"], + "80292e2c": ["CutsceneStarDance2_2"], + "80292ec4": ["func_80292884"], + "80292f40": ["CutsceneStarDance2_4"], + "80292f98": ["CutsceneStarDance2_5"], + "80292fe4": ["CutsceneStarDance2_6"], + "80293018": ["CutsceneStarDance2"], + "802930f0": ["CutsceneKeyDance0_6"], + "80293164": ["CutsceneKeyDance0_2"], + "802931c0": ["CutsceneKeyDance0_3"], + "80293220": ["CutsceneKeyDance0_4"], + "8029328c": ["CutsceneKeyDance0_5"], + "802932f4": ["CutsceneKeyDance0_7"], + "80293328": ["CutsceneKeyDance0_8"], + "80293354": ["CutsceneKeyDance0_1"], + "8029338c": ["CutsceneKeyDance0"], + "80293488": ["CutsceneEnterBowserPlatform0_4"], + "802934b4": ["CutsceneEnterBowserPlatform0_3"], + "802934d8": ["CutsceneEnterBowserPlatform0_5"], + "80293548": ["CutsceneEnterBowserPlatform0_8"], + "802935e0": ["CutsceneEnterBowserPlatform0_9"], + "80293624": ["CutsceneEnterBowserPlatform0_7"], + "8029369c": ["CutsceneEnterBowserPlatform0_6"], + "802936dc": ["CutsceneEnterBowserPlatform0_1"], + "80293708": ["func_802930C8"], + "80293734": ["CutsceneEnterBowserPlatform0_2"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["CutsceneEnterBowserPlatform1"], + "802938c8": ["CutsceneEnterBowserPlatform2"], + "80293944": ["CutsceneEnterBowserPlatform0"], + "80293abc": ["CutsceneStarSpawn0_1"], + "80293ae8": ["CutsceneStarSpawn0_2"], + "80293b70": ["CutsceneStarSpawn1_1"], + "80293bf4": ["CutsceneStarSpawn1_2"], + "80293c2c": ["CutsceneStarSpawn0"], + "80293cb0": ["CutsceneStarSpawn1"], + "80293d5c": ["CutsceneStarSpawn2"], + "80293d90": ["CutsceneExitWaterfall0_1"], + "80293dd4": ["Cutscene80293794"], + "80293e7c": ["CutsceneExitWaterfall0"], + "80293ed8": ["CutsceneFallCommon1"], + "80293f2c": ["CutsceneFallToCastleGrounds0_1"], + "80293f70": ["CutsceneFallToCastleGrounds0"], + "80293fcc": ["CutsceneSpecialStarSpawn0_1"], + "80294024": ["CutsceneSpecialStarSpawn0_3"], + "80294088": ["CutsceneSpecialStarSpawn0_4"], + "802940cc": ["CutsceneSpecialStarSpawn0_5"], + "8029410c": ["CutsceneSpecialStarSpawn0_2"], + "802942cc": ["CutsceneSpecialStarSpawn0_6"], + "802942f0": ["CutsceneSpecialStarSpawn0"], + "802943d4": ["CutsceneSpecialStarSpawn1"], + "80294428": ["func_80293DE8"], + "80294718": ["CutscenePrepareCannon0_1"], + "802947a4": ["CutscenePrepareCannon0_2"], + "8029480c": ["func_802941CC"], + "802948a0": ["CutscenePrepareCannon0_3"], + "80294a14": ["CutscenePrepareCannon0"], + "80294a94": ["CutscenePrepareCannon1"], + "80294ae8": ["func_802944A8"], + "80294b78": ["func_80294538"], + "80294bb4": ["CutsceneDeath1_1"], + "80294c28": ["CutsceneDeath1_2"], + "80294c5c": ["CutsceneDeath1"], + "80294cc4": ["CutsceneDeath2_1"], + "80294d48": ["CutsceneDeath2_2"], + "80294db4": ["CutsceneDeath2"], + "80294e24": ["CutsceneBBHDeath0_1"], + "80294ea8": ["CutsceneBBHDeath0_2"], + "80294ee8": ["CutsceneBBHDeath0"], + "80294f58": ["CutsceneQuicksandDeath0_1"], + "80294f94": ["CutsceneQuicksandDeath0_2"], + "80294fec": ["CutsceneQuicksandDeath0"], + "802950b0": ["Cutscene1ATodo0_3"], + "80295140": ["Cutscene1ATodo0_2"], + "802951f0": ["Cutscene1ATodo0_1"], + "80295270": ["Cutscene1ATodo0"], + "80295310": ["CutsceneEnterPool0_1"], + "802953dc": ["CutsceneEnterPool0_2"], + "80295418": ["CutsceneEnterPool0"], + "80295480": ["Cutscene26Todo1_1"], + "802954ec": ["Cutscene26Todo1_5"], + "80295518": ["Cutscene26Todo1_2"], + "80295580": ["Cutscene26Todo1_3"], + "80295670": ["Cutscene26Todo1_4"], + "80295740": ["Cutscene26Todo1_7"], + "8029576c": ["Cutscene26Todo1_6"], + "802957c8": ["Cutscene26Todo1"], + "80295894": ["Cutscene26Todo2"], + "802958d4": ["CutsceneEnterPyramidTop0_1"], + "80295930": ["CutsceneEnterPyramidTop0"], + "80295a58": ["CutsceneDialog0_1"], + "80295bf0": ["CutsceneDialog0_2"], + "80295e24": ["CutsceneDialog0_3"], + "80295e8c": ["CutsceneDialog0"], + "80295fb0": ["CutsceneDialog1"], + "80295fd8": ["CutsceneDialog2"], + "80296020": ["CutsceneReadMessage0_1"], + "80296160": ["CutsceneReadMessage0"], + "802962c8": ["CutsceneReadMessage1"], + "802962f0": ["CutsceneReadMessage2"], + "80296318": ["CutsceneExitSuccess1"], + "802963b8": ["CutsceneExitSuccess2"], + "8029652c": ["CutsceneExitSuccess4"], + "8029665c": ["CutsceneExitSuccess3"], + "8029669c": ["CutsceneExitBowserSuccess0_1"], + "802966e4": ["CutsceneExitSuccess5"], + "80296710": ["CutsceneExitBowserSuccess0"], + "802967c4": ["CutsceneExitNonPainting1"], + "8029685c": ["CutsceneBBHExitSuccess0_1"], + "802968a0": ["CutsceneBBHExitSuccess0"], + "8029695c": ["CutsceneNonPaintingDeath0_1"], + "802969f8": ["Cutscene1CTodo_0"], + "80296a64": ["CutsceneNonPaintingDeath0_2"], + "80296b30": ["CutsceneNonPaintingDeath0"], + "80296bc8": ["CutsceneCapSwitchPress0_1"], + "80296c4c": ["CutsceneCapSwitchPress0_4"], + "80296d60": ["CutsceneCapSwitchPress0_5"], + "80296da8": ["CutsceneCapSwitchPress0_2"], + "80296eb4": ["CutsceneCapSwitchPress0_3"], + "80296f38": ["CutsceneCapSwitchPress0_6"], + "80296fa8": ["CutsceneCapSwitchPress0"], + "80297148": ["CutsceneUnlockKeyDoor0_1"], + "8029720c": ["CutsceneUnlockKeyDoor0_2"], + "80297290": ["CutsceneUnlockKeyDoor0_5"], + "802972ec": ["CutsceneUnlockKeyDoor0_6"], + "80297300": ["CutsceneUnlockKeyDoor0_3"], + "80297384": ["CutsceneUnlockKeyDoor0_4"], + "802973b0": ["CutsceneUnlockKeyDoor0"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["CutsceneIntroPeachCommon"], + "8029762c": ["CutsceneIntroPeach4"], + "802976bc": ["CutsceneIntroPeach3_2"], + "80297728": ["CutsceneIntroPeach2_2"], + "80297748": ["CutsceneIntroPeach0_1"], + "80297784": ["CutsceneIntroPeach3_1"], + "802977c8": ["CutsceneIntroPeach3_3"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["CutsceneIntroPeach2"], + "80297908": ["CutsceneIntroPeach3"], + "80297a38": ["CutsceneIntroPeach1"], + "80297a64": ["CutsceneIntroPeach0"], + "80297b58": ["CutsceneEndWaving0_1"], + "80297b84": ["CutsceneEndWaving0"], + "80297c14": ["CutsceneCredits0_1"], + "80297c40": ["CutsceneCredits0"], + "802980dc": ["CutsceneSlidingDoorsOpen0_1"], + "8029819c": ["CutsceneSlidingDoorsOpen0_2"], + "80298218": ["CutsceneSlidingDoorsOpen0_3"], + "80298254": ["CutsceneSlidingDoorsOpen0_4"], + "80298290": ["CutsceneSlidingDoorsOpen0_5"], + "802983b4": ["CutsceneSlidingDoorsOpen0"], + "80298458": ["CutsceneDoubleDoorsOpen1"], + "802984a0": ["CutsceneEnterPainting0_1"], + "802984b4": ["CutsceneEnterPainting0"], + "802987b0": ["CutsceneExitPainting80298094"], + "8029894c": ["CutsceneExitPainting80298230"], + "802989e8": ["CutsceneExitPainting802982CC"], + "80298af8": ["CutsceneExitPainting0"], + "80298ba0": ["Cutscene11Todo_0"], + "80298c2c": ["Cutscene11Todo_1"], + "80298ccc": ["CutsceneExitPainting1"], + "80298d44": ["CutsceneEnterCannon2"], + "80298d9c": ["CutsceneEnterCannon1"], + "80298fe8": ["CutsceneEnterCannon0"], + "80299100": ["CutsceneDoor0"], + "80299154": ["CutsceneDoor1"], + "802991a8": ["CutsceneDoorWarp1"], + "802991f0": ["CutsceneDoor2"], + "802992cc": ["CutsceneDoor3"], + "80299360": ["CutsceneDoor4"], + "80299404": ["CutsceneDoorAB_2"], + "802994e8": ["handle_cutscenes"], + "8029a2f8": ["call_cutscene_func_in_time_range"], + "8029a37c": ["set_cutscene_phase_at_frame"], + "8029a3b4": ["func_80299C98"], + "8029a41c": ["func_80299D00"], + "8029a4d0": ["func_80299DB4"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["zoom_fov_for_sleep"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["func_8029A288"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["func_8029A494"], + "8029ac30": ["func_8029A514"], + "8029aef8": ["func_8029A7DC"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["func_8029B964"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_8029CA50"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["Geo18_8029D890"], + "8029d924": ["Geo18_8029D924"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["func_8029D558"], + "8029dda8": ["apply_object_scale_to_matrix"], + "8029de80": ["func_8029D704"], + "8029e1b0": ["set_object_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["obj_rotate_yaw_toward"], + "8029e694": ["angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["set_object_parent_relative_pos"], + "8029e914": ["set_object_pos"], + "8029e96c": ["set_object_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["Unknown8029E330"], + "8029eb04": ["spawn_water_splash"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["obj_move_using_vel"], + "8029f0c8": ["copy_object_graph_y_offset"], + "8029f0e0": ["copy_object_pos_and_angle"], + "8029f120": ["copy_object_pos"], + "8029f148": ["copy_object_angle"], + "8029f188": ["func_8029EA0C"], + "8029f1b0": ["Unknown8029EA34"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["apply_scale_to_object_transform"], + "8029f3a8": ["copy_object_scale"], + "8029f3d0": ["scale_object_xyz"], + "8029f404": ["scale_object"], + "8029f430": ["obj_scale"], + "8029f464": ["SetObjAnimation"], + "8029f4b4": ["set_obj_animation_and_sound_state"], + "8029f514": ["func_8029ED98"], + "8029f59c": ["func_8029EE20"], + "8029f600": ["obj_enable_rendering_and_become_tangible"], + "8029f620": ["obj_enable_rendering"], + "8029f644": ["obj_disable_rendering_and_become_intangible"], + "8029f66c": ["obj_disable_rendering"], + "8029f694": ["obj_unhide"], + "8029f6bc": ["obj_hide"], + "8029f6e0": ["obj_set_pos_relative"], + "8029f7d8": ["obj_set_pos_relative_to_parent"], + "8029f820": ["obj_enable_rendering_2"], + "8029f848": ["obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_facing_to_move_angles"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["obj_nearest_object_with_behavior"], + "8029f998": ["obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["obj_find_nearby_held_actor"], + "8029fdb4": ["obj_change_action"], + "8029fe00": ["func_8029F684"], + "8029fe6c": ["func_8029F6F0"], + "8029fea4": ["func_8029F728"], + "8029ff04": ["func_8029F788"], + "8029ffa4": ["func_8029F828"], + "802a0008": ["obj_check_anim_frame"], + "802a0050": ["obj_check_anim_frame_in_range"], + "802a00ac": ["Unknown8029F930"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["func_8029FA1C"], + "802a01d8": ["func_8029FA5C"], + "802a0380": ["obj_get_thrown_or_placed"], + "802a0474": ["obj_get_dropped"], + "802a04c0": ["obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["obj_clear_interact_status_flag"], + "802a0568": ["mark_object_for_deletion"], + "802a057c": ["obj_disable"], + "802a05b4": ["obj_become_intangible"], + "802a05d4": ["obj_become_tangible"], + "802a05f0": ["make_object_tangible"], + "802a0604": ["obj_update_floor_height"], + "802a064c": ["obj_update_floor_height_and_get_floor"], + "802a079c": ["obj_apply_drag_xz"], + "802a0e68": ["obj_move_y"], + "802a113c": ["obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["obj_move_y_with_terminal_vel"], + "802a1308": ["obj_compute_vel_xz"], + "802a1370": ["func_802A0BF4"], + "802a1424": ["are_objects_collided"], + "802a148c": ["obj_set_behavior"], + "802a14c4": ["set_object_behavior"], + "802a14fc": ["obj_has_behavior"], + "802a1554": ["object_has_behavior"], + "802a15ac": ["obj_lateral_dist_from_mario_to_home"], + "802a1634": ["obj_lateral_dist_to_home"], + "802a16ac": ["obj_outside_home_square"], + "802a1774": ["obj_outside_home_rectangle"], + "802a184c": ["obj_set_pos_to_home"], + "802a188c": ["obj_set_pos_to_home_and_stop"], + "802a18dc": ["obj_shake_y"], + "802a1930": ["func_802A11B4"], + "802a1960": ["Unknown802A11E4"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["obj_set_hitbox_radius_and_height"], + "802a19f0": ["obj_set_hurtbox_radius_and_height"], + "802a1b34": ["spawn_object_loot_blue_coins"], + "802a1b8c": ["spawn_object_loot_yellow_coins"], + "802a1bdc": ["obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["obj_abs_y_dist_to_home"], + "802a1cc4": ["Unknown802A1548"], + "802a1f3c": ["obj_resolve_wall_collisions"], + "802a2320": ["obj_update_floor_and_walls"], + "802a2348": ["obj_move_standard"], + "802a25b4": ["obj_move_using_vel_and_gravity"], + "802a2644": ["obj_move_using_fvel_and_gravity"], + "802a2674": ["set_object_pos_relative"], + "802a2748": ["obj_angle_to_home"], + "802a27b0": ["func_802A2008"], + "802a2804": ["translate_object_local"], + "802a2930": ["build_object_transform_from_pos_and_angle"], + "802a2a18": ["func_802A2270"], + "802a2a84": ["build_object_transform_relative_to_parent"], + "802a2b28": ["Unknown802A2380"], + "802a2b6c": ["obj_rotate_move_angle_using_vel"], + "802a2bc4": ["obj_rotate_face_angle_using_vel"], + "802a2c1c": ["obj_set_face_angle_to_move_angle"], + "802a2c5c": ["obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["scale_object_random"], + "802a2fc0": ["translate_object_xyz_random"], + "802a308c": ["translate_object_xz_random"], + "802a31e0": ["func_802A2A38"], + "802a3268": ["obj_reflect_move_angle_off_wall"], + "802a32ac": ["obj_spawn_particles"], + "802a34a4": ["set_object_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["obj_wait_then_blink"], + "802a3754": ["obj_is_mario_ground_pounding_platform"], + "802a37ac": ["func_802A3004"], + "802a37dc": ["func_802A3034"], + "802a3818": ["obj_push_mario_away"], + "802a390c": ["obj_push_mario_away_from_cylinder"], + "802a399c": ["BehDustSmokeLoop"], + "802a3a4c": ["func_802A32A4"], + "802a3a88": ["func_802A32E0"], + "802a3b40": ["func_802A3398"], + "802a3c18": ["func_802A3470"], + "802a3cfc": ["obj_is_mario_on_platform"], + "802a3d40": ["obj_shake_y_until"], + "802a3dd4": ["func_802A362C"], + "802a3e30": ["obj_call_action_function"], + "802a3ef8": ["Unknown802A3750"], + "802a3f24": ["func_802A377C"], + "802a3f48": ["obj_mario_far_away"], + "802a404c": ["obj_is_mario_moving_fast_or_in_air"], + "802a40b8": ["item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["obj_enable_rendering_if_mario_in_room"], + "802a4360": ["obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["func_802A3C98"], + "802a44f4": ["set_object_collision_data"], + "802a452c": ["obj_if_hit_wall_bounce_away"], + "802a4564": ["obj_hide_if_mario_far_away_y"], + "802a45e4": ["Geo18_802A45E4"], + "802a462c": ["Unknown802A3E84"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["func_802A3FF8"], + "802a48bc": ["obj_is_mario_in_range_and_ready_to_speak"], + "802a4960": ["obj_update_dialog"], + "802a4be4": ["obj_update_dialog_with_cutscene"], + "802a4f04": ["obj_has_model"], + "802a4f58": ["obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["ShakeScreen"], + "802a513c": ["attack_collided_non_mario_object"], + "802a51ac": ["obj_was_attacked_or_ground_pounded"], + "802a5228": ["copy_object_behavior_params"], + "802a5248": ["func_802A4A70"], + "802a5288": ["func_802A4AB0"], + "802a52c4": ["func_802A4AEC"], + "802a52f8": ["obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["obj_check_interacted"], + "802a5524": ["obj_spawn_loot_blue_coin"], + "802a5588": ["obj_spawn_star_at_y_offset"], + "802a5620": ["func_802A4DB0"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["ActionMrIParticle0"], + "802a5a44": ["ActionMrIParticle1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["func_802A525C"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["ActionMrI3"], + "802a6518": ["ActionMrI2"], + "802a68a0": ["ActionMrI1"], + "802a6ad8": ["ActionMrI0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["ActionActivateCapSwitch0"], + "802a7020": ["ActionActivateCapSwitch1"], + "802a708c": ["ActionActivateCapSwitch2"], + "802a7160": ["ActionActivateCapSwitch3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["Geo18_802A719C"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["ActionKingBobomb0"], + "802a7384": ["func_802A6AF8"], + "802a73d8": ["ActionKingBobomb2"], + "802a7598": ["ActionKingBobomb3"], + "802a7804": ["ActionKingBobomb1"], + "802a78d8": ["ActionKingBobomb6"], + "802a7a60": ["ActionKingBobomb7"], + "802a7b1c": ["ActionKingBobomb8"], + "802a7b5c": ["ActionKingBobomb4"], + "802a7d14": ["ActionKingBobomb5"], + "802a7fbc": ["func_802A7748"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["Unknown802A7E48"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["func_802A81C4"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["ActionOpenedCannon0"], + "802a8f40": ["ActionOpenedCannon4"], + "802a9114": ["ActionOpenedCannon6"], + "802a92fc": ["ActionOpenedCannon5"], + "802a93f8": ["ActionOpenedCannon1"], + "802a9440": ["ActionOpenedCannon2"], + "802a9460": ["ActionOpenedCannon3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["func_802A8D18"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["Unknown802A8EC8"], + "802a98c4": ["func_802A9050"], + "802a9994": ["ActionChuckya0"], + "802a9d08": ["ActionChuckya1"], + "802a9f54": ["ActionChuckya3"], + "802a9fc8": ["ActionChuckya2"], + "802aa02c": ["func_802A97B8"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["func_802A9A0C"], + "802aa3c8": ["func_802A9B54"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["func_802AA0D4"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["BehFadingWarpLoop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["func_802AA618"], + "802aaf48": ["bhv_unused_080c_init"], + "802aaffc": ["func_802AA788"], + "802ab060": ["func_802AA7EC"], + "802ab158": ["func_802AA8E4"], + "802ab18c": ["func_802AA918"], + "802ab1c8": ["bhv_unused_080c_loop"], + "802ab558": ["bhv_spawn_star_objects"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["func_802AB364"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["ActionCoinInsideBoo1"], + "802ac15c": ["ActionCoinInsideBoo0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["func_802AC070"], + "802ac958": ["func_802AC0B8"], + "802ac9d0": ["func_802AC130"], + "802aca6c": ["func_802AC1CC"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["ActionGrindelThwomp4"], + "802ad10c": ["ActionGrindelThwomp2"], + "802ad1a4": ["ActionGrindelThwomp3"], + "802ad238": ["ActionGrindelThwomp1"], + "802ad2d0": ["ActionGrindelThwomp0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["ActionTumblingBridge1"], + "802ad76c": ["ActionTumblingBridge2"], + "802ad7f4": ["ActionTumblingBridge3"], + "802ad828": ["ActionTumblingBridge0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["func_802AD01C"], + "802ad8f0": ["ActionElevator0"], + "802ada4c": ["ActionElevator1"], + "802adb88": ["ActionElevator2"], + "802adce4": ["ActionElevator4"], + "802add70": ["ActionElevator3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["func_802ADA94"], + "802ae360": ["bhv_unused_0e40_init"], + "802ae394": ["Unknown802ADAF4"], + "802ae45c": ["func_802ADBBC"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["func_802ADC20"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["func_802AF9A4"], + "802b039c": ["func_802AFAFC"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["func_802B02FC"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["func_802B0C54"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["func_802B0E74"], + "802b17f4": ["func_802B0F54"], + "802b19d8": ["func_802B1138"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["Geo18_802B1BB0"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["ActionHeaveHo1"], + "802b1e6c": ["ActionHeaveHo2"], + "802b1ff4": ["ActionHeaveHo3"], + "802b20a0": ["ActionHeaveHo0"], + "802b2154": ["func_802B18B4"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["ActionJumpingBox0"], + "802b27d8": ["ActionJumpingBox1"], + "802b2824": ["func_802B1F84"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["func_802B2328"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["func_802B2894"], + "802b3250": ["func_802B29B0"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["ActionBulletBill0"], + "802b38b8": ["ActionBulletBill1"], + "802b394c": ["ActionBulletBill2"], + "802b3b08": ["ActionBulletBill3"], + "802b3b24": ["ActionBulletBill4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["ActionBowserTailAnchor0"], + "802b3cdc": ["ActionBowserTailAnchor1"], + "802b3d10": ["ActionBowserTailAnchor2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["func_802B38B4"], + "802b41fc": ["func_802B392C"], + "802b4288": ["func_802B39B8"], + "802b4300": ["func_802B3A30"], + "802b4368": ["func_802B3A98"], + "802b43dc": ["func_802B3B0C"], + "802b4478": ["ActionBowser5"], + "802b44bc": ["ActionBowser6"], + "802b45f4": ["func_802B3D24"], + "802b473c": ["func_802B3E44"], + "802b48d4": ["func_802B3FDC"], + "802b4a1c": ["func_802B4124"], + "802b4a3c": ["func_802B4144"], + "802b4af4": ["func_u_802B4AF4"], + "802b4bac": ["ActionBowser18"], + "802b4be8": ["ActionBowser0"], + "802b4ca4": ["ActionBowser15"], + "802b4d14": ["ActionBowser14"], + "802b4f00": ["ActionBowser16"], + "802b5104": ["ActionBowser8"], + "802b5218": ["ActionBowser12"], + "802b53f4": ["func_802B4A44"], + "802b5444": ["func_802B4A94"], + "802b5554": ["func_802B4BA4"], + "802b55cc": ["ActionBowser13"], + "802b5798": ["ActionBowser17"], + "802b58bc": ["ActionBowser10"], + "802b59cc": ["ActionBowser9"], + "802b5aec": ["func_802B5108"], + "802b5c00": ["ActionBowser11"], + "802b5c40": ["ActionBowser7"], + "802b5f6c": ["func_802B5588"], + "802b5fec": ["ActionBowser1"], + "802b611c": ["func_802B5738"], + "802b6190": ["ActionBowser2"], + "802b6568": ["ActionBowser3"], + "802b65d0": ["func_802B5C78"], + "802b6670": ["func_802B5D18"], + "802b6730": ["func_802B5DD8"], + "802b67d4": ["func_802B5E7C"], + "802b6878": ["func_802B5F20"], + "802b6a10": ["func_802B60B8"], + "802b6a78": ["func_802B6120"], + "802b6bac": ["func_802B6254"], + "802b6cf0": ["ActionBowser4"], + "802b6e40": ["func_802B64E8"], + "802b6ee0": ["ActionBowser19"], + "802b711c": ["func_802B67C4"], + "802b71e4": ["func_802B688C"], + "802b72d4": ["func_802B697C"], + "802b7418": ["func_802B6AC0"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["Geo18_802B798C"], + "802b7a20": ["func_802B70C8"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["Geo18_802B7D44"], + "802b7e68": ["ActionFallingBowserPlatform0"], + "802b7ef0": ["ActionFallingBowserPlatform1"], + "802b8024": ["ActionFallingBowserPlatform2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["func_802B7A58"], + "802b8434": ["func_802B7ADC"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["func_802B7CFC"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["func_802B8F7C"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["func_802B9120"], + "802b9af8": ["func_802B91A0"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["func_802B95A4"], + "802ba13c": ["func_802B97E4"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["Geo18_802BA2B0"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["unused_Geo18_8029D890"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["func_802BB414"], + "802bbfd8": ["func_802BB680"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["func_802BB9F0"], + "802bc4f4": ["ActionRotatingCwFireBars0"], + "802bc538": ["ActionRotatingCwFireBars1"], + "802bc590": ["ActionRotatingCwFireBars2"], + "802bc5fc": ["ActionRotatingCwFireBars3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["func_802BBFDC"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["func_802BC390"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["func_802BCA8C"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["func_802BCCD4"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["func_802BCF78"], + "802bd91c": ["func_802BCFC4"], + "802bdb04": ["ActionToxBox4"], + "802bdb3c": ["ActionToxBox5"], + "802bdb74": ["ActionToxBox6"], + "802bdbac": ["ActionToxBox7"], + "802bdbe4": ["ActionToxBox1"], + "802bdc7c": ["ActionToxBox2"], + "802bdcc8": ["ActionToxBox3"], + "802bdd14": ["ActionToxBox0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["func_802BE2E8"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["ActionTuxiesMother2"], + "802bef8c": ["ActionTuxiesMother1"], + "802bf1d8": ["ActionTuxiesMother0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["func_802BEA58"], + "802bf474": ["ActionSmallPenguin2"], + "802bf57c": ["ActionSmallPenguin1"], + "802bf648": ["ActionSmallPenguin3"], + "802bf6e4": ["ActionSmallPenguin4"], + "802bf760": ["ActionSmallPenguin0"], + "802bf90c": ["ActionSmallPenguin5"], + "802bfa14": ["func_802BF048"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["ActionFish0"], + "802bfeb8": ["ActionFish1"], + "802bff20": ["ActionFish2"], + "802bff3c": ["bhv_fish_loop"], + "802bff68": ["func_802BF59C"], + "802c00b4": ["ActionFishGroup1"], + "802c0348": ["ActionFishGroup2"], + "802c06a8": ["ActionFishGroup0"], + "802c0768": ["bhv_fish_group_2_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["ActionBirdChirpChirp0"], + "802c0b50": ["ActionBirdChirpChirp1"], + "802c0ba4": ["ActionBirdChirpChirp2"], + "802c0bc4": ["ActionBirdChirpChirp3"], + "802c0be0": ["bhv_bird_chirp_chirp_loop"], + "802c0c0c": ["func_802C0240"], + "802c0cd4": ["ActionCheepCheep0"], + "802c0d44": ["ActionCheepCheep1"], + "802c0f90": ["ActionCheepCheep2"], + "802c1204": ["bhv_cheep_cheep_loop"], + "802c12c0": ["bhv_rotatin_exclamation_box_loop"], + "802c1308": ["ActionExclamationBox0"], + "802c13ec": ["ActionExclamationBox1"], + "802c14b0": ["ActionExclamationBox2"], + "802c15b8": ["ActionExclamationBox3"], + "802c17bc": ["func_802C0DF0"], + "802c18d0": ["ActionExclamationBox4"], + "802c1988": ["ActionExclamationBox5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["func_802C231C"], + "802c2ebc": ["ActionTweester0"], + "802c2fbc": ["ActionTweester1"], + "802c31c4": ["ActionTweester2"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["BehClimbDetectLoop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["func_802C5A64"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["func_802C61CC"], + "802c6d6c": ["ActionWhomp0"], + "802c6ec8": ["ActionWhomp7"], + "802c6fb0": ["ActionWhomp1"], + "802c710c": ["ActionWhomp2"], + "802c7254": ["ActionWhomp3"], + "802c72b4": ["ActionWhomp4"], + "802c7380": ["ActionWhomp5"], + "802c7428": ["func_802C6954"], + "802c75fc": ["func_802C6B28"], + "802c76d4": ["ActionWhomp6"], + "802c7858": ["ActionWhomp8"], + "802c7998": ["ActionWhomp9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_loop"], + "802c7b14": ["bhv_water_drops_loop"], + "802c7cac": ["bhv_surface_waves_loop"], + "802c7d40": ["bhv_water_surface_white_wave_init"], + "802c7d90": ["bhv_object_bubble_ripples_init"], + "802c7dfc": ["bhv_surface_wave_shrinking_init"], + "802c7e5c": ["bhv_wave_trail_loop"], + "802c7f98": ["bhv_white_wind_particle_loop"], + "802c81b4": ["func_802C76E0"], + "802c834c": ["bhv_snowman_wind_blowing_loop"], + "802c85a4": ["func_802C7AD0"], + "802c863c": ["bhv_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["Unknown802C8460"], + "802c8fe4": ["func_802C8504"], + "802c91ec": ["func_802C870C"], + "802c9388": ["func_802C88A8"], + "802c93f8": ["func_802C8918"], + "802c94ac": ["func_802C89CC"], + "802c95b4": ["func_802C8AD4"], + "802c9630": ["func_802C8B50"], + "802c9724": ["detect_object_collisions"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["PlaySound"], + "802ca1e0": ["PlaySound2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["Stub802C9890"], + "802ca380": ["Stub802C98A0"], + "802ca390": ["Stub802C98B0"], + "802ca3a0": ["Stub802C98C0"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_802CA5D0"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["Unknown802CAA84"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stopAllRippleExcept"], + "802d2a74": ["find_mario_y_position_on_painting"], + "802d2b08": ["find_mario_z_position_on_painting"], + "802d2b84": ["painting_find_vertical_ripple_location"], + "802d2c40": ["find_part_of_painting_near_mario"], + "802d2d80": ["find_mario_x_position_on_painting"], + "802d2dfc": ["painting_find_horizontal_ripple_location"], + "802d2eb8": ["painting_set_ripple_type"], + "802d2ffc": ["vertical_proximity_ripple_painting_ripple"], + "802d319c": ["vertical_proximity_ripple_painting_ripple_if_mario_enters"], + "802d327c": ["vertical_continuous_ripple_painting_ripple"], + "802d341c": ["vertical_continuous_ripple_painting_ripple_if_mario_enters"], + "802d34fc": ["horizontal_proximity_ripple_painting_ripple"], + "802d36ac": ["horizontal_proximity_ripple_painting_ripple_if_mario_enters"], + "802d379c": ["horizontal_continuous_ripple_painting_ripple"], + "802d393c": ["horizontal_continuous_ripple_painting_ripple_if_mario_enters"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_status"], + "802d3cec": ["painting_calculate_point_ripple"], + "802d3e6c": ["painting_conditionally_calculate_point_ripple"], + "802d3ee4": ["Print1"], + "802d404c": ["Print2"], + "802d43f8": ["small_float_to_byte"], + "802d44bc": ["func_802D39DC"], + "802d47d0": ["func_802D3CF0"], + "802d4edc": ["func_802D43FC"], + "802d50dc": ["func_802D45FC"], + "802d5354": ["func_802D4874"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["update_ddd_painting"], + "802d58e4": ["func_802D4E04"], + "802d593c": ["display_painting"], + "802d59a8": ["vertical_painting_ripple"], + "802d5aa0": ["horizontal_painting_ripple"], + "802d5b98": ["Geo18_802D5B98"], + "802d5d0c": ["Geo18_802D5D0C"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["CoinStep"], + "802e5e6c": ["MovingCoinFlickerLoop"], + "802e5ea4": ["CoinCollected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["func_802E540C"], + "802e63ec": ["func_802E54DC"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["func_802E5B7C"], + "802e6af8": ["BobombExplodeLoop"], + "802e6bd4": ["CheckBobombInteractions"], + "802e6cf0": ["BobombPatrolLoop"], + "802e6dc8": ["BobombChaseMarioLoop"], + "802e6e84": ["BobombLaunchedLoop"], + "802e6ed8": ["GenericBobombFreeLoop"], + "802e7020": ["StationaryBobombFreeLoop"], + "802e7134": ["BobombFreeLoop"], + "802e7180": ["BobombHeldLoop"], + "802e7220": ["BobombDroppedLoop"], + "802e7280": ["BobombThrownLoop"], + "802e7324": ["ObjRandomBlink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["BobombBuddyIdleLoop"], + "802e7814": ["BobombBuddyCannonLoop"], + "802e79dc": ["BobombBuddyTalkLoop"], + "802e7b00": ["BobombBuddyTurnToTalkLoop"], + "802e7bb0": ["BobombBuddyActionLoop"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["CannonTrapDoorOpeningLoop"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["func_802E70A8"], + "802e7fec": ["func_802E70DC"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["ButterflyStep"], + "802e9278": ["CalculateButterflyAngle"], + "802e9470": ["ButterflyRestingLoop"], + "802e94e4": ["ButterflyFollowMarioLoop"], + "802e9548": ["ButterflyReturnHomeLoop"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["HootFindNextFloor"], + "802e98c0": ["HootFloorBounce"], + "802e9a4c": ["HootFreeStep"], + "802e9cf4": ["PlayerSetHootYaw"], + "802e9d98": ["HootCarryStep"], + "802e9f60": ["HootSurfaceCollision"], + "802ea144": ["HootAscentLoop"], + "802ea258": ["HootActionLoop"], + "802ea3f0": ["HootTurnToHome"], + "802ea4ec": ["HootAwakeLoop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["BullyCheckMarioCollision"], + "802eb288": ["BullyChaseMarioLoop"], + "802eb3f0": ["BullyKnockbackLoop"], + "802eb510": ["BullyBackUpLoop"], + "802eb5c4": ["BullyBackUpCheck"], + "802eb630": ["PlayBullyStompingSound"], + "802eb744": ["BullyStep"], + "802eb7e0": ["BullySpawnCoin"], + "802eb8b0": ["BullyLavaDeath"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["BigBullySpawnMinion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["BigBullyWithMinionsLavaDeath"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["WaterRingCalcMarioDistInFront"], + "802ec030": ["WaterRingInit"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["CheckWaterRingCollection"], + "802ec3d0": ["SetWaterRingScale"], + "802ec4e0": ["WaterRingCollectedLoop"], + "802ec59c": ["JetStreamWaterRingNotCollectedLoop"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["Unknown802EB8A4"], + "802ec818": ["JetStreamRingSpawnerActiveLoop"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["MantaRayWaterRingNotCollectedLoop"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["CelebrationStarSpinAroundMarioLoop"], + "802ed28c": ["CelebrationStarFaceCameraLoop"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["MoneybagCheckMarioCollision"], + "802ee268": ["MoneybagJump"], + "802ee46c": ["MoneybagMoveAroundLoop"], + "802ee598": ["MoneybagReturnHomeLoop"], + "802ee728": ["MoneybagDisappearLoop"], + "802ee778": ["MoneybagDeathLoop"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["func_802EDA14"], + "802eea7c": ["func_802EDA6C"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["func_802EFB2C"], + "802f0bd4": ["func_802EFB84"], + "802f0c94": ["func_802EFC44"], + "802f0df0": ["func_802EFDA0"], + "802f0fa8": ["func_802EFF58"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["func_802F05DC"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["func_802F0904"], + "802f19c8": ["func_802F0978"], + "802f1a10": ["func_802F09C0"], + "802f1bb8": ["func_802F0B68"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["func_802F0D70"], + "802f1e5c": ["func_802F0E0C"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["func_802F0FE0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["func_802F1190"], + "802f2284": ["func_802F1234"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["func_802F1A50"], + "802f2b88": ["create_star"], + "802f2bd4": ["func_802F1B84"], + "802f2c24": ["func_802F1BD4"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["func_802F238C"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["func_802F2820"], + "802f39b4": ["func_802F2924"], + "802f3a30": ["bhvLllVolcanoFallingTrap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["func_802F2D40"], + "802f3ea8": ["func_802F2E18"], + "802f401c": ["func_802F2F8C"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["func_802F3328"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["func_802F3BD8"], + "802f4ce0": ["func_802F3C50"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["func_802F3F80"], + "802f5068": ["func_802F3FD8"], + "802f52c0": ["func_802F4230"], + "802f547c": ["func_802F43EC"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["func_802F4CE8"], + "802f5e44": ["func_802F4DB4"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["func_802F54F8"], + "802f665c": ["func_802F55CC"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["func_802F5E20"], + "802f7068": ["func_802F5FD8"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["func_802F6E8C"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["BehYoshiLoop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["Geo18_8030D93C"], + "8030d9ac": ["Geo18_8030D9AC"], + "8030da14": ["snufit_act_0"], + "8030db38": ["snufit_act_1"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_manager_loop"], + "80312370": ["coffin_act_0"], + "8031262c": ["coffin_act_1"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee0": ["func_80319E70"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L_U_8031C200"], + "8031c23c": ["L_U_8031C23C"], + "8031c298": ["L_U_8031C298"], + "8031c2dc": ["L_U_8031C2DC"], + "8031c328": ["L_U_8031C328"], + "8031c36c": ["L_U_8031C36C"], + "8031c3bc": ["L_U_8031C3BC"], + "8031c3e8": ["L_U_8031C3E8"], + "8031c454": ["L_U_8031C454"], + "8031c4a4": ["L_U_8031C4A4"], + "8031c5c8": ["L_U_8031C5C8"], + "8031c698": ["L_U_8031C698"], + "8031c6a0": ["L_U_8031C6A0"], + "8031cbe0": ["L_U_8031CBE0"], + "8031cbec": ["L_U_8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": [".", "osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["D_8032CE9C"], + "8032de4c": ["D_8032CEEC"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused_8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused_8032CFC8"], + "8032df2c": ["unused_8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["D_8032CFD4"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["D_8032CFE0"], + "8032df44": ["D_8032CFE4"], + "8032df48": ["D_8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sTempCutsceneNumber"], + "8032df54": ["gCutsceneNumber"], + "8032df58": ["sCutsceneTransitionTimer"], + "8032df5c": ["D_8032CFFC"], + "8032df60": ["sMarioStatusForCamera"], + "8032df64": ["sLuigiStatusForCamera"], + "8032df68": ["D_8032D008"], + "8032df6c": ["sFixedPresetBasePosition"], + "8032df78": ["D_8032D00C_2"], + "8032df84": ["D_8032D00C_3"], + "8032df90": ["D_8032D00C_4"], + "8032df9c": ["D_8032D00C_5"], + "8032dfa8": ["TableCameraTransitions"], + "8032e008": ["unused_8032D0A8"], + "8032e010": ["unused_8032D0B0"], + "8032e018": ["D_8032D0B8"], + "8032e050": ["BBHRoom6ParallelTrackingTable"], + "8032e098": ["TableCameraSL"], + "8032e0e0": ["TableCameraTHI"], + "8032e128": ["TableCameraHMC"], + "8032e1d0": ["TableCameraSSL"], + "8032e248": ["TableCameraRR"], + "8032e338": ["TableCameraCotMC"], + "8032e368": ["TableCameraCCM"], + "8032e3b0": ["TableCameraInside"], + "8032e6f8": ["TableCameraBBH"], + "8032ecb0": ["TableLevelCinematicCamera"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["D_8032E040"], + "8032eff0": ["D_8032E090"], + "8032f048": ["D_8032E0E8"], + "8032f0e8": ["D_8032E188"], + "8032f130": ["D_8032E1D0"], + "8032f178": ["D_8032E218"], + "8032f1b8": ["D_8032E258"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["D_8032E4E4"], + "8032f48c": ["D_8032E52C"], + "8032f4d4": ["TableCutscenePeachEnd"], + "8032f534": ["TableCutsceneGrandStar"], + "8032f544": ["TableCutscene0FTodo"], + "8032f554": ["TableCutsceneDoorWarp"], + "8032f564": ["TableCutsceneEndWaving"], + "8032f56c": ["TableCutsceneCredits"], + "8032f574": ["TableCutsceneDoor00"], + "8032f59c": ["TableCutsceneDoor01"], + "8032f5c4": ["TableCutsceneDoor0A"], + "8032f5dc": ["TableCutsceneDoor0B"], + "8032f5f4": ["TableCutsceneEnterCannon"], + "8032f60c": ["TableCutsceneStarSpawn"], + "8032f624": ["TableCutsceneSpecialStarSpawn"], + "8032f634": ["TableCutsceneEnterPainting"], + "8032f63c": ["TableCutsceneDeathExit"], + "8032f64c": ["TableCutsceneExitPaintingSuccess"], + "8032f65c": ["TableCutscene11Todo"], + "8032f674": ["TableCutsceneIntroPeach"], + "8032f69c": ["TableCutscenePrepareCannon"], + "8032f6ac": ["TableCutsceneExitWaterfall"], + "8032f6bc": ["TableCutsceneFallToCastleGrounds"], + "8032f6cc": ["TableCutsceneEnterPyramidTop"], + "8032f6dc": ["TableCutscene26Todo"], + "8032f6f4": ["TableCutsceneStandingDeath"], + "8032f6fc": ["TableCutsceneEnterPool"], + "8032f70c": ["TableCutsceneDeath2"], + "8032f714": ["TableCutsceneDeathOnBack"], + "8032f71c": ["TableCutsceneQuicksandDeath"], + "8032f72c": ["TableCutsceneSuffocationDeath"], + "8032f734": ["TableCutsceneEnterBowserPlatform"], + "8032f74c": ["TableCutsceneStarDance1"], + "8032f754": ["TableCutsceneStarDance2"], + "8032f75c": ["TableCutsceneStarDance3"], + "8032f764": ["TableCutsceneKeyDance"], + "8032f76c": ["TableCutsceneCapSwitchPress"], + "8032f774": ["TableCutsceneSlidingDoorsOpen"], + "8032f784": ["TableCutsceneUnlockKeyDoor"], + "8032f794": ["TableCutsceneExitBowserSuccess"], + "8032f7a4": ["TableCutscene1CTodo"], + "8032f7b4": ["TableCutsceneBBHExitSuccess"], + "8032f7c4": ["TableCutsceneNonPaintingDeath"], + "8032f7d4": ["TableCutsceneDialog"], + "8032f7ec": ["TableCutsceneReadMessage"], + "8032f804": ["D_8032E8A4"], + "8032f870": ["zoomOutAreaMasks"], + "8032f884": ["sBobCreditsCameraPositions"], + "8032f8ac": ["sBobCreditsCameraFocus"], + "8032f8d4": ["sWfCreditsCameraPositions"], + "8032f8fc": ["sWfCreditsCameraFocus"], + "8032f924": ["sJrbCreditsCameraPositions"], + "8032f94c": ["sJrbCreditsCameraFocus"], + "8032f974": ["sCcmSlideCreditsCameraPositions"], + "8032f99c": ["sCcmSlideCreditsCameraFocus"], + "8032f9c4": ["sBbhCreditsCameraPositions"], + "8032f9e4": ["sBbhCreditsCameraFocus"], + "8032fa04": ["sHmcCreditsCameraPositions"], + "8032fa2c": ["sHmcCreditsCameraFocus"], + "8032fa54": ["sThiWigglerCreditsCameraPositions"], + "8032fa6c": ["sThiWigglerCreditsCameraFocus"], + "8032fa84": ["sVolcanoCreditsCameraPositions"], + "8032fab4": ["sVolcanoCreditsCameraFocus"], + "8032fae4": ["sSslCreditsCameraPositions"], + "8032fb14": ["sSslCreditsCameraFocus"], + "8032fb44": ["sDddCreditsCameraPositions"], + "8032fb7c": ["sDddCreditsCameraFocus"], + "8032fbb4": ["sSlCreditsCameraPositions"], + "8032fbd4": ["sSlCreditsCameraFocus"], + "8032fbf4": ["sWdwCreditsCameraPositions"], + "8032fc14": ["sWdwCreditsCameraFocus"], + "8032fc34": ["sTtmCreditsCameraPositions"], + "8032fc64": ["sTtmCreditsCameraFocus"], + "8032fc94": ["sThiHugeCreditsCameraPositions"], + "8032fccc": ["sThiHugeCreditsCameraFocus"], + "8032fd04": ["sTtcCreditsCameraPositions"], + "8032fd24": ["sTtcCreditsCameraFocus"], + "8032fd44": ["sRrCreditsCameraPositions"], + "8032fd64": ["sRrCreditsCameraFocus"], + "8032fd84": ["sSaCreditsCameraPositions"], + "8032fdac": ["sSaCreditsCameraFocus"], + "8032fdd4": ["sCotmcCreditsCameraPositions"], + "8032fdfc": ["sCotmcCreditsCameraFocus"], + "8032fe24": ["sDddSubCreditsCameraPositions"], + "8032fe4c": ["sDddSubCreditsCameraFocus"], + "8032fe74": ["sCcmOutsideCreditsCameraPositions"], + "8032fe94": ["sCcmOutsideCreditsCameraFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "803306dc": ["sCageUkikiPath"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["D_8032FCE8"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["D_8032FDAC"], + "80330d30": ["D_8032FDD0"], + "80330d54": ["D_8032FDF4"], + "80330d78": ["D_8032FE18"], + "80330d9c": ["sWindParticleHitbox"], + "80330dac": ["D_8032FE4C"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["hmcPaintings"], + "80331308": ["insideCastlePaintings"], + "80331344": ["ttmPaintings"], + "8033134c": ["paintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b10": ["D_80331A00"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["D_80331C00"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358d0": ["viMgrMainArgs"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["D_80334810"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["unknown"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338da0": ["D_80337BB0"], + "80338da8": ["D_80337BB8"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["D_80339F50"], + "8033b350": ["D_80339FE0"], + "8033b3b0": ["gBodyStates"], + "8033b494": ["D_8033A124"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerStatusForCamera"], + "8033c568": ["sCameraPosition"], + "8033c578": ["sCameraFocus"], + "8033c588": ["D_8033B218"], + "8033c594": ["sCreditsCameraPitch"], + "8033c596": ["sCreditsCameraYaw"], + "8033c598": ["gFramesPaused"], + "8033c5a0": ["D_8033B230"], + "8033c5c0": ["sCameraTransition"], + "8033c5e8": ["sGeometryForMario"], + "8033c61c": ["unused_8033B2AC"], + "8033c61e": ["sCameraYawVelocity"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unused_spline_pitch"], + "8033c624": ["unused_spline_yaw"], + "8033c628": ["sSplineParameters"], + "8033c668": ["sSplineParameterMax"], + "8033c66c": ["sPositionAlongSpline"], + "8033c670": ["sSplinePositionLimit"], + "8033c674": ["sCameraCutscenePitchOffset"], + "8033c676": ["sCameraCutsceneYawOffset"], + "8033c678": ["sCameraCutsceneRollOffset"], + "8033c67c": ["unused_8033B30C"], + "8033c680": ["unused_8033B310"], + "8033c684": ["gCameraModeFlags"], + "8033c686": ["unused_8033B316"], + "8033c688": ["sCameraSideCFlags"], + "8033c68a": ["unused_8033B31A"], + "8033c68c": ["gCameraFlags1"], + "8033c68e": ["gCButtonsPressed"], + "8033c690": ["D_8033B320"], + "8033c698": ["gCameraStatus"], + "8033c758": ["unused_8033B3E8"], + "8033c75a": ["sYawFocToMario"], + "8033c75c": ["D_8033B3EC"], + "8033c75e": ["D_8033B3EE"], + "8033c760": ["D_8033B3F0"], + "8033c764": ["D_8033B3F4"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["D_8033B3FA"], + "8033c76c": ["D_8033B3FC"], + "8033c770": ["sFirstPersonCameraPitch"], + "8033c772": ["sFirstPersonCameraYaw"], + "8033c774": ["D_8033B404"], + "8033c776": ["sPlatformLevelPresetBaseYaw"], + "8033c778": ["gPlatformLevelYawOffset"], + "8033c77c": ["D_8033B40C"], + "8033c780": ["D_8033B410"], + "8033c788": ["D_8033B418"], + "8033c7d0": ["sFixedPresetBasePositionOffset"], + "8033c7dc": ["D_8033B46C"], + "8033c7e0": ["D_8033B470"], + "8033c7e8": ["D_8033B478"], + "8033c808": ["D_8033B498"], + "8033c828": ["D_8033B4B8"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["gCameraFlags2"], + "8033c850": ["D_8033B4E0"], + "8033c950": ["D_8033B5E0"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["D_8033B6E8"], + "8033ca5a": ["D_8033B6EA"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["D_8033B6F0"], + "8033cbc8": ["gCutsceneActive"], + "8033cbcc": ["sCutscenePhase"], + "8033cbd0": ["gCurrLevelCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gBehCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361270": ["sGrabReleaseState"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["D_8035FFA0"], + "80361314": ["D_8035FFA4"], + "80361318": ["ripplingPainting"], + "8036131c": ["dddStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80364c60": ["viMgrThread"], + "80364e10": ["viMgrStack"], + "80365e10": ["__osViMesgQueue"], + "80365e28": ["viMgrMesgBuff"], + "80365e40": ["viEventViMesg"], + "80365e58": ["viEventCounterMesg"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["D_80365CE0"], + "8036708c": ["D_80365D1C"], + "80367090": ["D_80365D20"], + "80367091": ["_osCont_numControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["D_80365DAC"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": ["_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["RandomU16"], + "80383cb4": ["RandomFloat"], + "80383d1c": ["RandomSign"], + "80383d68": ["func_80383D68"], + "80385bf0": ["stub_80385BF0"], + "80385c00": ["cur_object_exec_behavior"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["spot_on_ground_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["water_waves_surface_geo"], + "17000168": ["water_waves_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleMario"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvWaterWaves"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvUnused080C"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvWallTinyStarParticleSpawn"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvPoundTinyStarParticleSpawn"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvPunchTinyTriangleSpawn"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvWaterMistSpawn"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvPoundWhitePuffs"], + "13000e3c": ["bhvGroundSand"], + "13000e58": ["bhvGroundSnow"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFlameMario"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvSnowLeafParticleSpawn"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFishGroup2"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvUnused243C"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMarioDustGenerator"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTornadoSandParticle"], + "13002650": ["bhvTornado"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSpecialTripleJumpSparkles"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDrops"], + "13002c7c": ["bhvWaterSurfaceWhiteWave"], + "13002cb0": ["bhvObjectBubbleRipples"], + "13002ce0": ["bhvSurfaceWaves"], + "13002d28": ["bhvWaterSurfaceWhiteWave2"], + "13002d50": ["bhvWavesGenerator"], + "13002d7c": ["bhvSurfaceWaveShrinking"], + "13002db0": ["bhvWaterType"], + "13002dc0": ["bhvWaveTrailOnSurface"], + "13002e04": ["bhvTinyWhiteWindParticle"], + "13002e20": ["bhvWindParticle"], + "13002e3c": ["bhvSnowmanWindBlowing"], + "13002e58": ["bhvWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvWarps60"], + "13002f64": ["bhvWarps64"], + "13002f68": ["bhvWarps68"], + "13002f6c": ["bhvWarps6C"], + "13002f70": ["bhvWarps70"], + "13002f74": ["bhvWarps74"], + "13002f78": ["bhvWarps78"], + "13002f7c": ["bhvWarps7C"], + "13002f80": ["bhvWarps80"], + "13002f84": ["bhvWarps84"], + "13002f88": ["bhvWarps88"], + "13002f8c": ["bhvWarps8C"], + "13002f90": ["bhvWarps90"], + "13002f94": ["bhvWarps94"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinManager"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 5": { - "80000300": "osTvType", - "80000308": "osRomBase", - "8000030c": "osResetType", - "80000318": "osMemSize", - "8000031c": "osAppNmiBuffer", - "80000000": "D_80000000", - "a4000000": "D_A4000000", - "a40004c0": "D_A40004C0", - "a4000774": "D_A4000774", - "a4001000": "D_A4001000", - "a4040010": "D_A4040010", - "a4080000": "D_A4080000", - "a4300000": "D_A4300000", - "a4300004": "D_A4300004", - "a4300008": "D_A4300008", - "a430000c": "D_A430000C", - "a4400010": "D_A4400010", - "a450000c": "D_A450000C", - "a4600000": "D_A4600000", - "a4600004": "D_A4600004", - "a460000c": "D_A460000C", - "a4600010": "D_A4600010", - "a4700000": "D_A4700000", - "a4700010": "D_A4700010", - "a4800018": "D_A4800018", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802ef700": "__osGetCurrFaultedThread", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "EntryPoint", - "80246050": "handle_debug_key_sequences", - "80246170": "Unknown80246170", - "802461cc": "Dummy802461CC", - "802461dc": "Dummy802461DC", - "802461ec": "Dummy802461EC", - "802461fc": "setup_mesg_queues", - "802462e0": "AllocPool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "SendMessage", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "Main", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "func_80247D84", - "80247f08": "func_80247ED8", - "80247fdc": "func_80247FAC", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "func_80248C10", - "80248c58": "func_80248C28", - "80248ce8": "func_80248CB8", - "80248d78": "func_80248D48", - "80248dc0": "func_80248D90", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "func_802491FC", - "8024927c": "func_8024924C", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_paused", - "80249764": "set_play_mode", - "8024978c": "func_8024975C", - "802497b8": "func_80249788", - "8024982c": "nop_802497FC", - "8024983c": "func_8024980C", - "8024995c": "func_8024992C", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "func_8024A02C", - "8024a18c": "func_8024A094", - "8024a1d8": "func_8024A0E0", - "8024a374": "check_instant_warp", - "8024a584": "func_8024A48C", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "func_8024D664", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "func_8024FC94", - "8024ff04": "func_8024FD2C", - "80250098": "func_8024FEC0", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "nop_80254E3C", - "802550b0": "nop_80254E50", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "BehEndPeachLoop", - "802570dc": "BehEndToadLoop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "func_8025F0DC", - "8025f560": "func_8025F188", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "func_802604E0", - "80260aac": "func_802606DC", - "80260cb4": "act_idle", - "80260f94": "func_80260BC4", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "func_80261D70", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "func_80261F8C", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "func_80262574", - "80262bc4": "func_802627B8", - "80262c34": "func_80262828", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "func_80262CEC", - "802631f0": "func_80262DE4", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "func_80263378", - "80263898": "mario_execute_stationary_action", - "80263e60": "func_80263A50", - "80263ee4": "func_80263AD4", - "80264024": "func_80263C14", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "func_802652F0", - "80265b1c": "func_8026570C", - "80265d90": "func_80265980", - "80265df8": "func_802659E8", - "80266038": "func_80265C28", - "802661cc": "func_80265DBC", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "func_80267814", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "func_u_8026A090", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "func_8026CDFC", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_enfvx_main", - "802763d4": "geo_skybox_main", - "802764b0": "Geo18_802764B0", - "8027684c": "bhvToadMessage_loop", - "80276910": "bhvToadMessage_init", - "80276bb8": "bhvUnlockDoorStar_init", - "80276ccc": "bhvUnlockDoorStar_loop", - "802770a4": "Geo18_802770A4", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "Geo18_80277294", - "802773a4": "Geo18_802773A4", - "802774f4": "geo_switch_mario_hand", - "802775cc": "Geo18_802775CC", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "Geo18_80277824", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "func_80278304", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "func_80278AD4", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "func_8027A220", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "func_8027A478", - "8027aa74": "func_8027A4C4", - "8027ab04": "clear_areas", - "8027ad74": "func_8027A7C4", - "8027ae44": "load_area", - "8027af48": "func_8027A998", - "8027afbc": "load_mario_area", - "8027b038": "func_8027AA88", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c28": "unused_80282678", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "dummy_802877D8", - "80287dd4": "dummy_802877EC", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "unused_8028C3AC", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c08": "unused_802905C8", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292400": "cutscene_dance_unused", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "func_8029B964", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_8029CA50", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "Geo18_8029D890", - "8029d924": "Geo18_8029D924", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "func_8029D558", - "8029dda8": "apply_object_scale_to_matrix", - "8029de80": "func_8029D704", - "8029e1b0": "set_object_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "obj_rotate_yaw_toward", - "8029e694": "angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "set_object_parent_relative_pos", - "8029e914": "set_object_pos", - "8029e96c": "set_object_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "Unknown8029E330", - "8029eb04": "spawn_water_splash", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "obj_move_using_vel", - "8029f0c8": "copy_object_graph_y_offset", - "8029f0e0": "copy_object_pos_and_angle", - "8029f120": "copy_object_pos", - "8029f148": "copy_object_angle", - "8029f188": "func_8029EA0C", - "8029f1b0": "Unknown8029EA34", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "apply_scale_to_object_transform", - "8029f3a8": "copy_object_scale", - "8029f3d0": "scale_object_xyz", - "8029f404": "scale_object", - "8029f430": "obj_scale", - "8029f464": "SetObjAnimation", - "8029f4b4": "set_obj_animation_and_sound_state", - "8029f514": "func_8029ED98", - "8029f59c": "func_8029EE20", - "8029f600": "obj_enable_rendering_and_become_tangible", - "8029f620": "obj_enable_rendering", - "8029f644": "obj_disable_rendering_and_become_intangible", - "8029f66c": "obj_disable_rendering", - "8029f694": "obj_unhide", - "8029f6bc": "obj_hide", - "8029f6e0": "obj_set_pos_relative", - "8029f7d8": "obj_set_pos_relative_to_parent", - "8029f820": "obj_enable_rendering_2", - "8029f848": "obj_unused_init_on_floor", - "8029f8ec": "obj_set_facing_to_move_angles", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "obj_nearest_object_with_behavior", - "8029f998": "obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "obj_find_nearby_held_actor", - "8029fdb4": "obj_change_action", - "8029fe00": "func_8029F684", - "8029fe6c": "func_8029F6F0", - "8029fea4": "func_8029F728", - "8029ff04": "func_8029F788", - "8029ffa4": "func_8029F828", - "802a0008": "obj_check_anim_frame", - "802a0050": "obj_check_anim_frame_in_range", - "802a00ac": "Unknown8029F930", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "func_8029FA1C", - "802a01d8": "func_8029FA5C", - "802a0380": "obj_get_thrown_or_placed", - "802a0474": "obj_get_dropped", - "802a04c0": "obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "obj_clear_interact_status_flag", - "802a0568": "mark_object_for_deletion", - "802a057c": "obj_disable", - "802a05b4": "obj_become_intangible", - "802a05d4": "obj_become_tangible", - "802a05f0": "make_object_tangible", - "802a0604": "obj_update_floor_height", - "802a064c": "obj_update_floor_height_and_get_floor", - "802a079c": "obj_apply_drag_xz", - "802a0e68": "obj_move_y", - "802a113c": "obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "obj_move_xz_using_fvel_and_yaw", - "802a12a4": "obj_move_y_with_terminal_vel", - "802a1308": "obj_compute_vel_xz", - "802a1370": "func_802A0BF4", - "802a1424": "are_objects_collided", - "802a148c": "obj_set_behavior", - "802a14c4": "set_object_behavior", - "802a14fc": "obj_has_behavior", - "802a1554": "object_has_behavior", - "802a15ac": "obj_lateral_dist_from_mario_to_home", - "802a1634": "obj_lateral_dist_to_home", - "802a16ac": "obj_outside_home_square", - "802a1774": "obj_outside_home_rectangle", - "802a184c": "obj_set_pos_to_home", - "802a188c": "obj_set_pos_to_home_and_stop", - "802a18dc": "obj_shake_y", - "802a1930": "obj_start_cam_event", - "802a1960": "Unknown802A11E4", - "802a19ac": "obj_set_billboard", - "802a19c8": "obj_set_hitbox_radius_and_height", - "802a19f0": "obj_set_hurtbox_radius_and_height", - "802a1b34": "spawn_object_loot_blue_coins", - "802a1b8c": "spawn_object_loot_yellow_coins", - "802a1bdc": "obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "obj_abs_y_dist_to_home", - "802a1cc4": "Unknown802A1548", - "802a1f3c": "obj_resolve_wall_collisions", - "802a2320": "obj_update_floor_and_walls", - "802a2348": "obj_move_standard", - "802a25b4": "obj_move_using_vel_and_gravity", - "802a2644": "obj_move_using_fvel_and_gravity", - "802a2674": "set_object_pos_relative", - "802a2748": "obj_angle_to_home", - "802a27b0": "func_802A2008", - "802a2804": "translate_object_local", - "802a2930": "build_object_transform_from_pos_and_angle", - "802a2a18": "func_802A2270", - "802a2a84": "build_object_transform_relative_to_parent", - "802a2b28": "Unknown802A2380", - "802a2b6c": "obj_rotate_move_angle_using_vel", - "802a2bc4": "obj_rotate_face_angle_using_vel", - "802a2c1c": "obj_set_face_angle_to_move_angle", - "802a2c5c": "obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "scale_object_random", - "802a2fc0": "translate_object_xyz_random", - "802a308c": "translate_object_xz_random", - "802a31e0": "func_802A2A38", - "802a3268": "obj_reflect_move_angle_off_wall", - "802a32ac": "obj_spawn_particles", - "802a34a4": "set_object_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "obj_wait_then_blink", - "802a3754": "obj_is_mario_ground_pounding_platform", - "802a37ac": "func_802A3004", - "802a37dc": "func_802A3034", - "802a3818": "obj_push_mario_away", - "802a390c": "obj_push_mario_away_from_cylinder", - "802a399c": "BehDustSmokeLoop", - "802a3a4c": "func_802A32A4", - "802a3a88": "func_802A32E0", - "802a3b40": "func_802A3398", - "802a3c18": "func_802A3470", - "802a3cfc": "obj_is_mario_on_platform", - "802a3d40": "obj_shake_y_until", - "802a3dd4": "func_802A362C", - "802a3e30": "obj_call_action_function", - "802a3ef8": "Unknown802A3750", - "802a3f24": "func_802A377C", - "802a3f48": "obj_mario_far_away", - "802a404c": "obj_is_mario_moving_fast_or_in_air", - "802a40b8": "item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "obj_enable_rendering_if_mario_in_room", - "802a4360": "obj_set_hitbox_and_die_if_attacked", - "802a4440": "func_802A3C98", - "802a44f4": "set_object_collision_data", - "802a452c": "obj_if_hit_wall_bounce_away", - "802a4564": "obj_hide_if_mario_far_away_y", - "802a45e4": "Geo18_802A45E4", - "802a462c": "Unknown802A3E84", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "func_802A3FF8", - "802a48bc": "obj_is_mario_in_range_and_ready_to_speak", - "802a4960": "obj_update_dialog", - "802a4be4": "obj_update_dialog_with_cutscene", - "802a4f04": "obj_has_model", - "802a4f58": "obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "ShakeScreen", - "802a513c": "attack_collided_non_mario_object", - "802a51ac": "obj_was_attacked_or_ground_pounded", - "802a5228": "copy_object_behavior_params", - "802a5248": "func_802A4A70", - "802a5288": "func_802A4AB0", - "802a52c4": "func_802A4AEC", - "802a52f8": "obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "obj_check_interacted", - "802a5524": "obj_spawn_loot_blue_coin", - "802a5588": "obj_spawn_star_at_y_offset", - "802a5620": "func_802A4DB0", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "ActionMrIParticle0", - "802a5a44": "ActionMrIParticle1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "func_802A525C", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "ActionMrI3", - "802a6518": "ActionMrI2", - "802a68a0": "ActionMrI1", - "802a6ad8": "ActionMrI0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "ActionActivateCapSwitch0", - "802a7020": "ActionActivateCapSwitch1", - "802a708c": "ActionActivateCapSwitch2", - "802a7160": "ActionActivateCapSwitch3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "Geo18_802A719C", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "ActionKingBobomb0", - "802a7384": "func_802A6AF8", - "802a73d8": "ActionKingBobomb2", - "802a7598": "ActionKingBobomb3", - "802a7804": "ActionKingBobomb1", - "802a78d8": "ActionKingBobomb6", - "802a7a60": "ActionKingBobomb7", - "802a7b1c": "ActionKingBobomb8", - "802a7b5c": "ActionKingBobomb4", - "802a7d14": "ActionKingBobomb5", - "802a7fbc": "func_802A7748", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "Unknown802A7E48", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "func_802A81C4", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "ActionOpenedCannon0", - "802a8f40": "ActionOpenedCannon4", - "802a9114": "ActionOpenedCannon6", - "802a92fc": "ActionOpenedCannon5", - "802a93f8": "ActionOpenedCannon1", - "802a9440": "ActionOpenedCannon2", - "802a9460": "ActionOpenedCannon3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "func_802A8D18", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "Unknown802A8EC8", - "802a98c4": "func_802A9050", - "802a9994": "ActionChuckya0", - "802a9d08": "ActionChuckya1", - "802a9f54": "ActionChuckya3", - "802a9fc8": "ActionChuckya2", - "802aa02c": "func_802A97B8", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "func_802A9A0C", - "802aa3c8": "func_802A9B54", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "func_802AA0D4", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "BehFadingWarpLoop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "func_802AA618", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "func_802AA788", - "802ab060": "func_802AA7EC", - "802ab158": "func_802AA8E4", - "802ab18c": "func_802AA918", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "func_802AB364", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "ActionCoinInsideBoo1", - "802ac15c": "ActionCoinInsideBoo0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "func_802AC070", - "802ac958": "func_802AC0B8", - "802ac9d0": "func_802AC130", - "802aca6c": "func_802AC1CC", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "ActionGrindelThwomp4", - "802ad10c": "ActionGrindelThwomp2", - "802ad1a4": "ActionGrindelThwomp3", - "802ad238": "ActionGrindelThwomp1", - "802ad2d0": "ActionGrindelThwomp0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "ActionTumblingBridge1", - "802ad76c": "ActionTumblingBridge2", - "802ad7f4": "ActionTumblingBridge3", - "802ad828": "ActionTumblingBridge0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "func_802AD01C", - "802ad8f0": "ActionElevator0", - "802ada4c": "ActionElevator1", - "802adb88": "ActionElevator2", - "802adce4": "ActionElevator4", - "802add70": "ActionElevator3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "func_802ADA94", - "802ae360": "bhv_unused_0e40_init", - "802ae394": "Unknown802ADAF4", - "802ae45c": "func_802ADBBC", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "func_802ADC20", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "func_802AF9A4", - "802b039c": "func_802AFAFC", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "func_802B02FC", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "func_802B0C54", - "802b15e8": "bhv_pushable_loop", - "802b1714": "func_802B0E74", - "802b17f4": "func_802B0F54", - "802b19d8": "func_802B1138", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "Geo18_802B1BB0", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "ActionHeaveHo1", - "802b1e6c": "ActionHeaveHo2", - "802b1ff4": "ActionHeaveHo3", - "802b20a0": "ActionHeaveHo0", - "802b2154": "func_802B18B4", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "ActionJumpingBox0", - "802b27d8": "ActionJumpingBox1", - "802b2824": "func_802B1F84", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "func_802B2328", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "func_802B2894", - "802b3250": "func_802B29B0", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "ActionBulletBill0", - "802b38b8": "ActionBulletBill1", - "802b394c": "ActionBulletBill2", - "802b3b08": "ActionBulletBill3", - "802b3b24": "ActionBulletBill4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "ActionBowserTailAnchor0", - "802b3cdc": "ActionBowserTailAnchor1", - "802b3d10": "ActionBowserTailAnchor2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "func_802B38B4", - "802b41fc": "func_802B392C", - "802b4288": "func_802B39B8", - "802b4300": "func_802B3A30", - "802b4368": "func_802B3A98", - "802b43dc": "func_802B3B0C", - "802b4478": "ActionBowser5", - "802b44bc": "ActionBowser6", - "802b45f4": "func_802B3D24", - "802b473c": "func_802B3E44", - "802b48d4": "func_802B3FDC", - "802b4a1c": "func_802B4124", - "802b4a3c": "func_802B4144", - "802b4af4": "func_u_802B4AF4", - "802b4bac": "ActionBowser18", - "802b4be8": "ActionBowser0", - "802b4ca4": "ActionBowser15", - "802b4d14": "ActionBowser14", - "802b4f00": "ActionBowser16", - "802b5104": "ActionBowser8", - "802b5218": "ActionBowser12", - "802b53f4": "func_802B4A44", - "802b5444": "func_802B4A94", - "802b5554": "func_802B4BA4", - "802b55cc": "ActionBowser13", - "802b5798": "ActionBowser17", - "802b58bc": "ActionBowser10", - "802b59cc": "ActionBowser9", - "802b5aec": "func_802B5108", - "802b5c00": "ActionBowser11", - "802b5c40": "ActionBowser7", - "802b5f6c": "func_802B5588", - "802b5fec": "ActionBowser1", - "802b611c": "func_802B5738", - "802b6190": "ActionBowser2", - "802b6568": "ActionBowser3", - "802b65d0": "func_802B5C78", - "802b6670": "func_802B5D18", - "802b6730": "func_802B5DD8", - "802b67d4": "func_802B5E7C", - "802b6878": "func_802B5F20", - "802b6a10": "func_802B60B8", - "802b6a78": "func_802B6120", - "802b6bac": "func_802B6254", - "802b6cf0": "ActionBowser4", - "802b6e40": "func_802B64E8", - "802b6ee0": "ActionBowser19", - "802b711c": "func_802B67C4", - "802b71e4": "func_802B688C", - "802b72d4": "func_802B697C", - "802b7418": "func_802B6AC0", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "Geo18_802B798C", - "802b7a20": "func_802B70C8", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "Geo18_802B7D44", - "802b7e68": "ActionFallingBowserPlatform0", - "802b7ef0": "ActionFallingBowserPlatform1", - "802b8024": "ActionFallingBowserPlatform2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "func_802B7A58", - "802b8434": "func_802B7ADC", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "func_802B7CFC", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "func_802B8F7C", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "func_802B9120", - "802b9af8": "func_802B91A0", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "func_802B95A4", - "802ba13c": "func_802B97E4", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "Geo18_802BA2B0", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "unused_Geo18_8029D890", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "func_802BB414", - "802bbfd8": "func_802BB680", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "func_802BB9F0", - "802bc4f4": "ActionRotatingCwFireBars0", - "802bc538": "ActionRotatingCwFireBars1", - "802bc590": "ActionRotatingCwFireBars2", - "802bc5fc": "ActionRotatingCwFireBars3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "func_802BBFDC", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "func_802BC390", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "func_802BCA8C", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "func_802BCCD4", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "func_802BCF78", - "802bd91c": "func_802BCFC4", - "802bdb04": "ActionToxBox4", - "802bdb3c": "ActionToxBox5", - "802bdb74": "ActionToxBox6", - "802bdbac": "ActionToxBox7", - "802bdbe4": "ActionToxBox1", - "802bdc7c": "ActionToxBox2", - "802bdcc8": "ActionToxBox3", - "802bdd14": "ActionToxBox0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "func_802BE2E8", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "ActionTuxiesMother2", - "802bef8c": "ActionTuxiesMother1", - "802bf1d8": "ActionTuxiesMother0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "func_802BEA58", - "802bf474": "ActionSmallPenguin2", - "802bf57c": "ActionSmallPenguin1", - "802bf648": "ActionSmallPenguin3", - "802bf6e4": "ActionSmallPenguin4", - "802bf760": "ActionSmallPenguin0", - "802bf90c": "ActionSmallPenguin5", - "802bfa14": "func_802BF048", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "ActionFish0", - "802bfeb8": "ActionFish1", - "802bff20": "ActionFish2", - "802bff3c": "bhv_fish_loop", - "802bff68": "func_802BF59C", - "802c00b4": "ActionFishGroup1", - "802c0348": "ActionFishGroup2", - "802c06a8": "ActionFishGroup0", - "802c0768": "bhv_fish_group_2_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "ActionBirdChirpChirp0", - "802c0b50": "ActionBirdChirpChirp1", - "802c0ba4": "ActionBirdChirpChirp2", - "802c0bc4": "ActionBirdChirpChirp3", - "802c0be0": "bhv_bird_chirp_chirp_loop", - "802c0c0c": "func_802C0240", - "802c0cd4": "ActionCheepCheep0", - "802c0d44": "ActionCheepCheep1", - "802c0f90": "ActionCheepCheep2", - "802c1204": "bhv_cheep_cheep_loop", - "802c12c0": "bhv_rotatin_exclamation_box_loop", - "802c1308": "ActionExclamationBox0", - "802c13ec": "ActionExclamationBox1", - "802c14b0": "ActionExclamationBox2", - "802c15b8": "ActionExclamationBox3", - "802c17bc": "func_802C0DF0", - "802c18d0": "ActionExclamationBox4", - "802c1988": "ActionExclamationBox5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "func_802C231C", - "802c2ebc": "ActionTweester0", - "802c2fbc": "ActionTweester1", - "802c31c4": "ActionTweester2", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "BehClimbDetectLoop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "func_802C5A64", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "func_802C61CC", - "802c6d6c": "ActionWhomp0", - "802c6ec8": "ActionWhomp7", - "802c6fb0": "ActionWhomp1", - "802c710c": "ActionWhomp2", - "802c7254": "ActionWhomp3", - "802c72b4": "ActionWhomp4", - "802c7380": "ActionWhomp5", - "802c7428": "func_802C6954", - "802c75fc": "func_802C6B28", - "802c76d4": "ActionWhomp6", - "802c7858": "ActionWhomp8", - "802c7998": "ActionWhomp9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_loop", - "802c7b14": "bhv_water_drops_loop", - "802c7cac": "bhv_surface_waves_loop", - "802c7d40": "bhv_water_surface_white_wave_init", - "802c7d90": "bhv_object_bubble_ripples_init", - "802c7dfc": "bhv_surface_wave_shrinking_init", - "802c7e5c": "bhv_wave_trail_loop", - "802c7f98": "bhv_white_wind_particle_loop", - "802c81b4": "func_802C76E0", - "802c834c": "bhv_snowman_wind_blowing_loop", - "802c85a4": "func_802C7AD0", - "802c863c": "bhv_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "Unknown802C8460", - "802c8fe4": "func_802C8504", - "802c91ec": "func_802C870C", - "802c9388": "func_802C88A8", - "802c93f8": "func_802C8918", - "802c94ac": "func_802C89CC", - "802c95b4": "func_802C8AD4", - "802c9630": "func_802C8B50", - "802c9724": "detect_object_collisions", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "PlaySound", - "802ca1e0": "PlaySound2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "Stub802C9890", - "802ca380": "Stub802C98A0", - "802ca390": "Stub802C98B0", - "802ca3a0": "Stub802C98C0", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_802CA5D0", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "Unknown802CAA84", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stopAllRippleExcept", - "802d2a74": "find_mario_y_position_on_painting", - "802d2b08": "find_mario_z_position_on_painting", - "802d2b84": "painting_find_vertical_ripple_location", - "802d2c40": "find_part_of_painting_near_mario", - "802d2d80": "find_mario_x_position_on_painting", - "802d2dfc": "painting_find_horizontal_ripple_location", - "802d2eb8": "painting_set_ripple_type", - "802d2ffc": "vertical_proximity_ripple_painting_ripple", - "802d319c": "vertical_proximity_ripple_painting_ripple_if_mario_enters", - "802d327c": "vertical_continuous_ripple_painting_ripple", - "802d341c": "vertical_continuous_ripple_painting_ripple_if_mario_enters", - "802d34fc": "horizontal_proximity_ripple_painting_ripple", - "802d36ac": "horizontal_proximity_ripple_painting_ripple_if_mario_enters", - "802d379c": "horizontal_continuous_ripple_painting_ripple", - "802d393c": "horizontal_continuous_ripple_painting_ripple_if_mario_enters", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_status", - "802d3cec": "painting_calculate_point_ripple", - "802d3e6c": "painting_conditionally_calculate_point_ripple", - "802d3ee4": "Print1", - "802d404c": "Print2", - "802d43f8": "small_float_to_byte", - "802d44bc": "func_802D39DC", - "802d47d0": "func_802D3CF0", - "802d4edc": "func_802D43FC", - "802d50dc": "func_802D45FC", - "802d5354": "func_802D4874", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "update_ddd_painting", - "802d58e4": "func_802D4E04", - "802d593c": "display_painting", - "802d59a8": "vertical_painting_ripple", - "802d5aa0": "horizontal_painting_ripple", - "802d5b98": "Geo18_802D5B98", - "802d5d0c": "Geo18_802D5D0C", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "CoinStep", - "802e5e6c": "MovingCoinFlickerLoop", - "802e5ea4": "CoinCollected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "func_802E540C", - "802e63ec": "func_802E54DC", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "func_802E5B7C", - "802e6af8": "BobombExplodeLoop", - "802e6bd4": "CheckBobombInteractions", - "802e6cf0": "BobombPatrolLoop", - "802e6dc8": "BobombChaseMarioLoop", - "802e6e84": "BobombLaunchedLoop", - "802e6ed8": "GenericBobombFreeLoop", - "802e7020": "StationaryBobombFreeLoop", - "802e7134": "BobombFreeLoop", - "802e7180": "BobombHeldLoop", - "802e7220": "BobombDroppedLoop", - "802e7280": "BobombThrownLoop", - "802e7324": "ObjRandomBlink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "BobombBuddyIdleLoop", - "802e7814": "BobombBuddyCannonLoop", - "802e79dc": "BobombBuddyTalkLoop", - "802e7b00": "BobombBuddyTurnToTalkLoop", - "802e7bb0": "BobombBuddyActionLoop", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "CannonTrapDoorOpeningLoop", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "func_802E70A8", - "802e7fec": "func_802E70DC", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "ButterflyStep", - "802e9278": "CalculateButterflyAngle", - "802e9470": "ButterflyRestingLoop", - "802e94e4": "ButterflyFollowMarioLoop", - "802e9548": "ButterflyReturnHomeLoop", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "HootFindNextFloor", - "802e98c0": "HootFloorBounce", - "802e9a4c": "HootFreeStep", - "802e9cf4": "PlayerSetHootYaw", - "802e9d98": "HootCarryStep", - "802e9f60": "HootSurfaceCollision", - "802ea144": "HootAscentLoop", - "802ea258": "HootActionLoop", - "802ea3f0": "HootTurnToHome", - "802ea4ec": "HootAwakeLoop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "BullyCheckMarioCollision", - "802eb288": "BullyChaseMarioLoop", - "802eb3f0": "BullyKnockbackLoop", - "802eb510": "BullyBackUpLoop", - "802eb5c4": "BullyBackUpCheck", - "802eb630": "PlayBullyStompingSound", - "802eb744": "BullyStep", - "802eb7e0": "BullySpawnCoin", - "802eb8b0": "BullyLavaDeath", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "BigBullySpawnMinion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "BigBullyWithMinionsLavaDeath", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "WaterRingCalcMarioDistInFront", - "802ec030": "WaterRingInit", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "CheckWaterRingCollection", - "802ec3d0": "SetWaterRingScale", - "802ec4e0": "WaterRingCollectedLoop", - "802ec59c": "JetStreamWaterRingNotCollectedLoop", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "Unknown802EB8A4", - "802ec818": "JetStreamRingSpawnerActiveLoop", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "MantaRayWaterRingNotCollectedLoop", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "CelebrationStarSpinAroundMarioLoop", - "802ed28c": "CelebrationStarFaceCameraLoop", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "MoneybagCheckMarioCollision", - "802ee268": "MoneybagJump", - "802ee46c": "MoneybagMoveAroundLoop", - "802ee598": "MoneybagReturnHomeLoop", - "802ee728": "MoneybagDisappearLoop", - "802ee778": "MoneybagDeathLoop", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "func_802EDA14", - "802eea7c": "func_802EDA6C", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "func_802EFB2C", - "802f0bd4": "func_802EFB84", - "802f0c94": "func_802EFC44", - "802f0df0": "func_802EFDA0", - "802f0fa8": "func_802EFF58", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "func_802F05DC", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "func_802F0904", - "802f19c8": "func_802F0978", - "802f1a10": "func_802F09C0", - "802f1bb8": "func_802F0B68", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "func_802F0D70", - "802f1e5c": "func_802F0E0C", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "func_802F0FE0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "func_802F1190", - "802f2284": "func_802F1234", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "func_802F1A50", - "802f2b88": "create_star", - "802f2bd4": "func_802F1B84", - "802f2c24": "func_802F1BD4", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "func_802F238C", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "func_802F2820", - "802f39b4": "func_802F2924", - "802f3a30": "bhvLllVolcanoFallingTrap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "func_802F2D40", - "802f3ea8": "func_802F2E18", - "802f401c": "func_802F2F8C", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "func_802F3328", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "func_802F3BD8", - "802f4ce0": "func_802F3C50", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "func_802F3F80", - "802f5068": "func_802F3FD8", - "802f52c0": "func_802F4230", - "802f547c": "func_802F43EC", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "func_802F4CE8", - "802f5e44": "func_802F4DB4", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "func_802F54F8", - "802f665c": "func_802F55CC", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "func_802F5E20", - "802f7068": "func_802F5FD8", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "func_802F6E8C", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "BehYoshiLoop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "Geo18_8030D93C", - "8030d9ac": "Geo18_8030D9AC", - "8030da14": "snufit_act_0", - "8030db38": "snufit_act_1", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_manager_loop", - "80312370": "coffin_act_0", - "8031262c": "coffin_act_1", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee0": "func_80319E70", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L_U_8031C200", - "8031c23c": "L_U_8031C23C", - "8031c298": "L_U_8031C298", - "8031c2dc": "L_U_8031C2DC", - "8031c328": "L_U_8031C328", - "8031c36c": "L_U_8031C36C", - "8031c3bc": "L_U_8031C3BC", - "8031c3e8": "L_U_8031C3E8", - "8031c454": "L_U_8031C454", - "8031c4a4": "L_U_8031C4A4", - "8031c5c8": "L_U_8031C5C8", - "8031c698": "L_U_8031C698", - "8031c6a0": "L_U_8031C6A0", - "8031cbe0": "L_U_8031CBE0", - "8031cbec": "L_U_8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": ".", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "D_8032CE9C", - "8032de4c": "D_8032CEEC", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "803306dc": "sCageUkikiPath", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "D_8032FCE8", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "D_8032FDAC", - "80330d30": "D_8032FDD0", - "80330d54": "D_8032FDF4", - "80330d78": "D_8032FE18", - "80330d9c": "sWindParticleHitbox", - "80330dac": "D_8032FE4C", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "hmcPaintings", - "80331308": "insideCastlePaintings", - "80331344": "ttmPaintings", - "8033134c": "paintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b10": "D_80331A00", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "D_80331C00", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358d0": "viMgrMainArgs", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "D_80334810", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "unknown", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338da0": "D_80337BB0", - "80338da8": "D_80337BB8", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "D_80339F50", - "8033b350": "D_80339FE0", - "8033b3b0": "gBodyStates", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gBehCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361270": "sGrabReleaseState", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "D_8035FFA0", - "80361314": "D_8035FFA4", - "80361318": "ripplingPainting", - "8036131c": "dddStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80364c60": "viMgrThread", - "80364e10": "viMgrStack", - "80365e10": "__osViMesgQueue", - "80365e28": "viMgrMesgBuff", - "80365e40": "viEventViMesg", - "80365e58": "viEventCounterMesg", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "D_80365CE0", - "8036708c": "D_80365D1C", - "80367090": "D_80365D20", - "80367091": "_osCont_numControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "D_80365DAC", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "RandomU16", - "80383cb4": "RandomFloat", - "80383d1c": "RandomSign", - "80383d68": "func_80383D68", - "80385bf0": "stub_80385BF0", - "80385c00": "cur_object_exec_behavior", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "00000001": "ASSERT", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "spot_on_ground_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "water_waves_surface_geo", - "17000168": "water_waves_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleMario", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvWaterWaves", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvWallTinyStarParticleSpawn", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvPoundTinyStarParticleSpawn", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvPunchTinyTriangleSpawn", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvWaterMistSpawn", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvPoundWhitePuffs", - "13000e3c": "bhvGroundSand", - "13000e58": "bhvGroundSnow", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFlameMario", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvSnowLeafParticleSpawn", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFishGroup2", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMarioDustGenerator", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTornadoSandParticle", - "13002650": "bhvTornado", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSpecialTripleJumpSparkles", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDrops", - "13002c7c": "bhvWaterSurfaceWhiteWave", - "13002cb0": "bhvObjectBubbleRipples", - "13002ce0": "bhvSurfaceWaves", - "13002d28": "bhvWaterSurfaceWhiteWave2", - "13002d50": "bhvWavesGenerator", - "13002d7c": "bhvSurfaceWaveShrinking", - "13002db0": "bhvWaterType", - "13002dc0": "bhvWaveTrailOnSurface", - "13002e04": "bhvTinyWhiteWindParticle", - "13002e20": "bhvWindParticle", - "13002e3c": "bhvSnowmanWindBlowing", - "13002e58": "bhvWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvWarps60", - "13002f64": "bhvWarps64", - "13002f68": "bhvWarps68", - "13002f6c": "bhvWarps6C", - "13002f70": "bhvWarps70", - "13002f74": "bhvWarps74", - "13002f78": "bhvWarps78", - "13002f7c": "bhvWarps7C", - "13002f80": "bhvWarps80", - "13002f84": "bhvWarps84", - "13002f88": "bhvWarps88", - "13002f8c": "bhvWarps8C", - "13002f90": "bhvWarps90", - "13002f94": "bhvWarps94", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinManager", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000300": ["osTvType"], + "80000308": ["osRomBase"], + "8000030c": ["osResetType"], + "80000318": ["osMemSize"], + "8000031c": ["osAppNmiBuffer"], + "80000000": ["D_80000000"], + "a4000000": ["D_A4000000"], + "a40004c0": ["D_A40004C0"], + "a4000774": ["D_A4000774"], + "a4001000": ["D_A4001000"], + "a4040010": ["D_A4040010"], + "a4080000": ["D_A4080000"], + "a4300000": ["D_A4300000"], + "a4300004": ["D_A4300004"], + "a4300008": ["D_A4300008"], + "a430000c": ["D_A430000C"], + "a4400010": ["D_A4400010"], + "a450000c": ["D_A450000C"], + "a4600000": ["D_A4600000"], + "a4600004": ["D_A4600004"], + "a460000c": ["D_A460000C"], + "a4600010": ["D_A4600010"], + "a4700000": ["D_A4700000"], + "a4700010": ["D_A4700010"], + "a4800018": ["D_A4800018"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802ef700": ["__osGetCurrFaultedThread"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "EntryPoint"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["Unknown80246170"], + "802461cc": ["Dummy802461CC"], + "802461dc": ["Dummy802461DC"], + "802461ec": ["Dummy802461EC"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["AllocPool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["SendMessage"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["Main"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["func_80247D84"], + "80247f08": ["func_80247ED8"], + "80247fdc": ["func_80247FAC"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["func_80248C10"], + "80248c58": ["func_80248C28"], + "80248ce8": ["func_80248CB8"], + "80248d78": ["func_80248D48"], + "80248dc0": ["func_80248D90"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["func_802491FC"], + "8024927c": ["func_8024924C"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_paused"], + "80249764": ["set_play_mode"], + "8024978c": ["func_8024975C"], + "802497b8": ["func_80249788"], + "8024982c": ["nop_802497FC"], + "8024983c": ["func_8024980C"], + "8024995c": ["func_8024992C"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["func_8024A02C"], + "8024a18c": ["func_8024A094"], + "8024a1d8": ["func_8024A0E0"], + "8024a374": ["check_instant_warp"], + "8024a584": ["func_8024A48C"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["func_8024D664"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["func_8024FC94"], + "8024ff04": ["func_8024FD2C"], + "80250098": ["func_8024FEC0"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["nop_80254E3C"], + "802550b0": ["nop_80254E50"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["BehEndPeachLoop"], + "802570dc": ["BehEndToadLoop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["func_8025F0DC"], + "8025f560": ["func_8025F188"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["func_802604E0"], + "80260aac": ["func_802606DC"], + "80260cb4": ["act_idle"], + "80260f94": ["func_80260BC4"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["func_80261D70"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["func_80261F8C"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["func_80262574"], + "80262bc4": ["func_802627B8"], + "80262c34": ["func_80262828"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["func_80262CEC"], + "802631f0": ["func_80262DE4"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["func_80263378"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["func_80263A50"], + "80263ee4": ["func_80263AD4"], + "80264024": ["func_80263C14"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["func_802652F0"], + "80265b1c": ["func_8026570C"], + "80265d90": ["func_80265980"], + "80265df8": ["func_802659E8"], + "80266038": ["func_80265C28"], + "802661cc": ["func_80265DBC"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["func_80267814"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["func_u_8026A090"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["func_8026CDFC"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_enfvx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["Geo18_802764B0"], + "8027684c": ["bhvToadMessage_loop"], + "80276910": ["bhvToadMessage_init"], + "80276bb8": ["bhvUnlockDoorStar_init"], + "80276ccc": ["bhvUnlockDoorStar_loop"], + "802770a4": ["Geo18_802770A4"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["Geo18_80277294"], + "802773a4": ["Geo18_802773A4"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["Geo18_802775CC"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["Geo18_80277824"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["func_80278304"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["func_80278AD4"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["func_8027A220"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["func_8027A478"], + "8027aa74": ["func_8027A4C4"], + "8027ab04": ["clear_areas"], + "8027ad74": ["func_8027A7C4"], + "8027ae44": ["load_area"], + "8027af48": ["func_8027A998"], + "8027afbc": ["load_mario_area"], + "8027b038": ["func_8027AA88"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c28": ["unused_80282678"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["dummy_802877D8"], + "80287dd4": ["dummy_802877EC"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["unused_8028C3AC"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c08": ["unused_802905C8"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292400": ["cutscene_dance_unused"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["func_8029B964"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_8029CA50"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["Geo18_8029D890"], + "8029d924": ["Geo18_8029D924"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["func_8029D558"], + "8029dda8": ["apply_object_scale_to_matrix"], + "8029de80": ["func_8029D704"], + "8029e1b0": ["set_object_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["obj_rotate_yaw_toward"], + "8029e694": ["angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["set_object_parent_relative_pos"], + "8029e914": ["set_object_pos"], + "8029e96c": ["set_object_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["Unknown8029E330"], + "8029eb04": ["spawn_water_splash"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["obj_move_using_vel"], + "8029f0c8": ["copy_object_graph_y_offset"], + "8029f0e0": ["copy_object_pos_and_angle"], + "8029f120": ["copy_object_pos"], + "8029f148": ["copy_object_angle"], + "8029f188": ["func_8029EA0C"], + "8029f1b0": ["Unknown8029EA34"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["apply_scale_to_object_transform"], + "8029f3a8": ["copy_object_scale"], + "8029f3d0": ["scale_object_xyz"], + "8029f404": ["scale_object"], + "8029f430": ["obj_scale"], + "8029f464": ["SetObjAnimation"], + "8029f4b4": ["set_obj_animation_and_sound_state"], + "8029f514": ["func_8029ED98"], + "8029f59c": ["func_8029EE20"], + "8029f600": ["obj_enable_rendering_and_become_tangible"], + "8029f620": ["obj_enable_rendering"], + "8029f644": ["obj_disable_rendering_and_become_intangible"], + "8029f66c": ["obj_disable_rendering"], + "8029f694": ["obj_unhide"], + "8029f6bc": ["obj_hide"], + "8029f6e0": ["obj_set_pos_relative"], + "8029f7d8": ["obj_set_pos_relative_to_parent"], + "8029f820": ["obj_enable_rendering_2"], + "8029f848": ["obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_facing_to_move_angles"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["obj_nearest_object_with_behavior"], + "8029f998": ["obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["obj_find_nearby_held_actor"], + "8029fdb4": ["obj_change_action"], + "8029fe00": ["func_8029F684"], + "8029fe6c": ["func_8029F6F0"], + "8029fea4": ["func_8029F728"], + "8029ff04": ["func_8029F788"], + "8029ffa4": ["func_8029F828"], + "802a0008": ["obj_check_anim_frame"], + "802a0050": ["obj_check_anim_frame_in_range"], + "802a00ac": ["Unknown8029F930"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["func_8029FA1C"], + "802a01d8": ["func_8029FA5C"], + "802a0380": ["obj_get_thrown_or_placed"], + "802a0474": ["obj_get_dropped"], + "802a04c0": ["obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["obj_clear_interact_status_flag"], + "802a0568": ["mark_object_for_deletion"], + "802a057c": ["obj_disable"], + "802a05b4": ["obj_become_intangible"], + "802a05d4": ["obj_become_tangible"], + "802a05f0": ["make_object_tangible"], + "802a0604": ["obj_update_floor_height"], + "802a064c": ["obj_update_floor_height_and_get_floor"], + "802a079c": ["obj_apply_drag_xz"], + "802a0e68": ["obj_move_y"], + "802a113c": ["obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["obj_move_y_with_terminal_vel"], + "802a1308": ["obj_compute_vel_xz"], + "802a1370": ["func_802A0BF4"], + "802a1424": ["are_objects_collided"], + "802a148c": ["obj_set_behavior"], + "802a14c4": ["set_object_behavior"], + "802a14fc": ["obj_has_behavior"], + "802a1554": ["object_has_behavior"], + "802a15ac": ["obj_lateral_dist_from_mario_to_home"], + "802a1634": ["obj_lateral_dist_to_home"], + "802a16ac": ["obj_outside_home_square"], + "802a1774": ["obj_outside_home_rectangle"], + "802a184c": ["obj_set_pos_to_home"], + "802a188c": ["obj_set_pos_to_home_and_stop"], + "802a18dc": ["obj_shake_y"], + "802a1930": ["obj_start_cam_event"], + "802a1960": ["Unknown802A11E4"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["obj_set_hitbox_radius_and_height"], + "802a19f0": ["obj_set_hurtbox_radius_and_height"], + "802a1b34": ["spawn_object_loot_blue_coins"], + "802a1b8c": ["spawn_object_loot_yellow_coins"], + "802a1bdc": ["obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["obj_abs_y_dist_to_home"], + "802a1cc4": ["Unknown802A1548"], + "802a1f3c": ["obj_resolve_wall_collisions"], + "802a2320": ["obj_update_floor_and_walls"], + "802a2348": ["obj_move_standard"], + "802a25b4": ["obj_move_using_vel_and_gravity"], + "802a2644": ["obj_move_using_fvel_and_gravity"], + "802a2674": ["set_object_pos_relative"], + "802a2748": ["obj_angle_to_home"], + "802a27b0": ["func_802A2008"], + "802a2804": ["translate_object_local"], + "802a2930": ["build_object_transform_from_pos_and_angle"], + "802a2a18": ["func_802A2270"], + "802a2a84": ["build_object_transform_relative_to_parent"], + "802a2b28": ["Unknown802A2380"], + "802a2b6c": ["obj_rotate_move_angle_using_vel"], + "802a2bc4": ["obj_rotate_face_angle_using_vel"], + "802a2c1c": ["obj_set_face_angle_to_move_angle"], + "802a2c5c": ["obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["scale_object_random"], + "802a2fc0": ["translate_object_xyz_random"], + "802a308c": ["translate_object_xz_random"], + "802a31e0": ["func_802A2A38"], + "802a3268": ["obj_reflect_move_angle_off_wall"], + "802a32ac": ["obj_spawn_particles"], + "802a34a4": ["set_object_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["obj_wait_then_blink"], + "802a3754": ["obj_is_mario_ground_pounding_platform"], + "802a37ac": ["func_802A3004"], + "802a37dc": ["func_802A3034"], + "802a3818": ["obj_push_mario_away"], + "802a390c": ["obj_push_mario_away_from_cylinder"], + "802a399c": ["BehDustSmokeLoop"], + "802a3a4c": ["func_802A32A4"], + "802a3a88": ["func_802A32E0"], + "802a3b40": ["func_802A3398"], + "802a3c18": ["func_802A3470"], + "802a3cfc": ["obj_is_mario_on_platform"], + "802a3d40": ["obj_shake_y_until"], + "802a3dd4": ["func_802A362C"], + "802a3e30": ["obj_call_action_function"], + "802a3ef8": ["Unknown802A3750"], + "802a3f24": ["func_802A377C"], + "802a3f48": ["obj_mario_far_away"], + "802a404c": ["obj_is_mario_moving_fast_or_in_air"], + "802a40b8": ["item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["obj_enable_rendering_if_mario_in_room"], + "802a4360": ["obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["func_802A3C98"], + "802a44f4": ["set_object_collision_data"], + "802a452c": ["obj_if_hit_wall_bounce_away"], + "802a4564": ["obj_hide_if_mario_far_away_y"], + "802a45e4": ["Geo18_802A45E4"], + "802a462c": ["Unknown802A3E84"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["func_802A3FF8"], + "802a48bc": ["obj_is_mario_in_range_and_ready_to_speak"], + "802a4960": ["obj_update_dialog"], + "802a4be4": ["obj_update_dialog_with_cutscene"], + "802a4f04": ["obj_has_model"], + "802a4f58": ["obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["ShakeScreen"], + "802a513c": ["attack_collided_non_mario_object"], + "802a51ac": ["obj_was_attacked_or_ground_pounded"], + "802a5228": ["copy_object_behavior_params"], + "802a5248": ["func_802A4A70"], + "802a5288": ["func_802A4AB0"], + "802a52c4": ["func_802A4AEC"], + "802a52f8": ["obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["obj_check_interacted"], + "802a5524": ["obj_spawn_loot_blue_coin"], + "802a5588": ["obj_spawn_star_at_y_offset"], + "802a5620": ["func_802A4DB0"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["ActionMrIParticle0"], + "802a5a44": ["ActionMrIParticle1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["func_802A525C"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["ActionMrI3"], + "802a6518": ["ActionMrI2"], + "802a68a0": ["ActionMrI1"], + "802a6ad8": ["ActionMrI0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["ActionActivateCapSwitch0"], + "802a7020": ["ActionActivateCapSwitch1"], + "802a708c": ["ActionActivateCapSwitch2"], + "802a7160": ["ActionActivateCapSwitch3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["Geo18_802A719C"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["ActionKingBobomb0"], + "802a7384": ["func_802A6AF8"], + "802a73d8": ["ActionKingBobomb2"], + "802a7598": ["ActionKingBobomb3"], + "802a7804": ["ActionKingBobomb1"], + "802a78d8": ["ActionKingBobomb6"], + "802a7a60": ["ActionKingBobomb7"], + "802a7b1c": ["ActionKingBobomb8"], + "802a7b5c": ["ActionKingBobomb4"], + "802a7d14": ["ActionKingBobomb5"], + "802a7fbc": ["func_802A7748"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["Unknown802A7E48"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["func_802A81C4"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["ActionOpenedCannon0"], + "802a8f40": ["ActionOpenedCannon4"], + "802a9114": ["ActionOpenedCannon6"], + "802a92fc": ["ActionOpenedCannon5"], + "802a93f8": ["ActionOpenedCannon1"], + "802a9440": ["ActionOpenedCannon2"], + "802a9460": ["ActionOpenedCannon3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["func_802A8D18"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["Unknown802A8EC8"], + "802a98c4": ["func_802A9050"], + "802a9994": ["ActionChuckya0"], + "802a9d08": ["ActionChuckya1"], + "802a9f54": ["ActionChuckya3"], + "802a9fc8": ["ActionChuckya2"], + "802aa02c": ["func_802A97B8"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["func_802A9A0C"], + "802aa3c8": ["func_802A9B54"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["func_802AA0D4"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["BehFadingWarpLoop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["func_802AA618"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["func_802AA788"], + "802ab060": ["func_802AA7EC"], + "802ab158": ["func_802AA8E4"], + "802ab18c": ["func_802AA918"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["func_802AB364"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["ActionCoinInsideBoo1"], + "802ac15c": ["ActionCoinInsideBoo0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["func_802AC070"], + "802ac958": ["func_802AC0B8"], + "802ac9d0": ["func_802AC130"], + "802aca6c": ["func_802AC1CC"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["ActionGrindelThwomp4"], + "802ad10c": ["ActionGrindelThwomp2"], + "802ad1a4": ["ActionGrindelThwomp3"], + "802ad238": ["ActionGrindelThwomp1"], + "802ad2d0": ["ActionGrindelThwomp0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["ActionTumblingBridge1"], + "802ad76c": ["ActionTumblingBridge2"], + "802ad7f4": ["ActionTumblingBridge3"], + "802ad828": ["ActionTumblingBridge0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["func_802AD01C"], + "802ad8f0": ["ActionElevator0"], + "802ada4c": ["ActionElevator1"], + "802adb88": ["ActionElevator2"], + "802adce4": ["ActionElevator4"], + "802add70": ["ActionElevator3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["func_802ADA94"], + "802ae360": ["bhv_unused_0e40_init"], + "802ae394": ["Unknown802ADAF4"], + "802ae45c": ["func_802ADBBC"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["func_802ADC20"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["func_802AF9A4"], + "802b039c": ["func_802AFAFC"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["func_802B02FC"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["func_802B0C54"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["func_802B0E74"], + "802b17f4": ["func_802B0F54"], + "802b19d8": ["func_802B1138"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["Geo18_802B1BB0"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["ActionHeaveHo1"], + "802b1e6c": ["ActionHeaveHo2"], + "802b1ff4": ["ActionHeaveHo3"], + "802b20a0": ["ActionHeaveHo0"], + "802b2154": ["func_802B18B4"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["ActionJumpingBox0"], + "802b27d8": ["ActionJumpingBox1"], + "802b2824": ["func_802B1F84"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["func_802B2328"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["func_802B2894"], + "802b3250": ["func_802B29B0"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["ActionBulletBill0"], + "802b38b8": ["ActionBulletBill1"], + "802b394c": ["ActionBulletBill2"], + "802b3b08": ["ActionBulletBill3"], + "802b3b24": ["ActionBulletBill4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["ActionBowserTailAnchor0"], + "802b3cdc": ["ActionBowserTailAnchor1"], + "802b3d10": ["ActionBowserTailAnchor2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["func_802B38B4"], + "802b41fc": ["func_802B392C"], + "802b4288": ["func_802B39B8"], + "802b4300": ["func_802B3A30"], + "802b4368": ["func_802B3A98"], + "802b43dc": ["func_802B3B0C"], + "802b4478": ["ActionBowser5"], + "802b44bc": ["ActionBowser6"], + "802b45f4": ["func_802B3D24"], + "802b473c": ["func_802B3E44"], + "802b48d4": ["func_802B3FDC"], + "802b4a1c": ["func_802B4124"], + "802b4a3c": ["func_802B4144"], + "802b4af4": ["func_u_802B4AF4"], + "802b4bac": ["ActionBowser18"], + "802b4be8": ["ActionBowser0"], + "802b4ca4": ["ActionBowser15"], + "802b4d14": ["ActionBowser14"], + "802b4f00": ["ActionBowser16"], + "802b5104": ["ActionBowser8"], + "802b5218": ["ActionBowser12"], + "802b53f4": ["func_802B4A44"], + "802b5444": ["func_802B4A94"], + "802b5554": ["func_802B4BA4"], + "802b55cc": ["ActionBowser13"], + "802b5798": ["ActionBowser17"], + "802b58bc": ["ActionBowser10"], + "802b59cc": ["ActionBowser9"], + "802b5aec": ["func_802B5108"], + "802b5c00": ["ActionBowser11"], + "802b5c40": ["ActionBowser7"], + "802b5f6c": ["func_802B5588"], + "802b5fec": ["ActionBowser1"], + "802b611c": ["func_802B5738"], + "802b6190": ["ActionBowser2"], + "802b6568": ["ActionBowser3"], + "802b65d0": ["func_802B5C78"], + "802b6670": ["func_802B5D18"], + "802b6730": ["func_802B5DD8"], + "802b67d4": ["func_802B5E7C"], + "802b6878": ["func_802B5F20"], + "802b6a10": ["func_802B60B8"], + "802b6a78": ["func_802B6120"], + "802b6bac": ["func_802B6254"], + "802b6cf0": ["ActionBowser4"], + "802b6e40": ["func_802B64E8"], + "802b6ee0": ["ActionBowser19"], + "802b711c": ["func_802B67C4"], + "802b71e4": ["func_802B688C"], + "802b72d4": ["func_802B697C"], + "802b7418": ["func_802B6AC0"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["Geo18_802B798C"], + "802b7a20": ["func_802B70C8"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["Geo18_802B7D44"], + "802b7e68": ["ActionFallingBowserPlatform0"], + "802b7ef0": ["ActionFallingBowserPlatform1"], + "802b8024": ["ActionFallingBowserPlatform2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["func_802B7A58"], + "802b8434": ["func_802B7ADC"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["func_802B7CFC"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["func_802B8F7C"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["func_802B9120"], + "802b9af8": ["func_802B91A0"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["func_802B95A4"], + "802ba13c": ["func_802B97E4"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["Geo18_802BA2B0"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["unused_Geo18_8029D890"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["func_802BB414"], + "802bbfd8": ["func_802BB680"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["func_802BB9F0"], + "802bc4f4": ["ActionRotatingCwFireBars0"], + "802bc538": ["ActionRotatingCwFireBars1"], + "802bc590": ["ActionRotatingCwFireBars2"], + "802bc5fc": ["ActionRotatingCwFireBars3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["func_802BBFDC"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["func_802BC390"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["func_802BCA8C"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["func_802BCCD4"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["func_802BCF78"], + "802bd91c": ["func_802BCFC4"], + "802bdb04": ["ActionToxBox4"], + "802bdb3c": ["ActionToxBox5"], + "802bdb74": ["ActionToxBox6"], + "802bdbac": ["ActionToxBox7"], + "802bdbe4": ["ActionToxBox1"], + "802bdc7c": ["ActionToxBox2"], + "802bdcc8": ["ActionToxBox3"], + "802bdd14": ["ActionToxBox0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["func_802BE2E8"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["ActionTuxiesMother2"], + "802bef8c": ["ActionTuxiesMother1"], + "802bf1d8": ["ActionTuxiesMother0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["func_802BEA58"], + "802bf474": ["ActionSmallPenguin2"], + "802bf57c": ["ActionSmallPenguin1"], + "802bf648": ["ActionSmallPenguin3"], + "802bf6e4": ["ActionSmallPenguin4"], + "802bf760": ["ActionSmallPenguin0"], + "802bf90c": ["ActionSmallPenguin5"], + "802bfa14": ["func_802BF048"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["ActionFish0"], + "802bfeb8": ["ActionFish1"], + "802bff20": ["ActionFish2"], + "802bff3c": ["bhv_fish_loop"], + "802bff68": ["func_802BF59C"], + "802c00b4": ["ActionFishGroup1"], + "802c0348": ["ActionFishGroup2"], + "802c06a8": ["ActionFishGroup0"], + "802c0768": ["bhv_fish_group_2_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["ActionBirdChirpChirp0"], + "802c0b50": ["ActionBirdChirpChirp1"], + "802c0ba4": ["ActionBirdChirpChirp2"], + "802c0bc4": ["ActionBirdChirpChirp3"], + "802c0be0": ["bhv_bird_chirp_chirp_loop"], + "802c0c0c": ["func_802C0240"], + "802c0cd4": ["ActionCheepCheep0"], + "802c0d44": ["ActionCheepCheep1"], + "802c0f90": ["ActionCheepCheep2"], + "802c1204": ["bhv_cheep_cheep_loop"], + "802c12c0": ["bhv_rotatin_exclamation_box_loop"], + "802c1308": ["ActionExclamationBox0"], + "802c13ec": ["ActionExclamationBox1"], + "802c14b0": ["ActionExclamationBox2"], + "802c15b8": ["ActionExclamationBox3"], + "802c17bc": ["func_802C0DF0"], + "802c18d0": ["ActionExclamationBox4"], + "802c1988": ["ActionExclamationBox5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["func_802C231C"], + "802c2ebc": ["ActionTweester0"], + "802c2fbc": ["ActionTweester1"], + "802c31c4": ["ActionTweester2"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["BehClimbDetectLoop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["func_802C5A64"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["func_802C61CC"], + "802c6d6c": ["ActionWhomp0"], + "802c6ec8": ["ActionWhomp7"], + "802c6fb0": ["ActionWhomp1"], + "802c710c": ["ActionWhomp2"], + "802c7254": ["ActionWhomp3"], + "802c72b4": ["ActionWhomp4"], + "802c7380": ["ActionWhomp5"], + "802c7428": ["func_802C6954"], + "802c75fc": ["func_802C6B28"], + "802c76d4": ["ActionWhomp6"], + "802c7858": ["ActionWhomp8"], + "802c7998": ["ActionWhomp9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_loop"], + "802c7b14": ["bhv_water_drops_loop"], + "802c7cac": ["bhv_surface_waves_loop"], + "802c7d40": ["bhv_water_surface_white_wave_init"], + "802c7d90": ["bhv_object_bubble_ripples_init"], + "802c7dfc": ["bhv_surface_wave_shrinking_init"], + "802c7e5c": ["bhv_wave_trail_loop"], + "802c7f98": ["bhv_white_wind_particle_loop"], + "802c81b4": ["func_802C76E0"], + "802c834c": ["bhv_snowman_wind_blowing_loop"], + "802c85a4": ["func_802C7AD0"], + "802c863c": ["bhv_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["Unknown802C8460"], + "802c8fe4": ["func_802C8504"], + "802c91ec": ["func_802C870C"], + "802c9388": ["func_802C88A8"], + "802c93f8": ["func_802C8918"], + "802c94ac": ["func_802C89CC"], + "802c95b4": ["func_802C8AD4"], + "802c9630": ["func_802C8B50"], + "802c9724": ["detect_object_collisions"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["PlaySound"], + "802ca1e0": ["PlaySound2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["Stub802C9890"], + "802ca380": ["Stub802C98A0"], + "802ca390": ["Stub802C98B0"], + "802ca3a0": ["Stub802C98C0"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_802CA5D0"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["Unknown802CAA84"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stopAllRippleExcept"], + "802d2a74": ["find_mario_y_position_on_painting"], + "802d2b08": ["find_mario_z_position_on_painting"], + "802d2b84": ["painting_find_vertical_ripple_location"], + "802d2c40": ["find_part_of_painting_near_mario"], + "802d2d80": ["find_mario_x_position_on_painting"], + "802d2dfc": ["painting_find_horizontal_ripple_location"], + "802d2eb8": ["painting_set_ripple_type"], + "802d2ffc": ["vertical_proximity_ripple_painting_ripple"], + "802d319c": ["vertical_proximity_ripple_painting_ripple_if_mario_enters"], + "802d327c": ["vertical_continuous_ripple_painting_ripple"], + "802d341c": ["vertical_continuous_ripple_painting_ripple_if_mario_enters"], + "802d34fc": ["horizontal_proximity_ripple_painting_ripple"], + "802d36ac": ["horizontal_proximity_ripple_painting_ripple_if_mario_enters"], + "802d379c": ["horizontal_continuous_ripple_painting_ripple"], + "802d393c": ["horizontal_continuous_ripple_painting_ripple_if_mario_enters"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_status"], + "802d3cec": ["painting_calculate_point_ripple"], + "802d3e6c": ["painting_conditionally_calculate_point_ripple"], + "802d3ee4": ["Print1"], + "802d404c": ["Print2"], + "802d43f8": ["small_float_to_byte"], + "802d44bc": ["func_802D39DC"], + "802d47d0": ["func_802D3CF0"], + "802d4edc": ["func_802D43FC"], + "802d50dc": ["func_802D45FC"], + "802d5354": ["func_802D4874"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["update_ddd_painting"], + "802d58e4": ["func_802D4E04"], + "802d593c": ["display_painting"], + "802d59a8": ["vertical_painting_ripple"], + "802d5aa0": ["horizontal_painting_ripple"], + "802d5b98": ["Geo18_802D5B98"], + "802d5d0c": ["Geo18_802D5D0C"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["CoinStep"], + "802e5e6c": ["MovingCoinFlickerLoop"], + "802e5ea4": ["CoinCollected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["func_802E540C"], + "802e63ec": ["func_802E54DC"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["func_802E5B7C"], + "802e6af8": ["BobombExplodeLoop"], + "802e6bd4": ["CheckBobombInteractions"], + "802e6cf0": ["BobombPatrolLoop"], + "802e6dc8": ["BobombChaseMarioLoop"], + "802e6e84": ["BobombLaunchedLoop"], + "802e6ed8": ["GenericBobombFreeLoop"], + "802e7020": ["StationaryBobombFreeLoop"], + "802e7134": ["BobombFreeLoop"], + "802e7180": ["BobombHeldLoop"], + "802e7220": ["BobombDroppedLoop"], + "802e7280": ["BobombThrownLoop"], + "802e7324": ["ObjRandomBlink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["BobombBuddyIdleLoop"], + "802e7814": ["BobombBuddyCannonLoop"], + "802e79dc": ["BobombBuddyTalkLoop"], + "802e7b00": ["BobombBuddyTurnToTalkLoop"], + "802e7bb0": ["BobombBuddyActionLoop"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["CannonTrapDoorOpeningLoop"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["func_802E70A8"], + "802e7fec": ["func_802E70DC"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["ButterflyStep"], + "802e9278": ["CalculateButterflyAngle"], + "802e9470": ["ButterflyRestingLoop"], + "802e94e4": ["ButterflyFollowMarioLoop"], + "802e9548": ["ButterflyReturnHomeLoop"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["HootFindNextFloor"], + "802e98c0": ["HootFloorBounce"], + "802e9a4c": ["HootFreeStep"], + "802e9cf4": ["PlayerSetHootYaw"], + "802e9d98": ["HootCarryStep"], + "802e9f60": ["HootSurfaceCollision"], + "802ea144": ["HootAscentLoop"], + "802ea258": ["HootActionLoop"], + "802ea3f0": ["HootTurnToHome"], + "802ea4ec": ["HootAwakeLoop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["BullyCheckMarioCollision"], + "802eb288": ["BullyChaseMarioLoop"], + "802eb3f0": ["BullyKnockbackLoop"], + "802eb510": ["BullyBackUpLoop"], + "802eb5c4": ["BullyBackUpCheck"], + "802eb630": ["PlayBullyStompingSound"], + "802eb744": ["BullyStep"], + "802eb7e0": ["BullySpawnCoin"], + "802eb8b0": ["BullyLavaDeath"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["BigBullySpawnMinion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["BigBullyWithMinionsLavaDeath"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["WaterRingCalcMarioDistInFront"], + "802ec030": ["WaterRingInit"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["CheckWaterRingCollection"], + "802ec3d0": ["SetWaterRingScale"], + "802ec4e0": ["WaterRingCollectedLoop"], + "802ec59c": ["JetStreamWaterRingNotCollectedLoop"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["Unknown802EB8A4"], + "802ec818": ["JetStreamRingSpawnerActiveLoop"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["MantaRayWaterRingNotCollectedLoop"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["CelebrationStarSpinAroundMarioLoop"], + "802ed28c": ["CelebrationStarFaceCameraLoop"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["MoneybagCheckMarioCollision"], + "802ee268": ["MoneybagJump"], + "802ee46c": ["MoneybagMoveAroundLoop"], + "802ee598": ["MoneybagReturnHomeLoop"], + "802ee728": ["MoneybagDisappearLoop"], + "802ee778": ["MoneybagDeathLoop"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["func_802EDA14"], + "802eea7c": ["func_802EDA6C"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["func_802EFB2C"], + "802f0bd4": ["func_802EFB84"], + "802f0c94": ["func_802EFC44"], + "802f0df0": ["func_802EFDA0"], + "802f0fa8": ["func_802EFF58"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["func_802F05DC"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["func_802F0904"], + "802f19c8": ["func_802F0978"], + "802f1a10": ["func_802F09C0"], + "802f1bb8": ["func_802F0B68"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["func_802F0D70"], + "802f1e5c": ["func_802F0E0C"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["func_802F0FE0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["func_802F1190"], + "802f2284": ["func_802F1234"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["func_802F1A50"], + "802f2b88": ["create_star"], + "802f2bd4": ["func_802F1B84"], + "802f2c24": ["func_802F1BD4"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["func_802F238C"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["func_802F2820"], + "802f39b4": ["func_802F2924"], + "802f3a30": ["bhvLllVolcanoFallingTrap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["func_802F2D40"], + "802f3ea8": ["func_802F2E18"], + "802f401c": ["func_802F2F8C"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["func_802F3328"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["func_802F3BD8"], + "802f4ce0": ["func_802F3C50"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["func_802F3F80"], + "802f5068": ["func_802F3FD8"], + "802f52c0": ["func_802F4230"], + "802f547c": ["func_802F43EC"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["func_802F4CE8"], + "802f5e44": ["func_802F4DB4"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["func_802F54F8"], + "802f665c": ["func_802F55CC"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["func_802F5E20"], + "802f7068": ["func_802F5FD8"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["func_802F6E8C"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["BehYoshiLoop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["Geo18_8030D93C"], + "8030d9ac": ["Geo18_8030D9AC"], + "8030da14": ["snufit_act_0"], + "8030db38": ["snufit_act_1"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_manager_loop"], + "80312370": ["coffin_act_0"], + "8031262c": ["coffin_act_1"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee0": ["func_80319E70"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L_U_8031C200"], + "8031c23c": ["L_U_8031C23C"], + "8031c298": ["L_U_8031C298"], + "8031c2dc": ["L_U_8031C2DC"], + "8031c328": ["L_U_8031C328"], + "8031c36c": ["L_U_8031C36C"], + "8031c3bc": ["L_U_8031C3BC"], + "8031c3e8": ["L_U_8031C3E8"], + "8031c454": ["L_U_8031C454"], + "8031c4a4": ["L_U_8031C4A4"], + "8031c5c8": ["L_U_8031C5C8"], + "8031c698": ["L_U_8031C698"], + "8031c6a0": ["L_U_8031C6A0"], + "8031cbe0": ["L_U_8031CBE0"], + "8031cbec": ["L_U_8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": [".", "osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["D_8032CE9C"], + "8032de4c": ["D_8032CEEC"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "803306dc": ["sCageUkikiPath"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["D_8032FCE8"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["D_8032FDAC"], + "80330d30": ["D_8032FDD0"], + "80330d54": ["D_8032FDF4"], + "80330d78": ["D_8032FE18"], + "80330d9c": ["sWindParticleHitbox"], + "80330dac": ["D_8032FE4C"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["hmcPaintings"], + "80331308": ["insideCastlePaintings"], + "80331344": ["ttmPaintings"], + "8033134c": ["paintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b10": ["D_80331A00"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["D_80331C00"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358d0": ["viMgrMainArgs"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["D_80334810"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["unknown"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338da0": ["D_80337BB0"], + "80338da8": ["D_80337BB8"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["D_80339F50"], + "8033b350": ["D_80339FE0"], + "8033b3b0": ["gBodyStates"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gBehCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361270": ["sGrabReleaseState"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["D_8035FFA0"], + "80361314": ["D_8035FFA4"], + "80361318": ["ripplingPainting"], + "8036131c": ["dddStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80364c60": ["viMgrThread"], + "80364e10": ["viMgrStack"], + "80365e10": ["__osViMesgQueue"], + "80365e28": ["viMgrMesgBuff"], + "80365e40": ["viEventViMesg"], + "80365e58": ["viEventCounterMesg"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["D_80365CE0"], + "8036708c": ["D_80365D1C"], + "80367090": ["D_80365D20"], + "80367091": ["_osCont_numControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["D_80365DAC"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": ["_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["RandomU16"], + "80383cb4": ["RandomFloat"], + "80383d1c": ["RandomSign"], + "80383d68": ["func_80383D68"], + "80385bf0": ["stub_80385BF0"], + "80385c00": ["cur_object_exec_behavior"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["spot_on_ground_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["water_waves_surface_geo"], + "17000168": ["water_waves_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleMario"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvWaterWaves"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvWallTinyStarParticleSpawn"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvPoundTinyStarParticleSpawn"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvPunchTinyTriangleSpawn"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvWaterMistSpawn"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvPoundWhitePuffs"], + "13000e3c": ["bhvGroundSand"], + "13000e58": ["bhvGroundSnow"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFlameMario"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvSnowLeafParticleSpawn"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFishGroup2"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMarioDustGenerator"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTornadoSandParticle"], + "13002650": ["bhvTornado"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSpecialTripleJumpSparkles"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDrops"], + "13002c7c": ["bhvWaterSurfaceWhiteWave"], + "13002cb0": ["bhvObjectBubbleRipples"], + "13002ce0": ["bhvSurfaceWaves"], + "13002d28": ["bhvWaterSurfaceWhiteWave2"], + "13002d50": ["bhvWavesGenerator"], + "13002d7c": ["bhvSurfaceWaveShrinking"], + "13002db0": ["bhvWaterType"], + "13002dc0": ["bhvWaveTrailOnSurface"], + "13002e04": ["bhvTinyWhiteWindParticle"], + "13002e20": ["bhvWindParticle"], + "13002e3c": ["bhvSnowmanWindBlowing"], + "13002e58": ["bhvWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvWarps60"], + "13002f64": ["bhvWarps64"], + "13002f68": ["bhvWarps68"], + "13002f6c": ["bhvWarps6C"], + "13002f70": ["bhvWarps70"], + "13002f74": ["bhvWarps74"], + "13002f78": ["bhvWarps78"], + "13002f7c": ["bhvWarps7C"], + "13002f80": ["bhvWarps80"], + "13002f84": ["bhvWarps84"], + "13002f88": ["bhvWarps88"], + "13002f8c": ["bhvWarps8C"], + "13002f90": ["bhvWarps90"], + "13002f94": ["bhvWarps94"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinManager"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 6": { - "80000000": "D_80000000", - "a4000000": "D_A4000000", - "a40004c0": "D_A40004C0", - "a4000774": "D_A4000774", - "a4001000": "D_A4001000", - "a4040010": "D_A4040010", - "a4080000": "D_A4080000", - "a4300000": "D_A4300000", - "a4300004": "D_A4300004", - "a4300008": "D_A4300008", - "a430000c": "D_A430000C", - "a4400010": "D_A4400010", - "a450000c": "D_A450000C", - "a4600000": "D_A4600000", - "a4600004": "D_A4600004", - "a460000c": "D_A460000C", - "a4600010": "D_A4600010", - "a4700000": "D_A4700000", - "a4700010": "D_A4700010", - "a4800018": "D_A4800018", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "EntryPoint", - "80246050": "handle_debug_key_sequences", - "80246170": "Unknown80246170", - "802461cc": "Dummy802461CC", - "802461dc": "Dummy802461DC", - "802461ec": "Dummy802461EC", - "802461fc": "setup_mesg_queues", - "802462e0": "AllocPool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "SendMessage", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "Main", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "func_80247D84", - "80247f08": "func_80247ED8", - "80247fdc": "func_80247FAC", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "func_80248C10", - "80248c58": "func_80248C28", - "80248ce8": "func_80248CB8", - "80248d78": "func_80248D48", - "80248dc0": "func_80248D90", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "func_802491FC", - "8024927c": "func_8024924C", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_paused", - "80249764": "set_play_mode", - "8024978c": "func_8024975C", - "802497b8": "func_80249788", - "8024982c": "nop_802497FC", - "8024983c": "func_8024980C", - "8024995c": "func_8024992C", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "func_8024A02C", - "8024a18c": "func_8024A094", - "8024a1d8": "func_8024A0E0", - "8024a374": "check_instant_warp", - "8024a584": "func_8024A48C", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "func_8024D664", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "func_8024FC94", - "8024ff04": "func_8024FD2C", - "80250098": "func_8024FEC0", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "nop_80254E3C", - "802550b0": "nop_80254E50", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "BehEndPeachLoop", - "802570dc": "BehEndToadLoop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "func_8025F0DC", - "8025f560": "func_8025F188", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "func_802604E0", - "80260aac": "func_802606DC", - "80260cb4": "act_idle", - "80260f94": "func_80260BC4", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "func_80261D70", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "func_80261F8C", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "func_80262574", - "80262bc4": "func_802627B8", - "80262c34": "func_80262828", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "func_80262CEC", - "802631f0": "func_80262DE4", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "func_80263378", - "80263898": "mario_execute_stationary_action", - "80263e60": "func_80263A50", - "80263ee4": "func_80263AD4", - "80264024": "func_80263C14", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "func_802652F0", - "80265b1c": "func_8026570C", - "80265d90": "func_80265980", - "80265df8": "func_802659E8", - "80266038": "func_80265C28", - "802661cc": "func_80265DBC", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "func_80267814", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "func_u_8026A090", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "func_8026CDFC", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_enfvx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhvToadMessage_loop", - "80276910": "bhvToadMessage_init", - "80276bb8": "bhvUnlockDoorStar_init", - "80276ccc": "bhvUnlockDoorStar_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "func_80278304", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "func_80278AD4", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "func_8027A220", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "func_8027A478", - "8027aa74": "func_8027A4C4", - "8027ab04": "clear_areas", - "8027ad74": "func_8027A7C4", - "8027ae44": "load_area", - "8027af48": "func_8027A998", - "8027afbc": "load_mario_area", - "8027b038": "func_8027AA88", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "dummy_802877D8", - "80287dd4": "dummy_802877EC", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "unused_8028C3AC", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "func_8029B964", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_8029CA50", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "Geo18_8029D890", - "8029d924": "Geo18_8029D924", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "func_8029D558", - "8029dda8": "apply_object_scale_to_matrix", - "8029de80": "func_8029D704", - "8029e1b0": "set_object_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "obj_rotate_yaw_toward", - "8029e694": "angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "set_object_parent_relative_pos", - "8029e914": "set_object_pos", - "8029e96c": "set_object_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "Unknown8029E330", - "8029eb04": "spawn_water_splash", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "obj_move_using_vel", - "8029f0c8": "copy_object_graph_y_offset", - "8029f0e0": "copy_object_pos_and_angle", - "8029f120": "copy_object_pos", - "8029f148": "copy_object_angle", - "8029f188": "func_8029EA0C", - "8029f1b0": "Unknown8029EA34", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "apply_scale_to_object_transform", - "8029f3a8": "copy_object_scale", - "8029f3d0": "scale_object_xyz", - "8029f404": "scale_object", - "8029f430": "obj_scale", - "8029f464": "SetObjAnimation", - "8029f4b4": "set_obj_animation_and_sound_state", - "8029f514": "func_8029ED98", - "8029f59c": "func_8029EE20", - "8029f600": "obj_enable_rendering_and_become_tangible", - "8029f620": "obj_enable_rendering", - "8029f644": "obj_disable_rendering_and_become_intangible", - "8029f66c": "obj_disable_rendering", - "8029f694": "obj_unhide", - "8029f6bc": "obj_hide", - "8029f6e0": "obj_set_pos_relative", - "8029f7d8": "obj_set_pos_relative_to_parent", - "8029f820": "obj_enable_rendering_2", - "8029f848": "obj_unused_init_on_floor", - "8029f8ec": "obj_set_facing_to_move_angles", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "obj_nearest_object_with_behavior", - "8029f998": "obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "obj_find_nearby_held_actor", - "8029fdb4": "obj_change_action", - "8029fe00": "func_8029F684", - "8029fe6c": "func_8029F6F0", - "8029fea4": "func_8029F728", - "8029ff04": "func_8029F788", - "8029ffa4": "func_8029F828", - "802a0008": "obj_check_anim_frame", - "802a0050": "obj_check_anim_frame_in_range", - "802a00ac": "Unknown8029F930", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "func_8029FA1C", - "802a01d8": "func_8029FA5C", - "802a0380": "obj_get_thrown_or_placed", - "802a0474": "obj_get_dropped", - "802a04c0": "obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "obj_clear_interact_status_flag", - "802a0568": "mark_object_for_deletion", - "802a057c": "obj_disable", - "802a05b4": "obj_become_intangible", - "802a05d4": "obj_become_tangible", - "802a05f0": "make_object_tangible", - "802a0604": "obj_update_floor_height", - "802a064c": "obj_update_floor_height_and_get_floor", - "802a079c": "obj_apply_drag_xz", - "802a0e68": "obj_move_y", - "802a113c": "obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "obj_move_xz_using_fvel_and_yaw", - "802a12a4": "obj_move_y_with_terminal_vel", - "802a1308": "obj_compute_vel_xz", - "802a1370": "func_802A0BF4", - "802a1424": "are_objects_collided", - "802a148c": "obj_set_behavior", - "802a14c4": "set_object_behavior", - "802a14fc": "obj_has_behavior", - "802a1554": "object_has_behavior", - "802a15ac": "obj_lateral_dist_from_mario_to_home", - "802a1634": "obj_lateral_dist_to_home", - "802a16ac": "obj_outside_home_square", - "802a1774": "obj_outside_home_rectangle", - "802a184c": "obj_set_pos_to_home", - "802a188c": "obj_set_pos_to_home_and_stop", - "802a18dc": "obj_shake_y", - "802a1930": "obj_start_cam_event", - "802a1960": "Unknown802A11E4", - "802a19ac": "obj_set_billboard", - "802a19c8": "obj_set_hitbox_radius_and_height", - "802a19f0": "obj_set_hurtbox_radius_and_height", - "802a1b34": "spawn_object_loot_blue_coins", - "802a1b8c": "spawn_object_loot_yellow_coins", - "802a1bdc": "obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "obj_abs_y_dist_to_home", - "802a1cc4": "Unknown802A1548", - "802a1f3c": "obj_resolve_wall_collisions", - "802a2320": "obj_update_floor_and_walls", - "802a2348": "obj_move_standard", - "802a25b4": "obj_move_using_vel_and_gravity", - "802a2644": "obj_move_using_fvel_and_gravity", - "802a2674": "set_object_pos_relative", - "802a2748": "obj_angle_to_home", - "802a27b0": "func_802A2008", - "802a2804": "translate_object_local", - "802a2930": "build_object_transform_from_pos_and_angle", - "802a2a18": "func_802A2270", - "802a2a84": "build_object_transform_relative_to_parent", - "802a2b28": "Unknown802A2380", - "802a2b6c": "obj_rotate_move_angle_using_vel", - "802a2bc4": "obj_rotate_face_angle_using_vel", - "802a2c1c": "obj_set_face_angle_to_move_angle", - "802a2c5c": "obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "scale_object_random", - "802a2fc0": "translate_object_xyz_random", - "802a308c": "translate_object_xz_random", - "802a31e0": "func_802A2A38", - "802a3268": "obj_reflect_move_angle_off_wall", - "802a32ac": "obj_spawn_particles", - "802a34a4": "set_object_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "obj_wait_then_blink", - "802a3754": "obj_is_mario_ground_pounding_platform", - "802a37ac": "func_802A3004", - "802a37dc": "func_802A3034", - "802a3818": "obj_push_mario_away", - "802a390c": "obj_push_mario_away_from_cylinder", - "802a399c": "BehDustSmokeLoop", - "802a3a4c": "func_802A32A4", - "802a3a88": "func_802A32E0", - "802a3b28": "nop_802A3380", - "802a3b40": "func_802A3398", - "802a3c18": "func_802A3470", - "802a3cec": "nop_802A3544", - "802a3cfc": "obj_is_mario_on_platform", - "802a3d40": "obj_shake_y_until", - "802a3dd4": "func_802A362C", - "802a3e30": "obj_call_action_function", - "802a3ef8": "Unknown802A3750", - "802a3f24": "func_802A377C", - "802a3f48": "obj_mario_far_away", - "802a404c": "obj_is_mario_moving_fast_or_in_air", - "802a40b8": "item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "obj_enable_rendering_if_mario_in_room", - "802a4360": "obj_set_hitbox_and_die_if_attacked", - "802a4440": "func_802A3C98", - "802a44f4": "set_object_collision_data", - "802a452c": "obj_if_hit_wall_bounce_away", - "802a4564": "obj_hide_if_mario_far_away_y", - "802a45e4": "Geo18_802A45E4", - "802a462c": "Unknown802A3E84", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "func_802A3FF8", - "802a48bc": "obj_is_mario_in_range_and_ready_to_speak", - "802a4960": "obj_update_dialog", - "802a4be4": "obj_update_dialog_with_cutscene", - "802a4f04": "obj_has_model", - "802a4f58": "obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "ShakeScreen", - "802a513c": "attack_collided_non_mario_object", - "802a51ac": "obj_was_attacked_or_ground_pounded", - "802a5228": "copy_object_behavior_params", - "802a5248": "func_802A4A70", - "802a5288": "func_802A4AB0", - "802a52c4": "func_802A4AEC", - "802a52f8": "obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "obj_check_interacted", - "802a5524": "obj_spawn_loot_blue_coin", - "802a5588": "obj_spawn_star_at_y_offset", - "802a5620": "func_802A4DB0", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "ActionMrIParticle0", - "802a5a44": "ActionMrIParticle1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "func_802A525C", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "ActionMrI3", - "802a6518": "ActionMrI2", - "802a68a0": "ActionMrI1", - "802a6ad8": "ActionMrI0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "ActionActivateCapSwitch0", - "802a7020": "ActionActivateCapSwitch1", - "802a708c": "ActionActivateCapSwitch2", - "802a7160": "ActionActivateCapSwitch3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "Geo18_802A719C", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "ActionKingBobomb0", - "802a7384": "func_802A6AF8", - "802a73d8": "ActionKingBobomb2", - "802a7598": "ActionKingBobomb3", - "802a7804": "ActionKingBobomb1", - "802a78d8": "ActionKingBobomb6", - "802a7a60": "ActionKingBobomb7", - "802a7b1c": "ActionKingBobomb8", - "802a7b5c": "ActionKingBobomb4", - "802a7d14": "ActionKingBobomb5", - "802a7fbc": "func_802A7748", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "Unknown802A7E48", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "func_802A81C4", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "ActionOpenedCannon0", - "802a8f40": "ActionOpenedCannon4", - "802a9114": "ActionOpenedCannon6", - "802a92fc": "ActionOpenedCannon5", - "802a93f8": "ActionOpenedCannon1", - "802a9440": "ActionOpenedCannon2", - "802a9460": "ActionOpenedCannon3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "func_802A8D18", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "Unknown802A8EC8", - "802a98c4": "func_802A9050", - "802a9994": "ActionChuckya0", - "802a9d08": "ActionChuckya1", - "802a9f54": "ActionChuckya3", - "802a9fc8": "ActionChuckya2", - "802aa02c": "func_802A97B8", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "func_802A9A0C", - "802aa3c8": "func_802A9B54", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "func_802AA0D4", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "BehFadingWarpLoop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "func_802AA618", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "func_802AA788", - "802ab060": "func_802AA7EC", - "802ab158": "func_802AA8E4", - "802ab18c": "func_802AA918", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "func_802AB364", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "ActionCoinInsideBoo1", - "802ac15c": "ActionCoinInsideBoo0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "func_802AC070", - "802ac958": "func_802AC0B8", - "802ac9d0": "func_802AC130", - "802aca6c": "func_802AC1CC", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "ActionGrindelThwomp4", - "802ad10c": "ActionGrindelThwomp2", - "802ad1a4": "ActionGrindelThwomp3", - "802ad238": "ActionGrindelThwomp1", - "802ad2d0": "ActionGrindelThwomp0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "ActionTumblingBridge1", - "802ad76c": "ActionTumblingBridge2", - "802ad7f4": "ActionTumblingBridge3", - "802ad828": "ActionTumblingBridge0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "func_802AD01C", - "802ad8f0": "ActionElevator0", - "802ada4c": "ActionElevator1", - "802adb88": "ActionElevator2", - "802adce4": "ActionElevator4", - "802add70": "ActionElevator3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "func_802ADA94", - "802ae360": "bhv_unused_0e40_init", - "802ae394": "Unknown802ADAF4", - "802ae45c": "func_802ADBBC", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "func_802ADC20", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "func_802AF9A4", - "802b039c": "func_802AFAFC", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "func_802B02FC", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "func_802B0C54", - "802b15e8": "bhv_pushable_loop", - "802b1714": "func_802B0E74", - "802b17f4": "func_802B0F54", - "802b19d8": "func_802B1138", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "Geo18_802B1BB0", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "ActionHeaveHo1", - "802b1e6c": "ActionHeaveHo2", - "802b1ff4": "ActionHeaveHo3", - "802b20a0": "ActionHeaveHo0", - "802b2154": "func_802B18B4", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "ActionJumpingBox0", - "802b27d8": "ActionJumpingBox1", - "802b2824": "func_802B1F84", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "func_802B2328", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "func_802B2894", - "802b3250": "func_802B29B0", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "ActionBulletBill0", - "802b38b8": "ActionBulletBill1", - "802b394c": "ActionBulletBill2", - "802b3b08": "ActionBulletBill3", - "802b3b24": "ActionBulletBill4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "ActionBowserTailAnchor0", - "802b3cdc": "ActionBowserTailAnchor1", - "802b3d10": "ActionBowserTailAnchor2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "func_802B38B4", - "802b41fc": "func_802B392C", - "802b4288": "func_802B39B8", - "802b4300": "func_802B3A30", - "802b4368": "func_802B3A98", - "802b43dc": "func_802B3B0C", - "802b4478": "ActionBowser5", - "802b44bc": "ActionBowser6", - "802b45f4": "func_802B3D24", - "802b473c": "func_802B3E44", - "802b48d4": "func_802B3FDC", - "802b4a1c": "func_802B4124", - "802b4a3c": "func_802B4144", - "802b4af4": "func_u_802B4AF4", - "802b4bac": "ActionBowser18", - "802b4be8": "ActionBowser0", - "802b4ca4": "ActionBowser15", - "802b4d14": "ActionBowser14", - "802b4f00": "ActionBowser16", - "802b5104": "ActionBowser8", - "802b5218": "ActionBowser12", - "802b53f4": "func_802B4A44", - "802b5444": "func_802B4A94", - "802b5554": "func_802B4BA4", - "802b55cc": "ActionBowser13", - "802b5798": "ActionBowser17", - "802b58bc": "ActionBowser10", - "802b59cc": "ActionBowser9", - "802b5aec": "func_802B5108", - "802b5c00": "ActionBowser11", - "802b5c40": "ActionBowser7", - "802b5f6c": "func_802B5588", - "802b5fec": "ActionBowser1", - "802b611c": "func_802B5738", - "802b6190": "ActionBowser2", - "802b6568": "ActionBowser3", - "802b65d0": "func_802B5C78", - "802b6670": "func_802B5D18", - "802b6730": "func_802B5DD8", - "802b67d4": "func_802B5E7C", - "802b6878": "func_802B5F20", - "802b6a10": "func_802B60B8", - "802b6a78": "func_802B6120", - "802b6bac": "func_802B6254", - "802b6cf0": "ActionBowser4", - "802b6e40": "func_802B64E8", - "802b6ee0": "ActionBowser19", - "802b711c": "func_802B67C4", - "802b71e4": "func_802B688C", - "802b72d4": "func_802B697C", - "802b7418": "func_802B6AC0", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "Geo18_802B798C", - "802b7a20": "func_802B70C8", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "Geo18_802B7D44", - "802b7e68": "ActionFallingBowserPlatform0", - "802b7ef0": "ActionFallingBowserPlatform1", - "802b8024": "ActionFallingBowserPlatform2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "func_802B7A58", - "802b8434": "func_802B7ADC", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "func_802B7CFC", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "func_802B8F7C", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "func_802B9120", - "802b9af8": "func_802B91A0", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "func_802B95A4", - "802ba13c": "func_802B97E4", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "Geo18_802BA2B0", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "unused_Geo18_8029D890", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "func_802BB414", - "802bbfd8": "func_802BB680", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "func_802BB9F0", - "802bc4f4": "ActionRotatingCwFireBars0", - "802bc538": "ActionRotatingCwFireBars1", - "802bc590": "ActionRotatingCwFireBars2", - "802bc5fc": "ActionRotatingCwFireBars3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "func_802BBFDC", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "func_802BC390", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "func_802BCA8C", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "func_802BCCD4", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "func_802BCF78", - "802bd91c": "func_802BCFC4", - "802bdb04": "ActionToxBox4", - "802bdb3c": "ActionToxBox5", - "802bdb74": "ActionToxBox6", - "802bdbac": "ActionToxBox7", - "802bdbe4": "ActionToxBox1", - "802bdc7c": "ActionToxBox2", - "802bdcc8": "ActionToxBox3", - "802bdd14": "ActionToxBox0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "func_802BE2E8", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "ActionTuxiesMother2", - "802bef8c": "ActionTuxiesMother1", - "802bf1d8": "ActionTuxiesMother0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "func_802BEA58", - "802bf474": "ActionSmallPenguin2", - "802bf57c": "ActionSmallPenguin1", - "802bf648": "ActionSmallPenguin3", - "802bf6e4": "ActionSmallPenguin4", - "802bf760": "ActionSmallPenguin0", - "802bf90c": "ActionSmallPenguin5", - "802bfa14": "func_802BF048", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "ActionFish0", - "802bfeb8": "ActionFish1", - "802bff20": "ActionFish2", - "802bff3c": "bhv_fish_loop", - "802bff68": "func_802BF59C", - "802c00b4": "ActionFishGroup1", - "802c0348": "ActionFishGroup2", - "802c06a8": "ActionFishGroup0", - "802c0768": "bhv_fish_group_2_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "ActionBirdChirpChirp0", - "802c0b50": "ActionBirdChirpChirp1", - "802c0ba4": "ActionBirdChirpChirp2", - "802c0bc4": "ActionBirdChirpChirp3", - "802c0be0": "bhv_bird_chirp_chirp_loop", - "802c0c0c": "func_802C0240", - "802c0cd4": "ActionCheepCheep0", - "802c0d44": "ActionCheepCheep1", - "802c0f90": "ActionCheepCheep2", - "802c1204": "bhv_cheep_cheep_loop", - "802c12c0": "bhv_rotatin_exclamation_box_loop", - "802c1308": "ActionExclamationBox0", - "802c13ec": "ActionExclamationBox1", - "802c14b0": "ActionExclamationBox2", - "802c15b8": "ActionExclamationBox3", - "802c17bc": "func_802C0DF0", - "802c18d0": "ActionExclamationBox4", - "802c1988": "ActionExclamationBox5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "BehClimbDetectLoop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "func_802C5A64", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "func_802C61CC", - "802c6d6c": "ActionWhomp0", - "802c6ec8": "ActionWhomp7", - "802c6fb0": "ActionWhomp1", - "802c710c": "ActionWhomp2", - "802c7254": "ActionWhomp3", - "802c72b4": "ActionWhomp4", - "802c7380": "ActionWhomp5", - "802c7428": "func_802C6954", - "802c75fc": "func_802C6B28", - "802c76d4": "ActionWhomp6", - "802c7858": "ActionWhomp8", - "802c7998": "ActionWhomp9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_loop", - "802c7b14": "bhv_water_drops_loop", - "802c7cac": "bhv_surface_waves_loop", - "802c7d40": "bhv_water_surface_white_wave_init", - "802c7d90": "bhv_object_bubble_ripples_init", - "802c7dfc": "bhv_surface_wave_shrinking_init", - "802c7e5c": "bhv_wave_trail_loop", - "802c7f98": "bhv_white_wind_particle_loop", - "802c81b4": "func_802C76E0", - "802c834c": "bhv_snowman_wind_blowing_loop", - "802c85a4": "func_802C7AD0", - "802c863c": "bhv_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "Unknown802C8460", - "802c8fe4": "func_802C8504", - "802c91ec": "func_802C870C", - "802c9388": "func_802C88A8", - "802c93f8": "func_802C8918", - "802c94ac": "func_802C89CC", - "802c95b4": "func_802C8AD4", - "802c9630": "func_802C8B50", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "PlaySound", - "802ca1e0": "PlaySound2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "Stub802C9890", - "802ca380": "Stub802C98A0", - "802ca390": "Stub802C98B0", - "802ca3a0": "Stub802C98C0", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_802CA5D0", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "Unknown802CAA84", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stopAllRippleExcept", - "802d2a74": "find_mario_y_position_on_painting", - "802d2b08": "find_mario_z_position_on_painting", - "802d2b84": "painting_find_vertical_ripple_location", - "802d2c40": "find_part_of_painting_near_mario", - "802d2d80": "find_mario_x_position_on_painting", - "802d2dfc": "painting_find_horizontal_ripple_location", - "802d2eb8": "painting_set_ripple_type", - "802d2ffc": "vertical_proximity_ripple_painting_ripple", - "802d319c": "vertical_proximity_ripple_painting_ripple_if_mario_enters", - "802d327c": "vertical_continuous_ripple_painting_ripple", - "802d341c": "vertical_continuous_ripple_painting_ripple_if_mario_enters", - "802d34fc": "horizontal_proximity_ripple_painting_ripple", - "802d36ac": "horizontal_proximity_ripple_painting_ripple_if_mario_enters", - "802d379c": "horizontal_continuous_ripple_painting_ripple", - "802d393c": "horizontal_continuous_ripple_painting_ripple_if_mario_enters", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_status", - "802d3cec": "painting_calculate_point_ripple", - "802d3e6c": "painting_conditionally_calculate_point_ripple", - "802d3ee4": "Print1", - "802d404c": "Print2", - "802d43f8": "small_float_to_byte", - "802d44bc": "func_802D39DC", - "802d47d0": "func_802D3CF0", - "802d4edc": "func_802D43FC", - "802d50dc": "func_802D45FC", - "802d5354": "func_802D4874", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "update_ddd_painting", - "802d58e4": "func_802D4E04", - "802d593c": "display_painting", - "802d59a8": "vertical_painting_ripple", - "802d5aa0": "horizontal_painting_ripple", - "802d5b98": "Geo18_802D5B98", - "802d5d0c": "Geo18_802D5D0C", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "CoinStep", - "802e5e6c": "MovingCoinFlickerLoop", - "802e5ea4": "CoinCollected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "func_802E540C", - "802e63ec": "func_802E54DC", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "func_802E5B7C", - "802e6af8": "BobombExplodeLoop", - "802e6bd4": "CheckBobombInteractions", - "802e6cf0": "BobombPatrolLoop", - "802e6dc8": "BobombChaseMarioLoop", - "802e6e84": "BobombLaunchedLoop", - "802e6ed8": "GenericBobombFreeLoop", - "802e7020": "StationaryBobombFreeLoop", - "802e7134": "BobombFreeLoop", - "802e7180": "BobombHeldLoop", - "802e7220": "BobombDroppedLoop", - "802e7280": "BobombThrownLoop", - "802e7324": "ObjRandomBlink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "BobombBuddyIdleLoop", - "802e7814": "BobombBuddyCannonLoop", - "802e79dc": "BobombBuddyTalkLoop", - "802e7b00": "BobombBuddyTurnToTalkLoop", - "802e7bb0": "BobombBuddyActionLoop", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "CannonTrapDoorOpeningLoop", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "func_802E70A8", - "802e7fec": "func_802E70DC", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "ButterflyStep", - "802e9278": "CalculateButterflyAngle", - "802e9470": "ButterflyRestingLoop", - "802e94e4": "ButterflyFollowMarioLoop", - "802e9548": "ButterflyReturnHomeLoop", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "HootFindNextFloor", - "802e98c0": "HootFloorBounce", - "802e9a4c": "HootFreeStep", - "802e9cf4": "PlayerSetHootYaw", - "802e9d98": "HootCarryStep", - "802e9f60": "HootSurfaceCollision", - "802ea144": "HootAscentLoop", - "802ea258": "HootActionLoop", - "802ea3f0": "HootTurnToHome", - "802ea4ec": "HootAwakeLoop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "BullyCheckMarioCollision", - "802eb288": "BullyChaseMarioLoop", - "802eb3f0": "BullyKnockbackLoop", - "802eb510": "BullyBackUpLoop", - "802eb5c4": "BullyBackUpCheck", - "802eb630": "PlayBullyStompingSound", - "802eb744": "BullyStep", - "802eb7e0": "BullySpawnCoin", - "802eb8b0": "BullyLavaDeath", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "BigBullySpawnMinion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "BigBullyWithMinionsLavaDeath", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "WaterRingCalcMarioDistInFront", - "802ec030": "WaterRingInit", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "CheckWaterRingCollection", - "802ec3d0": "SetWaterRingScale", - "802ec4e0": "WaterRingCollectedLoop", - "802ec59c": "JetStreamWaterRingNotCollectedLoop", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "Unknown802EB8A4", - "802ec818": "JetStreamRingSpawnerActiveLoop", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "MantaRayWaterRingNotCollectedLoop", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "CelebrationStarSpinAroundMarioLoop", - "802ed28c": "CelebrationStarFaceCameraLoop", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "MoneybagCheckMarioCollision", - "802ee268": "MoneybagJump", - "802ee46c": "MoneybagMoveAroundLoop", - "802ee598": "MoneybagReturnHomeLoop", - "802ee728": "MoneybagDisappearLoop", - "802ee778": "MoneybagDeathLoop", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "func_802EDA14", - "802eea7c": "func_802EDA6C", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "func_802EFB2C", - "802f0bd4": "func_802EFB84", - "802f0c94": "func_802EFC44", - "802f0df0": "func_802EFDA0", - "802f0fa8": "func_802EFF58", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "func_802F05DC", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "func_802F0904", - "802f19c8": "func_802F0978", - "802f1a10": "func_802F09C0", - "802f1bb8": "func_802F0B68", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "func_802F0D70", - "802f1e5c": "func_802F0E0C", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "func_802F0FE0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "func_802F1190", - "802f2284": "func_802F1234", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "func_802F1A50", - "802f2b88": "create_star", - "802f2bd4": "func_802F1B84", - "802f2c24": "func_802F1BD4", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "func_802F238C", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "func_802F2820", - "802f39b4": "func_802F2924", - "802f3a30": "bhvLllVolcanoFallingTrap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "func_802F2D40", - "802f3ea8": "func_802F2E18", - "802f401c": "func_802F2F8C", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "func_802F3328", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "func_802F3BD8", - "802f4ce0": "func_802F3C50", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "func_802F3F80", - "802f5068": "func_802F3FD8", - "802f52c0": "func_802F4230", - "802f547c": "func_802F43EC", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "func_802F4CE8", - "802f5e44": "func_802F4DB4", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "func_802F54F8", - "802f665c": "func_802F55CC", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "func_802F5E20", - "802f7068": "func_802F5FD8", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "func_802F6E8C", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "BehYoshiLoop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "func_80306ED4", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "Geo18_8030D93C", - "8030d9ac": "Geo18_8030D9AC", - "8030da14": "snufit_act_0", - "8030db38": "snufit_act_1", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee0": "func_80319E70", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L_U_8031C200", - "8031c23c": "L_U_8031C23C", - "8031c298": "L_U_8031C298", - "8031c2dc": "L_U_8031C2DC", - "8031c328": "L_U_8031C328", - "8031c36c": "L_U_8031C36C", - "8031c3bc": "L_U_8031C3BC", - "8031c3e8": "L_U_8031C3E8", - "8031c454": "L_U_8031C454", - "8031c4a4": "L_U_8031C4A4", - "8031c5c8": "L_U_8031C5C8", - "8031c698": "L_U_8031C698", - "8031c6a0": "L_U_8031C6A0", - "8031cbe0": "L_U_8031CBE0", - "8031cbec": "L_U_8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e578": "sequence_player_fade_out_internal", - "8031e5c0": "func_8031D690", - "8031e60c": "func_8031D6E4", - "8031e6a4": "func_8031D7B0", - "8031e710": "func_8031D838", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031eb30": "process_sound_request", - "8031edec": "process_all_sound_requests", - "8031ee70": "func_8031DFE8", - "8031ef6c": "func_8031E0E4", - "8031eff4": "func_8031E16C", - "8031f810": "get_sound_pan", - "8031f96c": "get_sound_dynamics", - "8031fb20": "get_sound_freq_scale", - "8031fbe8": "get_sound_reverb", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "803217a8": "disable_all_sequence_players", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "D_8032CE9C", - "8032de4c": "D_8032CEEC", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "803306dc": "sCageUkikiPath", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "D_8032FCE8", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "D_8032FDAC", - "80330d30": "D_8032FDD0", - "80330d54": "D_8032FDF4", - "80330d78": "D_8032FE18", - "80330d9c": "sWindParticleHitbox", - "80330dac": "D_8032FE4C", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "hmcPaintings", - "80331308": "insideCastlePaintings", - "80331344": "ttmPaintings", - "8033134c": "paintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b10": "D_80331A00", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "D_80334810", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "unknown", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338da0": "D_80337BB0", - "80338da8": "D_80337BB8", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "D_80339F50", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gBehCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361270": "sGrabReleaseState", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "D_8035FFA0", - "80361314": "D_8035FFA4", - "80361318": "ripplingPainting", - "8036131c": "dddStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "D_80365CE0", - "8036708c": "D_80365D1C", - "80367090": "D_80365D20", - "80367091": "_osCont_numControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "__osViIntrCount", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "RandomU16", - "80383cb4": "RandomFloat", - "80383d1c": "RandomSign", - "80383d68": "func_80383D68", - "80385bf0": "stub_80385BF0", - "80385c00": "cur_object_exec_behavior", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "spot_on_ground_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "water_waves_surface_geo", - "17000168": "water_waves_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleMario", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvWaterWaves", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvWallTinyStarParticleSpawn", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvPoundTinyStarParticleSpawn", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvPunchTinyTriangleSpawn", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvWaterMistSpawn", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvPoundWhitePuffs", - "13000e3c": "bhvGroundSand", - "13000e58": "bhvGroundSnow", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFlameMario", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvSnowLeafParticleSpawn", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFishGroup2", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMarioDustGenerator", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSpecialTripleJumpSparkles", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDrops", - "13002c7c": "bhvWaterSurfaceWhiteWave", - "13002cb0": "bhvObjectBubbleRipples", - "13002ce0": "bhvSurfaceWaves", - "13002d28": "bhvWaterSurfaceWhiteWave2", - "13002d50": "bhvWavesGenerator", - "13002d7c": "bhvSurfaceWaveShrinking", - "13002db0": "bhvWaterType", - "13002dc0": "bhvWaveTrailOnSurface", - "13002e04": "bhvTinyWhiteWindParticle", - "13002e20": "bhvWindParticle", - "13002e3c": "bhvSnowmanWindBlowing", - "13002e58": "bhvWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvWarps60", - "13002f64": "bhvWarps64", - "13002f68": "bhvWarps68", - "13002f6c": "bhvWarps6C", - "13002f70": "bhvWarps70", - "13002f74": "bhvWarps74", - "13002f78": "bhvWarps78", - "13002f7c": "bhvWarps7C", - "13002f80": "bhvWarps80", - "13002f84": "bhvWarps84", - "13002f88": "bhvWarps88", - "13002f8c": "bhvWarps8C", - "13002f90": "bhvWarps90", - "13002f94": "bhvWarps94", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000000": ["D_80000000"], + "a4000000": ["D_A4000000"], + "a40004c0": ["D_A40004C0"], + "a4000774": ["D_A4000774"], + "a4001000": ["D_A4001000"], + "a4040010": ["D_A4040010"], + "a4080000": ["D_A4080000"], + "a4300000": ["D_A4300000"], + "a4300004": ["D_A4300004"], + "a4300008": ["D_A4300008"], + "a430000c": ["D_A430000C"], + "a4400010": ["D_A4400010"], + "a450000c": ["D_A450000C"], + "a4600000": ["D_A4600000"], + "a4600004": ["D_A4600004"], + "a460000c": ["D_A460000C"], + "a4600010": ["D_A4600010"], + "a4700000": ["D_A4700000"], + "a4700010": ["D_A4700010"], + "a4800018": ["D_A4800018"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "EntryPoint"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["Unknown80246170"], + "802461cc": ["Dummy802461CC"], + "802461dc": ["Dummy802461DC"], + "802461ec": ["Dummy802461EC"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["AllocPool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["SendMessage"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["Main"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["func_80247D84"], + "80247f08": ["func_80247ED8"], + "80247fdc": ["func_80247FAC"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["func_80248C10"], + "80248c58": ["func_80248C28"], + "80248ce8": ["func_80248CB8"], + "80248d78": ["func_80248D48"], + "80248dc0": ["func_80248D90"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["func_802491FC"], + "8024927c": ["func_8024924C"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_paused"], + "80249764": ["set_play_mode"], + "8024978c": ["func_8024975C"], + "802497b8": ["func_80249788"], + "8024982c": ["nop_802497FC"], + "8024983c": ["func_8024980C"], + "8024995c": ["func_8024992C"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["func_8024A02C"], + "8024a18c": ["func_8024A094"], + "8024a1d8": ["func_8024A0E0"], + "8024a374": ["check_instant_warp"], + "8024a584": ["func_8024A48C"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["func_8024D664"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["func_8024FC94"], + "8024ff04": ["func_8024FD2C"], + "80250098": ["func_8024FEC0"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["nop_80254E3C"], + "802550b0": ["nop_80254E50"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["BehEndPeachLoop"], + "802570dc": ["BehEndToadLoop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["func_8025F0DC"], + "8025f560": ["func_8025F188"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["func_802604E0"], + "80260aac": ["func_802606DC"], + "80260cb4": ["act_idle"], + "80260f94": ["func_80260BC4"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["func_80261D70"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["func_80261F8C"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["func_80262574"], + "80262bc4": ["func_802627B8"], + "80262c34": ["func_80262828"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["func_80262CEC"], + "802631f0": ["func_80262DE4"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["func_80263378"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["func_80263A50"], + "80263ee4": ["func_80263AD4"], + "80264024": ["func_80263C14"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["func_802652F0"], + "80265b1c": ["func_8026570C"], + "80265d90": ["func_80265980"], + "80265df8": ["func_802659E8"], + "80266038": ["func_80265C28"], + "802661cc": ["func_80265DBC"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["func_80267814"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["func_u_8026A090"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["func_8026CDFC"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_enfvx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhvToadMessage_loop"], + "80276910": ["bhvToadMessage_init"], + "80276bb8": ["bhvUnlockDoorStar_init"], + "80276ccc": ["bhvUnlockDoorStar_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["func_80278304"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["func_80278AD4"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["func_8027A220"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["func_8027A478"], + "8027aa74": ["func_8027A4C4"], + "8027ab04": ["clear_areas"], + "8027ad74": ["func_8027A7C4"], + "8027ae44": ["load_area"], + "8027af48": ["func_8027A998"], + "8027afbc": ["load_mario_area"], + "8027b038": ["func_8027AA88"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["dummy_802877D8"], + "80287dd4": ["dummy_802877EC"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["unused_8028C3AC"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["func_8029B964"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_8029CA50"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["Geo18_8029D890"], + "8029d924": ["Geo18_8029D924"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["func_8029D558"], + "8029dda8": ["apply_object_scale_to_matrix"], + "8029de80": ["func_8029D704"], + "8029e1b0": ["set_object_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["obj_rotate_yaw_toward"], + "8029e694": ["angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["set_object_parent_relative_pos"], + "8029e914": ["set_object_pos"], + "8029e96c": ["set_object_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["Unknown8029E330"], + "8029eb04": ["spawn_water_splash"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["obj_move_using_vel"], + "8029f0c8": ["copy_object_graph_y_offset"], + "8029f0e0": ["copy_object_pos_and_angle"], + "8029f120": ["copy_object_pos"], + "8029f148": ["copy_object_angle"], + "8029f188": ["func_8029EA0C"], + "8029f1b0": ["Unknown8029EA34"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["apply_scale_to_object_transform"], + "8029f3a8": ["copy_object_scale"], + "8029f3d0": ["scale_object_xyz"], + "8029f404": ["scale_object"], + "8029f430": ["obj_scale"], + "8029f464": ["SetObjAnimation"], + "8029f4b4": ["set_obj_animation_and_sound_state"], + "8029f514": ["func_8029ED98"], + "8029f59c": ["func_8029EE20"], + "8029f600": ["obj_enable_rendering_and_become_tangible"], + "8029f620": ["obj_enable_rendering"], + "8029f644": ["obj_disable_rendering_and_become_intangible"], + "8029f66c": ["obj_disable_rendering"], + "8029f694": ["obj_unhide"], + "8029f6bc": ["obj_hide"], + "8029f6e0": ["obj_set_pos_relative"], + "8029f7d8": ["obj_set_pos_relative_to_parent"], + "8029f820": ["obj_enable_rendering_2"], + "8029f848": ["obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_facing_to_move_angles"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["obj_nearest_object_with_behavior"], + "8029f998": ["obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["obj_find_nearby_held_actor"], + "8029fdb4": ["obj_change_action"], + "8029fe00": ["func_8029F684"], + "8029fe6c": ["func_8029F6F0"], + "8029fea4": ["func_8029F728"], + "8029ff04": ["func_8029F788"], + "8029ffa4": ["func_8029F828"], + "802a0008": ["obj_check_anim_frame"], + "802a0050": ["obj_check_anim_frame_in_range"], + "802a00ac": ["Unknown8029F930"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["func_8029FA1C"], + "802a01d8": ["func_8029FA5C"], + "802a0380": ["obj_get_thrown_or_placed"], + "802a0474": ["obj_get_dropped"], + "802a04c0": ["obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["obj_clear_interact_status_flag"], + "802a0568": ["mark_object_for_deletion"], + "802a057c": ["obj_disable"], + "802a05b4": ["obj_become_intangible"], + "802a05d4": ["obj_become_tangible"], + "802a05f0": ["make_object_tangible"], + "802a0604": ["obj_update_floor_height"], + "802a064c": ["obj_update_floor_height_and_get_floor"], + "802a079c": ["obj_apply_drag_xz"], + "802a0e68": ["obj_move_y"], + "802a113c": ["obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["obj_move_y_with_terminal_vel"], + "802a1308": ["obj_compute_vel_xz"], + "802a1370": ["func_802A0BF4"], + "802a1424": ["are_objects_collided"], + "802a148c": ["obj_set_behavior"], + "802a14c4": ["set_object_behavior"], + "802a14fc": ["obj_has_behavior"], + "802a1554": ["object_has_behavior"], + "802a15ac": ["obj_lateral_dist_from_mario_to_home"], + "802a1634": ["obj_lateral_dist_to_home"], + "802a16ac": ["obj_outside_home_square"], + "802a1774": ["obj_outside_home_rectangle"], + "802a184c": ["obj_set_pos_to_home"], + "802a188c": ["obj_set_pos_to_home_and_stop"], + "802a18dc": ["obj_shake_y"], + "802a1930": ["obj_start_cam_event"], + "802a1960": ["Unknown802A11E4"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["obj_set_hitbox_radius_and_height"], + "802a19f0": ["obj_set_hurtbox_radius_and_height"], + "802a1b34": ["spawn_object_loot_blue_coins"], + "802a1b8c": ["spawn_object_loot_yellow_coins"], + "802a1bdc": ["obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["obj_abs_y_dist_to_home"], + "802a1cc4": ["Unknown802A1548"], + "802a1f3c": ["obj_resolve_wall_collisions"], + "802a2320": ["obj_update_floor_and_walls"], + "802a2348": ["obj_move_standard"], + "802a25b4": ["obj_move_using_vel_and_gravity"], + "802a2644": ["obj_move_using_fvel_and_gravity"], + "802a2674": ["set_object_pos_relative"], + "802a2748": ["obj_angle_to_home"], + "802a27b0": ["func_802A2008"], + "802a2804": ["translate_object_local"], + "802a2930": ["build_object_transform_from_pos_and_angle"], + "802a2a18": ["func_802A2270"], + "802a2a84": ["build_object_transform_relative_to_parent"], + "802a2b28": ["Unknown802A2380"], + "802a2b6c": ["obj_rotate_move_angle_using_vel"], + "802a2bc4": ["obj_rotate_face_angle_using_vel"], + "802a2c1c": ["obj_set_face_angle_to_move_angle"], + "802a2c5c": ["obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["scale_object_random"], + "802a2fc0": ["translate_object_xyz_random"], + "802a308c": ["translate_object_xz_random"], + "802a31e0": ["func_802A2A38"], + "802a3268": ["obj_reflect_move_angle_off_wall"], + "802a32ac": ["obj_spawn_particles"], + "802a34a4": ["set_object_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["obj_wait_then_blink"], + "802a3754": ["obj_is_mario_ground_pounding_platform"], + "802a37ac": ["func_802A3004"], + "802a37dc": ["func_802A3034"], + "802a3818": ["obj_push_mario_away"], + "802a390c": ["obj_push_mario_away_from_cylinder"], + "802a399c": ["BehDustSmokeLoop"], + "802a3a4c": ["func_802A32A4"], + "802a3a88": ["func_802A32E0"], + "802a3b28": ["nop_802A3380"], + "802a3b40": ["func_802A3398"], + "802a3c18": ["func_802A3470"], + "802a3cec": ["nop_802A3544"], + "802a3cfc": ["obj_is_mario_on_platform"], + "802a3d40": ["obj_shake_y_until"], + "802a3dd4": ["func_802A362C"], + "802a3e30": ["obj_call_action_function"], + "802a3ef8": ["Unknown802A3750"], + "802a3f24": ["func_802A377C"], + "802a3f48": ["obj_mario_far_away"], + "802a404c": ["obj_is_mario_moving_fast_or_in_air"], + "802a40b8": ["item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["obj_enable_rendering_if_mario_in_room"], + "802a4360": ["obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["func_802A3C98"], + "802a44f4": ["set_object_collision_data"], + "802a452c": ["obj_if_hit_wall_bounce_away"], + "802a4564": ["obj_hide_if_mario_far_away_y"], + "802a45e4": ["Geo18_802A45E4"], + "802a462c": ["Unknown802A3E84"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["func_802A3FF8"], + "802a48bc": ["obj_is_mario_in_range_and_ready_to_speak"], + "802a4960": ["obj_update_dialog"], + "802a4be4": ["obj_update_dialog_with_cutscene"], + "802a4f04": ["obj_has_model"], + "802a4f58": ["obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["ShakeScreen"], + "802a513c": ["attack_collided_non_mario_object"], + "802a51ac": ["obj_was_attacked_or_ground_pounded"], + "802a5228": ["copy_object_behavior_params"], + "802a5248": ["func_802A4A70"], + "802a5288": ["func_802A4AB0"], + "802a52c4": ["func_802A4AEC"], + "802a52f8": ["obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["obj_check_interacted"], + "802a5524": ["obj_spawn_loot_blue_coin"], + "802a5588": ["obj_spawn_star_at_y_offset"], + "802a5620": ["func_802A4DB0"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["ActionMrIParticle0"], + "802a5a44": ["ActionMrIParticle1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["func_802A525C"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["ActionMrI3"], + "802a6518": ["ActionMrI2"], + "802a68a0": ["ActionMrI1"], + "802a6ad8": ["ActionMrI0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["ActionActivateCapSwitch0"], + "802a7020": ["ActionActivateCapSwitch1"], + "802a708c": ["ActionActivateCapSwitch2"], + "802a7160": ["ActionActivateCapSwitch3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["Geo18_802A719C"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["ActionKingBobomb0"], + "802a7384": ["func_802A6AF8"], + "802a73d8": ["ActionKingBobomb2"], + "802a7598": ["ActionKingBobomb3"], + "802a7804": ["ActionKingBobomb1"], + "802a78d8": ["ActionKingBobomb6"], + "802a7a60": ["ActionKingBobomb7"], + "802a7b1c": ["ActionKingBobomb8"], + "802a7b5c": ["ActionKingBobomb4"], + "802a7d14": ["ActionKingBobomb5"], + "802a7fbc": ["func_802A7748"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["Unknown802A7E48"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["func_802A81C4"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["ActionOpenedCannon0"], + "802a8f40": ["ActionOpenedCannon4"], + "802a9114": ["ActionOpenedCannon6"], + "802a92fc": ["ActionOpenedCannon5"], + "802a93f8": ["ActionOpenedCannon1"], + "802a9440": ["ActionOpenedCannon2"], + "802a9460": ["ActionOpenedCannon3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["func_802A8D18"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["Unknown802A8EC8"], + "802a98c4": ["func_802A9050"], + "802a9994": ["ActionChuckya0"], + "802a9d08": ["ActionChuckya1"], + "802a9f54": ["ActionChuckya3"], + "802a9fc8": ["ActionChuckya2"], + "802aa02c": ["func_802A97B8"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["func_802A9A0C"], + "802aa3c8": ["func_802A9B54"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["func_802AA0D4"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["BehFadingWarpLoop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["func_802AA618"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["func_802AA788"], + "802ab060": ["func_802AA7EC"], + "802ab158": ["func_802AA8E4"], + "802ab18c": ["func_802AA918"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["func_802AB364"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["ActionCoinInsideBoo1"], + "802ac15c": ["ActionCoinInsideBoo0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["func_802AC070"], + "802ac958": ["func_802AC0B8"], + "802ac9d0": ["func_802AC130"], + "802aca6c": ["func_802AC1CC"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["ActionGrindelThwomp4"], + "802ad10c": ["ActionGrindelThwomp2"], + "802ad1a4": ["ActionGrindelThwomp3"], + "802ad238": ["ActionGrindelThwomp1"], + "802ad2d0": ["ActionGrindelThwomp0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["ActionTumblingBridge1"], + "802ad76c": ["ActionTumblingBridge2"], + "802ad7f4": ["ActionTumblingBridge3"], + "802ad828": ["ActionTumblingBridge0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["func_802AD01C"], + "802ad8f0": ["ActionElevator0"], + "802ada4c": ["ActionElevator1"], + "802adb88": ["ActionElevator2"], + "802adce4": ["ActionElevator4"], + "802add70": ["ActionElevator3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["func_802ADA94"], + "802ae360": ["bhv_unused_0e40_init"], + "802ae394": ["Unknown802ADAF4"], + "802ae45c": ["func_802ADBBC"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["func_802ADC20"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["func_802AF9A4"], + "802b039c": ["func_802AFAFC"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["func_802B02FC"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["func_802B0C54"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["func_802B0E74"], + "802b17f4": ["func_802B0F54"], + "802b19d8": ["func_802B1138"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["Geo18_802B1BB0"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["ActionHeaveHo1"], + "802b1e6c": ["ActionHeaveHo2"], + "802b1ff4": ["ActionHeaveHo3"], + "802b20a0": ["ActionHeaveHo0"], + "802b2154": ["func_802B18B4"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["ActionJumpingBox0"], + "802b27d8": ["ActionJumpingBox1"], + "802b2824": ["func_802B1F84"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["func_802B2328"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["func_802B2894"], + "802b3250": ["func_802B29B0"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["ActionBulletBill0"], + "802b38b8": ["ActionBulletBill1"], + "802b394c": ["ActionBulletBill2"], + "802b3b08": ["ActionBulletBill3"], + "802b3b24": ["ActionBulletBill4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["ActionBowserTailAnchor0"], + "802b3cdc": ["ActionBowserTailAnchor1"], + "802b3d10": ["ActionBowserTailAnchor2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["func_802B38B4"], + "802b41fc": ["func_802B392C"], + "802b4288": ["func_802B39B8"], + "802b4300": ["func_802B3A30"], + "802b4368": ["func_802B3A98"], + "802b43dc": ["func_802B3B0C"], + "802b4478": ["ActionBowser5"], + "802b44bc": ["ActionBowser6"], + "802b45f4": ["func_802B3D24"], + "802b473c": ["func_802B3E44"], + "802b48d4": ["func_802B3FDC"], + "802b4a1c": ["func_802B4124"], + "802b4a3c": ["func_802B4144"], + "802b4af4": ["func_u_802B4AF4"], + "802b4bac": ["ActionBowser18"], + "802b4be8": ["ActionBowser0"], + "802b4ca4": ["ActionBowser15"], + "802b4d14": ["ActionBowser14"], + "802b4f00": ["ActionBowser16"], + "802b5104": ["ActionBowser8"], + "802b5218": ["ActionBowser12"], + "802b53f4": ["func_802B4A44"], + "802b5444": ["func_802B4A94"], + "802b5554": ["func_802B4BA4"], + "802b55cc": ["ActionBowser13"], + "802b5798": ["ActionBowser17"], + "802b58bc": ["ActionBowser10"], + "802b59cc": ["ActionBowser9"], + "802b5aec": ["func_802B5108"], + "802b5c00": ["ActionBowser11"], + "802b5c40": ["ActionBowser7"], + "802b5f6c": ["func_802B5588"], + "802b5fec": ["ActionBowser1"], + "802b611c": ["func_802B5738"], + "802b6190": ["ActionBowser2"], + "802b6568": ["ActionBowser3"], + "802b65d0": ["func_802B5C78"], + "802b6670": ["func_802B5D18"], + "802b6730": ["func_802B5DD8"], + "802b67d4": ["func_802B5E7C"], + "802b6878": ["func_802B5F20"], + "802b6a10": ["func_802B60B8"], + "802b6a78": ["func_802B6120"], + "802b6bac": ["func_802B6254"], + "802b6cf0": ["ActionBowser4"], + "802b6e40": ["func_802B64E8"], + "802b6ee0": ["ActionBowser19"], + "802b711c": ["func_802B67C4"], + "802b71e4": ["func_802B688C"], + "802b72d4": ["func_802B697C"], + "802b7418": ["func_802B6AC0"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["Geo18_802B798C"], + "802b7a20": ["func_802B70C8"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["Geo18_802B7D44"], + "802b7e68": ["ActionFallingBowserPlatform0"], + "802b7ef0": ["ActionFallingBowserPlatform1"], + "802b8024": ["ActionFallingBowserPlatform2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["func_802B7A58"], + "802b8434": ["func_802B7ADC"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["func_802B7CFC"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["func_802B8F7C"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["func_802B9120"], + "802b9af8": ["func_802B91A0"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["func_802B95A4"], + "802ba13c": ["func_802B97E4"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["Geo18_802BA2B0"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["unused_Geo18_8029D890"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["func_802BB414"], + "802bbfd8": ["func_802BB680"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["func_802BB9F0"], + "802bc4f4": ["ActionRotatingCwFireBars0"], + "802bc538": ["ActionRotatingCwFireBars1"], + "802bc590": ["ActionRotatingCwFireBars2"], + "802bc5fc": ["ActionRotatingCwFireBars3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["func_802BBFDC"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["func_802BC390"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["func_802BCA8C"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["func_802BCCD4"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["func_802BCF78"], + "802bd91c": ["func_802BCFC4"], + "802bdb04": ["ActionToxBox4"], + "802bdb3c": ["ActionToxBox5"], + "802bdb74": ["ActionToxBox6"], + "802bdbac": ["ActionToxBox7"], + "802bdbe4": ["ActionToxBox1"], + "802bdc7c": ["ActionToxBox2"], + "802bdcc8": ["ActionToxBox3"], + "802bdd14": ["ActionToxBox0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["func_802BE2E8"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["ActionTuxiesMother2"], + "802bef8c": ["ActionTuxiesMother1"], + "802bf1d8": ["ActionTuxiesMother0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["func_802BEA58"], + "802bf474": ["ActionSmallPenguin2"], + "802bf57c": ["ActionSmallPenguin1"], + "802bf648": ["ActionSmallPenguin3"], + "802bf6e4": ["ActionSmallPenguin4"], + "802bf760": ["ActionSmallPenguin0"], + "802bf90c": ["ActionSmallPenguin5"], + "802bfa14": ["func_802BF048"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["ActionFish0"], + "802bfeb8": ["ActionFish1"], + "802bff20": ["ActionFish2"], + "802bff3c": ["bhv_fish_loop"], + "802bff68": ["func_802BF59C"], + "802c00b4": ["ActionFishGroup1"], + "802c0348": ["ActionFishGroup2"], + "802c06a8": ["ActionFishGroup0"], + "802c0768": ["bhv_fish_group_2_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["ActionBirdChirpChirp0"], + "802c0b50": ["ActionBirdChirpChirp1"], + "802c0ba4": ["ActionBirdChirpChirp2"], + "802c0bc4": ["ActionBirdChirpChirp3"], + "802c0be0": ["bhv_bird_chirp_chirp_loop"], + "802c0c0c": ["func_802C0240"], + "802c0cd4": ["ActionCheepCheep0"], + "802c0d44": ["ActionCheepCheep1"], + "802c0f90": ["ActionCheepCheep2"], + "802c1204": ["bhv_cheep_cheep_loop"], + "802c12c0": ["bhv_rotatin_exclamation_box_loop"], + "802c1308": ["ActionExclamationBox0"], + "802c13ec": ["ActionExclamationBox1"], + "802c14b0": ["ActionExclamationBox2"], + "802c15b8": ["ActionExclamationBox3"], + "802c17bc": ["func_802C0DF0"], + "802c18d0": ["ActionExclamationBox4"], + "802c1988": ["ActionExclamationBox5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["BehClimbDetectLoop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["func_802C5A64"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["func_802C61CC"], + "802c6d6c": ["ActionWhomp0"], + "802c6ec8": ["ActionWhomp7"], + "802c6fb0": ["ActionWhomp1"], + "802c710c": ["ActionWhomp2"], + "802c7254": ["ActionWhomp3"], + "802c72b4": ["ActionWhomp4"], + "802c7380": ["ActionWhomp5"], + "802c7428": ["func_802C6954"], + "802c75fc": ["func_802C6B28"], + "802c76d4": ["ActionWhomp6"], + "802c7858": ["ActionWhomp8"], + "802c7998": ["ActionWhomp9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_loop"], + "802c7b14": ["bhv_water_drops_loop"], + "802c7cac": ["bhv_surface_waves_loop"], + "802c7d40": ["bhv_water_surface_white_wave_init"], + "802c7d90": ["bhv_object_bubble_ripples_init"], + "802c7dfc": ["bhv_surface_wave_shrinking_init"], + "802c7e5c": ["bhv_wave_trail_loop"], + "802c7f98": ["bhv_white_wind_particle_loop"], + "802c81b4": ["func_802C76E0"], + "802c834c": ["bhv_snowman_wind_blowing_loop"], + "802c85a4": ["func_802C7AD0"], + "802c863c": ["bhv_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["Unknown802C8460"], + "802c8fe4": ["func_802C8504"], + "802c91ec": ["func_802C870C"], + "802c9388": ["func_802C88A8"], + "802c93f8": ["func_802C8918"], + "802c94ac": ["func_802C89CC"], + "802c95b4": ["func_802C8AD4"], + "802c9630": ["func_802C8B50"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["PlaySound"], + "802ca1e0": ["PlaySound2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["Stub802C9890"], + "802ca380": ["Stub802C98A0"], + "802ca390": ["Stub802C98B0"], + "802ca3a0": ["Stub802C98C0"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_802CA5D0"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["Unknown802CAA84"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stopAllRippleExcept"], + "802d2a74": ["find_mario_y_position_on_painting"], + "802d2b08": ["find_mario_z_position_on_painting"], + "802d2b84": ["painting_find_vertical_ripple_location"], + "802d2c40": ["find_part_of_painting_near_mario"], + "802d2d80": ["find_mario_x_position_on_painting"], + "802d2dfc": ["painting_find_horizontal_ripple_location"], + "802d2eb8": ["painting_set_ripple_type"], + "802d2ffc": ["vertical_proximity_ripple_painting_ripple"], + "802d319c": ["vertical_proximity_ripple_painting_ripple_if_mario_enters"], + "802d327c": ["vertical_continuous_ripple_painting_ripple"], + "802d341c": ["vertical_continuous_ripple_painting_ripple_if_mario_enters"], + "802d34fc": ["horizontal_proximity_ripple_painting_ripple"], + "802d36ac": ["horizontal_proximity_ripple_painting_ripple_if_mario_enters"], + "802d379c": ["horizontal_continuous_ripple_painting_ripple"], + "802d393c": ["horizontal_continuous_ripple_painting_ripple_if_mario_enters"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_status"], + "802d3cec": ["painting_calculate_point_ripple"], + "802d3e6c": ["painting_conditionally_calculate_point_ripple"], + "802d3ee4": ["Print1"], + "802d404c": ["Print2"], + "802d43f8": ["small_float_to_byte"], + "802d44bc": ["func_802D39DC"], + "802d47d0": ["func_802D3CF0"], + "802d4edc": ["func_802D43FC"], + "802d50dc": ["func_802D45FC"], + "802d5354": ["func_802D4874"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["update_ddd_painting"], + "802d58e4": ["func_802D4E04"], + "802d593c": ["display_painting"], + "802d59a8": ["vertical_painting_ripple"], + "802d5aa0": ["horizontal_painting_ripple"], + "802d5b98": ["Geo18_802D5B98"], + "802d5d0c": ["Geo18_802D5D0C"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["CoinStep"], + "802e5e6c": ["MovingCoinFlickerLoop"], + "802e5ea4": ["CoinCollected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["func_802E540C"], + "802e63ec": ["func_802E54DC"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["func_802E5B7C"], + "802e6af8": ["BobombExplodeLoop"], + "802e6bd4": ["CheckBobombInteractions"], + "802e6cf0": ["BobombPatrolLoop"], + "802e6dc8": ["BobombChaseMarioLoop"], + "802e6e84": ["BobombLaunchedLoop"], + "802e6ed8": ["GenericBobombFreeLoop"], + "802e7020": ["StationaryBobombFreeLoop"], + "802e7134": ["BobombFreeLoop"], + "802e7180": ["BobombHeldLoop"], + "802e7220": ["BobombDroppedLoop"], + "802e7280": ["BobombThrownLoop"], + "802e7324": ["ObjRandomBlink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["BobombBuddyIdleLoop"], + "802e7814": ["BobombBuddyCannonLoop"], + "802e79dc": ["BobombBuddyTalkLoop"], + "802e7b00": ["BobombBuddyTurnToTalkLoop"], + "802e7bb0": ["BobombBuddyActionLoop"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["CannonTrapDoorOpeningLoop"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["func_802E70A8"], + "802e7fec": ["func_802E70DC"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["ButterflyStep"], + "802e9278": ["CalculateButterflyAngle"], + "802e9470": ["ButterflyRestingLoop"], + "802e94e4": ["ButterflyFollowMarioLoop"], + "802e9548": ["ButterflyReturnHomeLoop"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["HootFindNextFloor"], + "802e98c0": ["HootFloorBounce"], + "802e9a4c": ["HootFreeStep"], + "802e9cf4": ["PlayerSetHootYaw"], + "802e9d98": ["HootCarryStep"], + "802e9f60": ["HootSurfaceCollision"], + "802ea144": ["HootAscentLoop"], + "802ea258": ["HootActionLoop"], + "802ea3f0": ["HootTurnToHome"], + "802ea4ec": ["HootAwakeLoop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["BullyCheckMarioCollision"], + "802eb288": ["BullyChaseMarioLoop"], + "802eb3f0": ["BullyKnockbackLoop"], + "802eb510": ["BullyBackUpLoop"], + "802eb5c4": ["BullyBackUpCheck"], + "802eb630": ["PlayBullyStompingSound"], + "802eb744": ["BullyStep"], + "802eb7e0": ["BullySpawnCoin"], + "802eb8b0": ["BullyLavaDeath"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["BigBullySpawnMinion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["BigBullyWithMinionsLavaDeath"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["WaterRingCalcMarioDistInFront"], + "802ec030": ["WaterRingInit"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["CheckWaterRingCollection"], + "802ec3d0": ["SetWaterRingScale"], + "802ec4e0": ["WaterRingCollectedLoop"], + "802ec59c": ["JetStreamWaterRingNotCollectedLoop"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["Unknown802EB8A4"], + "802ec818": ["JetStreamRingSpawnerActiveLoop"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["MantaRayWaterRingNotCollectedLoop"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["CelebrationStarSpinAroundMarioLoop"], + "802ed28c": ["CelebrationStarFaceCameraLoop"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["MoneybagCheckMarioCollision"], + "802ee268": ["MoneybagJump"], + "802ee46c": ["MoneybagMoveAroundLoop"], + "802ee598": ["MoneybagReturnHomeLoop"], + "802ee728": ["MoneybagDisappearLoop"], + "802ee778": ["MoneybagDeathLoop"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["func_802EDA14"], + "802eea7c": ["func_802EDA6C"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["func_802EFB2C"], + "802f0bd4": ["func_802EFB84"], + "802f0c94": ["func_802EFC44"], + "802f0df0": ["func_802EFDA0"], + "802f0fa8": ["func_802EFF58"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["func_802F05DC"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["func_802F0904"], + "802f19c8": ["func_802F0978"], + "802f1a10": ["func_802F09C0"], + "802f1bb8": ["func_802F0B68"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["func_802F0D70"], + "802f1e5c": ["func_802F0E0C"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["func_802F0FE0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["func_802F1190"], + "802f2284": ["func_802F1234"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["func_802F1A50"], + "802f2b88": ["create_star"], + "802f2bd4": ["func_802F1B84"], + "802f2c24": ["func_802F1BD4"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["func_802F238C"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["func_802F2820"], + "802f39b4": ["func_802F2924"], + "802f3a30": ["bhvLllVolcanoFallingTrap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["func_802F2D40"], + "802f3ea8": ["func_802F2E18"], + "802f401c": ["func_802F2F8C"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["func_802F3328"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["func_802F3BD8"], + "802f4ce0": ["func_802F3C50"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["func_802F3F80"], + "802f5068": ["func_802F3FD8"], + "802f52c0": ["func_802F4230"], + "802f547c": ["func_802F43EC"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["func_802F4CE8"], + "802f5e44": ["func_802F4DB4"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["func_802F54F8"], + "802f665c": ["func_802F55CC"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["func_802F5E20"], + "802f7068": ["func_802F5FD8"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["func_802F6E8C"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["BehYoshiLoop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["func_80306ED4"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["Geo18_8030D93C"], + "8030d9ac": ["Geo18_8030D9AC"], + "8030da14": ["snufit_act_0"], + "8030db38": ["snufit_act_1"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee0": ["func_80319E70"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L_U_8031C200"], + "8031c23c": ["L_U_8031C23C"], + "8031c298": ["L_U_8031C298"], + "8031c2dc": ["L_U_8031C2DC"], + "8031c328": ["L_U_8031C328"], + "8031c36c": ["L_U_8031C36C"], + "8031c3bc": ["L_U_8031C3BC"], + "8031c3e8": ["L_U_8031C3E8"], + "8031c454": ["L_U_8031C454"], + "8031c4a4": ["L_U_8031C4A4"], + "8031c5c8": ["L_U_8031C5C8"], + "8031c698": ["L_U_8031C698"], + "8031c6a0": ["L_U_8031C6A0"], + "8031cbe0": ["L_U_8031CBE0"], + "8031cbec": ["L_U_8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e578": ["sequence_player_fade_out_internal"], + "8031e5c0": ["func_8031D690"], + "8031e60c": ["func_8031D6E4"], + "8031e6a4": ["func_8031D7B0"], + "8031e710": ["func_8031D838"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031eb30": ["process_sound_request"], + "8031edec": ["process_all_sound_requests"], + "8031ee70": ["func_8031DFE8"], + "8031ef6c": ["func_8031E0E4"], + "8031eff4": ["func_8031E16C"], + "8031f810": ["get_sound_pan"], + "8031f96c": ["get_sound_dynamics"], + "8031fb20": ["get_sound_freq_scale"], + "8031fbe8": ["get_sound_reverb"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "803217a8": ["disable_all_sequence_players"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["D_8032CE9C"], + "8032de4c": ["D_8032CEEC"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "803306dc": ["sCageUkikiPath"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["D_8032FCE8"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["D_8032FDAC"], + "80330d30": ["D_8032FDD0"], + "80330d54": ["D_8032FDF4"], + "80330d78": ["D_8032FE18"], + "80330d9c": ["sWindParticleHitbox"], + "80330dac": ["D_8032FE4C"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["hmcPaintings"], + "80331308": ["insideCastlePaintings"], + "80331344": ["ttmPaintings"], + "8033134c": ["paintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b10": ["D_80331A00"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["D_80334810"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["unknown"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338da0": ["D_80337BB0"], + "80338da8": ["D_80337BB8"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["D_80339F50"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gBehCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361270": ["sGrabReleaseState"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["D_8035FFA0"], + "80361314": ["D_8035FFA4"], + "80361318": ["ripplingPainting"], + "8036131c": ["dddStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["D_80365CE0"], + "8036708c": ["D_80365D1C"], + "80367090": ["D_80365D20"], + "80367091": ["_osCont_numControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["__osViIntrCount"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": ["_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["RandomU16"], + "80383cb4": ["RandomFloat"], + "80383d1c": ["RandomSign"], + "80383d68": ["func_80383D68"], + "80385bf0": ["stub_80385BF0"], + "80385c00": ["cur_object_exec_behavior"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["spot_on_ground_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["water_waves_surface_geo"], + "17000168": ["water_waves_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleMario"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvWaterWaves"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvWallTinyStarParticleSpawn"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvPoundTinyStarParticleSpawn"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvPunchTinyTriangleSpawn"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvWaterMistSpawn"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvPoundWhitePuffs"], + "13000e3c": ["bhvGroundSand"], + "13000e58": ["bhvGroundSnow"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFlameMario"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvSnowLeafParticleSpawn"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFishGroup2"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMarioDustGenerator"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSpecialTripleJumpSparkles"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDrops"], + "13002c7c": ["bhvWaterSurfaceWhiteWave"], + "13002cb0": ["bhvObjectBubbleRipples"], + "13002ce0": ["bhvSurfaceWaves"], + "13002d28": ["bhvWaterSurfaceWhiteWave2"], + "13002d50": ["bhvWavesGenerator"], + "13002d7c": ["bhvSurfaceWaveShrinking"], + "13002db0": ["bhvWaterType"], + "13002dc0": ["bhvWaveTrailOnSurface"], + "13002e04": ["bhvTinyWhiteWindParticle"], + "13002e20": ["bhvWindParticle"], + "13002e3c": ["bhvSnowmanWindBlowing"], + "13002e58": ["bhvWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvWarps60"], + "13002f64": ["bhvWarps64"], + "13002f68": ["bhvWarps68"], + "13002f6c": ["bhvWarps6C"], + "13002f70": ["bhvWarps70"], + "13002f74": ["bhvWarps74"], + "13002f78": ["bhvWarps78"], + "13002f7c": ["bhvWarps7C"], + "13002f80": ["bhvWarps80"], + "13002f84": ["bhvWarps84"], + "13002f88": ["bhvWarps88"], + "13002f8c": ["bhvWarps8C"], + "13002f90": ["bhvWarps90"], + "13002f94": ["bhvWarps94"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 7": { - "80000000": "D_80000000", - "a4000000": "D_A4000000", - "a40004c0": "D_A40004C0", - "a4000774": "D_A4000774", - "a4001000": "D_A4001000", - "a4040010": "D_A4040010", - "a4080000": "D_A4080000", - "a4300000": "D_A4300000", - "a4300004": "D_A4300004", - "a4300008": "D_A4300008", - "a430000c": "D_A430000C", - "a4400010": "D_A4400010", - "a450000c": "D_A450000C", - "a4600000": "D_A4600000", - "a4600004": "D_A4600004", - "a460000c": "D_A460000C", - "a4600010": "D_A4600010", - "a4700000": "D_A4700000", - "a4700010": "D_A4700010", - "a4800018": "D_A4800018", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802f69cc": "func_sh_802F69CC", - "8024cc7c": "func_sh_8024CC7C", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "entry_point", - "80246050": "handle_debug_key_sequences", - "80246170": "unknown_main_func", - "802461cc": "stub_main_1", - "802461dc": "stub_main_2", - "802461ec": "stub_main_3", - "802461fc": "setup_mesg_queues", - "802462e0": "alloc_pool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "send_sp_task_message", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "main_func", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "draw_reset_bars", - "80247f08": "rendering_init", - "80247fdc": "config_gfx_pool", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "reset_volume", - "80248c58": "lower_background_noise", - "80248ce8": "raise_background_noise", - "80248d78": "disable_background_sound", - "80248dc0": "enable_background_sound", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "fadeout_music", - "8024927c": "fadeout_level_music", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_pause", - "80249764": "set_play_mode", - "8024978c": "warp_special", - "802497b8": "fade_into_special_warp", - "8024982c": "stub_level_update_1", - "8024983c": "load_level_init_text", - "8024995c": "init_door_warp", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "warp_area", - "8024a18c": "warp_level", - "8024a1d8": "warp_credits", - "8024a374": "check_instant_warp", - "8024a584": "music_changed_through_warp", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_obj_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "should_push_or_pull_door", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_strong_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "mario_can_talk", - "8024ff04": "check_read_sign", - "80250098": "check_npc_talk", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "stub_mario_step_1", - "802550b0": "stub_mario_step_2", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "bhv_end_peach_loop", - "802570dc": "bhv_end_toad_loop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "climb_up_ledge", - "8025f560": "update_ledge_climb_camera", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "check_common_idle_cancels", - "80260aac": "check_common_hold_idle_cancels", - "80260cb4": "act_idle", - "80260f94": "play_anim_sound", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "stopping_step", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "act_unknown_03F", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "act_unknown_026", - "80262bc4": "landing_step", - "80262c34": "check_common_landing_cancels", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "act_unknown_034", - "802631f0": "act_unknown_035", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "check_common_stationary_cancels", - "80263898": "mario_execute_stationary_action", - "80263e60": "tilt_body_running", - "80263ee4": "play_step_sound", - "80264024": "align_with_floor", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "anim_and_audio_for_walk", - "80265b1c": "anim_and_audio_for_hold_walk", - "80265d90": "anim_and_audio_for_heavy_walk", - "80265df8": "push_or_sidle_wall", - "80266038": "tilt_body_walking", - "802661cc": "tilt_body_ground_shell", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "tilt_body_butt_slide", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "play_knockback_sound", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "check_wall_kick", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_envfx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhv_toad_message_loop", - "80276910": "bhv_toad_message_init", - "80276bb8": "bhv_unlock_door_star_init", - "80276ccc": "bhv_unlock_door_star_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "load_segment_decompress_heap", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "load_patchable_table", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "override_viewport_and_clip", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "area_get_warp_node_from_params", - "8027aa74": "load_obj_warp_nodes", - "8027ab04": "clear_areas", - "8027ad74": "clear_area_graph_nodes", - "8027ae44": "load_area", - "8027af48": "unload_area", - "8027afbc": "load_mario_area", - "8027b038": "unload_mario_area", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "stub_camera_2", - "80287dd4": "stub_camera_3", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "stub_camera_4", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "spawn_child_obj_relative", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_obj_list_processor_1", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "geo_update_projectile_pos_from_parent", - "8029d924": "geo_update_layer_transparency", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "obj_update_pos_from_parent_transformation", - "8029dda8": "obj_apply_scale_to_matrix", - "8029de80": "create_transformation_from_matrices", - "8029e1b0": "obj_set_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "cur_obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "cur_obj_rotate_yaw_toward", - "8029e694": "obj_angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "obj_set_parent_relative_pos", - "8029e914": "obj_set_pos", - "8029e96c": "obj_set_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "spawn_obj_with_transform_flags", - "8029eb04": "spawn_water_droplet", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "cur_obj_move_using_vel", - "8029f0c8": "obj_copy_graph_y_offset", - "8029f0e0": "obj_copy_pos_and_angle", - "8029f120": "obj_copy_pos", - "8029f148": "obj_copy_angle", - "8029f188": "obj_set_gfx_pos_from_pos", - "8029f1b0": "obj_init_animation", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "obj_apply_scale_to_transform", - "8029f3a8": "obj_copy_scale", - "8029f3d0": "obj_scale_xyz", - "8029f404": "obj_scale", - "8029f430": "cur_obj_scale", - "8029f464": "cur_obj_init_animation", - "8029f4b4": "cur_obj_init_animation_with_sound", - "8029f514": "cur_obj_init_animation_with_accel_and_sound", - "8029f59c": "obj_init_animation_with_sound", - "8029f600": "cur_obj_enable_rendering_and_become_tangible", - "8029f620": "cur_obj_enable_rendering", - "8029f644": "cur_obj_disable_rendering_and_become_intangible", - "8029f66c": "cur_obj_disable_rendering", - "8029f694": "cur_obj_unhide", - "8029f6bc": "cur_obj_hide", - "8029f6e0": "cur_obj_set_pos_relative", - "8029f7d8": "cur_obj_set_pos_relative_to_parent", - "8029f820": "cur_obj_enable_rendering_2", - "8029f848": "cur_obj_unused_init_on_floor", - "8029f8ec": "obj_set_face_angle_to_move_angle", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "cur_obj_nearest_object_with_behavior", - "8029f998": "cur_obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "cur_obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "cur_obj_find_nearby_held_actor", - "8029fdb4": "cur_obj_change_action", - "8029fe00": "cur_obj_set_vel_from_mario_vel", - "8029fe6c": "cur_obj_reverse_animation", - "8029fea4": "cur_obj_extend_animation_if_at_end", - "8029ff04": "cur_obj_check_if_near_animation_end", - "8029ffa4": "cur_obj_check_if_at_animation_end", - "802a0008": "cur_obj_check_anim_frame", - "802a0050": "cur_obj_check_anim_frame_in_range", - "802a00ac": "cur_obj_check_frame_prior_current_frame", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "cur_obj_set_y_vel_and_animation", - "802a01d8": "cur_obj_unrender_and_reset_state", - "802a0380": "cur_obj_get_thrown_or_placed", - "802a0474": "cur_obj_get_dropped", - "802a04c0": "cur_obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "cur_obj_clear_interact_status_flag", - "802a0568": "obj_mark_for_deletion", - "802a057c": "cur_obj_disable", - "802a05b4": "cur_obj_become_intangible", - "802a05d4": "cur_obj_become_tangible", - "802a05f0": "obj_become_tangible", - "802a0604": "cur_obj_update_floor_height", - "802a064c": "cur_obj_update_floor_height_and_get_floor", - "802a079c": "cur_obj_apply_drag_xz", - "802a0e68": "cur_obj_move_y", - "802a113c": "cur_obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "cur_obj_move_xz_using_fvel_and_yaw", - "802a12a4": "cur_obj_move_y_with_terminal_vel", - "802a1308": "cur_obj_compute_vel_xz", - "802a1370": "increment_velocity_toward_range", - "802a1424": "obj_check_if_collided_with_object", - "802a148c": "cur_obj_set_behavior", - "802a14c4": "obj_set_behavior", - "802a14fc": "cur_obj_has_behavior", - "802a1554": "obj_has_behavior", - "802a15ac": "cur_obj_lateral_dist_from_mario_to_home", - "802a1634": "cur_obj_lateral_dist_to_home", - "802a16ac": "cur_obj_outside_home_square", - "802a1774": "cur_obj_outside_home_rectangle", - "802a184c": "cur_obj_set_pos_to_home", - "802a188c": "cur_obj_set_pos_to_home_and_stop", - "802a18dc": "cur_obj_shake_y", - "802a1930": "cur_obj_start_cam_event", - "802a1960": "set_mario_interact_hoot_if_in_range", - "802a19ac": "obj_set_billboard", - "802a19c8": "cur_obj_set_hitbox_radius_and_height", - "802a19f0": "cur_obj_set_hurtbox_radius_and_height", - "802a1b34": "obj_spawn_loot_blue_coins", - "802a1b8c": "obj_spawn_loot_yellow_coins", - "802a1bdc": "cur_obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "cur_obj_abs_y_dist_to_home", - "802a1cc4": "cur_obj_advance_looping_anim", - "802a1f3c": "cur_obj_resolve_wall_collisions", - "802a2320": "cur_obj_update_floor_and_walls", - "802a2348": "cur_obj_move_standard", - "802a25b4": "cur_obj_move_using_vel_and_gravity", - "802a2644": "cur_obj_move_using_fvel_and_gravity", - "802a2674": "obj_set_pos_relative", - "802a2748": "cur_obj_angle_to_home", - "802a27b0": "obj_set_gfx_pos_at_obj_pos", - "802a2804": "obj_translate_local", - "802a2930": "obj_build_transform_from_pos_and_angle", - "802a2a18": "obj_set_throw_matrix_from_transform", - "802a2a84": "obj_build_transform_relative_to_parent", - "802a2b28": "obj_create_transform_from_self", - "802a2b6c": "cur_obj_rotate_move_angle_using_vel", - "802a2bc4": "cur_obj_rotate_face_angle_using_vel", - "802a2c1c": "cur_obj_set_face_angle_to_move_angle", - "802a2c5c": "cur_obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "obj_scale_random", - "802a2fc0": "obj_translate_xyz_random", - "802a308c": "obj_translate_xz_random", - "802a31e0": "cur_obj_set_pos_via_transform", - "802a3268": "cur_obj_reflect_move_angle_off_wall", - "802a32ac": "cur_obj_spawn_particles", - "802a34a4": "obj_set_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "cur_obj_wait_then_blink", - "802a3754": "cur_obj_is_mario_ground_pounding_platform", - "802a37ac": "spawn_mist_particles", - "802a37dc": "spawn_mist_particles_with_sound", - "802a3818": "cur_obj_push_mario_away", - "802a390c": "cur_obj_push_mario_away_from_cylinder", - "802a399c": "bhv_dust_smoke_loop", - "802a3a4c": "cur_obj_set_direction_table", - "802a3a88": "cur_obj_progress_direction_table", - "802a3b28": "stub_obj_helpers_3", - "802a3b40": "cur_obj_scale_over_time", - "802a3c18": "cur_obj_set_pos_to_home_with_debug", - "802a3cec": "stub_obj_helpers_4", - "802a3cfc": "cur_obj_is_mario_on_platform", - "802a3d40": "cur_obj_shake_y_until", - "802a3dd4": "cur_obj_move_up_and_down", - "802a3e30": "cur_obj_call_action_function", - "802a3ef8": "spawn_base_star_with_no_lvl_exit", - "802a3f24": "bit_shift_left", - "802a3f48": "cur_obj_mario_far_away", - "802a404c": "is_mario_moving_fast_or_in_air", - "802a40b8": "is_item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "cur_obj_enable_rendering_if_mario_in_room", - "802a4360": "cur_obj_set_hitbox_and_die_if_attacked", - "802a4440": "obj_explode_and_spawn_coins", - "802a44f4": "obj_set_collision_data", - "802a452c": "cur_obj_if_hit_wall_bounce_away", - "802a4564": "cur_obj_hide_if_mario_far_away_y", - "802a45e4": "geo_offset_klepto_held_object", - "802a462c": "geo_offset_klepto_debug", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "cur_obj_can_mario_activate_textbox", - "802a48bc": "cur_obj_can_mario_activate_textbox_2", - "802a4960": "cur_obj_update_dialog", - "802a4be4": "cur_obj_update_dialog_with_cutscene", - "802a4f04": "cur_obj_has_model", - "802a4f58": "cur_obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "cur_obj_shake_screen", - "802a513c": "obj_attack_collided_from_other_object", - "802a51ac": "cur_obj_was_attacked_or_ground_pounded", - "802a5228": "obj_copy_behavior_params", - "802a5248": "cur_obj_init_animation_and_anim_frame", - "802a5288": "cur_obj_init_animation_and_check_if_near_end", - "802a52c4": "cur_obj_init_animation_and_extend_if_at_end", - "802a52f8": "cur_obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "cur_obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "cur_obj_check_interacted", - "802a5524": "cur_obj_spawn_loot_blue_coin", - "802a5588": "cur_obj_spawn_star_at_y_offset", - "802a5620": "star_door_update_pos", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "mr_i_piranha_particle_act_0", - "802a5a44": "mr_i_piranha_particle_act_1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "spawn_mr_i_particle", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "mr_i_act_3", - "802a6518": "mr_i_act_2", - "802a68a0": "mr_i_act_1", - "802a6ad8": "mr_i_act_0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "cap_switch_act_0", - "802a7020": "cap_switch_act_1", - "802a708c": "cap_switch_act_2", - "802a7160": "cap_switch_act_3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "geo_update_held_mario_pos", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "king_bobomb_act_0", - "802a7384": "mario_is_far_below_object", - "802a73d8": "king_bobomb_act_2", - "802a7598": "king_bobomb_act_3", - "802a7804": "king_bobomb_act_1", - "802a78d8": "king_bobomb_act_6", - "802a7a60": "king_bobomb_act_7", - "802a7b1c": "king_bobomb_act_8", - "802a7b5c": "king_bobomb_act_4", - "802a7d14": "king_bobomb_act_5", - "802a7fbc": "king_bobomb_move", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "scale_bubble_random", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "scale_bubble_sin", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "opened_cannon_act_0", - "802a8f40": "opened_cannon_act_4", - "802a9114": "opened_cannon_act_6", - "802a92fc": "opened_cannon_act_5", - "802a93f8": "opened_cannon_act_1", - "802a9440": "opened_cannon_act_2", - "802a9460": "opened_cannon_act_3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "common_anchor_mario_behavior", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "unknown_chuckya_function", - "802a98c4": "approach_forward_vel", - "802a9994": "chuckya_act_0", - "802a9d08": "chuckya_act_1", - "802a9f54": "chuckya_act_3", - "802a9fc8": "chuckya_act_2", - "802aa02c": "chuckya_move", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "check_mario_attacking", - "802aa3c8": "init_kickable_board_rock", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "set_koopa_shell_underwater_hitbox", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "bhv_fading_warp_loop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "spawn_mist_particles_variable", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "set_sparkle_spawn_star_hitbox", - "802ab060": "set_home_to_mario", - "802ab158": "set_y_home_to_pos", - "802ab18c": "slow_star_rotation", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "spawn_coin_in_formation", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "coin_inside_boo_act_1", - "802ac15c": "coin_inside_boo_act_0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "door_animation_and_reset", - "802ac958": "set_door_camera_event", - "802ac9d0": "play_door_open_noise", - "802aca6c": "play_warp_door_open_noise", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "grindel_thwomp_act_4", - "802ad10c": "grindel_thwomp_act_2", - "802ad1a4": "grindel_thwomp_act_3", - "802ad238": "grindel_thwomp_act_1", - "802ad2d0": "grindel_thwomp_act_0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "tumbling_bridge_act_1", - "802ad76c": "tumbling_bridge_act_2", - "802ad7f4": "tumbling_bridge_act_3", - "802ad828": "tumbling_bridge_act_0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "elevator_starting_shake", - "802ad8f0": "elevator_act_0", - "802ada4c": "elevator_act_1", - "802adb88": "elevator_act_2", - "802adce4": "elevator_act_4", - "802add70": "elevator_act_3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "spawn_mist_from_global", - "802ae360": "bhv_ground_sand_init", - "802ae394": "spawn_smoke_with_velocity", - "802ae45c": "clear_particle_flags", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "spawn_wind_particles", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "spawn_and_init_wf_platforms", - "802b039c": "spawn_wf_platform_group", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "square_plat_set_yaw_until_timer", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "check_if_moving_over_floor", - "802b15e8": "bhv_pushable_loop", - "802b1714": "breakable_box_init", - "802b17f4": "hidden_breakable_box_actions", - "802b19d8": "hidden_unbreakable_box_actions", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "geo_move_mario_part_from_parent", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "heave_ho_act_1", - "802b1e6c": "heave_ho_act_2", - "802b1ff4": "heave_ho_act_3", - "802b20a0": "heave_ho_act_0", - "802b2154": "heave_ho_move", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "jumping_box_act_0", - "802b27d8": "jumping_box_act_1", - "802b2824": "jumping_box_free_update", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "spawn_sparkle_particles", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "arc_to_goal_pos", - "802b3250": "grand_star_zero_velocity", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "bullet_bill_act_0", - "802b38b8": "bullet_bill_act_1", - "802b394c": "bullet_bill_act_2", - "802b3b08": "bullet_bill_act_3", - "802b3b24": "bullet_bill_act_4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "bowser_tail_anchor_act_0", - "802b3cdc": "bowser_tail_anchor_act_1", - "802b3d10": "bowser_tail_anchor_act_2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "bowser_spawn_shockwave", - "802b41fc": "bowser_bounce", - "802b4288": "bowser_set_anim_look_up_and_walk", - "802b4300": "bowser_set_anim_slow_gait", - "802b4368": "bowser_set_anim_look_down", - "802b43dc": "bowser_initialize_action", - "802b4478": "bowser_act_text_wait", - "802b44bc": "bowser_act_intro_walk", - "802b45f4": "bowser_bitdw_act_controller", - "802b473c": "bowser_bitfs_act_controller", - "802b48d4": "bowser_general_bits_act_controller", - "802b4a1c": "bowser_set_act_jump", - "802b4a3c": "bowser_bits_act_controller", - "802b4af4": "bowser_reset_fallen_off_stage", - "802b4bac": "bowser_act_unused_slow_walk", - "802b4be8": "bowser_act_default", - "802b4ca4": "bowser_act_breath_fire", - "802b4d14": "bowser_act_walk_to_mario", - "802b4f00": "bowser_act_teleport", - "802b5104": "bowser_act_spit_fire_into_sky", - "802b5218": "bowser_act_hit_mine", - "802b53f4": "bowser_set_anim_in_air", - "802b5444": "bowser_land", - "802b5554": "bowser_short_second_hop", - "802b55cc": "bowser_act_jump", - "802b5798": "bowser_act_jump_towards_mario", - "802b58bc": "bowser_act_hit_edge", - "802b59cc": "bowser_act_spit_fire_onto_floor", - "802b5aec": "bowser_turn_on_timer", - "802b5c00": "bowser_act_turn_from_edge", - "802b5c40": "bowser_act_charge_mario", - "802b5f6c": "bowser_check_hit_mine", - "802b5fec": "bowser_act_thrown_dropped", - "802b611c": "bowser_set_goal_invisible", - "802b6190": "bowser_act_jump_onto_stage", - "802b6568": "bowser_act_dance", - "802b65d0": "bowser_spawn_grand_star_key", - "802b6670": "bowser_fly_back_dead", - "802b6730": "bowser_dead_bounce", - "802b67d4": "bowser_dead_wait_for_mario", - "802b6878": "bowser_dead_twirl_into_trophy", - "802b6a10": "bowser_dead_hide", - "802b6a78": "bowser_dead_not_bits_end", - "802b6bac": "bowser_dead_bits_end", - "802b6cf0": "bowser_act_dead", - "802b6e40": "bowser_tilt_platform", - "802b6ee0": "bowser_act_ride_tilting_platform", - "802b711c": "bowser_check_fallen_off_stage", - "802b71e4": "bowser_free_update", - "802b72d4": "bowser_held_update", - "802b7418": "bowser_thrown_dropped_update", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "geo_update_body_rot_from_parent", - "802b7a20": "bowser_open_eye_switch", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "geo_bits_bowser_coloring", - "802b7e68": "falling_bowser_plat_act_0", - "802b7ef0": "falling_bowser_plat_act_1", - "802b8024": "falling_bowser_plat_act_2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "bowser_flame_despawn", - "802b8434": "bowser_flame_should_despawn", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "bowser_flame_move", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_movement_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "vec3f_copy_2", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "checkerboard_plat_act_move_y", - "802b9af8": "checkerboard_plat_act_rotate", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "water_level_pillar_undrained", - "802ba13c": "water_level_pillar_drained", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "geo_scale_bowser_key", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "geo_update_projectile_pos_from_parent_copy", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "lll_octagonal_mesh_move", - "802bbfd8": "lll_octagonal_mesh_find_y_offset", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "fire_bar_spawn_flames", - "802bc4f4": "fire_bar_act_0", - "802bc538": "fire_bar_act_1", - "802bc590": "fire_bar_act_2", - "802bc5fc": "fire_bar_act_3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "hexagonal_ring_spawn_flames", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "sinking_rectangular_plat_actions", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "koopa_shell_spawn_water_drop", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "koopa_shell_spawn_sparkles", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "tox_box_shake_screen", - "802bd91c": "tox_box_move", - "802bdb04": "tox_box_act_4", - "802bdb3c": "tox_box_act_5", - "802bdb74": "tox_box_act_6", - "802bdbac": "tox_box_act_7", - "802bdbe4": "tox_box_act_1", - "802bdc7c": "tox_box_act_2", - "802bdcc8": "tox_box_act_3", - "802bdd14": "tox_box_act_0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "set_obj_anim_with_accel_and_sound", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "tuxies_mother_act_2", - "802bef8c": "tuxies_mother_act_1", - "802bf1d8": "tuxies_mother_act_0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "small_penguin_dive_with_mario", - "802bf474": "small_penguin_act_2", - "802bf57c": "small_penguin_act_1", - "802bf648": "small_penguin_act_3", - "802bf6e4": "small_penguin_act_4", - "802bf760": "small_penguin_act_0", - "802bf90c": "small_penguin_act_5", - "802bfa14": "small_penguin_free_actions", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "fish_act_spawn", - "802bfeb8": "fish_act_respawn", - "802bff20": "fish_act_init", - "802bff3c": "bhv_large_fish_group_loop", - "802bff68": "fish_regroup", - "802c00b4": "fish_group_act_rotation", - "802c0348": "fish_group_act_move", - "802c06a8": "fish_group_act_animate", - "802c0768": "bhv_fish_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "bub_spawner_act_0", - "802c0b50": "bub_spawner_act_1", - "802c0ba4": "bub_spawner_act_2", - "802c0bc4": "bub_spawner_act_3", - "802c0be0": "bhv_bub_spawner_loop", - "802c0c0c": "bub_move_vertically", - "802c0cd4": "bub_act_0", - "802c0d44": "bub_act_1", - "802c0f90": "bub_act_2", - "802c1204": "bhv_bub_loop", - "802c12c0": "bhv_rotating_exclamation_box_loop", - "802c1308": "exclamation_box_act_0", - "802c13ec": "exclamation_box_act_1", - "802c14b0": "exclamation_box_act_2", - "802c15b8": "exclamation_box_act_3", - "802c17bc": "exclamation_box_spawn_contents", - "802c18d0": "exclamation_box_act_4", - "802c1988": "exclamation_box_act_5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "bhv_pole_base_loop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "update_angle_from_move_flags", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "whomp_play_sfx_from_pound_animation", - "802c6d6c": "whomp_act_0", - "802c6ec8": "whomp_act_7", - "802c6fb0": "whomp_act_1", - "802c710c": "whomp_act_2", - "802c7254": "whomp_act_3", - "802c72b4": "whomp_act_4", - "802c7380": "whomp_act_5", - "802c7428": "king_whomp_on_ground", - "802c75fc": "whomp_on_ground", - "802c76d4": "whomp_act_6", - "802c7858": "whomp_act_8", - "802c7998": "whomp_act_9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_spawn_droplets", - "802c7b14": "bhv_water_droplet_loop", - "802c7cac": "bhv_idle_water_wave_loop", - "802c7d40": "bhv_water_droplet_splash_init", - "802c7d90": "bhv_bubble_splash_init", - "802c7dfc": "bhv_shallow_water_splash_init", - "802c7e5c": "bhv_wave_trail_shrink", - "802c7f98": "bhv_strong_wind_particle_loop", - "802c81b4": "cur_obj_spawn_strong_wind_particles", - "802c834c": "bhv_sl_snowman_wind_loop", - "802c863c": "bhv_sl_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "debug_print_obj_collision", - "802c8fe4": "detect_object_hitbox_overlap", - "802c91ec": "detect_object_hurtbox_overlap", - "802c9388": "clear_object_collision", - "802c93f8": "check_collision_in_list", - "802c94ac": "check_player_object_collision", - "802c95b4": "check_pushable_object_collision", - "802c9630": "check_destructive_object_collision", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "cur_obj_play_sound_1", - "802ca1e0": "cur_obj_play_sound_2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "stub_debug_1", - "802ca380": "stub_debug_2", - "802ca390": "stub_debug_3", - "802ca3a0": "stub_debug_4", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_debug_5", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "debug_enemy_unknown", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stop_other_paintings", - "802d2a74": "painting_mario_y", - "802d2b08": "painting_mario_z", - "802d2b84": "painting_ripple_y", - "802d2c40": "painting_nearest_4th", - "802d2d80": "painting_mario_x", - "802d2dfc": "painting_ripple_x", - "802d2eb8": "painting_state", - "802d2ffc": "wall_painting_proximity_idle", - "802d319c": "wall_painting_proximity_rippling", - "802d327c": "wall_painting_continuous_idle", - "802d341c": "wall_painting_continuous_rippling", - "802d34fc": "floor_painting_proximity_idle", - "802d36ac": "floor_painting_proximity_rippling", - "802d379c": "floor_painting_continuous_idle", - "802d393c": "floor_painting_continuous_rippling", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_state", - "802d3cec": "calculate_ripple_at_point", - "802d3e6c": "ripple_if_movable", - "802d3ee4": "painting_generate_mesh", - "802d404c": "painting_calculate_triangle_normals", - "802d43f8": "normalize_component", - "802d44bc": "painting_average_vertex_normals", - "802d47d0": "render_painting", - "802d4edc": "painting_model_view_transform", - "802d50dc": "painting_ripple_image", - "802d5354": "painting_ripple_env_mapped", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "move_ddd_painting", - "802d58e4": "set_painting_layer", - "802d593c": "display_painting", - "802d59a8": "wall_painting_update", - "802d5aa0": "floor_painting_update", - "802d5b98": "geo_painting_draw", - "802d5d0c": "geo_painting_update", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "coin_step", - "802e5e6c": "moving_coin_flicker", - "802e5ea4": "coin_collected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "blue_coin_sliding_away_from_mario", - "802e63ec": "blue_coin_sliding_slow_down", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "bobomb_spawn_coin", - "802e6af8": "bobomb_act_explode", - "802e6bd4": "bobomb_check_interactions", - "802e6cf0": "bobomb_act_patrol", - "802e6dc8": "bobomb_act_chase_mario", - "802e6e84": "bobomb_act_launched", - "802e6ed8": "generic_bobomb_free_loop", - "802e7020": "stationary_bobomb_free_loop", - "802e7134": "bobomb_free_loop", - "802e7180": "bobomb_held_loop", - "802e7220": "bobomb_dropped_loop", - "802e7280": "bobomb_thrown_loop", - "802e7324": "curr_obj_random_blink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "bobomb_buddy_act_idle", - "802e7814": "bobomb_buddy_cannon_dialog", - "802e79dc": "bobomb_buddy_act_talk", - "802e7b00": "bobomb_buddy_act_turn_to_talk", - "802e7bb0": "bobomb_buddy_actions", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "cannon_door_act_opening", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "whirlpool_set_hitbox", - "802e7fec": "whirpool_orient_graph", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "butterfly_step", - "802e9278": "butterfly_calculate_angle", - "802e9470": "butterfly_act_rest", - "802e94e4": "butterfly_act_follow_mario", - "802e9548": "butterfly_act_return_home", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "hoot_find_next_floor", - "802e98c0": "hoot_floor_bounce", - "802e9a4c": "hoot_free_step", - "802e9cf4": "hoot_player_set_yaw", - "802e9d98": "hoot_carry_step", - "802e9f60": "hoot_surface_collision", - "802ea144": "hoot_act_ascent", - "802ea258": "hoot_action_loop", - "802ea3f0": "hoot_turn_to_home", - "802ea4ec": "hoot_awake_loop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "bully_check_mario_collision", - "802eb288": "bully_act_chase_mario", - "802eb3f0": "bully_act_knockback", - "802eb510": "bully_act_back_up", - "802eb5c4": "bully_backup_check", - "802eb630": "bully_play_stomping_sound", - "802eb744": "bully_step", - "802eb7e0": "bully_spawn_coin", - "802eb8b0": "bully_act_level_death", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "big_bully_spawn_minion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "big_bully_spawn_star", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "water_ring_calc_mario_dist", - "802ec030": "water_ring_init", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "water_ring_check_collection", - "802ec3d0": "water_ring_set_scale", - "802ec4e0": "water_ring_act_collected", - "802ec59c": "water_ring_act_not_collected", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "spawn_manta_ray_ring_manager", - "802ec818": "water_ring_spawner_act_inactive", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "manta_water_ring_act_not_collected", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "celeb_star_act_spin_around_mario", - "802ed28c": "celeb_star_act_face_camera", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "moneybag_check_mario_collision", - "802ee268": "moneybag_jump", - "802ee46c": "moneybag_act_move_around", - "802ee598": "moneybag_act_return_home", - "802ee728": "moneybag_act_disappear", - "802ee778": "moneybag_act_death", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "bowling_ball_set_hitbox", - "802eea7c": "bowling_ball_set_waypoints", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "set_rolling_sphere_hitbox", - "802f0bd4": "adjust_rolling_face_pitch", - "802f0c94": "snowmans_bottom_act_1", - "802f0df0": "snowmans_bottom_act_2", - "802f0fa8": "snowmans_bottom_act_3", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "boulder_act_1", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "cap_set_hitbox", - "802f19c8": "cap_despawn", - "802f1a10": "cap_check_quicksand", - "802f1bb8": "cap_sink_quicksand", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "cap_scale_vertically", - "802f1e5c": "wing_vanish_cap_act_0", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "metal_cap_act_0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "normal_cap_set_save_flags", - "802f2284": "normal_cap_act_0", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "spawn_star", - "802f2b88": "spawn_default_star", - "802f2bd4": "spawn_red_coin_cutscene_star", - "802f2c24": "spawn_no_exit_star", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "rolling_log_roll_log", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "volcano_act_1", - "802f39b4": "volcano_act_3", - "802f3a30": "bhv_volcano_trap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "one_up_loop_in_air", - "802f3ea8": "pole_1up_move_towards_mario", - "802f401c": "one_up_move_away_from_mario", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "sliding_1up_move", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "controllable_platform_act_1", - "802f4ce0": "controllable_platform_act_2", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "controllable_platform_hit_wall", - "802f5068": "controllable_platform_check_walls", - "802f52c0": "controllable_platform_shake_on_wall_hit", - "802f547c": "controllable_platform_tilt_from_mario", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "small_breakable_box_spawn_dust", - "802f5e44": "small_breakable_box_act_move", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "floating_platform_find_home_y", - "802f665c": "floating_platform_act_0", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "manta_ray_move", - "802f7068": "manta_ray_act_spawn_ring", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "spawn_treasure_chest", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "bhv_yoshi_loop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "func_80306ED4", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "geo_snufit_move_mask", - "8030d9ac": "geo_snufit_scale_body", - "8030da14": "snufit_act_idle", - "8030db38": "snufit_act_shoot", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L_U_8031C200", - "8031c23c": "L_U_8031C23C", - "8031c298": "L_U_8031C298", - "8031c2dc": "L_U_8031C2DC", - "8031c328": "L_U_8031C328", - "8031c36c": "L_U_8031C36C", - "8031c3bc": "L_U_8031C3BC", - "8031c3e8": "L_U_8031C3E8", - "8031c454": "L_U_8031C454", - "8031c4a4": "L_U_8031C4A4", - "8031c5c8": "L_U_8031C5C8", - "8031c698": "L_U_8031C698", - "8031c6a0": "L_U_8031C6A0", - "8031cbe0": "L_U_8031CBE0", - "8031cbec": "L_U_8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e578": "sequence_player_fade_out_internal", - "8031e5c0": "func_8031D690", - "8031e60c": "func_8031D6E4", - "8031e6a4": "func_8031D7B0", - "8031e710": "func_8031D838", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031eb30": "process_sound_request", - "8031edec": "process_all_sound_requests", - "8031ee70": "func_8031DFE8", - "8031ef6c": "func_8031E0E4", - "8031eff4": "func_8031E16C", - "8031f810": "get_sound_pan", - "8031f96c": "get_sound_dynamics", - "8031fb20": "get_sound_freq_scale", - "8031fbe8": "get_sound_reverb", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "803217a8": "disable_all_sequence_players", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "D_8032CE9C", - "8032de4c": "D_8032CEEC", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "803306dc": "sCageUkikiPath", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "D_8032FCE8", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "sWaterSplashDropletParams", - "80330d30": "sShallowWaterSplashDropletParams", - "80330d54": "sWaterDropletFishParams", - "80330d78": "sShallowWaterWaveDropletParams", - "80330d9c": "sStrongWindParticleHitbox", - "80330dac": "sSLWalkingPenguinErraticSteps", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "sHmcPaintings", - "80331308": "sInsideCastlePaintings", - "80331344": "sTtmPaintings", - "8033134c": "sPaintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b10": "D_80331A00", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "D_80334810", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "unknown", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338da0": "D_80337BB0", - "80338da8": "D_80337BB8", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "D_80339F50", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gBehCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361270": "sGrabReleaseState", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "gPaintingMesh", - "80361314": "gPaintingTriNorms", - "80361318": "gRipplingPainting", - "8036131c": "gDddPaintingStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "D_80365CE0", - "8036708c": "D_80365D1C", - "80367090": "D_80365D20", - "80367091": "_osCont_numControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "__osViIntrCount", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "RandomU16", - "80383cb4": "RandomFloat", - "80383d1c": "RandomSign", - "80383d68": "func_80383D68", - "80385bf0": "stub_80385BF0", - "80385c00": "cur_object_exec_behavior", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "small_water_splash_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "idle_water_wave_geo", - "17000168": "wave_trail_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleMario", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvWaterWaves", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvWallTinyStarParticleSpawn", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvPoundTinyStarParticleSpawn", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvPunchTinyTriangleSpawn", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvWaterMistSpawn", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvPoundWhitePuffs", - "13000e3c": "bhvGroundSand", - "13000e58": "bhvGroundSnow", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFlameMario", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvSnowLeafParticleSpawn", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFish", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMarioDustGenerator", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSpecialTripleJumpSparkles", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDroplet", - "13002c7c": "bhvWaterDropletSplash", - "13002cb0": "bhvBubbleSplash", - "13002ce0": "bhvIdleWaterWave", - "13002d28": "bhvObjectWaterSplash", - "13002d50": "bhvShallowWaterWave", - "13002d7c": "bhvShallowWaterSplash", - "13002db0": "bhvObjectWaveTrail", - "13002dc0": "bhvWaveTrail", - "13002e04": "bhvTinyStrongWindParticle", - "13002e20": "bhvStrongWindParticle", - "13002e3c": "bhvSLSnowmanWind", - "13002e58": "bhvSLWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvWarps60", - "13002f64": "bhvWarps64", - "13002f68": "bhvWarps68", - "13002f6c": "bhvWarps6C", - "13002f70": "bhvWarps70", - "13002f74": "bhvWarps74", - "13002f78": "bhvWarps78", - "13002f7c": "bhvWarps7C", - "13002f80": "bhvWarps80", - "13002f84": "bhvWarps84", - "13002f88": "bhvWarps88", - "13002f8c": "bhvWarps8C", - "13002f90": "bhvWarps90", - "13002f94": "bhvWarps94", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000000": ["D_80000000"], + "a4000000": ["D_A4000000"], + "a40004c0": ["D_A40004C0"], + "a4000774": ["D_A4000774"], + "a4001000": ["D_A4001000"], + "a4040010": ["D_A4040010"], + "a4080000": ["D_A4080000"], + "a4300000": ["D_A4300000"], + "a4300004": ["D_A4300004"], + "a4300008": ["D_A4300008"], + "a430000c": ["D_A430000C"], + "a4400010": ["D_A4400010"], + "a450000c": ["D_A450000C"], + "a4600000": ["D_A4600000"], + "a4600004": ["D_A4600004"], + "a460000c": ["D_A460000C"], + "a4600010": ["D_A4600010"], + "a4700000": ["D_A4700000"], + "a4700010": ["D_A4700010"], + "a4800018": ["D_A4800018"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802f69cc": ["func_sh_802F69CC"], + "8024cc7c": ["func_sh_8024CC7C", "mario_check_object_grab"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "entry_point"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["unknown_main_func"], + "802461cc": ["stub_main_1"], + "802461dc": ["stub_main_2"], + "802461ec": ["stub_main_3"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["alloc_pool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["send_sp_task_message"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["main_func"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["draw_reset_bars"], + "80247f08": ["rendering_init"], + "80247fdc": ["config_gfx_pool"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["reset_volume"], + "80248c58": ["lower_background_noise"], + "80248ce8": ["raise_background_noise"], + "80248d78": ["disable_background_sound"], + "80248dc0": ["enable_background_sound"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["fadeout_music"], + "8024927c": ["fadeout_level_music"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_pause"], + "80249764": ["set_play_mode"], + "8024978c": ["warp_special"], + "802497b8": ["fade_into_special_warp"], + "8024982c": ["stub_level_update_1"], + "8024983c": ["load_level_init_text"], + "8024995c": ["init_door_warp"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["warp_area"], + "8024a18c": ["warp_level"], + "8024a1d8": ["warp_credits"], + "8024a374": ["check_instant_warp"], + "8024a584": ["music_changed_through_warp"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_obj_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["should_push_or_pull_door"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_strong_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["mario_can_talk"], + "8024ff04": ["check_read_sign"], + "80250098": ["check_npc_talk"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["stub_mario_step_1"], + "802550b0": ["stub_mario_step_2"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["bhv_end_peach_loop"], + "802570dc": ["bhv_end_toad_loop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["climb_up_ledge"], + "8025f560": ["update_ledge_climb_camera"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["check_common_idle_cancels"], + "80260aac": ["check_common_hold_idle_cancels"], + "80260cb4": ["act_idle"], + "80260f94": ["play_anim_sound"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["stopping_step"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["act_unknown_03F"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["act_unknown_026"], + "80262bc4": ["landing_step"], + "80262c34": ["check_common_landing_cancels"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["act_unknown_034"], + "802631f0": ["act_unknown_035"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["check_common_stationary_cancels"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["tilt_body_running"], + "80263ee4": ["play_step_sound"], + "80264024": ["align_with_floor"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["anim_and_audio_for_walk"], + "80265b1c": ["anim_and_audio_for_hold_walk"], + "80265d90": ["anim_and_audio_for_heavy_walk"], + "80265df8": ["push_or_sidle_wall"], + "80266038": ["tilt_body_walking"], + "802661cc": ["tilt_body_ground_shell"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["tilt_body_butt_slide"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["play_knockback_sound"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["check_wall_kick"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_envfx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhv_toad_message_loop"], + "80276910": ["bhv_toad_message_init"], + "80276bb8": ["bhv_unlock_door_star_init"], + "80276ccc": ["bhv_unlock_door_star_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["load_segment_decompress_heap"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["load_patchable_table"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["override_viewport_and_clip"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["area_get_warp_node_from_params"], + "8027aa74": ["load_obj_warp_nodes"], + "8027ab04": ["clear_areas"], + "8027ad74": ["clear_area_graph_nodes"], + "8027ae44": ["load_area"], + "8027af48": ["unload_area"], + "8027afbc": ["load_mario_area"], + "8027b038": ["unload_mario_area"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["stub_camera_2"], + "80287dd4": ["stub_camera_3"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["stub_camera_4"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["spawn_child_obj_relative"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_obj_list_processor_1"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["geo_update_projectile_pos_from_parent"], + "8029d924": ["geo_update_layer_transparency"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["obj_update_pos_from_parent_transformation"], + "8029dda8": ["obj_apply_scale_to_matrix"], + "8029de80": ["create_transformation_from_matrices"], + "8029e1b0": ["obj_set_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["cur_obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["cur_obj_rotate_yaw_toward"], + "8029e694": ["obj_angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["obj_set_parent_relative_pos"], + "8029e914": ["obj_set_pos"], + "8029e96c": ["obj_set_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["spawn_obj_with_transform_flags"], + "8029eb04": ["spawn_water_droplet"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["cur_obj_move_using_vel"], + "8029f0c8": ["obj_copy_graph_y_offset"], + "8029f0e0": ["obj_copy_pos_and_angle"], + "8029f120": ["obj_copy_pos"], + "8029f148": ["obj_copy_angle"], + "8029f188": ["obj_set_gfx_pos_from_pos"], + "8029f1b0": ["obj_init_animation"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["obj_apply_scale_to_transform"], + "8029f3a8": ["obj_copy_scale"], + "8029f3d0": ["obj_scale_xyz"], + "8029f404": ["obj_scale"], + "8029f430": ["cur_obj_scale"], + "8029f464": ["cur_obj_init_animation"], + "8029f4b4": ["cur_obj_init_animation_with_sound"], + "8029f514": ["cur_obj_init_animation_with_accel_and_sound"], + "8029f59c": ["obj_init_animation_with_sound"], + "8029f600": ["cur_obj_enable_rendering_and_become_tangible"], + "8029f620": ["cur_obj_enable_rendering"], + "8029f644": ["cur_obj_disable_rendering_and_become_intangible"], + "8029f66c": ["cur_obj_disable_rendering"], + "8029f694": ["cur_obj_unhide"], + "8029f6bc": ["cur_obj_hide"], + "8029f6e0": ["cur_obj_set_pos_relative"], + "8029f7d8": ["cur_obj_set_pos_relative_to_parent"], + "8029f820": ["cur_obj_enable_rendering_2"], + "8029f848": ["cur_obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_face_angle_to_move_angle"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["cur_obj_nearest_object_with_behavior"], + "8029f998": ["cur_obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["cur_obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["cur_obj_find_nearby_held_actor"], + "8029fdb4": ["cur_obj_change_action"], + "8029fe00": ["cur_obj_set_vel_from_mario_vel"], + "8029fe6c": ["cur_obj_reverse_animation"], + "8029fea4": ["cur_obj_extend_animation_if_at_end"], + "8029ff04": ["cur_obj_check_if_near_animation_end"], + "8029ffa4": ["cur_obj_check_if_at_animation_end"], + "802a0008": ["cur_obj_check_anim_frame"], + "802a0050": ["cur_obj_check_anim_frame_in_range"], + "802a00ac": ["cur_obj_check_frame_prior_current_frame"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["cur_obj_set_y_vel_and_animation"], + "802a01d8": ["cur_obj_unrender_and_reset_state"], + "802a0380": ["cur_obj_get_thrown_or_placed"], + "802a0474": ["cur_obj_get_dropped"], + "802a04c0": ["cur_obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["cur_obj_clear_interact_status_flag"], + "802a0568": ["obj_mark_for_deletion"], + "802a057c": ["cur_obj_disable"], + "802a05b4": ["cur_obj_become_intangible"], + "802a05d4": ["cur_obj_become_tangible"], + "802a05f0": ["obj_become_tangible"], + "802a0604": ["cur_obj_update_floor_height"], + "802a064c": ["cur_obj_update_floor_height_and_get_floor"], + "802a079c": ["cur_obj_apply_drag_xz"], + "802a0e68": ["cur_obj_move_y"], + "802a113c": ["cur_obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["cur_obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["cur_obj_move_y_with_terminal_vel"], + "802a1308": ["cur_obj_compute_vel_xz"], + "802a1370": ["increment_velocity_toward_range"], + "802a1424": ["obj_check_if_collided_with_object"], + "802a148c": ["cur_obj_set_behavior"], + "802a14c4": ["obj_set_behavior"], + "802a14fc": ["cur_obj_has_behavior"], + "802a1554": ["obj_has_behavior"], + "802a15ac": ["cur_obj_lateral_dist_from_mario_to_home"], + "802a1634": ["cur_obj_lateral_dist_to_home"], + "802a16ac": ["cur_obj_outside_home_square"], + "802a1774": ["cur_obj_outside_home_rectangle"], + "802a184c": ["cur_obj_set_pos_to_home"], + "802a188c": ["cur_obj_set_pos_to_home_and_stop"], + "802a18dc": ["cur_obj_shake_y"], + "802a1930": ["cur_obj_start_cam_event"], + "802a1960": ["set_mario_interact_hoot_if_in_range"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["cur_obj_set_hitbox_radius_and_height"], + "802a19f0": ["cur_obj_set_hurtbox_radius_and_height"], + "802a1b34": ["obj_spawn_loot_blue_coins"], + "802a1b8c": ["obj_spawn_loot_yellow_coins"], + "802a1bdc": ["cur_obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["cur_obj_abs_y_dist_to_home"], + "802a1cc4": ["cur_obj_advance_looping_anim"], + "802a1f3c": ["cur_obj_resolve_wall_collisions"], + "802a2320": ["cur_obj_update_floor_and_walls"], + "802a2348": ["cur_obj_move_standard"], + "802a25b4": ["cur_obj_move_using_vel_and_gravity"], + "802a2644": ["cur_obj_move_using_fvel_and_gravity"], + "802a2674": ["obj_set_pos_relative"], + "802a2748": ["cur_obj_angle_to_home"], + "802a27b0": ["obj_set_gfx_pos_at_obj_pos"], + "802a2804": ["obj_translate_local"], + "802a2930": ["obj_build_transform_from_pos_and_angle"], + "802a2a18": ["obj_set_throw_matrix_from_transform"], + "802a2a84": ["obj_build_transform_relative_to_parent"], + "802a2b28": ["obj_create_transform_from_self"], + "802a2b6c": ["cur_obj_rotate_move_angle_using_vel"], + "802a2bc4": ["cur_obj_rotate_face_angle_using_vel"], + "802a2c1c": ["cur_obj_set_face_angle_to_move_angle"], + "802a2c5c": ["cur_obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["obj_scale_random"], + "802a2fc0": ["obj_translate_xyz_random"], + "802a308c": ["obj_translate_xz_random"], + "802a31e0": ["cur_obj_set_pos_via_transform"], + "802a3268": ["cur_obj_reflect_move_angle_off_wall"], + "802a32ac": ["cur_obj_spawn_particles"], + "802a34a4": ["obj_set_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["cur_obj_wait_then_blink"], + "802a3754": ["cur_obj_is_mario_ground_pounding_platform"], + "802a37ac": ["spawn_mist_particles"], + "802a37dc": ["spawn_mist_particles_with_sound"], + "802a3818": ["cur_obj_push_mario_away"], + "802a390c": ["cur_obj_push_mario_away_from_cylinder"], + "802a399c": ["bhv_dust_smoke_loop"], + "802a3a4c": ["cur_obj_set_direction_table"], + "802a3a88": ["cur_obj_progress_direction_table"], + "802a3b28": ["stub_obj_helpers_3"], + "802a3b40": ["cur_obj_scale_over_time"], + "802a3c18": ["cur_obj_set_pos_to_home_with_debug"], + "802a3cec": ["stub_obj_helpers_4"], + "802a3cfc": ["cur_obj_is_mario_on_platform"], + "802a3d40": ["cur_obj_shake_y_until"], + "802a3dd4": ["cur_obj_move_up_and_down"], + "802a3e30": ["cur_obj_call_action_function"], + "802a3ef8": ["spawn_base_star_with_no_lvl_exit"], + "802a3f24": ["bit_shift_left"], + "802a3f48": ["cur_obj_mario_far_away"], + "802a404c": ["is_mario_moving_fast_or_in_air"], + "802a40b8": ["is_item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["cur_obj_enable_rendering_if_mario_in_room"], + "802a4360": ["cur_obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["obj_explode_and_spawn_coins"], + "802a44f4": ["obj_set_collision_data"], + "802a452c": ["cur_obj_if_hit_wall_bounce_away"], + "802a4564": ["cur_obj_hide_if_mario_far_away_y"], + "802a45e4": ["geo_offset_klepto_held_object"], + "802a462c": ["geo_offset_klepto_debug"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["cur_obj_can_mario_activate_textbox"], + "802a48bc": ["cur_obj_can_mario_activate_textbox_2"], + "802a4960": ["cur_obj_update_dialog"], + "802a4be4": ["cur_obj_update_dialog_with_cutscene"], + "802a4f04": ["cur_obj_has_model"], + "802a4f58": ["cur_obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["cur_obj_shake_screen"], + "802a513c": ["obj_attack_collided_from_other_object"], + "802a51ac": ["cur_obj_was_attacked_or_ground_pounded"], + "802a5228": ["obj_copy_behavior_params"], + "802a5248": ["cur_obj_init_animation_and_anim_frame"], + "802a5288": ["cur_obj_init_animation_and_check_if_near_end"], + "802a52c4": ["cur_obj_init_animation_and_extend_if_at_end"], + "802a52f8": ["cur_obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["cur_obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["cur_obj_check_interacted"], + "802a5524": ["cur_obj_spawn_loot_blue_coin"], + "802a5588": ["cur_obj_spawn_star_at_y_offset"], + "802a5620": ["star_door_update_pos"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["mr_i_piranha_particle_act_0"], + "802a5a44": ["mr_i_piranha_particle_act_1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["spawn_mr_i_particle"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["mr_i_act_3"], + "802a6518": ["mr_i_act_2"], + "802a68a0": ["mr_i_act_1"], + "802a6ad8": ["mr_i_act_0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["cap_switch_act_0"], + "802a7020": ["cap_switch_act_1"], + "802a708c": ["cap_switch_act_2"], + "802a7160": ["cap_switch_act_3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["geo_update_held_mario_pos"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["king_bobomb_act_0"], + "802a7384": ["mario_is_far_below_object"], + "802a73d8": ["king_bobomb_act_2"], + "802a7598": ["king_bobomb_act_3"], + "802a7804": ["king_bobomb_act_1"], + "802a78d8": ["king_bobomb_act_6"], + "802a7a60": ["king_bobomb_act_7"], + "802a7b1c": ["king_bobomb_act_8"], + "802a7b5c": ["king_bobomb_act_4"], + "802a7d14": ["king_bobomb_act_5"], + "802a7fbc": ["king_bobomb_move"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["scale_bubble_random"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["scale_bubble_sin"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["opened_cannon_act_0"], + "802a8f40": ["opened_cannon_act_4"], + "802a9114": ["opened_cannon_act_6"], + "802a92fc": ["opened_cannon_act_5"], + "802a93f8": ["opened_cannon_act_1"], + "802a9440": ["opened_cannon_act_2"], + "802a9460": ["opened_cannon_act_3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["common_anchor_mario_behavior"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["unknown_chuckya_function"], + "802a98c4": ["approach_forward_vel"], + "802a9994": ["chuckya_act_0"], + "802a9d08": ["chuckya_act_1"], + "802a9f54": ["chuckya_act_3"], + "802a9fc8": ["chuckya_act_2"], + "802aa02c": ["chuckya_move"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["check_mario_attacking"], + "802aa3c8": ["init_kickable_board_rock"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["set_koopa_shell_underwater_hitbox"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["bhv_fading_warp_loop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["spawn_mist_particles_variable"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["set_sparkle_spawn_star_hitbox"], + "802ab060": ["set_home_to_mario"], + "802ab158": ["set_y_home_to_pos"], + "802ab18c": ["slow_star_rotation"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["spawn_coin_in_formation"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["coin_inside_boo_act_1"], + "802ac15c": ["coin_inside_boo_act_0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["door_animation_and_reset"], + "802ac958": ["set_door_camera_event"], + "802ac9d0": ["play_door_open_noise"], + "802aca6c": ["play_warp_door_open_noise"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["grindel_thwomp_act_4"], + "802ad10c": ["grindel_thwomp_act_2"], + "802ad1a4": ["grindel_thwomp_act_3"], + "802ad238": ["grindel_thwomp_act_1"], + "802ad2d0": ["grindel_thwomp_act_0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["tumbling_bridge_act_1"], + "802ad76c": ["tumbling_bridge_act_2"], + "802ad7f4": ["tumbling_bridge_act_3"], + "802ad828": ["tumbling_bridge_act_0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["elevator_starting_shake"], + "802ad8f0": ["elevator_act_0"], + "802ada4c": ["elevator_act_1"], + "802adb88": ["elevator_act_2"], + "802adce4": ["elevator_act_4"], + "802add70": ["elevator_act_3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["spawn_mist_from_global"], + "802ae360": ["bhv_ground_sand_init"], + "802ae394": ["spawn_smoke_with_velocity"], + "802ae45c": ["clear_particle_flags"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["spawn_wind_particles"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["spawn_and_init_wf_platforms"], + "802b039c": ["spawn_wf_platform_group"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["square_plat_set_yaw_until_timer"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["check_if_moving_over_floor"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["breakable_box_init"], + "802b17f4": ["hidden_breakable_box_actions"], + "802b19d8": ["hidden_unbreakable_box_actions"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["geo_move_mario_part_from_parent"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["heave_ho_act_1"], + "802b1e6c": ["heave_ho_act_2"], + "802b1ff4": ["heave_ho_act_3"], + "802b20a0": ["heave_ho_act_0"], + "802b2154": ["heave_ho_move"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["jumping_box_act_0"], + "802b27d8": ["jumping_box_act_1"], + "802b2824": ["jumping_box_free_update"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["spawn_sparkle_particles"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["arc_to_goal_pos"], + "802b3250": ["grand_star_zero_velocity"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["bullet_bill_act_0"], + "802b38b8": ["bullet_bill_act_1"], + "802b394c": ["bullet_bill_act_2"], + "802b3b08": ["bullet_bill_act_3"], + "802b3b24": ["bullet_bill_act_4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["bowser_tail_anchor_act_0"], + "802b3cdc": ["bowser_tail_anchor_act_1"], + "802b3d10": ["bowser_tail_anchor_act_2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["bowser_spawn_shockwave"], + "802b41fc": ["bowser_bounce"], + "802b4288": ["bowser_set_anim_look_up_and_walk"], + "802b4300": ["bowser_set_anim_slow_gait"], + "802b4368": ["bowser_set_anim_look_down"], + "802b43dc": ["bowser_initialize_action"], + "802b4478": ["bowser_act_text_wait"], + "802b44bc": ["bowser_act_intro_walk"], + "802b45f4": ["bowser_bitdw_act_controller"], + "802b473c": ["bowser_bitfs_act_controller"], + "802b48d4": ["bowser_general_bits_act_controller"], + "802b4a1c": ["bowser_set_act_jump"], + "802b4a3c": ["bowser_bits_act_controller"], + "802b4af4": ["bowser_reset_fallen_off_stage"], + "802b4bac": ["bowser_act_unused_slow_walk"], + "802b4be8": ["bowser_act_default"], + "802b4ca4": ["bowser_act_breath_fire"], + "802b4d14": ["bowser_act_walk_to_mario"], + "802b4f00": ["bowser_act_teleport"], + "802b5104": ["bowser_act_spit_fire_into_sky"], + "802b5218": ["bowser_act_hit_mine"], + "802b53f4": ["bowser_set_anim_in_air"], + "802b5444": ["bowser_land"], + "802b5554": ["bowser_short_second_hop"], + "802b55cc": ["bowser_act_jump"], + "802b5798": ["bowser_act_jump_towards_mario"], + "802b58bc": ["bowser_act_hit_edge"], + "802b59cc": ["bowser_act_spit_fire_onto_floor"], + "802b5aec": ["bowser_turn_on_timer"], + "802b5c00": ["bowser_act_turn_from_edge"], + "802b5c40": ["bowser_act_charge_mario"], + "802b5f6c": ["bowser_check_hit_mine"], + "802b5fec": ["bowser_act_thrown_dropped"], + "802b611c": ["bowser_set_goal_invisible"], + "802b6190": ["bowser_act_jump_onto_stage"], + "802b6568": ["bowser_act_dance"], + "802b65d0": ["bowser_spawn_grand_star_key"], + "802b6670": ["bowser_fly_back_dead"], + "802b6730": ["bowser_dead_bounce"], + "802b67d4": ["bowser_dead_wait_for_mario"], + "802b6878": ["bowser_dead_twirl_into_trophy"], + "802b6a10": ["bowser_dead_hide"], + "802b6a78": ["bowser_dead_not_bits_end"], + "802b6bac": ["bowser_dead_bits_end"], + "802b6cf0": ["bowser_act_dead"], + "802b6e40": ["bowser_tilt_platform"], + "802b6ee0": ["bowser_act_ride_tilting_platform"], + "802b711c": ["bowser_check_fallen_off_stage"], + "802b71e4": ["bowser_free_update"], + "802b72d4": ["bowser_held_update"], + "802b7418": ["bowser_thrown_dropped_update"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["geo_update_body_rot_from_parent"], + "802b7a20": ["bowser_open_eye_switch"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["geo_bits_bowser_coloring"], + "802b7e68": ["falling_bowser_plat_act_0"], + "802b7ef0": ["falling_bowser_plat_act_1"], + "802b8024": ["falling_bowser_plat_act_2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["bowser_flame_despawn"], + "802b8434": ["bowser_flame_should_despawn"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["bowser_flame_move"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_movement_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["vec3f_copy_2"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["checkerboard_plat_act_move_y"], + "802b9af8": ["checkerboard_plat_act_rotate"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["water_level_pillar_undrained"], + "802ba13c": ["water_level_pillar_drained"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["geo_scale_bowser_key"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["geo_update_projectile_pos_from_parent_copy"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["lll_octagonal_mesh_move"], + "802bbfd8": ["lll_octagonal_mesh_find_y_offset"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["fire_bar_spawn_flames"], + "802bc4f4": ["fire_bar_act_0"], + "802bc538": ["fire_bar_act_1"], + "802bc590": ["fire_bar_act_2"], + "802bc5fc": ["fire_bar_act_3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["hexagonal_ring_spawn_flames"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["sinking_rectangular_plat_actions"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["koopa_shell_spawn_water_drop"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["koopa_shell_spawn_sparkles"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["tox_box_shake_screen"], + "802bd91c": ["tox_box_move"], + "802bdb04": ["tox_box_act_4"], + "802bdb3c": ["tox_box_act_5"], + "802bdb74": ["tox_box_act_6"], + "802bdbac": ["tox_box_act_7"], + "802bdbe4": ["tox_box_act_1"], + "802bdc7c": ["tox_box_act_2"], + "802bdcc8": ["tox_box_act_3"], + "802bdd14": ["tox_box_act_0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["set_obj_anim_with_accel_and_sound"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["tuxies_mother_act_2"], + "802bef8c": ["tuxies_mother_act_1"], + "802bf1d8": ["tuxies_mother_act_0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["small_penguin_dive_with_mario"], + "802bf474": ["small_penguin_act_2"], + "802bf57c": ["small_penguin_act_1"], + "802bf648": ["small_penguin_act_3"], + "802bf6e4": ["small_penguin_act_4"], + "802bf760": ["small_penguin_act_0"], + "802bf90c": ["small_penguin_act_5"], + "802bfa14": ["small_penguin_free_actions"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["fish_act_spawn"], + "802bfeb8": ["fish_act_respawn"], + "802bff20": ["fish_act_init"], + "802bff3c": ["bhv_large_fish_group_loop"], + "802bff68": ["fish_regroup"], + "802c00b4": ["fish_group_act_rotation"], + "802c0348": ["fish_group_act_move"], + "802c06a8": ["fish_group_act_animate"], + "802c0768": ["bhv_fish_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["bub_spawner_act_0"], + "802c0b50": ["bub_spawner_act_1"], + "802c0ba4": ["bub_spawner_act_2"], + "802c0bc4": ["bub_spawner_act_3"], + "802c0be0": ["bhv_bub_spawner_loop"], + "802c0c0c": ["bub_move_vertically"], + "802c0cd4": ["bub_act_0"], + "802c0d44": ["bub_act_1"], + "802c0f90": ["bub_act_2"], + "802c1204": ["bhv_bub_loop"], + "802c12c0": ["bhv_rotating_exclamation_box_loop"], + "802c1308": ["exclamation_box_act_0"], + "802c13ec": ["exclamation_box_act_1"], + "802c14b0": ["exclamation_box_act_2"], + "802c15b8": ["exclamation_box_act_3"], + "802c17bc": ["exclamation_box_spawn_contents"], + "802c18d0": ["exclamation_box_act_4"], + "802c1988": ["exclamation_box_act_5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["bhv_pole_base_loop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["update_angle_from_move_flags"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["whomp_play_sfx_from_pound_animation"], + "802c6d6c": ["whomp_act_0"], + "802c6ec8": ["whomp_act_7"], + "802c6fb0": ["whomp_act_1"], + "802c710c": ["whomp_act_2"], + "802c7254": ["whomp_act_3"], + "802c72b4": ["whomp_act_4"], + "802c7380": ["whomp_act_5"], + "802c7428": ["king_whomp_on_ground"], + "802c75fc": ["whomp_on_ground"], + "802c76d4": ["whomp_act_6"], + "802c7858": ["whomp_act_8"], + "802c7998": ["whomp_act_9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_spawn_droplets"], + "802c7b14": ["bhv_water_droplet_loop"], + "802c7cac": ["bhv_idle_water_wave_loop"], + "802c7d40": ["bhv_water_droplet_splash_init"], + "802c7d90": ["bhv_bubble_splash_init"], + "802c7dfc": ["bhv_shallow_water_splash_init"], + "802c7e5c": ["bhv_wave_trail_shrink"], + "802c7f98": ["bhv_strong_wind_particle_loop"], + "802c81b4": ["cur_obj_spawn_strong_wind_particles"], + "802c834c": ["bhv_sl_snowman_wind_loop"], + "802c863c": ["bhv_sl_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["debug_print_obj_collision"], + "802c8fe4": ["detect_object_hitbox_overlap"], + "802c91ec": ["detect_object_hurtbox_overlap"], + "802c9388": ["clear_object_collision"], + "802c93f8": ["check_collision_in_list"], + "802c94ac": ["check_player_object_collision"], + "802c95b4": ["check_pushable_object_collision"], + "802c9630": ["check_destructive_object_collision"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["cur_obj_play_sound_1"], + "802ca1e0": ["cur_obj_play_sound_2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["stub_debug_1"], + "802ca380": ["stub_debug_2"], + "802ca390": ["stub_debug_3"], + "802ca3a0": ["stub_debug_4"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_debug_5"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["debug_enemy_unknown"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stop_other_paintings"], + "802d2a74": ["painting_mario_y"], + "802d2b08": ["painting_mario_z"], + "802d2b84": ["painting_ripple_y"], + "802d2c40": ["painting_nearest_4th"], + "802d2d80": ["painting_mario_x"], + "802d2dfc": ["painting_ripple_x"], + "802d2eb8": ["painting_state"], + "802d2ffc": ["wall_painting_proximity_idle"], + "802d319c": ["wall_painting_proximity_rippling"], + "802d327c": ["wall_painting_continuous_idle"], + "802d341c": ["wall_painting_continuous_rippling"], + "802d34fc": ["floor_painting_proximity_idle"], + "802d36ac": ["floor_painting_proximity_rippling"], + "802d379c": ["floor_painting_continuous_idle"], + "802d393c": ["floor_painting_continuous_rippling"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_state"], + "802d3cec": ["calculate_ripple_at_point"], + "802d3e6c": ["ripple_if_movable"], + "802d3ee4": ["painting_generate_mesh"], + "802d404c": ["painting_calculate_triangle_normals"], + "802d43f8": ["normalize_component"], + "802d44bc": ["painting_average_vertex_normals"], + "802d47d0": ["render_painting"], + "802d4edc": ["painting_model_view_transform"], + "802d50dc": ["painting_ripple_image"], + "802d5354": ["painting_ripple_env_mapped"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["move_ddd_painting"], + "802d58e4": ["set_painting_layer"], + "802d593c": ["display_painting"], + "802d59a8": ["wall_painting_update"], + "802d5aa0": ["floor_painting_update"], + "802d5b98": ["geo_painting_draw"], + "802d5d0c": ["geo_painting_update"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["coin_step"], + "802e5e6c": ["moving_coin_flicker"], + "802e5ea4": ["coin_collected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["blue_coin_sliding_away_from_mario"], + "802e63ec": ["blue_coin_sliding_slow_down"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["bobomb_spawn_coin"], + "802e6af8": ["bobomb_act_explode"], + "802e6bd4": ["bobomb_check_interactions"], + "802e6cf0": ["bobomb_act_patrol"], + "802e6dc8": ["bobomb_act_chase_mario"], + "802e6e84": ["bobomb_act_launched"], + "802e6ed8": ["generic_bobomb_free_loop"], + "802e7020": ["stationary_bobomb_free_loop"], + "802e7134": ["bobomb_free_loop"], + "802e7180": ["bobomb_held_loop"], + "802e7220": ["bobomb_dropped_loop"], + "802e7280": ["bobomb_thrown_loop"], + "802e7324": ["curr_obj_random_blink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["bobomb_buddy_act_idle"], + "802e7814": ["bobomb_buddy_cannon_dialog"], + "802e79dc": ["bobomb_buddy_act_talk"], + "802e7b00": ["bobomb_buddy_act_turn_to_talk"], + "802e7bb0": ["bobomb_buddy_actions"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["cannon_door_act_opening"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["whirlpool_set_hitbox"], + "802e7fec": ["whirpool_orient_graph"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["butterfly_step"], + "802e9278": ["butterfly_calculate_angle"], + "802e9470": ["butterfly_act_rest"], + "802e94e4": ["butterfly_act_follow_mario"], + "802e9548": ["butterfly_act_return_home"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["hoot_find_next_floor"], + "802e98c0": ["hoot_floor_bounce"], + "802e9a4c": ["hoot_free_step"], + "802e9cf4": ["hoot_player_set_yaw"], + "802e9d98": ["hoot_carry_step"], + "802e9f60": ["hoot_surface_collision"], + "802ea144": ["hoot_act_ascent"], + "802ea258": ["hoot_action_loop"], + "802ea3f0": ["hoot_turn_to_home"], + "802ea4ec": ["hoot_awake_loop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["bully_check_mario_collision"], + "802eb288": ["bully_act_chase_mario"], + "802eb3f0": ["bully_act_knockback"], + "802eb510": ["bully_act_back_up"], + "802eb5c4": ["bully_backup_check"], + "802eb630": ["bully_play_stomping_sound"], + "802eb744": ["bully_step"], + "802eb7e0": ["bully_spawn_coin"], + "802eb8b0": ["bully_act_level_death"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["big_bully_spawn_minion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["big_bully_spawn_star"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["water_ring_calc_mario_dist"], + "802ec030": ["water_ring_init"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["water_ring_check_collection"], + "802ec3d0": ["water_ring_set_scale"], + "802ec4e0": ["water_ring_act_collected"], + "802ec59c": ["water_ring_act_not_collected"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["spawn_manta_ray_ring_manager"], + "802ec818": ["water_ring_spawner_act_inactive"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["manta_water_ring_act_not_collected"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["celeb_star_act_spin_around_mario"], + "802ed28c": ["celeb_star_act_face_camera"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["moneybag_check_mario_collision"], + "802ee268": ["moneybag_jump"], + "802ee46c": ["moneybag_act_move_around"], + "802ee598": ["moneybag_act_return_home"], + "802ee728": ["moneybag_act_disappear"], + "802ee778": ["moneybag_act_death"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["bowling_ball_set_hitbox"], + "802eea7c": ["bowling_ball_set_waypoints"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["set_rolling_sphere_hitbox"], + "802f0bd4": ["adjust_rolling_face_pitch"], + "802f0c94": ["snowmans_bottom_act_1"], + "802f0df0": ["snowmans_bottom_act_2"], + "802f0fa8": ["snowmans_bottom_act_3"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["boulder_act_1"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["cap_set_hitbox"], + "802f19c8": ["cap_despawn"], + "802f1a10": ["cap_check_quicksand"], + "802f1bb8": ["cap_sink_quicksand"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["cap_scale_vertically"], + "802f1e5c": ["wing_vanish_cap_act_0"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["metal_cap_act_0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["normal_cap_set_save_flags"], + "802f2284": ["normal_cap_act_0"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["spawn_star"], + "802f2b88": ["spawn_default_star"], + "802f2bd4": ["spawn_red_coin_cutscene_star"], + "802f2c24": ["spawn_no_exit_star"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["rolling_log_roll_log"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["volcano_act_1"], + "802f39b4": ["volcano_act_3"], + "802f3a30": ["bhv_volcano_trap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["one_up_loop_in_air"], + "802f3ea8": ["pole_1up_move_towards_mario"], + "802f401c": ["one_up_move_away_from_mario"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["sliding_1up_move"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["controllable_platform_act_1"], + "802f4ce0": ["controllable_platform_act_2"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["controllable_platform_hit_wall"], + "802f5068": ["controllable_platform_check_walls"], + "802f52c0": ["controllable_platform_shake_on_wall_hit"], + "802f547c": ["controllable_platform_tilt_from_mario"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["small_breakable_box_spawn_dust"], + "802f5e44": ["small_breakable_box_act_move"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["floating_platform_find_home_y"], + "802f665c": ["floating_platform_act_0"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["manta_ray_move"], + "802f7068": ["manta_ray_act_spawn_ring"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["spawn_treasure_chest"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["bhv_yoshi_loop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["func_80306ED4"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["geo_snufit_move_mask"], + "8030d9ac": ["geo_snufit_scale_body"], + "8030da14": ["snufit_act_idle"], + "8030db38": ["snufit_act_shoot"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L_U_8031C200"], + "8031c23c": ["L_U_8031C23C"], + "8031c298": ["L_U_8031C298"], + "8031c2dc": ["L_U_8031C2DC"], + "8031c328": ["L_U_8031C328"], + "8031c36c": ["L_U_8031C36C"], + "8031c3bc": ["L_U_8031C3BC"], + "8031c3e8": ["L_U_8031C3E8"], + "8031c454": ["L_U_8031C454"], + "8031c4a4": ["L_U_8031C4A4"], + "8031c5c8": ["L_U_8031C5C8"], + "8031c698": ["L_U_8031C698"], + "8031c6a0": ["L_U_8031C6A0"], + "8031cbe0": ["L_U_8031CBE0"], + "8031cbec": ["L_U_8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e578": ["sequence_player_fade_out_internal"], + "8031e5c0": ["func_8031D690"], + "8031e60c": ["func_8031D6E4"], + "8031e6a4": ["func_8031D7B0"], + "8031e710": ["func_8031D838"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031eb30": ["process_sound_request"], + "8031edec": ["process_all_sound_requests"], + "8031ee70": ["func_8031DFE8"], + "8031ef6c": ["func_8031E0E4"], + "8031eff4": ["func_8031E16C"], + "8031f810": ["get_sound_pan"], + "8031f96c": ["get_sound_dynamics"], + "8031fb20": ["get_sound_freq_scale"], + "8031fbe8": ["get_sound_reverb"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "803217a8": ["disable_all_sequence_players"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["D_8032CE9C"], + "8032de4c": ["D_8032CEEC"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "803306dc": ["sCageUkikiPath"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["D_8032FCE8"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["sWaterSplashDropletParams"], + "80330d30": ["sShallowWaterSplashDropletParams"], + "80330d54": ["sWaterDropletFishParams"], + "80330d78": ["sShallowWaterWaveDropletParams"], + "80330d9c": ["sStrongWindParticleHitbox"], + "80330dac": ["sSLWalkingPenguinErraticSteps"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["sHmcPaintings"], + "80331308": ["sInsideCastlePaintings"], + "80331344": ["sTtmPaintings"], + "8033134c": ["sPaintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b10": ["D_80331A00"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["D_80334810"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["unknown"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338da0": ["D_80337BB0"], + "80338da8": ["D_80337BB8"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["D_80339F50"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gBehCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361270": ["sGrabReleaseState"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["gPaintingMesh"], + "80361314": ["gPaintingTriNorms"], + "80361318": ["gRipplingPainting"], + "8036131c": ["gDddPaintingStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["D_80365CE0"], + "8036708c": ["D_80365D1C"], + "80367090": ["D_80365D20"], + "80367091": ["_osCont_numControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["__osViIntrCount"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": ["_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["RandomU16"], + "80383cb4": ["RandomFloat"], + "80383d1c": ["RandomSign"], + "80383d68": ["func_80383D68"], + "80385bf0": ["stub_80385BF0"], + "80385c00": ["cur_object_exec_behavior"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["small_water_splash_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["idle_water_wave_geo"], + "17000168": ["wave_trail_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleMario"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvWaterWaves"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvWallTinyStarParticleSpawn"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvPoundTinyStarParticleSpawn"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvPunchTinyTriangleSpawn"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvWaterMistSpawn"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvPoundWhitePuffs"], + "13000e3c": ["bhvGroundSand"], + "13000e58": ["bhvGroundSnow"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFlameMario"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvSnowLeafParticleSpawn"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFish"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMarioDustGenerator"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSpecialTripleJumpSparkles"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDroplet"], + "13002c7c": ["bhvWaterDropletSplash"], + "13002cb0": ["bhvBubbleSplash"], + "13002ce0": ["bhvIdleWaterWave"], + "13002d28": ["bhvObjectWaterSplash"], + "13002d50": ["bhvShallowWaterWave"], + "13002d7c": ["bhvShallowWaterSplash"], + "13002db0": ["bhvObjectWaveTrail"], + "13002dc0": ["bhvWaveTrail"], + "13002e04": ["bhvTinyStrongWindParticle"], + "13002e20": ["bhvStrongWindParticle"], + "13002e3c": ["bhvSLSnowmanWind"], + "13002e58": ["bhvSLWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvWarps60"], + "13002f64": ["bhvWarps64"], + "13002f68": ["bhvWarps68"], + "13002f6c": ["bhvWarps6C"], + "13002f70": ["bhvWarps70"], + "13002f74": ["bhvWarps74"], + "13002f78": ["bhvWarps78"], + "13002f7c": ["bhvWarps7C"], + "13002f80": ["bhvWarps80"], + "13002f84": ["bhvWarps84"], + "13002f88": ["bhvWarps88"], + "13002f8c": ["bhvWarps8C"], + "13002f90": ["bhvWarps90"], + "13002f94": ["bhvWarps94"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 8": { - "80000000": "EXCEPTION_TLB_MISS", - "a4000000": "SP_DMEM", - "a40004c0": "SP_DMEM_UNK0", - "a4000774": "SP_DMEM_UNK1", - "a4001000": "SP_IMEM", - "a4040010": "SP_STATUS_REG", - "a4080000": "SP_PC", - "a4300000": "MI_MODE_REG", - "a4300004": "MI_VERSION_REG", - "a4300008": "MI_INTR_REG", - "a430000c": "MI_INTR_MASK_REG", - "a4400010": "VI_CURRENT_REG", - "a450000c": "AI_STATUS_REG", - "a4600000": "PI_DRAM_ADDR_REG", - "a4600004": "PI_CART_ADDR_REG", - "a460000c": "PI_WR_LEN_REG", - "a4600010": "PI_STATUS_REG", - "a4700000": "RI_MODE_REG", - "a4700010": "RI_REFRESH_REG", - "a4800018": "SI_STATUS_REG", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802f69cc": "func_sh_802F69CC", - "80302ef0": "osMotorStop", - "80303090": "osMotorStart", - "803033ac": "osMotorInit", - "803016a0": "func_sh_803016A0", - "803016d0": "func_sh_803016D0", - "80301820": "func_sh_80301820", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04000040": "ipl3_entry", - "04000b70": "ipl3_font", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "entry_point", - "80246050": "handle_debug_key_sequences", - "80246170": "unknown_main_func", - "802461cc": "stub_main_1", - "802461dc": "stub_main_2", - "802461ec": "stub_main_3", - "802461fc": "setup_mesg_queues", - "802462e0": "alloc_pool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "send_sp_task_message", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "main_func", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "draw_reset_bars", - "80247f08": "rendering_init", - "80247fdc": "config_gfx_pool", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "reset_volume", - "80248c58": "lower_background_noise", - "80248ce8": "raise_background_noise", - "80248d78": "disable_background_sound", - "80248dc0": "enable_background_sound", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "fadeout_music", - "8024927c": "fadeout_level_music", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "80249494": "play_menu_sounds_extra", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_pause", - "80249764": "set_play_mode", - "8024978c": "warp_special", - "802497b8": "fade_into_special_warp", - "8024982c": "stub_level_update_1", - "8024983c": "load_level_init_text", - "8024995c": "init_door_warp", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "warp_area", - "8024a18c": "warp_level", - "8024a1d8": "warp_credits", - "8024a374": "check_instant_warp", - "8024a584": "music_changed_through_warp", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_obj_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "should_push_or_pull_door", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_strong_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "mario_can_talk", - "8024ff04": "check_read_sign", - "80250098": "check_npc_talk", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "stub_mario_step_1", - "802550b0": "stub_mario_step_2", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "bhv_end_peach_loop", - "802570dc": "bhv_end_toad_loop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025bc80": "generate_yellow_sparkles", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "climb_up_ledge", - "8025f560": "update_ledge_climb_camera", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "check_common_idle_cancels", - "80260aac": "check_common_hold_idle_cancels", - "80260cb4": "act_idle", - "80260f94": "play_anim_sound", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "stopping_step", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "act_hold_butt_slide_stop", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "act_shockwave_bounce", - "80262bc4": "landing_step", - "80262c34": "check_common_landing_cancels", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "act_hold_jump_land_stop", - "802631f0": "act_hold_freefall_land_stop", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "check_common_stationary_cancels", - "80263898": "mario_execute_stationary_action", - "80263e60": "tilt_body_running", - "80263ee4": "play_step_sound", - "80264024": "align_with_floor", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "anim_and_audio_for_walk", - "80265b1c": "anim_and_audio_for_hold_walk", - "80265d90": "anim_and_audio_for_heavy_walk", - "80265df8": "push_or_sidle_wall", - "80266038": "tilt_body_walking", - "802661cc": "tilt_body_ground_shell", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "tilt_body_butt_slide", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "play_knockback_sound", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "check_wall_kick", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_envfx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhv_toad_message_loop", - "80276910": "bhv_toad_message_init", - "80276bb8": "bhv_unlock_door_star_init", - "80276ccc": "bhv_unlock_door_star_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "load_segment_decompress_heap", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "load_patchable_table", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "override_viewport_and_clip", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "area_get_warp_node_from_params", - "8027aa74": "load_obj_warp_nodes", - "8027ab04": "clear_areas", - "8027ad74": "clear_area_graph_nodes", - "8027ae44": "load_area", - "8027af48": "unload_area", - "8027afbc": "load_mario_area", - "8027b038": "unload_mario_area", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "stub_camera_2", - "80287dd4": "stub_camera_3", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "stub_camera_4", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "spawn_child_obj_relative", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_obj_list_processor_1", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "geo_update_projectile_pos_from_parent", - "8029d924": "geo_update_layer_transparency", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "obj_update_pos_from_parent_transformation", - "8029dda8": "obj_apply_scale_to_matrix", - "8029de80": "create_transformation_from_matrices", - "8029e1b0": "obj_set_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "cur_obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "cur_obj_rotate_yaw_toward", - "8029e694": "obj_angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "obj_set_parent_relative_pos", - "8029e914": "obj_set_pos", - "8029e96c": "obj_set_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "spawn_obj_with_transform_flags", - "8029eb04": "spawn_water_droplet", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "cur_obj_move_using_vel", - "8029f0c8": "obj_copy_graph_y_offset", - "8029f0e0": "obj_copy_pos_and_angle", - "8029f120": "obj_copy_pos", - "8029f148": "obj_copy_angle", - "8029f188": "obj_set_gfx_pos_from_pos", - "8029f1b0": "obj_init_animation", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "obj_apply_scale_to_transform", - "8029f3a8": "obj_copy_scale", - "8029f3d0": "obj_scale_xyz", - "8029f404": "obj_scale", - "8029f430": "cur_obj_scale", - "8029f464": "cur_obj_init_animation", - "8029f4b4": "cur_obj_init_animation_with_sound", - "8029f514": "cur_obj_init_animation_with_accel_and_sound", - "8029f59c": "obj_init_animation_with_sound", - "8029f600": "cur_obj_enable_rendering_and_become_tangible", - "8029f620": "cur_obj_enable_rendering", - "8029f644": "cur_obj_disable_rendering_and_become_intangible", - "8029f66c": "cur_obj_disable_rendering", - "8029f694": "cur_obj_unhide", - "8029f6bc": "cur_obj_hide", - "8029f6e0": "cur_obj_set_pos_relative", - "8029f7d8": "cur_obj_set_pos_relative_to_parent", - "8029f820": "cur_obj_enable_rendering_2", - "8029f848": "cur_obj_unused_init_on_floor", - "8029f8ec": "obj_set_face_angle_to_move_angle", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "cur_obj_nearest_object_with_behavior", - "8029f998": "cur_obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "cur_obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "cur_obj_find_nearby_held_actor", - "8029fdb4": "cur_obj_change_action", - "8029fe00": "cur_obj_set_vel_from_mario_vel", - "8029fe6c": "cur_obj_reverse_animation", - "8029fea4": "cur_obj_extend_animation_if_at_end", - "8029ff04": "cur_obj_check_if_near_animation_end", - "8029ffa4": "cur_obj_check_if_at_animation_end", - "802a0008": "cur_obj_check_anim_frame", - "802a0050": "cur_obj_check_anim_frame_in_range", - "802a00ac": "cur_obj_check_frame_prior_current_frame", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "cur_obj_set_y_vel_and_animation", - "802a01d8": "cur_obj_unrender_and_reset_state", - "802a0380": "cur_obj_get_thrown_or_placed", - "802a0474": "cur_obj_get_dropped", - "802a04c0": "cur_obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "cur_obj_clear_interact_status_flag", - "802a0568": "obj_mark_for_deletion", - "802a057c": "cur_obj_disable", - "802a05b4": "cur_obj_become_intangible", - "802a05d4": "cur_obj_become_tangible", - "802a05f0": "obj_become_tangible", - "802a0604": "cur_obj_update_floor_height", - "802a064c": "cur_obj_update_floor_height_and_get_floor", - "802a079c": "cur_obj_apply_drag_xz", - "802a0e68": "cur_obj_move_y", - "802a113c": "cur_obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "cur_obj_move_xz_using_fvel_and_yaw", - "802a12a4": "cur_obj_move_y_with_terminal_vel", - "802a1308": "cur_obj_compute_vel_xz", - "802a1370": "increment_velocity_toward_range", - "802a1424": "obj_check_if_collided_with_object", - "802a148c": "cur_obj_set_behavior", - "802a14c4": "obj_set_behavior", - "802a14fc": "cur_obj_has_behavior", - "802a1554": "obj_has_behavior", - "802a15ac": "cur_obj_lateral_dist_from_mario_to_home", - "802a1634": "cur_obj_lateral_dist_to_home", - "802a16ac": "cur_obj_outside_home_square", - "802a1774": "cur_obj_outside_home_rectangle", - "802a184c": "cur_obj_set_pos_to_home", - "802a188c": "cur_obj_set_pos_to_home_and_stop", - "802a18dc": "cur_obj_shake_y", - "802a1930": "cur_obj_start_cam_event", - "802a1960": "set_mario_interact_hoot_if_in_range", - "802a19ac": "obj_set_billboard", - "802a19c8": "cur_obj_set_hitbox_radius_and_height", - "802a19f0": "cur_obj_set_hurtbox_radius_and_height", - "802a1b34": "obj_spawn_loot_blue_coins", - "802a1b8c": "obj_spawn_loot_yellow_coins", - "802a1bdc": "cur_obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "cur_obj_abs_y_dist_to_home", - "802a1cc4": "cur_obj_advance_looping_anim", - "802a1f3c": "cur_obj_resolve_wall_collisions", - "802a2320": "cur_obj_update_floor_and_walls", - "802a2348": "cur_obj_move_standard", - "802a25b4": "cur_obj_move_using_vel_and_gravity", - "802a2644": "cur_obj_move_using_fvel_and_gravity", - "802a2674": "obj_set_pos_relative", - "802a2748": "cur_obj_angle_to_home", - "802a27b0": "obj_set_gfx_pos_at_obj_pos", - "802a2804": "obj_translate_local", - "802a2930": "obj_build_transform_from_pos_and_angle", - "802a2a18": "obj_set_throw_matrix_from_transform", - "802a2a84": "obj_build_transform_relative_to_parent", - "802a2b28": "obj_create_transform_from_self", - "802a2b6c": "cur_obj_rotate_move_angle_using_vel", - "802a2bc4": "cur_obj_rotate_face_angle_using_vel", - "802a2c1c": "cur_obj_set_face_angle_to_move_angle", - "802a2c5c": "cur_obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "obj_scale_random", - "802a2fc0": "obj_translate_xyz_random", - "802a308c": "obj_translate_xz_random", - "802a31e0": "cur_obj_set_pos_via_transform", - "802a3268": "cur_obj_reflect_move_angle_off_wall", - "802a32ac": "cur_obj_spawn_particles", - "802a34a4": "obj_set_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "cur_obj_wait_then_blink", - "802a3754": "cur_obj_is_mario_ground_pounding_platform", - "802a37ac": "spawn_mist_particles", - "802a37dc": "spawn_mist_particles_with_sound", - "802a3818": "cur_obj_push_mario_away", - "802a390c": "cur_obj_push_mario_away_from_cylinder", - "802a399c": "bhv_dust_smoke_loop", - "802a3a4c": "cur_obj_set_direction_table", - "802a3a88": "cur_obj_progress_direction_table", - "802a3b28": "stub_obj_helpers_3", - "802a3b40": "cur_obj_scale_over_time", - "802a3c18": "cur_obj_set_pos_to_home_with_debug", - "802a3cec": "stub_obj_helpers_4", - "802a3cfc": "cur_obj_is_mario_on_platform", - "802a3d40": "cur_obj_shake_y_until", - "802a3dd4": "cur_obj_move_up_and_down", - "802a3e30": "cur_obj_call_action_function", - "802a3ef8": "spawn_base_star_with_no_lvl_exit", - "802a3f24": "bit_shift_left", - "802a3f48": "cur_obj_mario_far_away", - "802a404c": "is_mario_moving_fast_or_in_air", - "802a40b8": "is_item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "cur_obj_enable_rendering_if_mario_in_room", - "802a4360": "cur_obj_set_hitbox_and_die_if_attacked", - "802a4440": "obj_explode_and_spawn_coins", - "802a44f4": "obj_set_collision_data", - "802a452c": "cur_obj_if_hit_wall_bounce_away", - "802a4564": "cur_obj_hide_if_mario_far_away_y", - "802a45e4": "geo_offset_klepto_held_object", - "802a462c": "geo_offset_klepto_debug", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "cur_obj_can_mario_activate_textbox", - "802a48bc": "cur_obj_can_mario_activate_textbox_2", - "802a4960": "cur_obj_update_dialog", - "802a4be4": "cur_obj_update_dialog_with_cutscene", - "802a4f04": "cur_obj_has_model", - "802a4f58": "cur_obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "cur_obj_shake_screen", - "802a513c": "obj_attack_collided_from_other_object", - "802a51ac": "cur_obj_was_attacked_or_ground_pounded", - "802a5228": "obj_copy_behavior_params", - "802a5248": "cur_obj_init_animation_and_anim_frame", - "802a5288": "cur_obj_init_animation_and_check_if_near_end", - "802a52c4": "cur_obj_init_animation_and_extend_if_at_end", - "802a52f8": "cur_obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "cur_obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "cur_obj_check_interacted", - "802a5524": "cur_obj_spawn_loot_blue_coin", - "802a5588": "cur_obj_spawn_star_at_y_offset", - "802a5620": "star_door_update_pos", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "mr_i_piranha_particle_act_0", - "802a5a44": "mr_i_piranha_particle_act_1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "spawn_mr_i_particle", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "mr_i_act_3", - "802a6518": "mr_i_act_2", - "802a68a0": "mr_i_act_1", - "802a6ad8": "mr_i_act_0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "cap_switch_act_0", - "802a7020": "cap_switch_act_1", - "802a708c": "cap_switch_act_2", - "802a7160": "cap_switch_act_3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "geo_update_held_mario_pos", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "king_bobomb_act_0", - "802a7384": "mario_is_far_below_object", - "802a73d8": "king_bobomb_act_2", - "802a7598": "king_bobomb_act_3", - "802a7804": "king_bobomb_act_1", - "802a78d8": "king_bobomb_act_6", - "802a7a60": "king_bobomb_act_7", - "802a7b1c": "king_bobomb_act_8", - "802a7b5c": "king_bobomb_act_4", - "802a7d14": "king_bobomb_act_5", - "802a7fbc": "king_bobomb_move", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "scale_bubble_random", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "scale_bubble_sin", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "opened_cannon_act_0", - "802a8f40": "opened_cannon_act_4", - "802a9114": "opened_cannon_act_6", - "802a92fc": "opened_cannon_act_5", - "802a93f8": "opened_cannon_act_1", - "802a9440": "opened_cannon_act_2", - "802a9460": "opened_cannon_act_3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "common_anchor_mario_behavior", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "unknown_chuckya_function", - "802a98c4": "approach_forward_vel", - "802a9994": "chuckya_act_0", - "802a9d08": "chuckya_act_1", - "802a9f54": "chuckya_act_3", - "802a9fc8": "chuckya_act_2", - "802aa02c": "chuckya_move", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "check_mario_attacking", - "802aa3c8": "init_kickable_board_rock", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "set_koopa_shell_underwater_hitbox", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "bhv_fading_warp_loop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "spawn_mist_particles_variable", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "set_sparkle_spawn_star_hitbox", - "802ab060": "set_home_to_mario", - "802ab158": "set_y_home_to_pos", - "802ab18c": "slow_star_rotation", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "spawn_coin_in_formation", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "coin_inside_boo_act_1", - "802ac15c": "coin_inside_boo_act_0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "door_animation_and_reset", - "802ac958": "set_door_camera_event", - "802ac9d0": "play_door_open_noise", - "802aca6c": "play_warp_door_open_noise", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "grindel_thwomp_act_4", - "802ad10c": "grindel_thwomp_act_2", - "802ad1a4": "grindel_thwomp_act_3", - "802ad238": "grindel_thwomp_act_1", - "802ad2d0": "grindel_thwomp_act_0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "tumbling_bridge_act_1", - "802ad76c": "tumbling_bridge_act_2", - "802ad7f4": "tumbling_bridge_act_3", - "802ad828": "tumbling_bridge_act_0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "elevator_starting_shake", - "802ad8f0": "elevator_act_0", - "802ada4c": "elevator_act_1", - "802adb88": "elevator_act_2", - "802adce4": "elevator_act_4", - "802add70": "elevator_act_3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "spawn_mist_from_global", - "802ae360": "bhv_ground_sand_init", - "802ae394": "spawn_smoke_with_velocity", - "802ae45c": "clear_particle_flags", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "spawn_wind_particles", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "spawn_and_init_wf_platforms", - "802b039c": "spawn_wf_platform_group", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "square_plat_set_yaw_until_timer", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "check_if_moving_over_floor", - "802b15e8": "bhv_pushable_loop", - "802b1714": "breakable_box_init", - "802b17f4": "hidden_breakable_box_actions", - "802b19d8": "hidden_unbreakable_box_actions", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "geo_move_mario_part_from_parent", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "heave_ho_act_1", - "802b1e6c": "heave_ho_act_2", - "802b1ff4": "heave_ho_act_3", - "802b20a0": "heave_ho_act_0", - "802b2154": "heave_ho_move", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "jumping_box_act_0", - "802b27d8": "jumping_box_act_1", - "802b2824": "jumping_box_free_update", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "spawn_sparkle_particles", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "arc_to_goal_pos", - "802b3250": "grand_star_zero_velocity", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "bullet_bill_act_0", - "802b38b8": "bullet_bill_act_1", - "802b394c": "bullet_bill_act_2", - "802b3b08": "bullet_bill_act_3", - "802b3b24": "bullet_bill_act_4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "bowser_tail_anchor_act_0", - "802b3cdc": "bowser_tail_anchor_act_1", - "802b3d10": "bowser_tail_anchor_act_2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "bowser_spawn_shockwave", - "802b41fc": "bowser_bounce", - "802b4288": "bowser_set_anim_look_up_and_walk", - "802b4300": "bowser_set_anim_slow_gait", - "802b4368": "bowser_set_anim_look_down", - "802b43dc": "bowser_initialize_action", - "802b4478": "bowser_act_text_wait", - "802b44bc": "bowser_act_intro_walk", - "802b45f4": "bowser_bitdw_act_controller", - "802b473c": "bowser_bitfs_act_controller", - "802b48d4": "bowser_general_bits_act_controller", - "802b4a1c": "bowser_set_act_jump", - "802b4a3c": "bowser_bits_act_controller", - "802b4af4": "bowser_reset_fallen_off_stage", - "802b4bac": "bowser_act_unused_slow_walk", - "802b4be8": "bowser_act_default", - "802b4ca4": "bowser_act_breath_fire", - "802b4d14": "bowser_act_walk_to_mario", - "802b4f00": "bowser_act_teleport", - "802b5104": "bowser_act_spit_fire_into_sky", - "802b5218": "bowser_act_hit_mine", - "802b53f4": "bowser_set_anim_in_air", - "802b5444": "bowser_land", - "802b5554": "bowser_short_second_hop", - "802b55cc": "bowser_act_jump", - "802b5798": "bowser_act_jump_towards_mario", - "802b58bc": "bowser_act_hit_edge", - "802b59cc": "bowser_act_spit_fire_onto_floor", - "802b5aec": "bowser_turn_on_timer", - "802b5c00": "bowser_act_turn_from_edge", - "802b5c40": "bowser_act_charge_mario", - "802b5f6c": "bowser_check_hit_mine", - "802b5fec": "bowser_act_thrown_dropped", - "802b611c": "bowser_set_goal_invisible", - "802b6190": "bowser_act_jump_onto_stage", - "802b6568": "bowser_act_dance", - "802b65d0": "bowser_spawn_grand_star_key", - "802b6670": "bowser_fly_back_dead", - "802b6730": "bowser_dead_bounce", - "802b67d4": "bowser_dead_wait_for_mario", - "802b6878": "bowser_dead_twirl_into_trophy", - "802b6a10": "bowser_dead_hide", - "802b6a78": "bowser_dead_not_bits_end", - "802b6bac": "bowser_dead_bits_end", - "802b6cf0": "bowser_act_dead", - "802b6e40": "bowser_tilt_platform", - "802b6ee0": "bowser_act_ride_tilting_platform", - "802b711c": "bowser_check_fallen_off_stage", - "802b71e4": "bowser_free_update", - "802b72d4": "bowser_held_update", - "802b7418": "bowser_thrown_dropped_update", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "geo_update_body_rot_from_parent", - "802b7a20": "bowser_open_eye_switch", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "geo_bits_bowser_coloring", - "802b7e68": "falling_bowser_plat_act_0", - "802b7ef0": "falling_bowser_plat_act_1", - "802b8024": "falling_bowser_plat_act_2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "bowser_flame_despawn", - "802b8434": "bowser_flame_should_despawn", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "bowser_flame_move", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_movement_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "vec3f_copy_2", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "checkerboard_plat_act_move_y", - "802b9af8": "checkerboard_plat_act_rotate", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "water_level_pillar_undrained", - "802ba13c": "water_level_pillar_drained", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "geo_scale_bowser_key", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "geo_update_projectile_pos_from_parent_copy", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "lll_octagonal_mesh_move", - "802bbfd8": "lll_octagonal_mesh_find_y_offset", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "fire_bar_spawn_flames", - "802bc4f4": "fire_bar_act_0", - "802bc538": "fire_bar_act_1", - "802bc590": "fire_bar_act_2", - "802bc5fc": "fire_bar_act_3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "hexagonal_ring_spawn_flames", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "sinking_rectangular_plat_actions", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "koopa_shell_spawn_water_drop", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "koopa_shell_spawn_sparkles", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "tox_box_shake_screen", - "802bd91c": "tox_box_move", - "802bdb04": "tox_box_act_4", - "802bdb3c": "tox_box_act_5", - "802bdb74": "tox_box_act_6", - "802bdbac": "tox_box_act_7", - "802bdbe4": "tox_box_act_1", - "802bdc7c": "tox_box_act_2", - "802bdcc8": "tox_box_act_3", - "802bdd14": "tox_box_act_0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "set_obj_anim_with_accel_and_sound", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "tuxies_mother_act_2", - "802bef8c": "tuxies_mother_act_1", - "802bf1d8": "tuxies_mother_act_0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "small_penguin_dive_with_mario", - "802bf474": "small_penguin_act_2", - "802bf57c": "small_penguin_act_1", - "802bf648": "small_penguin_act_3", - "802bf6e4": "small_penguin_act_4", - "802bf760": "small_penguin_act_0", - "802bf90c": "small_penguin_act_5", - "802bfa14": "small_penguin_free_actions", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "fish_act_spawn", - "802bfeb8": "fish_act_respawn", - "802bff20": "fish_act_init", - "802bff3c": "bhv_large_fish_group_loop", - "802bff68": "fish_regroup", - "802c00b4": "fish_group_act_rotation", - "802c0348": "fish_group_act_move", - "802c06a8": "fish_group_act_animate", - "802c0768": "bhv_fish_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "bub_spawner_act_0", - "802c0b50": "bub_spawner_act_1", - "802c0ba4": "bub_spawner_act_2", - "802c0bc4": "bub_spawner_act_3", - "802c0be0": "bhv_bub_spawner_loop", - "802c0c0c": "bub_move_vertically", - "802c0cd4": "bub_act_0", - "802c0d44": "bub_act_1", - "802c0f90": "bub_act_2", - "802c1204": "bhv_bub_loop", - "802c12c0": "bhv_rotating_exclamation_box_loop", - "802c1308": "exclamation_box_act_0", - "802c13ec": "exclamation_box_act_1", - "802c14b0": "exclamation_box_act_2", - "802c15b8": "exclamation_box_act_3", - "802c17bc": "exclamation_box_spawn_contents", - "802c18d0": "exclamation_box_act_4", - "802c1988": "exclamation_box_act_5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "bhv_pole_base_loop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "update_angle_from_move_flags", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "whomp_play_sfx_from_pound_animation", - "802c6d6c": "whomp_act_0", - "802c6ec8": "whomp_act_7", - "802c6fb0": "whomp_act_1", - "802c710c": "whomp_act_2", - "802c7254": "whomp_act_3", - "802c72b4": "whomp_act_4", - "802c7380": "whomp_act_5", - "802c7428": "king_whomp_on_ground", - "802c75fc": "whomp_on_ground", - "802c76d4": "whomp_act_6", - "802c7858": "whomp_act_8", - "802c7998": "whomp_act_9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_spawn_droplets", - "802c7b14": "bhv_water_droplet_loop", - "802c7cac": "bhv_idle_water_wave_loop", - "802c7d40": "bhv_water_droplet_splash_init", - "802c7d90": "bhv_bubble_splash_init", - "802c7dfc": "bhv_shallow_water_splash_init", - "802c7e5c": "bhv_wave_trail_shrink", - "802c7f98": "bhv_strong_wind_particle_loop", - "802c81b4": "cur_obj_spawn_strong_wind_particles", - "802c834c": "bhv_sl_snowman_wind_loop", - "802c863c": "bhv_sl_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "debug_print_obj_collision", - "802c8fe4": "detect_object_hitbox_overlap", - "802c91ec": "detect_object_hurtbox_overlap", - "802c9388": "clear_object_collision", - "802c93f8": "check_collision_in_list", - "802c94ac": "check_player_object_collision", - "802c95b4": "check_pushable_object_collision", - "802c9630": "check_destructive_object_collision", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "cur_obj_play_sound_1", - "802ca1e0": "cur_obj_play_sound_2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "stub_debug_1", - "802ca380": "stub_debug_2", - "802ca390": "stub_debug_3", - "802ca3a0": "stub_debug_4", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_debug_5", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "debug_enemy_unknown", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stop_other_paintings", - "802d2a74": "painting_mario_y", - "802d2b08": "painting_mario_z", - "802d2b84": "painting_ripple_y", - "802d2c40": "painting_nearest_4th", - "802d2d80": "painting_mario_x", - "802d2dfc": "painting_ripple_x", - "802d2eb8": "painting_state", - "802d2ffc": "wall_painting_proximity_idle", - "802d319c": "wall_painting_proximity_rippling", - "802d327c": "wall_painting_continuous_idle", - "802d341c": "wall_painting_continuous_rippling", - "802d34fc": "floor_painting_proximity_idle", - "802d36ac": "floor_painting_proximity_rippling", - "802d379c": "floor_painting_continuous_idle", - "802d393c": "floor_painting_continuous_rippling", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_state", - "802d3cec": "calculate_ripple_at_point", - "802d3e6c": "ripple_if_movable", - "802d3ee4": "painting_generate_mesh", - "802d404c": "painting_calculate_triangle_normals", - "802d43f8": "normalize_component", - "802d44bc": "painting_average_vertex_normals", - "802d47d0": "render_painting", - "802d4edc": "painting_model_view_transform", - "802d50dc": "painting_ripple_image", - "802d5354": "painting_ripple_env_mapped", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "move_ddd_painting", - "802d58e4": "set_painting_layer", - "802d593c": "display_painting", - "802d59a8": "wall_painting_update", - "802d5aa0": "floor_painting_update", - "802d5b98": "geo_painting_draw", - "802d5d0c": "geo_painting_update", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "coin_step", - "802e5e6c": "moving_coin_flicker", - "802e5ea4": "coin_collected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "blue_coin_sliding_away_from_mario", - "802e63ec": "blue_coin_sliding_slow_down", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "bobomb_spawn_coin", - "802e6af8": "bobomb_act_explode", - "802e6bd4": "bobomb_check_interactions", - "802e6cf0": "bobomb_act_patrol", - "802e6dc8": "bobomb_act_chase_mario", - "802e6e84": "bobomb_act_launched", - "802e6ed8": "generic_bobomb_free_loop", - "802e7020": "stationary_bobomb_free_loop", - "802e7134": "bobomb_free_loop", - "802e7180": "bobomb_held_loop", - "802e7220": "bobomb_dropped_loop", - "802e7280": "bobomb_thrown_loop", - "802e7324": "curr_obj_random_blink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "bobomb_buddy_act_idle", - "802e7814": "bobomb_buddy_cannon_dialog", - "802e79dc": "bobomb_buddy_act_talk", - "802e7b00": "bobomb_buddy_act_turn_to_talk", - "802e7bb0": "bobomb_buddy_actions", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "cannon_door_act_opening", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "whirlpool_set_hitbox", - "802e7fec": "whirpool_orient_graph", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "butterfly_step", - "802e9278": "butterfly_calculate_angle", - "802e9470": "butterfly_act_rest", - "802e94e4": "butterfly_act_follow_mario", - "802e9548": "butterfly_act_return_home", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "hoot_find_next_floor", - "802e98c0": "hoot_floor_bounce", - "802e9a4c": "hoot_free_step", - "802e9cf4": "hoot_player_set_yaw", - "802e9d98": "hoot_carry_step", - "802e9f60": "hoot_surface_collision", - "802ea144": "hoot_act_ascent", - "802ea258": "hoot_action_loop", - "802ea3f0": "hoot_turn_to_home", - "802ea4ec": "hoot_awake_loop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "bully_check_mario_collision", - "802eb288": "bully_act_chase_mario", - "802eb3f0": "bully_act_knockback", - "802eb510": "bully_act_back_up", - "802eb5c4": "bully_backup_check", - "802eb630": "bully_play_stomping_sound", - "802eb744": "bully_step", - "802eb7e0": "bully_spawn_coin", - "802eb8b0": "bully_act_level_death", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "big_bully_spawn_minion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "big_bully_spawn_star", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "water_ring_calc_mario_dist", - "802ec030": "water_ring_init", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "water_ring_check_collection", - "802ec3d0": "water_ring_set_scale", - "802ec4e0": "water_ring_act_collected", - "802ec59c": "water_ring_act_not_collected", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "spawn_manta_ray_ring_manager", - "802ec818": "water_ring_spawner_act_inactive", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "manta_water_ring_act_not_collected", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "celeb_star_act_spin_around_mario", - "802ed28c": "celeb_star_act_face_camera", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "moneybag_check_mario_collision", - "802ee268": "moneybag_jump", - "802ee46c": "moneybag_act_move_around", - "802ee598": "moneybag_act_return_home", - "802ee728": "moneybag_act_disappear", - "802ee778": "moneybag_act_death", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "bowling_ball_set_hitbox", - "802eea7c": "bowling_ball_set_waypoints", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "set_rolling_sphere_hitbox", - "802f0bd4": "adjust_rolling_face_pitch", - "802f0c94": "snowmans_bottom_act_1", - "802f0df0": "snowmans_bottom_act_2", - "802f0fa8": "snowmans_bottom_act_3", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "boulder_act_1", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "cap_set_hitbox", - "802f19c8": "cap_despawn", - "802f1a10": "cap_check_quicksand", - "802f1bb8": "cap_sink_quicksand", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "cap_scale_vertically", - "802f1e5c": "wing_vanish_cap_act_0", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "metal_cap_act_0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "normal_cap_set_save_flags", - "802f2284": "normal_cap_act_0", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "spawn_star", - "802f2b88": "spawn_default_star", - "802f2bd4": "spawn_red_coin_cutscene_star", - "802f2c24": "spawn_no_exit_star", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "rolling_log_roll_log", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "volcano_act_1", - "802f39b4": "volcano_act_3", - "802f3a30": "bhv_volcano_trap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "one_up_loop_in_air", - "802f3ea8": "pole_1up_move_towards_mario", - "802f401c": "one_up_move_away_from_mario", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "sliding_1up_move", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "controllable_platform_act_1", - "802f4ce0": "controllable_platform_act_2", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "controllable_platform_hit_wall", - "802f5068": "controllable_platform_check_walls", - "802f52c0": "controllable_platform_shake_on_wall_hit", - "802f547c": "controllable_platform_tilt_from_mario", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "small_breakable_box_spawn_dust", - "802f5e44": "small_breakable_box_act_move", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "floating_platform_find_home_y", - "802f665c": "floating_platform_act_0", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "manta_ray_move", - "802f7068": "manta_ray_act_spawn_ring", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "spawn_treasure_chest", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "bhv_yoshi_loop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "mr_blizzard_spawn_white_particles", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "geo_snufit_move_mask", - "8030d9ac": "geo_snufit_scale_body", - "8030da14": "snufit_act_idle", - "8030db38": "snufit_act_shoot", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L_U_8031C200", - "8031c23c": "L_U_8031C23C", - "8031c298": "L_U_8031C298", - "8031c2dc": "L_U_8031C2DC", - "8031c328": "L_U_8031C328", - "8031c36c": "L_U_8031C36C", - "8031c3bc": "L_U_8031C3BC", - "8031c3e8": "L_U_8031C3E8", - "8031c454": "L_U_8031C454", - "8031c4a4": "L_U_8031C4A4", - "8031c5c8": "L_U_8031C5C8", - "8031c698": "L_U_8031C698", - "8031c6a0": "L_U_8031C6A0", - "8031cbe0": "L_U_8031CBE0", - "8031cbec": "L_U_8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e578": "sequence_player_fade_out_internal", - "8031e5c0": "func_8031D690", - "8031e60c": "func_8031D6E4", - "8031e6a4": "func_8031D7B0", - "8031e710": "func_8031D838", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031eb30": "process_sound_request", - "8031edec": "process_all_sound_requests", - "8031ee70": "func_8031DFE8", - "8031ef6c": "func_8031E0E4", - "8031eff4": "func_8031E16C", - "8031f810": "get_sound_pan", - "8031f96c": "get_sound_dynamics", - "8031fb20": "get_sound_freq_scale", - "8031fbe8": "get_sound_reverb", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "803217a8": "disable_all_sequence_players", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "sWarpBhvSpawnTable", - "8032de4c": "sSpawnTypeFromWarpBhv", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "803306dc": "sCageUkikiPath", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "D_8032FCE8", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "sWaterSplashDropletParams", - "80330d30": "sShallowWaterSplashDropletParams", - "80330d54": "sWaterDropletFishParams", - "80330d78": "sShallowWaterWaveDropletParams", - "80330d9c": "sStrongWindParticleHitbox", - "80330dac": "sSLWalkingPenguinErraticSteps", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "sHmcPaintings", - "80331308": "sInsideCastlePaintings", - "80331344": "sTtmPaintings", - "8033134c": "sPaintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "D_80334810", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "D_80334894", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "D_80339F50", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gCurBhvCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "gPaintingMesh", - "80361314": "gPaintingTriNorms", - "80361318": "gRipplingPainting", - "8036131c": "gDddPaintingStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "D_80365CE0", - "8036708c": "D_80365D1C", - "80367090": "D_80365D20", - "80367091": "_osCont_numControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "__osViIntrCount", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": ".", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "random_u16", - "80383cb4": "random_float", - "80383d1c": "random_sign", - "80383d68": "obj_update_gfx_pos_and_angle", - "80385bf0": "stub_behavior_script_2", - "80385c00": "cur_obj_update", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "small_water_splash_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "idle_water_wave_geo", - "17000168": "wave_trail_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleParticleSpawner", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvPlungeBubble", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvVertStarParticleSpawner", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvHorStarParticleSpawner", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvTriangleParticleSpawner", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvBreathParticleSpawner", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvMistCircParticleSpawner", - "13000e3c": "bhvDirtParticleSpawner", - "13000e58": "bhvSnowParticleSpawner", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFireParticleSpawner", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvLeafParticleSpawner", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFish", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMistParticleSpawner", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSparkleParticleSpawner", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDroplet", - "13002c7c": "bhvWaterDropletSplash", - "13002cb0": "bhvBubbleSplash", - "13002ce0": "bhvIdleWaterWave", - "13002d28": "bhvObjectWaterSplash", - "13002d50": "bhvShallowWaterWave", - "13002d7c": "bhvShallowWaterSplash", - "13002db0": "bhvObjectWaveTrail", - "13002dc0": "bhvWaveTrail", - "13002e04": "bhvTinyStrongWindParticle", - "13002e20": "bhvStrongWindParticle", - "13002e3c": "bhvSLSnowmanWind", - "13002e58": "bhvSLWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvWarps60", - "13002f64": "bhvWarps64", - "13002f68": "bhvWarps68", - "13002f6c": "bhvWarps6C", - "13002f70": "bhvDeathWarp", - "13002f74": "bhvWarps74", - "13002f78": "bhvWarps78", - "13002f7c": "bhvWarps7C", - "13002f80": "bhvPaintingDeathWarp", - "13002f84": "bhvWarps84", - "13002f88": "bhvWarps88", - "13002f8c": "bhvWarps8C", - "13002f90": "bhvWarps90", - "13002f94": "bhvWarps94", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000000": ["EXCEPTION_TLB_MISS"], + "a4000000": ["SP_DMEM"], + "a40004c0": ["SP_DMEM_UNK0"], + "a4000774": ["SP_DMEM_UNK1"], + "a4001000": ["SP_IMEM"], + "a4040010": ["SP_STATUS_REG"], + "a4080000": ["SP_PC"], + "a4300000": ["MI_MODE_REG"], + "a4300004": ["MI_VERSION_REG"], + "a4300008": ["MI_INTR_REG"], + "a430000c": ["MI_INTR_MASK_REG"], + "a4400010": ["VI_CURRENT_REG"], + "a450000c": ["AI_STATUS_REG"], + "a4600000": ["PI_DRAM_ADDR_REG"], + "a4600004": ["PI_CART_ADDR_REG"], + "a460000c": ["PI_WR_LEN_REG"], + "a4600010": ["PI_STATUS_REG"], + "a4700000": ["RI_MODE_REG"], + "a4700010": ["RI_REFRESH_REG"], + "a4800018": ["SI_STATUS_REG"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802f69cc": ["func_sh_802F69CC"], + "80302ef0": ["osMotorStop"], + "80303090": ["osMotorStart"], + "803033ac": ["osMotorInit"], + "803016a0": ["func_sh_803016A0"], + "803016d0": ["func_sh_803016D0"], + "80301820": ["func_sh_80301820"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04000040": ["ipl3_entry"], + "04000b70": ["ipl3_font"], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "entry_point"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["unknown_main_func"], + "802461cc": ["stub_main_1"], + "802461dc": ["stub_main_2"], + "802461ec": ["stub_main_3"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["alloc_pool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["send_sp_task_message"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["main_func"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["draw_reset_bars"], + "80247f08": ["rendering_init"], + "80247fdc": ["config_gfx_pool"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["reset_volume"], + "80248c58": ["lower_background_noise"], + "80248ce8": ["raise_background_noise"], + "80248d78": ["disable_background_sound"], + "80248dc0": ["enable_background_sound"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["fadeout_music"], + "8024927c": ["fadeout_level_music"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "80249494": ["play_menu_sounds_extra"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_pause"], + "80249764": ["set_play_mode"], + "8024978c": ["warp_special"], + "802497b8": ["fade_into_special_warp"], + "8024982c": ["stub_level_update_1"], + "8024983c": ["load_level_init_text"], + "8024995c": ["init_door_warp"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["warp_area"], + "8024a18c": ["warp_level"], + "8024a1d8": ["warp_credits"], + "8024a374": ["check_instant_warp"], + "8024a584": ["music_changed_through_warp"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_obj_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["should_push_or_pull_door"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_strong_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["mario_can_talk"], + "8024ff04": ["check_read_sign"], + "80250098": ["check_npc_talk"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["stub_mario_step_1"], + "802550b0": ["stub_mario_step_2"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["bhv_end_peach_loop"], + "802570dc": ["bhv_end_toad_loop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025bc80": ["generate_yellow_sparkles"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["climb_up_ledge"], + "8025f560": ["update_ledge_climb_camera"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["check_common_idle_cancels"], + "80260aac": ["check_common_hold_idle_cancels"], + "80260cb4": ["act_idle"], + "80260f94": ["play_anim_sound"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["stopping_step"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["act_hold_butt_slide_stop"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["act_shockwave_bounce"], + "80262bc4": ["landing_step"], + "80262c34": ["check_common_landing_cancels"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["act_hold_jump_land_stop"], + "802631f0": ["act_hold_freefall_land_stop"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["check_common_stationary_cancels"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["tilt_body_running"], + "80263ee4": ["play_step_sound"], + "80264024": ["align_with_floor"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["anim_and_audio_for_walk"], + "80265b1c": ["anim_and_audio_for_hold_walk"], + "80265d90": ["anim_and_audio_for_heavy_walk"], + "80265df8": ["push_or_sidle_wall"], + "80266038": ["tilt_body_walking"], + "802661cc": ["tilt_body_ground_shell"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["tilt_body_butt_slide"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["play_knockback_sound"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["check_wall_kick"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_envfx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhv_toad_message_loop"], + "80276910": ["bhv_toad_message_init"], + "80276bb8": ["bhv_unlock_door_star_init"], + "80276ccc": ["bhv_unlock_door_star_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["load_segment_decompress_heap"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["load_patchable_table"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["override_viewport_and_clip"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["area_get_warp_node_from_params"], + "8027aa74": ["load_obj_warp_nodes"], + "8027ab04": ["clear_areas"], + "8027ad74": ["clear_area_graph_nodes"], + "8027ae44": ["load_area"], + "8027af48": ["unload_area"], + "8027afbc": ["load_mario_area"], + "8027b038": ["unload_mario_area"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["stub_camera_2"], + "80287dd4": ["stub_camera_3"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["stub_camera_4"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["spawn_child_obj_relative"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_obj_list_processor_1"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["geo_update_projectile_pos_from_parent"], + "8029d924": ["geo_update_layer_transparency"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["obj_update_pos_from_parent_transformation"], + "8029dda8": ["obj_apply_scale_to_matrix"], + "8029de80": ["create_transformation_from_matrices"], + "8029e1b0": ["obj_set_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["cur_obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["cur_obj_rotate_yaw_toward"], + "8029e694": ["obj_angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["obj_set_parent_relative_pos"], + "8029e914": ["obj_set_pos"], + "8029e96c": ["obj_set_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["spawn_obj_with_transform_flags"], + "8029eb04": ["spawn_water_droplet"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["cur_obj_move_using_vel"], + "8029f0c8": ["obj_copy_graph_y_offset"], + "8029f0e0": ["obj_copy_pos_and_angle"], + "8029f120": ["obj_copy_pos"], + "8029f148": ["obj_copy_angle"], + "8029f188": ["obj_set_gfx_pos_from_pos"], + "8029f1b0": ["obj_init_animation"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["obj_apply_scale_to_transform"], + "8029f3a8": ["obj_copy_scale"], + "8029f3d0": ["obj_scale_xyz"], + "8029f404": ["obj_scale"], + "8029f430": ["cur_obj_scale"], + "8029f464": ["cur_obj_init_animation"], + "8029f4b4": ["cur_obj_init_animation_with_sound"], + "8029f514": ["cur_obj_init_animation_with_accel_and_sound"], + "8029f59c": ["obj_init_animation_with_sound"], + "8029f600": ["cur_obj_enable_rendering_and_become_tangible"], + "8029f620": ["cur_obj_enable_rendering"], + "8029f644": ["cur_obj_disable_rendering_and_become_intangible"], + "8029f66c": ["cur_obj_disable_rendering"], + "8029f694": ["cur_obj_unhide"], + "8029f6bc": ["cur_obj_hide"], + "8029f6e0": ["cur_obj_set_pos_relative"], + "8029f7d8": ["cur_obj_set_pos_relative_to_parent"], + "8029f820": ["cur_obj_enable_rendering_2"], + "8029f848": ["cur_obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_face_angle_to_move_angle"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["cur_obj_nearest_object_with_behavior"], + "8029f998": ["cur_obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["cur_obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["cur_obj_find_nearby_held_actor"], + "8029fdb4": ["cur_obj_change_action"], + "8029fe00": ["cur_obj_set_vel_from_mario_vel"], + "8029fe6c": ["cur_obj_reverse_animation"], + "8029fea4": ["cur_obj_extend_animation_if_at_end"], + "8029ff04": ["cur_obj_check_if_near_animation_end"], + "8029ffa4": ["cur_obj_check_if_at_animation_end"], + "802a0008": ["cur_obj_check_anim_frame"], + "802a0050": ["cur_obj_check_anim_frame_in_range"], + "802a00ac": ["cur_obj_check_frame_prior_current_frame"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["cur_obj_set_y_vel_and_animation"], + "802a01d8": ["cur_obj_unrender_and_reset_state"], + "802a0380": ["cur_obj_get_thrown_or_placed"], + "802a0474": ["cur_obj_get_dropped"], + "802a04c0": ["cur_obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["cur_obj_clear_interact_status_flag"], + "802a0568": ["obj_mark_for_deletion"], + "802a057c": ["cur_obj_disable"], + "802a05b4": ["cur_obj_become_intangible"], + "802a05d4": ["cur_obj_become_tangible"], + "802a05f0": ["obj_become_tangible"], + "802a0604": ["cur_obj_update_floor_height"], + "802a064c": ["cur_obj_update_floor_height_and_get_floor"], + "802a079c": ["cur_obj_apply_drag_xz"], + "802a0e68": ["cur_obj_move_y"], + "802a113c": ["cur_obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["cur_obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["cur_obj_move_y_with_terminal_vel"], + "802a1308": ["cur_obj_compute_vel_xz"], + "802a1370": ["increment_velocity_toward_range"], + "802a1424": ["obj_check_if_collided_with_object"], + "802a148c": ["cur_obj_set_behavior"], + "802a14c4": ["obj_set_behavior"], + "802a14fc": ["cur_obj_has_behavior"], + "802a1554": ["obj_has_behavior"], + "802a15ac": ["cur_obj_lateral_dist_from_mario_to_home"], + "802a1634": ["cur_obj_lateral_dist_to_home"], + "802a16ac": ["cur_obj_outside_home_square"], + "802a1774": ["cur_obj_outside_home_rectangle"], + "802a184c": ["cur_obj_set_pos_to_home"], + "802a188c": ["cur_obj_set_pos_to_home_and_stop"], + "802a18dc": ["cur_obj_shake_y"], + "802a1930": ["cur_obj_start_cam_event"], + "802a1960": ["set_mario_interact_hoot_if_in_range"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["cur_obj_set_hitbox_radius_and_height"], + "802a19f0": ["cur_obj_set_hurtbox_radius_and_height"], + "802a1b34": ["obj_spawn_loot_blue_coins"], + "802a1b8c": ["obj_spawn_loot_yellow_coins"], + "802a1bdc": ["cur_obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["cur_obj_abs_y_dist_to_home"], + "802a1cc4": ["cur_obj_advance_looping_anim"], + "802a1f3c": ["cur_obj_resolve_wall_collisions"], + "802a2320": ["cur_obj_update_floor_and_walls"], + "802a2348": ["cur_obj_move_standard"], + "802a25b4": ["cur_obj_move_using_vel_and_gravity"], + "802a2644": ["cur_obj_move_using_fvel_and_gravity"], + "802a2674": ["obj_set_pos_relative"], + "802a2748": ["cur_obj_angle_to_home"], + "802a27b0": ["obj_set_gfx_pos_at_obj_pos"], + "802a2804": ["obj_translate_local"], + "802a2930": ["obj_build_transform_from_pos_and_angle"], + "802a2a18": ["obj_set_throw_matrix_from_transform"], + "802a2a84": ["obj_build_transform_relative_to_parent"], + "802a2b28": ["obj_create_transform_from_self"], + "802a2b6c": ["cur_obj_rotate_move_angle_using_vel"], + "802a2bc4": ["cur_obj_rotate_face_angle_using_vel"], + "802a2c1c": ["cur_obj_set_face_angle_to_move_angle"], + "802a2c5c": ["cur_obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["obj_scale_random"], + "802a2fc0": ["obj_translate_xyz_random"], + "802a308c": ["obj_translate_xz_random"], + "802a31e0": ["cur_obj_set_pos_via_transform"], + "802a3268": ["cur_obj_reflect_move_angle_off_wall"], + "802a32ac": ["cur_obj_spawn_particles"], + "802a34a4": ["obj_set_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["cur_obj_wait_then_blink"], + "802a3754": ["cur_obj_is_mario_ground_pounding_platform"], + "802a37ac": ["spawn_mist_particles"], + "802a37dc": ["spawn_mist_particles_with_sound"], + "802a3818": ["cur_obj_push_mario_away"], + "802a390c": ["cur_obj_push_mario_away_from_cylinder"], + "802a399c": ["bhv_dust_smoke_loop"], + "802a3a4c": ["cur_obj_set_direction_table"], + "802a3a88": ["cur_obj_progress_direction_table"], + "802a3b28": ["stub_obj_helpers_3"], + "802a3b40": ["cur_obj_scale_over_time"], + "802a3c18": ["cur_obj_set_pos_to_home_with_debug"], + "802a3cec": ["stub_obj_helpers_4"], + "802a3cfc": ["cur_obj_is_mario_on_platform"], + "802a3d40": ["cur_obj_shake_y_until"], + "802a3dd4": ["cur_obj_move_up_and_down"], + "802a3e30": ["cur_obj_call_action_function"], + "802a3ef8": ["spawn_base_star_with_no_lvl_exit"], + "802a3f24": ["bit_shift_left"], + "802a3f48": ["cur_obj_mario_far_away"], + "802a404c": ["is_mario_moving_fast_or_in_air"], + "802a40b8": ["is_item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["cur_obj_enable_rendering_if_mario_in_room"], + "802a4360": ["cur_obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["obj_explode_and_spawn_coins"], + "802a44f4": ["obj_set_collision_data"], + "802a452c": ["cur_obj_if_hit_wall_bounce_away"], + "802a4564": ["cur_obj_hide_if_mario_far_away_y"], + "802a45e4": ["geo_offset_klepto_held_object"], + "802a462c": ["geo_offset_klepto_debug"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["cur_obj_can_mario_activate_textbox"], + "802a48bc": ["cur_obj_can_mario_activate_textbox_2"], + "802a4960": ["cur_obj_update_dialog"], + "802a4be4": ["cur_obj_update_dialog_with_cutscene"], + "802a4f04": ["cur_obj_has_model"], + "802a4f58": ["cur_obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["cur_obj_shake_screen"], + "802a513c": ["obj_attack_collided_from_other_object"], + "802a51ac": ["cur_obj_was_attacked_or_ground_pounded"], + "802a5228": ["obj_copy_behavior_params"], + "802a5248": ["cur_obj_init_animation_and_anim_frame"], + "802a5288": ["cur_obj_init_animation_and_check_if_near_end"], + "802a52c4": ["cur_obj_init_animation_and_extend_if_at_end"], + "802a52f8": ["cur_obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["cur_obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["cur_obj_check_interacted"], + "802a5524": ["cur_obj_spawn_loot_blue_coin"], + "802a5588": ["cur_obj_spawn_star_at_y_offset"], + "802a5620": ["star_door_update_pos"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["mr_i_piranha_particle_act_0"], + "802a5a44": ["mr_i_piranha_particle_act_1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["spawn_mr_i_particle"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["mr_i_act_3"], + "802a6518": ["mr_i_act_2"], + "802a68a0": ["mr_i_act_1"], + "802a6ad8": ["mr_i_act_0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["cap_switch_act_0"], + "802a7020": ["cap_switch_act_1"], + "802a708c": ["cap_switch_act_2"], + "802a7160": ["cap_switch_act_3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["geo_update_held_mario_pos"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["king_bobomb_act_0"], + "802a7384": ["mario_is_far_below_object"], + "802a73d8": ["king_bobomb_act_2"], + "802a7598": ["king_bobomb_act_3"], + "802a7804": ["king_bobomb_act_1"], + "802a78d8": ["king_bobomb_act_6"], + "802a7a60": ["king_bobomb_act_7"], + "802a7b1c": ["king_bobomb_act_8"], + "802a7b5c": ["king_bobomb_act_4"], + "802a7d14": ["king_bobomb_act_5"], + "802a7fbc": ["king_bobomb_move"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["scale_bubble_random"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["scale_bubble_sin"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["opened_cannon_act_0"], + "802a8f40": ["opened_cannon_act_4"], + "802a9114": ["opened_cannon_act_6"], + "802a92fc": ["opened_cannon_act_5"], + "802a93f8": ["opened_cannon_act_1"], + "802a9440": ["opened_cannon_act_2"], + "802a9460": ["opened_cannon_act_3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["common_anchor_mario_behavior"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["unknown_chuckya_function"], + "802a98c4": ["approach_forward_vel"], + "802a9994": ["chuckya_act_0"], + "802a9d08": ["chuckya_act_1"], + "802a9f54": ["chuckya_act_3"], + "802a9fc8": ["chuckya_act_2"], + "802aa02c": ["chuckya_move"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["check_mario_attacking"], + "802aa3c8": ["init_kickable_board_rock"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["set_koopa_shell_underwater_hitbox"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["bhv_fading_warp_loop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["spawn_mist_particles_variable"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["set_sparkle_spawn_star_hitbox"], + "802ab060": ["set_home_to_mario"], + "802ab158": ["set_y_home_to_pos"], + "802ab18c": ["slow_star_rotation"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["spawn_coin_in_formation"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["coin_inside_boo_act_1"], + "802ac15c": ["coin_inside_boo_act_0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["door_animation_and_reset"], + "802ac958": ["set_door_camera_event"], + "802ac9d0": ["play_door_open_noise"], + "802aca6c": ["play_warp_door_open_noise"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["grindel_thwomp_act_4"], + "802ad10c": ["grindel_thwomp_act_2"], + "802ad1a4": ["grindel_thwomp_act_3"], + "802ad238": ["grindel_thwomp_act_1"], + "802ad2d0": ["grindel_thwomp_act_0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["tumbling_bridge_act_1"], + "802ad76c": ["tumbling_bridge_act_2"], + "802ad7f4": ["tumbling_bridge_act_3"], + "802ad828": ["tumbling_bridge_act_0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["elevator_starting_shake"], + "802ad8f0": ["elevator_act_0"], + "802ada4c": ["elevator_act_1"], + "802adb88": ["elevator_act_2"], + "802adce4": ["elevator_act_4"], + "802add70": ["elevator_act_3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["spawn_mist_from_global"], + "802ae360": ["bhv_ground_sand_init"], + "802ae394": ["spawn_smoke_with_velocity"], + "802ae45c": ["clear_particle_flags"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["spawn_wind_particles"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["spawn_and_init_wf_platforms"], + "802b039c": ["spawn_wf_platform_group"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["square_plat_set_yaw_until_timer"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["check_if_moving_over_floor"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["breakable_box_init"], + "802b17f4": ["hidden_breakable_box_actions"], + "802b19d8": ["hidden_unbreakable_box_actions"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["geo_move_mario_part_from_parent"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["heave_ho_act_1"], + "802b1e6c": ["heave_ho_act_2"], + "802b1ff4": ["heave_ho_act_3"], + "802b20a0": ["heave_ho_act_0"], + "802b2154": ["heave_ho_move"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["jumping_box_act_0"], + "802b27d8": ["jumping_box_act_1"], + "802b2824": ["jumping_box_free_update"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["spawn_sparkle_particles"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["arc_to_goal_pos"], + "802b3250": ["grand_star_zero_velocity"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["bullet_bill_act_0"], + "802b38b8": ["bullet_bill_act_1"], + "802b394c": ["bullet_bill_act_2"], + "802b3b08": ["bullet_bill_act_3"], + "802b3b24": ["bullet_bill_act_4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["bowser_tail_anchor_act_0"], + "802b3cdc": ["bowser_tail_anchor_act_1"], + "802b3d10": ["bowser_tail_anchor_act_2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["bowser_spawn_shockwave"], + "802b41fc": ["bowser_bounce"], + "802b4288": ["bowser_set_anim_look_up_and_walk"], + "802b4300": ["bowser_set_anim_slow_gait"], + "802b4368": ["bowser_set_anim_look_down"], + "802b43dc": ["bowser_initialize_action"], + "802b4478": ["bowser_act_text_wait"], + "802b44bc": ["bowser_act_intro_walk"], + "802b45f4": ["bowser_bitdw_act_controller"], + "802b473c": ["bowser_bitfs_act_controller"], + "802b48d4": ["bowser_general_bits_act_controller"], + "802b4a1c": ["bowser_set_act_jump"], + "802b4a3c": ["bowser_bits_act_controller"], + "802b4af4": ["bowser_reset_fallen_off_stage"], + "802b4bac": ["bowser_act_unused_slow_walk"], + "802b4be8": ["bowser_act_default"], + "802b4ca4": ["bowser_act_breath_fire"], + "802b4d14": ["bowser_act_walk_to_mario"], + "802b4f00": ["bowser_act_teleport"], + "802b5104": ["bowser_act_spit_fire_into_sky"], + "802b5218": ["bowser_act_hit_mine"], + "802b53f4": ["bowser_set_anim_in_air"], + "802b5444": ["bowser_land"], + "802b5554": ["bowser_short_second_hop"], + "802b55cc": ["bowser_act_jump"], + "802b5798": ["bowser_act_jump_towards_mario"], + "802b58bc": ["bowser_act_hit_edge"], + "802b59cc": ["bowser_act_spit_fire_onto_floor"], + "802b5aec": ["bowser_turn_on_timer"], + "802b5c00": ["bowser_act_turn_from_edge"], + "802b5c40": ["bowser_act_charge_mario"], + "802b5f6c": ["bowser_check_hit_mine"], + "802b5fec": ["bowser_act_thrown_dropped"], + "802b611c": ["bowser_set_goal_invisible"], + "802b6190": ["bowser_act_jump_onto_stage"], + "802b6568": ["bowser_act_dance"], + "802b65d0": ["bowser_spawn_grand_star_key"], + "802b6670": ["bowser_fly_back_dead"], + "802b6730": ["bowser_dead_bounce"], + "802b67d4": ["bowser_dead_wait_for_mario"], + "802b6878": ["bowser_dead_twirl_into_trophy"], + "802b6a10": ["bowser_dead_hide"], + "802b6a78": ["bowser_dead_not_bits_end"], + "802b6bac": ["bowser_dead_bits_end"], + "802b6cf0": ["bowser_act_dead"], + "802b6e40": ["bowser_tilt_platform"], + "802b6ee0": ["bowser_act_ride_tilting_platform"], + "802b711c": ["bowser_check_fallen_off_stage"], + "802b71e4": ["bowser_free_update"], + "802b72d4": ["bowser_held_update"], + "802b7418": ["bowser_thrown_dropped_update"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["geo_update_body_rot_from_parent"], + "802b7a20": ["bowser_open_eye_switch"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["geo_bits_bowser_coloring"], + "802b7e68": ["falling_bowser_plat_act_0"], + "802b7ef0": ["falling_bowser_plat_act_1"], + "802b8024": ["falling_bowser_plat_act_2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["bowser_flame_despawn"], + "802b8434": ["bowser_flame_should_despawn"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["bowser_flame_move"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_movement_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["vec3f_copy_2"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["checkerboard_plat_act_move_y"], + "802b9af8": ["checkerboard_plat_act_rotate"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["water_level_pillar_undrained"], + "802ba13c": ["water_level_pillar_drained"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["geo_scale_bowser_key"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["geo_update_projectile_pos_from_parent_copy"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["lll_octagonal_mesh_move"], + "802bbfd8": ["lll_octagonal_mesh_find_y_offset"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["fire_bar_spawn_flames"], + "802bc4f4": ["fire_bar_act_0"], + "802bc538": ["fire_bar_act_1"], + "802bc590": ["fire_bar_act_2"], + "802bc5fc": ["fire_bar_act_3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["hexagonal_ring_spawn_flames"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["sinking_rectangular_plat_actions"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["koopa_shell_spawn_water_drop"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["koopa_shell_spawn_sparkles"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["tox_box_shake_screen"], + "802bd91c": ["tox_box_move"], + "802bdb04": ["tox_box_act_4"], + "802bdb3c": ["tox_box_act_5"], + "802bdb74": ["tox_box_act_6"], + "802bdbac": ["tox_box_act_7"], + "802bdbe4": ["tox_box_act_1"], + "802bdc7c": ["tox_box_act_2"], + "802bdcc8": ["tox_box_act_3"], + "802bdd14": ["tox_box_act_0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["set_obj_anim_with_accel_and_sound"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["tuxies_mother_act_2"], + "802bef8c": ["tuxies_mother_act_1"], + "802bf1d8": ["tuxies_mother_act_0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["small_penguin_dive_with_mario"], + "802bf474": ["small_penguin_act_2"], + "802bf57c": ["small_penguin_act_1"], + "802bf648": ["small_penguin_act_3"], + "802bf6e4": ["small_penguin_act_4"], + "802bf760": ["small_penguin_act_0"], + "802bf90c": ["small_penguin_act_5"], + "802bfa14": ["small_penguin_free_actions"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["fish_act_spawn"], + "802bfeb8": ["fish_act_respawn"], + "802bff20": ["fish_act_init"], + "802bff3c": ["bhv_large_fish_group_loop"], + "802bff68": ["fish_regroup"], + "802c00b4": ["fish_group_act_rotation"], + "802c0348": ["fish_group_act_move"], + "802c06a8": ["fish_group_act_animate"], + "802c0768": ["bhv_fish_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["bub_spawner_act_0"], + "802c0b50": ["bub_spawner_act_1"], + "802c0ba4": ["bub_spawner_act_2"], + "802c0bc4": ["bub_spawner_act_3"], + "802c0be0": ["bhv_bub_spawner_loop"], + "802c0c0c": ["bub_move_vertically"], + "802c0cd4": ["bub_act_0"], + "802c0d44": ["bub_act_1"], + "802c0f90": ["bub_act_2"], + "802c1204": ["bhv_bub_loop"], + "802c12c0": ["bhv_rotating_exclamation_box_loop"], + "802c1308": ["exclamation_box_act_0"], + "802c13ec": ["exclamation_box_act_1"], + "802c14b0": ["exclamation_box_act_2"], + "802c15b8": ["exclamation_box_act_3"], + "802c17bc": ["exclamation_box_spawn_contents"], + "802c18d0": ["exclamation_box_act_4"], + "802c1988": ["exclamation_box_act_5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["bhv_pole_base_loop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["update_angle_from_move_flags"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["whomp_play_sfx_from_pound_animation"], + "802c6d6c": ["whomp_act_0"], + "802c6ec8": ["whomp_act_7"], + "802c6fb0": ["whomp_act_1"], + "802c710c": ["whomp_act_2"], + "802c7254": ["whomp_act_3"], + "802c72b4": ["whomp_act_4"], + "802c7380": ["whomp_act_5"], + "802c7428": ["king_whomp_on_ground"], + "802c75fc": ["whomp_on_ground"], + "802c76d4": ["whomp_act_6"], + "802c7858": ["whomp_act_8"], + "802c7998": ["whomp_act_9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_spawn_droplets"], + "802c7b14": ["bhv_water_droplet_loop"], + "802c7cac": ["bhv_idle_water_wave_loop"], + "802c7d40": ["bhv_water_droplet_splash_init"], + "802c7d90": ["bhv_bubble_splash_init"], + "802c7dfc": ["bhv_shallow_water_splash_init"], + "802c7e5c": ["bhv_wave_trail_shrink"], + "802c7f98": ["bhv_strong_wind_particle_loop"], + "802c81b4": ["cur_obj_spawn_strong_wind_particles"], + "802c834c": ["bhv_sl_snowman_wind_loop"], + "802c863c": ["bhv_sl_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["debug_print_obj_collision"], + "802c8fe4": ["detect_object_hitbox_overlap"], + "802c91ec": ["detect_object_hurtbox_overlap"], + "802c9388": ["clear_object_collision"], + "802c93f8": ["check_collision_in_list"], + "802c94ac": ["check_player_object_collision"], + "802c95b4": ["check_pushable_object_collision"], + "802c9630": ["check_destructive_object_collision"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["cur_obj_play_sound_1"], + "802ca1e0": ["cur_obj_play_sound_2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["stub_debug_1"], + "802ca380": ["stub_debug_2"], + "802ca390": ["stub_debug_3"], + "802ca3a0": ["stub_debug_4"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_debug_5"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["debug_enemy_unknown"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stop_other_paintings"], + "802d2a74": ["painting_mario_y"], + "802d2b08": ["painting_mario_z"], + "802d2b84": ["painting_ripple_y"], + "802d2c40": ["painting_nearest_4th"], + "802d2d80": ["painting_mario_x"], + "802d2dfc": ["painting_ripple_x"], + "802d2eb8": ["painting_state"], + "802d2ffc": ["wall_painting_proximity_idle"], + "802d319c": ["wall_painting_proximity_rippling"], + "802d327c": ["wall_painting_continuous_idle"], + "802d341c": ["wall_painting_continuous_rippling"], + "802d34fc": ["floor_painting_proximity_idle"], + "802d36ac": ["floor_painting_proximity_rippling"], + "802d379c": ["floor_painting_continuous_idle"], + "802d393c": ["floor_painting_continuous_rippling"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_state"], + "802d3cec": ["calculate_ripple_at_point"], + "802d3e6c": ["ripple_if_movable"], + "802d3ee4": ["painting_generate_mesh"], + "802d404c": ["painting_calculate_triangle_normals"], + "802d43f8": ["normalize_component"], + "802d44bc": ["painting_average_vertex_normals"], + "802d47d0": ["render_painting"], + "802d4edc": ["painting_model_view_transform"], + "802d50dc": ["painting_ripple_image"], + "802d5354": ["painting_ripple_env_mapped"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["move_ddd_painting"], + "802d58e4": ["set_painting_layer"], + "802d593c": ["display_painting"], + "802d59a8": ["wall_painting_update"], + "802d5aa0": ["floor_painting_update"], + "802d5b98": ["geo_painting_draw"], + "802d5d0c": ["geo_painting_update"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["coin_step"], + "802e5e6c": ["moving_coin_flicker"], + "802e5ea4": ["coin_collected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["blue_coin_sliding_away_from_mario"], + "802e63ec": ["blue_coin_sliding_slow_down"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["bobomb_spawn_coin"], + "802e6af8": ["bobomb_act_explode"], + "802e6bd4": ["bobomb_check_interactions"], + "802e6cf0": ["bobomb_act_patrol"], + "802e6dc8": ["bobomb_act_chase_mario"], + "802e6e84": ["bobomb_act_launched"], + "802e6ed8": ["generic_bobomb_free_loop"], + "802e7020": ["stationary_bobomb_free_loop"], + "802e7134": ["bobomb_free_loop"], + "802e7180": ["bobomb_held_loop"], + "802e7220": ["bobomb_dropped_loop"], + "802e7280": ["bobomb_thrown_loop"], + "802e7324": ["curr_obj_random_blink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["bobomb_buddy_act_idle"], + "802e7814": ["bobomb_buddy_cannon_dialog"], + "802e79dc": ["bobomb_buddy_act_talk"], + "802e7b00": ["bobomb_buddy_act_turn_to_talk"], + "802e7bb0": ["bobomb_buddy_actions"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["cannon_door_act_opening"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["whirlpool_set_hitbox"], + "802e7fec": ["whirpool_orient_graph"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["butterfly_step"], + "802e9278": ["butterfly_calculate_angle"], + "802e9470": ["butterfly_act_rest"], + "802e94e4": ["butterfly_act_follow_mario"], + "802e9548": ["butterfly_act_return_home"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["hoot_find_next_floor"], + "802e98c0": ["hoot_floor_bounce"], + "802e9a4c": ["hoot_free_step"], + "802e9cf4": ["hoot_player_set_yaw"], + "802e9d98": ["hoot_carry_step"], + "802e9f60": ["hoot_surface_collision"], + "802ea144": ["hoot_act_ascent"], + "802ea258": ["hoot_action_loop"], + "802ea3f0": ["hoot_turn_to_home"], + "802ea4ec": ["hoot_awake_loop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["bully_check_mario_collision"], + "802eb288": ["bully_act_chase_mario"], + "802eb3f0": ["bully_act_knockback"], + "802eb510": ["bully_act_back_up"], + "802eb5c4": ["bully_backup_check"], + "802eb630": ["bully_play_stomping_sound"], + "802eb744": ["bully_step"], + "802eb7e0": ["bully_spawn_coin"], + "802eb8b0": ["bully_act_level_death"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["big_bully_spawn_minion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["big_bully_spawn_star"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["water_ring_calc_mario_dist"], + "802ec030": ["water_ring_init"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["water_ring_check_collection"], + "802ec3d0": ["water_ring_set_scale"], + "802ec4e0": ["water_ring_act_collected"], + "802ec59c": ["water_ring_act_not_collected"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["spawn_manta_ray_ring_manager"], + "802ec818": ["water_ring_spawner_act_inactive"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["manta_water_ring_act_not_collected"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["celeb_star_act_spin_around_mario"], + "802ed28c": ["celeb_star_act_face_camera"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["moneybag_check_mario_collision"], + "802ee268": ["moneybag_jump"], + "802ee46c": ["moneybag_act_move_around"], + "802ee598": ["moneybag_act_return_home"], + "802ee728": ["moneybag_act_disappear"], + "802ee778": ["moneybag_act_death"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["bowling_ball_set_hitbox"], + "802eea7c": ["bowling_ball_set_waypoints"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["set_rolling_sphere_hitbox"], + "802f0bd4": ["adjust_rolling_face_pitch"], + "802f0c94": ["snowmans_bottom_act_1"], + "802f0df0": ["snowmans_bottom_act_2"], + "802f0fa8": ["snowmans_bottom_act_3"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["boulder_act_1"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["cap_set_hitbox"], + "802f19c8": ["cap_despawn"], + "802f1a10": ["cap_check_quicksand"], + "802f1bb8": ["cap_sink_quicksand"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["cap_scale_vertically"], + "802f1e5c": ["wing_vanish_cap_act_0"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["metal_cap_act_0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["normal_cap_set_save_flags"], + "802f2284": ["normal_cap_act_0"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["spawn_star"], + "802f2b88": ["spawn_default_star"], + "802f2bd4": ["spawn_red_coin_cutscene_star"], + "802f2c24": ["spawn_no_exit_star"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["rolling_log_roll_log"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["volcano_act_1"], + "802f39b4": ["volcano_act_3"], + "802f3a30": ["bhv_volcano_trap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["one_up_loop_in_air"], + "802f3ea8": ["pole_1up_move_towards_mario"], + "802f401c": ["one_up_move_away_from_mario"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["sliding_1up_move"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["controllable_platform_act_1"], + "802f4ce0": ["controllable_platform_act_2"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["controllable_platform_hit_wall"], + "802f5068": ["controllable_platform_check_walls"], + "802f52c0": ["controllable_platform_shake_on_wall_hit"], + "802f547c": ["controllable_platform_tilt_from_mario"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["small_breakable_box_spawn_dust"], + "802f5e44": ["small_breakable_box_act_move"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["floating_platform_find_home_y"], + "802f665c": ["floating_platform_act_0"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["manta_ray_move"], + "802f7068": ["manta_ray_act_spawn_ring"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["spawn_treasure_chest"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["bhv_yoshi_loop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["mr_blizzard_spawn_white_particles"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["geo_snufit_move_mask"], + "8030d9ac": ["geo_snufit_scale_body"], + "8030da14": ["snufit_act_idle"], + "8030db38": ["snufit_act_shoot"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L_U_8031C200"], + "8031c23c": ["L_U_8031C23C"], + "8031c298": ["L_U_8031C298"], + "8031c2dc": ["L_U_8031C2DC"], + "8031c328": ["L_U_8031C328"], + "8031c36c": ["L_U_8031C36C"], + "8031c3bc": ["L_U_8031C3BC"], + "8031c3e8": ["L_U_8031C3E8"], + "8031c454": ["L_U_8031C454"], + "8031c4a4": ["L_U_8031C4A4"], + "8031c5c8": ["L_U_8031C5C8"], + "8031c698": ["L_U_8031C698"], + "8031c6a0": ["L_U_8031C6A0"], + "8031cbe0": ["L_U_8031CBE0"], + "8031cbec": ["L_U_8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e578": ["sequence_player_fade_out_internal"], + "8031e5c0": ["func_8031D690"], + "8031e60c": ["func_8031D6E4"], + "8031e6a4": ["func_8031D7B0"], + "8031e710": ["func_8031D838"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031eb30": ["process_sound_request"], + "8031edec": ["process_all_sound_requests"], + "8031ee70": ["func_8031DFE8"], + "8031ef6c": ["func_8031E0E4"], + "8031eff4": ["func_8031E16C"], + "8031f810": ["get_sound_pan"], + "8031f96c": ["get_sound_dynamics"], + "8031fb20": ["get_sound_freq_scale"], + "8031fbe8": ["get_sound_reverb"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "803217a8": ["disable_all_sequence_players"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["sWarpBhvSpawnTable"], + "8032de4c": ["sSpawnTypeFromWarpBhv"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "803306dc": ["sCageUkikiPath"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["D_8032FCE8"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["sWaterSplashDropletParams"], + "80330d30": ["sShallowWaterSplashDropletParams"], + "80330d54": ["sWaterDropletFishParams"], + "80330d78": ["sShallowWaterWaveDropletParams"], + "80330d9c": ["sStrongWindParticleHitbox"], + "80330dac": ["sSLWalkingPenguinErraticSteps"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["sHmcPaintings"], + "80331308": ["sInsideCastlePaintings"], + "80331344": ["sTtmPaintings"], + "8033134c": ["sPaintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["D_80334810"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["D_80334894"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["D_80339F50"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gCurBhvCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["gPaintingMesh"], + "80361314": ["gPaintingTriNorms"], + "80361318": ["gRipplingPainting"], + "8036131c": ["gDddPaintingStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["D_80365CE0"], + "8036708c": ["D_80365D1C"], + "80367090": ["D_80365D20"], + "80367091": ["_osCont_numControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["__osViIntrCount"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": [".", "_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["random_u16"], + "80383cb4": ["random_float"], + "80383d1c": ["random_sign"], + "80383d68": ["obj_update_gfx_pos_and_angle"], + "80385bf0": ["stub_behavior_script_2"], + "80385c00": ["cur_obj_update"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["small_water_splash_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["idle_water_wave_geo"], + "17000168": ["wave_trail_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleParticleSpawner"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvPlungeBubble"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvVertStarParticleSpawner"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvHorStarParticleSpawner"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvTriangleParticleSpawner"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvBreathParticleSpawner"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvMistCircParticleSpawner"], + "13000e3c": ["bhvDirtParticleSpawner"], + "13000e58": ["bhvSnowParticleSpawner"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFireParticleSpawner"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvLeafParticleSpawner"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFish"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMistParticleSpawner"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSparkleParticleSpawner"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDroplet"], + "13002c7c": ["bhvWaterDropletSplash"], + "13002cb0": ["bhvBubbleSplash"], + "13002ce0": ["bhvIdleWaterWave"], + "13002d28": ["bhvObjectWaterSplash"], + "13002d50": ["bhvShallowWaterWave"], + "13002d7c": ["bhvShallowWaterSplash"], + "13002db0": ["bhvObjectWaveTrail"], + "13002dc0": ["bhvWaveTrail"], + "13002e04": ["bhvTinyStrongWindParticle"], + "13002e20": ["bhvStrongWindParticle"], + "13002e3c": ["bhvSLSnowmanWind"], + "13002e58": ["bhvSLWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvWarps60"], + "13002f64": ["bhvWarps64"], + "13002f68": ["bhvWarps68"], + "13002f6c": ["bhvWarps6C"], + "13002f70": ["bhvDeathWarp"], + "13002f74": ["bhvWarps74"], + "13002f78": ["bhvWarps78"], + "13002f7c": ["bhvWarps7C"], + "13002f80": ["bhvPaintingDeathWarp"], + "13002f84": ["bhvWarps84"], + "13002f88": ["bhvWarps88"], + "13002f8c": ["bhvWarps8C"], + "13002f90": ["bhvWarps90"], + "13002f94": ["bhvWarps94"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 10": { - "80000000": "EXCEPTION_TLB_MISS", - "a4000000": "SP_DMEM", - "a40004c0": "SP_DMEM_UNK0", - "a4000774": "SP_DMEM_UNK1", - "a4001000": "SP_IMEM", - "a4040010": "SP_STATUS_REG", - "a4080000": "SP_PC", - "a4300000": "MI_MODE_REG", - "a4300004": "MI_VERSION_REG", - "a4300008": "MI_INTR_REG", - "a430000c": "MI_INTR_MASK_REG", - "a4400010": "VI_CURRENT_REG", - "a450000c": "AI_STATUS_REG", - "a4600000": "PI_DRAM_ADDR_REG", - "a4600004": "PI_CART_ADDR_REG", - "a460000c": "PI_WR_LEN_REG", - "a4600010": "PI_STATUS_REG", - "a4700000": "RI_MODE_REG", - "a4700010": "RI_REFRESH_REG", - "a4800018": "SI_STATUS_REG", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802f69cc": "func_sh_802F69CC", - "80302ef0": "osMotorStop", - "80303090": "osMotorStart", - "803033ac": "osMotorInit", - "803016a0": "func_sh_803016A0", - "803016d0": "func_sh_803016D0", - "80301820": "func_sh_80301820", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04000040": "ipl3_entry", - "04000b70": "ipl3_font", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "entry_point", - "80246050": "handle_debug_key_sequences", - "80246170": "unknown_main_func", - "802461cc": "stub_main_1", - "802461dc": "stub_main_2", - "802461ec": "stub_main_3", - "802461fc": "setup_mesg_queues", - "802462e0": "alloc_pool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "send_sp_task_message", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "main_func", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "draw_reset_bars", - "80247f08": "rendering_init", - "80247fdc": "config_gfx_pool", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "reset_volume", - "80248c58": "lower_background_noise", - "80248ce8": "raise_background_noise", - "80248d78": "disable_background_sound", - "80248dc0": "enable_background_sound", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "fadeout_music", - "8024927c": "fadeout_level_music", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "80249494": "play_menu_sounds_extra", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_pause", - "80249764": "set_play_mode", - "8024978c": "warp_special", - "802497b8": "fade_into_special_warp", - "8024982c": "stub_level_update_1", - "8024983c": "load_level_init_text", - "8024995c": "init_door_warp", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "warp_area", - "8024a18c": "warp_level", - "8024a1d8": "warp_credits", - "8024a374": "check_instant_warp", - "8024a584": "music_changed_through_warp", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_obj_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "should_push_or_pull_door", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_strong_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "mario_can_talk", - "8024ff04": "check_read_sign", - "80250098": "check_npc_talk", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "stub_mario_step_1", - "802550b0": "stub_mario_step_2", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "bhv_end_peach_loop", - "802570dc": "bhv_end_toad_loop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025bc80": "generate_yellow_sparkles", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "climb_up_ledge", - "8025f560": "update_ledge_climb_camera", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "check_common_idle_cancels", - "80260aac": "check_common_hold_idle_cancels", - "80260cb4": "act_idle", - "80260f94": "play_anim_sound", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "stopping_step", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "act_hold_butt_slide_stop", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "act_shockwave_bounce", - "80262bc4": "landing_step", - "80262c34": "check_common_landing_cancels", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "act_hold_jump_land_stop", - "802631f0": "act_hold_freefall_land_stop", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "check_common_stationary_cancels", - "80263898": "mario_execute_stationary_action", - "80263e60": "tilt_body_running", - "80263ee4": "play_step_sound", - "80264024": "align_with_floor", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "anim_and_audio_for_walk", - "80265b1c": "anim_and_audio_for_hold_walk", - "80265d90": "anim_and_audio_for_heavy_walk", - "80265df8": "push_or_sidle_wall", - "80266038": "tilt_body_walking", - "802661cc": "tilt_body_ground_shell", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "tilt_body_butt_slide", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "play_knockback_sound", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "check_wall_kick", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_envfx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhv_toad_message_loop", - "80276910": "bhv_toad_message_init", - "80276bb8": "bhv_unlock_door_star_init", - "80276ccc": "bhv_unlock_door_star_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "load_segment_decompress_heap", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "load_patchable_table", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "override_viewport_and_clip", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "area_get_warp_node_from_params", - "8027aa74": "load_obj_warp_nodes", - "8027ab04": "clear_areas", - "8027ad74": "clear_area_graph_nodes", - "8027ae44": "load_area", - "8027af48": "unload_area", - "8027afbc": "load_mario_area", - "8027b038": "unload_mario_area", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "stub_camera_2", - "80287dd4": "stub_camera_3", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "stub_camera_4", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "spawn_child_obj_relative", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_obj_list_processor_1", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "geo_update_projectile_pos_from_parent", - "8029d924": "geo_update_layer_transparency", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "obj_update_pos_from_parent_transformation", - "8029dda8": "obj_apply_scale_to_matrix", - "8029de80": "create_transformation_from_matrices", - "8029e1b0": "obj_set_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "cur_obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "cur_obj_rotate_yaw_toward", - "8029e694": "obj_angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "obj_set_parent_relative_pos", - "8029e914": "obj_set_pos", - "8029e96c": "obj_set_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "spawn_obj_with_transform_flags", - "8029eb04": "spawn_water_droplet", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "cur_obj_move_using_vel", - "8029f0c8": "obj_copy_graph_y_offset", - "8029f0e0": "obj_copy_pos_and_angle", - "8029f120": "obj_copy_pos", - "8029f148": "obj_copy_angle", - "8029f188": "obj_set_gfx_pos_from_pos", - "8029f1b0": "obj_init_animation", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "obj_apply_scale_to_transform", - "8029f3a8": "obj_copy_scale", - "8029f3d0": "obj_scale_xyz", - "8029f404": "obj_scale", - "8029f430": "cur_obj_scale", - "8029f464": "cur_obj_init_animation", - "8029f4b4": "cur_obj_init_animation_with_sound", - "8029f514": "cur_obj_init_animation_with_accel_and_sound", - "8029f59c": "obj_init_animation_with_sound", - "8029f600": "cur_obj_enable_rendering_and_become_tangible", - "8029f620": "cur_obj_enable_rendering", - "8029f644": "cur_obj_disable_rendering_and_become_intangible", - "8029f66c": "cur_obj_disable_rendering", - "8029f694": "cur_obj_unhide", - "8029f6bc": "cur_obj_hide", - "8029f6e0": "cur_obj_set_pos_relative", - "8029f7d8": "cur_obj_set_pos_relative_to_parent", - "8029f820": "cur_obj_enable_rendering_2", - "8029f848": "cur_obj_unused_init_on_floor", - "8029f8ec": "obj_set_face_angle_to_move_angle", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "cur_obj_nearest_object_with_behavior", - "8029f998": "cur_obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "cur_obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "cur_obj_find_nearby_held_actor", - "8029fdb4": "cur_obj_change_action", - "8029fe00": "cur_obj_set_vel_from_mario_vel", - "8029fe6c": "cur_obj_reverse_animation", - "8029fea4": "cur_obj_extend_animation_if_at_end", - "8029ff04": "cur_obj_check_if_near_animation_end", - "8029ffa4": "cur_obj_check_if_at_animation_end", - "802a0008": "cur_obj_check_anim_frame", - "802a0050": "cur_obj_check_anim_frame_in_range", - "802a00ac": "cur_obj_check_frame_prior_current_frame", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "cur_obj_set_y_vel_and_animation", - "802a01d8": "cur_obj_unrender_and_reset_state", - "802a0380": "cur_obj_get_thrown_or_placed", - "802a0474": "cur_obj_get_dropped", - "802a04c0": "cur_obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "cur_obj_clear_interact_status_flag", - "802a0568": "obj_mark_for_deletion", - "802a057c": "cur_obj_disable", - "802a05b4": "cur_obj_become_intangible", - "802a05d4": "cur_obj_become_tangible", - "802a05f0": "obj_become_tangible", - "802a0604": "cur_obj_update_floor_height", - "802a064c": "cur_obj_update_floor_height_and_get_floor", - "802a079c": "cur_obj_apply_drag_xz", - "802a0e68": "cur_obj_move_y", - "802a113c": "cur_obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "cur_obj_move_xz_using_fvel_and_yaw", - "802a12a4": "cur_obj_move_y_with_terminal_vel", - "802a1308": "cur_obj_compute_vel_xz", - "802a1370": "increment_velocity_toward_range", - "802a1424": "obj_check_if_collided_with_object", - "802a148c": "cur_obj_set_behavior", - "802a14c4": "obj_set_behavior", - "802a14fc": "cur_obj_has_behavior", - "802a1554": "obj_has_behavior", - "802a15ac": "cur_obj_lateral_dist_from_mario_to_home", - "802a1634": "cur_obj_lateral_dist_to_home", - "802a16ac": "cur_obj_outside_home_square", - "802a1774": "cur_obj_outside_home_rectangle", - "802a184c": "cur_obj_set_pos_to_home", - "802a188c": "cur_obj_set_pos_to_home_and_stop", - "802a18dc": "cur_obj_shake_y", - "802a1930": "cur_obj_start_cam_event", - "802a1960": "set_mario_interact_hoot_if_in_range", - "802a19ac": "obj_set_billboard", - "802a19c8": "cur_obj_set_hitbox_radius_and_height", - "802a19f0": "cur_obj_set_hurtbox_radius_and_height", - "802a1b34": "obj_spawn_loot_blue_coins", - "802a1b8c": "obj_spawn_loot_yellow_coins", - "802a1bdc": "cur_obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "cur_obj_abs_y_dist_to_home", - "802a1cc4": "cur_obj_advance_looping_anim", - "802a1f3c": "cur_obj_resolve_wall_collisions", - "802a2320": "cur_obj_update_floor_and_walls", - "802a2348": "cur_obj_move_standard", - "802a25b4": "cur_obj_move_using_vel_and_gravity", - "802a2644": "cur_obj_move_using_fvel_and_gravity", - "802a2674": "obj_set_pos_relative", - "802a2748": "cur_obj_angle_to_home", - "802a27b0": "obj_set_gfx_pos_at_obj_pos", - "802a2804": "obj_translate_local", - "802a2930": "obj_build_transform_from_pos_and_angle", - "802a2a18": "obj_set_throw_matrix_from_transform", - "802a2a84": "obj_build_transform_relative_to_parent", - "802a2b28": "obj_create_transform_from_self", - "802a2b6c": "cur_obj_rotate_move_angle_using_vel", - "802a2bc4": "cur_obj_rotate_face_angle_using_vel", - "802a2c1c": "cur_obj_set_face_angle_to_move_angle", - "802a2c5c": "cur_obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "obj_scale_random", - "802a2fc0": "obj_translate_xyz_random", - "802a308c": "obj_translate_xz_random", - "802a31e0": "cur_obj_set_pos_via_transform", - "802a3268": "cur_obj_reflect_move_angle_off_wall", - "802a32ac": "cur_obj_spawn_particles", - "802a34a4": "obj_set_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "cur_obj_wait_then_blink", - "802a3754": "cur_obj_is_mario_ground_pounding_platform", - "802a37ac": "spawn_mist_particles", - "802a37dc": "spawn_mist_particles_with_sound", - "802a3818": "cur_obj_push_mario_away", - "802a390c": "cur_obj_push_mario_away_from_cylinder", - "802a399c": "bhv_dust_smoke_loop", - "802a3a4c": "cur_obj_set_direction_table", - "802a3a88": "cur_obj_progress_direction_table", - "802a3b28": "stub_obj_helpers_3", - "802a3b40": "cur_obj_scale_over_time", - "802a3c18": "cur_obj_set_pos_to_home_with_debug", - "802a3cec": "stub_obj_helpers_4", - "802a3cfc": "cur_obj_is_mario_on_platform", - "802a3d40": "cur_obj_shake_y_until", - "802a3dd4": "cur_obj_move_up_and_down", - "802a3e30": "cur_obj_call_action_function", - "802a3ef8": "spawn_base_star_with_no_lvl_exit", - "802a3f24": "bit_shift_left", - "802a3f48": "cur_obj_mario_far_away", - "802a404c": "is_mario_moving_fast_or_in_air", - "802a40b8": "is_item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "cur_obj_enable_rendering_if_mario_in_room", - "802a4360": "cur_obj_set_hitbox_and_die_if_attacked", - "802a4440": "obj_explode_and_spawn_coins", - "802a44f4": "obj_set_collision_data", - "802a452c": "cur_obj_if_hit_wall_bounce_away", - "802a4564": "cur_obj_hide_if_mario_far_away_y", - "802a45e4": "geo_offset_klepto_held_object", - "802a462c": "geo_offset_klepto_debug", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "cur_obj_can_mario_activate_textbox", - "802a48bc": "cur_obj_can_mario_activate_textbox_2", - "802a4960": "cur_obj_update_dialog", - "802a4be4": "cur_obj_update_dialog_with_cutscene", - "802a4f04": "cur_obj_has_model", - "802a4f58": "cur_obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "cur_obj_shake_screen", - "802a513c": "obj_attack_collided_from_other_object", - "802a51ac": "cur_obj_was_attacked_or_ground_pounded", - "802a5228": "obj_copy_behavior_params", - "802a5248": "cur_obj_init_animation_and_anim_frame", - "802a5288": "cur_obj_init_animation_and_check_if_near_end", - "802a52c4": "cur_obj_init_animation_and_extend_if_at_end", - "802a52f8": "cur_obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "cur_obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "cur_obj_check_interacted", - "802a5524": "cur_obj_spawn_loot_blue_coin", - "802a5588": "cur_obj_spawn_star_at_y_offset", - "802a5620": "star_door_update_pos", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "mr_i_piranha_particle_act_0", - "802a5a44": "mr_i_piranha_particle_act_1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "spawn_mr_i_particle", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "mr_i_act_3", - "802a6518": "mr_i_act_2", - "802a68a0": "mr_i_act_1", - "802a6ad8": "mr_i_act_0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "cap_switch_act_0", - "802a7020": "cap_switch_act_1", - "802a708c": "cap_switch_act_2", - "802a7160": "cap_switch_act_3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "geo_update_held_mario_pos", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "king_bobomb_act_0", - "802a7384": "mario_is_far_below_object", - "802a73d8": "king_bobomb_act_2", - "802a7598": "king_bobomb_act_3", - "802a7804": "king_bobomb_act_1", - "802a78d8": "king_bobomb_act_6", - "802a7a60": "king_bobomb_act_7", - "802a7b1c": "king_bobomb_act_8", - "802a7b5c": "king_bobomb_act_4", - "802a7d14": "king_bobomb_act_5", - "802a7fbc": "king_bobomb_move", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "scale_bubble_random", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "scale_bubble_sin", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "opened_cannon_act_0", - "802a8f40": "opened_cannon_act_4", - "802a9114": "opened_cannon_act_6", - "802a92fc": "opened_cannon_act_5", - "802a93f8": "opened_cannon_act_1", - "802a9440": "opened_cannon_act_2", - "802a9460": "opened_cannon_act_3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "common_anchor_mario_behavior", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "unknown_chuckya_function", - "802a98c4": "approach_forward_vel", - "802a9994": "chuckya_act_0", - "802a9d08": "chuckya_act_1", - "802a9f54": "chuckya_act_3", - "802a9fc8": "chuckya_act_2", - "802aa02c": "chuckya_move", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "check_mario_attacking", - "802aa3c8": "init_kickable_board_rock", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "set_koopa_shell_underwater_hitbox", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "bhv_fading_warp_loop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "spawn_mist_particles_variable", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "set_sparkle_spawn_star_hitbox", - "802ab060": "set_home_to_mario", - "802ab158": "set_y_home_to_pos", - "802ab18c": "slow_star_rotation", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "spawn_coin_in_formation", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "coin_inside_boo_act_1", - "802ac15c": "coin_inside_boo_act_0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "door_animation_and_reset", - "802ac958": "set_door_camera_event", - "802ac9d0": "play_door_open_noise", - "802aca6c": "play_warp_door_open_noise", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "grindel_thwomp_act_4", - "802ad10c": "grindel_thwomp_act_2", - "802ad1a4": "grindel_thwomp_act_3", - "802ad238": "grindel_thwomp_act_1", - "802ad2d0": "grindel_thwomp_act_0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "tumbling_bridge_act_1", - "802ad76c": "tumbling_bridge_act_2", - "802ad7f4": "tumbling_bridge_act_3", - "802ad828": "tumbling_bridge_act_0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "elevator_starting_shake", - "802ad8f0": "elevator_act_0", - "802ada4c": "elevator_act_1", - "802adb88": "elevator_act_2", - "802adce4": "elevator_act_4", - "802add70": "elevator_act_3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "spawn_mist_from_global", - "802ae360": "bhv_ground_sand_init", - "802ae394": "spawn_smoke_with_velocity", - "802ae45c": "clear_particle_flags", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "spawn_wind_particles", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "spawn_and_init_wf_platforms", - "802b039c": "spawn_wf_platform_group", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "square_plat_set_yaw_until_timer", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "check_if_moving_over_floor", - "802b15e8": "bhv_pushable_loop", - "802b1714": "breakable_box_init", - "802b17f4": "hidden_breakable_box_actions", - "802b19d8": "hidden_unbreakable_box_actions", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "geo_move_mario_part_from_parent", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "heave_ho_act_1", - "802b1e6c": "heave_ho_act_2", - "802b1ff4": "heave_ho_act_3", - "802b20a0": "heave_ho_act_0", - "802b2154": "heave_ho_move", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "jumping_box_act_0", - "802b27d8": "jumping_box_act_1", - "802b2824": "jumping_box_free_update", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "spawn_sparkle_particles", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "arc_to_goal_pos", - "802b3250": "grand_star_zero_velocity", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "bullet_bill_act_0", - "802b38b8": "bullet_bill_act_1", - "802b394c": "bullet_bill_act_2", - "802b3b08": "bullet_bill_act_3", - "802b3b24": "bullet_bill_act_4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "bowser_tail_anchor_act_0", - "802b3cdc": "bowser_tail_anchor_act_1", - "802b3d10": "bowser_tail_anchor_act_2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "bowser_spawn_shockwave", - "802b41fc": "bowser_bounce", - "802b4288": "bowser_set_anim_look_up_and_walk", - "802b4300": "bowser_set_anim_slow_gait", - "802b4368": "bowser_set_anim_look_down", - "802b43dc": "bowser_initialize_action", - "802b4478": "bowser_act_text_wait", - "802b44bc": "bowser_act_intro_walk", - "802b45f4": "bowser_bitdw_act_controller", - "802b473c": "bowser_bitfs_act_controller", - "802b48d4": "bowser_general_bits_act_controller", - "802b4a1c": "bowser_set_act_jump", - "802b4a3c": "bowser_bits_act_controller", - "802b4af4": "bowser_reset_fallen_off_stage", - "802b4bac": "bowser_act_unused_slow_walk", - "802b4be8": "bowser_act_default", - "802b4ca4": "bowser_act_breath_fire", - "802b4d14": "bowser_act_walk_to_mario", - "802b4f00": "bowser_act_teleport", - "802b5104": "bowser_act_spit_fire_into_sky", - "802b5218": "bowser_act_hit_mine", - "802b53f4": "bowser_set_anim_in_air", - "802b5444": "bowser_land", - "802b5554": "bowser_short_second_hop", - "802b55cc": "bowser_act_jump", - "802b5798": "bowser_act_jump_towards_mario", - "802b58bc": "bowser_act_hit_edge", - "802b59cc": "bowser_act_spit_fire_onto_floor", - "802b5aec": "bowser_turn_on_timer", - "802b5c00": "bowser_act_turn_from_edge", - "802b5c40": "bowser_act_charge_mario", - "802b5f6c": "bowser_check_hit_mine", - "802b5fec": "bowser_act_thrown_dropped", - "802b611c": "bowser_set_goal_invisible", - "802b6190": "bowser_act_jump_onto_stage", - "802b6568": "bowser_act_dance", - "802b65d0": "bowser_spawn_grand_star_key", - "802b6670": "bowser_fly_back_dead", - "802b6730": "bowser_dead_bounce", - "802b67d4": "bowser_dead_wait_for_mario", - "802b6878": "bowser_dead_twirl_into_trophy", - "802b6a10": "bowser_dead_hide", - "802b6a78": "bowser_dead_not_bits_end", - "802b6bac": "bowser_dead_bits_end", - "802b6cf0": "bowser_act_dead", - "802b6e40": "bowser_tilt_platform", - "802b6ee0": "bowser_act_ride_tilting_platform", - "802b711c": "bowser_check_fallen_off_stage", - "802b71e4": "bowser_free_update", - "802b72d4": "bowser_held_update", - "802b7418": "bowser_thrown_dropped_update", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "geo_update_body_rot_from_parent", - "802b7a20": "bowser_open_eye_switch", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "geo_bits_bowser_coloring", - "802b7e68": "falling_bowser_plat_act_0", - "802b7ef0": "falling_bowser_plat_act_1", - "802b8024": "falling_bowser_plat_act_2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "bowser_flame_despawn", - "802b8434": "bowser_flame_should_despawn", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "bowser_flame_move", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_movement_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "vec3f_copy_2", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "checkerboard_plat_act_move_y", - "802b9af8": "checkerboard_plat_act_rotate", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "water_level_pillar_undrained", - "802ba13c": "water_level_pillar_drained", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "geo_scale_bowser_key", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "geo_update_projectile_pos_from_parent_copy", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "lll_octagonal_mesh_move", - "802bbfd8": "lll_octagonal_mesh_find_y_offset", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "fire_bar_spawn_flames", - "802bc4f4": "fire_bar_act_0", - "802bc538": "fire_bar_act_1", - "802bc590": "fire_bar_act_2", - "802bc5fc": "fire_bar_act_3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "hexagonal_ring_spawn_flames", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "sinking_rectangular_plat_actions", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "koopa_shell_spawn_water_drop", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "koopa_shell_spawn_sparkles", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "tox_box_shake_screen", - "802bd91c": "tox_box_move", - "802bdb04": "tox_box_act_4", - "802bdb3c": "tox_box_act_5", - "802bdb74": "tox_box_act_6", - "802bdbac": "tox_box_act_7", - "802bdbe4": "tox_box_act_1", - "802bdc7c": "tox_box_act_2", - "802bdcc8": "tox_box_act_3", - "802bdd14": "tox_box_act_0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "set_obj_anim_with_accel_and_sound", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "tuxies_mother_act_2", - "802bef8c": "tuxies_mother_act_1", - "802bf1d8": "tuxies_mother_act_0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "small_penguin_dive_with_mario", - "802bf474": "small_penguin_act_2", - "802bf57c": "small_penguin_act_1", - "802bf648": "small_penguin_act_3", - "802bf6e4": "small_penguin_act_4", - "802bf760": "small_penguin_act_0", - "802bf90c": "small_penguin_act_5", - "802bfa14": "small_penguin_free_actions", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "fish_act_spawn", - "802bfeb8": "fish_act_respawn", - "802bff20": "fish_act_init", - "802bff3c": "bhv_large_fish_group_loop", - "802bff68": "fish_regroup", - "802c00b4": "fish_group_act_rotation", - "802c0348": "fish_group_act_move", - "802c06a8": "fish_group_act_animate", - "802c0768": "bhv_fish_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "bub_spawner_act_0", - "802c0b50": "bub_spawner_act_1", - "802c0ba4": "bub_spawner_act_2", - "802c0bc4": "bub_spawner_act_3", - "802c0be0": "bhv_bub_spawner_loop", - "802c0c0c": "bub_move_vertically", - "802c0cd4": "bub_act_0", - "802c0d44": "bub_act_1", - "802c0f90": "bub_act_2", - "802c1204": "bhv_bub_loop", - "802c12c0": "bhv_rotating_exclamation_box_loop", - "802c1308": "exclamation_box_act_0", - "802c13ec": "exclamation_box_act_1", - "802c14b0": "exclamation_box_act_2", - "802c15b8": "exclamation_box_act_3", - "802c17bc": "exclamation_box_spawn_contents", - "802c18d0": "exclamation_box_act_4", - "802c1988": "exclamation_box_act_5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "bhv_pole_base_loop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "update_angle_from_move_flags", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "whomp_play_sfx_from_pound_animation", - "802c6d6c": "whomp_act_0", - "802c6ec8": "whomp_act_7", - "802c6fb0": "whomp_act_1", - "802c710c": "whomp_act_2", - "802c7254": "whomp_act_3", - "802c72b4": "whomp_act_4", - "802c7380": "whomp_act_5", - "802c7428": "king_whomp_on_ground", - "802c75fc": "whomp_on_ground", - "802c76d4": "whomp_act_6", - "802c7858": "whomp_act_8", - "802c7998": "whomp_act_9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_spawn_droplets", - "802c7b14": "bhv_water_droplet_loop", - "802c7cac": "bhv_idle_water_wave_loop", - "802c7d40": "bhv_water_droplet_splash_init", - "802c7d90": "bhv_bubble_splash_init", - "802c7dfc": "bhv_shallow_water_splash_init", - "802c7e5c": "bhv_wave_trail_shrink", - "802c7f98": "bhv_strong_wind_particle_loop", - "802c81b4": "cur_obj_spawn_strong_wind_particles", - "802c834c": "bhv_sl_snowman_wind_loop", - "802c863c": "bhv_sl_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "debug_print_obj_collision", - "802c8fe4": "detect_object_hitbox_overlap", - "802c91ec": "detect_object_hurtbox_overlap", - "802c9388": "clear_object_collision", - "802c93f8": "check_collision_in_list", - "802c94ac": "check_player_object_collision", - "802c95b4": "check_pushable_object_collision", - "802c9630": "check_destructive_object_collision", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "cur_obj_play_sound_1", - "802ca1e0": "cur_obj_play_sound_2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "stub_debug_1", - "802ca380": "stub_debug_2", - "802ca390": "stub_debug_3", - "802ca3a0": "stub_debug_4", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_debug_5", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "debug_enemy_unknown", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stop_other_paintings", - "802d2a74": "painting_mario_y", - "802d2b08": "painting_mario_z", - "802d2b84": "painting_ripple_y", - "802d2c40": "painting_nearest_4th", - "802d2d80": "painting_mario_x", - "802d2dfc": "painting_ripple_x", - "802d2eb8": "painting_state", - "802d2ffc": "wall_painting_proximity_idle", - "802d319c": "wall_painting_proximity_rippling", - "802d327c": "wall_painting_continuous_idle", - "802d341c": "wall_painting_continuous_rippling", - "802d34fc": "floor_painting_proximity_idle", - "802d36ac": "floor_painting_proximity_rippling", - "802d379c": "floor_painting_continuous_idle", - "802d393c": "floor_painting_continuous_rippling", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_state", - "802d3cec": "calculate_ripple_at_point", - "802d3e6c": "ripple_if_movable", - "802d3ee4": "painting_generate_mesh", - "802d404c": "painting_calculate_triangle_normals", - "802d43f8": "normalize_component", - "802d44bc": "painting_average_vertex_normals", - "802d47d0": "render_painting", - "802d4edc": "painting_model_view_transform", - "802d50dc": "painting_ripple_image", - "802d5354": "painting_ripple_env_mapped", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "move_ddd_painting", - "802d58e4": "set_painting_layer", - "802d593c": "display_painting", - "802d59a8": "wall_painting_update", - "802d5aa0": "floor_painting_update", - "802d5b98": "geo_painting_draw", - "802d5d0c": "geo_painting_update", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "coin_step", - "802e5e6c": "moving_coin_flicker", - "802e5ea4": "coin_collected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "blue_coin_sliding_away_from_mario", - "802e63ec": "blue_coin_sliding_slow_down", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "bobomb_spawn_coin", - "802e6af8": "bobomb_act_explode", - "802e6bd4": "bobomb_check_interactions", - "802e6cf0": "bobomb_act_patrol", - "802e6dc8": "bobomb_act_chase_mario", - "802e6e84": "bobomb_act_launched", - "802e6ed8": "generic_bobomb_free_loop", - "802e7020": "stationary_bobomb_free_loop", - "802e7134": "bobomb_free_loop", - "802e7180": "bobomb_held_loop", - "802e7220": "bobomb_dropped_loop", - "802e7280": "bobomb_thrown_loop", - "802e7324": "curr_obj_random_blink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "bobomb_buddy_act_idle", - "802e7814": "bobomb_buddy_cannon_dialog", - "802e79dc": "bobomb_buddy_act_talk", - "802e7b00": "bobomb_buddy_act_turn_to_talk", - "802e7bb0": "bobomb_buddy_actions", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "cannon_door_act_opening", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "whirlpool_set_hitbox", - "802e7fec": "whirpool_orient_graph", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "butterfly_step", - "802e9278": "butterfly_calculate_angle", - "802e9470": "butterfly_act_rest", - "802e94e4": "butterfly_act_follow_mario", - "802e9548": "butterfly_act_return_home", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "hoot_find_next_floor", - "802e98c0": "hoot_floor_bounce", - "802e9a4c": "hoot_free_step", - "802e9cf4": "hoot_player_set_yaw", - "802e9d98": "hoot_carry_step", - "802e9f60": "hoot_surface_collision", - "802ea144": "hoot_act_ascent", - "802ea258": "hoot_action_loop", - "802ea3f0": "hoot_turn_to_home", - "802ea4ec": "hoot_awake_loop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "bully_check_mario_collision", - "802eb288": "bully_act_chase_mario", - "802eb3f0": "bully_act_knockback", - "802eb510": "bully_act_back_up", - "802eb5c4": "bully_backup_check", - "802eb630": "bully_play_stomping_sound", - "802eb744": "bully_step", - "802eb7e0": "bully_spawn_coin", - "802eb8b0": "bully_act_level_death", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "big_bully_spawn_minion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "big_bully_spawn_star", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "water_ring_calc_mario_dist", - "802ec030": "water_ring_init", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "water_ring_check_collection", - "802ec3d0": "water_ring_set_scale", - "802ec4e0": "water_ring_act_collected", - "802ec59c": "water_ring_act_not_collected", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "spawn_manta_ray_ring_manager", - "802ec818": "water_ring_spawner_act_inactive", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "manta_water_ring_act_not_collected", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "celeb_star_act_spin_around_mario", - "802ed28c": "celeb_star_act_face_camera", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "moneybag_check_mario_collision", - "802ee268": "moneybag_jump", - "802ee46c": "moneybag_act_move_around", - "802ee598": "moneybag_act_return_home", - "802ee728": "moneybag_act_disappear", - "802ee778": "moneybag_act_death", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "bowling_ball_set_hitbox", - "802eea7c": "bowling_ball_set_waypoints", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "set_rolling_sphere_hitbox", - "802f0bd4": "adjust_rolling_face_pitch", - "802f0c94": "snowmans_bottom_act_1", - "802f0df0": "snowmans_bottom_act_2", - "802f0fa8": "snowmans_bottom_act_3", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "boulder_act_1", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "cap_set_hitbox", - "802f19c8": "cap_despawn", - "802f1a10": "cap_check_quicksand", - "802f1bb8": "cap_sink_quicksand", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "cap_scale_vertically", - "802f1e5c": "wing_vanish_cap_act_0", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "metal_cap_act_0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "normal_cap_set_save_flags", - "802f2284": "normal_cap_act_0", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "spawn_star", - "802f2b88": "spawn_default_star", - "802f2bd4": "spawn_red_coin_cutscene_star", - "802f2c24": "spawn_no_exit_star", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "rolling_log_roll_log", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "volcano_act_1", - "802f39b4": "volcano_act_3", - "802f3a30": "bhv_volcano_trap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "one_up_loop_in_air", - "802f3ea8": "pole_1up_move_towards_mario", - "802f401c": "one_up_move_away_from_mario", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "sliding_1up_move", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "controllable_platform_act_1", - "802f4ce0": "controllable_platform_act_2", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "controllable_platform_hit_wall", - "802f5068": "controllable_platform_check_walls", - "802f52c0": "controllable_platform_shake_on_wall_hit", - "802f547c": "controllable_platform_tilt_from_mario", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "small_breakable_box_spawn_dust", - "802f5e44": "small_breakable_box_act_move", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "floating_platform_find_home_y", - "802f665c": "floating_platform_act_0", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "manta_ray_move", - "802f7068": "manta_ray_act_spawn_ring", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "spawn_treasure_chest", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "bhv_yoshi_loop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "mr_blizzard_spawn_white_particles", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "geo_snufit_move_mask", - "8030d9ac": "geo_snufit_scale_body", - "8030da14": "snufit_act_idle", - "8030db38": "snufit_act_shoot", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L8031C200", - "8031c23c": "L8031C23C", - "8031c298": "L8031C298", - "8031c2dc": "L8031C2DC", - "8031c328": "L8031C328", - "8031c36c": "L8031C36C", - "8031c3bc": "L8031C3BC", - "8031c3e8": "L8031C3E8", - "8031c454": "L8031C454", - "8031c4a4": "L8031C4A4", - "8031c5c8": "L8031C5C8", - "8031c698": "L8031C698", - "8031c6a0": "L8031C6A0", - "8031cbe0": "L8031CBE0", - "8031cbec": "L8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e578": "sequence_player_fade_out_internal", - "8031e5c0": "func_8031D690", - "8031e60c": "func_8031D6E4", - "8031e6a4": "func_8031D7B0", - "8031e710": "func_8031D838", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031eb30": "process_sound_request", - "8031edec": "process_all_sound_requests", - "8031ee70": "func_8031DFE8", - "8031ef6c": "func_8031E0E4", - "8031eff4": "func_8031E16C", - "8031f810": "get_sound_pan", - "8031f96c": "get_sound_dynamics", - "8031fb20": "get_sound_freq_scale", - "8031fbe8": "get_sound_reverb", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "803217a8": "disable_all_sequence_players", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "sWarpBhvSpawnTable", - "8032de4c": "sSpawnTypeFromWarpBhv", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "803306dc": "sCageUkikiPath", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "gOpenableGrills", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "sWaterSplashDropletParams", - "80330d30": "gShallowWaterSplashDropletParams", - "80330d54": "sWaterDropletFishParams", - "80330d78": "gShallowWaterWaveDropletParams", - "80330d9c": "sStrongWindParticleHitbox", - "80330dac": "sSLWalkingPenguinErraticSteps", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "sHmcPaintings", - "80331308": "sInsideCastlePaintings", - "80331344": "sTtmPaintings", - "8033134c": "sPaintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "_osContInitialized", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "D_80334894", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "D_80339F50", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gCurBhvCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "gPaintingMesh", - "80361314": "gPaintingTriNorms", - "80361318": "gRipplingPainting", - "8036131c": "gDddPaintingStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "_osContCmdBuf", - "8036708c": "_osContPifCtrl", - "80367090": "_osLastSentSiCmd", - "80367091": "_osContNumControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "__osViIntrCount", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": ".", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "random_u16", - "80383cb4": "random_float", - "80383d1c": "random_sign", - "80383d68": "obj_update_gfx_pos_and_angle", - "80385bf0": "stub_behavior_script_2", - "80385c00": "cur_obj_update", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "00000001": "ASSERT", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "small_water_splash_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "idle_water_wave_geo", - "17000168": "wave_trail_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleParticleSpawner", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvPlungeBubble", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvVertStarParticleSpawner", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvHorStarParticleSpawner", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvTriangleParticleSpawner", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvBreathParticleSpawner", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvMistCircParticleSpawner", - "13000e3c": "bhvDirtParticleSpawner", - "13000e58": "bhvSnowParticleSpawner", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFireParticleSpawner", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvLeafParticleSpawner", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFish", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMistParticleSpawner", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSparkleParticleSpawner", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDroplet", - "13002c7c": "bhvWaterDropletSplash", - "13002cb0": "bhvBubbleSplash", - "13002ce0": "bhvIdleWaterWave", - "13002d28": "bhvObjectWaterSplash", - "13002d50": "bhvShallowWaterWave", - "13002d7c": "bhvShallowWaterSplash", - "13002db0": "bhvObjectWaveTrail", - "13002dc0": "bhvWaveTrail", - "13002e04": "bhvTinyStrongWindParticle", - "13002e20": "bhvStrongWindParticle", - "13002e3c": "bhvSLSnowmanWind", - "13002e58": "bhvSLWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvInstantActiveWarp", - "13002f64": "bhvAirborneWarp", - "13002f68": "bhvHardAirKnockBackWarp", - "13002f6c": "bhvSpinAirborneCircleWarp", - "13002f70": "bhvDeathWarp", - "13002f74": "bhvSpinAirborneWarp", - "13002f78": "bhvFlyingWarp", - "13002f7c": "bhvPaintingStarCollectWarp", - "13002f80": "bhvPaintingDeathWarp", - "13002f84": "bhvAirborneDeathWarp", - "13002f88": "bhvAirborneStarCollectWarp", - "13002f8c": "bhvLaunchStarCollectWarp", - "13002f90": "bhvLaunchDeathWarp", - "13002f94": "bhvSwimmingWarp", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000000": ["EXCEPTION_TLB_MISS"], + "a4000000": ["SP_DMEM"], + "a40004c0": ["SP_DMEM_UNK0"], + "a4000774": ["SP_DMEM_UNK1"], + "a4001000": ["SP_IMEM"], + "a4040010": ["SP_STATUS_REG"], + "a4080000": ["SP_PC"], + "a4300000": ["MI_MODE_REG"], + "a4300004": ["MI_VERSION_REG"], + "a4300008": ["MI_INTR_REG"], + "a430000c": ["MI_INTR_MASK_REG"], + "a4400010": ["VI_CURRENT_REG"], + "a450000c": ["AI_STATUS_REG"], + "a4600000": ["PI_DRAM_ADDR_REG"], + "a4600004": ["PI_CART_ADDR_REG"], + "a460000c": ["PI_WR_LEN_REG"], + "a4600010": ["PI_STATUS_REG"], + "a4700000": ["RI_MODE_REG"], + "a4700010": ["RI_REFRESH_REG"], + "a4800018": ["SI_STATUS_REG"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802f69cc": ["func_sh_802F69CC"], + "80302ef0": ["osMotorStop"], + "80303090": ["osMotorStart"], + "803033ac": ["osMotorInit"], + "803016a0": ["func_sh_803016A0"], + "803016d0": ["func_sh_803016D0"], + "80301820": ["func_sh_80301820"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04000040": ["ipl3_entry"], + "04000b70": ["ipl3_font"], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "entry_point"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["unknown_main_func"], + "802461cc": ["stub_main_1"], + "802461dc": ["stub_main_2"], + "802461ec": ["stub_main_3"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["alloc_pool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["send_sp_task_message"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["main_func"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["draw_reset_bars"], + "80247f08": ["rendering_init"], + "80247fdc": ["config_gfx_pool"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["reset_volume"], + "80248c58": ["lower_background_noise"], + "80248ce8": ["raise_background_noise"], + "80248d78": ["disable_background_sound"], + "80248dc0": ["enable_background_sound"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["fadeout_music"], + "8024927c": ["fadeout_level_music"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "80249494": ["play_menu_sounds_extra"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_pause"], + "80249764": ["set_play_mode"], + "8024978c": ["warp_special"], + "802497b8": ["fade_into_special_warp"], + "8024982c": ["stub_level_update_1"], + "8024983c": ["load_level_init_text"], + "8024995c": ["init_door_warp"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["warp_area"], + "8024a18c": ["warp_level"], + "8024a1d8": ["warp_credits"], + "8024a374": ["check_instant_warp"], + "8024a584": ["music_changed_through_warp"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_obj_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["should_push_or_pull_door"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_strong_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["mario_can_talk"], + "8024ff04": ["check_read_sign"], + "80250098": ["check_npc_talk"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["stub_mario_step_1"], + "802550b0": ["stub_mario_step_2"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["bhv_end_peach_loop"], + "802570dc": ["bhv_end_toad_loop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025bc80": ["generate_yellow_sparkles"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["climb_up_ledge"], + "8025f560": ["update_ledge_climb_camera"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["check_common_idle_cancels"], + "80260aac": ["check_common_hold_idle_cancels"], + "80260cb4": ["act_idle"], + "80260f94": ["play_anim_sound"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["stopping_step"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["act_hold_butt_slide_stop"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["act_shockwave_bounce"], + "80262bc4": ["landing_step"], + "80262c34": ["check_common_landing_cancels"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["act_hold_jump_land_stop"], + "802631f0": ["act_hold_freefall_land_stop"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["check_common_stationary_cancels"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["tilt_body_running"], + "80263ee4": ["play_step_sound"], + "80264024": ["align_with_floor"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["anim_and_audio_for_walk"], + "80265b1c": ["anim_and_audio_for_hold_walk"], + "80265d90": ["anim_and_audio_for_heavy_walk"], + "80265df8": ["push_or_sidle_wall"], + "80266038": ["tilt_body_walking"], + "802661cc": ["tilt_body_ground_shell"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["tilt_body_butt_slide"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["play_knockback_sound"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["check_wall_kick"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_envfx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhv_toad_message_loop"], + "80276910": ["bhv_toad_message_init"], + "80276bb8": ["bhv_unlock_door_star_init"], + "80276ccc": ["bhv_unlock_door_star_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["load_segment_decompress_heap"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["load_patchable_table"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["override_viewport_and_clip"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["area_get_warp_node_from_params"], + "8027aa74": ["load_obj_warp_nodes"], + "8027ab04": ["clear_areas"], + "8027ad74": ["clear_area_graph_nodes"], + "8027ae44": ["load_area"], + "8027af48": ["unload_area"], + "8027afbc": ["load_mario_area"], + "8027b038": ["unload_mario_area"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["stub_camera_2"], + "80287dd4": ["stub_camera_3"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["stub_camera_4"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["spawn_child_obj_relative"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_obj_list_processor_1"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["geo_update_projectile_pos_from_parent"], + "8029d924": ["geo_update_layer_transparency"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["obj_update_pos_from_parent_transformation"], + "8029dda8": ["obj_apply_scale_to_matrix"], + "8029de80": ["create_transformation_from_matrices"], + "8029e1b0": ["obj_set_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["cur_obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["cur_obj_rotate_yaw_toward"], + "8029e694": ["obj_angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["obj_set_parent_relative_pos"], + "8029e914": ["obj_set_pos"], + "8029e96c": ["obj_set_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["spawn_obj_with_transform_flags"], + "8029eb04": ["spawn_water_droplet"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["cur_obj_move_using_vel"], + "8029f0c8": ["obj_copy_graph_y_offset"], + "8029f0e0": ["obj_copy_pos_and_angle"], + "8029f120": ["obj_copy_pos"], + "8029f148": ["obj_copy_angle"], + "8029f188": ["obj_set_gfx_pos_from_pos"], + "8029f1b0": ["obj_init_animation"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["obj_apply_scale_to_transform"], + "8029f3a8": ["obj_copy_scale"], + "8029f3d0": ["obj_scale_xyz"], + "8029f404": ["obj_scale"], + "8029f430": ["cur_obj_scale"], + "8029f464": ["cur_obj_init_animation"], + "8029f4b4": ["cur_obj_init_animation_with_sound"], + "8029f514": ["cur_obj_init_animation_with_accel_and_sound"], + "8029f59c": ["obj_init_animation_with_sound"], + "8029f600": ["cur_obj_enable_rendering_and_become_tangible"], + "8029f620": ["cur_obj_enable_rendering"], + "8029f644": ["cur_obj_disable_rendering_and_become_intangible"], + "8029f66c": ["cur_obj_disable_rendering"], + "8029f694": ["cur_obj_unhide"], + "8029f6bc": ["cur_obj_hide"], + "8029f6e0": ["cur_obj_set_pos_relative"], + "8029f7d8": ["cur_obj_set_pos_relative_to_parent"], + "8029f820": ["cur_obj_enable_rendering_2"], + "8029f848": ["cur_obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_face_angle_to_move_angle"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["cur_obj_nearest_object_with_behavior"], + "8029f998": ["cur_obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["cur_obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["cur_obj_find_nearby_held_actor"], + "8029fdb4": ["cur_obj_change_action"], + "8029fe00": ["cur_obj_set_vel_from_mario_vel"], + "8029fe6c": ["cur_obj_reverse_animation"], + "8029fea4": ["cur_obj_extend_animation_if_at_end"], + "8029ff04": ["cur_obj_check_if_near_animation_end"], + "8029ffa4": ["cur_obj_check_if_at_animation_end"], + "802a0008": ["cur_obj_check_anim_frame"], + "802a0050": ["cur_obj_check_anim_frame_in_range"], + "802a00ac": ["cur_obj_check_frame_prior_current_frame"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["cur_obj_set_y_vel_and_animation"], + "802a01d8": ["cur_obj_unrender_and_reset_state"], + "802a0380": ["cur_obj_get_thrown_or_placed"], + "802a0474": ["cur_obj_get_dropped"], + "802a04c0": ["cur_obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["cur_obj_clear_interact_status_flag"], + "802a0568": ["obj_mark_for_deletion"], + "802a057c": ["cur_obj_disable"], + "802a05b4": ["cur_obj_become_intangible"], + "802a05d4": ["cur_obj_become_tangible"], + "802a05f0": ["obj_become_tangible"], + "802a0604": ["cur_obj_update_floor_height"], + "802a064c": ["cur_obj_update_floor_height_and_get_floor"], + "802a079c": ["cur_obj_apply_drag_xz"], + "802a0e68": ["cur_obj_move_y"], + "802a113c": ["cur_obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["cur_obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["cur_obj_move_y_with_terminal_vel"], + "802a1308": ["cur_obj_compute_vel_xz"], + "802a1370": ["increment_velocity_toward_range"], + "802a1424": ["obj_check_if_collided_with_object"], + "802a148c": ["cur_obj_set_behavior"], + "802a14c4": ["obj_set_behavior"], + "802a14fc": ["cur_obj_has_behavior"], + "802a1554": ["obj_has_behavior"], + "802a15ac": ["cur_obj_lateral_dist_from_mario_to_home"], + "802a1634": ["cur_obj_lateral_dist_to_home"], + "802a16ac": ["cur_obj_outside_home_square"], + "802a1774": ["cur_obj_outside_home_rectangle"], + "802a184c": ["cur_obj_set_pos_to_home"], + "802a188c": ["cur_obj_set_pos_to_home_and_stop"], + "802a18dc": ["cur_obj_shake_y"], + "802a1930": ["cur_obj_start_cam_event"], + "802a1960": ["set_mario_interact_hoot_if_in_range"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["cur_obj_set_hitbox_radius_and_height"], + "802a19f0": ["cur_obj_set_hurtbox_radius_and_height"], + "802a1b34": ["obj_spawn_loot_blue_coins"], + "802a1b8c": ["obj_spawn_loot_yellow_coins"], + "802a1bdc": ["cur_obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["cur_obj_abs_y_dist_to_home"], + "802a1cc4": ["cur_obj_advance_looping_anim"], + "802a1f3c": ["cur_obj_resolve_wall_collisions"], + "802a2320": ["cur_obj_update_floor_and_walls"], + "802a2348": ["cur_obj_move_standard"], + "802a25b4": ["cur_obj_move_using_vel_and_gravity"], + "802a2644": ["cur_obj_move_using_fvel_and_gravity"], + "802a2674": ["obj_set_pos_relative"], + "802a2748": ["cur_obj_angle_to_home"], + "802a27b0": ["obj_set_gfx_pos_at_obj_pos"], + "802a2804": ["obj_translate_local"], + "802a2930": ["obj_build_transform_from_pos_and_angle"], + "802a2a18": ["obj_set_throw_matrix_from_transform"], + "802a2a84": ["obj_build_transform_relative_to_parent"], + "802a2b28": ["obj_create_transform_from_self"], + "802a2b6c": ["cur_obj_rotate_move_angle_using_vel"], + "802a2bc4": ["cur_obj_rotate_face_angle_using_vel"], + "802a2c1c": ["cur_obj_set_face_angle_to_move_angle"], + "802a2c5c": ["cur_obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["obj_scale_random"], + "802a2fc0": ["obj_translate_xyz_random"], + "802a308c": ["obj_translate_xz_random"], + "802a31e0": ["cur_obj_set_pos_via_transform"], + "802a3268": ["cur_obj_reflect_move_angle_off_wall"], + "802a32ac": ["cur_obj_spawn_particles"], + "802a34a4": ["obj_set_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["cur_obj_wait_then_blink"], + "802a3754": ["cur_obj_is_mario_ground_pounding_platform"], + "802a37ac": ["spawn_mist_particles"], + "802a37dc": ["spawn_mist_particles_with_sound"], + "802a3818": ["cur_obj_push_mario_away"], + "802a390c": ["cur_obj_push_mario_away_from_cylinder"], + "802a399c": ["bhv_dust_smoke_loop"], + "802a3a4c": ["cur_obj_set_direction_table"], + "802a3a88": ["cur_obj_progress_direction_table"], + "802a3b28": ["stub_obj_helpers_3"], + "802a3b40": ["cur_obj_scale_over_time"], + "802a3c18": ["cur_obj_set_pos_to_home_with_debug"], + "802a3cec": ["stub_obj_helpers_4"], + "802a3cfc": ["cur_obj_is_mario_on_platform"], + "802a3d40": ["cur_obj_shake_y_until"], + "802a3dd4": ["cur_obj_move_up_and_down"], + "802a3e30": ["cur_obj_call_action_function"], + "802a3ef8": ["spawn_base_star_with_no_lvl_exit"], + "802a3f24": ["bit_shift_left"], + "802a3f48": ["cur_obj_mario_far_away"], + "802a404c": ["is_mario_moving_fast_or_in_air"], + "802a40b8": ["is_item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["cur_obj_enable_rendering_if_mario_in_room"], + "802a4360": ["cur_obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["obj_explode_and_spawn_coins"], + "802a44f4": ["obj_set_collision_data"], + "802a452c": ["cur_obj_if_hit_wall_bounce_away"], + "802a4564": ["cur_obj_hide_if_mario_far_away_y"], + "802a45e4": ["geo_offset_klepto_held_object"], + "802a462c": ["geo_offset_klepto_debug"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["cur_obj_can_mario_activate_textbox"], + "802a48bc": ["cur_obj_can_mario_activate_textbox_2"], + "802a4960": ["cur_obj_update_dialog"], + "802a4be4": ["cur_obj_update_dialog_with_cutscene"], + "802a4f04": ["cur_obj_has_model"], + "802a4f58": ["cur_obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["cur_obj_shake_screen"], + "802a513c": ["obj_attack_collided_from_other_object"], + "802a51ac": ["cur_obj_was_attacked_or_ground_pounded"], + "802a5228": ["obj_copy_behavior_params"], + "802a5248": ["cur_obj_init_animation_and_anim_frame"], + "802a5288": ["cur_obj_init_animation_and_check_if_near_end"], + "802a52c4": ["cur_obj_init_animation_and_extend_if_at_end"], + "802a52f8": ["cur_obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["cur_obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["cur_obj_check_interacted"], + "802a5524": ["cur_obj_spawn_loot_blue_coin"], + "802a5588": ["cur_obj_spawn_star_at_y_offset"], + "802a5620": ["star_door_update_pos"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["mr_i_piranha_particle_act_0"], + "802a5a44": ["mr_i_piranha_particle_act_1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["spawn_mr_i_particle"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["mr_i_act_3"], + "802a6518": ["mr_i_act_2"], + "802a68a0": ["mr_i_act_1"], + "802a6ad8": ["mr_i_act_0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["cap_switch_act_0"], + "802a7020": ["cap_switch_act_1"], + "802a708c": ["cap_switch_act_2"], + "802a7160": ["cap_switch_act_3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["geo_update_held_mario_pos"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["king_bobomb_act_0"], + "802a7384": ["mario_is_far_below_object"], + "802a73d8": ["king_bobomb_act_2"], + "802a7598": ["king_bobomb_act_3"], + "802a7804": ["king_bobomb_act_1"], + "802a78d8": ["king_bobomb_act_6"], + "802a7a60": ["king_bobomb_act_7"], + "802a7b1c": ["king_bobomb_act_8"], + "802a7b5c": ["king_bobomb_act_4"], + "802a7d14": ["king_bobomb_act_5"], + "802a7fbc": ["king_bobomb_move"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["scale_bubble_random"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["scale_bubble_sin"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["opened_cannon_act_0"], + "802a8f40": ["opened_cannon_act_4"], + "802a9114": ["opened_cannon_act_6"], + "802a92fc": ["opened_cannon_act_5"], + "802a93f8": ["opened_cannon_act_1"], + "802a9440": ["opened_cannon_act_2"], + "802a9460": ["opened_cannon_act_3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["common_anchor_mario_behavior"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["unknown_chuckya_function"], + "802a98c4": ["approach_forward_vel"], + "802a9994": ["chuckya_act_0"], + "802a9d08": ["chuckya_act_1"], + "802a9f54": ["chuckya_act_3"], + "802a9fc8": ["chuckya_act_2"], + "802aa02c": ["chuckya_move"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["check_mario_attacking"], + "802aa3c8": ["init_kickable_board_rock"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["set_koopa_shell_underwater_hitbox"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["bhv_fading_warp_loop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["spawn_mist_particles_variable"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["set_sparkle_spawn_star_hitbox"], + "802ab060": ["set_home_to_mario"], + "802ab158": ["set_y_home_to_pos"], + "802ab18c": ["slow_star_rotation"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["spawn_coin_in_formation"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["coin_inside_boo_act_1"], + "802ac15c": ["coin_inside_boo_act_0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["door_animation_and_reset"], + "802ac958": ["set_door_camera_event"], + "802ac9d0": ["play_door_open_noise"], + "802aca6c": ["play_warp_door_open_noise"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["grindel_thwomp_act_4"], + "802ad10c": ["grindel_thwomp_act_2"], + "802ad1a4": ["grindel_thwomp_act_3"], + "802ad238": ["grindel_thwomp_act_1"], + "802ad2d0": ["grindel_thwomp_act_0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["tumbling_bridge_act_1"], + "802ad76c": ["tumbling_bridge_act_2"], + "802ad7f4": ["tumbling_bridge_act_3"], + "802ad828": ["tumbling_bridge_act_0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["elevator_starting_shake"], + "802ad8f0": ["elevator_act_0"], + "802ada4c": ["elevator_act_1"], + "802adb88": ["elevator_act_2"], + "802adce4": ["elevator_act_4"], + "802add70": ["elevator_act_3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["spawn_mist_from_global"], + "802ae360": ["bhv_ground_sand_init"], + "802ae394": ["spawn_smoke_with_velocity"], + "802ae45c": ["clear_particle_flags"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["spawn_wind_particles"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["spawn_and_init_wf_platforms"], + "802b039c": ["spawn_wf_platform_group"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["square_plat_set_yaw_until_timer"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["check_if_moving_over_floor"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["breakable_box_init"], + "802b17f4": ["hidden_breakable_box_actions"], + "802b19d8": ["hidden_unbreakable_box_actions"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["geo_move_mario_part_from_parent"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["heave_ho_act_1"], + "802b1e6c": ["heave_ho_act_2"], + "802b1ff4": ["heave_ho_act_3"], + "802b20a0": ["heave_ho_act_0"], + "802b2154": ["heave_ho_move"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["jumping_box_act_0"], + "802b27d8": ["jumping_box_act_1"], + "802b2824": ["jumping_box_free_update"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["spawn_sparkle_particles"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["arc_to_goal_pos"], + "802b3250": ["grand_star_zero_velocity"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["bullet_bill_act_0"], + "802b38b8": ["bullet_bill_act_1"], + "802b394c": ["bullet_bill_act_2"], + "802b3b08": ["bullet_bill_act_3"], + "802b3b24": ["bullet_bill_act_4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["bowser_tail_anchor_act_0"], + "802b3cdc": ["bowser_tail_anchor_act_1"], + "802b3d10": ["bowser_tail_anchor_act_2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["bowser_spawn_shockwave"], + "802b41fc": ["bowser_bounce"], + "802b4288": ["bowser_set_anim_look_up_and_walk"], + "802b4300": ["bowser_set_anim_slow_gait"], + "802b4368": ["bowser_set_anim_look_down"], + "802b43dc": ["bowser_initialize_action"], + "802b4478": ["bowser_act_text_wait"], + "802b44bc": ["bowser_act_intro_walk"], + "802b45f4": ["bowser_bitdw_act_controller"], + "802b473c": ["bowser_bitfs_act_controller"], + "802b48d4": ["bowser_general_bits_act_controller"], + "802b4a1c": ["bowser_set_act_jump"], + "802b4a3c": ["bowser_bits_act_controller"], + "802b4af4": ["bowser_reset_fallen_off_stage"], + "802b4bac": ["bowser_act_unused_slow_walk"], + "802b4be8": ["bowser_act_default"], + "802b4ca4": ["bowser_act_breath_fire"], + "802b4d14": ["bowser_act_walk_to_mario"], + "802b4f00": ["bowser_act_teleport"], + "802b5104": ["bowser_act_spit_fire_into_sky"], + "802b5218": ["bowser_act_hit_mine"], + "802b53f4": ["bowser_set_anim_in_air"], + "802b5444": ["bowser_land"], + "802b5554": ["bowser_short_second_hop"], + "802b55cc": ["bowser_act_jump"], + "802b5798": ["bowser_act_jump_towards_mario"], + "802b58bc": ["bowser_act_hit_edge"], + "802b59cc": ["bowser_act_spit_fire_onto_floor"], + "802b5aec": ["bowser_turn_on_timer"], + "802b5c00": ["bowser_act_turn_from_edge"], + "802b5c40": ["bowser_act_charge_mario"], + "802b5f6c": ["bowser_check_hit_mine"], + "802b5fec": ["bowser_act_thrown_dropped"], + "802b611c": ["bowser_set_goal_invisible"], + "802b6190": ["bowser_act_jump_onto_stage"], + "802b6568": ["bowser_act_dance"], + "802b65d0": ["bowser_spawn_grand_star_key"], + "802b6670": ["bowser_fly_back_dead"], + "802b6730": ["bowser_dead_bounce"], + "802b67d4": ["bowser_dead_wait_for_mario"], + "802b6878": ["bowser_dead_twirl_into_trophy"], + "802b6a10": ["bowser_dead_hide"], + "802b6a78": ["bowser_dead_not_bits_end"], + "802b6bac": ["bowser_dead_bits_end"], + "802b6cf0": ["bowser_act_dead"], + "802b6e40": ["bowser_tilt_platform"], + "802b6ee0": ["bowser_act_ride_tilting_platform"], + "802b711c": ["bowser_check_fallen_off_stage"], + "802b71e4": ["bowser_free_update"], + "802b72d4": ["bowser_held_update"], + "802b7418": ["bowser_thrown_dropped_update"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["geo_update_body_rot_from_parent"], + "802b7a20": ["bowser_open_eye_switch"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["geo_bits_bowser_coloring"], + "802b7e68": ["falling_bowser_plat_act_0"], + "802b7ef0": ["falling_bowser_plat_act_1"], + "802b8024": ["falling_bowser_plat_act_2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["bowser_flame_despawn"], + "802b8434": ["bowser_flame_should_despawn"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["bowser_flame_move"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_movement_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["vec3f_copy_2"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["checkerboard_plat_act_move_y"], + "802b9af8": ["checkerboard_plat_act_rotate"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["water_level_pillar_undrained"], + "802ba13c": ["water_level_pillar_drained"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["geo_scale_bowser_key"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["geo_update_projectile_pos_from_parent_copy"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["lll_octagonal_mesh_move"], + "802bbfd8": ["lll_octagonal_mesh_find_y_offset"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["fire_bar_spawn_flames"], + "802bc4f4": ["fire_bar_act_0"], + "802bc538": ["fire_bar_act_1"], + "802bc590": ["fire_bar_act_2"], + "802bc5fc": ["fire_bar_act_3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["hexagonal_ring_spawn_flames"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["sinking_rectangular_plat_actions"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["koopa_shell_spawn_water_drop"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["koopa_shell_spawn_sparkles"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["tox_box_shake_screen"], + "802bd91c": ["tox_box_move"], + "802bdb04": ["tox_box_act_4"], + "802bdb3c": ["tox_box_act_5"], + "802bdb74": ["tox_box_act_6"], + "802bdbac": ["tox_box_act_7"], + "802bdbe4": ["tox_box_act_1"], + "802bdc7c": ["tox_box_act_2"], + "802bdcc8": ["tox_box_act_3"], + "802bdd14": ["tox_box_act_0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["set_obj_anim_with_accel_and_sound"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["tuxies_mother_act_2"], + "802bef8c": ["tuxies_mother_act_1"], + "802bf1d8": ["tuxies_mother_act_0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["small_penguin_dive_with_mario"], + "802bf474": ["small_penguin_act_2"], + "802bf57c": ["small_penguin_act_1"], + "802bf648": ["small_penguin_act_3"], + "802bf6e4": ["small_penguin_act_4"], + "802bf760": ["small_penguin_act_0"], + "802bf90c": ["small_penguin_act_5"], + "802bfa14": ["small_penguin_free_actions"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["fish_act_spawn"], + "802bfeb8": ["fish_act_respawn"], + "802bff20": ["fish_act_init"], + "802bff3c": ["bhv_large_fish_group_loop"], + "802bff68": ["fish_regroup"], + "802c00b4": ["fish_group_act_rotation"], + "802c0348": ["fish_group_act_move"], + "802c06a8": ["fish_group_act_animate"], + "802c0768": ["bhv_fish_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["bub_spawner_act_0"], + "802c0b50": ["bub_spawner_act_1"], + "802c0ba4": ["bub_spawner_act_2"], + "802c0bc4": ["bub_spawner_act_3"], + "802c0be0": ["bhv_bub_spawner_loop"], + "802c0c0c": ["bub_move_vertically"], + "802c0cd4": ["bub_act_0"], + "802c0d44": ["bub_act_1"], + "802c0f90": ["bub_act_2"], + "802c1204": ["bhv_bub_loop"], + "802c12c0": ["bhv_rotating_exclamation_box_loop"], + "802c1308": ["exclamation_box_act_0"], + "802c13ec": ["exclamation_box_act_1"], + "802c14b0": ["exclamation_box_act_2"], + "802c15b8": ["exclamation_box_act_3"], + "802c17bc": ["exclamation_box_spawn_contents"], + "802c18d0": ["exclamation_box_act_4"], + "802c1988": ["exclamation_box_act_5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["bhv_pole_base_loop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["update_angle_from_move_flags"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["whomp_play_sfx_from_pound_animation"], + "802c6d6c": ["whomp_act_0"], + "802c6ec8": ["whomp_act_7"], + "802c6fb0": ["whomp_act_1"], + "802c710c": ["whomp_act_2"], + "802c7254": ["whomp_act_3"], + "802c72b4": ["whomp_act_4"], + "802c7380": ["whomp_act_5"], + "802c7428": ["king_whomp_on_ground"], + "802c75fc": ["whomp_on_ground"], + "802c76d4": ["whomp_act_6"], + "802c7858": ["whomp_act_8"], + "802c7998": ["whomp_act_9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_spawn_droplets"], + "802c7b14": ["bhv_water_droplet_loop"], + "802c7cac": ["bhv_idle_water_wave_loop"], + "802c7d40": ["bhv_water_droplet_splash_init"], + "802c7d90": ["bhv_bubble_splash_init"], + "802c7dfc": ["bhv_shallow_water_splash_init"], + "802c7e5c": ["bhv_wave_trail_shrink"], + "802c7f98": ["bhv_strong_wind_particle_loop"], + "802c81b4": ["cur_obj_spawn_strong_wind_particles"], + "802c834c": ["bhv_sl_snowman_wind_loop"], + "802c863c": ["bhv_sl_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["debug_print_obj_collision"], + "802c8fe4": ["detect_object_hitbox_overlap"], + "802c91ec": ["detect_object_hurtbox_overlap"], + "802c9388": ["clear_object_collision"], + "802c93f8": ["check_collision_in_list"], + "802c94ac": ["check_player_object_collision"], + "802c95b4": ["check_pushable_object_collision"], + "802c9630": ["check_destructive_object_collision"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["cur_obj_play_sound_1"], + "802ca1e0": ["cur_obj_play_sound_2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["stub_debug_1"], + "802ca380": ["stub_debug_2"], + "802ca390": ["stub_debug_3"], + "802ca3a0": ["stub_debug_4"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_debug_5"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["debug_enemy_unknown"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stop_other_paintings"], + "802d2a74": ["painting_mario_y"], + "802d2b08": ["painting_mario_z"], + "802d2b84": ["painting_ripple_y"], + "802d2c40": ["painting_nearest_4th"], + "802d2d80": ["painting_mario_x"], + "802d2dfc": ["painting_ripple_x"], + "802d2eb8": ["painting_state"], + "802d2ffc": ["wall_painting_proximity_idle"], + "802d319c": ["wall_painting_proximity_rippling"], + "802d327c": ["wall_painting_continuous_idle"], + "802d341c": ["wall_painting_continuous_rippling"], + "802d34fc": ["floor_painting_proximity_idle"], + "802d36ac": ["floor_painting_proximity_rippling"], + "802d379c": ["floor_painting_continuous_idle"], + "802d393c": ["floor_painting_continuous_rippling"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_state"], + "802d3cec": ["calculate_ripple_at_point"], + "802d3e6c": ["ripple_if_movable"], + "802d3ee4": ["painting_generate_mesh"], + "802d404c": ["painting_calculate_triangle_normals"], + "802d43f8": ["normalize_component"], + "802d44bc": ["painting_average_vertex_normals"], + "802d47d0": ["render_painting"], + "802d4edc": ["painting_model_view_transform"], + "802d50dc": ["painting_ripple_image"], + "802d5354": ["painting_ripple_env_mapped"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["move_ddd_painting"], + "802d58e4": ["set_painting_layer"], + "802d593c": ["display_painting"], + "802d59a8": ["wall_painting_update"], + "802d5aa0": ["floor_painting_update"], + "802d5b98": ["geo_painting_draw"], + "802d5d0c": ["geo_painting_update"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["coin_step"], + "802e5e6c": ["moving_coin_flicker"], + "802e5ea4": ["coin_collected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["blue_coin_sliding_away_from_mario"], + "802e63ec": ["blue_coin_sliding_slow_down"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["bobomb_spawn_coin"], + "802e6af8": ["bobomb_act_explode"], + "802e6bd4": ["bobomb_check_interactions"], + "802e6cf0": ["bobomb_act_patrol"], + "802e6dc8": ["bobomb_act_chase_mario"], + "802e6e84": ["bobomb_act_launched"], + "802e6ed8": ["generic_bobomb_free_loop"], + "802e7020": ["stationary_bobomb_free_loop"], + "802e7134": ["bobomb_free_loop"], + "802e7180": ["bobomb_held_loop"], + "802e7220": ["bobomb_dropped_loop"], + "802e7280": ["bobomb_thrown_loop"], + "802e7324": ["curr_obj_random_blink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["bobomb_buddy_act_idle"], + "802e7814": ["bobomb_buddy_cannon_dialog"], + "802e79dc": ["bobomb_buddy_act_talk"], + "802e7b00": ["bobomb_buddy_act_turn_to_talk"], + "802e7bb0": ["bobomb_buddy_actions"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["cannon_door_act_opening"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["whirlpool_set_hitbox"], + "802e7fec": ["whirpool_orient_graph"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["butterfly_step"], + "802e9278": ["butterfly_calculate_angle"], + "802e9470": ["butterfly_act_rest"], + "802e94e4": ["butterfly_act_follow_mario"], + "802e9548": ["butterfly_act_return_home"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["hoot_find_next_floor"], + "802e98c0": ["hoot_floor_bounce"], + "802e9a4c": ["hoot_free_step"], + "802e9cf4": ["hoot_player_set_yaw"], + "802e9d98": ["hoot_carry_step"], + "802e9f60": ["hoot_surface_collision"], + "802ea144": ["hoot_act_ascent"], + "802ea258": ["hoot_action_loop"], + "802ea3f0": ["hoot_turn_to_home"], + "802ea4ec": ["hoot_awake_loop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["bully_check_mario_collision"], + "802eb288": ["bully_act_chase_mario"], + "802eb3f0": ["bully_act_knockback"], + "802eb510": ["bully_act_back_up"], + "802eb5c4": ["bully_backup_check"], + "802eb630": ["bully_play_stomping_sound"], + "802eb744": ["bully_step"], + "802eb7e0": ["bully_spawn_coin"], + "802eb8b0": ["bully_act_level_death"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["big_bully_spawn_minion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["big_bully_spawn_star"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["water_ring_calc_mario_dist"], + "802ec030": ["water_ring_init"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["water_ring_check_collection"], + "802ec3d0": ["water_ring_set_scale"], + "802ec4e0": ["water_ring_act_collected"], + "802ec59c": ["water_ring_act_not_collected"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["spawn_manta_ray_ring_manager"], + "802ec818": ["water_ring_spawner_act_inactive"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["manta_water_ring_act_not_collected"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["celeb_star_act_spin_around_mario"], + "802ed28c": ["celeb_star_act_face_camera"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["moneybag_check_mario_collision"], + "802ee268": ["moneybag_jump"], + "802ee46c": ["moneybag_act_move_around"], + "802ee598": ["moneybag_act_return_home"], + "802ee728": ["moneybag_act_disappear"], + "802ee778": ["moneybag_act_death"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["bowling_ball_set_hitbox"], + "802eea7c": ["bowling_ball_set_waypoints"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["set_rolling_sphere_hitbox"], + "802f0bd4": ["adjust_rolling_face_pitch"], + "802f0c94": ["snowmans_bottom_act_1"], + "802f0df0": ["snowmans_bottom_act_2"], + "802f0fa8": ["snowmans_bottom_act_3"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["boulder_act_1"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["cap_set_hitbox"], + "802f19c8": ["cap_despawn"], + "802f1a10": ["cap_check_quicksand"], + "802f1bb8": ["cap_sink_quicksand"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["cap_scale_vertically"], + "802f1e5c": ["wing_vanish_cap_act_0"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["metal_cap_act_0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["normal_cap_set_save_flags"], + "802f2284": ["normal_cap_act_0"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["spawn_star"], + "802f2b88": ["spawn_default_star"], + "802f2bd4": ["spawn_red_coin_cutscene_star"], + "802f2c24": ["spawn_no_exit_star"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["rolling_log_roll_log"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["volcano_act_1"], + "802f39b4": ["volcano_act_3"], + "802f3a30": ["bhv_volcano_trap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["one_up_loop_in_air"], + "802f3ea8": ["pole_1up_move_towards_mario"], + "802f401c": ["one_up_move_away_from_mario"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["sliding_1up_move"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["controllable_platform_act_1"], + "802f4ce0": ["controllable_platform_act_2"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["controllable_platform_hit_wall"], + "802f5068": ["controllable_platform_check_walls"], + "802f52c0": ["controllable_platform_shake_on_wall_hit"], + "802f547c": ["controllable_platform_tilt_from_mario"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["small_breakable_box_spawn_dust"], + "802f5e44": ["small_breakable_box_act_move"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["floating_platform_find_home_y"], + "802f665c": ["floating_platform_act_0"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["manta_ray_move"], + "802f7068": ["manta_ray_act_spawn_ring"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["spawn_treasure_chest"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["bhv_yoshi_loop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["mr_blizzard_spawn_white_particles"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["geo_snufit_move_mask"], + "8030d9ac": ["geo_snufit_scale_body"], + "8030da14": ["snufit_act_idle"], + "8030db38": ["snufit_act_shoot"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L8031C200"], + "8031c23c": ["L8031C23C"], + "8031c298": ["L8031C298"], + "8031c2dc": ["L8031C2DC"], + "8031c328": ["L8031C328"], + "8031c36c": ["L8031C36C"], + "8031c3bc": ["L8031C3BC"], + "8031c3e8": ["L8031C3E8"], + "8031c454": ["L8031C454"], + "8031c4a4": ["L8031C4A4"], + "8031c5c8": ["L8031C5C8"], + "8031c698": ["L8031C698"], + "8031c6a0": ["L8031C6A0"], + "8031cbe0": ["L8031CBE0"], + "8031cbec": ["L8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e578": ["sequence_player_fade_out_internal"], + "8031e5c0": ["func_8031D690"], + "8031e60c": ["func_8031D6E4"], + "8031e6a4": ["func_8031D7B0"], + "8031e710": ["func_8031D838"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031eb30": ["process_sound_request"], + "8031edec": ["process_all_sound_requests"], + "8031ee70": ["func_8031DFE8"], + "8031ef6c": ["func_8031E0E4"], + "8031eff4": ["func_8031E16C"], + "8031f810": ["get_sound_pan"], + "8031f96c": ["get_sound_dynamics"], + "8031fb20": ["get_sound_freq_scale"], + "8031fbe8": ["get_sound_reverb"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "803217a8": ["disable_all_sequence_players"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["sWarpBhvSpawnTable"], + "8032de4c": ["sSpawnTypeFromWarpBhv"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "803306dc": ["sCageUkikiPath"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["gOpenableGrills"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["sWaterSplashDropletParams"], + "80330d30": ["gShallowWaterSplashDropletParams"], + "80330d54": ["sWaterDropletFishParams"], + "80330d78": ["gShallowWaterWaveDropletParams"], + "80330d9c": ["sStrongWindParticleHitbox"], + "80330dac": ["sSLWalkingPenguinErraticSteps"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["sHmcPaintings"], + "80331308": ["sInsideCastlePaintings"], + "80331344": ["sTtmPaintings"], + "8033134c": ["sPaintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["_osContInitialized"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["D_80334894"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["D_80339F50"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gCurBhvCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["gPaintingMesh"], + "80361314": ["gPaintingTriNorms"], + "80361318": ["gRipplingPainting"], + "8036131c": ["gDddPaintingStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["_osContCmdBuf"], + "8036708c": ["_osContPifCtrl"], + "80367090": ["_osLastSentSiCmd"], + "80367091": ["_osContNumControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["__osViIntrCount"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": [".", "_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["random_u16"], + "80383cb4": ["random_float"], + "80383d1c": ["random_sign"], + "80383d68": ["obj_update_gfx_pos_and_angle"], + "80385bf0": ["stub_behavior_script_2"], + "80385c00": ["cur_obj_update"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["small_water_splash_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["idle_water_wave_geo"], + "17000168": ["wave_trail_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleParticleSpawner"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvPlungeBubble"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvVertStarParticleSpawner"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvHorStarParticleSpawner"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvTriangleParticleSpawner"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvBreathParticleSpawner"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvMistCircParticleSpawner"], + "13000e3c": ["bhvDirtParticleSpawner"], + "13000e58": ["bhvSnowParticleSpawner"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFireParticleSpawner"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvLeafParticleSpawner"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFish"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMistParticleSpawner"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSparkleParticleSpawner"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDroplet"], + "13002c7c": ["bhvWaterDropletSplash"], + "13002cb0": ["bhvBubbleSplash"], + "13002ce0": ["bhvIdleWaterWave"], + "13002d28": ["bhvObjectWaterSplash"], + "13002d50": ["bhvShallowWaterWave"], + "13002d7c": ["bhvShallowWaterSplash"], + "13002db0": ["bhvObjectWaveTrail"], + "13002dc0": ["bhvWaveTrail"], + "13002e04": ["bhvTinyStrongWindParticle"], + "13002e20": ["bhvStrongWindParticle"], + "13002e3c": ["bhvSLSnowmanWind"], + "13002e58": ["bhvSLWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvInstantActiveWarp"], + "13002f64": ["bhvAirborneWarp"], + "13002f68": ["bhvHardAirKnockBackWarp"], + "13002f6c": ["bhvSpinAirborneCircleWarp"], + "13002f70": ["bhvDeathWarp"], + "13002f74": ["bhvSpinAirborneWarp"], + "13002f78": ["bhvFlyingWarp"], + "13002f7c": ["bhvPaintingStarCollectWarp"], + "13002f80": ["bhvPaintingDeathWarp"], + "13002f84": ["bhvAirborneDeathWarp"], + "13002f88": ["bhvAirborneStarCollectWarp"], + "13002f8c": ["bhvLaunchStarCollectWarp"], + "13002f90": ["bhvLaunchDeathWarp"], + "13002f94": ["bhvSwimmingWarp"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 11": { - "80000000": "EXCEPTION_TLB_MISS", - "a4000000": "SP_DMEM", - "a40004c0": "SP_DMEM_UNK0", - "a4000774": "SP_DMEM_UNK1", - "a4001000": "SP_IMEM", - "a4040010": "SP_STATUS_REG", - "a4080000": "SP_PC", - "a4300000": "MI_MODE_REG", - "a4300004": "MI_VERSION_REG", - "a4300008": "MI_INTR_REG", - "a430000c": "MI_INTR_MASK_REG", - "a4400010": "VI_CURRENT_REG", - "a450000c": "AI_STATUS_REG", - "a4600000": "PI_DRAM_ADDR_REG", - "a4600004": "PI_CART_ADDR_REG", - "a460000c": "PI_WR_LEN_REG", - "a4600010": "PI_STATUS_REG", - "a4700000": "RI_MODE_REG", - "a4700010": "RI_REFRESH_REG", - "a4800018": "SI_STATUS_REG", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802f69cc": "func_sh_802F69CC", - "80302ef0": "osMotorStop", - "80303090": "osMotorStart", - "803033ac": "osMotorInit", - "803016a0": "func_sh_803016A0", - "803016d0": "func_sh_803016D0", - "80301820": "func_sh_80301820", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04000040": "ipl3_entry", - "04000b70": "ipl3_font", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "entry_point", - "80246050": "handle_debug_key_sequences", - "80246170": "unknown_main_func", - "802461cc": "stub_main_1", - "802461dc": "stub_main_2", - "802461ec": "stub_main_3", - "802461fc": "setup_mesg_queues", - "802462e0": "alloc_pool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "send_sp_task_message", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "main_func", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "draw_reset_bars", - "80247f08": "rendering_init", - "80247fdc": "config_gfx_pool", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "reset_volume", - "80248c58": "lower_background_noise", - "80248ce8": "raise_background_noise", - "80248d78": "disable_background_sound", - "80248dc0": "enable_background_sound", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "fadeout_music", - "8024927c": "fadeout_level_music", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "80249494": "play_menu_sounds_extra", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_pause", - "80249764": "set_play_mode", - "8024978c": "warp_special", - "802497b8": "fade_into_special_warp", - "8024982c": "stub_level_update_1", - "8024983c": "load_level_init_text", - "8024995c": "init_door_warp", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "warp_area", - "8024a18c": "warp_level", - "8024a1d8": "warp_credits", - "8024a374": "check_instant_warp", - "8024a584": "music_changed_through_warp", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_obj_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_hat", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "should_push_or_pull_door", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_strong_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "mario_can_talk", - "8024ff04": "check_read_sign", - "80250098": "check_npc_talk", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "stub_mario_step_1", - "802550b0": "stub_mario_step_2", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "bhv_end_peach_loop", - "802570dc": "bhv_end_toad_loop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025bc80": "generate_yellow_sparkles", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "climb_up_ledge", - "8025f560": "update_ledge_climb_camera", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "check_common_idle_cancels", - "80260aac": "check_common_hold_idle_cancels", - "80260cb4": "act_idle", - "80260f94": "play_anim_sound", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "stopping_step", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "act_hold_butt_slide_stop", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "act_shockwave_bounce", - "80262bc4": "landing_step", - "80262c34": "check_common_landing_cancels", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "act_hold_jump_land_stop", - "802631f0": "act_hold_freefall_land_stop", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "check_common_stationary_cancels", - "80263898": "mario_execute_stationary_action", - "80263e60": "tilt_body_running", - "80263ee4": "play_step_sound", - "80264024": "align_with_floor", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "anim_and_audio_for_walk", - "80265b1c": "anim_and_audio_for_hold_walk", - "80265d90": "anim_and_audio_for_heavy_walk", - "80265df8": "push_or_sidle_wall", - "80266038": "tilt_body_walking", - "802661cc": "tilt_body_ground_shell", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "tilt_body_butt_slide", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "play_knockback_sound", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "check_wall_kick", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_envfx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhv_toad_message_loop", - "80276910": "bhv_toad_message_init", - "80276bb8": "bhv_unlock_door_star_init", - "80276ccc": "bhv_unlock_door_star_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "load_segment_decompress_heap", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "load_patchable_table", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "override_viewport_and_clip", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "area_get_warp_node_from_params", - "8027aa74": "load_obj_warp_nodes", - "8027ab04": "clear_areas", - "8027ad74": "clear_area_graph_nodes", - "8027ae44": "load_area", - "8027af48": "unload_area", - "8027afbc": "load_mario_area", - "8027b038": "unload_mario_area", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "stub_camera_2", - "80287dd4": "stub_camera_3", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "stub_camera_4", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "spawn_child_obj_relative", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_obj_list_processor_1", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "geo_update_projectile_pos_from_parent", - "8029d924": "geo_update_layer_transparency", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "obj_update_pos_from_parent_transformation", - "8029dda8": "obj_apply_scale_to_matrix", - "8029de80": "create_transformation_from_matrices", - "8029e1b0": "obj_set_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "cur_obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "cur_obj_rotate_yaw_toward", - "8029e694": "obj_angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "obj_set_parent_relative_pos", - "8029e914": "obj_set_pos", - "8029e96c": "obj_set_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "spawn_obj_with_transform_flags", - "8029eb04": "spawn_water_droplet", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "cur_obj_move_using_vel", - "8029f0c8": "obj_copy_graph_y_offset", - "8029f0e0": "obj_copy_pos_and_angle", - "8029f120": "obj_copy_pos", - "8029f148": "obj_copy_angle", - "8029f188": "obj_set_gfx_pos_from_pos", - "8029f1b0": "obj_init_animation", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "obj_apply_scale_to_transform", - "8029f3a8": "obj_copy_scale", - "8029f3d0": "obj_scale_xyz", - "8029f404": "obj_scale", - "8029f430": "cur_obj_scale", - "8029f464": "cur_obj_init_animation", - "8029f4b4": "cur_obj_init_animation_with_sound", - "8029f514": "cur_obj_init_animation_with_accel_and_sound", - "8029f59c": "obj_init_animation_with_sound", - "8029f600": "cur_obj_enable_rendering_and_become_tangible", - "8029f620": "cur_obj_enable_rendering", - "8029f644": "cur_obj_disable_rendering_and_become_intangible", - "8029f66c": "cur_obj_disable_rendering", - "8029f694": "cur_obj_unhide", - "8029f6bc": "cur_obj_hide", - "8029f6e0": "cur_obj_set_pos_relative", - "8029f7d8": "cur_obj_set_pos_relative_to_parent", - "8029f820": "cur_obj_enable_rendering_2", - "8029f848": "cur_obj_unused_init_on_floor", - "8029f8ec": "obj_set_face_angle_to_move_angle", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "cur_obj_nearest_object_with_behavior", - "8029f998": "cur_obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "cur_obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "cur_obj_find_nearby_held_actor", - "8029fdb4": "cur_obj_change_action", - "8029fe00": "cur_obj_set_vel_from_mario_vel", - "8029fe6c": "cur_obj_reverse_animation", - "8029fea4": "cur_obj_extend_animation_if_at_end", - "8029ff04": "cur_obj_check_if_near_animation_end", - "8029ffa4": "cur_obj_check_if_at_animation_end", - "802a0008": "cur_obj_check_anim_frame", - "802a0050": "cur_obj_check_anim_frame_in_range", - "802a00ac": "cur_obj_check_frame_prior_current_frame", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "cur_obj_set_y_vel_and_animation", - "802a01d8": "cur_obj_unrender_and_reset_state", - "802a0380": "cur_obj_get_thrown_or_placed", - "802a0474": "cur_obj_get_dropped", - "802a04c0": "cur_obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "cur_obj_clear_interact_status_flag", - "802a0568": "obj_mark_for_deletion", - "802a057c": "cur_obj_disable", - "802a05b4": "cur_obj_become_intangible", - "802a05d4": "cur_obj_become_tangible", - "802a05f0": "obj_become_tangible", - "802a0604": "cur_obj_update_floor_height", - "802a064c": "cur_obj_update_floor_height_and_get_floor", - "802a079c": "cur_obj_apply_drag_xz", - "802a0e68": "cur_obj_move_y", - "802a113c": "cur_obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "cur_obj_move_xz_using_fvel_and_yaw", - "802a12a4": "cur_obj_move_y_with_terminal_vel", - "802a1308": "cur_obj_compute_vel_xz", - "802a1370": "increment_velocity_toward_range", - "802a1424": "obj_check_if_collided_with_object", - "802a148c": "cur_obj_set_behavior", - "802a14c4": "obj_set_behavior", - "802a14fc": "cur_obj_has_behavior", - "802a1554": "obj_has_behavior", - "802a15ac": "cur_obj_lateral_dist_from_mario_to_home", - "802a1634": "cur_obj_lateral_dist_to_home", - "802a16ac": "cur_obj_outside_home_square", - "802a1774": "cur_obj_outside_home_rectangle", - "802a184c": "cur_obj_set_pos_to_home", - "802a188c": "cur_obj_set_pos_to_home_and_stop", - "802a18dc": "cur_obj_shake_y", - "802a1930": "cur_obj_start_cam_event", - "802a1960": "set_mario_interact_hoot_if_in_range", - "802a19ac": "obj_set_billboard", - "802a19c8": "cur_obj_set_hitbox_radius_and_height", - "802a19f0": "cur_obj_set_hurtbox_radius_and_height", - "802a1b34": "obj_spawn_loot_blue_coins", - "802a1b8c": "obj_spawn_loot_yellow_coins", - "802a1bdc": "cur_obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "cur_obj_abs_y_dist_to_home", - "802a1cc4": "cur_obj_advance_looping_anim", - "802a1f3c": "cur_obj_resolve_wall_collisions", - "802a2320": "cur_obj_update_floor_and_walls", - "802a2348": "cur_obj_move_standard", - "802a25b4": "cur_obj_move_using_vel_and_gravity", - "802a2644": "cur_obj_move_using_fvel_and_gravity", - "802a2674": "obj_set_pos_relative", - "802a2748": "cur_obj_angle_to_home", - "802a27b0": "obj_set_gfx_pos_at_obj_pos", - "802a2804": "obj_translate_local", - "802a2930": "obj_build_transform_from_pos_and_angle", - "802a2a18": "obj_set_throw_matrix_from_transform", - "802a2a84": "obj_build_transform_relative_to_parent", - "802a2b28": "obj_create_transform_from_self", - "802a2b6c": "cur_obj_rotate_move_angle_using_vel", - "802a2bc4": "cur_obj_rotate_face_angle_using_vel", - "802a2c1c": "cur_obj_set_face_angle_to_move_angle", - "802a2c5c": "cur_obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "obj_scale_random", - "802a2fc0": "obj_translate_xyz_random", - "802a308c": "obj_translate_xz_random", - "802a31e0": "cur_obj_set_pos_via_transform", - "802a3268": "cur_obj_reflect_move_angle_off_wall", - "802a32ac": "cur_obj_spawn_particles", - "802a34a4": "obj_set_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "cur_obj_wait_then_blink", - "802a3754": "cur_obj_is_mario_ground_pounding_platform", - "802a37ac": "spawn_mist_particles", - "802a37dc": "spawn_mist_particles_with_sound", - "802a3818": "cur_obj_push_mario_away", - "802a390c": "cur_obj_push_mario_away_from_cylinder", - "802a399c": "bhv_dust_smoke_loop", - "802a3a4c": "cur_obj_set_direction_table", - "802a3a88": "cur_obj_progress_direction_table", - "802a3b28": "stub_obj_helpers_3", - "802a3b40": "cur_obj_scale_over_time", - "802a3c18": "cur_obj_set_pos_to_home_with_debug", - "802a3cec": "stub_obj_helpers_4", - "802a3cfc": "cur_obj_is_mario_on_platform", - "802a3d40": "cur_obj_shake_y_until", - "802a3dd4": "cur_obj_move_up_and_down", - "802a3e30": "cur_obj_call_action_function", - "802a3ef8": "spawn_base_star_with_no_lvl_exit", - "802a3f24": "bit_shift_left", - "802a3f48": "cur_obj_mario_far_away", - "802a404c": "is_mario_moving_fast_or_in_air", - "802a40b8": "is_item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "cur_obj_enable_rendering_if_mario_in_room", - "802a4360": "cur_obj_set_hitbox_and_die_if_attacked", - "802a4440": "obj_explode_and_spawn_coins", - "802a44f4": "obj_set_collision_data", - "802a452c": "cur_obj_if_hit_wall_bounce_away", - "802a4564": "cur_obj_hide_if_mario_far_away_y", - "802a45e4": "geo_offset_klepto_held_object", - "802a462c": "geo_offset_klepto_debug", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "cur_obj_can_mario_activate_textbox", - "802a48bc": "cur_obj_can_mario_activate_textbox_2", - "802a4960": "cur_obj_update_dialog", - "802a4be4": "cur_obj_update_dialog_with_cutscene", - "802a4f04": "cur_obj_has_model", - "802a4f58": "cur_obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "cur_obj_shake_screen", - "802a513c": "obj_attack_collided_from_other_object", - "802a51ac": "cur_obj_was_attacked_or_ground_pounded", - "802a5228": "obj_copy_behavior_params", - "802a5248": "cur_obj_init_animation_and_anim_frame", - "802a5288": "cur_obj_init_animation_and_check_if_near_end", - "802a52c4": "cur_obj_init_animation_and_extend_if_at_end", - "802a52f8": "cur_obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "cur_obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "cur_obj_check_interacted", - "802a5524": "cur_obj_spawn_loot_blue_coin", - "802a5588": "cur_obj_spawn_star_at_y_offset", - "802a5620": "star_door_update_pos", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "mr_i_piranha_particle_act_0", - "802a5a44": "mr_i_piranha_particle_act_1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "spawn_mr_i_particle", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "mr_i_act_3", - "802a6518": "mr_i_act_2", - "802a68a0": "mr_i_act_1", - "802a6ad8": "mr_i_act_0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "cap_switch_act_0", - "802a7020": "cap_switch_act_1", - "802a708c": "cap_switch_act_2", - "802a7160": "cap_switch_act_3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "geo_update_held_mario_pos", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "king_bobomb_act_0", - "802a7384": "mario_is_far_below_object", - "802a73d8": "king_bobomb_act_2", - "802a7598": "king_bobomb_act_3", - "802a7804": "king_bobomb_act_1", - "802a78d8": "king_bobomb_act_6", - "802a7a60": "king_bobomb_act_7", - "802a7b1c": "king_bobomb_act_8", - "802a7b5c": "king_bobomb_act_4", - "802a7d14": "king_bobomb_act_5", - "802a7fbc": "king_bobomb_move", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "scale_bubble_random", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "scale_bubble_sin", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "opened_cannon_act_0", - "802a8f40": "opened_cannon_act_4", - "802a9114": "opened_cannon_act_6", - "802a92fc": "opened_cannon_act_5", - "802a93f8": "opened_cannon_act_1", - "802a9440": "opened_cannon_act_2", - "802a9460": "opened_cannon_act_3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "common_anchor_mario_behavior", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "unknown_chuckya_function", - "802a98c4": "approach_forward_vel", - "802a9994": "chuckya_act_0", - "802a9d08": "chuckya_act_1", - "802a9f54": "chuckya_act_3", - "802a9fc8": "chuckya_act_2", - "802aa02c": "chuckya_move", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "check_mario_attacking", - "802aa3c8": "init_kickable_board_rock", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "set_koopa_shell_underwater_hitbox", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "bhv_fading_warp_loop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "spawn_mist_particles_variable", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "set_sparkle_spawn_star_hitbox", - "802ab060": "set_home_to_mario", - "802ab158": "set_y_home_to_pos", - "802ab18c": "slow_star_rotation", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "spawn_coin_in_formation", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "coin_inside_boo_act_1", - "802ac15c": "coin_inside_boo_act_0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "door_animation_and_reset", - "802ac958": "set_door_camera_event", - "802ac9d0": "play_door_open_noise", - "802aca6c": "play_warp_door_open_noise", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "grindel_thwomp_act_4", - "802ad10c": "grindel_thwomp_act_2", - "802ad1a4": "grindel_thwomp_act_3", - "802ad238": "grindel_thwomp_act_1", - "802ad2d0": "grindel_thwomp_act_0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "tumbling_bridge_act_1", - "802ad76c": "tumbling_bridge_act_2", - "802ad7f4": "tumbling_bridge_act_3", - "802ad828": "tumbling_bridge_act_0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "elevator_starting_shake", - "802ad8f0": "elevator_act_0", - "802ada4c": "elevator_act_1", - "802adb88": "elevator_act_2", - "802adce4": "elevator_act_4", - "802add70": "elevator_act_3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "spawn_mist_from_global", - "802ae360": "bhv_ground_sand_init", - "802ae394": "spawn_smoke_with_velocity", - "802ae45c": "clear_particle_flags", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "spawn_wind_particles", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "spawn_and_init_wf_platforms", - "802b039c": "spawn_wf_platform_group", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "square_plat_set_yaw_until_timer", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "check_if_moving_over_floor", - "802b15e8": "bhv_pushable_loop", - "802b1714": "breakable_box_init", - "802b17f4": "hidden_breakable_box_actions", - "802b19d8": "hidden_unbreakable_box_actions", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "geo_move_mario_part_from_parent", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "heave_ho_act_1", - "802b1e6c": "heave_ho_act_2", - "802b1ff4": "heave_ho_act_3", - "802b20a0": "heave_ho_act_0", - "802b2154": "heave_ho_move", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "jumping_box_act_0", - "802b27d8": "jumping_box_act_1", - "802b2824": "jumping_box_free_update", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "spawn_sparkle_particles", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "arc_to_goal_pos", - "802b3250": "grand_star_zero_velocity", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "bullet_bill_act_0", - "802b38b8": "bullet_bill_act_1", - "802b394c": "bullet_bill_act_2", - "802b3b08": "bullet_bill_act_3", - "802b3b24": "bullet_bill_act_4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "bowser_tail_anchor_act_0", - "802b3cdc": "bowser_tail_anchor_act_1", - "802b3d10": "bowser_tail_anchor_act_2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "bowser_spawn_shockwave", - "802b41fc": "bowser_bounce", - "802b4288": "bowser_set_anim_look_up_and_walk", - "802b4300": "bowser_set_anim_slow_gait", - "802b4368": "bowser_set_anim_look_down", - "802b43dc": "bowser_initialize_action", - "802b4478": "bowser_act_text_wait", - "802b44bc": "bowser_act_intro_walk", - "802b45f4": "bowser_bitdw_act_controller", - "802b473c": "bowser_bitfs_act_controller", - "802b48d4": "bowser_general_bits_act_controller", - "802b4a1c": "bowser_set_act_jump", - "802b4a3c": "bowser_bits_act_controller", - "802b4af4": "bowser_reset_fallen_off_stage", - "802b4bac": "bowser_act_unused_slow_walk", - "802b4be8": "bowser_act_default", - "802b4ca4": "bowser_act_breath_fire", - "802b4d14": "bowser_act_walk_to_mario", - "802b4f00": "bowser_act_teleport", - "802b5104": "bowser_act_spit_fire_into_sky", - "802b5218": "bowser_act_hit_mine", - "802b53f4": "bowser_set_anim_in_air", - "802b5444": "bowser_land", - "802b5554": "bowser_short_second_hop", - "802b55cc": "bowser_act_jump", - "802b5798": "bowser_act_jump_towards_mario", - "802b58bc": "bowser_act_hit_edge", - "802b59cc": "bowser_act_spit_fire_onto_floor", - "802b5aec": "bowser_turn_on_timer", - "802b5c00": "bowser_act_turn_from_edge", - "802b5c40": "bowser_act_charge_mario", - "802b5f6c": "bowser_check_hit_mine", - "802b5fec": "bowser_act_thrown_dropped", - "802b611c": "bowser_set_goal_invisible", - "802b6190": "bowser_act_jump_onto_stage", - "802b6568": "bowser_act_dance", - "802b65d0": "bowser_spawn_grand_star_key", - "802b6670": "bowser_fly_back_dead", - "802b6730": "bowser_dead_bounce", - "802b67d4": "bowser_dead_wait_for_mario", - "802b6878": "bowser_dead_twirl_into_trophy", - "802b6a10": "bowser_dead_hide", - "802b6a78": "bowser_dead_not_bits_end", - "802b6bac": "bowser_dead_bits_end", - "802b6cf0": "bowser_act_dead", - "802b6e40": "bowser_tilt_platform", - "802b6ee0": "bowser_act_ride_tilting_platform", - "802b711c": "bowser_check_fallen_off_stage", - "802b71e4": "bowser_free_update", - "802b72d4": "bowser_held_update", - "802b7418": "bowser_thrown_dropped_update", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "geo_update_body_rot_from_parent", - "802b7a20": "bowser_open_eye_switch", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "geo_bits_bowser_coloring", - "802b7e68": "falling_bowser_plat_act_0", - "802b7ef0": "falling_bowser_plat_act_1", - "802b8024": "falling_bowser_plat_act_2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "bowser_flame_despawn", - "802b8434": "bowser_flame_should_despawn", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "bowser_flame_move", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_movement_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "vec3f_copy_2", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "checkerboard_plat_act_move_y", - "802b9af8": "checkerboard_plat_act_rotate", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "water_level_pillar_undrained", - "802ba13c": "water_level_pillar_drained", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "geo_scale_bowser_key", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_hat_ukiki_reset", - "802ba868": "is_hat_ukiki_and_mario_has_hat", - "802ba8c4": "geo_update_projectile_pos_from_parent_copy", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "hat_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "lll_octagonal_mesh_move", - "802bbfd8": "lll_octagonal_mesh_find_y_offset", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "fire_bar_spawn_flames", - "802bc4f4": "fire_bar_act_0", - "802bc538": "fire_bar_act_1", - "802bc590": "fire_bar_act_2", - "802bc5fc": "fire_bar_act_3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "hexagonal_ring_spawn_flames", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "sinking_rectangular_plat_actions", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "koopa_shell_spawn_water_drop", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "koopa_shell_spawn_sparkles", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "tox_box_shake_screen", - "802bd91c": "tox_box_move", - "802bdb04": "tox_box_act_4", - "802bdb3c": "tox_box_act_5", - "802bdb74": "tox_box_act_6", - "802bdbac": "tox_box_act_7", - "802bdbe4": "tox_box_act_1", - "802bdc7c": "tox_box_act_2", - "802bdcc8": "tox_box_act_3", - "802bdd14": "tox_box_act_0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "set_obj_anim_with_accel_and_sound", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "tuxies_mother_act_2", - "802bef8c": "tuxies_mother_act_1", - "802bf1d8": "tuxies_mother_act_0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "small_penguin_dive_with_mario", - "802bf474": "small_penguin_act_2", - "802bf57c": "small_penguin_act_1", - "802bf648": "small_penguin_act_3", - "802bf6e4": "small_penguin_act_4", - "802bf760": "small_penguin_act_0", - "802bf90c": "small_penguin_act_5", - "802bfa14": "small_penguin_free_actions", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "fish_act_spawn", - "802bfeb8": "fish_act_respawn", - "802bff20": "fish_act_init", - "802bff3c": "bhv_large_fish_group_loop", - "802bff68": "fish_regroup", - "802c00b4": "fish_group_act_rotation", - "802c0348": "fish_group_act_move", - "802c06a8": "fish_group_act_animate", - "802c0768": "bhv_fish_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "bub_spawner_act_0", - "802c0b50": "bub_spawner_act_1", - "802c0ba4": "bub_spawner_act_2", - "802c0bc4": "bub_spawner_act_3", - "802c0be0": "bhv_bub_spawner_loop", - "802c0c0c": "bub_move_vertically", - "802c0cd4": "bub_act_0", - "802c0d44": "bub_act_1", - "802c0f90": "bub_act_2", - "802c1204": "bhv_bub_loop", - "802c12c0": "bhv_rotating_exclamation_box_loop", - "802c1308": "exclamation_box_act_0", - "802c13ec": "exclamation_box_act_1", - "802c14b0": "exclamation_box_act_2", - "802c15b8": "exclamation_box_act_3", - "802c17bc": "exclamation_box_spawn_contents", - "802c18d0": "exclamation_box_act_4", - "802c1988": "exclamation_box_act_5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "bhv_pole_base_loop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "update_angle_from_move_flags", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "whomp_play_sfx_from_pound_animation", - "802c6d6c": "whomp_act_0", - "802c6ec8": "whomp_act_7", - "802c6fb0": "whomp_act_1", - "802c710c": "whomp_act_2", - "802c7254": "whomp_act_3", - "802c72b4": "whomp_act_4", - "802c7380": "whomp_act_5", - "802c7428": "king_whomp_on_ground", - "802c75fc": "whomp_on_ground", - "802c76d4": "whomp_act_6", - "802c7858": "whomp_act_8", - "802c7998": "whomp_act_9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_spawn_droplets", - "802c7b14": "bhv_water_droplet_loop", - "802c7cac": "bhv_idle_water_wave_loop", - "802c7d40": "bhv_water_droplet_splash_init", - "802c7d90": "bhv_bubble_splash_init", - "802c7dfc": "bhv_shallow_water_splash_init", - "802c7e5c": "bhv_wave_trail_shrink", - "802c7f98": "bhv_strong_wind_particle_loop", - "802c81b4": "cur_obj_spawn_strong_wind_particles", - "802c834c": "bhv_sl_snowman_wind_loop", - "802c863c": "bhv_sl_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "debug_print_obj_collision", - "802c8fe4": "detect_object_hitbox_overlap", - "802c91ec": "detect_object_hurtbox_overlap", - "802c9388": "clear_object_collision", - "802c93f8": "check_collision_in_list", - "802c94ac": "check_player_object_collision", - "802c95b4": "check_pushable_object_collision", - "802c9630": "check_destructive_object_collision", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "cur_obj_play_sound_1", - "802ca1e0": "cur_obj_play_sound_2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "stub_debug_1", - "802ca380": "stub_debug_2", - "802ca390": "stub_debug_3", - "802ca3a0": "stub_debug_4", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_debug_5", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "debug_enemy_unknown", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stop_other_paintings", - "802d2a74": "painting_mario_y", - "802d2b08": "painting_mario_z", - "802d2b84": "painting_ripple_y", - "802d2c40": "painting_nearest_4th", - "802d2d80": "painting_mario_x", - "802d2dfc": "painting_ripple_x", - "802d2eb8": "painting_state", - "802d2ffc": "wall_painting_proximity_idle", - "802d319c": "wall_painting_proximity_rippling", - "802d327c": "wall_painting_continuous_idle", - "802d341c": "wall_painting_continuous_rippling", - "802d34fc": "floor_painting_proximity_idle", - "802d36ac": "floor_painting_proximity_rippling", - "802d379c": "floor_painting_continuous_idle", - "802d393c": "floor_painting_continuous_rippling", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_state", - "802d3cec": "calculate_ripple_at_point", - "802d3e6c": "ripple_if_movable", - "802d3ee4": "painting_generate_mesh", - "802d404c": "painting_calculate_triangle_normals", - "802d43f8": "normalize_component", - "802d44bc": "painting_average_vertex_normals", - "802d47d0": "render_painting", - "802d4edc": "painting_model_view_transform", - "802d50dc": "painting_ripple_image", - "802d5354": "painting_ripple_env_mapped", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "move_ddd_painting", - "802d58e4": "set_painting_layer", - "802d593c": "display_painting", - "802d59a8": "wall_painting_update", - "802d5aa0": "floor_painting_update", - "802d5b98": "geo_painting_draw", - "802d5d0c": "geo_painting_update", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "coin_step", - "802e5e6c": "moving_coin_flicker", - "802e5ea4": "coin_collected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "blue_coin_sliding_away_from_mario", - "802e63ec": "blue_coin_sliding_slow_down", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "bobomb_spawn_coin", - "802e6af8": "bobomb_act_explode", - "802e6bd4": "bobomb_check_interactions", - "802e6cf0": "bobomb_act_patrol", - "802e6dc8": "bobomb_act_chase_mario", - "802e6e84": "bobomb_act_launched", - "802e6ed8": "generic_bobomb_free_loop", - "802e7020": "stationary_bobomb_free_loop", - "802e7134": "bobomb_free_loop", - "802e7180": "bobomb_held_loop", - "802e7220": "bobomb_dropped_loop", - "802e7280": "bobomb_thrown_loop", - "802e7324": "curr_obj_random_blink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "bobomb_buddy_act_idle", - "802e7814": "bobomb_buddy_cannon_dialog", - "802e79dc": "bobomb_buddy_act_talk", - "802e7b00": "bobomb_buddy_act_turn_to_talk", - "802e7bb0": "bobomb_buddy_actions", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "cannon_door_act_opening", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "whirlpool_set_hitbox", - "802e7fec": "whirpool_orient_graph", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "butterfly_step", - "802e9278": "butterfly_calculate_angle", - "802e9470": "butterfly_act_rest", - "802e94e4": "butterfly_act_follow_mario", - "802e9548": "butterfly_act_return_home", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "hoot_find_next_floor", - "802e98c0": "hoot_floor_bounce", - "802e9a4c": "hoot_free_step", - "802e9cf4": "hoot_player_set_yaw", - "802e9d98": "hoot_carry_step", - "802e9f60": "hoot_surface_collision", - "802ea144": "hoot_act_ascent", - "802ea258": "hoot_action_loop", - "802ea3f0": "hoot_turn_to_home", - "802ea4ec": "hoot_awake_loop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "bully_check_mario_collision", - "802eb288": "bully_act_chase_mario", - "802eb3f0": "bully_act_knockback", - "802eb510": "bully_act_back_up", - "802eb5c4": "bully_backup_check", - "802eb630": "bully_play_stomping_sound", - "802eb744": "bully_step", - "802eb7e0": "bully_spawn_coin", - "802eb8b0": "bully_act_level_death", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "big_bully_spawn_minion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "big_bully_spawn_star", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "water_ring_calc_mario_dist", - "802ec030": "water_ring_init", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "water_ring_check_collection", - "802ec3d0": "water_ring_set_scale", - "802ec4e0": "water_ring_act_collected", - "802ec59c": "water_ring_act_not_collected", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "spawn_manta_ray_ring_manager", - "802ec818": "water_ring_spawner_act_inactive", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "manta_water_ring_act_not_collected", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "celeb_star_act_spin_around_mario", - "802ed28c": "celeb_star_act_face_camera", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "moneybag_check_mario_collision", - "802ee268": "moneybag_jump", - "802ee46c": "moneybag_act_move_around", - "802ee598": "moneybag_act_return_home", - "802ee728": "moneybag_act_disappear", - "802ee778": "moneybag_act_death", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "bowling_ball_set_hitbox", - "802eea7c": "bowling_ball_set_waypoints", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "set_rolling_sphere_hitbox", - "802f0bd4": "adjust_rolling_face_pitch", - "802f0c94": "snowmans_bottom_act_1", - "802f0df0": "snowmans_bottom_act_2", - "802f0fa8": "snowmans_bottom_act_3", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "boulder_act_1", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "cap_set_hitbox", - "802f19c8": "cap_despawn", - "802f1a10": "cap_check_quicksand", - "802f1bb8": "cap_sink_quicksand", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "cap_scale_vertically", - "802f1e5c": "wing_vanish_cap_act_0", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "metal_cap_act_0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "normal_cap_set_save_flags", - "802f2284": "normal_cap_act_0", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "spawn_star", - "802f2b88": "spawn_default_star", - "802f2bd4": "spawn_red_coin_cutscene_star", - "802f2c24": "spawn_no_exit_star", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "rolling_log_roll_log", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "volcano_act_1", - "802f39b4": "volcano_act_3", - "802f3a30": "bhv_volcano_trap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "one_up_loop_in_air", - "802f3ea8": "pole_1up_move_towards_mario", - "802f401c": "one_up_move_away_from_mario", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "sliding_1up_move", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "controllable_platform_act_1", - "802f4ce0": "controllable_platform_act_2", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "controllable_platform_hit_wall", - "802f5068": "controllable_platform_check_walls", - "802f52c0": "controllable_platform_shake_on_wall_hit", - "802f547c": "controllable_platform_tilt_from_mario", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "small_breakable_box_spawn_dust", - "802f5e44": "small_breakable_box_act_move", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "floating_platform_find_home_y", - "802f665c": "floating_platform_act_0", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "manta_ray_move", - "802f7068": "manta_ray_act_spawn_ring", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "spawn_treasure_chest", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "bhv_yoshi_loop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "mr_blizzard_spawn_white_particles", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "geo_snufit_move_mask", - "8030d9ac": "geo_snufit_scale_body", - "8030da14": "snufit_act_idle", - "8030db38": "snufit_act_shoot", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_value_less_equal", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L8031C200", - "8031c23c": "L8031C23C", - "8031c298": "L8031C298", - "8031c2dc": "L8031C2DC", - "8031c328": "L8031C328", - "8031c36c": "L8031C36C", - "8031c3bc": "L8031C3BC", - "8031c3e8": "L8031C3E8", - "8031c454": "L8031C454", - "8031c4a4": "L8031C4A4", - "8031c5c8": "L8031C5C8", - "8031c698": "L8031C698", - "8031c6a0": "L8031C6A0", - "8031cbe0": "L8031CBE0", - "8031cbec": "L8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e578": "sequence_player_fade_out_internal", - "8031e5c0": "func_8031D690", - "8031e60c": "func_8031D6E4", - "8031e6a4": "func_8031D7B0", - "8031e710": "func_8031D838", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031eb30": "process_sound_request", - "8031edec": "process_all_sound_requests", - "8031ee70": "func_8031DFE8", - "8031ef6c": "func_8031E0E4", - "8031eff4": "func_8031E16C", - "8031f810": "get_sound_pan", - "8031f96c": "get_sound_dynamics", - "8031fb20": "get_sound_freq_scale", - "8031fbe8": "get_sound_reverb", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "803217a8": "disable_all_sequence_players", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "D_8032C9E0", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "sWarpBhvSpawnTable", - "8032de4c": "sSpawnTypeFromWarpBhv", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "gOpenableGrills", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "sWaterSplashDropletParams", - "80330d30": "gShallowWaterSplashDropletParams", - "80330d54": "sWaterDropletFishParams", - "80330d78": "gShallowWaterWaveDropletParams", - "80330d9c": "sStrongWindParticleHitbox", - "80330dac": "sSLWalkingPenguinErraticSteps", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "sHmcPaintings", - "80331308": "sInsideCastlePaintings", - "80331344": "sTtmPaintings", - "8033134c": "sPaintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "D_80333EF0", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "_osContInitialized", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "D_80334894", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gShouldNotPlayCastleMusic", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "sFloorAlignMatrix", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gCurBhvCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "gPaintingMesh", - "80361314": "gPaintingTriNorms", - "80361318": "gRipplingPainting", - "8036131c": "gDddPaintingStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "_osContCmdBuf", - "8036708c": "_osContPifCtrl", - "80367090": "_osLastSentSiCmd", - "80367091": "_osContNumControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "__osViIntrCount", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": ".", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "random_u16", - "80383cb4": "random_float", - "80383d1c": "random_sign", - "80383d68": "obj_update_gfx_pos_and_angle", - "80385bf0": "stub_behavior_script_2", - "80385c00": "cur_obj_update", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "00000001": "ASSERT", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "small_water_splash_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "idle_water_wave_geo", - "17000168": "wave_trail_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleParticleSpawner", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvPlungeBubble", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvVertStarParticleSpawner", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvHorStarParticleSpawner", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvTriangleParticleSpawner", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvBreathParticleSpawner", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvMistCircParticleSpawner", - "13000e3c": "bhvDirtParticleSpawner", - "13000e58": "bhvSnowParticleSpawner", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFireParticleSpawner", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvLeafParticleSpawner", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFish", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMistParticleSpawner", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSparkleParticleSpawner", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDroplet", - "13002c7c": "bhvWaterDropletSplash", - "13002cb0": "bhvBubbleSplash", - "13002ce0": "bhvIdleWaterWave", - "13002d28": "bhvObjectWaterSplash", - "13002d50": "bhvShallowWaterWave", - "13002d7c": "bhvShallowWaterSplash", - "13002db0": "bhvObjectWaveTrail", - "13002dc0": "bhvWaveTrail", - "13002e04": "bhvTinyStrongWindParticle", - "13002e20": "bhvStrongWindParticle", - "13002e3c": "bhvSLSnowmanWind", - "13002e58": "bhvSLWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvInstantActiveWarp", - "13002f64": "bhvAirborneWarp", - "13002f68": "bhvHardAirKnockBackWarp", - "13002f6c": "bhvSpinAirborneCircleWarp", - "13002f70": "bhvDeathWarp", - "13002f74": "bhvSpinAirborneWarp", - "13002f78": "bhvFlyingWarp", - "13002f7c": "bhvPaintingStarCollectWarp", - "13002f80": "bhvPaintingDeathWarp", - "13002f84": "bhvAirborneDeathWarp", - "13002f88": "bhvAirborneStarCollectWarp", - "13002f8c": "bhvLaunchStarCollectWarp", - "13002f90": "bhvLaunchDeathWarp", - "13002f94": "bhvSwimmingWarp", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000000": ["EXCEPTION_TLB_MISS"], + "a4000000": ["SP_DMEM"], + "a40004c0": ["SP_DMEM_UNK0"], + "a4000774": ["SP_DMEM_UNK1"], + "a4001000": ["SP_IMEM"], + "a4040010": ["SP_STATUS_REG"], + "a4080000": ["SP_PC"], + "a4300000": ["MI_MODE_REG"], + "a4300004": ["MI_VERSION_REG"], + "a4300008": ["MI_INTR_REG"], + "a430000c": ["MI_INTR_MASK_REG"], + "a4400010": ["VI_CURRENT_REG"], + "a450000c": ["AI_STATUS_REG"], + "a4600000": ["PI_DRAM_ADDR_REG"], + "a4600004": ["PI_CART_ADDR_REG"], + "a460000c": ["PI_WR_LEN_REG"], + "a4600010": ["PI_STATUS_REG"], + "a4700000": ["RI_MODE_REG"], + "a4700010": ["RI_REFRESH_REG"], + "a4800018": ["SI_STATUS_REG"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802f69cc": ["func_sh_802F69CC"], + "80302ef0": ["osMotorStop"], + "80303090": ["osMotorStart"], + "803033ac": ["osMotorInit"], + "803016a0": ["func_sh_803016A0"], + "803016d0": ["func_sh_803016D0"], + "80301820": ["func_sh_80301820"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04000040": ["ipl3_entry"], + "04000b70": ["ipl3_font"], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "entry_point"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["unknown_main_func"], + "802461cc": ["stub_main_1"], + "802461dc": ["stub_main_2"], + "802461ec": ["stub_main_3"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["alloc_pool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["send_sp_task_message"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["main_func"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["draw_reset_bars"], + "80247f08": ["rendering_init"], + "80247fdc": ["config_gfx_pool"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["reset_volume"], + "80248c58": ["lower_background_noise"], + "80248ce8": ["raise_background_noise"], + "80248d78": ["disable_background_sound"], + "80248dc0": ["enable_background_sound"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["fadeout_music"], + "8024927c": ["fadeout_level_music"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "80249494": ["play_menu_sounds_extra"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_pause"], + "80249764": ["set_play_mode"], + "8024978c": ["warp_special"], + "802497b8": ["fade_into_special_warp"], + "8024982c": ["stub_level_update_1"], + "8024983c": ["load_level_init_text"], + "8024995c": ["init_door_warp"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["warp_area"], + "8024a18c": ["warp_level"], + "8024a1d8": ["warp_credits"], + "8024a374": ["check_instant_warp"], + "8024a584": ["music_changed_through_warp"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_obj_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_hat"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["should_push_or_pull_door"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_strong_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["mario_can_talk"], + "8024ff04": ["check_read_sign"], + "80250098": ["check_npc_talk"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["stub_mario_step_1"], + "802550b0": ["stub_mario_step_2"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["bhv_end_peach_loop"], + "802570dc": ["bhv_end_toad_loop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025bc80": ["generate_yellow_sparkles"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["climb_up_ledge"], + "8025f560": ["update_ledge_climb_camera"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["check_common_idle_cancels"], + "80260aac": ["check_common_hold_idle_cancels"], + "80260cb4": ["act_idle"], + "80260f94": ["play_anim_sound"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["stopping_step"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["act_hold_butt_slide_stop"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["act_shockwave_bounce"], + "80262bc4": ["landing_step"], + "80262c34": ["check_common_landing_cancels"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["act_hold_jump_land_stop"], + "802631f0": ["act_hold_freefall_land_stop"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["check_common_stationary_cancels"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["tilt_body_running"], + "80263ee4": ["play_step_sound"], + "80264024": ["align_with_floor"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["anim_and_audio_for_walk"], + "80265b1c": ["anim_and_audio_for_hold_walk"], + "80265d90": ["anim_and_audio_for_heavy_walk"], + "80265df8": ["push_or_sidle_wall"], + "80266038": ["tilt_body_walking"], + "802661cc": ["tilt_body_ground_shell"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["tilt_body_butt_slide"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["play_knockback_sound"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["check_wall_kick"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_envfx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhv_toad_message_loop"], + "80276910": ["bhv_toad_message_init"], + "80276bb8": ["bhv_unlock_door_star_init"], + "80276ccc": ["bhv_unlock_door_star_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["load_segment_decompress_heap"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["load_patchable_table"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["override_viewport_and_clip"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["area_get_warp_node_from_params"], + "8027aa74": ["load_obj_warp_nodes"], + "8027ab04": ["clear_areas"], + "8027ad74": ["clear_area_graph_nodes"], + "8027ae44": ["load_area"], + "8027af48": ["unload_area"], + "8027afbc": ["load_mario_area"], + "8027b038": ["unload_mario_area"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["stub_camera_2"], + "80287dd4": ["stub_camera_3"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["stub_camera_4"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["spawn_child_obj_relative"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_obj_list_processor_1"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["geo_update_projectile_pos_from_parent"], + "8029d924": ["geo_update_layer_transparency"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["obj_update_pos_from_parent_transformation"], + "8029dda8": ["obj_apply_scale_to_matrix"], + "8029de80": ["create_transformation_from_matrices"], + "8029e1b0": ["obj_set_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["cur_obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["cur_obj_rotate_yaw_toward"], + "8029e694": ["obj_angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["obj_set_parent_relative_pos"], + "8029e914": ["obj_set_pos"], + "8029e96c": ["obj_set_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["spawn_obj_with_transform_flags"], + "8029eb04": ["spawn_water_droplet"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["cur_obj_move_using_vel"], + "8029f0c8": ["obj_copy_graph_y_offset"], + "8029f0e0": ["obj_copy_pos_and_angle"], + "8029f120": ["obj_copy_pos"], + "8029f148": ["obj_copy_angle"], + "8029f188": ["obj_set_gfx_pos_from_pos"], + "8029f1b0": ["obj_init_animation"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["obj_apply_scale_to_transform"], + "8029f3a8": ["obj_copy_scale"], + "8029f3d0": ["obj_scale_xyz"], + "8029f404": ["obj_scale"], + "8029f430": ["cur_obj_scale"], + "8029f464": ["cur_obj_init_animation"], + "8029f4b4": ["cur_obj_init_animation_with_sound"], + "8029f514": ["cur_obj_init_animation_with_accel_and_sound"], + "8029f59c": ["obj_init_animation_with_sound"], + "8029f600": ["cur_obj_enable_rendering_and_become_tangible"], + "8029f620": ["cur_obj_enable_rendering"], + "8029f644": ["cur_obj_disable_rendering_and_become_intangible"], + "8029f66c": ["cur_obj_disable_rendering"], + "8029f694": ["cur_obj_unhide"], + "8029f6bc": ["cur_obj_hide"], + "8029f6e0": ["cur_obj_set_pos_relative"], + "8029f7d8": ["cur_obj_set_pos_relative_to_parent"], + "8029f820": ["cur_obj_enable_rendering_2"], + "8029f848": ["cur_obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_face_angle_to_move_angle"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["cur_obj_nearest_object_with_behavior"], + "8029f998": ["cur_obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["cur_obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["cur_obj_find_nearby_held_actor"], + "8029fdb4": ["cur_obj_change_action"], + "8029fe00": ["cur_obj_set_vel_from_mario_vel"], + "8029fe6c": ["cur_obj_reverse_animation"], + "8029fea4": ["cur_obj_extend_animation_if_at_end"], + "8029ff04": ["cur_obj_check_if_near_animation_end"], + "8029ffa4": ["cur_obj_check_if_at_animation_end"], + "802a0008": ["cur_obj_check_anim_frame"], + "802a0050": ["cur_obj_check_anim_frame_in_range"], + "802a00ac": ["cur_obj_check_frame_prior_current_frame"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["cur_obj_set_y_vel_and_animation"], + "802a01d8": ["cur_obj_unrender_and_reset_state"], + "802a0380": ["cur_obj_get_thrown_or_placed"], + "802a0474": ["cur_obj_get_dropped"], + "802a04c0": ["cur_obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["cur_obj_clear_interact_status_flag"], + "802a0568": ["obj_mark_for_deletion"], + "802a057c": ["cur_obj_disable"], + "802a05b4": ["cur_obj_become_intangible"], + "802a05d4": ["cur_obj_become_tangible"], + "802a05f0": ["obj_become_tangible"], + "802a0604": ["cur_obj_update_floor_height"], + "802a064c": ["cur_obj_update_floor_height_and_get_floor"], + "802a079c": ["cur_obj_apply_drag_xz"], + "802a0e68": ["cur_obj_move_y"], + "802a113c": ["cur_obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["cur_obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["cur_obj_move_y_with_terminal_vel"], + "802a1308": ["cur_obj_compute_vel_xz"], + "802a1370": ["increment_velocity_toward_range"], + "802a1424": ["obj_check_if_collided_with_object"], + "802a148c": ["cur_obj_set_behavior"], + "802a14c4": ["obj_set_behavior"], + "802a14fc": ["cur_obj_has_behavior"], + "802a1554": ["obj_has_behavior"], + "802a15ac": ["cur_obj_lateral_dist_from_mario_to_home"], + "802a1634": ["cur_obj_lateral_dist_to_home"], + "802a16ac": ["cur_obj_outside_home_square"], + "802a1774": ["cur_obj_outside_home_rectangle"], + "802a184c": ["cur_obj_set_pos_to_home"], + "802a188c": ["cur_obj_set_pos_to_home_and_stop"], + "802a18dc": ["cur_obj_shake_y"], + "802a1930": ["cur_obj_start_cam_event"], + "802a1960": ["set_mario_interact_hoot_if_in_range"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["cur_obj_set_hitbox_radius_and_height"], + "802a19f0": ["cur_obj_set_hurtbox_radius_and_height"], + "802a1b34": ["obj_spawn_loot_blue_coins"], + "802a1b8c": ["obj_spawn_loot_yellow_coins"], + "802a1bdc": ["cur_obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["cur_obj_abs_y_dist_to_home"], + "802a1cc4": ["cur_obj_advance_looping_anim"], + "802a1f3c": ["cur_obj_resolve_wall_collisions"], + "802a2320": ["cur_obj_update_floor_and_walls"], + "802a2348": ["cur_obj_move_standard"], + "802a25b4": ["cur_obj_move_using_vel_and_gravity"], + "802a2644": ["cur_obj_move_using_fvel_and_gravity"], + "802a2674": ["obj_set_pos_relative"], + "802a2748": ["cur_obj_angle_to_home"], + "802a27b0": ["obj_set_gfx_pos_at_obj_pos"], + "802a2804": ["obj_translate_local"], + "802a2930": ["obj_build_transform_from_pos_and_angle"], + "802a2a18": ["obj_set_throw_matrix_from_transform"], + "802a2a84": ["obj_build_transform_relative_to_parent"], + "802a2b28": ["obj_create_transform_from_self"], + "802a2b6c": ["cur_obj_rotate_move_angle_using_vel"], + "802a2bc4": ["cur_obj_rotate_face_angle_using_vel"], + "802a2c1c": ["cur_obj_set_face_angle_to_move_angle"], + "802a2c5c": ["cur_obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["obj_scale_random"], + "802a2fc0": ["obj_translate_xyz_random"], + "802a308c": ["obj_translate_xz_random"], + "802a31e0": ["cur_obj_set_pos_via_transform"], + "802a3268": ["cur_obj_reflect_move_angle_off_wall"], + "802a32ac": ["cur_obj_spawn_particles"], + "802a34a4": ["obj_set_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["cur_obj_wait_then_blink"], + "802a3754": ["cur_obj_is_mario_ground_pounding_platform"], + "802a37ac": ["spawn_mist_particles"], + "802a37dc": ["spawn_mist_particles_with_sound"], + "802a3818": ["cur_obj_push_mario_away"], + "802a390c": ["cur_obj_push_mario_away_from_cylinder"], + "802a399c": ["bhv_dust_smoke_loop"], + "802a3a4c": ["cur_obj_set_direction_table"], + "802a3a88": ["cur_obj_progress_direction_table"], + "802a3b28": ["stub_obj_helpers_3"], + "802a3b40": ["cur_obj_scale_over_time"], + "802a3c18": ["cur_obj_set_pos_to_home_with_debug"], + "802a3cec": ["stub_obj_helpers_4"], + "802a3cfc": ["cur_obj_is_mario_on_platform"], + "802a3d40": ["cur_obj_shake_y_until"], + "802a3dd4": ["cur_obj_move_up_and_down"], + "802a3e30": ["cur_obj_call_action_function"], + "802a3ef8": ["spawn_base_star_with_no_lvl_exit"], + "802a3f24": ["bit_shift_left"], + "802a3f48": ["cur_obj_mario_far_away"], + "802a404c": ["is_mario_moving_fast_or_in_air"], + "802a40b8": ["is_item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["cur_obj_enable_rendering_if_mario_in_room"], + "802a4360": ["cur_obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["obj_explode_and_spawn_coins"], + "802a44f4": ["obj_set_collision_data"], + "802a452c": ["cur_obj_if_hit_wall_bounce_away"], + "802a4564": ["cur_obj_hide_if_mario_far_away_y"], + "802a45e4": ["geo_offset_klepto_held_object"], + "802a462c": ["geo_offset_klepto_debug"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["cur_obj_can_mario_activate_textbox"], + "802a48bc": ["cur_obj_can_mario_activate_textbox_2"], + "802a4960": ["cur_obj_update_dialog"], + "802a4be4": ["cur_obj_update_dialog_with_cutscene"], + "802a4f04": ["cur_obj_has_model"], + "802a4f58": ["cur_obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["cur_obj_shake_screen"], + "802a513c": ["obj_attack_collided_from_other_object"], + "802a51ac": ["cur_obj_was_attacked_or_ground_pounded"], + "802a5228": ["obj_copy_behavior_params"], + "802a5248": ["cur_obj_init_animation_and_anim_frame"], + "802a5288": ["cur_obj_init_animation_and_check_if_near_end"], + "802a52c4": ["cur_obj_init_animation_and_extend_if_at_end"], + "802a52f8": ["cur_obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["cur_obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["cur_obj_check_interacted"], + "802a5524": ["cur_obj_spawn_loot_blue_coin"], + "802a5588": ["cur_obj_spawn_star_at_y_offset"], + "802a5620": ["star_door_update_pos"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["mr_i_piranha_particle_act_0"], + "802a5a44": ["mr_i_piranha_particle_act_1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["spawn_mr_i_particle"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["mr_i_act_3"], + "802a6518": ["mr_i_act_2"], + "802a68a0": ["mr_i_act_1"], + "802a6ad8": ["mr_i_act_0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["cap_switch_act_0"], + "802a7020": ["cap_switch_act_1"], + "802a708c": ["cap_switch_act_2"], + "802a7160": ["cap_switch_act_3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["geo_update_held_mario_pos"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["king_bobomb_act_0"], + "802a7384": ["mario_is_far_below_object"], + "802a73d8": ["king_bobomb_act_2"], + "802a7598": ["king_bobomb_act_3"], + "802a7804": ["king_bobomb_act_1"], + "802a78d8": ["king_bobomb_act_6"], + "802a7a60": ["king_bobomb_act_7"], + "802a7b1c": ["king_bobomb_act_8"], + "802a7b5c": ["king_bobomb_act_4"], + "802a7d14": ["king_bobomb_act_5"], + "802a7fbc": ["king_bobomb_move"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["scale_bubble_random"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["scale_bubble_sin"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["opened_cannon_act_0"], + "802a8f40": ["opened_cannon_act_4"], + "802a9114": ["opened_cannon_act_6"], + "802a92fc": ["opened_cannon_act_5"], + "802a93f8": ["opened_cannon_act_1"], + "802a9440": ["opened_cannon_act_2"], + "802a9460": ["opened_cannon_act_3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["common_anchor_mario_behavior"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["unknown_chuckya_function"], + "802a98c4": ["approach_forward_vel"], + "802a9994": ["chuckya_act_0"], + "802a9d08": ["chuckya_act_1"], + "802a9f54": ["chuckya_act_3"], + "802a9fc8": ["chuckya_act_2"], + "802aa02c": ["chuckya_move"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["check_mario_attacking"], + "802aa3c8": ["init_kickable_board_rock"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["set_koopa_shell_underwater_hitbox"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["bhv_fading_warp_loop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["spawn_mist_particles_variable"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["set_sparkle_spawn_star_hitbox"], + "802ab060": ["set_home_to_mario"], + "802ab158": ["set_y_home_to_pos"], + "802ab18c": ["slow_star_rotation"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["spawn_coin_in_formation"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["coin_inside_boo_act_1"], + "802ac15c": ["coin_inside_boo_act_0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["door_animation_and_reset"], + "802ac958": ["set_door_camera_event"], + "802ac9d0": ["play_door_open_noise"], + "802aca6c": ["play_warp_door_open_noise"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["grindel_thwomp_act_4"], + "802ad10c": ["grindel_thwomp_act_2"], + "802ad1a4": ["grindel_thwomp_act_3"], + "802ad238": ["grindel_thwomp_act_1"], + "802ad2d0": ["grindel_thwomp_act_0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["tumbling_bridge_act_1"], + "802ad76c": ["tumbling_bridge_act_2"], + "802ad7f4": ["tumbling_bridge_act_3"], + "802ad828": ["tumbling_bridge_act_0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["elevator_starting_shake"], + "802ad8f0": ["elevator_act_0"], + "802ada4c": ["elevator_act_1"], + "802adb88": ["elevator_act_2"], + "802adce4": ["elevator_act_4"], + "802add70": ["elevator_act_3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["spawn_mist_from_global"], + "802ae360": ["bhv_ground_sand_init"], + "802ae394": ["spawn_smoke_with_velocity"], + "802ae45c": ["clear_particle_flags"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["spawn_wind_particles"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["spawn_and_init_wf_platforms"], + "802b039c": ["spawn_wf_platform_group"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["square_plat_set_yaw_until_timer"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["check_if_moving_over_floor"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["breakable_box_init"], + "802b17f4": ["hidden_breakable_box_actions"], + "802b19d8": ["hidden_unbreakable_box_actions"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["geo_move_mario_part_from_parent"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["heave_ho_act_1"], + "802b1e6c": ["heave_ho_act_2"], + "802b1ff4": ["heave_ho_act_3"], + "802b20a0": ["heave_ho_act_0"], + "802b2154": ["heave_ho_move"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["jumping_box_act_0"], + "802b27d8": ["jumping_box_act_1"], + "802b2824": ["jumping_box_free_update"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["spawn_sparkle_particles"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["arc_to_goal_pos"], + "802b3250": ["grand_star_zero_velocity"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["bullet_bill_act_0"], + "802b38b8": ["bullet_bill_act_1"], + "802b394c": ["bullet_bill_act_2"], + "802b3b08": ["bullet_bill_act_3"], + "802b3b24": ["bullet_bill_act_4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["bowser_tail_anchor_act_0"], + "802b3cdc": ["bowser_tail_anchor_act_1"], + "802b3d10": ["bowser_tail_anchor_act_2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["bowser_spawn_shockwave"], + "802b41fc": ["bowser_bounce"], + "802b4288": ["bowser_set_anim_look_up_and_walk"], + "802b4300": ["bowser_set_anim_slow_gait"], + "802b4368": ["bowser_set_anim_look_down"], + "802b43dc": ["bowser_initialize_action"], + "802b4478": ["bowser_act_text_wait"], + "802b44bc": ["bowser_act_intro_walk"], + "802b45f4": ["bowser_bitdw_act_controller"], + "802b473c": ["bowser_bitfs_act_controller"], + "802b48d4": ["bowser_general_bits_act_controller"], + "802b4a1c": ["bowser_set_act_jump"], + "802b4a3c": ["bowser_bits_act_controller"], + "802b4af4": ["bowser_reset_fallen_off_stage"], + "802b4bac": ["bowser_act_unused_slow_walk"], + "802b4be8": ["bowser_act_default"], + "802b4ca4": ["bowser_act_breath_fire"], + "802b4d14": ["bowser_act_walk_to_mario"], + "802b4f00": ["bowser_act_teleport"], + "802b5104": ["bowser_act_spit_fire_into_sky"], + "802b5218": ["bowser_act_hit_mine"], + "802b53f4": ["bowser_set_anim_in_air"], + "802b5444": ["bowser_land"], + "802b5554": ["bowser_short_second_hop"], + "802b55cc": ["bowser_act_jump"], + "802b5798": ["bowser_act_jump_towards_mario"], + "802b58bc": ["bowser_act_hit_edge"], + "802b59cc": ["bowser_act_spit_fire_onto_floor"], + "802b5aec": ["bowser_turn_on_timer"], + "802b5c00": ["bowser_act_turn_from_edge"], + "802b5c40": ["bowser_act_charge_mario"], + "802b5f6c": ["bowser_check_hit_mine"], + "802b5fec": ["bowser_act_thrown_dropped"], + "802b611c": ["bowser_set_goal_invisible"], + "802b6190": ["bowser_act_jump_onto_stage"], + "802b6568": ["bowser_act_dance"], + "802b65d0": ["bowser_spawn_grand_star_key"], + "802b6670": ["bowser_fly_back_dead"], + "802b6730": ["bowser_dead_bounce"], + "802b67d4": ["bowser_dead_wait_for_mario"], + "802b6878": ["bowser_dead_twirl_into_trophy"], + "802b6a10": ["bowser_dead_hide"], + "802b6a78": ["bowser_dead_not_bits_end"], + "802b6bac": ["bowser_dead_bits_end"], + "802b6cf0": ["bowser_act_dead"], + "802b6e40": ["bowser_tilt_platform"], + "802b6ee0": ["bowser_act_ride_tilting_platform"], + "802b711c": ["bowser_check_fallen_off_stage"], + "802b71e4": ["bowser_free_update"], + "802b72d4": ["bowser_held_update"], + "802b7418": ["bowser_thrown_dropped_update"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["geo_update_body_rot_from_parent"], + "802b7a20": ["bowser_open_eye_switch"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["geo_bits_bowser_coloring"], + "802b7e68": ["falling_bowser_plat_act_0"], + "802b7ef0": ["falling_bowser_plat_act_1"], + "802b8024": ["falling_bowser_plat_act_2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["bowser_flame_despawn"], + "802b8434": ["bowser_flame_should_despawn"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["bowser_flame_move"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_movement_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["vec3f_copy_2"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["checkerboard_plat_act_move_y"], + "802b9af8": ["checkerboard_plat_act_rotate"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["water_level_pillar_undrained"], + "802ba13c": ["water_level_pillar_drained"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["geo_scale_bowser_key"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_hat_ukiki_reset"], + "802ba868": ["is_hat_ukiki_and_mario_has_hat"], + "802ba8c4": ["geo_update_projectile_pos_from_parent_copy"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["hat_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["lll_octagonal_mesh_move"], + "802bbfd8": ["lll_octagonal_mesh_find_y_offset"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["fire_bar_spawn_flames"], + "802bc4f4": ["fire_bar_act_0"], + "802bc538": ["fire_bar_act_1"], + "802bc590": ["fire_bar_act_2"], + "802bc5fc": ["fire_bar_act_3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["hexagonal_ring_spawn_flames"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["sinking_rectangular_plat_actions"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["koopa_shell_spawn_water_drop"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["koopa_shell_spawn_sparkles"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["tox_box_shake_screen"], + "802bd91c": ["tox_box_move"], + "802bdb04": ["tox_box_act_4"], + "802bdb3c": ["tox_box_act_5"], + "802bdb74": ["tox_box_act_6"], + "802bdbac": ["tox_box_act_7"], + "802bdbe4": ["tox_box_act_1"], + "802bdc7c": ["tox_box_act_2"], + "802bdcc8": ["tox_box_act_3"], + "802bdd14": ["tox_box_act_0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["set_obj_anim_with_accel_and_sound"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["tuxies_mother_act_2"], + "802bef8c": ["tuxies_mother_act_1"], + "802bf1d8": ["tuxies_mother_act_0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["small_penguin_dive_with_mario"], + "802bf474": ["small_penguin_act_2"], + "802bf57c": ["small_penguin_act_1"], + "802bf648": ["small_penguin_act_3"], + "802bf6e4": ["small_penguin_act_4"], + "802bf760": ["small_penguin_act_0"], + "802bf90c": ["small_penguin_act_5"], + "802bfa14": ["small_penguin_free_actions"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["fish_act_spawn"], + "802bfeb8": ["fish_act_respawn"], + "802bff20": ["fish_act_init"], + "802bff3c": ["bhv_large_fish_group_loop"], + "802bff68": ["fish_regroup"], + "802c00b4": ["fish_group_act_rotation"], + "802c0348": ["fish_group_act_move"], + "802c06a8": ["fish_group_act_animate"], + "802c0768": ["bhv_fish_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["bub_spawner_act_0"], + "802c0b50": ["bub_spawner_act_1"], + "802c0ba4": ["bub_spawner_act_2"], + "802c0bc4": ["bub_spawner_act_3"], + "802c0be0": ["bhv_bub_spawner_loop"], + "802c0c0c": ["bub_move_vertically"], + "802c0cd4": ["bub_act_0"], + "802c0d44": ["bub_act_1"], + "802c0f90": ["bub_act_2"], + "802c1204": ["bhv_bub_loop"], + "802c12c0": ["bhv_rotating_exclamation_box_loop"], + "802c1308": ["exclamation_box_act_0"], + "802c13ec": ["exclamation_box_act_1"], + "802c14b0": ["exclamation_box_act_2"], + "802c15b8": ["exclamation_box_act_3"], + "802c17bc": ["exclamation_box_spawn_contents"], + "802c18d0": ["exclamation_box_act_4"], + "802c1988": ["exclamation_box_act_5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["bhv_pole_base_loop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["update_angle_from_move_flags"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["whomp_play_sfx_from_pound_animation"], + "802c6d6c": ["whomp_act_0"], + "802c6ec8": ["whomp_act_7"], + "802c6fb0": ["whomp_act_1"], + "802c710c": ["whomp_act_2"], + "802c7254": ["whomp_act_3"], + "802c72b4": ["whomp_act_4"], + "802c7380": ["whomp_act_5"], + "802c7428": ["king_whomp_on_ground"], + "802c75fc": ["whomp_on_ground"], + "802c76d4": ["whomp_act_6"], + "802c7858": ["whomp_act_8"], + "802c7998": ["whomp_act_9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_spawn_droplets"], + "802c7b14": ["bhv_water_droplet_loop"], + "802c7cac": ["bhv_idle_water_wave_loop"], + "802c7d40": ["bhv_water_droplet_splash_init"], + "802c7d90": ["bhv_bubble_splash_init"], + "802c7dfc": ["bhv_shallow_water_splash_init"], + "802c7e5c": ["bhv_wave_trail_shrink"], + "802c7f98": ["bhv_strong_wind_particle_loop"], + "802c81b4": ["cur_obj_spawn_strong_wind_particles"], + "802c834c": ["bhv_sl_snowman_wind_loop"], + "802c863c": ["bhv_sl_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["debug_print_obj_collision"], + "802c8fe4": ["detect_object_hitbox_overlap"], + "802c91ec": ["detect_object_hurtbox_overlap"], + "802c9388": ["clear_object_collision"], + "802c93f8": ["check_collision_in_list"], + "802c94ac": ["check_player_object_collision"], + "802c95b4": ["check_pushable_object_collision"], + "802c9630": ["check_destructive_object_collision"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["cur_obj_play_sound_1"], + "802ca1e0": ["cur_obj_play_sound_2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["stub_debug_1"], + "802ca380": ["stub_debug_2"], + "802ca390": ["stub_debug_3"], + "802ca3a0": ["stub_debug_4"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_debug_5"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["debug_enemy_unknown"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stop_other_paintings"], + "802d2a74": ["painting_mario_y"], + "802d2b08": ["painting_mario_z"], + "802d2b84": ["painting_ripple_y"], + "802d2c40": ["painting_nearest_4th"], + "802d2d80": ["painting_mario_x"], + "802d2dfc": ["painting_ripple_x"], + "802d2eb8": ["painting_state"], + "802d2ffc": ["wall_painting_proximity_idle"], + "802d319c": ["wall_painting_proximity_rippling"], + "802d327c": ["wall_painting_continuous_idle"], + "802d341c": ["wall_painting_continuous_rippling"], + "802d34fc": ["floor_painting_proximity_idle"], + "802d36ac": ["floor_painting_proximity_rippling"], + "802d379c": ["floor_painting_continuous_idle"], + "802d393c": ["floor_painting_continuous_rippling"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_state"], + "802d3cec": ["calculate_ripple_at_point"], + "802d3e6c": ["ripple_if_movable"], + "802d3ee4": ["painting_generate_mesh"], + "802d404c": ["painting_calculate_triangle_normals"], + "802d43f8": ["normalize_component"], + "802d44bc": ["painting_average_vertex_normals"], + "802d47d0": ["render_painting"], + "802d4edc": ["painting_model_view_transform"], + "802d50dc": ["painting_ripple_image"], + "802d5354": ["painting_ripple_env_mapped"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["move_ddd_painting"], + "802d58e4": ["set_painting_layer"], + "802d593c": ["display_painting"], + "802d59a8": ["wall_painting_update"], + "802d5aa0": ["floor_painting_update"], + "802d5b98": ["geo_painting_draw"], + "802d5d0c": ["geo_painting_update"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["coin_step"], + "802e5e6c": ["moving_coin_flicker"], + "802e5ea4": ["coin_collected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["blue_coin_sliding_away_from_mario"], + "802e63ec": ["blue_coin_sliding_slow_down"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["bobomb_spawn_coin"], + "802e6af8": ["bobomb_act_explode"], + "802e6bd4": ["bobomb_check_interactions"], + "802e6cf0": ["bobomb_act_patrol"], + "802e6dc8": ["bobomb_act_chase_mario"], + "802e6e84": ["bobomb_act_launched"], + "802e6ed8": ["generic_bobomb_free_loop"], + "802e7020": ["stationary_bobomb_free_loop"], + "802e7134": ["bobomb_free_loop"], + "802e7180": ["bobomb_held_loop"], + "802e7220": ["bobomb_dropped_loop"], + "802e7280": ["bobomb_thrown_loop"], + "802e7324": ["curr_obj_random_blink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["bobomb_buddy_act_idle"], + "802e7814": ["bobomb_buddy_cannon_dialog"], + "802e79dc": ["bobomb_buddy_act_talk"], + "802e7b00": ["bobomb_buddy_act_turn_to_talk"], + "802e7bb0": ["bobomb_buddy_actions"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["cannon_door_act_opening"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["whirlpool_set_hitbox"], + "802e7fec": ["whirpool_orient_graph"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["butterfly_step"], + "802e9278": ["butterfly_calculate_angle"], + "802e9470": ["butterfly_act_rest"], + "802e94e4": ["butterfly_act_follow_mario"], + "802e9548": ["butterfly_act_return_home"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["hoot_find_next_floor"], + "802e98c0": ["hoot_floor_bounce"], + "802e9a4c": ["hoot_free_step"], + "802e9cf4": ["hoot_player_set_yaw"], + "802e9d98": ["hoot_carry_step"], + "802e9f60": ["hoot_surface_collision"], + "802ea144": ["hoot_act_ascent"], + "802ea258": ["hoot_action_loop"], + "802ea3f0": ["hoot_turn_to_home"], + "802ea4ec": ["hoot_awake_loop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["bully_check_mario_collision"], + "802eb288": ["bully_act_chase_mario"], + "802eb3f0": ["bully_act_knockback"], + "802eb510": ["bully_act_back_up"], + "802eb5c4": ["bully_backup_check"], + "802eb630": ["bully_play_stomping_sound"], + "802eb744": ["bully_step"], + "802eb7e0": ["bully_spawn_coin"], + "802eb8b0": ["bully_act_level_death"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["big_bully_spawn_minion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["big_bully_spawn_star"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["water_ring_calc_mario_dist"], + "802ec030": ["water_ring_init"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["water_ring_check_collection"], + "802ec3d0": ["water_ring_set_scale"], + "802ec4e0": ["water_ring_act_collected"], + "802ec59c": ["water_ring_act_not_collected"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["spawn_manta_ray_ring_manager"], + "802ec818": ["water_ring_spawner_act_inactive"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["manta_water_ring_act_not_collected"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["celeb_star_act_spin_around_mario"], + "802ed28c": ["celeb_star_act_face_camera"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["moneybag_check_mario_collision"], + "802ee268": ["moneybag_jump"], + "802ee46c": ["moneybag_act_move_around"], + "802ee598": ["moneybag_act_return_home"], + "802ee728": ["moneybag_act_disappear"], + "802ee778": ["moneybag_act_death"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["bowling_ball_set_hitbox"], + "802eea7c": ["bowling_ball_set_waypoints"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["set_rolling_sphere_hitbox"], + "802f0bd4": ["adjust_rolling_face_pitch"], + "802f0c94": ["snowmans_bottom_act_1"], + "802f0df0": ["snowmans_bottom_act_2"], + "802f0fa8": ["snowmans_bottom_act_3"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["boulder_act_1"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["cap_set_hitbox"], + "802f19c8": ["cap_despawn"], + "802f1a10": ["cap_check_quicksand"], + "802f1bb8": ["cap_sink_quicksand"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["cap_scale_vertically"], + "802f1e5c": ["wing_vanish_cap_act_0"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["metal_cap_act_0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["normal_cap_set_save_flags"], + "802f2284": ["normal_cap_act_0"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["spawn_star"], + "802f2b88": ["spawn_default_star"], + "802f2bd4": ["spawn_red_coin_cutscene_star"], + "802f2c24": ["spawn_no_exit_star"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["rolling_log_roll_log"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["volcano_act_1"], + "802f39b4": ["volcano_act_3"], + "802f3a30": ["bhv_volcano_trap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["one_up_loop_in_air"], + "802f3ea8": ["pole_1up_move_towards_mario"], + "802f401c": ["one_up_move_away_from_mario"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["sliding_1up_move"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["controllable_platform_act_1"], + "802f4ce0": ["controllable_platform_act_2"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["controllable_platform_hit_wall"], + "802f5068": ["controllable_platform_check_walls"], + "802f52c0": ["controllable_platform_shake_on_wall_hit"], + "802f547c": ["controllable_platform_tilt_from_mario"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["small_breakable_box_spawn_dust"], + "802f5e44": ["small_breakable_box_act_move"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["floating_platform_find_home_y"], + "802f665c": ["floating_platform_act_0"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["manta_ray_move"], + "802f7068": ["manta_ray_act_spawn_ring"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["spawn_treasure_chest"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["bhv_yoshi_loop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["mr_blizzard_spawn_white_particles"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["geo_snufit_move_mask"], + "8030d9ac": ["geo_snufit_scale_body"], + "8030da14": ["snufit_act_idle"], + "8030db38": ["snufit_act_shoot"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_value_less_equal"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L8031C200"], + "8031c23c": ["L8031C23C"], + "8031c298": ["L8031C298"], + "8031c2dc": ["L8031C2DC"], + "8031c328": ["L8031C328"], + "8031c36c": ["L8031C36C"], + "8031c3bc": ["L8031C3BC"], + "8031c3e8": ["L8031C3E8"], + "8031c454": ["L8031C454"], + "8031c4a4": ["L8031C4A4"], + "8031c5c8": ["L8031C5C8"], + "8031c698": ["L8031C698"], + "8031c6a0": ["L8031C6A0"], + "8031cbe0": ["L8031CBE0"], + "8031cbec": ["L8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e578": ["sequence_player_fade_out_internal"], + "8031e5c0": ["func_8031D690"], + "8031e60c": ["func_8031D6E4"], + "8031e6a4": ["func_8031D7B0"], + "8031e710": ["func_8031D838"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031eb30": ["process_sound_request"], + "8031edec": ["process_all_sound_requests"], + "8031ee70": ["func_8031DFE8"], + "8031ef6c": ["func_8031E0E4"], + "8031eff4": ["func_8031E16C"], + "8031f810": ["get_sound_pan"], + "8031f96c": ["get_sound_dynamics"], + "8031fb20": ["get_sound_freq_scale"], + "8031fbe8": ["get_sound_reverb"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "803217a8": ["disable_all_sequence_players"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["D_8032C9E0"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["sWarpBhvSpawnTable"], + "8032de4c": ["sSpawnTypeFromWarpBhv"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["gOpenableGrills"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["sWaterSplashDropletParams"], + "80330d30": ["gShallowWaterSplashDropletParams"], + "80330d54": ["sWaterDropletFishParams"], + "80330d78": ["gShallowWaterWaveDropletParams"], + "80330d9c": ["sStrongWindParticleHitbox"], + "80330dac": ["sSLWalkingPenguinErraticSteps"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["sHmcPaintings"], + "80331308": ["sInsideCastlePaintings"], + "80331344": ["sTtmPaintings"], + "8033134c": ["sPaintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["D_80333EF0"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["_osContInitialized"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["D_80334894"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gShouldNotPlayCastleMusic"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["sFloorAlignMatrix"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gCurBhvCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["gPaintingMesh"], + "80361314": ["gPaintingTriNorms"], + "80361318": ["gRipplingPainting"], + "8036131c": ["gDddPaintingStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["_osContCmdBuf"], + "8036708c": ["_osContPifCtrl"], + "80367090": ["_osLastSentSiCmd"], + "80367091": ["_osContNumControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["__osViIntrCount"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": [".", "_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["random_u16"], + "80383cb4": ["random_float"], + "80383d1c": ["random_sign"], + "80383d68": ["obj_update_gfx_pos_and_angle"], + "80385bf0": ["stub_behavior_script_2"], + "80385c00": ["cur_obj_update"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["small_water_splash_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["idle_water_wave_geo"], + "17000168": ["wave_trail_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleParticleSpawner"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvPlungeBubble"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvVertStarParticleSpawner"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvHorStarParticleSpawner"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvTriangleParticleSpawner"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvBreathParticleSpawner"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvMistCircParticleSpawner"], + "13000e3c": ["bhvDirtParticleSpawner"], + "13000e58": ["bhvSnowParticleSpawner"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFireParticleSpawner"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvLeafParticleSpawner"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFish"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMistParticleSpawner"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSparkleParticleSpawner"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDroplet"], + "13002c7c": ["bhvWaterDropletSplash"], + "13002cb0": ["bhvBubbleSplash"], + "13002ce0": ["bhvIdleWaterWave"], + "13002d28": ["bhvObjectWaterSplash"], + "13002d50": ["bhvShallowWaterWave"], + "13002d7c": ["bhvShallowWaterSplash"], + "13002db0": ["bhvObjectWaveTrail"], + "13002dc0": ["bhvWaveTrail"], + "13002e04": ["bhvTinyStrongWindParticle"], + "13002e20": ["bhvStrongWindParticle"], + "13002e3c": ["bhvSLSnowmanWind"], + "13002e58": ["bhvSLWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvInstantActiveWarp"], + "13002f64": ["bhvAirborneWarp"], + "13002f68": ["bhvHardAirKnockBackWarp"], + "13002f6c": ["bhvSpinAirborneCircleWarp"], + "13002f70": ["bhvDeathWarp"], + "13002f74": ["bhvSpinAirborneWarp"], + "13002f78": ["bhvFlyingWarp"], + "13002f7c": ["bhvPaintingStarCollectWarp"], + "13002f80": ["bhvPaintingDeathWarp"], + "13002f84": ["bhvAirborneDeathWarp"], + "13002f88": ["bhvAirborneStarCollectWarp"], + "13002f8c": ["bhvLaunchStarCollectWarp"], + "13002f90": ["bhvLaunchDeathWarp"], + "13002f94": ["bhvSwimmingWarp"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 12": { - "80000000": "EXCEPTION_TLB_MISS", - "a4000000": "SP_DMEM", - "a40004c0": "SP_DMEM_UNK0", - "a4000774": "SP_DMEM_UNK1", - "a4001000": "SP_IMEM", - "a4040010": "SP_STATUS_REG", - "a4080000": "SP_PC", - "a4300000": "MI_MODE_REG", - "a4300004": "MI_VERSION_REG", - "a4300008": "MI_INTR_REG", - "a430000c": "MI_INTR_MASK_REG", - "a4400010": "VI_CURRENT_REG", - "a450000c": "AI_STATUS_REG", - "a4600000": "PI_DRAM_ADDR_REG", - "a4600004": "PI_CART_ADDR_REG", - "a460000c": "PI_WR_LEN_REG", - "a4600010": "PI_STATUS_REG", - "a4700000": "RI_MODE_REG", - "a4700010": "RI_REFRESH_REG", - "a4800018": "SI_STATUS_REG", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "802f69cc": "func_sh_802F69CC", - "80302ef0": "osMotorStop", - "80303090": "osMotorStart", - "803033ac": "osMotorInit", - "803016a0": "func_sh_803016A0", - "803016d0": "func_sh_803016D0", - "80301820": "func_sh_80301820", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04000040": "ipl3_entry", - "04000b70": "ipl3_font", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "entry_point", - "80246050": "handle_debug_key_sequences", - "80246170": "unknown_main_func", - "802461cc": "stub_main_1", - "802461dc": "stub_main_2", - "802461ec": "stub_main_3", - "802461fc": "setup_mesg_queues", - "802462e0": "alloc_pool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "send_sp_task_message", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "main_func", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "draw_reset_bars", - "80247f08": "rendering_init", - "80247fdc": "config_gfx_pool", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "reset_volume", - "80248c58": "lower_background_noise", - "80248ce8": "raise_background_noise", - "80248d78": "disable_background_sound", - "80248dc0": "enable_background_sound", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "fadeout_music", - "8024927c": "fadeout_level_music", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "80249494": "play_menu_sounds_extra", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_pause", - "80249764": "set_play_mode", - "8024978c": "warp_special", - "802497b8": "fade_into_special_warp", - "8024982c": "stub_level_update_1", - "8024983c": "load_level_init_text", - "8024995c": "init_door_warp", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "warp_area", - "8024a18c": "warp_level", - "8024a1d8": "warp_credits", - "8024a374": "check_instant_warp", - "8024a584": "music_changed_through_warp", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_obj_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_normal_cap_on_head", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "should_push_or_pull_door", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_strong_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "mario_can_talk", - "8024ff04": "check_read_sign", - "80250098": "check_npc_talk", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "stub_mario_step_1", - "802550b0": "stub_mario_step_2", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "bhv_end_peach_loop", - "802570dc": "bhv_end_toad_loop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025bc80": "generate_yellow_sparkles", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "climb_up_ledge", - "8025f560": "update_ledge_climb_camera", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "check_common_idle_cancels", - "80260aac": "check_common_hold_idle_cancels", - "80260cb4": "act_idle", - "80260f94": "play_anim_sound", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "stopping_step", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "act_hold_butt_slide_stop", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "act_shockwave_bounce", - "80262bc4": "landing_step", - "80262c34": "check_common_landing_cancels", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "act_hold_jump_land_stop", - "802631f0": "act_hold_freefall_land_stop", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "check_common_stationary_cancels", - "80263898": "mario_execute_stationary_action", - "80263e60": "tilt_body_running", - "80263ee4": "play_step_sound", - "80264024": "align_with_floor", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "anim_and_audio_for_walk", - "80265b1c": "anim_and_audio_for_hold_walk", - "80265d90": "anim_and_audio_for_heavy_walk", - "80265df8": "push_or_sidle_wall", - "80266038": "tilt_body_walking", - "802661cc": "tilt_body_ground_shell", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "tilt_body_butt_slide", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "play_knockback_sound", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "check_wall_kick", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_envfx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhv_toad_message_loop", - "80276910": "bhv_toad_message_init", - "80276bb8": "bhv_unlock_door_star_init", - "80276ccc": "bhv_unlock_door_star_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "load_segment_decompress_heap", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "load_patchable_table", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "override_viewport_and_clip", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "area_get_warp_node_from_params", - "8027aa74": "load_obj_warp_nodes", - "8027ab04": "clear_areas", - "8027ad74": "clear_area_graph_nodes", - "8027ae44": "load_area", - "8027af48": "unload_area", - "8027afbc": "load_mario_area", - "8027b038": "unload_mario_area", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "stub_camera_2", - "80287dd4": "stub_camera_3", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "stub_camera_4", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "spawn_child_obj_relative", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_obj_list_processor_1", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "geo_update_projectile_pos_from_parent", - "8029d924": "geo_update_layer_transparency", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "obj_update_pos_from_parent_transformation", - "8029dda8": "obj_apply_scale_to_matrix", - "8029de80": "create_transformation_from_matrices", - "8029e1b0": "obj_set_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "cur_obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "cur_obj_rotate_yaw_toward", - "8029e694": "obj_angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "obj_set_parent_relative_pos", - "8029e914": "obj_set_pos", - "8029e96c": "obj_set_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "spawn_obj_with_transform_flags", - "8029eb04": "spawn_water_droplet", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "cur_obj_move_using_vel", - "8029f0c8": "obj_copy_graph_y_offset", - "8029f0e0": "obj_copy_pos_and_angle", - "8029f120": "obj_copy_pos", - "8029f148": "obj_copy_angle", - "8029f188": "obj_set_gfx_pos_from_pos", - "8029f1b0": "obj_init_animation", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "obj_apply_scale_to_transform", - "8029f3a8": "obj_copy_scale", - "8029f3d0": "obj_scale_xyz", - "8029f404": "obj_scale", - "8029f430": "cur_obj_scale", - "8029f464": "cur_obj_init_animation", - "8029f4b4": "cur_obj_init_animation_with_sound", - "8029f514": "cur_obj_init_animation_with_accel_and_sound", - "8029f59c": "obj_init_animation_with_sound", - "8029f600": "cur_obj_enable_rendering_and_become_tangible", - "8029f620": "cur_obj_enable_rendering", - "8029f644": "cur_obj_disable_rendering_and_become_intangible", - "8029f66c": "cur_obj_disable_rendering", - "8029f694": "cur_obj_unhide", - "8029f6bc": "cur_obj_hide", - "8029f6e0": "cur_obj_set_pos_relative", - "8029f7d8": "cur_obj_set_pos_relative_to_parent", - "8029f820": "cur_obj_enable_rendering_2", - "8029f848": "cur_obj_unused_init_on_floor", - "8029f8ec": "obj_set_face_angle_to_move_angle", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "cur_obj_nearest_object_with_behavior", - "8029f998": "cur_obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "cur_obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "cur_obj_find_nearby_held_actor", - "8029fdb4": "cur_obj_change_action", - "8029fe00": "cur_obj_set_vel_from_mario_vel", - "8029fe6c": "cur_obj_reverse_animation", - "8029fea4": "cur_obj_extend_animation_if_at_end", - "8029ff04": "cur_obj_check_if_near_animation_end", - "8029ffa4": "cur_obj_check_if_at_animation_end", - "802a0008": "cur_obj_check_anim_frame", - "802a0050": "cur_obj_check_anim_frame_in_range", - "802a00ac": "cur_obj_check_frame_prior_current_frame", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "cur_obj_set_y_vel_and_animation", - "802a01d8": "cur_obj_unrender_and_reset_state", - "802a0380": "cur_obj_get_thrown_or_placed", - "802a0474": "cur_obj_get_dropped", - "802a04c0": "cur_obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "cur_obj_clear_interact_status_flag", - "802a0568": "obj_mark_for_deletion", - "802a057c": "cur_obj_disable", - "802a05b4": "cur_obj_become_intangible", - "802a05d4": "cur_obj_become_tangible", - "802a05f0": "obj_become_tangible", - "802a0604": "cur_obj_update_floor_height", - "802a064c": "cur_obj_update_floor_height_and_get_floor", - "802a079c": "cur_obj_apply_drag_xz", - "802a0e68": "cur_obj_move_y", - "802a113c": "cur_obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "cur_obj_move_xz_using_fvel_and_yaw", - "802a12a4": "cur_obj_move_y_with_terminal_vel", - "802a1308": "cur_obj_compute_vel_xz", - "802a1370": "increment_velocity_toward_range", - "802a1424": "obj_check_if_collided_with_object", - "802a148c": "cur_obj_set_behavior", - "802a14c4": "obj_set_behavior", - "802a14fc": "cur_obj_has_behavior", - "802a1554": "obj_has_behavior", - "802a15ac": "cur_obj_lateral_dist_from_mario_to_home", - "802a1634": "cur_obj_lateral_dist_to_home", - "802a16ac": "cur_obj_outside_home_square", - "802a1774": "cur_obj_outside_home_rectangle", - "802a184c": "cur_obj_set_pos_to_home", - "802a188c": "cur_obj_set_pos_to_home_and_stop", - "802a18dc": "cur_obj_shake_y", - "802a1930": "cur_obj_start_cam_event", - "802a1960": "set_mario_interact_hoot_if_in_range", - "802a19ac": "obj_set_billboard", - "802a19c8": "cur_obj_set_hitbox_radius_and_height", - "802a19f0": "cur_obj_set_hurtbox_radius_and_height", - "802a1b34": "obj_spawn_loot_blue_coins", - "802a1b8c": "obj_spawn_loot_yellow_coins", - "802a1bdc": "cur_obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "cur_obj_abs_y_dist_to_home", - "802a1cc4": "cur_obj_advance_looping_anim", - "802a1f3c": "cur_obj_resolve_wall_collisions", - "802a2320": "cur_obj_update_floor_and_walls", - "802a2348": "cur_obj_move_standard", - "802a25b4": "cur_obj_move_using_vel_and_gravity", - "802a2644": "cur_obj_move_using_fvel_and_gravity", - "802a2674": "obj_set_pos_relative", - "802a2748": "cur_obj_angle_to_home", - "802a27b0": "obj_set_gfx_pos_at_obj_pos", - "802a2804": "obj_translate_local", - "802a2930": "obj_build_transform_from_pos_and_angle", - "802a2a18": "obj_set_throw_matrix_from_transform", - "802a2a84": "obj_build_transform_relative_to_parent", - "802a2b28": "obj_create_transform_from_self", - "802a2b6c": "cur_obj_rotate_move_angle_using_vel", - "802a2bc4": "cur_obj_rotate_face_angle_using_vel", - "802a2c1c": "cur_obj_set_face_angle_to_move_angle", - "802a2c5c": "cur_obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "obj_scale_random", - "802a2fc0": "obj_translate_xyz_random", - "802a308c": "obj_translate_xz_random", - "802a31e0": "cur_obj_set_pos_via_transform", - "802a3268": "cur_obj_reflect_move_angle_off_wall", - "802a32ac": "cur_obj_spawn_particles", - "802a34a4": "obj_set_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "cur_obj_wait_then_blink", - "802a3754": "cur_obj_is_mario_ground_pounding_platform", - "802a37ac": "spawn_mist_particles", - "802a37dc": "spawn_mist_particles_with_sound", - "802a3818": "cur_obj_push_mario_away", - "802a390c": "cur_obj_push_mario_away_from_cylinder", - "802a399c": "bhv_dust_smoke_loop", - "802a3a4c": "cur_obj_set_direction_table", - "802a3a88": "cur_obj_progress_direction_table", - "802a3b28": "stub_obj_helpers_3", - "802a3b40": "cur_obj_scale_over_time", - "802a3c18": "cur_obj_set_pos_to_home_with_debug", - "802a3cec": "stub_obj_helpers_4", - "802a3cfc": "cur_obj_is_mario_on_platform", - "802a3d40": "cur_obj_shake_y_until", - "802a3dd4": "cur_obj_move_up_and_down", - "802a3e30": "cur_obj_call_action_function", - "802a3ef8": "spawn_base_star_with_no_lvl_exit", - "802a3f24": "bit_shift_left", - "802a3f48": "cur_obj_mario_far_away", - "802a404c": "is_mario_moving_fast_or_in_air", - "802a40b8": "is_item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "cur_obj_enable_rendering_if_mario_in_room", - "802a4360": "cur_obj_set_hitbox_and_die_if_attacked", - "802a4440": "obj_explode_and_spawn_coins", - "802a44f4": "obj_set_collision_data", - "802a452c": "cur_obj_if_hit_wall_bounce_away", - "802a4564": "cur_obj_hide_if_mario_far_away_y", - "802a45e4": "geo_offset_klepto_held_object", - "802a462c": "geo_offset_klepto_debug", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "cur_obj_can_mario_activate_textbox", - "802a48bc": "cur_obj_can_mario_activate_textbox_2", - "802a4960": "cur_obj_update_dialog", - "802a4be4": "cur_obj_update_dialog_with_cutscene", - "802a4f04": "cur_obj_has_model", - "802a4f58": "cur_obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "cur_obj_shake_screen", - "802a513c": "obj_attack_collided_from_other_object", - "802a51ac": "cur_obj_was_attacked_or_ground_pounded", - "802a5228": "obj_copy_behavior_params", - "802a5248": "cur_obj_init_animation_and_anim_frame", - "802a5288": "cur_obj_init_animation_and_check_if_near_end", - "802a52c4": "cur_obj_init_animation_and_extend_if_at_end", - "802a52f8": "cur_obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "cur_obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "cur_obj_check_interacted", - "802a5524": "cur_obj_spawn_loot_blue_coin", - "802a5588": "cur_obj_spawn_star_at_y_offset", - "802a5620": "star_door_update_pos", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "mr_i_piranha_particle_act_0", - "802a5a44": "mr_i_piranha_particle_act_1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "spawn_mr_i_particle", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "mr_i_act_3", - "802a6518": "mr_i_act_2", - "802a68a0": "mr_i_act_1", - "802a6ad8": "mr_i_act_0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "cap_switch_act_0", - "802a7020": "cap_switch_act_1", - "802a708c": "cap_switch_act_2", - "802a7160": "cap_switch_act_3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "geo_update_held_mario_pos", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "king_bobomb_act_0", - "802a7384": "mario_is_far_below_object", - "802a73d8": "king_bobomb_act_2", - "802a7598": "king_bobomb_act_3", - "802a7804": "king_bobomb_act_1", - "802a78d8": "king_bobomb_act_6", - "802a7a60": "king_bobomb_act_7", - "802a7b1c": "king_bobomb_act_8", - "802a7b5c": "king_bobomb_act_4", - "802a7d14": "king_bobomb_act_5", - "802a7fbc": "king_bobomb_move", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "scale_bubble_random", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "scale_bubble_sin", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "opened_cannon_act_0", - "802a8f40": "opened_cannon_act_4", - "802a9114": "opened_cannon_act_6", - "802a92fc": "opened_cannon_act_5", - "802a93f8": "opened_cannon_act_1", - "802a9440": "opened_cannon_act_2", - "802a9460": "opened_cannon_act_3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "common_anchor_mario_behavior", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "unknown_chuckya_function", - "802a98c4": "approach_forward_vel", - "802a9994": "chuckya_act_0", - "802a9d08": "chuckya_act_1", - "802a9f54": "chuckya_act_3", - "802a9fc8": "chuckya_act_2", - "802aa02c": "chuckya_move", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "check_mario_attacking", - "802aa3c8": "init_kickable_board_rock", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "set_koopa_shell_underwater_hitbox", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "bhv_fading_warp_loop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "spawn_mist_particles_variable", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "set_sparkle_spawn_star_hitbox", - "802ab060": "set_home_to_mario", - "802ab158": "set_y_home_to_pos", - "802ab18c": "slow_star_rotation", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "spawn_coin_in_formation", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "coin_inside_boo_act_1", - "802ac15c": "coin_inside_boo_act_0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "door_animation_and_reset", - "802ac958": "set_door_camera_event", - "802ac9d0": "play_door_open_noise", - "802aca6c": "play_warp_door_open_noise", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "grindel_thwomp_act_4", - "802ad10c": "grindel_thwomp_act_2", - "802ad1a4": "grindel_thwomp_act_3", - "802ad238": "grindel_thwomp_act_1", - "802ad2d0": "grindel_thwomp_act_0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "tumbling_bridge_act_1", - "802ad76c": "tumbling_bridge_act_2", - "802ad7f4": "tumbling_bridge_act_3", - "802ad828": "tumbling_bridge_act_0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "elevator_starting_shake", - "802ad8f0": "elevator_act_0", - "802ada4c": "elevator_act_1", - "802adb88": "elevator_act_2", - "802adce4": "elevator_act_4", - "802add70": "elevator_act_3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "spawn_mist_from_global", - "802ae360": "bhv_ground_sand_init", - "802ae394": "spawn_smoke_with_velocity", - "802ae45c": "clear_particle_flags", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "spawn_wind_particles", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "spawn_and_init_wf_platforms", - "802b039c": "spawn_wf_platform_group", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "square_plat_set_yaw_until_timer", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "check_if_moving_over_floor", - "802b15e8": "bhv_pushable_loop", - "802b1714": "breakable_box_init", - "802b17f4": "hidden_breakable_box_actions", - "802b19d8": "hidden_unbreakable_box_actions", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "geo_move_mario_part_from_parent", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "heave_ho_act_1", - "802b1e6c": "heave_ho_act_2", - "802b1ff4": "heave_ho_act_3", - "802b20a0": "heave_ho_act_0", - "802b2154": "heave_ho_move", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "jumping_box_act_0", - "802b27d8": "jumping_box_act_1", - "802b2824": "jumping_box_free_update", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "spawn_sparkle_particles", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "arc_to_goal_pos", - "802b3250": "grand_star_zero_velocity", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "bullet_bill_act_0", - "802b38b8": "bullet_bill_act_1", - "802b394c": "bullet_bill_act_2", - "802b3b08": "bullet_bill_act_3", - "802b3b24": "bullet_bill_act_4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "bowser_tail_anchor_act_0", - "802b3cdc": "bowser_tail_anchor_act_1", - "802b3d10": "bowser_tail_anchor_act_2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "bowser_spawn_shockwave", - "802b41fc": "bowser_bounce", - "802b4288": "bowser_set_anim_look_up_and_walk", - "802b4300": "bowser_set_anim_slow_gait", - "802b4368": "bowser_set_anim_look_down", - "802b43dc": "bowser_initialize_action", - "802b4478": "bowser_act_text_wait", - "802b44bc": "bowser_act_intro_walk", - "802b45f4": "bowser_bitdw_act_controller", - "802b473c": "bowser_bitfs_act_controller", - "802b48d4": "bowser_general_bits_act_controller", - "802b4a1c": "bowser_set_act_jump", - "802b4a3c": "bowser_bits_act_controller", - "802b4af4": "bowser_reset_fallen_off_stage", - "802b4bac": "bowser_act_unused_slow_walk", - "802b4be8": "bowser_act_default", - "802b4ca4": "bowser_act_breath_fire", - "802b4d14": "bowser_act_walk_to_mario", - "802b4f00": "bowser_act_teleport", - "802b5104": "bowser_act_spit_fire_into_sky", - "802b5218": "bowser_act_hit_mine", - "802b53f4": "bowser_set_anim_in_air", - "802b5444": "bowser_land", - "802b5554": "bowser_short_second_hop", - "802b55cc": "bowser_act_jump", - "802b5798": "bowser_act_jump_towards_mario", - "802b58bc": "bowser_act_hit_edge", - "802b59cc": "bowser_act_spit_fire_onto_floor", - "802b5aec": "bowser_turn_on_timer", - "802b5c00": "bowser_act_turn_from_edge", - "802b5c40": "bowser_act_charge_mario", - "802b5f6c": "bowser_check_hit_mine", - "802b5fec": "bowser_act_thrown_dropped", - "802b611c": "bowser_set_goal_invisible", - "802b6190": "bowser_act_jump_onto_stage", - "802b6568": "bowser_act_dance", - "802b65d0": "bowser_spawn_grand_star_key", - "802b6670": "bowser_fly_back_dead", - "802b6730": "bowser_dead_bounce", - "802b67d4": "bowser_dead_wait_for_mario", - "802b6878": "bowser_dead_twirl_into_trophy", - "802b6a10": "bowser_dead_hide", - "802b6a78": "bowser_dead_not_bits_end", - "802b6bac": "bowser_dead_bits_end", - "802b6cf0": "bowser_act_dead", - "802b6e40": "bowser_tilt_platform", - "802b6ee0": "bowser_act_ride_tilting_platform", - "802b711c": "bowser_check_fallen_off_stage", - "802b71e4": "bowser_free_update", - "802b72d4": "bowser_held_update", - "802b7418": "bowser_thrown_dropped_update", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "geo_update_body_rot_from_parent", - "802b7a20": "bowser_open_eye_switch", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "geo_bits_bowser_coloring", - "802b7e68": "falling_bowser_plat_act_0", - "802b7ef0": "falling_bowser_plat_act_1", - "802b8024": "falling_bowser_plat_act_2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "bowser_flame_despawn", - "802b8434": "bowser_flame_should_despawn", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "bowser_flame_move", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_movement_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "vec3f_copy_2", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "checkerboard_plat_act_move_y", - "802b9af8": "checkerboard_plat_act_rotate", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "water_level_pillar_undrained", - "802ba13c": "water_level_pillar_drained", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "geo_scale_bowser_key", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_cap_ukiki_reset", - "802ba868": "is_cap_ukiki_and_mario_has_normal_cap_on_head", - "802ba8c4": "geo_update_projectile_pos_from_parent_copy", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "cap_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "lll_octagonal_mesh_move", - "802bbfd8": "lll_octagonal_mesh_find_y_offset", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "fire_bar_spawn_flames", - "802bc4f4": "fire_bar_act_0", - "802bc538": "fire_bar_act_1", - "802bc590": "fire_bar_act_2", - "802bc5fc": "fire_bar_act_3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "hexagonal_ring_spawn_flames", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "sinking_rectangular_plat_actions", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "koopa_shell_spawn_water_drop", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "koopa_shell_spawn_sparkles", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "tox_box_shake_screen", - "802bd91c": "tox_box_move", - "802bdb04": "tox_box_act_4", - "802bdb3c": "tox_box_act_5", - "802bdb74": "tox_box_act_6", - "802bdbac": "tox_box_act_7", - "802bdbe4": "tox_box_act_1", - "802bdc7c": "tox_box_act_2", - "802bdcc8": "tox_box_act_3", - "802bdd14": "tox_box_act_0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "set_obj_anim_with_accel_and_sound", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "tuxies_mother_act_2", - "802bef8c": "tuxies_mother_act_1", - "802bf1d8": "tuxies_mother_act_0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "small_penguin_dive_with_mario", - "802bf474": "small_penguin_act_2", - "802bf57c": "small_penguin_act_1", - "802bf648": "small_penguin_act_3", - "802bf6e4": "small_penguin_act_4", - "802bf760": "small_penguin_act_0", - "802bf90c": "small_penguin_act_5", - "802bfa14": "small_penguin_free_actions", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bfcd8": "fish_act_spawn", - "802bfeb8": "fish_act_respawn", - "802bff20": "fish_act_init", - "802bff3c": "bhv_large_fish_group_loop", - "802bff68": "fish_regroup", - "802c00b4": "fish_group_act_rotation", - "802c0348": "fish_group_act_move", - "802c06a8": "fish_group_act_animate", - "802c0768": "bhv_fish_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "bub_spawner_act_0", - "802c0b50": "bub_spawner_act_1", - "802c0ba4": "bub_spawner_act_2", - "802c0bc4": "bub_spawner_act_3", - "802c0be0": "bhv_bub_spawner_loop", - "802c0c0c": "bub_move_vertically", - "802c0cd4": "bub_act_0", - "802c0d44": "bub_act_1", - "802c0f90": "bub_act_2", - "802c1204": "bhv_bub_loop", - "802c12c0": "bhv_rotating_exclamation_box_loop", - "802c1308": "exclamation_box_act_0", - "802c13ec": "exclamation_box_act_1", - "802c14b0": "exclamation_box_act_2", - "802c15b8": "exclamation_box_act_3", - "802c17bc": "exclamation_box_spawn_contents", - "802c18d0": "exclamation_box_act_4", - "802c1988": "exclamation_box_act_5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "bhv_pole_base_loop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "update_angle_from_move_flags", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "whomp_play_sfx_from_pound_animation", - "802c6d6c": "whomp_act_0", - "802c6ec8": "whomp_act_7", - "802c6fb0": "whomp_act_1", - "802c710c": "whomp_act_2", - "802c7254": "whomp_act_3", - "802c72b4": "whomp_act_4", - "802c7380": "whomp_act_5", - "802c7428": "king_whomp_on_ground", - "802c75fc": "whomp_on_ground", - "802c76d4": "whomp_act_6", - "802c7858": "whomp_act_8", - "802c7998": "whomp_act_9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_spawn_droplets", - "802c7b14": "bhv_water_droplet_loop", - "802c7cac": "bhv_idle_water_wave_loop", - "802c7d40": "bhv_water_droplet_splash_init", - "802c7d90": "bhv_bubble_splash_init", - "802c7dfc": "bhv_shallow_water_splash_init", - "802c7e5c": "bhv_wave_trail_shrink", - "802c7f98": "bhv_strong_wind_particle_loop", - "802c81b4": "cur_obj_spawn_strong_wind_particles", - "802c834c": "bhv_sl_snowman_wind_loop", - "802c863c": "bhv_sl_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "debug_print_obj_collision", - "802c8fe4": "detect_object_hitbox_overlap", - "802c91ec": "detect_object_hurtbox_overlap", - "802c9388": "clear_object_collision", - "802c93f8": "check_collision_in_list", - "802c94ac": "check_player_object_collision", - "802c95b4": "check_pushable_object_collision", - "802c9630": "check_destructive_object_collision", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "cur_obj_play_sound_1", - "802ca1e0": "cur_obj_play_sound_2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "stub_debug_1", - "802ca380": "stub_debug_2", - "802ca390": "stub_debug_3", - "802ca3a0": "stub_debug_4", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_debug_5", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "debug_enemy_unknown", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stop_other_paintings", - "802d2a74": "painting_mario_y", - "802d2b08": "painting_mario_z", - "802d2b84": "painting_ripple_y", - "802d2c40": "painting_nearest_4th", - "802d2d80": "painting_mario_x", - "802d2dfc": "painting_ripple_x", - "802d2eb8": "painting_state", - "802d2ffc": "wall_painting_proximity_idle", - "802d319c": "wall_painting_proximity_rippling", - "802d327c": "wall_painting_continuous_idle", - "802d341c": "wall_painting_continuous_rippling", - "802d34fc": "floor_painting_proximity_idle", - "802d36ac": "floor_painting_proximity_rippling", - "802d379c": "floor_painting_continuous_idle", - "802d393c": "floor_painting_continuous_rippling", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_state", - "802d3cec": "calculate_ripple_at_point", - "802d3e6c": "ripple_if_movable", - "802d3ee4": "painting_generate_mesh", - "802d404c": "painting_calculate_triangle_normals", - "802d43f8": "normalize_component", - "802d44bc": "painting_average_vertex_normals", - "802d47d0": "render_painting", - "802d4edc": "painting_model_view_transform", - "802d50dc": "painting_ripple_image", - "802d5354": "painting_ripple_env_mapped", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "move_ddd_painting", - "802d58e4": "set_painting_layer", - "802d593c": "display_painting", - "802d59a8": "wall_painting_update", - "802d5aa0": "floor_painting_update", - "802d5b98": "geo_painting_draw", - "802d5d0c": "geo_painting_update", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "coin_step", - "802e5e6c": "moving_coin_flicker", - "802e5ea4": "coin_collected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "blue_coin_sliding_away_from_mario", - "802e63ec": "blue_coin_sliding_slow_down", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "bobomb_spawn_coin", - "802e6af8": "bobomb_act_explode", - "802e6bd4": "bobomb_check_interactions", - "802e6cf0": "bobomb_act_patrol", - "802e6dc8": "bobomb_act_chase_mario", - "802e6e84": "bobomb_act_launched", - "802e6ed8": "generic_bobomb_free_loop", - "802e7020": "stationary_bobomb_free_loop", - "802e7134": "bobomb_free_loop", - "802e7180": "bobomb_held_loop", - "802e7220": "bobomb_dropped_loop", - "802e7280": "bobomb_thrown_loop", - "802e7324": "curr_obj_random_blink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "bobomb_buddy_act_idle", - "802e7814": "bobomb_buddy_cannon_dialog", - "802e79dc": "bobomb_buddy_act_talk", - "802e7b00": "bobomb_buddy_act_turn_to_talk", - "802e7bb0": "bobomb_buddy_actions", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "cannon_door_act_opening", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "whirlpool_set_hitbox", - "802e7fec": "whirpool_orient_graph", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "butterfly_step", - "802e9278": "butterfly_calculate_angle", - "802e9470": "butterfly_act_rest", - "802e94e4": "butterfly_act_follow_mario", - "802e9548": "butterfly_act_return_home", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "hoot_find_next_floor", - "802e98c0": "hoot_floor_bounce", - "802e9a4c": "hoot_free_step", - "802e9cf4": "hoot_player_set_yaw", - "802e9d98": "hoot_carry_step", - "802e9f60": "hoot_surface_collision", - "802ea144": "hoot_act_ascent", - "802ea258": "hoot_action_loop", - "802ea3f0": "hoot_turn_to_home", - "802ea4ec": "hoot_awake_loop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "bully_check_mario_collision", - "802eb288": "bully_act_chase_mario", - "802eb3f0": "bully_act_knockback", - "802eb510": "bully_act_back_up", - "802eb5c4": "bully_backup_check", - "802eb630": "bully_play_stomping_sound", - "802eb744": "bully_step", - "802eb7e0": "bully_spawn_coin", - "802eb8b0": "bully_act_level_death", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "big_bully_spawn_minion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "big_bully_spawn_star", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "water_ring_calc_mario_dist", - "802ec030": "water_ring_init", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "water_ring_check_collection", - "802ec3d0": "water_ring_set_scale", - "802ec4e0": "water_ring_act_collected", - "802ec59c": "water_ring_act_not_collected", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "spawn_manta_ray_ring_manager", - "802ec818": "water_ring_spawner_act_inactive", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "manta_water_ring_act_not_collected", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "celeb_star_act_spin_around_mario", - "802ed28c": "celeb_star_act_face_camera", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "moneybag_check_mario_collision", - "802ee268": "moneybag_jump", - "802ee46c": "moneybag_act_move_around", - "802ee598": "moneybag_act_return_home", - "802ee728": "moneybag_act_disappear", - "802ee778": "moneybag_act_death", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "bowling_ball_set_hitbox", - "802eea7c": "bowling_ball_set_waypoints", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "set_rolling_sphere_hitbox", - "802f0bd4": "adjust_rolling_face_pitch", - "802f0c94": "snowmans_bottom_act_1", - "802f0df0": "snowmans_bottom_act_2", - "802f0fa8": "snowmans_bottom_act_3", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "boulder_act_1", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "cap_set_hitbox", - "802f19c8": "cap_despawn", - "802f1a10": "cap_check_quicksand", - "802f1bb8": "cap_sink_quicksand", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "cap_scale_vertically", - "802f1e5c": "wing_vanish_cap_act_0", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "metal_cap_act_0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "normal_cap_set_save_flags", - "802f2284": "normal_cap_act_0", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "spawn_star", - "802f2b88": "spawn_default_star", - "802f2bd4": "spawn_red_coin_cutscene_star", - "802f2c24": "spawn_no_exit_star", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "rolling_log_roll_log", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "volcano_act_1", - "802f39b4": "volcano_act_3", - "802f3a30": "bhv_volcano_trap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "one_up_loop_in_air", - "802f3ea8": "pole_1up_move_towards_mario", - "802f401c": "one_up_move_away_from_mario", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "sliding_1up_move", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "controllable_platform_act_1", - "802f4ce0": "controllable_platform_act_2", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "controllable_platform_hit_wall", - "802f5068": "controllable_platform_check_walls", - "802f52c0": "controllable_platform_shake_on_wall_hit", - "802f547c": "controllable_platform_tilt_from_mario", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "small_breakable_box_spawn_dust", - "802f5e44": "small_breakable_box_act_move", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "floating_platform_find_home_y", - "802f665c": "floating_platform_act_0", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f6eb0": "manta_ray_move", - "802f7068": "manta_ray_act_spawn_ring", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "spawn_treasure_chest", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "bhv_yoshi_loop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "mr_blizzard_spawn_white_particles", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "geo_snufit_move_mask", - "8030d9ac": "geo_snufit_scale_body", - "8030da14": "snufit_act_idle", - "8030db38": "snufit_act_shoot", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_lower_prio", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031c200": "L8031C200", - "8031c23c": "L8031C23C", - "8031c298": "L8031C298", - "8031c2dc": "L8031C2DC", - "8031c328": "L8031C328", - "8031c36c": "L8031C36C", - "8031c3bc": "L8031C3BC", - "8031c3e8": "L8031C3E8", - "8031c454": "L8031C454", - "8031c4a4": "L8031C4A4", - "8031c5c8": "L8031C5C8", - "8031c698": "L8031C698", - "8031c6a0": "L8031C6A0", - "8031cbe0": "L8031CBE0", - "8031cbec": "L8031CBEC", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d144": "L_U_8031D144", - "8031d1f8": "L_U_8031D1F8", - "8031d234": "L_U_8031D234", - "8031d26c": "L_U_8031D26C", - "8031d2b4": "L_U_8031D2B4", - "8031d2c4": "L_U_8031D2C4", - "8031d31c": "L_U_8031D31C", - "8031d344": "L_U_8031D344", - "8031d354": "L_U_8031D354", - "8031d370": "L_U_8031D370", - "8031d3a8": "L_U_8031D3A8", - "8031d3c4": "L_U_8031D3C4", - "8031d3d4": "L_U_8031D3D4", - "8031d3e4": "L_U_8031D3E4", - "8031d400": "L_U_8031D400", - "8031d424": "L_U_8031D424", - "8031d44c": "L_U_8031D44C", - "8031d474": "L_U_8031D474", - "8031d498": "L_U_8031D498", - "8031d4bc": "L_U_8031D4BC", - "8031d4d4": "L_U_8031D4D4", - "8031d4f0": "L_U_8031D4F0", - "8031d500": "L_U_8031D500", - "8031d51c": "L_U_8031D51C", - "8031d538": "L_U_8031D538", - "8031d56c": "L_U_8031D56C", - "8031d5a0": "L_U_8031D5A0", - "8031d5b4": "L_U_8031D5B4", - "8031d5d4": "L_U_8031D5D4", - "8031d5e4": "L_U_8031D5E4", - "8031d640": "L_U_8031D640", - "8031d678": "L_U_8031D678", - "8031d6c4": "L_U_8031D6C4", - "8031d6d4": "L_U_8031D6D4", - "8031d6f4": "L_U_8031D6F4", - "8031d718": "L_U_8031D718", - "8031d728": "L_U_8031D728", - "8031d73c": "L_U_8031D73C", - "8031d7b8": "L_U_8031D7B8", - "8031d7e8": "L_U_8031D7E8", - "8031d7f8": "L_U_8031D7F8", - "8031d814": "L_U_8031D814", - "8031d830": "L_U_8031D830", - "8031d87c": "L_U_8031D87C", - "8031d898": "L_U_8031D898", - "8031d8f8": "L_U_8031D8F8", - "8031d900": "L_U_8031D900", - "8031d930": "L_U_8031D930", - "8031d94c": "L_U_8031D94C", - "8031d974": "L_U_8031D974", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e578": "sequence_player_fade_out_internal", - "8031e5c0": "func_8031D690", - "8031e60c": "func_8031D6E4", - "8031e6a4": "func_8031D7B0", - "8031e710": "func_8031D838", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031eb30": "process_sound_request", - "8031edec": "process_all_sound_requests", - "8031ee70": "func_8031DFE8", - "8031ef6c": "func_8031E0E4", - "8031eff4": "func_8031E16C", - "8031f810": "get_sound_pan", - "8031f96c": "get_sound_dynamics", - "8031fb20": "get_sound_freq_scale", - "8031fbe8": "get_sound_reverb", - "8031fd84": "audio_signal_game_loop_tick", - "8031fdac": "update_game_sound", - "80320544": "play_sequence", - "80320678": "sequence_player_fade_out", - "803206bc": "fade_volume_scale", - "80320734": "fade_channel_volume_scale", - "8032080c": "func_8031F96C", - "803208ec": "process_level_music_dynamics", - "80320a4c": "L8031FBAC", - "80320a8c": "L8031FBEC", - "80320acc": "L8031FC2C", - "80320b0c": "L8031FC6C", - "80320b4c": "L8031FCAC", - "80320b8c": "L8031FCEC", - "80320bcc": "L8031FD2C", - "80320bf4": "L8031FD54", - "80320d70": "unused_8031FED0", - "80320e3c": "func_8031FFB4", - "80320ec4": "sequence_player_unlower", - "80320f68": "func_803200E4", - "803210d4": "set_sound_disabled", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "func_803205E8", - "80321584": "func_803206F8", - "8032171c": "func_80320890", - "8032174c": "sound_banks_disable", - "803217a8": "disable_all_sequence_players", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "func_80320A4C", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "sNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "D_8032C6A0", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "sWarpCheckpointActive", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "sWarpBhvSpawnTable", - "8032de4c": "sSpawnTypeFromWarpBhv", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b5c": "sFishActions", - "80330b68": "sFishGroupActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "gOpenableGrills", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "sWaterSplashDropletParams", - "80330d30": "gShallowWaterSplashDropletParams", - "80330d54": "sWaterDropletFishParams", - "80330d78": "gShallowWaterWaveDropletParams", - "80330d9c": "sStrongWindParticleHitbox", - "80330dac": "sSLWalkingPenguinErraticSteps", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "sHmcPaintings", - "80331308": "sInsideCastlePaintings", - "80331344": "sTtmPaintings", - "8033134c": "sPaintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b34": "D_80331A24", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "gAreaEchoLevel", - "80333138": "D_80332028", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sPlayer0CurSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "D_803320A4", - "803331c0": "D_803320B0", - "803331cc": "D_803320BC", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gDefaultSoundArgs", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "D_80332110", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "D_8033211C", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "gAudioInitPoolSize", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358f0": "piMgrArgs", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "_osContInitialized", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "D_80334894", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "D_803348B0", - "80335a20": "D_80334910", - "80335a24": "D_80334914", - "80335a28": "D_80334918", - "80335a2c": "D_8033491C", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80338e60": "jtbl_80337C90", - "80338e84": "jtbl_80337CB4", - "80338eac": "jtbl_80337CDC", - "80338ec0": "jtbl_80337D08", - "80338fbc": "jtbl_80337E04", - "8033978c": "jtbl_80338418", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gNeverEnteredCastle", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "sFloorAlignMatrix", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gCurBhvCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361280": "D_8035FF10", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "gPaintingMesh", - "80361314": "gPaintingTriNorms", - "80361318": "gRipplingPainting", - "8036131c": "gDddPaintingStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "gSoundBanks", - "80364b78": "D_80363808", - "80364b82": "D_80363812", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "D_80363830", - "80364c20": "D_803638B0", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "_osContCmdBuf", - "8036708c": "_osContPifCtrl", - "80367090": "_osLastSentSiCmd", - "80367091": "_osContNumControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "__osViIntrCount", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": ".", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "random_u16", - "80383cb4": "random_float", - "80383d1c": "random_sign", - "80383d68": "obj_update_gfx_pos_and_angle", - "80385bf0": "stub_behavior_script_2", - "80385c00": "cur_obj_update", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "00000001": "ASSERT", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "small_water_splash_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "idle_water_wave_geo", - "17000168": "wave_trail_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "amp_geo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleParticleSpawner", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvPlungeBubble", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvVertStarParticleSpawner", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvHorStarParticleSpawner", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvTriangleParticleSpawner", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvBreathParticleSpawner", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvMistCircParticleSpawner", - "13000e3c": "bhvDirtParticleSpawner", - "13000e58": "bhvSnowParticleSpawner", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFireParticleSpawner", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvLeafParticleSpawner", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvFish2", - "1300214c": "bhvFish3", - "1300215c": "bhvLargeFishGroup", - "13002178": "bhvFish", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMistParticleSpawner", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSparkleParticleSpawner", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDroplet", - "13002c7c": "bhvWaterDropletSplash", - "13002cb0": "bhvBubbleSplash", - "13002ce0": "bhvIdleWaterWave", - "13002d28": "bhvObjectWaterSplash", - "13002d50": "bhvShallowWaterWave", - "13002d7c": "bhvShallowWaterSplash", - "13002db0": "bhvObjectWaveTrail", - "13002dc0": "bhvWaveTrail", - "13002e04": "bhvTinyStrongWindParticle", - "13002e20": "bhvStrongWindParticle", - "13002e3c": "bhvSLSnowmanWind", - "13002e58": "bhvSLWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvInstantActiveWarp", - "13002f64": "bhvAirborneWarp", - "13002f68": "bhvHardAirKnockBackWarp", - "13002f6c": "bhvSpinAirborneCircleWarp", - "13002f70": "bhvDeathWarp", - "13002f74": "bhvSpinAirborneWarp", - "13002f78": "bhvFlyingWarp", - "13002f7c": "bhvPaintingStarCollectWarp", - "13002f80": "bhvPaintingDeathWarp", - "13002f84": "bhvAirborneDeathWarp", - "13002f88": "bhvAirborneStarCollectWarp", - "13002f8c": "bhvLaunchStarCollectWarp", - "13002f90": "bhvLaunchDeathWarp", - "13002f94": "bhvSwimmingWarp", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000000": ["EXCEPTION_TLB_MISS"], + "a4000000": ["SP_DMEM"], + "a40004c0": ["SP_DMEM_UNK0"], + "a4000774": ["SP_DMEM_UNK1"], + "a4001000": ["SP_IMEM"], + "a4040010": ["SP_STATUS_REG"], + "a4080000": ["SP_PC"], + "a4300000": ["MI_MODE_REG"], + "a4300004": ["MI_VERSION_REG"], + "a4300008": ["MI_INTR_REG"], + "a430000c": ["MI_INTR_MASK_REG"], + "a4400010": ["VI_CURRENT_REG"], + "a450000c": ["AI_STATUS_REG"], + "a4600000": ["PI_DRAM_ADDR_REG"], + "a4600004": ["PI_CART_ADDR_REG"], + "a460000c": ["PI_WR_LEN_REG"], + "a4600010": ["PI_STATUS_REG"], + "a4700000": ["RI_MODE_REG"], + "a4700010": ["RI_REFRESH_REG"], + "a4800018": ["SI_STATUS_REG"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "802f69cc": ["func_sh_802F69CC"], + "80302ef0": ["osMotorStop"], + "80303090": ["osMotorStart"], + "803033ac": ["osMotorInit"], + "803016a0": ["func_sh_803016A0"], + "803016d0": ["func_sh_803016D0"], + "80301820": ["func_sh_80301820"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04000040": ["ipl3_entry"], + "04000b70": ["ipl3_font"], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "entry_point"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["unknown_main_func"], + "802461cc": ["stub_main_1"], + "802461dc": ["stub_main_2"], + "802461ec": ["stub_main_3"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["alloc_pool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["send_sp_task_message"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["main_func"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["draw_reset_bars"], + "80247f08": ["rendering_init"], + "80247fdc": ["config_gfx_pool"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["reset_volume"], + "80248c58": ["lower_background_noise"], + "80248ce8": ["raise_background_noise"], + "80248d78": ["disable_background_sound"], + "80248dc0": ["enable_background_sound"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["fadeout_music"], + "8024927c": ["fadeout_level_music"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "80249494": ["play_menu_sounds_extra"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_pause"], + "80249764": ["set_play_mode"], + "8024978c": ["warp_special"], + "802497b8": ["fade_into_special_warp"], + "8024982c": ["stub_level_update_1"], + "8024983c": ["load_level_init_text"], + "8024995c": ["init_door_warp"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["warp_area"], + "8024a18c": ["warp_level"], + "8024a1d8": ["warp_credits"], + "8024a374": ["check_instant_warp"], + "8024a584": ["music_changed_through_warp"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_obj_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_normal_cap_on_head"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["should_push_or_pull_door"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_strong_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["mario_can_talk"], + "8024ff04": ["check_read_sign"], + "80250098": ["check_npc_talk"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["stub_mario_step_1"], + "802550b0": ["stub_mario_step_2"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["bhv_end_peach_loop"], + "802570dc": ["bhv_end_toad_loop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025bc80": ["generate_yellow_sparkles"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["climb_up_ledge"], + "8025f560": ["update_ledge_climb_camera"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["check_common_idle_cancels"], + "80260aac": ["check_common_hold_idle_cancels"], + "80260cb4": ["act_idle"], + "80260f94": ["play_anim_sound"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["stopping_step"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["act_hold_butt_slide_stop"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["act_shockwave_bounce"], + "80262bc4": ["landing_step"], + "80262c34": ["check_common_landing_cancels"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["act_hold_jump_land_stop"], + "802631f0": ["act_hold_freefall_land_stop"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["check_common_stationary_cancels"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["tilt_body_running"], + "80263ee4": ["play_step_sound"], + "80264024": ["align_with_floor"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["anim_and_audio_for_walk"], + "80265b1c": ["anim_and_audio_for_hold_walk"], + "80265d90": ["anim_and_audio_for_heavy_walk"], + "80265df8": ["push_or_sidle_wall"], + "80266038": ["tilt_body_walking"], + "802661cc": ["tilt_body_ground_shell"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["tilt_body_butt_slide"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["play_knockback_sound"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["check_wall_kick"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_envfx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhv_toad_message_loop"], + "80276910": ["bhv_toad_message_init"], + "80276bb8": ["bhv_unlock_door_star_init"], + "80276ccc": ["bhv_unlock_door_star_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["load_segment_decompress_heap"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["load_patchable_table"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["override_viewport_and_clip"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["area_get_warp_node_from_params"], + "8027aa74": ["load_obj_warp_nodes"], + "8027ab04": ["clear_areas"], + "8027ad74": ["clear_area_graph_nodes"], + "8027ae44": ["load_area"], + "8027af48": ["unload_area"], + "8027afbc": ["load_mario_area"], + "8027b038": ["unload_mario_area"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["stub_camera_2"], + "80287dd4": ["stub_camera_3"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["stub_camera_4"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["spawn_child_obj_relative"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_obj_list_processor_1"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["geo_update_projectile_pos_from_parent"], + "8029d924": ["geo_update_layer_transparency"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["obj_update_pos_from_parent_transformation"], + "8029dda8": ["obj_apply_scale_to_matrix"], + "8029de80": ["create_transformation_from_matrices"], + "8029e1b0": ["obj_set_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["cur_obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["cur_obj_rotate_yaw_toward"], + "8029e694": ["obj_angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["obj_set_parent_relative_pos"], + "8029e914": ["obj_set_pos"], + "8029e96c": ["obj_set_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["spawn_obj_with_transform_flags"], + "8029eb04": ["spawn_water_droplet"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["cur_obj_move_using_vel"], + "8029f0c8": ["obj_copy_graph_y_offset"], + "8029f0e0": ["obj_copy_pos_and_angle"], + "8029f120": ["obj_copy_pos"], + "8029f148": ["obj_copy_angle"], + "8029f188": ["obj_set_gfx_pos_from_pos"], + "8029f1b0": ["obj_init_animation"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["obj_apply_scale_to_transform"], + "8029f3a8": ["obj_copy_scale"], + "8029f3d0": ["obj_scale_xyz"], + "8029f404": ["obj_scale"], + "8029f430": ["cur_obj_scale"], + "8029f464": ["cur_obj_init_animation"], + "8029f4b4": ["cur_obj_init_animation_with_sound"], + "8029f514": ["cur_obj_init_animation_with_accel_and_sound"], + "8029f59c": ["obj_init_animation_with_sound"], + "8029f600": ["cur_obj_enable_rendering_and_become_tangible"], + "8029f620": ["cur_obj_enable_rendering"], + "8029f644": ["cur_obj_disable_rendering_and_become_intangible"], + "8029f66c": ["cur_obj_disable_rendering"], + "8029f694": ["cur_obj_unhide"], + "8029f6bc": ["cur_obj_hide"], + "8029f6e0": ["cur_obj_set_pos_relative"], + "8029f7d8": ["cur_obj_set_pos_relative_to_parent"], + "8029f820": ["cur_obj_enable_rendering_2"], + "8029f848": ["cur_obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_face_angle_to_move_angle"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["cur_obj_nearest_object_with_behavior"], + "8029f998": ["cur_obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["cur_obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["cur_obj_find_nearby_held_actor"], + "8029fdb4": ["cur_obj_change_action"], + "8029fe00": ["cur_obj_set_vel_from_mario_vel"], + "8029fe6c": ["cur_obj_reverse_animation"], + "8029fea4": ["cur_obj_extend_animation_if_at_end"], + "8029ff04": ["cur_obj_check_if_near_animation_end"], + "8029ffa4": ["cur_obj_check_if_at_animation_end"], + "802a0008": ["cur_obj_check_anim_frame"], + "802a0050": ["cur_obj_check_anim_frame_in_range"], + "802a00ac": ["cur_obj_check_frame_prior_current_frame"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["cur_obj_set_y_vel_and_animation"], + "802a01d8": ["cur_obj_unrender_and_reset_state"], + "802a0380": ["cur_obj_get_thrown_or_placed"], + "802a0474": ["cur_obj_get_dropped"], + "802a04c0": ["cur_obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["cur_obj_clear_interact_status_flag"], + "802a0568": ["obj_mark_for_deletion"], + "802a057c": ["cur_obj_disable"], + "802a05b4": ["cur_obj_become_intangible"], + "802a05d4": ["cur_obj_become_tangible"], + "802a05f0": ["obj_become_tangible"], + "802a0604": ["cur_obj_update_floor_height"], + "802a064c": ["cur_obj_update_floor_height_and_get_floor"], + "802a079c": ["cur_obj_apply_drag_xz"], + "802a0e68": ["cur_obj_move_y"], + "802a113c": ["cur_obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["cur_obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["cur_obj_move_y_with_terminal_vel"], + "802a1308": ["cur_obj_compute_vel_xz"], + "802a1370": ["increment_velocity_toward_range"], + "802a1424": ["obj_check_if_collided_with_object"], + "802a148c": ["cur_obj_set_behavior"], + "802a14c4": ["obj_set_behavior"], + "802a14fc": ["cur_obj_has_behavior"], + "802a1554": ["obj_has_behavior"], + "802a15ac": ["cur_obj_lateral_dist_from_mario_to_home"], + "802a1634": ["cur_obj_lateral_dist_to_home"], + "802a16ac": ["cur_obj_outside_home_square"], + "802a1774": ["cur_obj_outside_home_rectangle"], + "802a184c": ["cur_obj_set_pos_to_home"], + "802a188c": ["cur_obj_set_pos_to_home_and_stop"], + "802a18dc": ["cur_obj_shake_y"], + "802a1930": ["cur_obj_start_cam_event"], + "802a1960": ["set_mario_interact_hoot_if_in_range"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["cur_obj_set_hitbox_radius_and_height"], + "802a19f0": ["cur_obj_set_hurtbox_radius_and_height"], + "802a1b34": ["obj_spawn_loot_blue_coins"], + "802a1b8c": ["obj_spawn_loot_yellow_coins"], + "802a1bdc": ["cur_obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["cur_obj_abs_y_dist_to_home"], + "802a1cc4": ["cur_obj_advance_looping_anim"], + "802a1f3c": ["cur_obj_resolve_wall_collisions"], + "802a2320": ["cur_obj_update_floor_and_walls"], + "802a2348": ["cur_obj_move_standard"], + "802a25b4": ["cur_obj_move_using_vel_and_gravity"], + "802a2644": ["cur_obj_move_using_fvel_and_gravity"], + "802a2674": ["obj_set_pos_relative"], + "802a2748": ["cur_obj_angle_to_home"], + "802a27b0": ["obj_set_gfx_pos_at_obj_pos"], + "802a2804": ["obj_translate_local"], + "802a2930": ["obj_build_transform_from_pos_and_angle"], + "802a2a18": ["obj_set_throw_matrix_from_transform"], + "802a2a84": ["obj_build_transform_relative_to_parent"], + "802a2b28": ["obj_create_transform_from_self"], + "802a2b6c": ["cur_obj_rotate_move_angle_using_vel"], + "802a2bc4": ["cur_obj_rotate_face_angle_using_vel"], + "802a2c1c": ["cur_obj_set_face_angle_to_move_angle"], + "802a2c5c": ["cur_obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["obj_scale_random"], + "802a2fc0": ["obj_translate_xyz_random"], + "802a308c": ["obj_translate_xz_random"], + "802a31e0": ["cur_obj_set_pos_via_transform"], + "802a3268": ["cur_obj_reflect_move_angle_off_wall"], + "802a32ac": ["cur_obj_spawn_particles"], + "802a34a4": ["obj_set_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["cur_obj_wait_then_blink"], + "802a3754": ["cur_obj_is_mario_ground_pounding_platform"], + "802a37ac": ["spawn_mist_particles"], + "802a37dc": ["spawn_mist_particles_with_sound"], + "802a3818": ["cur_obj_push_mario_away"], + "802a390c": ["cur_obj_push_mario_away_from_cylinder"], + "802a399c": ["bhv_dust_smoke_loop"], + "802a3a4c": ["cur_obj_set_direction_table"], + "802a3a88": ["cur_obj_progress_direction_table"], + "802a3b28": ["stub_obj_helpers_3"], + "802a3b40": ["cur_obj_scale_over_time"], + "802a3c18": ["cur_obj_set_pos_to_home_with_debug"], + "802a3cec": ["stub_obj_helpers_4"], + "802a3cfc": ["cur_obj_is_mario_on_platform"], + "802a3d40": ["cur_obj_shake_y_until"], + "802a3dd4": ["cur_obj_move_up_and_down"], + "802a3e30": ["cur_obj_call_action_function"], + "802a3ef8": ["spawn_base_star_with_no_lvl_exit"], + "802a3f24": ["bit_shift_left"], + "802a3f48": ["cur_obj_mario_far_away"], + "802a404c": ["is_mario_moving_fast_or_in_air"], + "802a40b8": ["is_item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["cur_obj_enable_rendering_if_mario_in_room"], + "802a4360": ["cur_obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["obj_explode_and_spawn_coins"], + "802a44f4": ["obj_set_collision_data"], + "802a452c": ["cur_obj_if_hit_wall_bounce_away"], + "802a4564": ["cur_obj_hide_if_mario_far_away_y"], + "802a45e4": ["geo_offset_klepto_held_object"], + "802a462c": ["geo_offset_klepto_debug"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["cur_obj_can_mario_activate_textbox"], + "802a48bc": ["cur_obj_can_mario_activate_textbox_2"], + "802a4960": ["cur_obj_update_dialog"], + "802a4be4": ["cur_obj_update_dialog_with_cutscene"], + "802a4f04": ["cur_obj_has_model"], + "802a4f58": ["cur_obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["cur_obj_shake_screen"], + "802a513c": ["obj_attack_collided_from_other_object"], + "802a51ac": ["cur_obj_was_attacked_or_ground_pounded"], + "802a5228": ["obj_copy_behavior_params"], + "802a5248": ["cur_obj_init_animation_and_anim_frame"], + "802a5288": ["cur_obj_init_animation_and_check_if_near_end"], + "802a52c4": ["cur_obj_init_animation_and_extend_if_at_end"], + "802a52f8": ["cur_obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["cur_obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["cur_obj_check_interacted"], + "802a5524": ["cur_obj_spawn_loot_blue_coin"], + "802a5588": ["cur_obj_spawn_star_at_y_offset"], + "802a5620": ["star_door_update_pos"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["mr_i_piranha_particle_act_0"], + "802a5a44": ["mr_i_piranha_particle_act_1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["spawn_mr_i_particle"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["mr_i_act_3"], + "802a6518": ["mr_i_act_2"], + "802a68a0": ["mr_i_act_1"], + "802a6ad8": ["mr_i_act_0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["cap_switch_act_0"], + "802a7020": ["cap_switch_act_1"], + "802a708c": ["cap_switch_act_2"], + "802a7160": ["cap_switch_act_3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["geo_update_held_mario_pos"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["king_bobomb_act_0"], + "802a7384": ["mario_is_far_below_object"], + "802a73d8": ["king_bobomb_act_2"], + "802a7598": ["king_bobomb_act_3"], + "802a7804": ["king_bobomb_act_1"], + "802a78d8": ["king_bobomb_act_6"], + "802a7a60": ["king_bobomb_act_7"], + "802a7b1c": ["king_bobomb_act_8"], + "802a7b5c": ["king_bobomb_act_4"], + "802a7d14": ["king_bobomb_act_5"], + "802a7fbc": ["king_bobomb_move"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["scale_bubble_random"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["scale_bubble_sin"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["opened_cannon_act_0"], + "802a8f40": ["opened_cannon_act_4"], + "802a9114": ["opened_cannon_act_6"], + "802a92fc": ["opened_cannon_act_5"], + "802a93f8": ["opened_cannon_act_1"], + "802a9440": ["opened_cannon_act_2"], + "802a9460": ["opened_cannon_act_3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["common_anchor_mario_behavior"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["unknown_chuckya_function"], + "802a98c4": ["approach_forward_vel"], + "802a9994": ["chuckya_act_0"], + "802a9d08": ["chuckya_act_1"], + "802a9f54": ["chuckya_act_3"], + "802a9fc8": ["chuckya_act_2"], + "802aa02c": ["chuckya_move"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["check_mario_attacking"], + "802aa3c8": ["init_kickable_board_rock"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["set_koopa_shell_underwater_hitbox"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["bhv_fading_warp_loop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["spawn_mist_particles_variable"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["set_sparkle_spawn_star_hitbox"], + "802ab060": ["set_home_to_mario"], + "802ab158": ["set_y_home_to_pos"], + "802ab18c": ["slow_star_rotation"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["spawn_coin_in_formation"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["coin_inside_boo_act_1"], + "802ac15c": ["coin_inside_boo_act_0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["door_animation_and_reset"], + "802ac958": ["set_door_camera_event"], + "802ac9d0": ["play_door_open_noise"], + "802aca6c": ["play_warp_door_open_noise"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["grindel_thwomp_act_4"], + "802ad10c": ["grindel_thwomp_act_2"], + "802ad1a4": ["grindel_thwomp_act_3"], + "802ad238": ["grindel_thwomp_act_1"], + "802ad2d0": ["grindel_thwomp_act_0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["tumbling_bridge_act_1"], + "802ad76c": ["tumbling_bridge_act_2"], + "802ad7f4": ["tumbling_bridge_act_3"], + "802ad828": ["tumbling_bridge_act_0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["elevator_starting_shake"], + "802ad8f0": ["elevator_act_0"], + "802ada4c": ["elevator_act_1"], + "802adb88": ["elevator_act_2"], + "802adce4": ["elevator_act_4"], + "802add70": ["elevator_act_3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["spawn_mist_from_global"], + "802ae360": ["bhv_ground_sand_init"], + "802ae394": ["spawn_smoke_with_velocity"], + "802ae45c": ["clear_particle_flags"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["spawn_wind_particles"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["spawn_and_init_wf_platforms"], + "802b039c": ["spawn_wf_platform_group"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["square_plat_set_yaw_until_timer"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["check_if_moving_over_floor"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["breakable_box_init"], + "802b17f4": ["hidden_breakable_box_actions"], + "802b19d8": ["hidden_unbreakable_box_actions"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["geo_move_mario_part_from_parent"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["heave_ho_act_1"], + "802b1e6c": ["heave_ho_act_2"], + "802b1ff4": ["heave_ho_act_3"], + "802b20a0": ["heave_ho_act_0"], + "802b2154": ["heave_ho_move"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["jumping_box_act_0"], + "802b27d8": ["jumping_box_act_1"], + "802b2824": ["jumping_box_free_update"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["spawn_sparkle_particles"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["arc_to_goal_pos"], + "802b3250": ["grand_star_zero_velocity"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["bullet_bill_act_0"], + "802b38b8": ["bullet_bill_act_1"], + "802b394c": ["bullet_bill_act_2"], + "802b3b08": ["bullet_bill_act_3"], + "802b3b24": ["bullet_bill_act_4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["bowser_tail_anchor_act_0"], + "802b3cdc": ["bowser_tail_anchor_act_1"], + "802b3d10": ["bowser_tail_anchor_act_2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["bowser_spawn_shockwave"], + "802b41fc": ["bowser_bounce"], + "802b4288": ["bowser_set_anim_look_up_and_walk"], + "802b4300": ["bowser_set_anim_slow_gait"], + "802b4368": ["bowser_set_anim_look_down"], + "802b43dc": ["bowser_initialize_action"], + "802b4478": ["bowser_act_text_wait"], + "802b44bc": ["bowser_act_intro_walk"], + "802b45f4": ["bowser_bitdw_act_controller"], + "802b473c": ["bowser_bitfs_act_controller"], + "802b48d4": ["bowser_general_bits_act_controller"], + "802b4a1c": ["bowser_set_act_jump"], + "802b4a3c": ["bowser_bits_act_controller"], + "802b4af4": ["bowser_reset_fallen_off_stage"], + "802b4bac": ["bowser_act_unused_slow_walk"], + "802b4be8": ["bowser_act_default"], + "802b4ca4": ["bowser_act_breath_fire"], + "802b4d14": ["bowser_act_walk_to_mario"], + "802b4f00": ["bowser_act_teleport"], + "802b5104": ["bowser_act_spit_fire_into_sky"], + "802b5218": ["bowser_act_hit_mine"], + "802b53f4": ["bowser_set_anim_in_air"], + "802b5444": ["bowser_land"], + "802b5554": ["bowser_short_second_hop"], + "802b55cc": ["bowser_act_jump"], + "802b5798": ["bowser_act_jump_towards_mario"], + "802b58bc": ["bowser_act_hit_edge"], + "802b59cc": ["bowser_act_spit_fire_onto_floor"], + "802b5aec": ["bowser_turn_on_timer"], + "802b5c00": ["bowser_act_turn_from_edge"], + "802b5c40": ["bowser_act_charge_mario"], + "802b5f6c": ["bowser_check_hit_mine"], + "802b5fec": ["bowser_act_thrown_dropped"], + "802b611c": ["bowser_set_goal_invisible"], + "802b6190": ["bowser_act_jump_onto_stage"], + "802b6568": ["bowser_act_dance"], + "802b65d0": ["bowser_spawn_grand_star_key"], + "802b6670": ["bowser_fly_back_dead"], + "802b6730": ["bowser_dead_bounce"], + "802b67d4": ["bowser_dead_wait_for_mario"], + "802b6878": ["bowser_dead_twirl_into_trophy"], + "802b6a10": ["bowser_dead_hide"], + "802b6a78": ["bowser_dead_not_bits_end"], + "802b6bac": ["bowser_dead_bits_end"], + "802b6cf0": ["bowser_act_dead"], + "802b6e40": ["bowser_tilt_platform"], + "802b6ee0": ["bowser_act_ride_tilting_platform"], + "802b711c": ["bowser_check_fallen_off_stage"], + "802b71e4": ["bowser_free_update"], + "802b72d4": ["bowser_held_update"], + "802b7418": ["bowser_thrown_dropped_update"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["geo_update_body_rot_from_parent"], + "802b7a20": ["bowser_open_eye_switch"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["geo_bits_bowser_coloring"], + "802b7e68": ["falling_bowser_plat_act_0"], + "802b7ef0": ["falling_bowser_plat_act_1"], + "802b8024": ["falling_bowser_plat_act_2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["bowser_flame_despawn"], + "802b8434": ["bowser_flame_should_despawn"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["bowser_flame_move"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_movement_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["vec3f_copy_2"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["checkerboard_plat_act_move_y"], + "802b9af8": ["checkerboard_plat_act_rotate"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["water_level_pillar_undrained"], + "802ba13c": ["water_level_pillar_drained"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["geo_scale_bowser_key"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_cap_ukiki_reset"], + "802ba868": ["is_cap_ukiki_and_mario_has_normal_cap_on_head"], + "802ba8c4": ["geo_update_projectile_pos_from_parent_copy"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["cap_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["lll_octagonal_mesh_move"], + "802bbfd8": ["lll_octagonal_mesh_find_y_offset"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["fire_bar_spawn_flames"], + "802bc4f4": ["fire_bar_act_0"], + "802bc538": ["fire_bar_act_1"], + "802bc590": ["fire_bar_act_2"], + "802bc5fc": ["fire_bar_act_3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["hexagonal_ring_spawn_flames"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["sinking_rectangular_plat_actions"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["koopa_shell_spawn_water_drop"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["koopa_shell_spawn_sparkles"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["tox_box_shake_screen"], + "802bd91c": ["tox_box_move"], + "802bdb04": ["tox_box_act_4"], + "802bdb3c": ["tox_box_act_5"], + "802bdb74": ["tox_box_act_6"], + "802bdbac": ["tox_box_act_7"], + "802bdbe4": ["tox_box_act_1"], + "802bdc7c": ["tox_box_act_2"], + "802bdcc8": ["tox_box_act_3"], + "802bdd14": ["tox_box_act_0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["set_obj_anim_with_accel_and_sound"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["tuxies_mother_act_2"], + "802bef8c": ["tuxies_mother_act_1"], + "802bf1d8": ["tuxies_mother_act_0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["small_penguin_dive_with_mario"], + "802bf474": ["small_penguin_act_2"], + "802bf57c": ["small_penguin_act_1"], + "802bf648": ["small_penguin_act_3"], + "802bf6e4": ["small_penguin_act_4"], + "802bf760": ["small_penguin_act_0"], + "802bf90c": ["small_penguin_act_5"], + "802bfa14": ["small_penguin_free_actions"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bfcd8": ["fish_act_spawn"], + "802bfeb8": ["fish_act_respawn"], + "802bff20": ["fish_act_init"], + "802bff3c": ["bhv_large_fish_group_loop"], + "802bff68": ["fish_regroup"], + "802c00b4": ["fish_group_act_rotation"], + "802c0348": ["fish_group_act_move"], + "802c06a8": ["fish_group_act_animate"], + "802c0768": ["bhv_fish_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["bub_spawner_act_0"], + "802c0b50": ["bub_spawner_act_1"], + "802c0ba4": ["bub_spawner_act_2"], + "802c0bc4": ["bub_spawner_act_3"], + "802c0be0": ["bhv_bub_spawner_loop"], + "802c0c0c": ["bub_move_vertically"], + "802c0cd4": ["bub_act_0"], + "802c0d44": ["bub_act_1"], + "802c0f90": ["bub_act_2"], + "802c1204": ["bhv_bub_loop"], + "802c12c0": ["bhv_rotating_exclamation_box_loop"], + "802c1308": ["exclamation_box_act_0"], + "802c13ec": ["exclamation_box_act_1"], + "802c14b0": ["exclamation_box_act_2"], + "802c15b8": ["exclamation_box_act_3"], + "802c17bc": ["exclamation_box_spawn_contents"], + "802c18d0": ["exclamation_box_act_4"], + "802c1988": ["exclamation_box_act_5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["bhv_pole_base_loop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["update_angle_from_move_flags"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["whomp_play_sfx_from_pound_animation"], + "802c6d6c": ["whomp_act_0"], + "802c6ec8": ["whomp_act_7"], + "802c6fb0": ["whomp_act_1"], + "802c710c": ["whomp_act_2"], + "802c7254": ["whomp_act_3"], + "802c72b4": ["whomp_act_4"], + "802c7380": ["whomp_act_5"], + "802c7428": ["king_whomp_on_ground"], + "802c75fc": ["whomp_on_ground"], + "802c76d4": ["whomp_act_6"], + "802c7858": ["whomp_act_8"], + "802c7998": ["whomp_act_9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_spawn_droplets"], + "802c7b14": ["bhv_water_droplet_loop"], + "802c7cac": ["bhv_idle_water_wave_loop"], + "802c7d40": ["bhv_water_droplet_splash_init"], + "802c7d90": ["bhv_bubble_splash_init"], + "802c7dfc": ["bhv_shallow_water_splash_init"], + "802c7e5c": ["bhv_wave_trail_shrink"], + "802c7f98": ["bhv_strong_wind_particle_loop"], + "802c81b4": ["cur_obj_spawn_strong_wind_particles"], + "802c834c": ["bhv_sl_snowman_wind_loop"], + "802c863c": ["bhv_sl_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["debug_print_obj_collision"], + "802c8fe4": ["detect_object_hitbox_overlap"], + "802c91ec": ["detect_object_hurtbox_overlap"], + "802c9388": ["clear_object_collision"], + "802c93f8": ["check_collision_in_list"], + "802c94ac": ["check_player_object_collision"], + "802c95b4": ["check_pushable_object_collision"], + "802c9630": ["check_destructive_object_collision"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["cur_obj_play_sound_1"], + "802ca1e0": ["cur_obj_play_sound_2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["stub_debug_1"], + "802ca380": ["stub_debug_2"], + "802ca390": ["stub_debug_3"], + "802ca3a0": ["stub_debug_4"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_debug_5"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["debug_enemy_unknown"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stop_other_paintings"], + "802d2a74": ["painting_mario_y"], + "802d2b08": ["painting_mario_z"], + "802d2b84": ["painting_ripple_y"], + "802d2c40": ["painting_nearest_4th"], + "802d2d80": ["painting_mario_x"], + "802d2dfc": ["painting_ripple_x"], + "802d2eb8": ["painting_state"], + "802d2ffc": ["wall_painting_proximity_idle"], + "802d319c": ["wall_painting_proximity_rippling"], + "802d327c": ["wall_painting_continuous_idle"], + "802d341c": ["wall_painting_continuous_rippling"], + "802d34fc": ["floor_painting_proximity_idle"], + "802d36ac": ["floor_painting_proximity_rippling"], + "802d379c": ["floor_painting_continuous_idle"], + "802d393c": ["floor_painting_continuous_rippling"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_state"], + "802d3cec": ["calculate_ripple_at_point"], + "802d3e6c": ["ripple_if_movable"], + "802d3ee4": ["painting_generate_mesh"], + "802d404c": ["painting_calculate_triangle_normals"], + "802d43f8": ["normalize_component"], + "802d44bc": ["painting_average_vertex_normals"], + "802d47d0": ["render_painting"], + "802d4edc": ["painting_model_view_transform"], + "802d50dc": ["painting_ripple_image"], + "802d5354": ["painting_ripple_env_mapped"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["move_ddd_painting"], + "802d58e4": ["set_painting_layer"], + "802d593c": ["display_painting"], + "802d59a8": ["wall_painting_update"], + "802d5aa0": ["floor_painting_update"], + "802d5b98": ["geo_painting_draw"], + "802d5d0c": ["geo_painting_update"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["coin_step"], + "802e5e6c": ["moving_coin_flicker"], + "802e5ea4": ["coin_collected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["blue_coin_sliding_away_from_mario"], + "802e63ec": ["blue_coin_sliding_slow_down"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["bobomb_spawn_coin"], + "802e6af8": ["bobomb_act_explode"], + "802e6bd4": ["bobomb_check_interactions"], + "802e6cf0": ["bobomb_act_patrol"], + "802e6dc8": ["bobomb_act_chase_mario"], + "802e6e84": ["bobomb_act_launched"], + "802e6ed8": ["generic_bobomb_free_loop"], + "802e7020": ["stationary_bobomb_free_loop"], + "802e7134": ["bobomb_free_loop"], + "802e7180": ["bobomb_held_loop"], + "802e7220": ["bobomb_dropped_loop"], + "802e7280": ["bobomb_thrown_loop"], + "802e7324": ["curr_obj_random_blink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["bobomb_buddy_act_idle"], + "802e7814": ["bobomb_buddy_cannon_dialog"], + "802e79dc": ["bobomb_buddy_act_talk"], + "802e7b00": ["bobomb_buddy_act_turn_to_talk"], + "802e7bb0": ["bobomb_buddy_actions"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["cannon_door_act_opening"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["whirlpool_set_hitbox"], + "802e7fec": ["whirpool_orient_graph"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["butterfly_step"], + "802e9278": ["butterfly_calculate_angle"], + "802e9470": ["butterfly_act_rest"], + "802e94e4": ["butterfly_act_follow_mario"], + "802e9548": ["butterfly_act_return_home"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["hoot_find_next_floor"], + "802e98c0": ["hoot_floor_bounce"], + "802e9a4c": ["hoot_free_step"], + "802e9cf4": ["hoot_player_set_yaw"], + "802e9d98": ["hoot_carry_step"], + "802e9f60": ["hoot_surface_collision"], + "802ea144": ["hoot_act_ascent"], + "802ea258": ["hoot_action_loop"], + "802ea3f0": ["hoot_turn_to_home"], + "802ea4ec": ["hoot_awake_loop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["bully_check_mario_collision"], + "802eb288": ["bully_act_chase_mario"], + "802eb3f0": ["bully_act_knockback"], + "802eb510": ["bully_act_back_up"], + "802eb5c4": ["bully_backup_check"], + "802eb630": ["bully_play_stomping_sound"], + "802eb744": ["bully_step"], + "802eb7e0": ["bully_spawn_coin"], + "802eb8b0": ["bully_act_level_death"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["big_bully_spawn_minion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["big_bully_spawn_star"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["water_ring_calc_mario_dist"], + "802ec030": ["water_ring_init"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["water_ring_check_collection"], + "802ec3d0": ["water_ring_set_scale"], + "802ec4e0": ["water_ring_act_collected"], + "802ec59c": ["water_ring_act_not_collected"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["spawn_manta_ray_ring_manager"], + "802ec818": ["water_ring_spawner_act_inactive"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["manta_water_ring_act_not_collected"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["celeb_star_act_spin_around_mario"], + "802ed28c": ["celeb_star_act_face_camera"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["moneybag_check_mario_collision"], + "802ee268": ["moneybag_jump"], + "802ee46c": ["moneybag_act_move_around"], + "802ee598": ["moneybag_act_return_home"], + "802ee728": ["moneybag_act_disappear"], + "802ee778": ["moneybag_act_death"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["bowling_ball_set_hitbox"], + "802eea7c": ["bowling_ball_set_waypoints"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["set_rolling_sphere_hitbox"], + "802f0bd4": ["adjust_rolling_face_pitch"], + "802f0c94": ["snowmans_bottom_act_1"], + "802f0df0": ["snowmans_bottom_act_2"], + "802f0fa8": ["snowmans_bottom_act_3"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["boulder_act_1"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["cap_set_hitbox"], + "802f19c8": ["cap_despawn"], + "802f1a10": ["cap_check_quicksand"], + "802f1bb8": ["cap_sink_quicksand"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["cap_scale_vertically"], + "802f1e5c": ["wing_vanish_cap_act_0"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["metal_cap_act_0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["normal_cap_set_save_flags"], + "802f2284": ["normal_cap_act_0"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["spawn_star"], + "802f2b88": ["spawn_default_star"], + "802f2bd4": ["spawn_red_coin_cutscene_star"], + "802f2c24": ["spawn_no_exit_star"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["rolling_log_roll_log"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["volcano_act_1"], + "802f39b4": ["volcano_act_3"], + "802f3a30": ["bhv_volcano_trap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["one_up_loop_in_air"], + "802f3ea8": ["pole_1up_move_towards_mario"], + "802f401c": ["one_up_move_away_from_mario"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["sliding_1up_move"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["controllable_platform_act_1"], + "802f4ce0": ["controllable_platform_act_2"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["controllable_platform_hit_wall"], + "802f5068": ["controllable_platform_check_walls"], + "802f52c0": ["controllable_platform_shake_on_wall_hit"], + "802f547c": ["controllable_platform_tilt_from_mario"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["small_breakable_box_spawn_dust"], + "802f5e44": ["small_breakable_box_act_move"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["floating_platform_find_home_y"], + "802f665c": ["floating_platform_act_0"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f6eb0": ["manta_ray_move"], + "802f7068": ["manta_ray_act_spawn_ring"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["spawn_treasure_chest"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["bhv_yoshi_loop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["mr_blizzard_spawn_white_particles"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["geo_snufit_move_mask"], + "8030d9ac": ["geo_snufit_scale_body"], + "8030da14": ["snufit_act_idle"], + "8030db38": ["snufit_act_shoot"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_lower_prio"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031c200": ["L8031C200"], + "8031c23c": ["L8031C23C"], + "8031c298": ["L8031C298"], + "8031c2dc": ["L8031C2DC"], + "8031c328": ["L8031C328"], + "8031c36c": ["L8031C36C"], + "8031c3bc": ["L8031C3BC"], + "8031c3e8": ["L8031C3E8"], + "8031c454": ["L8031C454"], + "8031c4a4": ["L8031C4A4"], + "8031c5c8": ["L8031C5C8"], + "8031c698": ["L8031C698"], + "8031c6a0": ["L8031C6A0"], + "8031cbe0": ["L8031CBE0"], + "8031cbec": ["L8031CBEC"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d144": ["L_U_8031D144"], + "8031d1f8": ["L_U_8031D1F8"], + "8031d234": ["L_U_8031D234"], + "8031d26c": ["L_U_8031D26C"], + "8031d2b4": ["L_U_8031D2B4"], + "8031d2c4": ["L_U_8031D2C4"], + "8031d31c": ["L_U_8031D31C"], + "8031d344": ["L_U_8031D344"], + "8031d354": ["L_U_8031D354"], + "8031d370": ["L_U_8031D370"], + "8031d3a8": ["L_U_8031D3A8"], + "8031d3c4": ["L_U_8031D3C4"], + "8031d3d4": ["L_U_8031D3D4"], + "8031d3e4": ["L_U_8031D3E4"], + "8031d400": ["L_U_8031D400"], + "8031d424": ["L_U_8031D424"], + "8031d44c": ["L_U_8031D44C"], + "8031d474": ["L_U_8031D474"], + "8031d498": ["L_U_8031D498"], + "8031d4bc": ["L_U_8031D4BC"], + "8031d4d4": ["L_U_8031D4D4"], + "8031d4f0": ["L_U_8031D4F0"], + "8031d500": ["L_U_8031D500"], + "8031d51c": ["L_U_8031D51C"], + "8031d538": ["L_U_8031D538"], + "8031d56c": ["L_U_8031D56C"], + "8031d5a0": ["L_U_8031D5A0"], + "8031d5b4": ["L_U_8031D5B4"], + "8031d5d4": ["L_U_8031D5D4"], + "8031d5e4": ["L_U_8031D5E4"], + "8031d640": ["L_U_8031D640"], + "8031d678": ["L_U_8031D678"], + "8031d6c4": ["L_U_8031D6C4"], + "8031d6d4": ["L_U_8031D6D4"], + "8031d6f4": ["L_U_8031D6F4"], + "8031d718": ["L_U_8031D718"], + "8031d728": ["L_U_8031D728"], + "8031d73c": ["L_U_8031D73C"], + "8031d7b8": ["L_U_8031D7B8"], + "8031d7e8": ["L_U_8031D7E8"], + "8031d7f8": ["L_U_8031D7F8"], + "8031d814": ["L_U_8031D814"], + "8031d830": ["L_U_8031D830"], + "8031d87c": ["L_U_8031D87C"], + "8031d898": ["L_U_8031D898"], + "8031d8f8": ["L_U_8031D8F8"], + "8031d900": ["L_U_8031D900"], + "8031d930": ["L_U_8031D930"], + "8031d94c": ["L_U_8031D94C"], + "8031d974": ["L_U_8031D974"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e578": ["sequence_player_fade_out_internal"], + "8031e5c0": ["func_8031D690"], + "8031e60c": ["func_8031D6E4"], + "8031e6a4": ["func_8031D7B0"], + "8031e710": ["func_8031D838"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031eb30": ["process_sound_request"], + "8031edec": ["process_all_sound_requests"], + "8031ee70": ["func_8031DFE8"], + "8031ef6c": ["func_8031E0E4"], + "8031eff4": ["func_8031E16C"], + "8031f810": ["get_sound_pan"], + "8031f96c": ["get_sound_dynamics"], + "8031fb20": ["get_sound_freq_scale"], + "8031fbe8": ["get_sound_reverb"], + "8031fd84": ["audio_signal_game_loop_tick"], + "8031fdac": ["update_game_sound"], + "80320544": ["play_sequence"], + "80320678": ["sequence_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "80320734": ["fade_channel_volume_scale"], + "8032080c": ["func_8031F96C"], + "803208ec": ["process_level_music_dynamics"], + "80320a4c": ["L8031FBAC"], + "80320a8c": ["L8031FBEC"], + "80320acc": ["L8031FC2C"], + "80320b0c": ["L8031FC6C"], + "80320b4c": ["L8031FCAC"], + "80320b8c": ["L8031FCEC"], + "80320bcc": ["L8031FD2C"], + "80320bf4": ["L8031FD54"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["func_8031FFB4"], + "80320ec4": ["sequence_player_unlower"], + "80320f68": ["func_803200E4"], + "803210d4": ["set_sound_disabled"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["func_803205E8"], + "80321584": ["func_803206F8"], + "8032171c": ["func_80320890"], + "8032174c": ["sound_banks_disable"], + "803217a8": ["disable_all_sequence_players"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["func_80320A4C"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["sNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["D_8032C6A0"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["sWarpCheckpointActive"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["sWarpBhvSpawnTable"], + "8032de4c": ["sSpawnTypeFromWarpBhv"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b5c": ["sFishActions"], + "80330b68": ["sFishGroupActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["gOpenableGrills"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["sWaterSplashDropletParams"], + "80330d30": ["gShallowWaterSplashDropletParams"], + "80330d54": ["sWaterDropletFishParams"], + "80330d78": ["gShallowWaterWaveDropletParams"], + "80330d9c": ["sStrongWindParticleHitbox"], + "80330dac": ["sSLWalkingPenguinErraticSteps"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["sHmcPaintings"], + "80331308": ["sInsideCastlePaintings"], + "80331344": ["sTtmPaintings"], + "8033134c": ["sPaintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b34": ["D_80331A24"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["gAreaEchoLevel"], + "80333138": ["D_80332028"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sPlayer0CurSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["D_803320A4"], + "803331c0": ["D_803320B0"], + "803331cc": ["D_803320BC"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gDefaultSoundArgs"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["D_80332110"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["D_8033211C"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["gAudioInitPoolSize"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358f0": ["piMgrArgs"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["_osContInitialized"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["D_80334894"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["D_803348B0"], + "80335a20": ["D_80334910"], + "80335a24": ["D_80334914"], + "80335a28": ["D_80334918"], + "80335a2c": ["D_8033491C"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80338e60": ["jtbl_80337C90"], + "80338e84": ["jtbl_80337CB4"], + "80338eac": ["jtbl_80337CDC"], + "80338ec0": ["jtbl_80337D08"], + "80338fbc": ["jtbl_80337E04"], + "8033978c": ["jtbl_80338418"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gNeverEnteredCastle"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["sFloorAlignMatrix"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gCurBhvCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361280": ["D_8035FF10"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["gPaintingMesh"], + "80361314": ["gPaintingTriNorms"], + "80361318": ["gRipplingPainting"], + "8036131c": ["gDddPaintingStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["gSoundBanks"], + "80364b78": ["D_80363808"], + "80364b82": ["D_80363812"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["D_80363830"], + "80364c20": ["D_803638B0"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["_osContCmdBuf"], + "8036708c": ["_osContPifCtrl"], + "80367090": ["_osLastSentSiCmd"], + "80367091": ["_osContNumControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["__osViIntrCount"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": [".", "_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["random_u16"], + "80383cb4": ["random_float"], + "80383d1c": ["random_sign"], + "80383d68": ["obj_update_gfx_pos_and_angle"], + "80385bf0": ["stub_behavior_script_2"], + "80385c00": ["cur_obj_update"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["small_water_splash_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["idle_water_wave_geo"], + "17000168": ["wave_trail_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["amp_geo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleParticleSpawner"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvPlungeBubble"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvVertStarParticleSpawner"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvHorStarParticleSpawner"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvTriangleParticleSpawner"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvBreathParticleSpawner"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvMistCircParticleSpawner"], + "13000e3c": ["bhvDirtParticleSpawner"], + "13000e58": ["bhvSnowParticleSpawner"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFireParticleSpawner"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvLeafParticleSpawner"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvFish2"], + "1300214c": ["bhvFish3"], + "1300215c": ["bhvLargeFishGroup"], + "13002178": ["bhvFish"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMistParticleSpawner"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSparkleParticleSpawner"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDroplet"], + "13002c7c": ["bhvWaterDropletSplash"], + "13002cb0": ["bhvBubbleSplash"], + "13002ce0": ["bhvIdleWaterWave"], + "13002d28": ["bhvObjectWaterSplash"], + "13002d50": ["bhvShallowWaterWave"], + "13002d7c": ["bhvShallowWaterSplash"], + "13002db0": ["bhvObjectWaveTrail"], + "13002dc0": ["bhvWaveTrail"], + "13002e04": ["bhvTinyStrongWindParticle"], + "13002e20": ["bhvStrongWindParticle"], + "13002e3c": ["bhvSLSnowmanWind"], + "13002e58": ["bhvSLWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvInstantActiveWarp"], + "13002f64": ["bhvAirborneWarp"], + "13002f68": ["bhvHardAirKnockBackWarp"], + "13002f6c": ["bhvSpinAirborneCircleWarp"], + "13002f70": ["bhvDeathWarp"], + "13002f74": ["bhvSpinAirborneWarp"], + "13002f78": ["bhvFlyingWarp"], + "13002f7c": ["bhvPaintingStarCollectWarp"], + "13002f80": ["bhvPaintingDeathWarp"], + "13002f84": ["bhvAirborneDeathWarp"], + "13002f88": ["bhvAirborneStarCollectWarp"], + "13002f8c": ["bhvLaunchStarCollectWarp"], + "13002f90": ["bhvLaunchDeathWarp"], + "13002f94": ["bhvSwimmingWarp"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 13": { - "80000000": "EXCEPTION_TLB_MISS", - "a4000000": "SP_DMEM", - "a40004c0": "SP_DMEM_UNK0", - "a4000774": "SP_DMEM_UNK1", - "a4001000": "SP_IMEM", - "a4040010": "SP_STATUS_REG", - "a4080000": "SP_PC", - "a4300000": "MI_MODE_REG", - "a4300004": "MI_VERSION_REG", - "a4300008": "MI_INTR_REG", - "a430000c": "MI_INTR_MASK_REG", - "a4400010": "VI_CURRENT_REG", - "a450000c": "AI_STATUS_REG", - "a4600000": "PI_DRAM_ADDR_REG", - "a4600004": "PI_CART_ADDR_REG", - "a460000c": "PI_WR_LEN_REG", - "a4600010": "PI_STATUS_REG", - "a4600014": "PI_BSD_DOM1_LAT_REG", - "a4600018": "PI_BSD_DOM1_PWD_REG", - "a460001c": "PI_BSD_DOM1_PGS_REG", - "a4600020": "PI_BSD_DOM1_RLS_REG", - "a4700000": "RI_MODE_REG", - "a4700010": "RI_REFRESH_REG", - "a4800018": "SI_STATUS_REG", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "00000000": "__romPos", - "04000000": "_bootSegmentStart", - "007cc6c0": "_bootSegmentRomStart", - "04000040": "ipl3_entry", - "04000b70": "ipl3_font", - "04001000": "_bootSegmentEnd", - "007cd6c0": "_bootSegmentRomEnd", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "80246000": "_mainSegmentStart", - "007cc6c0": "_mainSegmentRomStart", - "80246000": "entry_point", - "80246050": "handle_debug_key_sequences", - "80246170": "unknown_main_func", - "802461cc": "stub_main_1", - "802461dc": "stub_main_2", - "802461ec": "stub_main_3", - "802461fc": "setup_mesg_queues", - "802462e0": "alloc_pool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "send_sp_task_message", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "send_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "main_func", - "80246e70": "my_rdp_init", - "802471a4": "my_rsp_init", - "80247284": "clear_z_buffer", - "802473c8": "display_frame_buffer", - "802474b8": "clear_frame_buffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_task_structure", - "80247ccc": "init_render_image", - "80247d14": "end_master_display_list", - "80247db4": "draw_reset_bars", - "80247f08": "rendering_init", - "80247fdc": "config_gfx_pool", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "reset_volume", - "80248c58": "lower_background_noise", - "80248ce8": "raise_background_noise", - "80248d78": "disable_background_sound", - "80248dc0": "enable_background_sound", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "fadeout_music", - "8024927c": "fadeout_level_music", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "80249494": "play_menu_sounds_extra", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_pause", - "80249764": "set_play_mode", - "8024978c": "warp_special", - "802497b8": "fade_into_special_warp", - "8024982c": "stub_level_update_1", - "8024983c": "load_level_init_text", - "8024995c": "init_door_warp", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "warp_area", - "8024a18c": "warp_level", - "8024a1d8": "warp_credits", - "8024a374": "check_instant_warp", - "8024a584": "music_changed_through_warp", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_obj_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_normal_cap_on_head", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "should_push_or_pull_door", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_strong_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "mario_can_talk", - "8024ff04": "check_read_sign", - "80250098": "check_npc_talk", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "stub_mario_step_1", - "802550b0": "stub_mario_step_2", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "bhv_end_peach_loop", - "802570dc": "bhv_end_toad_loop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025bc80": "generate_yellow_sparkles", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "climb_up_ledge", - "8025f560": "update_ledge_climb_camera", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "check_common_idle_cancels", - "80260aac": "check_common_hold_idle_cancels", - "80260cb4": "act_idle", - "80260f94": "play_anim_sound", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "stopping_step", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "act_hold_butt_slide_stop", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "act_shockwave_bounce", - "80262bc4": "landing_step", - "80262c34": "check_common_landing_cancels", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "act_hold_jump_land_stop", - "802631f0": "act_hold_freefall_land_stop", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "check_common_stationary_cancels", - "80263898": "mario_execute_stationary_action", - "80263e60": "tilt_body_running", - "80263ee4": "play_step_sound", - "80264024": "align_with_floor", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "anim_and_audio_for_walk", - "80265b1c": "anim_and_audio_for_hold_walk", - "80265d90": "anim_and_audio_for_heavy_walk", - "80265df8": "push_or_sidle_wall", - "80266038": "tilt_body_walking", - "802661cc": "tilt_body_ground_shell", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "tilt_body_butt_slide", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "play_knockback_sound", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "check_wall_kick", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_envfx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhv_toad_message_loop", - "80276910": "bhv_toad_message_init", - "80276bb8": "bhv_unlock_door_star_init", - "80276ccc": "bhv_unlock_door_star_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "load_segment_decompress_heap", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "func_80278A78", - "80279084": "load_patchable_table", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "override_viewport_and_clip", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "area_get_warp_node_from_params", - "8027aa74": "load_obj_warp_nodes", - "8027ab04": "clear_areas", - "8027ad74": "clear_area_graph_nodes", - "8027ae44": "load_area", - "8027af48": "unload_area", - "8027afbc": "load_mario_area", - "8027b038": "unload_mario_area", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "stub_camera_2", - "80287dd4": "stub_camera_3", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "stub_camera_4", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "spawn_child_obj_relative", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_obj_list_processor_1", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "geo_update_projectile_pos_from_parent", - "8029d924": "geo_update_layer_transparency", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "obj_update_pos_from_parent_transformation", - "8029dda8": "obj_apply_scale_to_matrix", - "8029de80": "create_transformation_from_matrices", - "8029e1b0": "obj_set_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "cur_obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "cur_obj_rotate_yaw_toward", - "8029e694": "obj_angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "obj_set_parent_relative_pos", - "8029e914": "obj_set_pos", - "8029e96c": "obj_set_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "spawn_obj_with_transform_flags", - "8029eb04": "spawn_water_droplet", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "cur_obj_move_using_vel", - "8029f0c8": "obj_copy_graph_y_offset", - "8029f0e0": "obj_copy_pos_and_angle", - "8029f120": "obj_copy_pos", - "8029f148": "obj_copy_angle", - "8029f188": "obj_set_gfx_pos_from_pos", - "8029f1b0": "obj_init_animation", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "obj_apply_scale_to_transform", - "8029f3a8": "obj_copy_scale", - "8029f3d0": "obj_scale_xyz", - "8029f404": "obj_scale", - "8029f430": "cur_obj_scale", - "8029f464": "cur_obj_init_animation", - "8029f4b4": "cur_obj_init_animation_with_sound", - "8029f514": "cur_obj_init_animation_with_accel_and_sound", - "8029f59c": "obj_init_animation_with_sound", - "8029f600": "cur_obj_enable_rendering_and_become_tangible", - "8029f620": "cur_obj_enable_rendering", - "8029f644": "cur_obj_disable_rendering_and_become_intangible", - "8029f66c": "cur_obj_disable_rendering", - "8029f694": "cur_obj_unhide", - "8029f6bc": "cur_obj_hide", - "8029f6e0": "cur_obj_set_pos_relative", - "8029f7d8": "cur_obj_set_pos_relative_to_parent", - "8029f820": "cur_obj_enable_rendering_2", - "8029f848": "cur_obj_unused_init_on_floor", - "8029f8ec": "obj_set_face_angle_to_move_angle", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "cur_obj_nearest_object_with_behavior", - "8029f998": "cur_obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "cur_obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "cur_obj_find_nearby_held_actor", - "8029fdb4": "cur_obj_change_action", - "8029fe00": "cur_obj_set_vel_from_mario_vel", - "8029fe6c": "cur_obj_reverse_animation", - "8029fea4": "cur_obj_extend_animation_if_at_end", - "8029ff04": "cur_obj_check_if_near_animation_end", - "8029ffa4": "cur_obj_check_if_at_animation_end", - "802a0008": "cur_obj_check_anim_frame", - "802a0050": "cur_obj_check_anim_frame_in_range", - "802a00ac": "cur_obj_check_frame_prior_current_frame", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "cur_obj_set_y_vel_and_animation", - "802a01d8": "cur_obj_unrender_and_reset_state", - "802a0380": "cur_obj_get_thrown_or_placed", - "802a0474": "cur_obj_get_dropped", - "802a04c0": "cur_obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "cur_obj_clear_interact_status_flag", - "802a0568": "obj_mark_for_deletion", - "802a057c": "cur_obj_disable", - "802a05b4": "cur_obj_become_intangible", - "802a05d4": "cur_obj_become_tangible", - "802a05f0": "obj_become_tangible", - "802a0604": "cur_obj_update_floor_height", - "802a064c": "cur_obj_update_floor_height_and_get_floor", - "802a079c": "cur_obj_apply_drag_xz", - "802a0e68": "cur_obj_move_y", - "802a113c": "cur_obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "cur_obj_move_xz_using_fvel_and_yaw", - "802a12a4": "cur_obj_move_y_with_terminal_vel", - "802a1308": "cur_obj_compute_vel_xz", - "802a1370": "increment_velocity_toward_range", - "802a1424": "obj_check_if_collided_with_object", - "802a148c": "cur_obj_set_behavior", - "802a14c4": "obj_set_behavior", - "802a14fc": "cur_obj_has_behavior", - "802a1554": "obj_has_behavior", - "802a15ac": "cur_obj_lateral_dist_from_mario_to_home", - "802a1634": "cur_obj_lateral_dist_to_home", - "802a16ac": "cur_obj_outside_home_square", - "802a1774": "cur_obj_outside_home_rectangle", - "802a184c": "cur_obj_set_pos_to_home", - "802a188c": "cur_obj_set_pos_to_home_and_stop", - "802a18dc": "cur_obj_shake_y", - "802a1930": "cur_obj_start_cam_event", - "802a1960": "set_mario_interact_hoot_if_in_range", - "802a19ac": "obj_set_billboard", - "802a19c8": "cur_obj_set_hitbox_radius_and_height", - "802a19f0": "cur_obj_set_hurtbox_radius_and_height", - "802a1b34": "obj_spawn_loot_blue_coins", - "802a1b8c": "obj_spawn_loot_yellow_coins", - "802a1bdc": "cur_obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "cur_obj_abs_y_dist_to_home", - "802a1cc4": "cur_obj_advance_looping_anim", - "802a1f3c": "cur_obj_resolve_wall_collisions", - "802a2320": "cur_obj_update_floor_and_walls", - "802a2348": "cur_obj_move_standard", - "802a25b4": "cur_obj_move_using_vel_and_gravity", - "802a2644": "cur_obj_move_using_fvel_and_gravity", - "802a2674": "obj_set_pos_relative", - "802a2748": "cur_obj_angle_to_home", - "802a27b0": "obj_set_gfx_pos_at_obj_pos", - "802a2804": "obj_translate_local", - "802a2930": "obj_build_transform_from_pos_and_angle", - "802a2a18": "obj_set_throw_matrix_from_transform", - "802a2a84": "obj_build_transform_relative_to_parent", - "802a2b28": "obj_create_transform_from_self", - "802a2b6c": "cur_obj_rotate_move_angle_using_vel", - "802a2bc4": "cur_obj_rotate_face_angle_using_vel", - "802a2c1c": "cur_obj_set_face_angle_to_move_angle", - "802a2c5c": "cur_obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "obj_scale_random", - "802a2fc0": "obj_translate_xyz_random", - "802a308c": "obj_translate_xz_random", - "802a31e0": "cur_obj_set_pos_via_transform", - "802a3268": "cur_obj_reflect_move_angle_off_wall", - "802a32ac": "cur_obj_spawn_particles", - "802a34a4": "obj_set_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "cur_obj_wait_then_blink", - "802a3754": "cur_obj_is_mario_ground_pounding_platform", - "802a37ac": "spawn_mist_particles", - "802a37dc": "spawn_mist_particles_with_sound", - "802a3818": "cur_obj_push_mario_away", - "802a390c": "cur_obj_push_mario_away_from_cylinder", - "802a399c": "bhv_dust_smoke_loop", - "802a3a4c": "cur_obj_set_direction_table", - "802a3a88": "cur_obj_progress_direction_table", - "802a3b28": "stub_obj_helpers_3", - "802a3b40": "cur_obj_scale_over_time", - "802a3c18": "cur_obj_set_pos_to_home_with_debug", - "802a3cec": "stub_obj_helpers_4", - "802a3cfc": "cur_obj_is_mario_on_platform", - "802a3d40": "cur_obj_shake_y_until", - "802a3dd4": "cur_obj_move_up_and_down", - "802a3e30": "cur_obj_call_action_function", - "802a3ef8": "spawn_base_star_with_no_lvl_exit", - "802a3f24": "bit_shift_left", - "802a3f48": "cur_obj_mario_far_away", - "802a404c": "is_mario_moving_fast_or_in_air", - "802a40b8": "is_item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "cur_obj_enable_rendering_if_mario_in_room", - "802a4360": "cur_obj_set_hitbox_and_die_if_attacked", - "802a4440": "obj_explode_and_spawn_coins", - "802a44f4": "obj_set_collision_data", - "802a452c": "cur_obj_if_hit_wall_bounce_away", - "802a4564": "cur_obj_hide_if_mario_far_away_y", - "802a45e4": "geo_offset_klepto_held_object", - "802a462c": "geo_offset_klepto_debug", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "cur_obj_can_mario_activate_textbox", - "802a48bc": "cur_obj_can_mario_activate_textbox_2", - "802a4960": "cur_obj_update_dialog", - "802a4be4": "cur_obj_update_dialog_with_cutscene", - "802a4f04": "cur_obj_has_model", - "802a4f58": "cur_obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "cur_obj_shake_screen", - "802a513c": "obj_attack_collided_from_other_object", - "802a51ac": "cur_obj_was_attacked_or_ground_pounded", - "802a5228": "obj_copy_behavior_params", - "802a5248": "cur_obj_init_animation_and_anim_frame", - "802a5288": "cur_obj_init_animation_and_check_if_near_end", - "802a52c4": "cur_obj_init_animation_and_extend_if_at_end", - "802a52f8": "cur_obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "cur_obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "cur_obj_check_interacted", - "802a5524": "cur_obj_spawn_loot_blue_coin", - "802a5588": "cur_obj_spawn_star_at_y_offset", - "802a5620": "star_door_update_pos", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "mr_i_piranha_particle_act_0", - "802a5a44": "mr_i_piranha_particle_act_1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "spawn_mr_i_particle", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "mr_i_act_3", - "802a6518": "mr_i_act_2", - "802a68a0": "mr_i_act_1", - "802a6ad8": "mr_i_act_0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "cap_switch_act_0", - "802a7020": "cap_switch_act_1", - "802a708c": "cap_switch_act_2", - "802a7160": "cap_switch_act_3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "geo_update_held_mario_pos", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "king_bobomb_act_0", - "802a7384": "mario_is_far_below_object", - "802a73d8": "king_bobomb_act_2", - "802a7598": "king_bobomb_act_3", - "802a7804": "king_bobomb_act_1", - "802a78d8": "king_bobomb_act_6", - "802a7a60": "king_bobomb_act_7", - "802a7b1c": "king_bobomb_act_8", - "802a7b5c": "king_bobomb_act_4", - "802a7d14": "king_bobomb_act_5", - "802a7fbc": "king_bobomb_move", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "scale_bubble_random", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "scale_bubble_sin", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "opened_cannon_act_0", - "802a8f40": "opened_cannon_act_4", - "802a9114": "opened_cannon_act_6", - "802a92fc": "opened_cannon_act_5", - "802a93f8": "opened_cannon_act_1", - "802a9440": "opened_cannon_act_2", - "802a9460": "opened_cannon_act_3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "common_anchor_mario_behavior", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "unknown_chuckya_function", - "802a98c4": "approach_forward_vel", - "802a9994": "chuckya_act_0", - "802a9d08": "chuckya_act_1", - "802a9f54": "chuckya_act_3", - "802a9fc8": "chuckya_act_2", - "802aa02c": "chuckya_move", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "check_mario_attacking", - "802aa3c8": "init_kickable_board_rock", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "set_koopa_shell_underwater_hitbox", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "bhv_fading_warp_loop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "spawn_mist_particles_variable", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "set_sparkle_spawn_star_hitbox", - "802ab060": "set_home_to_mario", - "802ab158": "set_y_home_to_pos", - "802ab18c": "slow_star_rotation", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_coin_init", - "802ab860": "bhv_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "spawn_coin_in_formation", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "coin_inside_boo_act_1", - "802ac15c": "coin_inside_boo_act_0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "door_animation_and_reset", - "802ac958": "set_door_camera_event", - "802ac9d0": "play_door_open_noise", - "802aca6c": "play_warp_door_open_noise", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "grindel_thwomp_act_4", - "802ad10c": "grindel_thwomp_act_2", - "802ad1a4": "grindel_thwomp_act_3", - "802ad238": "grindel_thwomp_act_1", - "802ad2d0": "grindel_thwomp_act_0", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "tumbling_bridge_act_1", - "802ad76c": "tumbling_bridge_act_2", - "802ad7f4": "tumbling_bridge_act_3", - "802ad828": "tumbling_bridge_act_0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "elevator_starting_shake", - "802ad8f0": "elevator_act_0", - "802ada4c": "elevator_act_1", - "802adb88": "elevator_act_2", - "802adce4": "elevator_act_4", - "802add70": "elevator_act_3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "spawn_mist_from_global", - "802ae360": "bhv_ground_sand_init", - "802ae394": "spawn_smoke_with_velocity", - "802ae45c": "clear_particle_flags", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "spawn_wind_particles", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "spawn_and_init_wf_platforms", - "802b039c": "spawn_wf_platform_group", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "square_plat_set_yaw_until_timer", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "check_if_moving_over_floor", - "802b15e8": "bhv_pushable_loop", - "802b1714": "breakable_box_init", - "802b17f4": "hidden_breakable_box_actions", - "802b19d8": "hidden_unbreakable_box_actions", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "geo_move_mario_part_from_parent", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "heave_ho_act_1", - "802b1e6c": "heave_ho_act_2", - "802b1ff4": "heave_ho_act_3", - "802b20a0": "heave_ho_act_0", - "802b2154": "heave_ho_move", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "jumping_box_act_0", - "802b27d8": "jumping_box_act_1", - "802b2824": "jumping_box_free_update", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "spawn_sparkle_particles", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "arc_to_goal_pos", - "802b3250": "grand_star_zero_velocity", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "bullet_bill_act_0", - "802b38b8": "bullet_bill_act_1", - "802b394c": "bullet_bill_act_2", - "802b3b08": "bullet_bill_act_3", - "802b3b24": "bullet_bill_act_4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "bowser_tail_anchor_act_0", - "802b3cdc": "bowser_tail_anchor_act_1", - "802b3d10": "bowser_tail_anchor_act_2", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "bowser_spawn_shockwave", - "802b41fc": "bowser_bounce", - "802b4288": "bowser_set_anim_look_up_and_walk", - "802b4300": "bowser_set_anim_slow_gait", - "802b4368": "bowser_set_anim_look_down", - "802b43dc": "bowser_initialize_action", - "802b4478": "bowser_act_text_wait", - "802b44bc": "bowser_act_intro_walk", - "802b45f4": "bowser_bitdw_act_controller", - "802b473c": "bowser_bitfs_act_controller", - "802b48d4": "bowser_general_bits_act_controller", - "802b4a1c": "bowser_set_act_jump", - "802b4a3c": "bowser_bits_act_controller", - "802b4af4": "bowser_reset_fallen_off_stage", - "802b4bac": "bowser_act_unused_slow_walk", - "802b4be8": "bowser_act_default", - "802b4ca4": "bowser_act_breath_fire", - "802b4d14": "bowser_act_walk_to_mario", - "802b4f00": "bowser_act_teleport", - "802b5104": "bowser_act_spit_fire_into_sky", - "802b5218": "bowser_act_hit_mine", - "802b53f4": "bowser_set_anim_in_air", - "802b5444": "bowser_land", - "802b5554": "bowser_short_second_hop", - "802b55cc": "bowser_act_jump", - "802b5798": "bowser_act_jump_towards_mario", - "802b58bc": "bowser_act_hit_edge", - "802b59cc": "bowser_act_spit_fire_onto_floor", - "802b5aec": "bowser_turn_on_timer", - "802b5c00": "bowser_act_turn_from_edge", - "802b5c40": "bowser_act_charge_mario", - "802b5f6c": "bowser_check_hit_mine", - "802b5fec": "bowser_act_thrown_dropped", - "802b611c": "bowser_set_goal_invisible", - "802b6190": "bowser_act_jump_onto_stage", - "802b6568": "bowser_act_dance", - "802b65d0": "bowser_spawn_grand_star_key", - "802b6670": "bowser_fly_back_dead", - "802b6730": "bowser_dead_bounce", - "802b67d4": "bowser_dead_wait_for_mario", - "802b6878": "bowser_dead_twirl_into_trophy", - "802b6a10": "bowser_dead_hide", - "802b6a78": "bowser_dead_not_bits_end", - "802b6bac": "bowser_dead_bits_end", - "802b6cf0": "bowser_act_dead", - "802b6e40": "bowser_tilt_platform", - "802b6ee0": "bowser_act_ride_tilting_platform", - "802b711c": "bowser_check_fallen_off_stage", - "802b71e4": "bowser_free_update", - "802b72d4": "bowser_held_update", - "802b7418": "bowser_thrown_dropped_update", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "geo_update_body_rot_from_parent", - "802b7a20": "bowser_open_eye_switch", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "geo_bits_bowser_coloring", - "802b7e68": "falling_bowser_plat_act_0", - "802b7ef0": "falling_bowser_plat_act_1", - "802b8024": "falling_bowser_plat_act_2", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "bowser_flame_despawn", - "802b8434": "bowser_flame_should_despawn", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "bowser_flame_move", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_movement_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "vec3f_copy_2", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "checkerboard_plat_act_move_y", - "802b9af8": "checkerboard_plat_act_rotate", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "water_level_pillar_undrained", - "802ba13c": "water_level_pillar_drained", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "geo_scale_bowser_key", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_cap_ukiki_reset", - "802ba868": "is_cap_ukiki_and_mario_has_normal_cap_on_head", - "802ba8c4": "geo_update_projectile_pos_from_parent_copy", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "cap_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "lll_octagonal_mesh_move", - "802bbfd8": "lll_octagonal_mesh_find_y_offset", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "fire_bar_spawn_flames", - "802bc4f4": "fire_bar_act_0", - "802bc538": "fire_bar_act_1", - "802bc590": "fire_bar_act_2", - "802bc5fc": "fire_bar_act_3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "hexagonal_ring_spawn_flames", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "sinking_rectangular_plat_actions", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "koopa_shell_spawn_water_drop", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "koopa_shell_spawn_sparkles", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "tox_box_shake_screen", - "802bd91c": "tox_box_move", - "802bdb04": "tox_box_act_4", - "802bdb3c": "tox_box_act_5", - "802bdb74": "tox_box_act_6", - "802bdbac": "tox_box_act_7", - "802bdbe4": "tox_box_act_1", - "802bdc7c": "tox_box_act_2", - "802bdcc8": "tox_box_act_3", - "802bdd14": "tox_box_act_0", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "set_obj_anim_with_accel_and_sound", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "tuxies_mother_act_2", - "802bef8c": "tuxies_mother_act_1", - "802bf1d8": "tuxies_mother_act_0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "small_penguin_dive_with_mario", - "802bf474": "small_penguin_act_2", - "802bf57c": "small_penguin_act_1", - "802bf648": "small_penguin_act_3", - "802bf6e4": "small_penguin_act_4", - "802bf760": "small_penguin_act_0", - "802bf90c": "small_penguin_act_5", - "802bfa14": "small_penguin_free_actions", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bff3c": "bhv_fish_spawner_loop", - "802c0768": "bhv_fish_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "bub_spawner_act_0", - "802c0b50": "bub_spawner_act_1", - "802c0ba4": "bub_spawner_act_2", - "802c0bc4": "bub_spawner_act_3", - "802c0be0": "bhv_bub_spawner_loop", - "802c0c0c": "bub_move_vertically", - "802c0cd4": "bub_act_0", - "802c0d44": "bub_act_1", - "802c0f90": "bub_act_2", - "802c1204": "bhv_bub_loop", - "802c12c0": "bhv_rotating_exclamation_box_loop", - "802c1308": "exclamation_box_act_0", - "802c13ec": "exclamation_box_act_1", - "802c14b0": "exclamation_box_act_2", - "802c15b8": "exclamation_box_act_3", - "802c17bc": "exclamation_box_spawn_contents", - "802c18d0": "exclamation_box_act_4", - "802c1988": "exclamation_box_act_5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_boss_spawned_bridge_loop", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "bhv_pole_base_loop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "update_angle_from_move_flags", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "whomp_play_sfx_from_pound_animation", - "802c6d6c": "whomp_act_0", - "802c6ec8": "whomp_act_7", - "802c6fb0": "whomp_act_1", - "802c710c": "whomp_act_2", - "802c7254": "whomp_act_3", - "802c72b4": "whomp_act_4", - "802c7380": "whomp_act_5", - "802c7428": "king_whomp_on_ground", - "802c75fc": "whomp_on_ground", - "802c76d4": "whomp_act_6", - "802c7858": "whomp_act_8", - "802c7998": "whomp_act_9", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_spawn_droplets", - "802c7b14": "bhv_water_droplet_loop", - "802c7cac": "bhv_idle_water_wave_loop", - "802c7d40": "bhv_water_droplet_splash_init", - "802c7d90": "bhv_bubble_splash_init", - "802c7dfc": "bhv_shallow_water_splash_init", - "802c7e5c": "bhv_wave_trail_shrink", - "802c7f98": "bhv_strong_wind_particle_loop", - "802c81b4": "cur_obj_spawn_strong_wind_particles", - "802c834c": "bhv_sl_snowman_wind_loop", - "802c863c": "bhv_sl_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "debug_print_obj_collision", - "802c8fe4": "detect_object_hitbox_overlap", - "802c91ec": "detect_object_hurtbox_overlap", - "802c9388": "clear_object_collision", - "802c93f8": "check_collision_in_list", - "802c94ac": "check_player_object_collision", - "802c95b4": "check_pushable_object_collision", - "802c9630": "check_destructive_object_collision", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "cur_obj_play_sound_1", - "802ca1e0": "cur_obj_play_sound_2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "stub_debug_1", - "802ca380": "stub_debug_2", - "802ca390": "stub_debug_3", - "802ca3a0": "stub_debug_4", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cb0b0": "stub_debug_5", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb564": "debug_enemy_unknown", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stop_other_paintings", - "802d2a74": "painting_mario_y", - "802d2b08": "painting_mario_z", - "802d2b84": "painting_ripple_y", - "802d2c40": "painting_nearest_4th", - "802d2d80": "painting_mario_x", - "802d2dfc": "painting_ripple_x", - "802d2eb8": "painting_state", - "802d2ffc": "wall_painting_proximity_idle", - "802d319c": "wall_painting_proximity_rippling", - "802d327c": "wall_painting_continuous_idle", - "802d341c": "wall_painting_continuous_rippling", - "802d34fc": "floor_painting_proximity_idle", - "802d36ac": "floor_painting_proximity_rippling", - "802d379c": "floor_painting_continuous_idle", - "802d393c": "floor_painting_continuous_rippling", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_state", - "802d3cec": "calculate_ripple_at_point", - "802d3e6c": "ripple_if_movable", - "802d3ee4": "painting_generate_mesh", - "802d404c": "painting_calculate_triangle_normals", - "802d43f8": "normalize_component", - "802d44bc": "painting_average_vertex_normals", - "802d47d0": "render_painting", - "802d4edc": "painting_model_view_transform", - "802d50dc": "painting_ripple_image", - "802d5354": "painting_ripple_env_mapped", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "move_ddd_painting", - "802d58e4": "set_painting_layer", - "802d593c": "display_painting", - "802d59a8": "wall_painting_update", - "802d5aa0": "floor_painting_update", - "802d5b98": "geo_painting_draw", - "802d5d0c": "geo_painting_update", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_string_color", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_courses_and_castle", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "coin_step", - "802e5e6c": "moving_coin_flicker", - "802e5ea4": "coin_collected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "blue_coin_sliding_away_from_mario", - "802e63ec": "blue_coin_sliding_slow_down", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "bobomb_spawn_coin", - "802e6af8": "bobomb_act_explode", - "802e6bd4": "bobomb_check_interactions", - "802e6cf0": "bobomb_act_patrol", - "802e6dc8": "bobomb_act_chase_mario", - "802e6e84": "bobomb_act_launched", - "802e6ed8": "generic_bobomb_free_loop", - "802e7020": "stationary_bobomb_free_loop", - "802e7134": "bobomb_free_loop", - "802e7180": "bobomb_held_loop", - "802e7220": "bobomb_dropped_loop", - "802e7280": "bobomb_thrown_loop", - "802e7324": "curr_obj_random_blink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "bobomb_buddy_act_idle", - "802e7814": "bobomb_buddy_cannon_dialog", - "802e79dc": "bobomb_buddy_act_talk", - "802e7b00": "bobomb_buddy_act_turn_to_talk", - "802e7bb0": "bobomb_buddy_actions", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "cannon_door_act_opening", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "whirlpool_set_hitbox", - "802e7fec": "whirpool_orient_graph", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "butterfly_step", - "802e9278": "butterfly_calculate_angle", - "802e9470": "butterfly_act_rest", - "802e94e4": "butterfly_act_follow_mario", - "802e9548": "butterfly_act_return_home", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "hoot_find_next_floor", - "802e98c0": "hoot_floor_bounce", - "802e9a4c": "hoot_free_step", - "802e9cf4": "hoot_player_set_yaw", - "802e9d98": "hoot_carry_step", - "802e9f60": "hoot_surface_collision", - "802ea144": "hoot_act_ascent", - "802ea258": "hoot_action_loop", - "802ea3f0": "hoot_turn_to_home", - "802ea4ec": "hoot_awake_loop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "bully_check_mario_collision", - "802eb288": "bully_act_chase_mario", - "802eb3f0": "bully_act_knockback", - "802eb510": "bully_act_back_up", - "802eb5c4": "bully_backup_check", - "802eb630": "bully_play_stomping_sound", - "802eb744": "bully_step", - "802eb7e0": "bully_spawn_coin", - "802eb8b0": "bully_act_level_death", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "big_bully_spawn_minion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "big_bully_spawn_star", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "water_ring_calc_mario_dist", - "802ec030": "water_ring_init", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "water_ring_check_collection", - "802ec3d0": "water_ring_set_scale", - "802ec4e0": "water_ring_act_collected", - "802ec59c": "water_ring_act_not_collected", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "spawn_manta_ray_ring_manager", - "802ec818": "water_ring_spawner_act_inactive", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "manta_water_ring_act_not_collected", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "celeb_star_act_spin_around_mario", - "802ed28c": "celeb_star_act_face_camera", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "moneybag_check_mario_collision", - "802ee268": "moneybag_jump", - "802ee46c": "moneybag_act_move_around", - "802ee598": "moneybag_act_return_home", - "802ee728": "moneybag_act_disappear", - "802ee778": "moneybag_act_death", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "bowling_ball_set_hitbox", - "802eea7c": "bowling_ball_set_waypoints", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initializeLoop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "set_rolling_sphere_hitbox", - "802f0bd4": "adjust_rolling_face_pitch", - "802f0c94": "snowmans_bottom_act_1", - "802f0df0": "snowmans_bottom_act_2", - "802f0fa8": "snowmans_bottom_act_3", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "boulder_act_1", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "cap_set_hitbox", - "802f19c8": "cap_despawn", - "802f1a10": "cap_check_quicksand", - "802f1bb8": "cap_sink_quicksand", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "cap_scale_vertically", - "802f1e5c": "wing_vanish_cap_act_0", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "metal_cap_act_0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "normal_cap_set_save_flags", - "802f2284": "normal_cap_act_0", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "spawn_star", - "802f2b88": "spawn_default_star", - "802f2bd4": "spawn_red_coin_cutscene_star", - "802f2c24": "spawn_no_exit_star", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "rolling_log_roll_log", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "volcano_act_1", - "802f39b4": "volcano_act_3", - "802f3a30": "bhv_volcano_trap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "one_up_loop_in_air", - "802f3ea8": "pole_1up_move_towards_mario", - "802f401c": "one_up_move_away_from_mario", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "sliding_1up_move", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "controllable_platform_act_1", - "802f4ce0": "controllable_platform_act_2", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "controllable_platform_hit_wall", - "802f5068": "controllable_platform_check_walls", - "802f52c0": "controllable_platform_shake_on_wall_hit", - "802f547c": "controllable_platform_tilt_from_mario", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "small_breakable_box_spawn_dust", - "802f5e44": "small_breakable_box_act_move", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "floating_platform_find_home_y", - "802f665c": "floating_platform_act_0", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "spawn_treasure_chest", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_init", - "802f83a4": "bhv_treasure_chest_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "bhv_yoshi_loop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "mr_blizzard_spawn_white_particles", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "geo_snufit_move_mask", - "8030d9ac": "geo_snufit_scale_body", - "8030da14": "snufit_act_idle", - "8030db38": "snufit_act_shoot", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_lower_prio", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031fd84": "audio_signal_game_loop_tick", - "80320678": "seq_player_fade_out", - "803206bc": "fade_volume_scale", - "803208ec": "process_level_music_dynamics", - "80320d70": "unused_8031FED0", - "80320e3c": "seq_player_lower_volume", - "80320ec4": "seq_player_unlower_volume", - "803210d4": "set_audio_muted", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "stop_sound", - "80321584": "stop_sounds_from_source", - "8032171c": "stop_sounds_in_continuous_banks", - "8032174c": "sound_banks_disable", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "set_sound_moving_speed", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "L80326964", - "80327904": "L80326984", - "80327938": "L803269B8", - "80327a68": "L80326AE8", - "80327ac4": "L80326B44", - "80327ae4": "L80326B64", - "80327b1c": "L80326B9C", - "80327b68": "L80326BE8", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "gNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "D_8032C648", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d0": "unused8032C690", - "8032d5d4": "gGlobalTimer", - "8032d5dc": "frameBufferIndex", - "8032d5e0": "gGoddardVblankCallback", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "sWarpCheckpointActive", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "sWarpBhvSpawnTable", - "8032de4c": "sSpawnTypeFromWarpBhv", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBobCreditsSplinePositions", - "8032f8ac": "sBobCreditsSplineFocus", - "8032f8d4": "sWfCreditsSplinePositions", - "8032f8fc": "sWfCreditsSplineFocus", - "8032f924": "sJrbCreditsSplinePositions", - "8032f94c": "sJrbCreditsSplineFocus", - "8032f974": "sCcmSlideCreditsSplinePositions", - "8032f99c": "sCcmSlideCreditsSplineFocus", - "8032f9c4": "sBbhCreditsSplinePositions", - "8032f9e4": "sBbhCreditsSplineFocus", - "8032fa04": "sHmcCreditsSplinePositions", - "8032fa2c": "sHmcCreditsSplineFocus", - "8032fa54": "sThiWigglerCreditsSplinePositions", - "8032fa6c": "sThiWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSslCreditsSplinePositions", - "8032fb14": "sSslCreditsSplineFocus", - "8032fb44": "sDddCreditsSplinePositions", - "8032fb7c": "sDddCreditsSplineFocus", - "8032fbb4": "sSlCreditsSplinePositions", - "8032fbd4": "sSlCreditsSplineFocus", - "8032fbf4": "sWdwCreditsSplinePositions", - "8032fc14": "sWdwCreditsSplineFocus", - "8032fc34": "sTtmCreditsSplinePositions", - "8032fc64": "sTtmCreditsSplineFocus", - "8032fc94": "sThiHugeCreditsSplinePositions", - "8032fccc": "sThiHugeCreditsSplineFocus", - "8032fd04": "sTtcCreditsSplinePositions", - "8032fd24": "sTtcCreditsSplineFocus", - "8032fd44": "sRrCreditsSplinePositions", - "8032fd64": "sRrCreditsSplineFocus", - "8032fd84": "sSaCreditsSplinePositions", - "8032fdac": "sSaCreditsSplineFocus", - "8032fdd4": "sCotmcCreditsSplinePositions", - "8032fdfc": "sCotmcCreditsSplineFocus", - "8032fe24": "sDddSubCreditsSplinePositions", - "8032fe4c": "sDddSubCreditsSplineFocus", - "8032fe74": "sCcmOutsideCreditsSplinePositions", - "8032fe94": "sCcmOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "80330000": "D_8032F0A0", - "80330004": "D_8032F0A4", - "80330020": "D_8032F0C0", - "8033002c": "D_8032F0CC", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "80330094": "D_8032F134", - "803300a8": "unused8032F134", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "unused0EA1FC", - "80330198": "sChuckyaActions", - "803301a8": "sWFRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301d0": "D_8032F270", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "D_8032F2A4", - "80330224": "sCoinInsideBooActions", - "8033022c": "D_8032F2CC", - "80330244": "D_8032F2E4", - "80330260": "D_8032F300", - "80330288": "D_8032F328", - "80330290": "D_8032F330", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeParams", - "803302dc": "sTumblingBridgeActions", - "803302ec": "D_8032F38C", - "80330318": "sElevatorActions", - "8033032c": "D_8032F3CC", - "80330340": "D_8032F3E0", - "80330354": "D_8032F3F4", - "8033035c": "D_8032F3FC", - "80330370": "sUkikiCageActions", - "80330380": "D_8032F420", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "D_8032F4FC", - "8033046c": "D_8032F50C", - "80330470": "D_8032F510", - "80330474": "D_8032F514", - "80330478": "sBowserDefeatedDialogText", - "80330480": "D_8032F520", - "803304c8": "sBowserActions", - "80330518": "D_8032F5B8", - "803305f0": "D_8032F690", - "803305f4": "D_8032F694", - "803305f8": "D_8032F698", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "D_8032F748", - "803306b4": "D_8032F754", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "D_8032F8F0", - "80330884": "D_8032F924", - "803308a8": "D_8032F948", - "803308cc": "D_8032F96C", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "gOpenableGrills", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "sWaterSplashDropletParams", - "80330d30": "gShallowWaterSplashDropletParams", - "80330d54": "sWaterDropletFishParams", - "80330d78": "gShallowWaterWaveDropletParams", - "80330d9c": "sStrongWindParticleHitbox", - "80330dac": "sSLWalkingPenguinErraticSteps", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWdwWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "sHmcPaintings", - "80331308": "sInsideCastlePaintings", - "80331344": "sTtmPaintings", - "8033134c": "sPaintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gDialogBoxState", - "80331474": "gDialogBoxOpenTimer", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gLastDialogPageStrPos", - "8033148c": "gDialogTextPos", - "80331490": "gDialogLineNum", - "80331494": "gLastDialogResponse", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseDoneMenuTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803317e0": "MacroObjectPresets", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b54": "D_80331A44", - "80332b5c": "D_80331A4C", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBbh", - "80332f54": "sDynDdd", - "80332f6c": "sDynJrb", - "80332f88": "sDynWdw", - "80332f98": "sDynHmc", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "sLevelAreaReverbs", - "80333138": "sLevelAcousticReaches", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sCurrentBackgroundMusicSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "sSoundBankUsedListBack", - "803331c0": "sSoundBankFreeListFront", - "803331cc": "sNumSoundsInBank", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gGlobalSoundSource", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "sSoundBanksThatLowerBackgroundMusic", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "sBackgroundMusicMaxTargetVolume", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "gAudioInitPoolSize", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358d0": "viMgrMainArgs", - "803358f0": "__osPiDevMgr", - "80335910": "osClockRate", - "80335918": "D_80334808", - "80335920": "_osContInitialized", - "80335930": "D_80334820", - "80335940": "D_80334830", - "80335950": "_spaces", - "80335974": "_zeroes", - "803359a0": "D_80334890", - "803359a4": "D_80334894", - "803359a8": "D_80334898", - "803359ac": "D_8033489C", - "803359b0": "D_803348A0", - "803359b4": "D_803348A4", - "803359c0": "sViContexts", - "80335a20": "__osViCurr", - "80335a24": "__osViNext", - "80335a28": "sTvType", - "80335a2c": "osViClock", - "80335a30": "D_80334920", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "D_80334990", - "80335af0": "D_803349E0", - "80335b40": "D_80334A30", - "80335b44": "D_80334A34", - "80335b48": "D_80334A38", - "80335b50": "D_80334A40", - "80335b54": "D_80334A44", - "80339880": "length_str", - "80339884": "flags_str", - "8033988c": "flags_arr", - "80339980": "D_80338610", - "803399a0": "jtbl_80338630", - "803399d0": "NAN", - "803399e0": "D_80338670", - "80339a40": "D_803386D0", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "008c0c40": "_mainSegmentRomEnd", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "D_80339BEC", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "D_80339CB8", - "8033b040": "D_80339CD0", - "8033b044": "D_80339CD4", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFrameBuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "D_80339CF0", - "8033b064": "D_80339CF4", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "D_80339D10", - "8033b090": "gDemo", - "8033b0a0": "filler80339D30", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused3", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "unused4", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gNeverEnteredCastle", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "filler80339F1C", - "8033b2c0": "sFloorAlignMatrix", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gPauseScreenMode", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurAnimType", - "8033c379": "gCurAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gCurBhvCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "gPaintingMesh", - "80361314": "gPaintingTriNorms", - "80361318": "gRipplingPainting", - "8036131c": "gDddPaintingStatus", - "80361320": "sTextLabels", - "803613f0": "gDialogColorFadeTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gDialogTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "sSoundBanks", - "80364b78": "sSoundMovingSpeed", - "80364b82": "sBackgroundMusicTargetVolume", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "__osEventStateTab", - "80364c20": "D_803638B0", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "__osPiMesgQueue", - "80367038": "piMgrMesgBuff", - "80367040": "D_80365CD0", - "80367050": "_osContCmdBuf", - "8036708c": "_osContPifCtrl", - "80367090": "_osLastSentSiCmd", - "80367091": "_osContNumControllers", - "80367098": "D_80365D28", - "803670b8": "_osContMesgQueue", - "803670d0": "_osContMesgBuff", - "803670f0": "D_80365D80", - "80367110": "_osCurrentTime", - "80367118": "D_80365DA8", - "8036711c": "__osViIntrCount", - "80367120": "D_80365DB0", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "D_80365E00", - "803671ac": "D_80365E3C", - "803671b0": "D_80365E40", - "803672b0": "gInterruptedThread", - "80367460": ".", - "80367460": "_mainSegmentNoloadEnd", - "0000cee0": "_mainSegmentNoloadSizeLo", - "00000002": "_mainSegmentNoloadSizeHi", - "00000001": "ASSERT", - "80378800": "_engineSegmentStart", - "007cc6c0": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "random_u16", - "80383cb4": "random_float", - "80383d1c": "random_sign", - "80383d68": "obj_update_gfx_pos_and_angle", - "80385bf0": "stub_behavior_script_2", - "80385c00": "cur_obj_update", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "007dfb50": "_engineSegmentRomEnd", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "00000001": "ASSERT", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFrameBuffer0", - "803b5000": "gFrameBuffer1", - "803da800": "gFrameBuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "80400000": "__expansionRamStart", - "00000001": "ASSERT", - "10000000": "_entrySegmentStart", - "007cc6c0": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "007cc6f0": "_entrySegmentRomEnd", - "02000000": "_segment2_mio0SegmentStart", - "007cc6c0": "_segment2_mio0SegmentRomStart", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "007d83d0": "_segment2_mio0SegmentRomEnd", - "04000000": "_group0_mio0SegmentStart", - "007cc6c0": "_group0_mio0SegmentRomStart", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "007df920": "_group0_mio0SegmentRomEnd", - "17000000": "_group0_geoSegmentStart", - "007cc6c0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "small_water_splash_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "idle_water_wave_geo", - "17000168": "wave_trail_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "007cf4f0": "_group0_geoSegmentRomEnd", - "05000000": "_group1_mio0SegmentStart", - "007cc6c0": "_group1_mio0SegmentRomStart", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "007d4730": "_group1_mio0SegmentRomEnd", - "0c000000": "_group1_geoSegmentStart", - "007cc6c0": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "007ccad0": "_group1_geoSegmentRomEnd", - "05000000": "_group2_mio0SegmentStart", - "007cc6c0": "_group2_mio0SegmentRomStart", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "007ce4d0": "_group2_mio0SegmentRomEnd", - "0c000000": "_group2_geoSegmentStart", - "007cc6c0": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "007cc970": "_group2_geoSegmentRomEnd", - "05000000": "_group3_mio0SegmentStart", - "007cc6c0": "_group3_mio0SegmentRomStart", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "007d2f70": "_group3_mio0SegmentRomEnd", - "0c000000": "_group3_geoSegmentStart", - "007cc6c0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "007cca00": "_group3_geoSegmentRomEnd", - "05000000": "_group4_mio0SegmentStart", - "007cc6c0": "_group4_mio0SegmentRomStart", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "007d69c0": "_group4_mio0SegmentRomEnd", - "0c000000": "_group4_geoSegmentStart", - "007cc6c0": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "007cc940": "_group4_geoSegmentRomEnd", - "05000000": "_group5_mio0SegmentStart", - "007cc6c0": "_group5_mio0SegmentRomStart", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "007d83a0": "_group5_mio0SegmentRomEnd", - "0c000000": "_group5_geoSegmentStart", - "007cc6c0": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "007ccd20": "_group5_geoSegmentRomEnd", - "05000000": "_group6_mio0SegmentStart", - "007cc6c0": "_group6_mio0SegmentRomStart", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "007da7d0": "_group6_mio0SegmentRomEnd", - "0c000000": "_group6_geoSegmentStart", - "007cc6c0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "007cca50": "_group6_geoSegmentRomEnd", - "05000000": "_group7_mio0SegmentStart", - "007cc6c0": "_group7_mio0SegmentRomStart", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "007d1730": "_group7_mio0SegmentRomEnd", - "0c000000": "_group7_geoSegmentStart", - "007cc6c0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "007cca30": "_group7_geoSegmentRomEnd", - "05000000": "_group8_mio0SegmentStart", - "007cc6c0": "_group8_mio0SegmentRomStart", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "007cd840": "_group8_mio0SegmentRomEnd", - "0c000000": "_group8_geoSegmentStart", - "007cc6c0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "007cc750": "_group8_geoSegmentRomEnd", - "05000000": "_group9_mio0SegmentStart", - "007cc6c0": "_group9_mio0SegmentRomStart", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "007d3020": "_group9_mio0SegmentRomEnd", - "0c000000": "_group9_geoSegmentStart", - "007cc6c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "007cc970": "_group9_geoSegmentRomEnd", - "05000000": "_group10_mio0SegmentStart", - "007cc6c0": "_group10_mio0SegmentRomStart", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "007df390": "_group10_mio0SegmentRomEnd", - "0c000000": "_group10_geoSegmentStart", - "007cc6c0": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "007ccd30": "_group10_geoSegmentRomEnd", - "05000000": "_group11_mio0SegmentStart", - "007cc6c0": "_group11_mio0SegmentRomStart", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "007d3ab0": "_group11_mio0SegmentRomEnd", - "0c000000": "_group11_geoSegmentStart", - "007cc6c0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "007ccb60": "_group11_geoSegmentRomEnd", - "06000000": "_group12_mio0SegmentStart", - "007cc6c0": "_group12_mio0SegmentRomStart", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "007fd2f0": "_group12_mio0SegmentRomEnd", - "0d000000": "_group12_geoSegmentStart", - "007cc6c0": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser2_geo", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "007cd310": "_group12_geoSegmentRomEnd", - "06000000": "_group13_mio0SegmentStart", - "007cc6c0": "_group13_mio0SegmentRomStart", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "007d67b0": "_group13_mio0SegmentRomEnd", - "0d000000": "_group13_geoSegmentStart", - "007cc6c0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "007ccb40": "_group13_geoSegmentRomEnd", - "06000000": "_group14_mio0SegmentStart", - "007cc6c0": "_group14_mio0SegmentRomStart", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "007e0120": "_group14_mio0SegmentRomEnd", - "0d000000": "_group14_geoSegmentStart", - "007cc6c0": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "007ccd40": "_group14_geoSegmentRomEnd", - "06000000": "_group15_mio0SegmentStart", - "007cc6c0": "_group15_mio0SegmentRomStart", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "007d8fa0": "_group15_mio0SegmentRomEnd", - "0d000000": "_group15_geoSegmentStart", - "007cc6c0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "007cccc0": "_group15_geoSegmentRomEnd", - "06000000": "_group16_mio0SegmentStart", - "007cc6c0": "_group16_mio0SegmentRomStart", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "007cf260": "_group16_mio0SegmentRomEnd", - "0d000000": "_group16_geoSegmentStart", - "007cc6c0": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "007cc810": "_group16_geoSegmentRomEnd", - "06000000": "_group17_mio0SegmentStart", - "007cc6c0": "_group17_mio0SegmentRomStart", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "007d6310": "_group17_mio0SegmentRomEnd", - "0d000000": "_group17_geoSegmentStart", - "007cc6c0": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "007ccd90": "_group17_geoSegmentRomEnd", - "08000000": "_common0_mio0SegmentStart", - "007cc6c0": "_common0_mio0SegmentRomStart", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "007dad90": "_common0_mio0SegmentRomEnd", - "0f000000": "_common0_geoSegmentStart", - "007cc6c0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "dAmpGeo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "007cd200": "_common0_geoSegmentRomEnd", - "03000000": "_common1_mio0SegmentStart", - "007cc6c0": "_common1_mio0SegmentRomStart", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "007e4050": "_common1_mio0SegmentRomEnd", - "16000000": "_common1_geoSegmentStart", - "007cc6c0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "007cd720": "_common1_geoSegmentRomEnd", - "13000000": "_behaviorSegmentStart", - "007cc6c0": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvThiHugeIslandTop", - "13000194": "bhvThiTinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleParticleSpawner", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvPlungeBubble", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWfBreakableWallRight", - "13000638": "bhvWfBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWfRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvMrIBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvVertStarParticleSpawner", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvHorStarParticleSpawner", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvTriangleParticleSpawner", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp2", - "13000bc8": "bhvThwomp", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvWfTumblingBridge", - "13000c44": "bhvBbhTumblingBridge", - "13000c64": "bhvLllTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRrElevatorPlatform", - "13000d30": "bhvHmcElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvBreathParticleSpawner", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvMistCircParticleSpawner", - "13000e3c": "bhvDirtParticleSpawner", - "13000e58": "bhvSnowParticleSpawner", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitfsSinkingPlatforms", - "13000fc8": "bhvBitfsSinkingCagePlatform", - "13001000": "bhvDddMovingPole", - "13001030": "bhvBitfsTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRrRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFireParticleSpawner", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWfSlidingTowerPlatform", - "13001340": "bhvWfElevatorTowerPlatform", - "13001368": "bhvWfSolidTowerPlatform", - "13001390": "bhvLeafParticleSpawner", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCcmTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDddWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLllRotatingHexagonalPlatform", - "13001d40": "bhvLllSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLllMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLllRotatingBlockWithFireBars", - "13001dcc": "bhvLllRotatingHexFlame", - "13001e04": "bhvLllWoodPiece", - "13001e30": "bhvLllFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLllRotatingHexagonalRing", - "13001e94": "bhvLllSinkingRectangularPlatform", - "13001ec4": "bhvLllSinkingSquarePlatforms", - "13001ef8": "bhvLllTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLllHexagonalMesh", - "13002038": "bhvLllBowserPuzzlePiece", - "13002068": "bhvLllBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvManyBlueFishSpawner", - "1300214c": "bhvFewBlueFishSpawner", - "1300215c": "bhvFishSpawner", - "13002178": "bhvFish", - "13002194": "bhvWdwExpressElevator", - "130021c0": "bhvWdwExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJrbSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMistParticleSpawner", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooBossSpawnedBridge", - "130028cc": "bhvBbhTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSparkleParticleSpawner", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDroplet", - "13002c7c": "bhvWaterDropletSplash", - "13002cb0": "bhvBubbleSplash", - "13002ce0": "bhvIdleWaterWave", - "13002d28": "bhvObjectWaterSplash", - "13002d50": "bhvShallowWaterWave", - "13002d7c": "bhvShallowWaterSplash", - "13002db0": "bhvObjectWaveTrail", - "13002dc0": "bhvWaveTrail", - "13002e04": "bhvTinyStrongWindParticle", - "13002e20": "bhvStrongWindParticle", - "13002e3c": "bhvSLSnowmanWind", - "13002e58": "bhvSLWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvInstantActiveWarp", - "13002f64": "bhvAirborneWarp", - "13002f68": "bhvHardAirKnockBackWarp", - "13002f6c": "bhvSpinAirborneCircleWarp", - "13002f70": "bhvDeathWarp", - "13002f74": "bhvSpinAirborneWarp", - "13002f78": "bhvFlyingWarp", - "13002f7c": "bhvPaintingStarCollectWarp", - "13002f80": "bhvPaintingDeathWarp", - "13002f84": "bhvAirborneDeathWarp", - "13002f88": "bhvAirborneStarCollectWarp", - "13002f8c": "bhvLaunchStarCollectWarp", - "13002f90": "bhvLaunchDeathWarp", - "13002f94": "bhvSwimmingWarp", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLllDrawbridgeSpawner", - "130038e8": "bhvLllDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWfSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTtmBowlingBallSpawner", - "13003aa4": "bhvBobBowlingBallSpawner", - "13003ac8": "bhvThiBowlingBallSpawner", - "13003ae0": "bhvRrCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSslMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTtmRollingLog", - "13003f78": "bhvLllVolcanoFallingTrap", - "13003fa4": "bhvLllRollingLog", - "13003fdc": "bhv1upWalking", - "13004010": "bhv1upRunningAway", - "13004044": "bhv1upSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1upJumpOnApproach", - "130040ec": "bhvHidden1up", - "13004124": "bhvHidden1upTrigger", - "13004148": "bhvHidden1upInPole", - "13004180": "bhvHidden1upInPoleTrigger", - "130041a4": "bhvHidden1upInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWdwSquareFloatingPlatform", - "130042b4": "bhvWdwRectangularFloatingPlatform", - "130042e4": "bhvJrbFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJrbFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJrb", - "13004494": "bhvTreasureChests", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "007d1d80": "_behaviorSegmentRomEnd", - "8016f000": "_goddardSegmentStart", - "007cc6c0": "_goddardSegmentRomStart", + "80000000": ["EXCEPTION_TLB_MISS"], + "a4000000": ["SP_DMEM"], + "a40004c0": ["SP_DMEM_UNK0"], + "a4000774": ["SP_DMEM_UNK1"], + "a4001000": ["SP_IMEM"], + "a4040010": ["SP_STATUS_REG"], + "a4080000": ["SP_PC"], + "a4300000": ["MI_MODE_REG"], + "a4300004": ["MI_VERSION_REG"], + "a4300008": ["MI_INTR_REG"], + "a430000c": ["MI_INTR_MASK_REG"], + "a4400010": ["VI_CURRENT_REG"], + "a450000c": ["AI_STATUS_REG"], + "a4600000": ["PI_DRAM_ADDR_REG"], + "a4600004": ["PI_CART_ADDR_REG"], + "a460000c": ["PI_WR_LEN_REG"], + "a4600010": ["PI_STATUS_REG"], + "a4600014": ["PI_BSD_DOM1_LAT_REG"], + "a4600018": ["PI_BSD_DOM1_PWD_REG"], + "a460001c": ["PI_BSD_DOM1_PGS_REG"], + "a4600020": ["PI_BSD_DOM1_RLS_REG"], + "a4700000": ["RI_MODE_REG"], + "a4700010": ["RI_REFRESH_REG"], + "a4800018": ["SI_STATUS_REG"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "00000000": ["__romPos"], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart"], + "007cc6c0": [ + "_bootSegmentRomStart", + "_mainSegmentRomStart", + "_engineSegmentRomStart", + "_entrySegmentRomStart", + "_segment2_mio0SegmentRomStart", + "_group0_mio0SegmentRomStart", + "_group0_geoSegmentRomStart", + "_group1_mio0SegmentRomStart", + "_group1_geoSegmentRomStart", + "_group2_mio0SegmentRomStart", + "_group2_geoSegmentRomStart", + "_group3_mio0SegmentRomStart", + "_group3_geoSegmentRomStart", + "_group4_mio0SegmentRomStart", + "_group4_geoSegmentRomStart", + "_group5_mio0SegmentRomStart", + "_group5_geoSegmentRomStart", + "_group6_mio0SegmentRomStart", + "_group6_geoSegmentRomStart", + "_group7_mio0SegmentRomStart", + "_group7_geoSegmentRomStart", + "_group8_mio0SegmentRomStart", + "_group8_geoSegmentRomStart", + "_group9_mio0SegmentRomStart", + "_group9_geoSegmentRomStart", + "_group10_mio0SegmentRomStart", + "_group10_geoSegmentRomStart", + "_group11_mio0SegmentRomStart", + "_group11_geoSegmentRomStart", + "_group12_mio0SegmentRomStart", + "_group12_geoSegmentRomStart", + "_group13_mio0SegmentRomStart", + "_group13_geoSegmentRomStart", + "_group14_mio0SegmentRomStart", + "_group14_geoSegmentRomStart", + "_group15_mio0SegmentRomStart", + "_group15_geoSegmentRomStart", + "_group16_mio0SegmentRomStart", + "_group16_geoSegmentRomStart", + "_group17_mio0SegmentRomStart", + "_group17_geoSegmentRomStart", + "_common0_mio0SegmentRomStart", + "_common0_geoSegmentRomStart", + "_common1_mio0SegmentRomStart", + "_common1_geoSegmentRomStart", + "_behaviorSegmentRomStart", + "_goddardSegmentRomStart", + ], + "04000040": ["ipl3_entry"], + "04000b70": ["ipl3_font"], + "04001000": ["_bootSegmentEnd"], + "007cd6c0": ["_bootSegmentRomEnd"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "80246000": ["_mainSegmentStart", "entry_point"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["unknown_main_func"], + "802461cc": ["stub_main_1"], + "802461dc": ["stub_main_2"], + "802461ec": ["stub_main_3"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["alloc_pool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["send_sp_task_message"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["send_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["main_func"], + "80246e70": ["my_rdp_init"], + "802471a4": ["my_rsp_init"], + "80247284": ["clear_z_buffer"], + "802473c8": ["display_frame_buffer"], + "802474b8": ["clear_frame_buffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_task_structure"], + "80247ccc": ["init_render_image"], + "80247d14": ["end_master_display_list"], + "80247db4": ["draw_reset_bars"], + "80247f08": ["rendering_init"], + "80247fdc": ["config_gfx_pool"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["reset_volume"], + "80248c58": ["lower_background_noise"], + "80248ce8": ["raise_background_noise"], + "80248d78": ["disable_background_sound"], + "80248dc0": ["enable_background_sound"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["fadeout_music"], + "8024927c": ["fadeout_level_music"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "80249494": ["play_menu_sounds_extra"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_pause"], + "80249764": ["set_play_mode"], + "8024978c": ["warp_special"], + "802497b8": ["fade_into_special_warp"], + "8024982c": ["stub_level_update_1"], + "8024983c": ["load_level_init_text"], + "8024995c": ["init_door_warp"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["warp_area"], + "8024a18c": ["warp_level"], + "8024a1d8": ["warp_credits"], + "8024a374": ["check_instant_warp"], + "8024a584": ["music_changed_through_warp"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_obj_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_normal_cap_on_head"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["should_push_or_pull_door"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_strong_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["mario_can_talk"], + "8024ff04": ["check_read_sign"], + "80250098": ["check_npc_talk"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["stub_mario_step_1"], + "802550b0": ["stub_mario_step_2"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["bhv_end_peach_loop"], + "802570dc": ["bhv_end_toad_loop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025bc80": ["generate_yellow_sparkles"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["climb_up_ledge"], + "8025f560": ["update_ledge_climb_camera"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["check_common_idle_cancels"], + "80260aac": ["check_common_hold_idle_cancels"], + "80260cb4": ["act_idle"], + "80260f94": ["play_anim_sound"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["stopping_step"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["act_hold_butt_slide_stop"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["act_shockwave_bounce"], + "80262bc4": ["landing_step"], + "80262c34": ["check_common_landing_cancels"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["act_hold_jump_land_stop"], + "802631f0": ["act_hold_freefall_land_stop"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["check_common_stationary_cancels"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["tilt_body_running"], + "80263ee4": ["play_step_sound"], + "80264024": ["align_with_floor"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["anim_and_audio_for_walk"], + "80265b1c": ["anim_and_audio_for_hold_walk"], + "80265d90": ["anim_and_audio_for_heavy_walk"], + "80265df8": ["push_or_sidle_wall"], + "80266038": ["tilt_body_walking"], + "802661cc": ["tilt_body_ground_shell"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["tilt_body_butt_slide"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["play_knockback_sound"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["check_wall_kick"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_envfx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhv_toad_message_loop"], + "80276910": ["bhv_toad_message_init"], + "80276bb8": ["bhv_unlock_door_star_init"], + "80276ccc": ["bhv_unlock_door_star_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["load_segment_decompress_heap"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["func_80278A78"], + "80279084": ["load_patchable_table"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["override_viewport_and_clip"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["area_get_warp_node_from_params"], + "8027aa74": ["load_obj_warp_nodes"], + "8027ab04": ["clear_areas"], + "8027ad74": ["clear_area_graph_nodes"], + "8027ae44": ["load_area"], + "8027af48": ["unload_area"], + "8027afbc": ["load_mario_area"], + "8027b038": ["unload_mario_area"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["stub_camera_2"], + "80287dd4": ["stub_camera_3"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["stub_camera_4"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["spawn_child_obj_relative"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_obj_list_processor_1"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["geo_update_projectile_pos_from_parent"], + "8029d924": ["geo_update_layer_transparency"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["obj_update_pos_from_parent_transformation"], + "8029dda8": ["obj_apply_scale_to_matrix"], + "8029de80": ["create_transformation_from_matrices"], + "8029e1b0": ["obj_set_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["cur_obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["cur_obj_rotate_yaw_toward"], + "8029e694": ["obj_angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["obj_set_parent_relative_pos"], + "8029e914": ["obj_set_pos"], + "8029e96c": ["obj_set_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["spawn_obj_with_transform_flags"], + "8029eb04": ["spawn_water_droplet"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["cur_obj_move_using_vel"], + "8029f0c8": ["obj_copy_graph_y_offset"], + "8029f0e0": ["obj_copy_pos_and_angle"], + "8029f120": ["obj_copy_pos"], + "8029f148": ["obj_copy_angle"], + "8029f188": ["obj_set_gfx_pos_from_pos"], + "8029f1b0": ["obj_init_animation"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["obj_apply_scale_to_transform"], + "8029f3a8": ["obj_copy_scale"], + "8029f3d0": ["obj_scale_xyz"], + "8029f404": ["obj_scale"], + "8029f430": ["cur_obj_scale"], + "8029f464": ["cur_obj_init_animation"], + "8029f4b4": ["cur_obj_init_animation_with_sound"], + "8029f514": ["cur_obj_init_animation_with_accel_and_sound"], + "8029f59c": ["obj_init_animation_with_sound"], + "8029f600": ["cur_obj_enable_rendering_and_become_tangible"], + "8029f620": ["cur_obj_enable_rendering"], + "8029f644": ["cur_obj_disable_rendering_and_become_intangible"], + "8029f66c": ["cur_obj_disable_rendering"], + "8029f694": ["cur_obj_unhide"], + "8029f6bc": ["cur_obj_hide"], + "8029f6e0": ["cur_obj_set_pos_relative"], + "8029f7d8": ["cur_obj_set_pos_relative_to_parent"], + "8029f820": ["cur_obj_enable_rendering_2"], + "8029f848": ["cur_obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_face_angle_to_move_angle"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["cur_obj_nearest_object_with_behavior"], + "8029f998": ["cur_obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["cur_obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["cur_obj_find_nearby_held_actor"], + "8029fdb4": ["cur_obj_change_action"], + "8029fe00": ["cur_obj_set_vel_from_mario_vel"], + "8029fe6c": ["cur_obj_reverse_animation"], + "8029fea4": ["cur_obj_extend_animation_if_at_end"], + "8029ff04": ["cur_obj_check_if_near_animation_end"], + "8029ffa4": ["cur_obj_check_if_at_animation_end"], + "802a0008": ["cur_obj_check_anim_frame"], + "802a0050": ["cur_obj_check_anim_frame_in_range"], + "802a00ac": ["cur_obj_check_frame_prior_current_frame"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["cur_obj_set_y_vel_and_animation"], + "802a01d8": ["cur_obj_unrender_and_reset_state"], + "802a0380": ["cur_obj_get_thrown_or_placed"], + "802a0474": ["cur_obj_get_dropped"], + "802a04c0": ["cur_obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["cur_obj_clear_interact_status_flag"], + "802a0568": ["obj_mark_for_deletion"], + "802a057c": ["cur_obj_disable"], + "802a05b4": ["cur_obj_become_intangible"], + "802a05d4": ["cur_obj_become_tangible"], + "802a05f0": ["obj_become_tangible"], + "802a0604": ["cur_obj_update_floor_height"], + "802a064c": ["cur_obj_update_floor_height_and_get_floor"], + "802a079c": ["cur_obj_apply_drag_xz"], + "802a0e68": ["cur_obj_move_y"], + "802a113c": ["cur_obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["cur_obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["cur_obj_move_y_with_terminal_vel"], + "802a1308": ["cur_obj_compute_vel_xz"], + "802a1370": ["increment_velocity_toward_range"], + "802a1424": ["obj_check_if_collided_with_object"], + "802a148c": ["cur_obj_set_behavior"], + "802a14c4": ["obj_set_behavior"], + "802a14fc": ["cur_obj_has_behavior"], + "802a1554": ["obj_has_behavior"], + "802a15ac": ["cur_obj_lateral_dist_from_mario_to_home"], + "802a1634": ["cur_obj_lateral_dist_to_home"], + "802a16ac": ["cur_obj_outside_home_square"], + "802a1774": ["cur_obj_outside_home_rectangle"], + "802a184c": ["cur_obj_set_pos_to_home"], + "802a188c": ["cur_obj_set_pos_to_home_and_stop"], + "802a18dc": ["cur_obj_shake_y"], + "802a1930": ["cur_obj_start_cam_event"], + "802a1960": ["set_mario_interact_hoot_if_in_range"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["cur_obj_set_hitbox_radius_and_height"], + "802a19f0": ["cur_obj_set_hurtbox_radius_and_height"], + "802a1b34": ["obj_spawn_loot_blue_coins"], + "802a1b8c": ["obj_spawn_loot_yellow_coins"], + "802a1bdc": ["cur_obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["cur_obj_abs_y_dist_to_home"], + "802a1cc4": ["cur_obj_advance_looping_anim"], + "802a1f3c": ["cur_obj_resolve_wall_collisions"], + "802a2320": ["cur_obj_update_floor_and_walls"], + "802a2348": ["cur_obj_move_standard"], + "802a25b4": ["cur_obj_move_using_vel_and_gravity"], + "802a2644": ["cur_obj_move_using_fvel_and_gravity"], + "802a2674": ["obj_set_pos_relative"], + "802a2748": ["cur_obj_angle_to_home"], + "802a27b0": ["obj_set_gfx_pos_at_obj_pos"], + "802a2804": ["obj_translate_local"], + "802a2930": ["obj_build_transform_from_pos_and_angle"], + "802a2a18": ["obj_set_throw_matrix_from_transform"], + "802a2a84": ["obj_build_transform_relative_to_parent"], + "802a2b28": ["obj_create_transform_from_self"], + "802a2b6c": ["cur_obj_rotate_move_angle_using_vel"], + "802a2bc4": ["cur_obj_rotate_face_angle_using_vel"], + "802a2c1c": ["cur_obj_set_face_angle_to_move_angle"], + "802a2c5c": ["cur_obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["obj_scale_random"], + "802a2fc0": ["obj_translate_xyz_random"], + "802a308c": ["obj_translate_xz_random"], + "802a31e0": ["cur_obj_set_pos_via_transform"], + "802a3268": ["cur_obj_reflect_move_angle_off_wall"], + "802a32ac": ["cur_obj_spawn_particles"], + "802a34a4": ["obj_set_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["cur_obj_wait_then_blink"], + "802a3754": ["cur_obj_is_mario_ground_pounding_platform"], + "802a37ac": ["spawn_mist_particles"], + "802a37dc": ["spawn_mist_particles_with_sound"], + "802a3818": ["cur_obj_push_mario_away"], + "802a390c": ["cur_obj_push_mario_away_from_cylinder"], + "802a399c": ["bhv_dust_smoke_loop"], + "802a3a4c": ["cur_obj_set_direction_table"], + "802a3a88": ["cur_obj_progress_direction_table"], + "802a3b28": ["stub_obj_helpers_3"], + "802a3b40": ["cur_obj_scale_over_time"], + "802a3c18": ["cur_obj_set_pos_to_home_with_debug"], + "802a3cec": ["stub_obj_helpers_4"], + "802a3cfc": ["cur_obj_is_mario_on_platform"], + "802a3d40": ["cur_obj_shake_y_until"], + "802a3dd4": ["cur_obj_move_up_and_down"], + "802a3e30": ["cur_obj_call_action_function"], + "802a3ef8": ["spawn_base_star_with_no_lvl_exit"], + "802a3f24": ["bit_shift_left"], + "802a3f48": ["cur_obj_mario_far_away"], + "802a404c": ["is_mario_moving_fast_or_in_air"], + "802a40b8": ["is_item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["cur_obj_enable_rendering_if_mario_in_room"], + "802a4360": ["cur_obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["obj_explode_and_spawn_coins"], + "802a44f4": ["obj_set_collision_data"], + "802a452c": ["cur_obj_if_hit_wall_bounce_away"], + "802a4564": ["cur_obj_hide_if_mario_far_away_y"], + "802a45e4": ["geo_offset_klepto_held_object"], + "802a462c": ["geo_offset_klepto_debug"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["cur_obj_can_mario_activate_textbox"], + "802a48bc": ["cur_obj_can_mario_activate_textbox_2"], + "802a4960": ["cur_obj_update_dialog"], + "802a4be4": ["cur_obj_update_dialog_with_cutscene"], + "802a4f04": ["cur_obj_has_model"], + "802a4f58": ["cur_obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["cur_obj_shake_screen"], + "802a513c": ["obj_attack_collided_from_other_object"], + "802a51ac": ["cur_obj_was_attacked_or_ground_pounded"], + "802a5228": ["obj_copy_behavior_params"], + "802a5248": ["cur_obj_init_animation_and_anim_frame"], + "802a5288": ["cur_obj_init_animation_and_check_if_near_end"], + "802a52c4": ["cur_obj_init_animation_and_extend_if_at_end"], + "802a52f8": ["cur_obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["cur_obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["cur_obj_check_interacted"], + "802a5524": ["cur_obj_spawn_loot_blue_coin"], + "802a5588": ["cur_obj_spawn_star_at_y_offset"], + "802a5620": ["star_door_update_pos"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["mr_i_piranha_particle_act_0"], + "802a5a44": ["mr_i_piranha_particle_act_1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["spawn_mr_i_particle"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["mr_i_act_3"], + "802a6518": ["mr_i_act_2"], + "802a68a0": ["mr_i_act_1"], + "802a6ad8": ["mr_i_act_0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["cap_switch_act_0"], + "802a7020": ["cap_switch_act_1"], + "802a708c": ["cap_switch_act_2"], + "802a7160": ["cap_switch_act_3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["geo_update_held_mario_pos"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["king_bobomb_act_0"], + "802a7384": ["mario_is_far_below_object"], + "802a73d8": ["king_bobomb_act_2"], + "802a7598": ["king_bobomb_act_3"], + "802a7804": ["king_bobomb_act_1"], + "802a78d8": ["king_bobomb_act_6"], + "802a7a60": ["king_bobomb_act_7"], + "802a7b1c": ["king_bobomb_act_8"], + "802a7b5c": ["king_bobomb_act_4"], + "802a7d14": ["king_bobomb_act_5"], + "802a7fbc": ["king_bobomb_move"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["scale_bubble_random"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["scale_bubble_sin"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["opened_cannon_act_0"], + "802a8f40": ["opened_cannon_act_4"], + "802a9114": ["opened_cannon_act_6"], + "802a92fc": ["opened_cannon_act_5"], + "802a93f8": ["opened_cannon_act_1"], + "802a9440": ["opened_cannon_act_2"], + "802a9460": ["opened_cannon_act_3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["common_anchor_mario_behavior"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["unknown_chuckya_function"], + "802a98c4": ["approach_forward_vel"], + "802a9994": ["chuckya_act_0"], + "802a9d08": ["chuckya_act_1"], + "802a9f54": ["chuckya_act_3"], + "802a9fc8": ["chuckya_act_2"], + "802aa02c": ["chuckya_move"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["check_mario_attacking"], + "802aa3c8": ["init_kickable_board_rock"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["set_koopa_shell_underwater_hitbox"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["bhv_fading_warp_loop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["spawn_mist_particles_variable"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["set_sparkle_spawn_star_hitbox"], + "802ab060": ["set_home_to_mario"], + "802ab158": ["set_y_home_to_pos"], + "802ab18c": ["slow_star_rotation"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_coin_init"], + "802ab860": ["bhv_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["spawn_coin_in_formation"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["coin_inside_boo_act_1"], + "802ac15c": ["coin_inside_boo_act_0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["door_animation_and_reset"], + "802ac958": ["set_door_camera_event"], + "802ac9d0": ["play_door_open_noise"], + "802aca6c": ["play_warp_door_open_noise"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["grindel_thwomp_act_4"], + "802ad10c": ["grindel_thwomp_act_2"], + "802ad1a4": ["grindel_thwomp_act_3"], + "802ad238": ["grindel_thwomp_act_1"], + "802ad2d0": ["grindel_thwomp_act_0"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["tumbling_bridge_act_1"], + "802ad76c": ["tumbling_bridge_act_2"], + "802ad7f4": ["tumbling_bridge_act_3"], + "802ad828": ["tumbling_bridge_act_0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["elevator_starting_shake"], + "802ad8f0": ["elevator_act_0"], + "802ada4c": ["elevator_act_1"], + "802adb88": ["elevator_act_2"], + "802adce4": ["elevator_act_4"], + "802add70": ["elevator_act_3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["spawn_mist_from_global"], + "802ae360": ["bhv_ground_sand_init"], + "802ae394": ["spawn_smoke_with_velocity"], + "802ae45c": ["clear_particle_flags"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["spawn_wind_particles"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["spawn_and_init_wf_platforms"], + "802b039c": ["spawn_wf_platform_group"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["square_plat_set_yaw_until_timer"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["check_if_moving_over_floor"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["breakable_box_init"], + "802b17f4": ["hidden_breakable_box_actions"], + "802b19d8": ["hidden_unbreakable_box_actions"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["geo_move_mario_part_from_parent"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["heave_ho_act_1"], + "802b1e6c": ["heave_ho_act_2"], + "802b1ff4": ["heave_ho_act_3"], + "802b20a0": ["heave_ho_act_0"], + "802b2154": ["heave_ho_move"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["jumping_box_act_0"], + "802b27d8": ["jumping_box_act_1"], + "802b2824": ["jumping_box_free_update"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["spawn_sparkle_particles"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["arc_to_goal_pos"], + "802b3250": ["grand_star_zero_velocity"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["bullet_bill_act_0"], + "802b38b8": ["bullet_bill_act_1"], + "802b394c": ["bullet_bill_act_2"], + "802b3b08": ["bullet_bill_act_3"], + "802b3b24": ["bullet_bill_act_4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["bowser_tail_anchor_act_0"], + "802b3cdc": ["bowser_tail_anchor_act_1"], + "802b3d10": ["bowser_tail_anchor_act_2"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["bowser_spawn_shockwave"], + "802b41fc": ["bowser_bounce"], + "802b4288": ["bowser_set_anim_look_up_and_walk"], + "802b4300": ["bowser_set_anim_slow_gait"], + "802b4368": ["bowser_set_anim_look_down"], + "802b43dc": ["bowser_initialize_action"], + "802b4478": ["bowser_act_text_wait"], + "802b44bc": ["bowser_act_intro_walk"], + "802b45f4": ["bowser_bitdw_act_controller"], + "802b473c": ["bowser_bitfs_act_controller"], + "802b48d4": ["bowser_general_bits_act_controller"], + "802b4a1c": ["bowser_set_act_jump"], + "802b4a3c": ["bowser_bits_act_controller"], + "802b4af4": ["bowser_reset_fallen_off_stage"], + "802b4bac": ["bowser_act_unused_slow_walk"], + "802b4be8": ["bowser_act_default"], + "802b4ca4": ["bowser_act_breath_fire"], + "802b4d14": ["bowser_act_walk_to_mario"], + "802b4f00": ["bowser_act_teleport"], + "802b5104": ["bowser_act_spit_fire_into_sky"], + "802b5218": ["bowser_act_hit_mine"], + "802b53f4": ["bowser_set_anim_in_air"], + "802b5444": ["bowser_land"], + "802b5554": ["bowser_short_second_hop"], + "802b55cc": ["bowser_act_jump"], + "802b5798": ["bowser_act_jump_towards_mario"], + "802b58bc": ["bowser_act_hit_edge"], + "802b59cc": ["bowser_act_spit_fire_onto_floor"], + "802b5aec": ["bowser_turn_on_timer"], + "802b5c00": ["bowser_act_turn_from_edge"], + "802b5c40": ["bowser_act_charge_mario"], + "802b5f6c": ["bowser_check_hit_mine"], + "802b5fec": ["bowser_act_thrown_dropped"], + "802b611c": ["bowser_set_goal_invisible"], + "802b6190": ["bowser_act_jump_onto_stage"], + "802b6568": ["bowser_act_dance"], + "802b65d0": ["bowser_spawn_grand_star_key"], + "802b6670": ["bowser_fly_back_dead"], + "802b6730": ["bowser_dead_bounce"], + "802b67d4": ["bowser_dead_wait_for_mario"], + "802b6878": ["bowser_dead_twirl_into_trophy"], + "802b6a10": ["bowser_dead_hide"], + "802b6a78": ["bowser_dead_not_bits_end"], + "802b6bac": ["bowser_dead_bits_end"], + "802b6cf0": ["bowser_act_dead"], + "802b6e40": ["bowser_tilt_platform"], + "802b6ee0": ["bowser_act_ride_tilting_platform"], + "802b711c": ["bowser_check_fallen_off_stage"], + "802b71e4": ["bowser_free_update"], + "802b72d4": ["bowser_held_update"], + "802b7418": ["bowser_thrown_dropped_update"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["geo_update_body_rot_from_parent"], + "802b7a20": ["bowser_open_eye_switch"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["geo_bits_bowser_coloring"], + "802b7e68": ["falling_bowser_plat_act_0"], + "802b7ef0": ["falling_bowser_plat_act_1"], + "802b8024": ["falling_bowser_plat_act_2"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["bowser_flame_despawn"], + "802b8434": ["bowser_flame_should_despawn"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["bowser_flame_move"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_movement_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["vec3f_copy_2"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["checkerboard_plat_act_move_y"], + "802b9af8": ["checkerboard_plat_act_rotate"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["water_level_pillar_undrained"], + "802ba13c": ["water_level_pillar_drained"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["geo_scale_bowser_key"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_cap_ukiki_reset"], + "802ba868": ["is_cap_ukiki_and_mario_has_normal_cap_on_head"], + "802ba8c4": ["geo_update_projectile_pos_from_parent_copy"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["cap_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["lll_octagonal_mesh_move"], + "802bbfd8": ["lll_octagonal_mesh_find_y_offset"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["fire_bar_spawn_flames"], + "802bc4f4": ["fire_bar_act_0"], + "802bc538": ["fire_bar_act_1"], + "802bc590": ["fire_bar_act_2"], + "802bc5fc": ["fire_bar_act_3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["hexagonal_ring_spawn_flames"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["sinking_rectangular_plat_actions"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["koopa_shell_spawn_water_drop"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["koopa_shell_spawn_sparkles"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["tox_box_shake_screen"], + "802bd91c": ["tox_box_move"], + "802bdb04": ["tox_box_act_4"], + "802bdb3c": ["tox_box_act_5"], + "802bdb74": ["tox_box_act_6"], + "802bdbac": ["tox_box_act_7"], + "802bdbe4": ["tox_box_act_1"], + "802bdc7c": ["tox_box_act_2"], + "802bdcc8": ["tox_box_act_3"], + "802bdd14": ["tox_box_act_0"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["set_obj_anim_with_accel_and_sound"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["tuxies_mother_act_2"], + "802bef8c": ["tuxies_mother_act_1"], + "802bf1d8": ["tuxies_mother_act_0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["small_penguin_dive_with_mario"], + "802bf474": ["small_penguin_act_2"], + "802bf57c": ["small_penguin_act_1"], + "802bf648": ["small_penguin_act_3"], + "802bf6e4": ["small_penguin_act_4"], + "802bf760": ["small_penguin_act_0"], + "802bf90c": ["small_penguin_act_5"], + "802bfa14": ["small_penguin_free_actions"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bff3c": ["bhv_fish_spawner_loop"], + "802c0768": ["bhv_fish_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["bub_spawner_act_0"], + "802c0b50": ["bub_spawner_act_1"], + "802c0ba4": ["bub_spawner_act_2"], + "802c0bc4": ["bub_spawner_act_3"], + "802c0be0": ["bhv_bub_spawner_loop"], + "802c0c0c": ["bub_move_vertically"], + "802c0cd4": ["bub_act_0"], + "802c0d44": ["bub_act_1"], + "802c0f90": ["bub_act_2"], + "802c1204": ["bhv_bub_loop"], + "802c12c0": ["bhv_rotating_exclamation_box_loop"], + "802c1308": ["exclamation_box_act_0"], + "802c13ec": ["exclamation_box_act_1"], + "802c14b0": ["exclamation_box_act_2"], + "802c15b8": ["exclamation_box_act_3"], + "802c17bc": ["exclamation_box_spawn_contents"], + "802c18d0": ["exclamation_box_act_4"], + "802c1988": ["exclamation_box_act_5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_boss_spawned_bridge_loop"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["bhv_pole_base_loop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["update_angle_from_move_flags"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["whomp_play_sfx_from_pound_animation"], + "802c6d6c": ["whomp_act_0"], + "802c6ec8": ["whomp_act_7"], + "802c6fb0": ["whomp_act_1"], + "802c710c": ["whomp_act_2"], + "802c7254": ["whomp_act_3"], + "802c72b4": ["whomp_act_4"], + "802c7380": ["whomp_act_5"], + "802c7428": ["king_whomp_on_ground"], + "802c75fc": ["whomp_on_ground"], + "802c76d4": ["whomp_act_6"], + "802c7858": ["whomp_act_8"], + "802c7998": ["whomp_act_9"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_spawn_droplets"], + "802c7b14": ["bhv_water_droplet_loop"], + "802c7cac": ["bhv_idle_water_wave_loop"], + "802c7d40": ["bhv_water_droplet_splash_init"], + "802c7d90": ["bhv_bubble_splash_init"], + "802c7dfc": ["bhv_shallow_water_splash_init"], + "802c7e5c": ["bhv_wave_trail_shrink"], + "802c7f98": ["bhv_strong_wind_particle_loop"], + "802c81b4": ["cur_obj_spawn_strong_wind_particles"], + "802c834c": ["bhv_sl_snowman_wind_loop"], + "802c863c": ["bhv_sl_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["debug_print_obj_collision"], + "802c8fe4": ["detect_object_hitbox_overlap"], + "802c91ec": ["detect_object_hurtbox_overlap"], + "802c9388": ["clear_object_collision"], + "802c93f8": ["check_collision_in_list"], + "802c94ac": ["check_player_object_collision"], + "802c95b4": ["check_pushable_object_collision"], + "802c9630": ["check_destructive_object_collision"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["cur_obj_play_sound_1"], + "802ca1e0": ["cur_obj_play_sound_2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["stub_debug_1"], + "802ca380": ["stub_debug_2"], + "802ca390": ["stub_debug_3"], + "802ca3a0": ["stub_debug_4"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cb0b0": ["stub_debug_5"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb564": ["debug_enemy_unknown"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stop_other_paintings"], + "802d2a74": ["painting_mario_y"], + "802d2b08": ["painting_mario_z"], + "802d2b84": ["painting_ripple_y"], + "802d2c40": ["painting_nearest_4th"], + "802d2d80": ["painting_mario_x"], + "802d2dfc": ["painting_ripple_x"], + "802d2eb8": ["painting_state"], + "802d2ffc": ["wall_painting_proximity_idle"], + "802d319c": ["wall_painting_proximity_rippling"], + "802d327c": ["wall_painting_continuous_idle"], + "802d341c": ["wall_painting_continuous_rippling"], + "802d34fc": ["floor_painting_proximity_idle"], + "802d36ac": ["floor_painting_proximity_rippling"], + "802d379c": ["floor_painting_continuous_idle"], + "802d393c": ["floor_painting_continuous_rippling"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_state"], + "802d3cec": ["calculate_ripple_at_point"], + "802d3e6c": ["ripple_if_movable"], + "802d3ee4": ["painting_generate_mesh"], + "802d404c": ["painting_calculate_triangle_normals"], + "802d43f8": ["normalize_component"], + "802d44bc": ["painting_average_vertex_normals"], + "802d47d0": ["render_painting"], + "802d4edc": ["painting_model_view_transform"], + "802d50dc": ["painting_ripple_image"], + "802d5354": ["painting_ripple_env_mapped"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["move_ddd_painting"], + "802d58e4": ["set_painting_layer"], + "802d593c": ["display_painting"], + "802d59a8": ["wall_painting_update"], + "802d5aa0": ["floor_painting_update"], + "802d5b98": ["geo_painting_draw"], + "802d5d0c": ["geo_painting_update"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_string_color"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_courses_and_castle"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["coin_step"], + "802e5e6c": ["moving_coin_flicker"], + "802e5ea4": ["coin_collected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["blue_coin_sliding_away_from_mario"], + "802e63ec": ["blue_coin_sliding_slow_down"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["bobomb_spawn_coin"], + "802e6af8": ["bobomb_act_explode"], + "802e6bd4": ["bobomb_check_interactions"], + "802e6cf0": ["bobomb_act_patrol"], + "802e6dc8": ["bobomb_act_chase_mario"], + "802e6e84": ["bobomb_act_launched"], + "802e6ed8": ["generic_bobomb_free_loop"], + "802e7020": ["stationary_bobomb_free_loop"], + "802e7134": ["bobomb_free_loop"], + "802e7180": ["bobomb_held_loop"], + "802e7220": ["bobomb_dropped_loop"], + "802e7280": ["bobomb_thrown_loop"], + "802e7324": ["curr_obj_random_blink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["bobomb_buddy_act_idle"], + "802e7814": ["bobomb_buddy_cannon_dialog"], + "802e79dc": ["bobomb_buddy_act_talk"], + "802e7b00": ["bobomb_buddy_act_turn_to_talk"], + "802e7bb0": ["bobomb_buddy_actions"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["cannon_door_act_opening"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["whirlpool_set_hitbox"], + "802e7fec": ["whirpool_orient_graph"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["butterfly_step"], + "802e9278": ["butterfly_calculate_angle"], + "802e9470": ["butterfly_act_rest"], + "802e94e4": ["butterfly_act_follow_mario"], + "802e9548": ["butterfly_act_return_home"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["hoot_find_next_floor"], + "802e98c0": ["hoot_floor_bounce"], + "802e9a4c": ["hoot_free_step"], + "802e9cf4": ["hoot_player_set_yaw"], + "802e9d98": ["hoot_carry_step"], + "802e9f60": ["hoot_surface_collision"], + "802ea144": ["hoot_act_ascent"], + "802ea258": ["hoot_action_loop"], + "802ea3f0": ["hoot_turn_to_home"], + "802ea4ec": ["hoot_awake_loop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["bully_check_mario_collision"], + "802eb288": ["bully_act_chase_mario"], + "802eb3f0": ["bully_act_knockback"], + "802eb510": ["bully_act_back_up"], + "802eb5c4": ["bully_backup_check"], + "802eb630": ["bully_play_stomping_sound"], + "802eb744": ["bully_step"], + "802eb7e0": ["bully_spawn_coin"], + "802eb8b0": ["bully_act_level_death"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["big_bully_spawn_minion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["big_bully_spawn_star"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["water_ring_calc_mario_dist"], + "802ec030": ["water_ring_init"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["water_ring_check_collection"], + "802ec3d0": ["water_ring_set_scale"], + "802ec4e0": ["water_ring_act_collected"], + "802ec59c": ["water_ring_act_not_collected"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["spawn_manta_ray_ring_manager"], + "802ec818": ["water_ring_spawner_act_inactive"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["manta_water_ring_act_not_collected"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["celeb_star_act_spin_around_mario"], + "802ed28c": ["celeb_star_act_face_camera"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["moneybag_check_mario_collision"], + "802ee268": ["moneybag_jump"], + "802ee46c": ["moneybag_act_move_around"], + "802ee598": ["moneybag_act_return_home"], + "802ee728": ["moneybag_act_disappear"], + "802ee778": ["moneybag_act_death"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["bowling_ball_set_hitbox"], + "802eea7c": ["bowling_ball_set_waypoints"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initializeLoop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["set_rolling_sphere_hitbox"], + "802f0bd4": ["adjust_rolling_face_pitch"], + "802f0c94": ["snowmans_bottom_act_1"], + "802f0df0": ["snowmans_bottom_act_2"], + "802f0fa8": ["snowmans_bottom_act_3"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["boulder_act_1"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["cap_set_hitbox"], + "802f19c8": ["cap_despawn"], + "802f1a10": ["cap_check_quicksand"], + "802f1bb8": ["cap_sink_quicksand"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["cap_scale_vertically"], + "802f1e5c": ["wing_vanish_cap_act_0"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["metal_cap_act_0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["normal_cap_set_save_flags"], + "802f2284": ["normal_cap_act_0"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["spawn_star"], + "802f2b88": ["spawn_default_star"], + "802f2bd4": ["spawn_red_coin_cutscene_star"], + "802f2c24": ["spawn_no_exit_star"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["rolling_log_roll_log"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["volcano_act_1"], + "802f39b4": ["volcano_act_3"], + "802f3a30": ["bhv_volcano_trap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["one_up_loop_in_air"], + "802f3ea8": ["pole_1up_move_towards_mario"], + "802f401c": ["one_up_move_away_from_mario"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["sliding_1up_move"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["controllable_platform_act_1"], + "802f4ce0": ["controllable_platform_act_2"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["controllable_platform_hit_wall"], + "802f5068": ["controllable_platform_check_walls"], + "802f52c0": ["controllable_platform_shake_on_wall_hit"], + "802f547c": ["controllable_platform_tilt_from_mario"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["small_breakable_box_spawn_dust"], + "802f5e44": ["small_breakable_box_act_move"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["floating_platform_find_home_y"], + "802f665c": ["floating_platform_act_0"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["spawn_treasure_chest"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_init"], + "802f83a4": ["bhv_treasure_chest_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["bhv_yoshi_loop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["mr_blizzard_spawn_white_particles"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["geo_snufit_move_mask"], + "8030d9ac": ["geo_snufit_scale_body"], + "8030da14": ["snufit_act_idle"], + "8030db38": ["snufit_act_shoot"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_lower_prio"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031fd84": ["audio_signal_game_loop_tick"], + "80320678": ["seq_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "803208ec": ["process_level_music_dynamics"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["seq_player_lower_volume"], + "80320ec4": ["seq_player_unlower_volume"], + "803210d4": ["set_audio_muted"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["stop_sound"], + "80321584": ["stop_sounds_from_source"], + "8032171c": ["stop_sounds_in_continuous_banks"], + "8032174c": ["sound_banks_disable"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["set_sound_moving_speed"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["L80326964"], + "80327904": ["L80326984"], + "80327938": ["L803269B8"], + "80327a68": ["L80326AE8"], + "80327ac4": ["L80326B44"], + "80327ae4": ["L80326B64"], + "80327b1c": ["L80326B9C"], + "80327b68": ["L80326BE8"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["gNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["D_8032C648"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d0": ["unused8032C690"], + "8032d5d4": ["gGlobalTimer"], + "8032d5dc": ["frameBufferIndex"], + "8032d5e0": ["gGoddardVblankCallback"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["sWarpCheckpointActive"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["sWarpBhvSpawnTable"], + "8032de4c": ["sSpawnTypeFromWarpBhv"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBobCreditsSplinePositions"], + "8032f8ac": ["sBobCreditsSplineFocus"], + "8032f8d4": ["sWfCreditsSplinePositions"], + "8032f8fc": ["sWfCreditsSplineFocus"], + "8032f924": ["sJrbCreditsSplinePositions"], + "8032f94c": ["sJrbCreditsSplineFocus"], + "8032f974": ["sCcmSlideCreditsSplinePositions"], + "8032f99c": ["sCcmSlideCreditsSplineFocus"], + "8032f9c4": ["sBbhCreditsSplinePositions"], + "8032f9e4": ["sBbhCreditsSplineFocus"], + "8032fa04": ["sHmcCreditsSplinePositions"], + "8032fa2c": ["sHmcCreditsSplineFocus"], + "8032fa54": ["sThiWigglerCreditsSplinePositions"], + "8032fa6c": ["sThiWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSslCreditsSplinePositions"], + "8032fb14": ["sSslCreditsSplineFocus"], + "8032fb44": ["sDddCreditsSplinePositions"], + "8032fb7c": ["sDddCreditsSplineFocus"], + "8032fbb4": ["sSlCreditsSplinePositions"], + "8032fbd4": ["sSlCreditsSplineFocus"], + "8032fbf4": ["sWdwCreditsSplinePositions"], + "8032fc14": ["sWdwCreditsSplineFocus"], + "8032fc34": ["sTtmCreditsSplinePositions"], + "8032fc64": ["sTtmCreditsSplineFocus"], + "8032fc94": ["sThiHugeCreditsSplinePositions"], + "8032fccc": ["sThiHugeCreditsSplineFocus"], + "8032fd04": ["sTtcCreditsSplinePositions"], + "8032fd24": ["sTtcCreditsSplineFocus"], + "8032fd44": ["sRrCreditsSplinePositions"], + "8032fd64": ["sRrCreditsSplineFocus"], + "8032fd84": ["sSaCreditsSplinePositions"], + "8032fdac": ["sSaCreditsSplineFocus"], + "8032fdd4": ["sCotmcCreditsSplinePositions"], + "8032fdfc": ["sCotmcCreditsSplineFocus"], + "8032fe24": ["sDddSubCreditsSplinePositions"], + "8032fe4c": ["sDddSubCreditsSplineFocus"], + "8032fe74": ["sCcmOutsideCreditsSplinePositions"], + "8032fe94": ["sCcmOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "80330000": ["D_8032F0A0"], + "80330004": ["D_8032F0A4"], + "80330020": ["D_8032F0C0"], + "8033002c": ["D_8032F0CC"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "80330094": ["D_8032F134"], + "803300a8": ["unused8032F134"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["unused0EA1FC"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sWFRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301d0": ["D_8032F270"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["D_8032F2A4"], + "80330224": ["sCoinInsideBooActions"], + "8033022c": ["D_8032F2CC"], + "80330244": ["D_8032F2E4"], + "80330260": ["D_8032F300"], + "80330288": ["D_8032F328"], + "80330290": ["D_8032F330"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeParams"], + "803302dc": ["sTumblingBridgeActions"], + "803302ec": ["D_8032F38C"], + "80330318": ["sElevatorActions"], + "8033032c": ["D_8032F3CC"], + "80330340": ["D_8032F3E0"], + "80330354": ["D_8032F3F4"], + "8033035c": ["D_8032F3FC"], + "80330370": ["sUkikiCageActions"], + "80330380": ["D_8032F420"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["D_8032F4FC"], + "8033046c": ["D_8032F50C"], + "80330470": ["D_8032F510"], + "80330474": ["D_8032F514"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["D_8032F520"], + "803304c8": ["sBowserActions"], + "80330518": ["D_8032F5B8"], + "803305f0": ["D_8032F690"], + "803305f4": ["D_8032F694"], + "803305f8": ["D_8032F698"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["D_8032F748"], + "803306b4": ["D_8032F754"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["D_8032F8F0"], + "80330884": ["D_8032F924"], + "803308a8": ["D_8032F948"], + "803308cc": ["D_8032F96C"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["gOpenableGrills"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["sWaterSplashDropletParams"], + "80330d30": ["gShallowWaterSplashDropletParams"], + "80330d54": ["sWaterDropletFishParams"], + "80330d78": ["gShallowWaterWaveDropletParams"], + "80330d9c": ["sStrongWindParticleHitbox"], + "80330dac": ["sSLWalkingPenguinErraticSteps"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWdwWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["sHmcPaintings"], + "80331308": ["sInsideCastlePaintings"], + "80331344": ["sTtmPaintings"], + "8033134c": ["sPaintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gDialogBoxState"], + "80331474": ["gDialogBoxOpenTimer"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gLastDialogPageStrPos"], + "8033148c": ["gDialogTextPos"], + "80331490": ["gDialogLineNum"], + "80331494": ["gLastDialogResponse"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseDoneMenuTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803317e0": ["MacroObjectPresets"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b54": ["D_80331A44"], + "80332b5c": ["D_80331A4C"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBbh"], + "80332f54": ["sDynDdd"], + "80332f6c": ["sDynJrb"], + "80332f88": ["sDynWdw"], + "80332f98": ["sDynHmc"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["sLevelAreaReverbs"], + "80333138": ["sLevelAcousticReaches"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sCurrentBackgroundMusicSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["sSoundBankUsedListBack"], + "803331c0": ["sSoundBankFreeListFront"], + "803331cc": ["sNumSoundsInBank"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gGlobalSoundSource"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["sSoundBanksThatLowerBackgroundMusic"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["sBackgroundMusicMaxTargetVolume"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["gAudioInitPoolSize"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358d0": ["viMgrMainArgs"], + "803358f0": ["__osPiDevMgr"], + "80335910": ["osClockRate"], + "80335918": ["D_80334808"], + "80335920": ["_osContInitialized"], + "80335930": ["D_80334820"], + "80335940": ["D_80334830"], + "80335950": ["_spaces"], + "80335974": ["_zeroes"], + "803359a0": ["D_80334890"], + "803359a4": ["D_80334894"], + "803359a8": ["D_80334898"], + "803359ac": ["D_8033489C"], + "803359b0": ["D_803348A0"], + "803359b4": ["D_803348A4"], + "803359c0": ["sViContexts"], + "80335a20": ["__osViCurr"], + "80335a24": ["__osViNext"], + "80335a28": ["sTvType"], + "80335a2c": ["osViClock"], + "80335a30": ["D_80334920"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["D_80334990"], + "80335af0": ["D_803349E0"], + "80335b40": ["D_80334A30"], + "80335b44": ["D_80334A34"], + "80335b48": ["D_80334A38"], + "80335b50": ["D_80334A40"], + "80335b54": ["D_80334A44"], + "80339880": ["length_str"], + "80339884": ["flags_str"], + "8033988c": ["flags_arr"], + "80339980": ["D_80338610"], + "803399a0": ["jtbl_80338630"], + "803399d0": ["NAN"], + "803399e0": ["D_80338670"], + "80339a40": ["D_803386D0"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "008c0c40": ["_mainSegmentRomEnd"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["D_80339BEC"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["D_80339CB8"], + "8033b040": ["D_80339CD0"], + "8033b044": ["D_80339CD4"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFrameBuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["D_80339CF0"], + "8033b064": ["D_80339CF4"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["D_80339D10"], + "8033b090": ["gDemo"], + "8033b0a0": ["filler80339D30"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused3"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["unused4"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gNeverEnteredCastle"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["filler80339F1C"], + "8033b2c0": ["sFloorAlignMatrix"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gPauseScreenMode"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurAnimType"], + "8033c379": ["gCurAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gCurBhvCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["gPaintingMesh"], + "80361314": ["gPaintingTriNorms"], + "80361318": ["gRipplingPainting"], + "8036131c": ["gDddPaintingStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gDialogColorFadeTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gDialogTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["sSoundBanks"], + "80364b78": ["sSoundMovingSpeed"], + "80364b82": ["sBackgroundMusicTargetVolume"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["__osEventStateTab"], + "80364c20": ["D_803638B0"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["__osPiMesgQueue"], + "80367038": ["piMgrMesgBuff"], + "80367040": ["D_80365CD0"], + "80367050": ["_osContCmdBuf"], + "8036708c": ["_osContPifCtrl"], + "80367090": ["_osLastSentSiCmd"], + "80367091": ["_osContNumControllers"], + "80367098": ["D_80365D28"], + "803670b8": ["_osContMesgQueue"], + "803670d0": ["_osContMesgBuff"], + "803670f0": ["D_80365D80"], + "80367110": ["_osCurrentTime"], + "80367118": ["D_80365DA8"], + "8036711c": ["__osViIntrCount"], + "80367120": ["D_80365DB0"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["D_80365E00"], + "803671ac": ["D_80365E3C"], + "803671b0": ["D_80365E40"], + "803672b0": ["gInterruptedThread"], + "80367460": [".", "_mainSegmentNoloadEnd"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "00000001": ["ASSERT", "ASSERT", "ASSERT"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["random_u16"], + "80383cb4": ["random_float"], + "80383d1c": ["random_sign"], + "80383d68": ["obj_update_gfx_pos_and_angle"], + "80385bf0": ["stub_behavior_script_2"], + "80385c00": ["cur_obj_update"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "007dfb50": ["_engineSegmentRomEnd"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFrameBuffer0"], + "803b5000": ["gFrameBuffer1"], + "803da800": ["gFrameBuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd", "__expansionRamStart"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "007cc6f0": ["_entrySegmentRomEnd"], + "02000000": ["_segment2_mio0SegmentStart"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "007d83d0": ["_segment2_mio0SegmentRomEnd"], + "04013260": [".", "_group0_mio0SegmentEnd"], + "007df920": ["_group0_mio0SegmentRomEnd"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["small_water_splash_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["idle_water_wave_geo"], + "17000168": ["wave_trail_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "007cf4f0": ["_group0_geoSegmentRomEnd"], + "05000000": [ + "_group1_mio0SegmentStart", + "_group2_mio0SegmentStart", + "_group3_mio0SegmentStart", + "_group4_mio0SegmentStart", + "_group5_mio0SegmentStart", + "_group6_mio0SegmentStart", + "_group7_mio0SegmentStart", + "_group8_mio0SegmentStart", + "_group9_mio0SegmentStart", + "_group10_mio0SegmentStart", + "_group11_mio0SegmentStart", + ], + "05008070": [".", "_group1_mio0SegmentEnd"], + "007d4730": ["_group1_mio0SegmentRomEnd"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "007ccad0": ["_group1_geoSegmentRomEnd"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "007ce4d0": ["_group2_mio0SegmentRomEnd"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "007cc970": ["_group2_geoSegmentRomEnd", "_group9_geoSegmentRomEnd"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "007d2f70": ["_group3_mio0SegmentRomEnd"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "007cca00": ["_group3_geoSegmentRomEnd"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "007d69c0": ["_group4_mio0SegmentRomEnd"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "007cc940": ["_group4_geoSegmentRomEnd"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "007d83a0": ["_group5_mio0SegmentRomEnd"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "007ccd20": ["_group5_geoSegmentRomEnd"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "007da7d0": ["_group6_mio0SegmentRomEnd"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "007cca50": ["_group6_geoSegmentRomEnd"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "007d1730": ["_group7_mio0SegmentRomEnd"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "007cca30": ["_group7_geoSegmentRomEnd"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "007cd840": ["_group8_mio0SegmentRomEnd"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "007cc750": ["_group8_geoSegmentRomEnd"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "007d3020": ["_group9_mio0SegmentRomEnd"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "007df390": ["_group10_mio0SegmentRomEnd"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "007ccd30": ["_group10_geoSegmentRomEnd"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "007d3ab0": ["_group11_mio0SegmentRomEnd"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "007ccb60": ["_group11_geoSegmentRomEnd"], + "06000000": [ + "_group12_mio0SegmentStart", + "_group13_mio0SegmentStart", + "_group14_mio0SegmentStart", + "_group15_mio0SegmentStart", + "_group16_mio0SegmentStart", + "_group17_mio0SegmentStart", + ], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "007fd2f0": ["_group12_mio0SegmentRomEnd"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser2_geo"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "007cd310": ["_group12_geoSegmentRomEnd"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "007d67b0": ["_group13_mio0SegmentRomEnd"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "007ccb40": ["_group13_geoSegmentRomEnd"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "007e0120": ["_group14_mio0SegmentRomEnd"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "007ccd40": ["_group14_geoSegmentRomEnd"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "007d8fa0": ["_group15_mio0SegmentRomEnd"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "007cccc0": ["_group15_geoSegmentRomEnd"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "007cf260": ["_group16_mio0SegmentRomEnd"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "007cc810": ["_group16_geoSegmentRomEnd"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "007d6310": ["_group17_mio0SegmentRomEnd"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "007ccd90": ["_group17_geoSegmentRomEnd"], + "08000000": ["_common0_mio0SegmentStart"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "007dad90": ["_common0_mio0SegmentRomEnd"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["dAmpGeo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "007cd200": ["_common0_geoSegmentRomEnd"], + "03000000": ["_common1_mio0SegmentStart"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "007e4050": ["_common1_mio0SegmentRomEnd"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "007cd720": ["_common1_geoSegmentRomEnd"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvThiHugeIslandTop"], + "13000194": ["bhvThiTinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleParticleSpawner"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvPlungeBubble"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWfBreakableWallRight"], + "13000638": ["bhvWfBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWfRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvMrIBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvVertStarParticleSpawner"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvHorStarParticleSpawner"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvTriangleParticleSpawner"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp2"], + "13000bc8": ["bhvThwomp"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvWfTumblingBridge"], + "13000c44": ["bhvBbhTumblingBridge"], + "13000c64": ["bhvLllTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRrElevatorPlatform"], + "13000d30": ["bhvHmcElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvBreathParticleSpawner"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvMistCircParticleSpawner"], + "13000e3c": ["bhvDirtParticleSpawner"], + "13000e58": ["bhvSnowParticleSpawner"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitfsSinkingPlatforms"], + "13000fc8": ["bhvBitfsSinkingCagePlatform"], + "13001000": ["bhvDddMovingPole"], + "13001030": ["bhvBitfsTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRrRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFireParticleSpawner"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWfSlidingTowerPlatform"], + "13001340": ["bhvWfElevatorTowerPlatform"], + "13001368": ["bhvWfSolidTowerPlatform"], + "13001390": ["bhvLeafParticleSpawner"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCcmTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDddWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLllRotatingHexagonalPlatform"], + "13001d40": ["bhvLllSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLllMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLllRotatingBlockWithFireBars"], + "13001dcc": ["bhvLllRotatingHexFlame"], + "13001e04": ["bhvLllWoodPiece"], + "13001e30": ["bhvLllFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLllRotatingHexagonalRing"], + "13001e94": ["bhvLllSinkingRectangularPlatform"], + "13001ec4": ["bhvLllSinkingSquarePlatforms"], + "13001ef8": ["bhvLllTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLllHexagonalMesh"], + "13002038": ["bhvLllBowserPuzzlePiece"], + "13002068": ["bhvLllBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvManyBlueFishSpawner"], + "1300214c": ["bhvFewBlueFishSpawner"], + "1300215c": ["bhvFishSpawner"], + "13002178": ["bhvFish"], + "13002194": ["bhvWdwExpressElevator"], + "130021c0": ["bhvWdwExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJrbSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMistParticleSpawner"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooBossSpawnedBridge"], + "130028cc": ["bhvBbhTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSparkleParticleSpawner"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDroplet"], + "13002c7c": ["bhvWaterDropletSplash"], + "13002cb0": ["bhvBubbleSplash"], + "13002ce0": ["bhvIdleWaterWave"], + "13002d28": ["bhvObjectWaterSplash"], + "13002d50": ["bhvShallowWaterWave"], + "13002d7c": ["bhvShallowWaterSplash"], + "13002db0": ["bhvObjectWaveTrail"], + "13002dc0": ["bhvWaveTrail"], + "13002e04": ["bhvTinyStrongWindParticle"], + "13002e20": ["bhvStrongWindParticle"], + "13002e3c": ["bhvSLSnowmanWind"], + "13002e58": ["bhvSLWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvInstantActiveWarp"], + "13002f64": ["bhvAirborneWarp"], + "13002f68": ["bhvHardAirKnockBackWarp"], + "13002f6c": ["bhvSpinAirborneCircleWarp"], + "13002f70": ["bhvDeathWarp"], + "13002f74": ["bhvSpinAirborneWarp"], + "13002f78": ["bhvFlyingWarp"], + "13002f7c": ["bhvPaintingStarCollectWarp"], + "13002f80": ["bhvPaintingDeathWarp"], + "13002f84": ["bhvAirborneDeathWarp"], + "13002f88": ["bhvAirborneStarCollectWarp"], + "13002f8c": ["bhvLaunchStarCollectWarp"], + "13002f90": ["bhvLaunchDeathWarp"], + "13002f94": ["bhvSwimmingWarp"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLllDrawbridgeSpawner"], + "130038e8": ["bhvLllDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWfSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTtmBowlingBallSpawner"], + "13003aa4": ["bhvBobBowlingBallSpawner"], + "13003ac8": ["bhvThiBowlingBallSpawner"], + "13003ae0": ["bhvRrCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSslMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTtmRollingLog"], + "13003f78": ["bhvLllVolcanoFallingTrap"], + "13003fa4": ["bhvLllRollingLog"], + "13003fdc": ["bhv1upWalking"], + "13004010": ["bhv1upRunningAway"], + "13004044": ["bhv1upSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1upJumpOnApproach"], + "130040ec": ["bhvHidden1up"], + "13004124": ["bhvHidden1upTrigger"], + "13004148": ["bhvHidden1upInPole"], + "13004180": ["bhvHidden1upInPoleTrigger"], + "130041a4": ["bhvHidden1upInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWdwSquareFloatingPlatform"], + "130042b4": ["bhvWdwRectangularFloatingPlatform"], + "130042e4": ["bhvJrbFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJrbFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJrb"], + "13004494": ["bhvTreasureChests"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "007d1d80": ["_behaviorSegmentRomEnd"], + "8016f000": ["_goddardSegmentStart"], }, "Refresh 16": { - "80000000": "EXCEPTION_TLB_MISS", - "a4000000": "SP_DMEM", - "a40004c0": "SP_DMEM_UNK0", - "a4000774": "SP_DMEM_UNK1", - "a4001000": "SP_IMEM", - "a4040010": "SP_STATUS_REG", - "a4080000": "SP_PC", - "0400049c": "D_CN_0400049C", - "0400074c": "D_CN_0400074C", - "a4300000": "MI_MODE_REG", - "a4300004": "MI_VERSION_REG", - "a4300008": "MI_INTR_REG", - "a430000c": "MI_INTR_MASK_REG", - "a4400010": "VI_CURRENT_REG", - "a450000c": "AI_STATUS_REG", - "a4600000": "PI_DRAM_ADDR_REG", - "a4600004": "PI_CART_ADDR_REG", - "a460000c": "PI_WR_LEN_REG", - "a4600010": "PI_STATUS_REG", - "a4600014": "PI_BSD_DOM1_LAT_REG", - "a4600018": "PI_BSD_DOM1_PWD_REG", - "a460001c": "PI_BSD_DOM1_PGS_REG", - "a4600020": "PI_BSD_DOM1_RLS_REG", - "a4700000": "RI_MODE_REG", - "a4700010": "RI_REFRESH_REG", - "a4800018": "SI_STATUS_REG", - "b0000008": "D_B0000008", - "b0000010": "D_B0000010", - "b0000014": "D_B0000014", - "c0000000": "D_C0000000", - "c0000008": "D_C0000008", - "c000000c": "D_C000000C", - "8000035c": "__osBbEepromAddress", - "80000360": "__osBbEepromSize", - "80000364": "__osBbFlashAddress", - "80000368": "__osBbFlashSize", - "8000036c": "__osBbSramAddress", - "80000370": "__osBbSramSize", - "80000374": "__osBbPakAddress", - "80000384": "__osBbPakSize", - "80000388": "__osBbIsBb", - "8000038c": "__osBbHackFlags", - "007cc6c0": "__romPos", - "04000000": "_bootSegmentStart", - "00000000": "_bootSegmentRomStart", - "04000040": "ipl3_entry", - "04000b70": "ipl3_font", - "04001000": "_bootSegmentEnd", - "00001000": "_bootSegmentRomEnd", - "007cc6c0": "__romPos", - "80000400": ".", - "80000400": "_zbufferSegmentNoloadStart", - "80000400": "0x25800", - "80000400": "gZBuffer", - "801c1000": ".", - "801c1000": "_buffersSegmentNoloadStart", - "801c1000": "0x85000", - "801c1000": "gDecompressionHeap", - "801ce000": "gAudioHeap", - "801ff200": "gUnusedThread2Stack", - "80200600": "gIdleThreadStack", - "80200e00": "gThread3Stack", - "80202e00": "gThread4Stack", - "80204e00": "gThread5Stack", - "80206e00": "gGfxSPTaskYieldBuffer", - "80207700": "gSaveBuffer", - "80207900": "gGfxSPTaskStack", - "80207d00": "gGfxPools", - "80220da0": "gAudioGlobalsStartMarker", - "80220db0": "gSynthesisReverb", - "80220e80": "sAudioSynthesisPad", - "80220ea0": "gVolume", - "80220ea2": "gReverbDownsampleRate", - "80220ea3": "sReverbDownsampleRateLog", - "80220ea8": "gAudioSessionPool", - "80220eb8": "gAudioInitPool", - "80220ec8": "gNotesAndBuffersPool", - "80220ed8": "sAudioHeapPad", - "80220ef8": "gSeqAndBankPool", - "80220f08": "gPersistentCommonPool", - "80220f18": "gTemporaryCommonPool", - "80220f28": "gSeqLoadedPool", - "802210f8": "gBankLoadedPool", - "802212c8": "gUnusedLoadedPool", - "80221498": "sSessionPoolSplit", - "802214a8": "sSeqAndBankPoolSplit", - "802214b0": "sPersistentCommonPoolSplit", - "802214c0": "sTemporaryCommonPoolSplit", - "802214d0": "gBankLoadStatus", - "80221510": "gSeqLoadStatus", - "80221610": "gAudioUnusedBuffer", - "80222610": "gNotes", - "80222618": "gSequencePlayers", - "802229d8": "gSequenceChannels", - "802241d8": "gSequenceLayers", - "80225bd8": "gSequenceChannelNone", - "80225c98": "gLayerFreeList", - "80225ca8": "gNoteFreeLists", - "80225ce8": "gCurrAudioFrameDmaQueue", - "80225d00": "gCurrAudioFrameDmaMesgBufs", - "80225e00": "gCurrAudioFrameDmaIoMesgBufs", - "80226300": "gAudioDmaMesgQueue", - "80226318": "gAudioDmaMesg", - "80226320": "gAudioDmaIoMesg", - "80226338": "sSampleDmas", - "80226938": "gSampleDmaNumListItems", - "8022693c": "sSampleDmaListSize1", - "80226940": "sUnused80226B40", - "80226948": "sSampleDmaReuseQueue1", - "80226a48": "sSampleDmaReuseQueue2", - "80226b48": "sSampleDmaReuseQueueTail1", - "80226b49": "sSampleDmaReuseQueueTail2", - "80226b4a": "sSampleDmaReuseQueueHead1", - "80226b4b": "sSampleDmaReuseQueueHead2", - "80226b4c": "gSeqFileHeader", - "80226b50": "gAlCtlHeader", - "80226b54": "gAlTbl", - "80226b58": "gAlBankSets", - "80226b5c": "gSequenceCount", - "80226b60": "gCtlEntries", - "80226b64": "gAiFrequency", - "80226b68": "sDmaBufSize", - "80226b6c": "gMaxAudioCmds", - "80226b70": "gMaxSimultaneousNotes", - "80226b74": "gSamplesPerFrameTarget", - "80226b78": "gMinAiBufferLength", - "80226b7c": "gTempoInternalToExternal", - "80226b7e": "gAudioUpdatesPerFrame", - "80226b7f": "gSoundMode", - "80226b80": "gAudioFrameCount", - "80226b84": "gCurrAudioFrameDmaCount", - "80226b88": "gAudioTaskIndex", - "80226b8c": "gCurrAiBufferIndex", - "80226b90": "gAudioCmdBuffers", - "80226b98": "gAudioCmd", - "80226b9c": "gAudioTask", - "80226ba0": "gAudioTasks", - "80226c40": "gAiBuffers", - "80226c4c": "gAiBufferLengths", - "80226c58": "gUnused80226E58", - "80226c98": "gUnused80226E98", - "80226cb8": "gAudioRandom", - "80226cc0": "gAudioGlobalsEndMarker", - "80227000": ".", - "80227000": "gGfxSPTaskOutputBuffer", - "80246000": "_buffersSegmentNoloadEnd", - "80246000": "_mainSegmentStart", - "00001000": "_mainSegmentRomStart", - "80246000": "entry_point", - "80246050": "handle_debug_key_sequences", - "80246170": "unknown_main_func", - "802461cc": "stub_main_1", - "802461dc": "stub_main_2", - "802461ec": "stub_main_3", - "802461fc": "setup_mesg_queues", - "802462e0": "alloc_pool", - "80246338": "create_thread", - "8024639c": "handle_nmi_request", - "802463ec": "receive_new_tasks", - "8024651c": "start_sptask", - "8024659c": "interrupt_gfx_sptask", - "802465ec": "start_gfx_sptask", - "80246648": "pretend_audio_sptask_done", - "8024669c": "handle_vblank", - "802467fc": "handle_sp_complete", - "8024694c": "handle_dp_complete", - "802469b8": "thread3_main", - "80246b14": "set_vblank_handler", - "80246b74": "send_sp_task_message", - "80246bb4": "dispatch_audio_sptask", - "80246c10": "exec_display_list", - "80246c9c": "turn_on_audio", - "80246cb8": "turn_off_audio", - "80246cf0": "thread1_idle", - "80246df8": "main_func", - "80246e70": "init_rdp", - "802471a4": "init_rsp", - "80247284": "init_z_buffer", - "802473c8": "select_framebuffer", - "802474b8": "clear_framebuffer", - "80247620": "clear_viewport", - "8024784c": "draw_screen_borders", - "802479bc": "make_viewport_clip_rect", - "80247b3c": "create_gfx_task_structure", - "80247ccc": "init_rcp", - "80247d14": "end_master_display_list", - "80247db4": "draw_reset_bars", - "80247f08": "render_init", - "80247fdc": "select_gfx_pool", - "80248090": "display_and_vsync", - "80248304": "adjust_analog_stick", - "80248498": "run_demo_inputs", - "80248638": "read_controller_inputs", - "80248824": "init_controllers", - "80248964": "setup_game_memory", - "80248af0": "thread5_game_loop", - "80248c40": "reset_volume", - "80248c58": "lower_background_noise", - "80248ce8": "raise_background_noise", - "80248d78": "disable_background_sound", - "80248dc0": "enable_background_sound", - "80248e08": "set_sound_mode", - "80248e54": "play_menu_sounds", - "80248fec": "play_painting_eject_sound", - "80249070": "play_infinite_stairs_music", - "80249178": "set_background_music", - "8024922c": "fadeout_music", - "8024927c": "fadeout_level_music", - "802492d0": "play_cutscene_music", - "80249310": "play_shell_music", - "8024934c": "stop_shell_music", - "80249398": "play_cap_music", - "80249404": "fadeout_cap_music", - "80249448": "stop_cap_music", - "80249494": "play_menu_sounds_extra", - "802494d8": "audio_game_loop_tick", - "80249500": "thread4_sound", - "802495e0": "level_control_timer", - "802496b8": "pressed_pause", - "80249764": "set_play_mode", - "8024978c": "warp_special", - "802497b8": "fade_into_special_warp", - "8024982c": "stub_level_update_1", - "8024983c": "load_level_init_text", - "8024995c": "init_door_warp", - "80249a10": "set_mario_initial_cap_powerup", - "80249ab4": "set_mario_initial_action", - "80249cd8": "init_mario_after_warp", - "8024a124": "warp_area", - "8024a18c": "warp_level", - "8024a1d8": "warp_credits", - "8024a374": "check_instant_warp", - "8024a584": "music_changed_through_warp", - "8024a700": "initiate_warp", - "8024a7b4": "get_painting_warp_node", - "8024a85c": "initiate_painting_warp", - "8024a9cc": "level_trigger_warp", - "8024aedc": "initiate_delayed_warp", - "8024b13c": "update_hud_values", - "8024b390": "basic_update", - "8024b3e4": "play_mode_normal", - "8024b5d4": "play_mode_paused", - "8024b6cc": "play_mode_frame_advance", - "8024b798": "level_set_transition", - "8024b7c0": "play_mode_change_area", - "8024b880": "play_mode_change_level", - "8024b9b8": "update_level", - "8024ba8c": "init_level", - "8024bcd8": "lvl_init_or_update", - "8024bd5c": "lvl_init_from_save_file", - "8024be14": "lvl_set_current_level", - "8024bfa0": "lvl_play_the_end_screen_sound", - "8024bff0": "get_mario_cap_flag", - "8024c0b8": "object_facing_mario", - "8024c16c": "mario_obj_angle_to_object", - "8024c1d8": "determine_interaction", - "8024c51c": "attack_object", - "8024c618": "mario_stop_riding_object", - "8024c66c": "mario_grab_used_object", - "8024c6c0": "mario_drop_held_object", - "8024c780": "mario_throw_held_object", - "8024c894": "mario_stop_riding_and_holding", - "8024c8fc": "does_mario_have_normal_cap_on_head", - "8024c928": "mario_blow_off_cap", - "8024ca68": "mario_lose_cap_to_enemy", - "8024caf8": "mario_retrieve_cap", - "8024cb58": "able_to_grab_object", - "8024cbfc": "mario_get_collided_object", - "8024cc7c": "mario_check_object_grab", - "8024ce08": "bully_knock_back_mario", - "8024d0b4": "bounce_off_object", - "8024d130": "hit_object_from_below", - "8024d2bc": "determine_knockback_action", - "8024d578": "push_mario_out_of_object", - "8024d72c": "bounce_back_from_attack", - "8024d804": "should_push_or_pull_door", - "8024d8b0": "take_damage_from_interact_object", - "8024d998": "take_damage_and_knock_back", - "8024daac": "reset_mario_pitch", - "8024db2c": "interact_coin", - "8024dbf0": "interact_water_ring", - "8024dc28": "interact_star_or_key", - "8024de4c": "interact_bbh_entrance", - "8024df10": "interact_warp", - "8024e0c4": "interact_warp_door", - "8024e2fc": "get_door_save_file_flag", - "8024e420": "interact_door", - "8024e6ec": "interact_cannon_base", - "8024e778": "interact_igloo_barrier", - "8024e7d4": "interact_tornado", - "8024e8f0": "interact_whirlpool", - "8024e9d0": "interact_strong_wind", - "8024ead8": "interact_flame", - "8024ec54": "interact_snufit_bullet", - "8024ed84": "interact_clam_or_bubba", - "8024ee44": "interact_bully", - "8024eff8": "interact_shock", - "8024f170": "interact_mr_blizzard", - "8024f1e0": "interact_hit_from_below", - "8024f354": "interact_bounce_top", - "8024f4ac": "interact_unknown_08", - "8024f55c": "interact_damage", - "8024f5cc": "interact_breakable", - "8024f6a4": "interact_koopa_shell", - "8024f7a8": "check_object_grab_mario", - "8024f8bc": "interact_pole", - "8024fa60": "interact_hoot", - "8024fb30": "interact_cap", - "8024fd2c": "interact_grabbable", - "8024fe6c": "mario_can_talk", - "8024ff04": "check_read_sign", - "80250098": "check_npc_talk", - "80250198": "interact_text", - "80250230": "check_kick_or_punch_wall", - "802503f0": "mario_process_interactions", - "802505c8": "check_death_barrier", - "8025065c": "check_lava_boost", - "80250724": "pss_begin_slide", - "80250778": "pss_end_slide", - "802507fc": "mario_handle_special_floors", - "80250940": "is_anim_at_end", - "8025097c": "is_anim_past_end", - "802509b8": "set_mario_animation", - "80250b04": "set_mario_anim_with_accel", - "80250c7c": "set_anim_to_frame", - "80250d38": "is_anim_past_frame", - "80250e54": "find_mario_anim_flags_and_translation", - "80251020": "update_mario_pos_for_anim", - "802510dc": "return_mario_anim_y_translation", - "80251120": "play_sound_if_no_flag", - "8025118c": "play_mario_jump_sound", - "80251274": "adjust_sound_for_speed", - "80251310": "play_sound_and_spawn_particles", - "80251444": "play_mario_action_sound", - "802514ac": "play_mario_landing_sound", - "80251510": "play_mario_landing_sound_once", - "80251574": "play_mario_heavy_landing_sound", - "802515d8": "play_mario_heavy_landing_sound_once", - "8025163c": "play_mario_sound", - "80251708": "mario_set_forward_vel", - "8025177c": "mario_get_floor_class", - "802518a8": "mario_get_terrain_sound_addend", - "80251a48": "resolve_and_return_wall_collisions", - "80251afc": "vec3f_find_ceil", - "80251b54": "mario_facing_downhill", - "80251bd4": "mario_floor_is_slippery", - "80251cfc": "mario_floor_is_slope", - "80251e24": "mario_floor_is_steep", - "80251f24": "find_floor_height_relative_polar", - "80252000": "find_floor_slope", - "802521a0": "update_mario_sound_and_camera", - "8025229c": "set_steep_jump_action", - "80252cf4": "set_mario_action", - "80252e5c": "set_jump_from_landing", - "802530a0": "set_jumping_action", - "80253178": "drop_and_set_mario_action", - "802531c4": "hurt_and_set_mario_action", - "80253218": "check_common_action_exits", - "80253300": "check_common_hold_action_exits", - "802533e4": "transition_submerged_to_walking", - "80253488": "set_water_plunge_action", - "80253588": "squish_mario_model", - "80253720": "debug_print_speed_action_normal", - "80253838": "update_mario_button_inputs", - "8025395c": "update_mario_joystick_inputs", - "80253a60": "update_mario_geometry_inputs", - "80253d58": "update_mario_inputs", - "80253ec0": "set_submerged_cam_preset_and_spawn_bubbles", - "80254060": "update_mario_health", - "802542b4": "update_mario_info_for_cam", - "80254338": "mario_reset_bodystate", - "80254390": "sink_mario_in_quicksand", - "802543e8": "update_and_return_cap_flags", - "80254588": "mario_update_hitbox_and_cap_model", - "80254830": "execute_mario_action", - "80254b20": "init_mario", - "80254f44": "init_mario_from_save_file", - "80255080": "get_additive_y_vel_for_jumps", - "8025509c": "stub_mario_step_1", - "802550b0": "stub_mario_step_2", - "802550c0": "transfer_bully_speed", - "80255238": "init_bully_collision_data", - "802552fc": "mario_bonk_reflection", - "80255414": "mario_update_quicksand", - "80255654": "mario_push_off_steep_floor", - "8025570c": "mario_update_moving_sand", - "8025580c": "mario_update_windy_ground", - "802559b0": "stop_and_set_height_to_floor", - "80255a34": "stationary_ground_step", - "80255d88": "perform_ground_step", - "80255ec4": "check_ledge_grab", - "802560ac": "perform_air_quarter_step", - "802564e0": "apply_twirl_gravity", - "80256584": "should_strengthen_gravity_for_jump_ascent", - "8025661c": "apply_gravity", - "802569f8": "apply_vertical_wind", - "80256b24": "perform_air_step", - "80256cd8": "set_vel_from_pitch_and_yaw", - "80256d8c": "set_vel_from_yaw", - "80256e00": "get_credits_str_width", - "80256e88": "print_displaying_credits_entry", - "80257060": "bhv_end_peach_loop", - "802570dc": "bhv_end_toad_loop", - "80257198": "geo_switch_peach_eyes", - "802572b0": "get_star_collection_dialog", - "8025733c": "handle_save_menu", - "80257450": "spawn_obj_at_mario_rel_yaw", - "802574e8": "cutscene_take_cap_off", - "80257548": "cutscene_put_cap_on", - "802575a8": "mario_ready_to_speak", - "80257640": "set_mario_npc_dialog", - "80257748": "act_reading_npc_dialog", - "80257980": "act_waiting_for_dialog", - "80257a0c": "act_disappeared", - "80257ab0": "act_reading_automatic_dialog", - "80257ce4": "act_reading_sign", - "80257eac": "act_debug_free_move", - "80258184": "general_star_dance_handler", - "80258420": "act_star_dance", - "802584dc": "act_star_dance_water", - "802585c0": "act_fall_after_star_grab", - "802586cc": "common_death_handler", - "80258744": "act_standing_death", - "802587ec": "act_electrocution", - "8025883c": "act_suffocation", - "8025888c": "act_death_on_back", - "802588f8": "act_death_on_stomach", - "80258964": "act_quicksand_death", - "80258a7c": "act_eaten_by_bubba", - "80258b24": "launch_mario_until_land", - "80258ba8": "act_unlocking_key_door", - "80258dac": "act_unlocking_star_door", - "80258f94": "act_entering_star_door", - "80259264": "act_going_through_door", - "802593cc": "act_warp_door_spawn", - "802594d4": "act_emerge_from_pipe", - "80259608": "act_spawn_spin_airborne", - "80259740": "act_spawn_spin_landing", - "802597ac": "act_exit_airborne", - "80259854": "act_falling_exit_airborne", - "802598d0": "act_exit_land_save_dialog", - "80259c30": "act_death_exit", - "80259ce8": "act_unused_death_exit", - "80259d74": "act_falling_death_exit", - "80259e00": "act_special_exit_airborne", - "80259ef8": "act_special_death_exit", - "80259fcc": "act_spawn_no_spin_airborne", - "8025a040": "act_spawn_no_spin_landing", - "8025a0bc": "act_bbh_enter_spin", - "8025a494": "act_bbh_enter_jump", - "8025a610": "act_teleport_fade_out", - "8025a6fc": "act_teleport_fade_in", - "8025a858": "act_shocked", - "8025a9ac": "act_squished", - "8025ae0c": "act_putting_on_cap", - "8025aea8": "stuck_in_ground_handler", - "8025affc": "act_head_stuck_in_ground", - "8025b050": "act_butt_stuck_in_ground", - "8025b0a4": "act_feet_stuck_in_ground", - "8025bc80": "generate_yellow_sparkles", - "8025d798": "mario_execute_cutscene_action", - "8025dd70": "add_tree_leaf_particles", - "8025de1c": "play_climbing_sounds", - "8025df04": "set_pole_position", - "8025e21c": "act_holding_pole", - "8025e5a8": "act_climbing_pole", - "8025e7a4": "act_grab_pole_slow", - "8025e830": "act_grab_pole_fast", - "8025e930": "act_top_of_pole_transition", - "8025ea30": "act_top_of_pole", - "8025eb50": "perform_hanging_step", - "8025ecfc": "update_hang_moving", - "8025eed0": "update_hang_stationary", - "8025ef58": "act_start_hanging", - "8025f0b4": "act_hanging", - "8025f1e4": "act_hang_moving", - "8025f384": "let_go_of_ledge", - "8025f4b4": "climb_up_ledge", - "8025f560": "update_ledge_climb_camera", - "8025f644": "update_ledge_climb", - "8025f6c0": "act_ledge_grab", - "8025f970": "act_ledge_climb_slow", - "8025fa64": "act_ledge_climb_down", - "8025fae8": "act_ledge_climb_fast", - "8025fb90": "act_grabbed", - "8025fc6c": "act_in_cannon", - "80260154": "act_tornado_twirling", - "80260568": "check_common_automatic_cancels", - "802605d0": "mario_execute_automatic_action", - "802608b0": "check_common_idle_cancels", - "80260aac": "check_common_hold_idle_cancels", - "80260cb4": "act_idle", - "80260f94": "play_anim_sound", - "80261000": "act_start_sleeping", - "80261268": "act_sleeping", - "802614fc": "act_waking_up", - "8026168c": "act_shivering", - "802618d8": "act_coughing", - "802619d0": "act_hold_idle", - "80261ad0": "act_hold_heavy_idle", - "80261bf8": "act_standing_against_wall", - "80261cec": "act_in_quicksand", - "80261db4": "act_crouching", - "80261f70": "act_panting", - "80262080": "act_hold_panting_unused", - "8026217c": "stopping_step", - "802621dc": "act_braking_stop", - "802622dc": "act_butt_slide_stop", - "80262398": "act_hold_butt_slide_stop", - "80262490": "act_slide_kick_slide_stop", - "80262530": "act_start_crouching", - "80262650": "act_stop_crouching", - "80262770": "act_start_crawling", - "80262890": "act_stop_crawling", - "80262980": "act_shockwave_bounce", - "80262bc4": "landing_step", - "80262c34": "check_common_landing_cancels", - "80262d68": "act_jump_land_stop", - "80262dc4": "act_double_jump_land_stop", - "80262e20": "act_side_flip_land_stop", - "80262e94": "act_freefall_land_stop", - "80262ef0": "act_triple_jump_land_stop", - "80262f50": "act_backflip_land_stop", - "80262fec": "act_lava_boost_land", - "8026305c": "act_long_jump_land_stop", - "802630f8": "act_hold_jump_land_stop", - "802631f0": "act_hold_freefall_land_stop", - "802632e8": "act_air_throw_land", - "802633b4": "act_twirl_land", - "8026350c": "act_ground_pound_land", - "802635e8": "act_first_person", - "80263784": "check_common_stationary_cancels", - "80263898": "mario_execute_stationary_action", - "80263e60": "tilt_body_running", - "80263ee4": "play_step_sound", - "80264024": "align_with_floor", - "8026409c": "begin_walking_action", - "802640fc": "check_ledge_climb_down", - "802642b4": "slide_bonk", - "80264340": "set_triple_jump_action", - "8026440c": "update_sliding_angle", - "80264740": "update_sliding", - "80264b54": "apply_slope_accel", - "80264d80": "apply_landing_accel", - "80264e18": "update_shell_speed", - "80265080": "apply_slope_decel", - "802651b0": "update_decelerating_speed", - "80265244": "update_walking_speed", - "80265458": "should_begin_sliding", - "80265514": "analog_stick_held_back", - "80265558": "check_ground_dive_or_punch", - "80265620": "begin_braking_action", - "80265700": "anim_and_audio_for_walk", - "80265b1c": "anim_and_audio_for_hold_walk", - "80265d90": "anim_and_audio_for_heavy_walk", - "80265df8": "push_or_sidle_wall", - "80266038": "tilt_body_walking", - "802661cc": "tilt_body_ground_shell", - "80266354": "act_walking", - "802665b4": "act_move_punching", - "80266734": "act_hold_walking", - "8026699c": "act_hold_heavy_walking", - "80266af8": "act_turning_around", - "80266d4c": "act_finish_turning_around", - "80266e48": "act_braking", - "80266fc8": "act_decelerating", - "80267240": "act_hold_decelerating", - "80267504": "act_riding_shell_ground", - "80267728": "act_crawling", - "8026795c": "act_burning_ground", - "80267c24": "tilt_body_butt_slide", - "80267ce4": "common_slide_action", - "80267fa4": "common_slide_action_with_jump", - "80268074": "act_butt_slide", - "802680d4": "act_hold_butt_slide", - "80268168": "act_crouch_slide", - "80268338": "act_slide_kick_slide", - "802684ac": "stomach_slide_action", - "802685c0": "act_stomach_slide", - "80268608": "act_hold_stomach_slide", - "80268684": "act_dive_slide", - "802687b8": "common_ground_knockback_action", - "802689f8": "act_hard_backward_ground_kb", - "80268adc": "act_hard_forward_ground_kb", - "80268b64": "act_backward_ground_kb", - "80268bb0": "act_forward_ground_kb", - "80268bfc": "act_soft_backward_ground_kb", - "80268c48": "act_soft_forward_ground_kb", - "80268c94": "act_ground_bonk", - "80268d04": "act_death_exit_land", - "80268dcc": "common_landing_action", - "80268f78": "common_landing_cancels", - "80269108": "act_jump_land", - "80269170": "act_freefall_land", - "802691d8": "act_side_flip_land", - "80269264": "act_hold_jump_land", - "80269300": "act_hold_freefall_land", - "8026939c": "act_long_jump_land", - "8026947c": "act_double_jump_land", - "802694e4": "act_triple_jump_land", - "80269588": "act_backflip_land", - "80269640": "quicksand_jump_land_action", - "80269788": "act_quicksand_jump_land", - "802697dc": "act_hold_quicksand_jump_land", - "80269830": "check_common_moving_cancels", - "80269954": "mario_execute_moving_action", - "80269f40": "play_flip_sounds", - "80269fc0": "play_far_fall_sound", - "8026a090": "play_knockback_sound", - "8026a12c": "lava_boost_on_wall", - "8026a224": "check_fall_damage", - "8026a400": "check_kick_or_dive_in_air", - "8026a494": "should_get_stuck_in_ground", - "8026a598": "check_fall_damage_or_get_stuck", - "8026a62c": "check_horizontal_wind", - "8026a818": "update_air_with_turn", - "8026aa48": "update_air_without_turn", - "8026acd8": "update_lava_boost_or_twirling", - "8026ae5c": "update_flying_yaw", - "8026b004": "update_flying_pitch", - "8026b17c": "update_flying", - "8026b444": "common_air_action_step", - "8026b6a0": "act_jump", - "8026b740": "act_double_jump", - "8026b814": "act_triple_jump", - "8026b90c": "act_backflip", - "8026b9ac": "act_freefall", - "8026bab8": "act_hold_jump", - "8026bbb4": "act_hold_freefall", - "8026bcc0": "act_side_flip", - "8026bdcc": "act_wall_kick_air", - "8026be78": "act_long_jump", - "8026bf40": "act_riding_shell_air", - "8026c034": "act_twirling", - "8026c1e0": "act_dive", - "8026c4b8": "act_air_throw", - "8026c5d0": "act_water_jump", - "8026c738": "act_hold_water_jump", - "8026c880": "act_steep_jump", - "8026c9fc": "act_ground_pound", - "8026cd0c": "act_burning_jump", - "8026ce50": "act_burning_fall", - "8026cf28": "act_crazy_box_bounce", - "8026d1b0": "common_air_knockback_step", - "8026d33c": "check_wall_kick", - "8026d3c8": "act_backward_air_kb", - "8026d43c": "act_forward_air_kb", - "8026d4b0": "act_hard_backward_air_kb", - "8026d508": "act_hard_forward_air_kb", - "8026d560": "act_thrown_backward", - "8026d608": "act_thrown_forward", - "8026d6fc": "act_soft_bonk", - "8026d770": "act_getting_blown", - "8026d988": "act_air_hit_wall", - "8026db54": "act_forward_rollout", - "8026dcf4": "act_backward_rollout", - "8026de98": "act_butt_slide_air", - "8026e088": "act_hold_butt_slide_air", - "8026e2b4": "act_lava_boost", - "8026e59c": "act_slide_kick", - "8026e810": "act_jump_kick", - "8026e968": "act_shot_from_cannon", - "8026ec00": "act_flying", - "8026f158": "act_riding_hoot", - "8026f2ec": "act_flying_triple_jump", - "8026f614": "act_top_of_pole_jump", - "8026f660": "act_vertical_wind", - "8026f840": "act_special_triple_jump", - "8026fa18": "check_common_airborne_cancels", - "8026fb04": "mario_execute_airborne_action", - "8027499c": "mario_execute_submerged_action", - "80274eb0": "animated_stationary_ground_step", - "80274f10": "mario_update_punch_sequence", - "80275328": "act_punching", - "8027546c": "act_picking_up", - "802755fc": "act_dive_picking_up", - "802756c8": "act_placing_down", - "80275794": "act_throwing", - "802758c0": "act_heavy_throw", - "802759b4": "act_stomach_slide_stop", - "80275a80": "act_picking_up_bowser", - "80275b34": "act_holding_bowser", - "80275e78": "act_releasing_bowser", - "80275f0c": "check_common_object_cancels", - "80275fe0": "mario_execute_object_action", - "802761d0": "geo_envfx_main", - "802763d4": "geo_skybox_main", - "802764b0": "geo_draw_mario_head_goddard", - "8027684c": "bhv_toad_message_loop", - "80276910": "bhv_toad_message_init", - "80276bb8": "bhv_unlock_door_star_init", - "80276ccc": "bhv_unlock_door_star_loop", - "802770a4": "geo_mirror_mario_set_alpha", - "80277150": "geo_switch_mario_stand_run", - "802771bc": "geo_switch_mario_eyes", - "80277294": "geo_mario_tilt_torso", - "802773a4": "geo_mario_head_rotation", - "802774f4": "geo_switch_mario_hand", - "802775cc": "geo_mario_hand_foot_scaler", - "802776d8": "geo_switch_mario_cap_effect", - "80277740": "geo_switch_mario_cap_on_off", - "80277824": "geo_mario_rotate_wing_cap_wings", - "8027795c": "geo_switch_mario_hand_grab_pos", - "80277b14": "geo_render_mirror_mario", - "80277d6c": "geo_mirror_mario_backface_culling", - "80277ee0": "set_segment_base_addr", - "80277f20": "get_segment_base_addr", - "80277f50": "segmented_to_virtual", - "80277fa8": "virtual_to_segmented", - "80277ff0": "move_segment_table_to_dmem", - "80278074": "main_pool_init", - "80278120": "main_pool_alloc", - "80278238": "main_pool_free", - "80278358": "main_pool_realloc", - "802783c8": "main_pool_available", - "802783e8": "main_pool_push_state", - "80278498": "main_pool_pop_state", - "8027868c": "load_segment", - "802786f0": "load_to_fixed_pool_addr", - "802787d8": "load_segment_decompress", - "802788b4": "load_segment_decompress_heap", - "80278974": "load_engine_code_segment", - "80278a14": "alloc_only_pool_init", - "80278ab8": "alloc_only_pool_alloc", - "80278b28": "alloc_only_pool_resize", - "80278b98": "mem_pool_init", - "80278c58": "mem_pool_alloc", - "80278d74": "mem_pool_free", - "80278f2c": "alloc_display_list", - "80279028": "setup_dma_table_list", - "80279084": "load_patchable_table", - "80279840": "save_file_do_save", - "802798fc": "save_file_erase", - "80279960": "save_file_copy", - "802799dc": "save_file_load_all", - "80279bc8": "save_file_reload", - "80279c44": "save_file_collect_star_or_key", - "80279e44": "save_file_exists", - "80279e80": "save_file_get_max_coin_score", - "80279f80": "save_file_get_course_star_count", - "8027a010": "save_file_get_total_star_count", - "8027a0a8": "save_file_set_flags", - "8027a0f4": "save_file_clear_flags", - "8027a16c": "save_file_get_flags", - "8027a1c8": "save_file_get_star_flags", - "8027a23c": "save_file_set_star_flags", - "8027a310": "save_file_get_course_coin_score", - "8027a340": "save_file_is_cannon_unlocked", - "8027a390": "save_file_set_cannon_unlocked", - "8027a418": "save_file_set_cap_pos", - "8027a4ac": "save_file_get_cap_pos", - "8027a564": "save_file_set_sound_mode", - "8027a5b4": "save_file_get_sound_mode", - "8027a5d4": "save_file_move_cap_to_default_location", - "8027a698": "disable_warp_checkpoint", - "8027a6b0": "check_if_should_set_warp_checkpoint", - "8027a718": "check_warp_checkpoint", - "8027a7d0": "override_viewport_and_clip", - "8027a83c": "set_warp_transition_rgb", - "8027a8b0": "print_intro_text", - "8027a93c": "get_mario_spawn_type", - "8027a9c8": "area_get_warp_node", - "8027aa28": "area_get_warp_node_from_params", - "8027aa74": "load_obj_warp_nodes", - "8027ab04": "clear_areas", - "8027ad74": "clear_area_graph_nodes", - "8027ae44": "load_area", - "8027af48": "unload_area", - "8027afbc": "load_mario_area", - "8027b038": "unload_mario_area", - "8027b0c0": "change_area", - "8027b164": "area_update_objects", - "8027b1a0": "play_transition", - "8027b35c": "play_transition_after_delay", - "8027b3b4": "render_game", - "8027cf38": "geo_set_animation_globals", - "8027da84": "geo_process_held_object", - "8027de68": "geo_try_process_children", - "8027dea8": "geo_process_node_and_siblings", - "8027e130": "geo_process_root", - "8027e3e0": "profiler_log_thread5_time", - "8027e490": "profiler_log_thread4_time", - "8027e520": "profiler_log_gfx_time", - "8027e5cc": "profiler_log_vblank_time", - "8027e65c": "draw_profiler_bar", - "8027e958": "draw_reference_profiler_bars", - "8027ebcc": "draw_profiler_mode_1", - "8027eeac": "draw_profiler_mode_0", - "8027f460": "draw_profiler", - "8027f4e0": "decompress", - "8027f590": "set_camera_shake_from_hit", - "8027f8b8": "set_environmental_camera_shake", - "8027f9f0": "set_camera_shake_from_point", - "8027fb74": "unused_set_camera_pitch_shake_env", - "8027fc18": "calc_y_to_curr_floor", - "8027fe20": "focus_on_mario", - "8027fff8": "set_camera_height", - "80280368": "look_down_slopes", - "802804f4": "pan_ahead_of_player", - "802806a4": "find_in_bounds_yaw_wdw_bob_thi", - "80280810": "update_radial_camera", - "80280970": "update_8_directions_camera", - "80280b00": "radial_camera_move", - "80281188": "lakitu_zoom", - "802813bc": "radial_camera_input_default", - "802813ec": "update_yaw_and_dist_from_c_up", - "8028146c": "mode_radial_camera", - "80281588": "mode_8_directions_camera", - "802816a0": "update_outward_radial_camera", - "802817fc": "mode_outward_radial_camera", - "80281904": "update_parallel_tracking_camera", - "80282280": "update_fixed_camera", - "802826a0": "update_boss_fight_camera", - "80282c0c": "unused_update_mode_5_camera", - "80282c3c": "mode_boss_fight_camera", - "80282c7c": "mode_parallel_tracking_camera", - "80282ce0": "mode_fixed_camera", - "80282d78": "update_behind_mario_camera", - "80283340": "mode_behind_mario", - "80283578": "update_slide_camera", - "802839e4": "mode_behind_mario_camera", - "80283a18": "nop_update_water_camera", - "80283a34": "mode_water_surface_camera", - "80283a68": "update_mario_camera", - "80283af8": "update_default_camera", - "80284cb8": "mode_default_camera", - "80284cfc": "mode_lakitu_camera", - "80284d38": "mode_mario_camera", - "80284d74": "update_spiral_stairs_camera", - "802850ac": "mode_spiral_stairs_camera", - "802850ec": "update_slide_or_0f_camera", - "802851dc": "mode_slide_camera", - "8028526c": "store_lakitu_cam_info_for_c_up", - "802852f4": "set_mode_c_up", - "80285370": "exit_c_up", - "80285808": "update_c_up", - "802858a4": "move_mario_head_c_up", - "80285a2c": "move_into_c_up", - "80285d20": "mode_c_up_camera", - "80285ed8": "update_in_cannon", - "80285f60": "mode_cannon_camera", - "8028603c": "transition_next_state", - "80286088": "transition_to_camera_mode", - "80286188": "set_camera_mode", - "80286420": "update_lakitu", - "802868f8": "update_camera", - "80286f68": "reset_camera", - "8028724c": "init_camera", - "802879ec": "zoom_out_if_paused_and_outside", - "80287bc4": "select_mario_cam_mode", - "80287be0": "create_camera", - "80287cb8": "update_graph_node_camera", - "80287d30": "geo_camera_main", - "80287dc0": "stub_camera_2", - "80287dd4": "stub_camera_3", - "80287de8": "vec3f_sub", - "80287e28": "object_pos_to_vec3f", - "80287e50": "vec3f_to_object_pos", - "80287e78": "unused_object_angle_to_vec3s", - "80287ea0": "evaluate_cubic_spline", - "802882e4": "move_point_along_spline", - "80288624": "cam_select_alt_mode", - "80288718": "set_cam_angle", - "80288888": "set_handheld_shake", - "802889b0": "shake_camera_handheld", - "80288ce4": "find_c_buttons_pressed", - "80288e68": "update_camera_hud_status", - "80288f5c": "collide_with_walls", - "80289198": "vec3f_compare", - "80289214": "clamp_pitch", - "802892d8": "is_within_100_units_of_mario", - "8028935c": "set_or_approach_f32_asymptotic", - "802893f4": "approach_f32_asymptotic_bool", - "80289488": "approach_f32_asymptotic", - "802894b4": "approach_s16_asymptotic_bool", - "8028956c": "approach_s16_asymptotic", - "80289610": "approach_vec3f_asymptotic", - "80289684": "set_or_approach_vec3f_asymptotic", - "802896f8": "approach_vec3s_asymptotic", - "8028976c": "camera_approach_s16_symmetric_bool", - "8028984c": "camera_approach_s16_symmetric", - "8028993c": "set_or_approach_s16_symmetric", - "802899cc": "camera_approach_f32_symmetric_bool", - "80289b0c": "camera_approach_f32_symmetric", - "80289c00": "random_vec3s", - "80289d20": "reduce_by_dist_from_camera", - "80289f88": "clamp_positions_and_find_yaw", - "8028a080": "calc_avoid_yaw", - "8028a0f4": "is_surf_within_bounding_box", - "8028a4ec": "is_behind_surface", - "8028a6bc": "is_range_behind_surface", - "8028a7ec": "is_mario_behind_surface", - "8028a834": "scale_along_line", - "8028a8e8": "is_pos_in_bounds", - "8028aa28": "calculate_pitch", - "8028aad8": "calculate_yaw", - "8028ab60": "calculate_angles", - "8028ac28": "calc_abs_dist", - "8028accc": "calc_hor_dist", - "8028ad4c": "rotate_in_xz", - "8028ae1c": "rotate_in_yz", - "8028aef0": "set_camera_pitch_shake", - "8028af4c": "set_camera_yaw_shake", - "8028b00c": "set_camera_roll_shake", - "8028b068": "set_pitch_shake_from_point", - "8028b11c": "set_yaw_shake_from_point", - "8028b1d0": "increment_shake_offset", - "8028b218": "shake_camera_pitch", - "8028b32c": "shake_camera_yaw", - "8028b438": "shake_camera_roll", - "8028b50c": "offset_yaw_outward_radial", - "8028b724": "cutscene_intro_peach_play_message_music", - "8028b754": "cutscene_intro_peach_play_lakitu_flying_music", - "8028b784": "play_camera_buzz_if_cdown", - "8028b7c4": "play_camera_buzz_if_cbutton", - "8028b804": "play_camera_buzz_if_c_sideways", - "8028b850": "play_sound_cbutton_up", - "8028b884": "play_sound_cbutton_down", - "8028b8b8": "play_sound_cbutton_side", - "8028b8ec": "play_sound_button_change_blocked", - "8028b920": "play_sound_rbutton_changed", - "8028b954": "play_sound_if_cam_switched_to_lakitu_or_mario", - "8028b9c4": "radial_camera_input", - "8028bd34": "trigger_cutscene_dialog", - "8028bd98": "handle_c_button_movement", - "8028c038": "clear_cutscene_vars", - "8028c13c": "start_cutscene", - "8028c18c": "determine_dance_cutscene", - "8028c26c": "open_door_cutscene", - "8028c2c8": "get_cutscene_from_mario_status", - "8028c7a0": "warp_camera", - "8028c8f0": "approach_camera_height", - "8028c9ac": "stub_camera_4", - "8028c9cc": "set_focus_rel_mario", - "8028cbf0": "offset_rotated", - "8028cd94": "offset_rotated_coords", - "8028cdec": "determine_pushing_or_pulling_door", - "8028ce24": "next_lakitu_state", - "8028d44c": "set_camera_mode_fixed", - "8028d5ac": "set_camera_mode_8_directions", - "8028d5fc": "set_camera_mode_boss_fight", - "8028d658": "set_camera_mode_close_cam", - "8028d698": "set_camera_mode_radial", - "8028d79c": "parallel_tracking_init", - "8028d888": "set_fixed_cam_axis_sa_lobby", - "8028d92c": "check_blocking_area_processing", - "8028da18": "cam_rr_exit_building_side", - "8028da50": "cam_rr_exit_building_top", - "8028daec": "cam_rr_enter_building_window", - "8028db38": "cam_rr_enter_building", - "8028dbb4": "cam_rr_enter_building_side", - "8028dbf4": "cam_cotmc_exit_waterfall", - "8028dc1c": "cam_sl_snowman_head_8dir", - "8028dc70": "cam_sl_free_roam", - "8028dca4": "move_camera_through_floor_while_descending", - "8028dd48": "cam_hmc_enter_maze", - "8028de2c": "cam_hmc_elevator_black_hole", - "8028de5c": "cam_hmc_elevator_maze_emergency_exit", - "8028de90": "cam_hmc_elevator_lake", - "8028dec4": "cam_hmc_elevator_maze", - "8028def8": "cam_ssl_enter_pyramid_top", - "8028df24": "cam_ssl_pyramid_center", - "8028df6c": "cam_ssl_boss_room", - "8028dfb4": "cam_thi_move_cam_through_tunnel", - "8028dfe8": "cam_thi_look_through_tunnel", - "8028e01c": "cam_bob_tower", - "8028e064": "cam_bob_default_free_roam", - "8028e098": "cam_castle_hmc_start_pool_cutscene", - "8028e0ec": "cam_castle_lobby_entrance", - "8028e164": "cam_castle_look_upstairs", - "8028e210": "cam_castle_basement_look_downstairs", - "8028e298": "cam_castle_enter_lobby", - "8028e300": "cam_castle_enter_spiral_stairs", - "8028e38c": "cam_castle_close_mode", - "8028e3b8": "cam_castle_leave_lobby_sliding_door", - "8028e3f0": "cam_castle_enter_lobby_sliding_door", - "8028e41c": "cam_bbh_room_6", - "8028e450": "cam_bbh_fall_off_roof", - "8028e47c": "cam_bbh_fall_into_pool", - "8028e524": "cam_bbh_room_1", - "8028e55c": "cam_bbh_leave_front_door", - "8028e594": "cam_bbh_room_2_lower", - "8028e5cc": "cam_bbh_room_4", - "8028e604": "cam_bbh_room_8", - "8028e63c": "cam_bbh_room_5_library", - "8028e674": "cam_bbh_room_5_library_to_hidden_transition", - "8028e6c4": "cam_bbh_room_5_hidden_to_library_transition", - "8028e714": "cam_bbh_room_5_hidden", - "8028e758": "cam_bbh_room_3", - "8028e790": "cam_bbh_room_7_mr_i", - "8028e7c8": "cam_bbh_room_7_mr_i_to_coffins_transition", - "8028e818": "cam_bbh_room_7_coffins_to_mr_i_transition", - "8028e868": "cam_bbh_elevator_room_lower", - "8028e8a0": "cam_bbh_room_0_back_entrance", - "8028e8cc": "cam_bbh_elevator", - "8028e930": "cam_bbh_room_12_upper", - "8028e974": "cam_bbh_enter_front_door", - "8028e9a0": "cam_bbh_room_2_library", - "8028e9d8": "cam_bbh_room_2_library_to_trapdoor_transition", - "8028ea28": "cam_bbh_room_2_trapdoor", - "8028ea60": "cam_bbh_room_2_trapdoor_transition", - "8028eab0": "cam_bbh_room_9_attic", - "8028eae8": "cam_bbh_room_9_attic_transition", - "8028eb38": "cam_bbh_room_9_mr_i_transition", - "8028eb88": "cam_bbh_room_13_balcony", - "8028ebc0": "cam_bbh_room_0", - "8028ec04": "cam_ccm_enter_slide_shortcut", - "8028ec2c": "cam_ccm_leave_slide_shortcut", - "8028ec58": "surface_type_modes", - "8028ed30": "set_mode_if_not_set_by_surface", - "8028ed98": "surface_type_modes_thi", - "8028eeb0": "camera_course_processing", - "8028f670": "resolve_geometry_collisions", - "8028f914": "rotate_camera_around_walls", - "8028fc9c": "find_mario_floor_and_ceil", - "8028fe24": "start_object_cutscene", - "8028fe58": "start_object_cutscene_without_focus", - "8028fe84": "unused_dialog_cutscene_response", - "8028ff04": "cutscene_object_with_dialog", - "8028ffc8": "cutscene_object_without_dialog", - "8029000c": "cutscene_object", - "80290098": "update_camera_yaw", - "802900e0": "cutscene_reset_spline", - "80290104": "stop_cutscene_and_retrieve_stored_info", - "80290168": "cap_switch_save", - "802901a4": "init_spline_point", - "802901fc": "copy_spline_segment", - "802903b8": "cutscene_common_set_dialog_state", - "802904a8": "cutscene_intro_peach_start_letter_music", - "802904e4": "cutscene_intro_peach_start_flying_music", - "8029051c": "reset_pan_distance", - "8029053c": "player2_rotate_cam", - "80290784": "store_info_cannon", - "802907f4": "retrieve_info_cannon", - "80290864": "store_info_star", - "802908e8": "retrieve_info_star", - "802909d0": "pan_camera", - "80290a5c": "cutscene_shake_explosion", - "80290abc": "rotate_and_move_vec3f", - "80290b54": "set_flag_post_door", - "80290ba4": "cutscene_soften_music", - "80290bd8": "cutscene_unsoften_music", - "80290c1c": "cutscene_unused_start", - "80290c30": "cutscene_unused_loop", - "80290c44": "cutscene_ending_mario_fall_start", - "80290c9c": "cutscene_ending_mario_fall_focus_mario", - "80290d90": "cutscene_ending_mario_fall", - "80290e00": "cutscene_ending_mario_land_closeup", - "80290e74": "cutscene_ending_reset_spline", - "80290eb0": "cutscene_ending_fly_up_to_window", - "80290f1c": "cutscene_ending_stars_free_peach", - "80290f8c": "cutscene_ending_mario_land", - "80291074": "cutscene_ending_peach_appear_closeup", - "80291108": "cutscene_ending_peach_appears", - "802911c8": "cutscene_ending_peach_descends_start", - "80291208": "cutscene_ending_follow_peach_descent", - "8029127c": "cutscene_ending_peach_descent_lower_focus", - "802912b8": "cutscene_ending_peach_descent_back_to_mario", - "80291354": "cutscene_ending_peach_descends", - "8029142c": "cutscene_ending_mario_to_peach", - "802914cc": "cutscene_ending_look_up_at_castle", - "80291514": "cutscene_ending_peach_wakeup", - "802915d4": "cutscene_ending_dialog", - "80291654": "cutscene_ending_kiss_closeup", - "802916b8": "cutscene_ending_kiss_here_we_go", - "80291774": "cutscene_ending_kiss", - "802917e4": "cutscene_ending_look_at_sky", - "8029184c": "cutscene_ending_zoom_fov", - "80291870": "cutscene_ending_cake_for_mario", - "80291924": "cutscene_ending_stop", - "80291964": "cutscene_grand_star_start", - "802919dc": "cutscene_grand_star_front_of_mario", - "80291ab4": "cutscene_grand_star_mario_jump", - "80291b18": "cutscene_grand_star_accel_cvar2", - "80291b68": "cutscene_grand_star_approach_mario", - "80291bf4": "cutscene_grand_star_move_cvar2", - "80291c3c": "cutscene_grand_star_focus_mario", - "80291cd0": "cutscene_grand_star", - "80291db0": "cutscene_grand_star_fly_start", - "80291e84": "cutscene_grand_star_fly_move_to_mario", - "80291f18": "cutscene_grand_star_fly_mario_offscreen", - "80292038": "cutscene_grand_star_fly_app_cvars", - "80292164": "cutscene_grand_star_fly", - "802921fc": "focus_in_front_of_mario", - "8029228c": "cutscene_dance_move_to_mario", - "80292324": "cutscene_dance_rotate", - "80292370": "cutscene_dance_rotate_move_back", - "802923b8": "cutscene_dance_rotate_move_towards_mario", - "80292414": "cutscene_dance_default_focus_mario", - "8029244c": "cutscene_dance_rotate_focus_mario", - "80292484": "cutscene_dance_shake_fov", - "802924b8": "cutscene_dance_default_rotate", - "80292628": "star_dance_bound_yaw", - "802926dc": "cutscene_dance_closeup_start", - "802927d0": "cutscene_dance_closeup_focus_mario", - "80292868": "cutscene_dance_closeup_fly_above", - "80292974": "cutscene_dance_closeup_fly_closer", - "80292a20": "cutscene_dance_closeup_zoom", - "80292a4c": "cutscene_dance_closeup_shake_fov", - "80292a80": "cutscene_dance_closeup", - "80292c00": "cutscene_dance_fly_away_start", - "80292d80": "cutscene_dance_fly_away_approach_mario", - "80292e2c": "cutscene_dance_fly_away_focus_mario", - "80292ec4": "cutscene_pan_cvar9", - "80292f40": "cutscene_dance_fly_rotate_around_mario", - "80292f98": "cutscene_dance_fly_away_rotate_while_flying", - "80292fe4": "cutscene_dance_fly_away_shake_fov", - "80293018": "cutscene_dance_fly_away", - "802930f0": "cutscene_key_dance_jump_cvar", - "80293164": "cutscene_key_dance_jump_closeup", - "802931c0": "cutscene_key_dance_jump_lower_left", - "80293220": "cutscene_key_dance_jump_above", - "8029328c": "cutscene_key_dance_jump_last", - "802932f4": "cutscene_key_dance_shake_fov", - "80293328": "cutscene_key_dance_handheld_shake", - "80293354": "cutscene_key_dance_focus_mario", - "8029338c": "cutscene_key_dance", - "80293488": "cutscene_bowser_area_shake_fov", - "802934b4": "cutscene_bowser_area_start_bowser_walking", - "802934d8": "cutscene_bowser_arena_set_pos", - "80293548": "cutscene_bowser_arena_focus_sine", - "802935e0": "cutscene_bowser_arena_set_focus", - "80293624": "cutscene_bowser_arena_adjust_offsets", - "8029369c": "cutscene_bowser_arena_pan_left", - "802936dc": "cutscene_bowser_arena_mario_dialog", - "80293708": "cutscene_stop_dialog", - "80293734": "cutscene_bowser_arena_start", - "802937e8": "bowser_fight_intro_dialog", - "8029386c": "cutscene_bowser_arena_dialog", - "802938c8": "cutscene_bowser_arena_end", - "80293944": "cutscene_bowser_arena", - "80293abc": "cutscene_star_spawn_store_info", - "80293ae8": "cutscene_star_spawn_focus_star", - "80293b70": "cutscene_star_spawn_update_boss_fight", - "80293bf4": "cutscene_star_spawn_fly_back", - "80293c2c": "cutscene_star_spawn", - "80293cb0": "cutscene_star_spawn_back", - "80293d5c": "cutscene_star_spawn_end", - "80293d90": "cutscene_exit_waterfall_warp", - "80293dd4": "cutscene_exit_to_castle_grounds_focus_mario", - "80293e7c": "cutscene_exit_waterfall", - "80293ed8": "cutscene_exit_to_castle_grounds_end", - "80293f2c": "cutscene_exit_fall_to_castle_grounds_warp", - "80293f70": "cutscene_exit_fall_to_castle_grounds", - "80293fcc": "cutscene_red_coin_star_start", - "80294024": "cutscene_red_coin_star_focus_xz", - "80294088": "cutscene_red_coin_star_focus_y", - "802940cc": "cutscene_red_coin_star_look_up_at_star", - "8029410c": "cutscene_red_coin_star_warp", - "802942cc": "cutscene_red_coin_star_set_fov", - "802942f0": "cutscene_red_coin_star", - "802943d4": "cutscene_red_coin_star_end", - "80294428": "cutscene_goto_cvar_pos", - "80294718": "cutscene_prepare_cannon_start", - "802947a4": "cutscene_prepare_cannon_fly_to_cannon", - "8029480c": "cannon_approach_prev", - "802948a0": "cutscene_prepare_cannon_fly_back", - "80294a14": "cutscene_prepare_cannon", - "80294a94": "cutscene_prepare_cannon_end", - "80294ae8": "water_death_move_to_mario_side", - "80294b78": "death_goto_mario", - "80294bb4": "cutscene_death_standing_start", - "80294c28": "cutscene_death_standing_goto_mario", - "80294c5c": "cutscene_death_standing", - "80294cc4": "cutscene_death_stomach_start", - "80294d48": "cutscene_death_stomach_goto_mario", - "80294db4": "cutscene_death_stomach", - "80294e24": "cutscene_bbh_death_start", - "80294ea8": "cutscene_bbh_death_goto_mario", - "80294ee8": "cutscene_bbh_death", - "80294f58": "cutscene_quicksand_death_start", - "80294f94": "cutscene_quicksand_death_goto_mario", - "80294fec": "cutscene_quicksand_death", - "802950b0": "cutscene_suffocation_fly_away", - "80295140": "cutscene_suffocation_stay_above_gas", - "802951f0": "cutscene_suffocation_rotate", - "80295270": "cutscene_suffocation", - "80295310": "cutscene_enter_pool_start", - "802953dc": "cutscene_enter_pool_loop", - "80295418": "cutscene_enter_pool", - "80295480": "cutscene_pyramid_top_explode_start", - "802954ec": "cutscene_pyramid_top_explode_zoom_in", - "80295518": "cutscene_pyramid_top_explode_focus", - "80295580": "cutscene_pyramid_top_explode_warp", - "80295670": "cutscene_pyramid_top_explode_closeup", - "80295740": "cutscene_pyramid_top_explode_cam_shake", - "8029576c": "cutscene_pyramid_top_explode_warp_back", - "802957c8": "cutscene_pyramid_top_explode", - "80295894": "cutscene_pyramid_top_explode_end", - "802958d4": "cutscene_enter_pyramid_top_start", - "80295930": "cutscene_enter_pyramid_top", - "80295a58": "cutscene_dialog_start", - "80295bf0": "cutscene_dialog_move_mario_shoulder", - "80295e24": "cutscene_dialog_create_dialog_box", - "80295e8c": "cutscene_dialog", - "80295fb0": "cutscene_dialog_set_flag", - "80295fd8": "cutscene_dialog_end", - "80296020": "cutscene_read_message_start", - "80296160": "cutscene_read_message", - "802962c8": "cutscene_read_message_set_flag", - "802962f0": "cutscene_read_message_end", - "80296318": "cutscene_exit_succ_start", - "802963b8": "cutscene_non_painting_set_cam_pos", - "8029652c": "cutscene_non_painting_set_cam_focus", - "8029665c": "cutscene_exit_bowser_succ_focus_left", - "8029669c": "cutscene_exit_bowser_key_toss_shake", - "802966e4": "cutscene_exit_succ_shake_landing", - "80296710": "cutscene_exit_bowser_succ", - "802967c4": "cutscene_non_painting_end", - "8029685c": "cutscene_exit_non_painting_succ_override_cvar", - "802968a0": "cutscene_exit_non_painting_succ", - "8029695c": "cutscene_non_painting_death_start", - "802969f8": "cutscene_exit_bowser_death", - "80296a64": "cutscene_non_painting_death_override_offset", - "80296b30": "cutscene_non_painting_death", - "80296bc8": "cutscene_cap_switch_press_start", - "80296c4c": "cutscene_cap_switch_press_rotate_around_mario", - "80296d60": "cutscene_cap_switch_press_lower_cam", - "80296da8": "cutscene_cap_switch_press_approach_mario", - "80296eb4": "cutscene_cap_switch_press_pan_left", - "80296f38": "cutscene_cap_switch_press_create_dialog", - "80296fa8": "cutscene_cap_switch_press", - "80297148": "cutscene_unlock_key_door_start", - "8029720c": "cutscene_unlock_key_door_approach_mario", - "80297290": "cutscene_unlock_key_door_focus_lock", - "802972ec": "cutscene_unlock_key_door_stub", - "80297300": "cutscene_unlock_key_door_fly_back", - "80297384": "cutscene_unlock_key_door_fov_shake", - "802973b0": "cutscene_unlock_key_door", - "80297464": "intro_peach_move_camera_start_to_pipe", - "80297560": "peach_letter_text", - "8029758c": "play_sound_peach_reading_letter", - "802975c4": "cutscene_intro_peach_start_to_pipe_spline", - "8029762c": "cutscene_intro_peach_dialog", - "802976bc": "cutscene_intro_peach_follow_pipe_spline", - "80297728": "cutscene_intro_peach_clear_cutscene_status", - "80297748": "cutscene_intro_peach_zoom_fov", - "80297784": "cutscene_intro_peach_reset_spline", - "802977c8": "cutscene_intro_peach_handheld_shake_off", - "802977f4": "intro_pipe_exit_text", - "80297820": "play_sound_intro_turn_on_hud", - "8029784c": "cutscene_intro_peach_fly_to_pipe", - "80297908": "cutscene_intro_peach_mario_appears", - "80297a38": "cutscene_intro_peach_reset_fov", - "80297a64": "cutscene_intro_peach_letter", - "80297b58": "cutscene_end_waving_start", - "80297b84": "cutscene_end_waving", - "80297c14": "cutscene_credits_reset_spline", - "80297c40": "cutscene_credits", - "802980dc": "cutscene_sliding_doors_open_start", - "8029819c": "cutscene_sliding_doors_open_set_cvars", - "80298218": "cutscene_sliding_doors_go_under_doorway", - "80298254": "cutscene_sliding_doors_fly_back_up", - "80298290": "cutscene_sliding_doors_follow_mario", - "802983b4": "cutscene_sliding_doors_open", - "80298458": "cutscene_double_doors_end", - "802984a0": "cutscene_enter_painting_stub", - "802984b4": "cutscene_enter_painting", - "802987b0": "cutscene_exit_painting_start", - "8029894c": "cutscene_exit_painting_move_to_mario", - "802989e8": "cutscene_exit_painting_move_to_floor", - "80298af8": "cutscene_exit_painting", - "80298ba0": "cutscene_unused_exit_start", - "80298c2c": "cutscene_unused_exit_focus_mario", - "80298ccc": "cutscene_exit_painting_end", - "80298d44": "cutscene_enter_cannon_end", - "80298d9c": "cutscene_enter_cannon_raise", - "80298fe8": "cutscene_enter_cannon_start", - "80299100": "cutscene_door_start", - "80299154": "cutscene_door_fix_cam", - "802991a8": "cutscene_door_loop", - "802991f0": "cutscene_door_move_behind_mario", - "802992cc": "cutscene_door_follow_mario", - "80299360": "cutscene_door_end", - "80299404": "cutscene_door_mode", - "802994e8": "play_cutscene", - "8029a2f8": "cutscene_event", - "8029a37c": "cutscene_spawn_obj", - "8029a3b4": "set_fov_shake", - "8029a41c": "set_fov_shake_from_point", - "8029a4d0": "shake_camera_fov", - "8029a5e8": "set_fov_30", - "8029a60c": "approach_fov_20", - "8029a64c": "set_fov_45", - "8029a670": "set_fov_29", - "8029a694": "zoom_fov_30", - "8029a6f4": "fov_default", - "8029a858": "approach_fov_30", - "8029a894": "approach_fov_60", - "8029a8d0": "approach_fov_45", - "8029a968": "approach_fov_80", - "8029a9a4": "set_fov_bbh", - "8029aa3c": "geo_camera_fov", - "8029ab94": "set_fov_function", - "8029abb0": "cutscene_set_fov_shake_preset", - "8029ac30": "set_fov_shake_from_point_preset", - "8029aef8": "obj_rotate_towards_point", - "8029af98": "intro_peach_set_pos_and_opacity", - "8029b08c": "bhv_intro_peach_loop", - "8029b28c": "intro_lakitu_set_offset_from_camera", - "8029b358": "intro_lakitu_set_focus", - "8029b3c8": "intro_lakitu_set_pos_and_focus", - "8029b49c": "bhv_intro_lakitu_loop", - "8029bde4": "bhv_end_birds_1_loop", - "8029bf64": "bhv_end_birds_2_loop", - "8029c0e4": "spawn_child_obj_relative", - "8029c254": "bhv_intro_scene_loop", - "8029c770": "nop_change_course", - "8029c780": "copy_mario_state_to_object", - "8029c9cc": "spawn_particle", - "8029ca58": "bhv_mario_update", - "8029cb34": "update_objects_starting_at", - "8029cbc8": "update_objects_during_time_stop", - "8029cd28": "update_objects_in_list", - "8029cd98": "unload_deactivated_objects_in_list", - "8029ce58": "set_object_respawn_info_bits", - "8029cedc": "unload_objects_from_area", - "8029cfb0": "spawn_objects_from_info", - "8029d1d8": "stub_obj_list_processor_1", - "8029d1e8": "clear_objects", - "8029d324": "update_terrain_objects", - "8029d374": "update_non_terrain_objects", - "8029d428": "unload_deactivated_objects", - "8029d690": "update_objects", - "8029d890": "geo_update_projectile_pos_from_parent", - "8029d924": "geo_update_layer_transparency", - "8029db48": "geo_switch_anim_state", - "8029dbd4": "geo_switch_area", - "8029dcd4": "obj_update_pos_from_parent_transformation", - "8029dda8": "obj_apply_scale_to_matrix", - "8029de80": "create_transformation_from_matrices", - "8029e1b0": "obj_set_held_state", - "8029e27c": "lateral_dist_between_objects", - "8029e2f8": "dist_between_objects", - "8029e398": "cur_obj_forward_vel_approach_upward", - "8029e3e8": "approach_f32_signed", - "8029e494": "approach_f32_symmetric", - "8029e530": "approach_s16_symmetric", - "8029e5ec": "cur_obj_rotate_yaw_toward", - "8029e694": "obj_angle_to_object", - "8029e714": "obj_turn_toward_object", - "8029e8bc": "obj_set_parent_relative_pos", - "8029e914": "obj_set_pos", - "8029e96c": "obj_set_angle", - "8029e9ac": "spawn_object_abs_with_rot", - "8029ea24": "spawn_object_rel_with_rot", - "8029eaac": "spawn_obj_with_transform_flags", - "8029eb04": "spawn_water_droplet", - "8029ed20": "spawn_object_at_origin", - "8029edcc": "spawn_object", - "8029ee24": "try_to_spawn_object", - "8029eeb8": "spawn_object_with_scale", - "8029ef64": "spawn_object_relative", - "8029effc": "spawn_object_relative_with_scale", - "8029f070": "cur_obj_move_using_vel", - "8029f0c8": "obj_copy_graph_y_offset", - "8029f0e0": "obj_copy_pos_and_angle", - "8029f120": "obj_copy_pos", - "8029f148": "obj_copy_angle", - "8029f188": "obj_set_gfx_pos_from_pos", - "8029f1b0": "obj_init_animation", - "8029f200": "linear_mtxf_mul_vec3f", - "8029f274": "linear_mtxf_transpose_mul_vec3f", - "8029f2ec": "obj_apply_scale_to_transform", - "8029f3a8": "obj_copy_scale", - "8029f3d0": "obj_scale_xyz", - "8029f404": "obj_scale", - "8029f430": "cur_obj_scale", - "8029f464": "cur_obj_init_animation", - "8029f4b4": "cur_obj_init_animation_with_sound", - "8029f514": "cur_obj_init_animation_with_accel_and_sound", - "8029f59c": "obj_init_animation_with_sound", - "8029f600": "cur_obj_enable_rendering_and_become_tangible", - "8029f620": "cur_obj_enable_rendering", - "8029f644": "cur_obj_disable_rendering_and_become_intangible", - "8029f66c": "cur_obj_disable_rendering", - "8029f694": "cur_obj_unhide", - "8029f6bc": "cur_obj_hide", - "8029f6e0": "cur_obj_set_pos_relative", - "8029f7d8": "cur_obj_set_pos_relative_to_parent", - "8029f820": "cur_obj_enable_rendering_2", - "8029f848": "cur_obj_unused_init_on_floor", - "8029f8ec": "obj_set_face_angle_to_move_angle", - "8029f914": "get_object_list_from_behavior", - "8029f95c": "cur_obj_nearest_object_with_behavior", - "8029f998": "cur_obj_dist_to_nearest_object_with_behavior", - "8029f9ec": "cur_obj_find_nearest_object_with_behavior", - "8029fb1c": "find_unimportant_object", - "8029fb68": "count_unimportant_objects", - "8029fbdc": "count_objects_with_behavior", - "8029fc9c": "cur_obj_find_nearby_held_actor", - "8029fdb4": "cur_obj_change_action", - "8029fe00": "cur_obj_set_vel_from_mario_vel", - "8029fe6c": "cur_obj_reverse_animation", - "8029fea4": "cur_obj_extend_animation_if_at_end", - "8029ff04": "cur_obj_check_if_near_animation_end", - "8029ffa4": "cur_obj_check_if_at_animation_end", - "802a0008": "cur_obj_check_anim_frame", - "802a0050": "cur_obj_check_anim_frame_in_range", - "802a00ac": "cur_obj_check_frame_prior_current_frame", - "802a0114": "mario_is_in_air_action", - "802a0154": "mario_is_dive_sliding", - "802a0198": "cur_obj_set_y_vel_and_animation", - "802a01d8": "cur_obj_unrender_set_action_and_anim", - "802a0380": "cur_obj_get_thrown_or_placed", - "802a0474": "cur_obj_get_dropped", - "802a04c0": "cur_obj_set_model", - "802a04f0": "mario_set_flag", - "802a0514": "cur_obj_clear_interact_status_flag", - "802a0568": "obj_mark_for_deletion", - "802a057c": "cur_obj_disable", - "802a05b4": "cur_obj_become_intangible", - "802a05d4": "cur_obj_become_tangible", - "802a05f0": "obj_become_tangible", - "802a0604": "cur_obj_update_floor_height", - "802a064c": "cur_obj_update_floor_height_and_get_floor", - "802a079c": "cur_obj_apply_drag_xz", - "802a0e68": "cur_obj_move_y", - "802a113c": "cur_obj_unused_resolve_wall_collisions", - "802a11a8": "abs_angle_diff", - "802a120c": "cur_obj_move_xz_using_fvel_and_yaw", - "802a12a4": "cur_obj_move_y_with_terminal_vel", - "802a1308": "cur_obj_compute_vel_xz", - "802a1370": "increment_velocity_toward_range", - "802a1424": "obj_check_if_collided_with_object", - "802a148c": "cur_obj_set_behavior", - "802a14c4": "obj_set_behavior", - "802a14fc": "cur_obj_has_behavior", - "802a1554": "obj_has_behavior", - "802a15ac": "cur_obj_lateral_dist_from_mario_to_home", - "802a1634": "cur_obj_lateral_dist_to_home", - "802a16ac": "cur_obj_outside_home_square", - "802a1774": "cur_obj_outside_home_rectangle", - "802a184c": "cur_obj_set_pos_to_home", - "802a188c": "cur_obj_set_pos_to_home_and_stop", - "802a18dc": "cur_obj_shake_y", - "802a1930": "cur_obj_start_cam_event", - "802a1960": "set_mario_interact_true_if_in_range", - "802a19ac": "obj_set_billboard", - "802a19c8": "cur_obj_set_hitbox_radius_and_height", - "802a19f0": "cur_obj_set_hurtbox_radius_and_height", - "802a1b34": "obj_spawn_loot_blue_coins", - "802a1b8c": "obj_spawn_loot_yellow_coins", - "802a1bdc": "cur_obj_spawn_loot_coin_at_mario_pos", - "802a1c68": "cur_obj_abs_y_dist_to_home", - "802a1cc4": "cur_obj_advance_looping_anim", - "802a1f3c": "cur_obj_resolve_wall_collisions", - "802a2320": "cur_obj_update_floor_and_walls", - "802a2348": "cur_obj_move_standard", - "802a25b4": "cur_obj_move_using_vel_and_gravity", - "802a2644": "cur_obj_move_using_fvel_and_gravity", - "802a2674": "obj_set_pos_relative", - "802a2748": "cur_obj_angle_to_home", - "802a27b0": "obj_set_gfx_pos_at_obj_pos", - "802a2804": "obj_translate_local", - "802a2930": "obj_build_transform_from_pos_and_angle", - "802a2a18": "obj_set_throw_matrix_from_transform", - "802a2a84": "obj_build_transform_relative_to_parent", - "802a2b28": "obj_create_transform_from_self", - "802a2b6c": "cur_obj_rotate_move_angle_using_vel", - "802a2bc4": "cur_obj_rotate_face_angle_using_vel", - "802a2c1c": "cur_obj_set_face_angle_to_move_angle", - "802a2c5c": "cur_obj_follow_path", - "802a2ed4": "chain_segment_init", - "802a2f14": "random_f32_around_zero", - "802a2f5c": "obj_scale_random", - "802a2fc0": "obj_translate_xyz_random", - "802a308c": "obj_translate_xz_random", - "802a31e0": "cur_obj_set_pos_via_transform", - "802a3268": "cur_obj_reflect_move_angle_off_wall", - "802a32ac": "cur_obj_spawn_particles", - "802a34a4": "obj_set_hitbox", - "802a3604": "signum_positive", - "802a3634": "absf", - "802a3674": "absi", - "802a36a4": "cur_obj_wait_then_blink", - "802a3754": "cur_obj_is_mario_ground_pounding_platform", - "802a37ac": "spawn_mist_particles", - "802a37dc": "spawn_mist_particles_with_sound", - "802a3818": "cur_obj_push_mario_away", - "802a390c": "cur_obj_push_mario_away_from_cylinder", - "802a399c": "bhv_dust_smoke_loop", - "802a3a4c": "cur_obj_set_action_table", - "802a3a88": "cur_obj_progress_action_table", - "802a3b28": "stub_obj_helpers_3", - "802a3b40": "cur_obj_scale_over_time", - "802a3c18": "cur_obj_set_pos_to_home_with_debug", - "802a3cec": "stub_obj_helpers_4", - "802a3cfc": "cur_obj_is_mario_on_platform", - "802a3d40": "cur_obj_shake_y_until", - "802a3dd4": "jiggle_bbh_stair", - "802a3e30": "cur_obj_call_action_function", - "802a3ef8": "spawn_base_star_with_no_lvl_exit", - "802a3f24": "bit_shift_left", - "802a3f48": "cur_obj_mario_far_away", - "802a404c": "is_mario_moving_fast_or_in_air", - "802a40b8": "is_item_in_array", - "802a4120": "bhv_init_room", - "802a4210": "cur_obj_enable_rendering_if_mario_in_room", - "802a4360": "cur_obj_set_hitbox_and_die_if_attacked", - "802a4440": "obj_explode_and_spawn_coins", - "802a44f4": "obj_set_collision_data", - "802a452c": "cur_obj_if_hit_wall_bounce_away", - "802a4564": "cur_obj_hide_if_mario_far_away_y", - "802a45e4": "geo_offset_klepto_held_object", - "802a462c": "geo_offset_klepto_debug", - "802a46cc": "obj_is_hidden", - "802a4704": "enable_time_stop", - "802a4728": "disable_time_stop", - "802a4750": "set_time_stop_flags", - "802a4774": "clear_time_stop_flags", - "802a47a0": "cur_obj_can_mario_activate_textbox", - "802a48bc": "cur_obj_can_mario_activate_textbox_2", - "802a4960": "cur_obj_update_dialog", - "802a4be4": "cur_obj_update_dialog_with_cutscene", - "802a4f04": "cur_obj_has_model", - "802a4f58": "cur_obj_align_gfx_with_floor", - "802a5034": "mario_is_within_rectangle", - "802a50fc": "cur_obj_shake_screen", - "802a513c": "obj_attack_collided_from_other_object", - "802a51ac": "cur_obj_was_attacked_or_ground_pounded", - "802a5228": "obj_copy_behavior_params", - "802a5248": "cur_obj_init_animation_and_anim_frame", - "802a5288": "cur_obj_init_animation_and_check_if_near_end", - "802a52c4": "cur_obj_init_animation_and_extend_if_at_end", - "802a52f8": "cur_obj_check_grabbed_mario", - "802a5358": "player_performed_grab_escape_action", - "802a540c": "cur_obj_unused_play_footstep_sound", - "802a5460": "enable_time_stop_including_mario", - "802a5498": "disable_time_stop_including_mario", - "802a54d8": "cur_obj_check_interacted", - "802a5524": "cur_obj_spawn_loot_blue_coin", - "802a5588": "cur_obj_spawn_star_at_y_offset", - "802a5620": "star_door_update_pos", - "802a56bc": "bhv_star_door_loop", - "802a58dc": "bhv_piranha_particle_loop", - "802a597c": "mr_i_piranha_particle_act_0", - "802a5a44": "mr_i_piranha_particle_act_1", - "802a5aa0": "bhv_mr_i_particle_loop", - "802a5acc": "spawn_mr_i_particle", - "802a5bd4": "bhv_mr_i_body_loop", - "802a5d4c": "mr_i_act_3", - "802a6518": "mr_i_act_2", - "802a68a0": "mr_i_act_1", - "802a6ad8": "mr_i_act_0", - "802a6b7c": "bhv_mr_i_loop", - "802a6c20": "bhv_pole_init", - "802a6c74": "bhv_giant_pole_loop", - "802a6cf4": "bhv_thi_huge_island_top_loop", - "802a6d64": "bhv_thi_tiny_island_top_loop", - "802a6ee4": "cap_switch_act_0", - "802a7020": "cap_switch_act_1", - "802a708c": "cap_switch_act_2", - "802a7160": "cap_switch_act_3", - "802a7170": "bhv_cap_switch_loop", - "802a719c": "geo_update_held_mario_pos", - "802a7230": "bhv_bobomb_anchor_mario_loop", - "802a7264": "king_bobomb_act_0", - "802a7384": "mario_is_far_below_object", - "802a73d8": "king_bobomb_act_2", - "802a7598": "king_bobomb_act_3", - "802a7804": "king_bobomb_act_1", - "802a78d8": "king_bobomb_act_6", - "802a7a60": "king_bobomb_act_7", - "802a7b1c": "king_bobomb_act_8", - "802a7b5c": "king_bobomb_act_4", - "802a7d14": "king_bobomb_act_5", - "802a7fbc": "king_bobomb_move", - "802a8064": "bhv_king_bobomb_loop", - "802a816c": "bhv_beta_chest_bottom_init", - "802a81e8": "bhv_beta_chest_bottom_loop", - "802a821c": "bhv_beta_chest_lid_loop", - "802a8370": "bhv_water_air_bubble_init", - "802a83a0": "bhv_water_air_bubble_loop", - "802a8630": "bhv_bubble_wave_init", - "802a86bc": "scale_bubble_random", - "802a870c": "bhv_bubble_maybe_loop", - "802a88a4": "bhv_small_water_wave_loop", - "802a8a38": "scale_bubble_sin", - "802a8b18": "bhv_particle_init", - "802a8bc0": "bhv_particle_loop", - "802a8c88": "bhv_small_bubbles_loop", - "802a8cdc": "bhv_fish_group_loop", - "802a8d48": "bhv_water_waves_init", - "802a8d98": "bhv_cannon_base_unused_loop", - "802a8dc0": "opened_cannon_act_0", - "802a8f40": "opened_cannon_act_4", - "802a9114": "opened_cannon_act_6", - "802a92fc": "opened_cannon_act_5", - "802a93f8": "opened_cannon_act_1", - "802a9440": "opened_cannon_act_2", - "802a9460": "opened_cannon_act_3", - "802a9498": "bhv_cannon_base_loop", - "802a94f8": "bhv_cannon_barrel_loop", - "802a958c": "common_anchor_mario_behavior", - "802a9708": "bhv_chuckya_anchor_mario_loop", - "802a973c": "unknown_chuckya_function", - "802a98c4": "approach_forward_vel", - "802a9994": "chuckya_act_0", - "802a9d08": "chuckya_act_1", - "802a9f54": "chuckya_act_3", - "802a9fc8": "chuckya_act_2", - "802aa02c": "chuckya_move", - "802aa0ac": "bhv_chuckya_loop", - "802aa1b8": "bhv_wf_breakable_wall_loop", - "802aa280": "check_mario_attacking", - "802aa3c8": "init_kickable_board_rock", - "802aa3f4": "bhv_kickable_board_loop", - "802aa700": "bhv_tower_door_loop", - "802aa774": "bhv_wf_rotating_wooden_platform_loop", - "802aa830": "bhv_rotating_platform_loop", - "802aa948": "set_koopa_shell_underwater_hitbox", - "802aa97c": "bhv_koopa_shell_underwater_loop", - "802aaa60": "bhv_warp_loop", - "802aab54": "bhv_fading_warp_loop", - "802aac48": "bhv_white_puff_exploding_loop", - "802aae8c": "spawn_mist_particles_variable", - "802aaf48": "bhv_spawned_star_init", - "802aaffc": "set_sparkle_spawn_star_hitbox", - "802ab060": "set_home_to_mario", - "802ab158": "set_y_home_to_pos", - "802ab18c": "slow_star_rotation", - "802ab1c8": "bhv_spawned_star_loop", - "802ab558": "bhv_spawn_star_no_level_exit", - "802ab5c8": "bhv_coin_sparkles_init", - "802ab650": "bhv_yellow_coin_init", - "802ab70c": "bhv_yellow_coin_loop", - "802ab748": "bhv_temp_coin_loop", - "802ab7a4": "bhv_spawned_coin_init", - "802ab860": "bhv_spawned_coin_loop", - "802aba40": "bhv_coin_formation_spawn_loop", - "802abc04": "spawn_coin_in_formation", - "802abee4": "bhv_coin_formation_init", - "802abf0c": "bhv_coin_formation_loop", - "802ac068": "coin_inside_boo_act_1", - "802ac15c": "coin_inside_boo_act_0", - "802ac294": "bhv_coin_inside_boo_loop", - "802ac2c0": "bhv_coin_sparkles_loop", - "802ac2ec": "bhv_golden_coin_sparkles_loop", - "802ac3a8": "bhv_punch_tiny_triangle_loop", - "802ac4a0": "bhv_punch_tiny_triangle_init", - "802ac5b4": "bhv_wall_tiny_star_particle_loop", - "802ac678": "bhv_tiny_star_particles_init", - "802ac78c": "bhv_pound_tiny_star_particle_loop", - "802ac864": "bhv_pound_tiny_star_particle_init", - "802ac910": "door_animation_and_reset", - "802ac958": "set_door_camera_event", - "802ac9d0": "play_door_open_noise", - "802aca6c": "play_warp_door_open_noise", - "802acac8": "bhv_door_loop", - "802acc3c": "bhv_door_init", - "802ace80": "bhv_star_door_loop_2", - "802ad078": "grindel_thwomp_act_idle_at_bottom", - "802ad10c": "grindel_thwomp_act_lower", - "802ad1a4": "grindel_thwomp_act_land", - "802ad238": "grindel_thwomp_act_idle_at_top", - "802ad2d0": "grindel_thwomp_act_raise", - "802ad34c": "bhv_grindel_thwomp_loop", - "802ad378": "bhv_tumbling_bridge_platform_loop", - "802ad580": "tumbling_bridge_act_1", - "802ad76c": "tumbling_bridge_act_2", - "802ad7f4": "tumbling_bridge_act_3", - "802ad828": "tumbling_bridge_act_0", - "802ad890": "bhv_tumbling_bridge_loop", - "802ad8bc": "elevator_starting_shake", - "802ad8f0": "elevator_act_0", - "802ada4c": "elevator_act_1", - "802adb88": "elevator_act_2", - "802adce4": "elevator_act_4", - "802add70": "elevator_act_3", - "802addf8": "bhv_elevator_init", - "802adf6c": "bhv_elevator_loop", - "802adf98": "bhv_water_mist_spawn_loop", - "802adfd8": "bhv_water_mist_loop", - "802ae0cc": "spawn_triangle_break_particles", - "802ae238": "bhv_water_mist_2_loop", - "802ae304": "bhv_pound_white_puffs_init", - "802ae334": "spawn_mist_from_global", - "802ae360": "bhv_ground_sand_init", - "802ae394": "spawn_smoke_with_velocity", - "802ae45c": "clear_particle_flags", - "802ae48c": "bhv_ground_snow_init", - "802ae4c0": "spawn_wind_particles", - "802ae534": "bhv_wind_loop", - "802ae85c": "bhv_unused_particle_spawn_loop", - "802ae908": "bhv_ukiki_cage_star_loop", - "802aea6c": "ukiki_cage_act_wait_for_ukiki", - "802aeab8": "ukiki_cage_act_spin", - "802aeb1c": "ukiki_cage_act_fall", - "802aeb74": "ukiki_cage_act_hide", - "802aeb9c": "bhv_ukiki_cage_loop", - "802aebc8": "bhv_squishable_platform_loop", - "802aec40": "bhv_bitfs_sinking_platform_loop", - "802aeca8": "bhv_ddd_moving_pole_loop", - "802aecdc": "bhv_bitfs_sinking_cage_platform_loop", - "802aedc0": "bhv_beta_moving_flames_spawn_loop", - "802aeea4": "bhv_beta_moving_flames_loop", - "802aef1c": "bhv_flamethrower_flame_loop", - "802af1e8": "bhv_flamethrower_loop", - "802af3fc": "bhv_rr_rotating_bridge_platform_loop", - "802af448": "bhv_bouncing_fireball_flame_loop", - "802af5f8": "bhv_bouncing_fireball_loop", - "802af7c4": "bhv_bowser_shock_wave_loop", - "802af9cc": "bhv_black_smoke_upward_loop", - "802afa0c": "bhv_black_smoke_bowser_loop", - "802afae4": "bhv_black_smoke_mario_loop", - "802afbf8": "bhv_flame_mario_loop", - "802afce4": "bhv_beta_fish_splash_spawner_loop", - "802afd1c": "bhv_spindrift_loop", - "802afee8": "bhv_wf_solid_tower_platform_loop", - "802aff30": "bhv_wf_elevator_tower_platform_loop", - "802b00e4": "bhv_wf_sliding_tower_platform_loop", - "802b0244": "spawn_and_init_wf_platforms", - "802b039c": "spawn_wf_platform_group", - "802b04b4": "bhv_tower_platform_group_loop", - "802b0614": "bhv_tree_snow_or_leaf_loop", - "802b0974": "bhv_snow_leaf_particle_spawn_init", - "802b0b9c": "square_plat_set_yaw_until_timer", - "802b0bec": "bhv_squarish_path_moving_loop", - "802b0d48": "bhv_piranha_plant_waking_bubbles_loop", - "802b0df0": "bhv_piranha_plant_bubble_loop", - "802b1278": "bhv_purple_switch_loop", - "802b14f4": "check_if_moving_over_floor", - "802b15e8": "bhv_pushable_loop", - "802b1714": "breakable_box_init", - "802b17f4": "hidden_breakable_box_actions", - "802b19d8": "hidden_wdw_platform_actions", - "802b1ae0": "bhv_hidden_object_loop", - "802b1b2c": "bhv_breakable_box_loop", - "802b1bb0": "geo_move_mario_part_from_parent", - "802b1c54": "bhv_heave_ho_throw_mario_loop", - "802b1d7c": "heave_ho_act_1", - "802b1e6c": "heave_ho_act_2", - "802b1ff4": "heave_ho_act_3", - "802b20a0": "heave_ho_act_0", - "802b2154": "heave_ho_move", - "802b2278": "bhv_heave_ho_loop", - "802b2340": "bhv_ccm_touched_star_spawn_loop", - "802b23e0": "bhv_unused_poundable_platform", - "802b2494": "bhv_beta_trampoline_spring_loop", - "802b25ac": "bhv_beta_trampoline_top_loop", - "802b26a4": "jumping_box_act_0", - "802b27d8": "jumping_box_act_1", - "802b2824": "jumping_box_free_update", - "802b288c": "bhv_jumping_box_loop", - "802b29b8": "bhv_boo_cage_loop", - "802b2bc8": "spawn_sparkle_particles", - "802b2d10": "bhv_alpha_boo_key_loop", - "802b3108": "bhv_beta_boo_key_loop", - "802b3134": "arc_to_goal_pos", - "802b3250": "grand_star_zero_velocity", - "802b329c": "bhv_grand_star_loop", - "802b3600": "bhv_bowser_key_loop", - "802b37b8": "bhv_white_puff_smoke_init", - "802b3810": "bhv_bullet_bill_init", - "802b3830": "bullet_bill_act_0", - "802b38b8": "bullet_bill_act_1", - "802b394c": "bullet_bill_act_2", - "802b3b08": "bullet_bill_act_3", - "802b3b24": "bullet_bill_act_4", - "802b3be0": "bhv_bullet_bill_loop", - "802b3c2c": "bowser_tail_anchor_act_default", - "802b3cdc": "bowser_tail_anchor_thrown", - "802b3d10": "bowser_tail_anchor_act_touched_mario", - "802b3d74": "bhv_bowser_tail_anchor_loop", - "802b3df4": "bhv_bowser_flame_spawn_loop", - "802b4080": "bhv_bowser_body_anchor_loop", - "802b4184": "bowser_spawn_shockwave", - "802b41fc": "bowser_bounce_effects", - "802b4288": "bowser_set_anim_look_up_and_walk", - "802b4300": "bowser_set_anim_slow_gait", - "802b4368": "bowser_set_anim_look_down_stop_walk", - "802b43dc": "bowser_init_camera_actions", - "802b4478": "bowser_act_wait", - "802b44bc": "bowser_act_intro_walk", - "802b45f4": "bowser_bitdw_actions", - "802b473c": "bowser_bitfs_actions", - "802b48d4": "bowser_bits_action_list", - "802b4a1c": "bowser_set_act_big_jump", - "802b4a3c": "bowser_bits_actions", - "802b4af4": "bowser_reset_fallen_off_stage", - "802b4bac": "bowser_act_idle", - "802b4be8": "bowser_act_default", - "802b4ca4": "bowser_act_breath_fire", - "802b4d14": "bowser_act_walk_to_mario", - "802b4f00": "bowser_act_teleport", - "802b5104": "bowser_act_spit_fire_into_sky", - "802b5218": "bowser_act_hit_mine", - "802b53f4": "bowser_set_anim_jump", - "802b5444": "bowser_land", - "802b5554": "bowser_short_second_hop", - "802b55cc": "bowser_act_big_jump", - "802b5798": "bowser_act_quick_jump", - "802b58bc": "bowser_act_hit_edge", - "802b59cc": "bowser_act_spit_fire_onto_floor", - "802b5aec": "bowser_turn_on_timer", - "802b5c00": "bowser_act_turn_from_edge", - "802b5c40": "bowser_act_charge_mario", - "802b5f6c": "bowser_check_hit_mine", - "802b5fec": "bowser_act_thrown", - "802b611c": "bowser_set_goal_invisible", - "802b6190": "bowser_act_jump_onto_stage", - "802b6568": "bowser_act_dance", - "802b65d0": "bowser_spawn_collectable", - "802b6670": "bowser_fly_back_dead", - "802b6730": "bowser_dead_bounce", - "802b67d4": "bowser_dead_wait_for_mario", - "802b6878": "bowser_dead_twirl_up", - "802b6a10": "bowser_dead_hide", - "802b6a78": "bowser_dead_default_stage_ending", - "802b6bac": "bowser_dead_final_stage_ending", - "802b6cf0": "bowser_act_dead", - "802b6e40": "bowser_tilt_platform", - "802b6ee0": "bowser_act_tilt_lava_platform", - "802b711c": "bowser_check_fallen_off_stage", - "802b71e4": "bowser_free_update", - "802b72d4": "bowser_held_update", - "802b7418": "bowser_thrown_dropped_update", - "802b75a4": "bhv_bowser_loop", - "802b7878": "bhv_bowser_init", - "802b798c": "geo_update_body_rot_from_parent", - "802b7a20": "bowser_open_eye_switch", - "802b7c64": "geo_switch_bowser_eyes", - "802b7d44": "geo_bits_bowser_coloring", - "802b7e68": "falling_bowser_plat_act_start", - "802b7ef0": "falling_bowser_plat_act_check", - "802b8024": "falling_bowser_plat_act_fall", - "802b8384": "bhv_falling_bowser_platform_loop", - "802b83b0": "bowser_flame_despawn", - "802b8434": "bowser_flame_should_despawn", - "802b84ac": "bhv_flame_bowser_init", - "802b85b0": "bhv_flame_large_burning_out_init", - "802b8654": "bowser_flame_move", - "802b8734": "bhv_flame_bowser_loop", - "802b8960": "bhv_flame_moving_forward_growing_init", - "802b89ec": "bhv_flame_moving_forward_growing_loop", - "802b8b1c": "bhv_flame_floating_landing_init", - "802b8c38": "bhv_flame_floating_landing_loop", - "802b8d68": "bhv_blue_bowser_flame_init", - "802b8e7c": "bhv_blue_bowser_flame_loop", - "802b9034": "bhv_flame_bouncing_init", - "802b90ec": "bhv_flame_bouncing_loop", - "802b921c": "bhv_blue_flames_group_loop", - "802b935c": "bhv_blue_fish_movement_loop", - "802b9790": "bhv_tank_fish_group_loop", - "802b98d4": "vec3f_copy_2", - "802b98fc": "bhv_checkerboard_elevator_group_init", - "802b9a78": "checkerboard_plat_act_move_y", - "802b9af8": "checkerboard_plat_act_rotate", - "802b9bb4": "bhv_checkerboard_platform_init", - "802b9bd8": "bhv_checkerboard_platform_loop", - "802b9e94": "bhv_ddd_warp_loop", - "802b9efc": "water_level_pillar_undrained", - "802ba13c": "water_level_pillar_drained", - "802ba19c": "bhv_water_level_pillar_init", - "802ba1e0": "bhv_water_level_pillar_loop", - "802ba25c": "bhv_invisible_objects_under_bridge_init", - "802ba2b0": "geo_scale_bowser_key", - "802ba2f8": "bhv_bowser_key_unlock_door_loop", - "802ba458": "bhv_bowser_key_course_exit_loop", - "802ba5bc": "bhv_moat_grills_loop", - "802ba608": "bhv_rotating_clock_arm_loop", - "802ba7e0": "handle_cap_ukiki_reset", - "802ba868": "is_cap_ukiki_and_mario_has_normal_cap_on_head", - "802ba8c4": "geo_update_projectile_pos_from_parent_copy", - "802ba958": "idle_ukiki_taunt", - "802bab7c": "ukiki_act_idle", - "802bae40": "ukiki_act_return_home", - "802baec4": "ukiki_act_wait_to_respawn", - "802baf10": "ukiki_act_unused_turn", - "802baf64": "ukiki_act_turn_to_mario", - "802bb07c": "ukiki_act_run", - "802bb288": "ukiki_act_jump", - "802bb3b8": "ukiki_act_go_to_cage", - "802bb798": "ukiki_free_loop", - "802bb888": "cage_ukiki_held_loop", - "802bba3c": "cap_ukiki_held_loop", - "802bbb98": "bhv_ukiki_init", - "802bbc0c": "bhv_ukiki_loop", - "802bbd6c": "lll_octagonal_mesh_move", - "802bbfd8": "lll_octagonal_mesh_find_y_offset", - "802bc0f0": "bhv_lll_moving_octagonal_mesh_platform_loop", - "802bc22c": "bhv_lll_sinking_rock_block_loop", - "802bc294": "bhv_lll_rotating_hex_flame_loop", - "802bc348": "fire_bar_spawn_flames", - "802bc4f4": "fire_bar_act_0", - "802bc538": "fire_bar_act_1", - "802bc590": "fire_bar_act_2", - "802bc5fc": "fire_bar_act_3", - "802bc618": "bhv_lll_rotating_block_fire_bars_loop", - "802bc660": "bhv_lll_wood_piece_loop", - "802bc728": "bhv_lll_floating_wood_bridge_loop", - "802bc898": "bhv_volcano_flames_loop", - "802bc934": "hexagonal_ring_spawn_flames", - "802bca74": "bhv_lll_rotating_hexagonal_ring_loop", - "802bcce8": "sinking_rectangular_plat_actions", - "802bcda8": "bhv_lll_sinking_rectangular_platform_loop", - "802bce58": "bhv_lll_sinking_square_platforms_loop", - "802bce9c": "create_transform_from_normals", - "802bcf40": "bhv_platform_normals_init", - "802bcfc4": "approach_by_increment", - "802bd058": "bhv_tilting_inverted_pyramid_loop", - "802bd3e4": "koopa_shell_spawn_water_drop", - "802bd488": "bhv_koopa_shell_flame_loop", - "802bd5dc": "bhv_koopa_shell_flame_spawn", - "802bd62c": "koopa_shell_spawn_sparkles", - "802bd680": "bhv_koopa_shell_loop", - "802bd8d0": "tox_box_shake_screen", - "802bd91c": "tox_box_move", - "802bdb04": "tox_box_act_roll_forward", - "802bdb3c": "tox_box_act_roll_backward", - "802bdb74": "tox_box_act_roll_right", - "802bdbac": "tox_box_act_roll_left", - "802bdbe4": "tox_box_act_roll_land", - "802bdc7c": "tox_box_act_idle", - "802bdcc8": "tox_box_act_unused_idle", - "802bdd14": "tox_box_act_init", - "802bdd68": "bhv_tox_box_loop", - "802bdd9c": "piranha_plant_act_idle", - "802bde10": "piranha_plant_check_interactions", - "802bdeec": "piranha_plant_act_sleeping", - "802be034": "piranha_plant_act_woken_up", - "802be0b8": "piranha_plant_reset_when_far", - "802be0ec": "piranha_plant_attacked", - "802be150": "piranha_plant_act_shrink_and_die", - "802be234": "piranha_plant_act_wait_to_respawn", - "802be278": "piranha_plant_act_respawn", - "802be350": "piranha_plant_act_biting", - "802be49c": "mario_moving_fast_enough_to_make_piranha_plant_bite", - "802be50c": "piranha_plant_act_stopped_biting", - "802be5a0": "bhv_piranha_plant_loop", - "802be628": "bhv_lll_bowser_puzzle_spawn_piece", - "802be6d4": "bhv_lll_bowser_puzzle_spawn_pieces", - "802be79c": "bhv_lll_bowser_puzzle_loop", - "802be8a8": "bhv_lll_bowser_puzzle_piece_action_0", - "802be8b8": "bhv_lll_bowser_puzzle_piece_action_1", - "802be8f4": "bhv_lll_bowser_puzzle_piece_update", - "802be9dc": "bhv_lll_bowser_puzzle_piece_move", - "802beb14": "bhv_lll_bowser_puzzle_piece_idle", - "802beb54": "bhv_lll_bowser_puzzle_piece_move_left", - "802beb8c": "bhv_lll_bowser_puzzle_piece_move_right", - "802bebc4": "bhv_lll_bowser_puzzle_piece_move_up", - "802bebfc": "bhv_lll_bowser_puzzle_piece_move_down", - "802bec34": "bhv_lll_bowser_puzzle_piece_loop", - "802becb0": "set_obj_anim_with_accel_and_sound", - "802bed7c": "play_penguin_walking_sound", - "802bedec": "tuxies_mother_act_2", - "802bef8c": "tuxies_mother_act_1", - "802bf1d8": "tuxies_mother_act_0", - "802bf3c0": "bhv_tuxies_mother_loop", - "802bf424": "small_penguin_dive_with_mario", - "802bf474": "small_penguin_act_2", - "802bf57c": "small_penguin_act_1", - "802bf648": "small_penguin_act_3", - "802bf6e4": "small_penguin_act_4", - "802bf760": "small_penguin_act_0", - "802bf90c": "small_penguin_act_5", - "802bfa14": "small_penguin_free_actions", - "802bfa88": "bhv_small_penguin_loop", - "802bfbac": "geo_switch_tuxie_mother_eyes", - "802bff3c": "bhv_fish_spawner_loop", - "802c0768": "bhv_fish_loop", - "802c08a8": "bhv_wdw_express_elevator_loop", - "802c0aac": "bub_spawner_act_0", - "802c0b50": "bub_spawner_act_1", - "802c0ba4": "bub_spawner_act_2", - "802c0bc4": "bub_spawner_act_3", - "802c0be0": "bhv_bub_spawner_loop", - "802c0c0c": "bub_move_vertically", - "802c0cd4": "bub_act_0", - "802c0d44": "bub_act_1", - "802c0f90": "bub_act_2", - "802c1204": "bhv_bub_loop", - "802c12c0": "bhv_rotating_exclamation_box_loop", - "802c1308": "exclamation_box_act_0", - "802c13ec": "exclamation_box_act_1", - "802c14b0": "exclamation_box_act_2", - "802c15b8": "exclamation_box_act_3", - "802c17bc": "exclamation_box_spawn_contents", - "802c18d0": "exclamation_box_act_4", - "802c1988": "exclamation_box_act_5", - "802c19c0": "bhv_exclamation_box_loop", - "802c19fc": "bhv_sound_spawner_init", - "802c1a40": "bhv_bowsers_sub_loop", - "802c1a80": "bhv_sushi_shark_collision_loop", - "802c1a90": "bhv_sushi_shark_loop", - "802c1c44": "bhv_sunken_ship_part_loop", - "802c1cd4": "bhv_ship_part_3_loop", - "802c1e10": "bhv_jrb_sliding_box_loop", - "802c2190": "bhv_white_puff_1_loop", - "802c2274": "bhv_white_puff_2_loop", - "802c22b8": "bhv_hidden_blue_coin_loop", - "802c242c": "bhv_blue_coin_switch_loop", - "802c263c": "bhv_openable_cage_door_loop", - "802c26f8": "bhv_openable_grill_loop", - "802c2930": "bhv_init_changing_water_level_loop", - "802c2a24": "bhv_water_level_diamond_loop", - "802c2ce8": "tweester_scale_and_move", - "802c2ebc": "tweester_act_idle", - "802c2fbc": "tweester_act_chase", - "802c31c4": "tweester_act_hide", - "802c329c": "bhv_tweester_loop", - "802c32e8": "bhv_tweester_sand_particle_loop", - "802c3440": "bhv_boo_init", - "802c3684": "bhv_courtyard_boo_triplet_init", - "802c4824": "bhv_boo_loop", - "802c4f30": "bhv_big_boo_loop", - "802c515c": "bhv_boo_with_cage_init", - "802c51d4": "bhv_boo_with_cage_loop", - "802c5224": "bhv_merry_go_round_boo_manager_loop", - "802c53cc": "obj_set_secondary_camera_focus", - "802c53ec": "bhv_animated_texture_loop", - "802c5414": "bhv_boo_in_castle_loop", - "802c5688": "bhv_boo_staircase", - "802c5890": "bhv_bbh_tilting_trap_platform_loop", - "802c5a38": "bhv_haunted_bookshelf_loop", - "802c5ca8": "bhv_merry_go_round_loop", - "802c5dc0": "bhv_static_checkered_platform_loop", - "802c5f48": "bhv_beta_bowser_anchor_loop", - "802c5fdc": "bhv_play_music_track_when_touched_loop", - "802c6050": "bhv_floor_trap_in_castle_loop", - "802c60ac": "bhv_castle_floor_trap_init", - "802c6150": "bhv_castle_floor_trap_open_detect", - "802c61d4": "bhv_castle_floor_trap_open", - "802c6278": "bhv_castle_floor_trap_close_detect", - "802c62bc": "bhv_castle_floor_trap_close", - "802c6328": "bhv_castle_floor_trap_rotate", - "802c6348": "bhv_castle_floor_trap_loop", - "802c63e8": "bhv_pole_base_loop", - "802c64a4": "bhv_sparkle_spawn_loop", - "802c6538": "update_angle_from_move_flags", - "802c65c0": "bhv_scuttlebug_loop", - "802c6b6c": "bhv_scuttlebug_spawn_loop", - "802c6ca0": "whomp_play_sfx_from_pound_animation", - "802c6d6c": "whomp_init", - "802c6ec8": "whomp_turn", - "802c6fb0": "whomp_patrol", - "802c710c": "king_whomp_chase", - "802c7254": "whomp_prepare_jump", - "802c72b4": "whomp_jump", - "802c7380": "whomp_land", - "802c7428": "king_whomp_on_ground", - "802c75fc": "whomp_on_ground", - "802c76d4": "whomp_on_ground_general", - "802c7858": "whomp_die", - "802c7998": "king_whomp_stop_music", - "802c79d8": "bhv_whomp_loop", - "802c7a70": "bhv_water_splash_spawn_droplets", - "802c7b14": "bhv_water_droplet_loop", - "802c7cac": "bhv_idle_water_wave_loop", - "802c7d40": "bhv_water_droplet_splash_init", - "802c7d90": "bhv_bubble_splash_init", - "802c7dfc": "bhv_shallow_water_splash_init", - "802c7e5c": "bhv_wave_trail_shrink", - "802c7f98": "bhv_strong_wind_particle_loop", - "802c81b4": "cur_obj_spawn_strong_wind_particles", - "802c834c": "bhv_sl_snowman_wind_loop", - "802c863c": "bhv_sl_walking_penguin_loop", - "802c89f0": "update_mario_platform", - "802c8b4c": "get_mario_pos", - "802c8b8c": "set_mario_pos", - "802c8bc8": "apply_platform_displacement", - "802c8ec0": "apply_mario_platform_displacement", - "802c8f28": "clear_mario_platform", - "802c8f40": "debug_print_obj_collision", - "802c8fe4": "detect_object_hitbox_overlap", - "802c91ec": "detect_object_hurtbox_overlap", - "802c9388": "clear_object_collision", - "802c93f8": "check_collision_in_list", - "802c94ac": "check_player_object_collision", - "802c95b4": "check_pushable_object_collision", - "802c9630": "check_destructive_object_collision", - "802c9724": "detect_object_collisions", - "802c97d0": "unused_init_free_list", - "802c9840": "unused_try_allocate", - "802c98a4": "try_allocate_object", - "802c9950": "unused_deallocate", - "802c99b8": "init_free_object_list", - "802c9a3c": "clear_object_lists", - "802c9b68": "unload_object", - "802c9c00": "allocate_object", - "802c9f04": "create_object", - "802ca028": "mark_obj_for_deletion", - "802ca040": "exec_anim_sound_state", - "802ca144": "create_sound_spawner", - "802ca190": "cur_obj_play_sound_1", - "802ca1e0": "cur_obj_play_sound_2", - "802ca230": "calc_dist_to_volume_range_1", - "802ca2d4": "calc_dist_to_volume_range_2", - "802ca370": "stub_debug_1", - "802ca380": "stub_debug_2", - "802ca390": "stub_debug_3", - "802ca3a0": "stub_debug_4", - "802ca3b0": "get_current_clock", - "802ca3e0": "get_clock_difference", - "802ca418": "set_print_state_info", - "802ca460": "print_text_array_info", - "802ca51c": "set_text_array_x_y", - "802ca568": "print_debug_bottom_up", - "802ca5b8": "print_debug_top_down_objectinfo", - "802ca618": "print_debug_top_down_mapinfo", - "802ca680": "print_debug_top_down_normal", - "802ca6d0": "print_mapinfo", - "802ca8e8": "print_checkinfo", - "802ca918": "print_surfaceinfo", - "802ca94c": "print_stageinfo", - "802ca990": "print_string_array_info", - "802caa6c": "print_effectinfo", - "802caaa8": "print_enemyinfo", - "802caae4": "update_debug_dpadmask", - "802cabac": "debug_unknown_level_select_check", - "802cac20": "reset_debug_objectinfo", - "802cae9c": "try_modify_debug_controls", - "802cb0b0": "stub_debug_5", - "802cb0c0": "try_print_debug_mario_object_info", - "802cb1c0": "try_print_debug_mario_level_info", - "802cb264": "try_do_mario_debug_object_spawn", - "802cb394": "debug_print_obj_move_flags", - "802cb564": "debug_enemy_unknown", - "802cb5c0": "set_and_reset_transition_fade_timer", - "802cb640": "set_transition_color_fade_alpha", - "802cb894": "vertex_transition_color", - "802cba18": "dl_transition_color", - "802cbbc4": "render_fade_transition_from_color", - "802cbc20": "render_fade_transition_into_color", - "802cbc7c": "calc_tex_transition_radius", - "802cbd54": "calc_tex_transition_time", - "802cbe64": "convert_tex_transition_angle_to_pos", - "802cbee0": "center_tex_transition_x", - "802cbf64": "center_tex_transition_y", - "802cbfe8": "make_tex_transition_vertex", - "802cc180": "load_tex_transition_vertex", - "802cc4d8": "render_textured_transition", - "802ccbe8": "render_screen_transition", - "802ccdc8": "render_cannon_circle_base", - "802cd1e8": "geo_cannon_circle_base", - "802cd280": "rotate_rectangle", - "802cd328": "atan2_deg", - "802cd388": "scale_shadow_with_distance", - "802cd444": "disable_shadow_with_distance", - "802cd48c": "dim_shadow_with_distance", - "802cd614": "get_water_level_below_shadow", - "802cd6c4": "init_shadow", - "802cd938": "get_texture_coords_9_vertices", - "802cd988": "get_texture_coords_4_vertices", - "802cd9ec": "make_shadow_vertex_at_xyz", - "802cdb20": "extrapolate_vertex_y_position", - "802cdb74": "get_vertex_coords", - "802cdc40": "calculate_vertex_xyz", - "802cde94": "floor_local_tilt", - "802cdf3c": "make_shadow_vertex", - "802ce128": "add_shadow_to_display_list", - "802ce2bc": "linearly_interpolate_solidity_positive", - "802ce3ec": "linearly_interpolate_solidity_negative", - "802ce524": "correct_shadow_solidity_for_animations", - "802ce690": "correct_lava_shadow_height", - "802ce79c": "create_shadow_player", - "802ce9d0": "create_shadow_circle_9_verts", - "802ceae8": "create_shadow_circle_4_verts", - "802cec04": "create_shadow_circle_assuming_flat_ground", - "802cedc0": "create_shadow_rectangle", - "802cef6c": "get_shadow_height_solidity", - "802cf080": "create_shadow_square", - "802cf1f0": "create_shadow_hardcoded_rectangle", - "802cf34c": "create_shadow_below_xyz", - "802cf5b0": "calculate_skybox_scaled_x", - "802cf69c": "calculate_skybox_scaled_y", - "802cf804": "make_skybox_rect", - "802cfa2c": "draw_skybox_tile_grid", - "802cfc68": "create_skybox_ortho_matrix", - "802cfd88": "init_skybox_display_list", - "802cfef4": "create_skybox_facing_camera", - "802d0080": "geo_wdw_set_initial_water_level", - "802d01e0": "geo_movtex_pause_control", - "802d0254": "movtex_make_quad_vertex", - "802d0484": "movtex_gen_from_quad", - "802d0a84": "movtex_gen_from_quad_array", - "802d0bb0": "movtex_gen_quads_id", - "802d0c84": "get_quad_collection_from_id", - "802d0f28": "movtex_change_texture_format", - "802d104c": "geo_movtex_draw_water_regions", - "802d1330": "update_moving_texture_offset", - "802d13cc": "movtex_write_vertex_first", - "802d1574": "movtex_write_vertex_index", - "802d18b4": "movtex_gen_list", - "802d1b70": "geo_movtex_draw_nocolor", - "802d1cdc": "geo_movtex_draw_colored", - "802d1e48": "geo_movtex_draw_colored_no_update", - "802d1fa8": "geo_movtex_draw_colored_2_no_update", - "802d2108": "geo_movtex_update_horizontal", - "802d2210": "make_vertex", - "802d22c4": "round_float", - "802d2360": "geo_exec_inside_castle_light", - "802d2470": "geo_exec_flying_carpet_timer_update", - "802d2520": "geo_exec_flying_carpet_create", - "802d28cc": "geo_exec_cake_end_screen", - "802d29c0": "stop_other_paintings", - "802d2a74": "painting_mario_y", - "802d2b08": "painting_mario_z", - "802d2b84": "painting_ripple_y", - "802d2c40": "painting_nearest_4th", - "802d2d80": "painting_mario_x", - "802d2dfc": "painting_ripple_x", - "802d2eb8": "painting_state", - "802d2ffc": "wall_painting_proximity_idle", - "802d319c": "wall_painting_proximity_rippling", - "802d327c": "wall_painting_continuous_idle", - "802d341c": "wall_painting_continuous_rippling", - "802d34fc": "floor_painting_proximity_idle", - "802d36ac": "floor_painting_proximity_rippling", - "802d379c": "floor_painting_continuous_idle", - "802d393c": "floor_painting_continuous_rippling", - "802d3a2c": "painting_update_floors", - "802d3bec": "painting_update_ripple_state", - "802d3cec": "calculate_ripple_at_point", - "802d3e6c": "ripple_if_movable", - "802d3ee4": "painting_generate_mesh", - "802d404c": "painting_calculate_triangle_normals", - "802d43f8": "normalize_component", - "802d44bc": "painting_average_vertex_normals", - "802d47d0": "render_painting", - "802d4edc": "painting_model_view_transform", - "802d50dc": "painting_ripple_image", - "802d5354": "painting_ripple_env_mapped", - "802d556c": "display_painting_rippling", - "802d568c": "display_painting_not_rippling", - "802d5778": "reset_painting", - "802d57a8": "move_ddd_painting", - "802d58e4": "set_painting_layer", - "802d593c": "display_painting", - "802d59a8": "wall_painting_update", - "802d5aa0": "floor_painting_update", - "802d5b98": "geo_painting_draw", - "802d5d0c": "geo_painting_update", - "802d5e00": "int_pow", - "802d5e54": "format_integer", - "802d6144": "parse_width_field", - "802d62d8": "print_text_fmt_int", - "802d6554": "print_text", - "802d66c0": "print_text_centered", - "802d6858": "char_to_glyph_index", - "802d69f8": "add_glyph_texture", - "802d6acc": "clip_to_bounds", - "802d6b3c": "render_textrect", - "802d6c88": "render_text_labels", - "802d6f20": "create_dl_identity_matrix", - "802d7070": "create_dl_translation_matrix", - "802d7174": "create_dl_rotation_matrix", - "802d7280": "create_dl_scale_matrix", - "802d7384": "create_dl_ortho_matrix", - "802d75dc": "render_generic_char", - "802d76c8": "render_multi_text_string", - "802d77dc": "print_generic_string", - "802d7b84": "print_hud_lut_string", - "802d7e88": "print_menu_generic_string", - "802d82d4": "print_credits_string", - "802d862c": "handle_menu_scrolling", - "802d8844": "get_str_x_pos_from_center", - "802d8934": "get_string_width", - "802d89b8": "print_hud_my_score_coins", - "802d8a80": "print_hud_my_score_stars", - "802d8b34": "int_to_str", - "802d8c6c": "get_dialog_id", - "802d8c88": "create_dialog_box", - "802d8cc4": "create_dialog_box_with_var", - "802d8d08": "create_dialog_inverted_box", - "802d8d48": "create_dialog_box_with_response", - "802d8d90": "reset_dialog_render_state", - "802d8e2c": "render_dialog_box_type", - "802d9148": "change_and_flash_dialog_text_color_lines", - "802d9388": "handle_dialog_scroll_page_state", - "802d944c": "render_star_count_dialog_text", - "802d9634": "render_multi_text_string_lines", - "802d9800": "ensure_nonnegative", - "802d982c": "handle_dialog_text_and_pages", - "802d9cb0": "render_dialog_triangle_choice", - "802d9dfc": "render_dialog_triangle_next", - "802d9f84": "handle_special_dialog_text", - "802da1ac": "render_dialog_entries", - "802da810": "set_menu_mode", - "802da844": "reset_cutscene_msg_fade", - "802da85c": "dl_rgba16_begin_cutscene_msg_fade", - "802da8e4": "dl_rgba16_stop_cutscene_msg_fade", - "802da964": "ascii_to_credits_char", - "802daa34": "print_credits_str_ascii", - "802daae4": "set_cutscene_message", - "802dab58": "do_cutscene_handler", - "802dad54": "print_peach_letter_message", - "802db08c": "render_hud_cannon_reticle", - "802db350": "reset_red_coins_collected", - "802db368": "change_dialog_camera_angle", - "802db3b8": "shade_screen", - "802db498": "print_animated_red_coin", - "802db6e8": "render_pause_red_coins", - "802db760": "render_pause_my_score_coins", - "802dbb24": "render_pause_camera_options", - "802dbe68": "render_pause_course_options", - "802dc15c": "render_pause_castle_menu_box", - "802dc418": "highlight_last_course_complete_stars", - "802dc478": "print_hud_pause_colorful_str", - "802dc570": "render_pause_castle_course_stars", - "802dc718": "render_pause_castle_main_strings", - "802dca88": "render_pause_screen", - "802dcd04": "print_hud_course_complete_string", - "802dcf30": "print_hud_course_complete_coins", - "802dd194": "play_star_fanfare_and_flash_hud", - "802dd210": "render_course_complete_lvl_info_and_hud_str", - "802dd838": "render_save_confirmation", - "802ddae0": "render_course_complete_screen", - "802ddca4": "render_menus_and_dialogs", - "802dddf0": "envfx_init_snow", - "802ddf38": "envfx_update_snowflake_count", - "802de0bc": "envfx_cleanup_snow", - "802de114": "orbit_from_positions", - "802de23c": "pos_from_orbit", - "802de360": "envfx_is_snowflake_alive", - "802de458": "envfx_update_snow_normal", - "802de888": "envfx_update_snow_blizzard", - "802ded38": "envfx_update_snow_water", - "802def2c": "rotate_triangle_vertices", - "802df334": "append_snowflake_vertex_buffer", - "802df748": "envfx_update_snow", - "802dfbc8": "envfx_update_particles", - "802dfd50": "particle_is_laterally_close", - "802dfe00": "random_flower_offset", - "802dfe80": "envfx_update_flower", - "802e0120": "envfx_set_lava_bubble_position", - "802e048c": "envfx_update_lava", - "802e065c": "envfx_rotate_around_whirlpool", - "802e08a8": "envfx_is_whirlpool_bubble_alive", - "802e0934": "envfx_update_whirlpool", - "802e0e24": "envfx_is_jestream_bubble_alive", - "802e0eb8": "envfx_update_jetstream", - "802e1238": "envfx_init_bubble", - "802e1414": "envfx_bubbles_update_switch", - "802e1618": "append_bubble_vertex_buffer", - "802e1a20": "envfx_set_bubble_texture", - "802e1bb8": "envfx_update_bubble_particles", - "802e1ed8": "envfx_set_max_bubble_particles", - "802e1f48": "envfx_update_bubbles", - "802e20a0": "convert_rotation", - "802e2134": "spawn_macro_abs_yrot_2params", - "802e21dc": "spawn_macro_abs_yrot_param1", - "802e2284": "spawn_macro_abs_special", - "802e2414": "spawn_macro_objects", - "802e2690": "spawn_macro_objects_hardcoded", - "802e28ec": "spawn_special_objects", - "802e2cf0": "render_hud_tex_lut", - "802e2e58": "render_hud_small_tex_lut", - "802e30b4": "render_power_meter_health_segment", - "802e3214": "render_dl_power_meter", - "802e33b8": "animate_power_meter_emphasized", - "802e352c": "handle_power_meter_actions", - "802e3654": "render_hud_power_meter", - "802e3744": "render_hud_mario_lives", - "802e37a8": "render_hud_coins", - "802e380c": "render_hud_stars", - "802e38e4": "render_hud_keys", - "802e395c": "render_hud_timer", - "802e3b1c": "set_hud_camera_status", - "802e3b3c": "render_hud_camera_status", - "802e3d2c": "render_hud", - "802e3e50": "set_yoshi_as_not_dead", - "802e3e68": "geo_obj_transparency_something", - "802e3f68": "absf_2", - "802e3fac": "turn_obj_away_from_surface", - "802e405c": "obj_find_wall", - "802e41a4": "turn_obj_away_from_steep_floor", - "802e42e0": "obj_orient_graph", - "802e43e4": "calc_obj_friction", - "802e445c": "calc_new_obj_vel_and_pos_y", - "802e4814": "calc_new_obj_vel_and_pos_y_underwater", - "802e4cec": "obj_update_pos_vel_xz", - "802e4d88": "obj_splash", - "802e4e90": "object_step", - "802e5114": "object_step_without_floor_orient", - "802e5160": "obj_move_xyz_using_fvel_and_yaw", - "802e5208": "is_point_within_radius_of_mario", - "802e52b8": "is_point_close_to_object", - "802e5360": "set_object_visibility", - "802e53f4": "obj_return_home_if_safe", - "802e54b0": "obj_return_and_displace_home", - "802e55d0": "obj_check_if_facing_toward_angle", - "802e569c": "obj_find_wall_displacement", - "802e5760": "obj_spawn_yellow_coins", - "802e5824": "obj_flicker_and_disappear", - "802e58b4": "current_mario_room_check", - "802e5948": "trigger_obj_dialog_when_facing", - "802e5a80": "obj_check_floor_death", - "802e5b18": "obj_lava_death", - "802e5c6c": "spawn_orange_number", - "802e5d04": "debug_sequence_tracker", - "802e5de8": "coin_step", - "802e5e6c": "moving_coin_flicker", - "802e5ea4": "coin_collected", - "802e5ee8": "bhv_moving_yellow_coin_init", - "802e5f64": "bhv_moving_yellow_coin_loop", - "802e6098": "bhv_moving_blue_coin_init", - "802e6114": "bhv_moving_blue_coin_loop", - "802e62a4": "bhv_blue_coin_sliding_jumping_init", - "802e631c": "blue_coin_sliding_away_from_mario", - "802e63ec": "blue_coin_sliding_slow_down", - "802e6474": "bhv_blue_coin_sliding_loop", - "802e6628": "bhv_blue_coin_jumping_loop", - "802e6790": "bhv_seaweed_init", - "802e67dc": "bhv_seaweed_bundle_init", - "802e6a2c": "bhv_bobomb_init", - "802e6a8c": "bobomb_spawn_coin", - "802e6af8": "bobomb_act_explode", - "802e6bd4": "bobomb_check_interactions", - "802e6cf0": "bobomb_act_patrol", - "802e6dc8": "bobomb_act_chase_mario", - "802e6e84": "bobomb_act_launched", - "802e6ed8": "generic_bobomb_free_loop", - "802e7020": "stationary_bobomb_free_loop", - "802e7134": "bobomb_free_loop", - "802e7180": "bobomb_held_loop", - "802e7220": "bobomb_dropped_loop", - "802e7280": "bobomb_thrown_loop", - "802e7324": "curr_obj_random_blink", - "802e742c": "bhv_bobomb_loop", - "802e75a0": "bhv_bobomb_fuse_smoke_init", - "802e76ac": "bhv_bobomb_buddy_init", - "802e770c": "bobomb_buddy_act_idle", - "802e7814": "bobomb_buddy_cannon_dialog", - "802e79dc": "bobomb_buddy_act_talk", - "802e7b00": "bobomb_buddy_act_turn_to_talk", - "802e7bb0": "bobomb_buddy_actions", - "802e7c4c": "bhv_bobomb_buddy_loop", - "802e7c90": "bhv_cannon_closed_init", - "802e7d4c": "cannon_door_act_opening", - "802e7e54": "bhv_cannon_closed_loop", - "802e7f70": "bhv_whirlpool_init", - "802e7fb8": "whirlpool_set_hitbox", - "802e7fec": "whirpool_orient_graph", - "802e80dc": "bhv_whirlpool_loop", - "802e82b0": "bhv_jet_stream_loop", - "802e8388": "bhv_homing_amp_init", - "802e89d4": "bhv_homing_amp_loop", - "802e8ae4": "bhv_circling_amp_init", - "802e8ecc": "bhv_circling_amp_loop", - "802e8f68": "bhv_butterfly_init", - "802e9018": "butterfly_step", - "802e9278": "butterfly_calculate_angle", - "802e9470": "butterfly_act_rest", - "802e94e4": "butterfly_act_follow_mario", - "802e9548": "butterfly_act_return_home", - "802e96c8": "bhv_butterfly_loop", - "802e9764": "bhv_hoot_init", - "802e97fc": "hoot_find_next_floor", - "802e98c0": "hoot_floor_bounce", - "802e9a4c": "hoot_free_step", - "802e9cf4": "hoot_player_set_yaw", - "802e9d98": "hoot_carry_step", - "802e9f60": "hoot_surface_collision", - "802ea144": "hoot_act_ascent", - "802ea258": "hoot_action_loop", - "802ea3f0": "hoot_turn_to_home", - "802ea4ec": "hoot_awake_loop", - "802ea588": "bhv_hoot_loop", - "802ea6a8": "bhv_beta_holdable_object_init", - "802ea7e0": "bhv_beta_holdable_object_loop", - "802ea888": "bhv_object_bubble_init", - "802ea934": "bhv_object_bubble_loop", - "802eaa10": "bhv_object_water_wave_init", - "802eaa50": "bhv_object_water_wave_loop", - "802eaa8c": "bhv_explosion_init", - "802eaad0": "bhv_explosion_loop", - "802eabf0": "bhv_bobomb_bully_death_smoke_init", - "802eac3c": "bhv_bobomb_explosion_bubble_init", - "802ead3c": "bhv_bobomb_explosion_bubble_loop", - "802eaef8": "bhv_respawner_loop", - "802eaf84": "create_respawner", - "802eb05c": "bhv_small_bully_init", - "802eb104": "bhv_big_bully_init", - "802eb1c0": "bully_check_mario_collision", - "802eb288": "bully_act_chase_mario", - "802eb3f0": "bully_act_knockback", - "802eb510": "bully_act_back_up", - "802eb5c4": "bully_backup_check", - "802eb630": "bully_play_stomping_sound", - "802eb744": "bully_step", - "802eb7e0": "bully_spawn_coin", - "802eb8b0": "bully_act_level_death", - "802eb9d0": "bhv_bully_loop", - "802ebb74": "big_bully_spawn_minion", - "802ebc00": "bhv_big_bully_with_minions_init", - "802ebc88": "big_bully_spawn_star", - "802ebce0": "bhv_big_bully_with_minions_loop", - "802ebf70": "water_ring_calc_mario_dist", - "802ec030": "water_ring_init", - "802ec1b0": "bhv_jet_stream_water_ring_init", - "802ec200": "water_ring_check_collection", - "802ec3d0": "water_ring_set_scale", - "802ec4e0": "water_ring_act_collected", - "802ec59c": "water_ring_act_not_collected", - "802ec75c": "bhv_jet_stream_water_ring_loop", - "802ec7cc": "spawn_manta_ray_ring_manager", - "802ec818": "water_ring_spawner_act_inactive", - "802ec908": "bhv_jet_stream_ring_spawner_loop", - "802ec9b8": "bhv_manta_ray_water_ring_init", - "802ec9f0": "manta_water_ring_act_not_collected", - "802ecba4": "bhv_manta_ray_water_ring_loop", - "802ecc14": "bhv_bowser_bomb_loop", - "802ecd0c": "bhv_bowser_bomb_explosion_loop", - "802ecea0": "bhv_bowser_bomb_smoke_loop", - "802ecfac": "bhv_celebration_star_init", - "802ed10c": "celeb_star_act_spin_around_mario", - "802ed28c": "celeb_star_act_face_camera", - "802ed39c": "bhv_celebration_star_loop", - "802ed40c": "bhv_celebration_star_sparkle_loop", - "802ed45c": "bhv_star_key_collection_puff_spawner_loop", - "802ed498": "bhv_lll_drawbridge_spawner_loop", - "802ed62c": "bhv_lll_drawbridge_loop", - "802ed78c": "bhv_small_bomp_init", - "802ed7fc": "bhv_small_bomp_loop", - "802edacc": "bhv_large_bomp_init", - "802edb2c": "bhv_large_bomp_loop", - "802eddfc": "bhv_wf_sliding_platform_init", - "802edf28": "bhv_wf_sliding_platform_loop", - "802ee124": "bhv_moneybag_init", - "802ee1a0": "moneybag_check_mario_collision", - "802ee268": "moneybag_jump", - "802ee46c": "moneybag_act_move_around", - "802ee598": "moneybag_act_return_home", - "802ee728": "moneybag_act_disappear", - "802ee778": "moneybag_act_death", - "802ee7e0": "bhv_moneybag_loop", - "802ee8f4": "bhv_moneybag_hidden_loop", - "802ee9cc": "bhv_bowling_ball_init", - "802eea24": "bowling_ball_set_hitbox", - "802eea7c": "bowling_ball_set_waypoints", - "802eeb64": "bhv_bowling_ball_roll_loop", - "802eecb8": "bhv_bowling_ball_initialize_loop", - "802eedf0": "bhv_bowling_ball_loop", - "802eeeb4": "bhv_generic_bowling_ball_spawner_init", - "802eef9c": "bhv_generic_bowling_ball_spawner_loop", - "802ef0e8": "bhv_thi_bowling_ball_spawner_loop", - "802ef21c": "bhv_bob_pit_bowling_ball_init", - "802ef274": "bhv_bob_pit_bowling_ball_loop", - "802ef34c": "bhv_free_bowling_ball_init", - "802ef3f4": "bhv_free_bowling_ball_roll_loop", - "802ef524": "bhv_free_bowling_ball_loop", - "802ef63c": "bhv_rr_cruiser_wing_init", - "802ef66c": "bhv_rr_cruiser_wing_loop", - "802ef820": "bhv_spindel_init", - "802ef858": "bhv_spindel_loop", - "802efcd0": "bhv_ssl_moving_pyramid_wall_init", - "802efd8c": "bhv_ssl_moving_pyramid_wall_loop", - "802efe64": "bhv_pyramid_elevator_init", - "802efef4": "bhv_pyramid_elevator_loop", - "802f0104": "bhv_pyramid_elevator_trajectory_marker_ball_loop", - "802f0168": "bhv_pyramid_top_init", - "802f0288": "bhv_pyramid_top_spinning", - "802f04a0": "bhv_pyramid_top_explode", - "802f05b4": "bhv_pyramid_top_loop", - "802f06a8": "bhv_pyramid_top_fragment_init", - "802f0714": "bhv_pyramid_top_fragment_loop", - "802f0788": "bhv_pyramid_pillar_touch_detector_loop", - "802f07f4": "bhv_waterfall_sound_loop", - "802f0820": "bhv_volcano_sound_loop", - "802f084c": "bhv_castle_flag_init", - "802f0898": "bhv_birds_sound_loop", - "802f0950": "bhv_ambient_sounds_init", - "802f09a4": "bhv_sand_sound_loop", - "802f09f0": "bhv_castle_cannon_grate_init", - "802f0a40": "bhv_snowmans_bottom_init", - "802f0b7c": "set_rolling_sphere_hitbox", - "802f0bd4": "adjust_rolling_face_pitch", - "802f0c94": "snowmans_bottom_act_1", - "802f0df0": "snowmans_bottom_act_2", - "802f0fa8": "snowmans_bottom_act_3", - "802f105c": "bhv_snowmans_bottom_loop", - "802f120c": "bhv_snowmans_head_init", - "802f1370": "bhv_snowmans_head_loop", - "802f151c": "bhv_snowmans_body_checkpoint_loop", - "802f15a8": "bhv_big_boulder_init", - "802f162c": "boulder_act_1", - "802f1714": "bhv_big_boulder_loop", - "802f17f0": "bhv_big_boulder_generator_loop", - "802f1954": "cap_set_hitbox", - "802f19c8": "cap_despawn", - "802f1a10": "cap_check_quicksand", - "802f1bb8": "cap_sink_quicksand", - "802f1d64": "bhv_wing_cap_init", - "802f1dc0": "cap_scale_vertically", - "802f1e5c": "wing_vanish_cap_act_0", - "802f1f3c": "bhv_wing_vanish_cap_loop", - "802f1fd0": "bhv_metal_cap_init", - "802f2030": "metal_cap_act_0", - "802f20ac": "bhv_metal_cap_loop", - "802f2140": "bhv_normal_cap_init", - "802f21e0": "normal_cap_set_save_flags", - "802f2284": "normal_cap_act_0", - "802f23a8": "bhv_normal_cap_loop", - "802f2498": "bhv_vanish_cap_init", - "802f24f4": "bhv_collect_star_init", - "802f25b0": "bhv_collect_star_loop", - "802f2614": "bhv_star_spawn_init", - "802f2768": "bhv_star_spawn_loop", - "802f2aa0": "spawn_star", - "802f2b88": "spawn_default_star", - "802f2bd4": "spawn_red_coin_cutscene_star", - "802f2c24": "spawn_no_exit_star", - "802f2c84": "bhv_hidden_red_coin_star_init", - "802f2d8c": "bhv_hidden_red_coin_star_loop", - "802f2e6c": "bhv_red_coin_init", - "802f2f2c": "bhv_red_coin_loop", - "802f3014": "bhv_hidden_star_init", - "802f30f0": "bhv_hidden_star_loop", - "802f31bc": "bhv_hidden_star_trigger_loop", - "802f328c": "bhv_bowser_course_red_coin_star_loop", - "802f336c": "bhv_ttm_rolling_log_init", - "802f341c": "rolling_log_roll_log", - "802f36a4": "bhv_rolling_log_loop", - "802f38b0": "volcano_act_1", - "802f39b4": "volcano_act_3", - "802f3a30": "bhv_volcano_trap_loop", - "802f3b98": "bhv_lll_rolling_log_init", - "802f3c54": "bhv_1up_interact", - "802f3cc8": "bhv_1up_common_init", - "802f3d30": "bhv_1up_init", - "802f3dd0": "one_up_loop_in_air", - "802f3ea8": "pole_1up_move_towards_mario", - "802f401c": "one_up_move_away_from_mario", - "802f40cc": "bhv_1up_walking_loop", - "802f4248": "bhv_1up_running_away_loop", - "802f43b8": "sliding_1up_move", - "802f44c0": "bhv_1up_sliding_loop", - "802f45b8": "bhv_1up_loop", - "802f45f0": "bhv_1up_jump_on_approach_loop", - "802f4710": "bhv_1up_hidden_loop", - "802f48f4": "bhv_1up_hidden_trigger_loop", - "802f496c": "bhv_1up_hidden_in_pole_loop", - "802f4b00": "bhv_1up_hidden_in_pole_trigger_loop", - "802f4b78": "bhv_1up_hidden_in_pole_spawner_loop", - "802f4c68": "controllable_platform_act_1", - "802f4ce0": "controllable_platform_act_2", - "802f4d78": "bhv_controllable_platform_sub_loop", - "802f4eb4": "bhv_controllable_platform_init", - "802f5010": "controllable_platform_hit_wall", - "802f5068": "controllable_platform_check_walls", - "802f52c0": "controllable_platform_shake_on_wall_hit", - "802f547c": "controllable_platform_tilt_from_mario", - "802f55a4": "bhv_controllable_platform_loop", - "802f5cd4": "bhv_breakable_box_small_init", - "802f5d78": "small_breakable_box_spawn_dust", - "802f5e44": "small_breakable_box_act_move", - "802f5f48": "breakable_box_small_released_loop", - "802f6014": "breakable_box_small_idle_loop", - "802f60d8": "breakable_box_small_get_dropped", - "802f6150": "breakable_box_small_get_thrown", - "802f6228": "bhv_breakable_box_small_loop", - "802f62e4": "bhv_sliding_snow_mound_loop", - "802f6448": "bhv_snow_mound_spawn_loop", - "802f6588": "floating_platform_find_home_y", - "802f665c": "floating_platform_act_0", - "802f6984": "bhv_floating_platform_loop", - "802f6c0c": "bhv_arrow_lift_loop", - "802f6d20": "bhv_orange_number_init", - "802f6d58": "bhv_orange_number_loop", - "802f6e40": "bhv_manta_ray_init", - "802f7264": "bhv_manta_ray_loop", - "802f7348": "bhv_falling_pillar_init", - "802f7398": "bhv_falling_pillar_spawn_hitboxes", - "802f7418": "bhv_falling_pillar_calculate_angle_in_front_of_mario", - "802f74dc": "bhv_falling_pillar_loop", - "802f7760": "bhv_falling_pillar_hitbox_loop", - "802f7924": "bhv_jrb_floating_box_loop", - "802f7978": "bhv_decorative_pendulum_init", - "802f79b0": "bhv_decorative_pendulum_loop", - "802f7a58": "bhv_treasure_chest_top_loop", - "802f7c9c": "bhv_treasure_chest_bottom_init", - "802f7d04": "bhv_treasure_chest_bottom_loop", - "802f7f1c": "spawn_treasure_chest", - "802f7fa0": "bhv_treasure_chest_ship_init", - "802f8044": "bhv_treasure_chest_ship_loop", - "802f8158": "bhv_treasure_chest_jrb_init", - "802f8208": "bhv_treasure_chest_jrb_loop", - "802f82f8": "bhv_treasure_chest_ddd_init", - "802f83a4": "bhv_treasure_chest_ddd_loop", - "802f8490": "bhv_mips_init", - "802f85e0": "bhv_mips_find_furthest_waypoint_to_mario", - "802f8760": "bhv_mips_act_wait_for_nearby_mario", - "802f8808": "bhv_mips_act_follow_path", - "802f893c": "bhv_mips_act_wait_for_animation_done", - "802f8988": "bhv_mips_act_fall_down", - "802f8a34": "bhv_mips_act_idle", - "802f8ab4": "bhv_mips_free", - "802f8b54": "bhv_mips_held", - "802f8c74": "bhv_mips_dropped", - "802f8cf8": "bhv_mips_thrown", - "802f8dac": "bhv_mips_loop", - "802f8e54": "bhv_yoshi_init", - "802f8f08": "yoshi_walk_loop", - "802f9054": "yoshi_idle_loop", - "802f923c": "yoshi_talk_loop", - "802f93a8": "yoshi_walk_and_jump_off_roof_loop", - "802f9500": "yoshi_finish_jumping_and_despawn_loop", - "802f95ac": "yoshi_give_present_loop", - "802f965c": "bhv_yoshi_loop", - "802fbc4c": "bhv_koopa_init", - "802fc414": "shelled_koopa_attack_handler", - "802fcc00": "obj_begin_race", - "802fd7f8": "bhv_koopa_update", - "802fd950": "bhv_koopa_race_endpoint_update", - "802fda28": "bhv_pokey_body_part_update", - "802fe3b0": "bhv_pokey_update", - "802fe8b4": "bhv_swoop_update", - "802ff040": "bhv_fly_guy_update", - "802ff214": "bhv_goomba_triplet_spawner_update", - "802ff408": "bhv_goomba_init", - "802ff94c": "huge_goomba_weakly_attacked", - "802ff96c": "bhv_goomba_update", - "802ffb38": "bhv_chain_chomp_chain_part_update", - "80300e40": "bhv_chain_chomp_update", - "80300ecc": "bhv_wooden_post_update", - "80301148": "bhv_chain_chomp_gate_init", - "80301180": "bhv_chain_chomp_gate_update", - "80301210": "bhv_wiggler_body_part_update", - "803014cc": "wiggler_init_segments", - "803016e0": "wiggler_update_segments", - "803020e4": "wiggler_jumped_on_attack_handler", - "80302154": "bhv_wiggler_update", - "80302910": "bhv_spiny_update", - "80303028": "bhv_enemy_lakitu_update", - "8030369c": "bhv_cloud_update", - "80303744": "bhv_cloud_part_update", - "80303984": "bhv_camera_lakitu_init", - "80303f64": "bhv_camera_lakitu_update", - "803043f8": "bhv_monty_mole_hole_update", - "80304474": "monty_mole_spawn_dirt_particles", - "803044c0": "bhv_monty_mole_init", - "80304ba8": "bhv_monty_mole_update", - "80304fd4": "bhv_monty_mole_rock_update", - "80305100": "bhv_platform_on_track_init", - "80305a58": "bhv_platform_on_track_update", - "80305bb0": "bhv_track_ball_update", - "80305c14": "bhv_seesaw_platform_init", - "80305c90": "bhv_seesaw_platform_update", - "80305e2c": "bhv_ferris_wheel_axle_init", - "80305f24": "bhv_ferris_wheel_platform_update", - "80306084": "bhv_water_bomb_spawner_update", - "803062a8": "water_bomb_spawn_explode_particles", - "803067e8": "bhv_water_bomb_update", - "803068c0": "bhv_water_bomb_shadow_update", - "8030699c": "bhv_ttc_rotating_solid_init", - "80306a38": "bhv_ttc_rotating_solid_update", - "80306cc4": "bhv_ttc_pendulum_init", - "80306d38": "bhv_ttc_pendulum_update", - "80306f48": "bhv_ttc_treadmill_init", - "80307010": "bhv_ttc_treadmill_update", - "803071b8": "bhv_ttc_moving_bar_init", - "80307670": "bhv_ttc_moving_bar_update", - "80307760": "bhv_ttc_cog_init", - "803077e0": "bhv_ttc_cog_update", - "80307930": "bhv_ttc_pit_block_init", - "803079c8": "bhv_ttc_pit_block_update", - "80307ae4": "bhv_ttc_elevator_init", - "80307b58": "bhv_ttc_elevator_update", - "80307c88": "bhv_ttc_2d_rotator_init", - "80307cf8": "bhv_ttc_2d_rotator_update", - "80307ea4": "bhv_ttc_spinner_update", - "80307fb8": "mr_blizzard_spawn_white_particles", - "8030803c": "bhv_mr_blizzard_init", - "80308d6c": "bhv_mr_blizzard_update", - "80309154": "bhv_mr_blizzard_snowball", - "803091e0": "bhv_sliding_plat_2_init", - "80309354": "bhv_sliding_plat_2_loop", - "80309454": "bhv_rotating_octagonal_plat_init", - "803094d0": "bhv_rotating_octagonal_plat_loop", - "803094f8": "bhv_animates_on_floor_switch_press_init", - "80309530": "bhv_animates_on_floor_switch_press_loop", - "803097a4": "bhv_activated_back_and_forth_platform_init", - "803098c0": "bhv_activated_back_and_forth_platform_update", - "80309b64": "bhv_recovery_heart_loop", - "80309cec": "bhv_bubble_cannon_barrel_loop", - "80309ed4": "water_bomb_cannon_act_0", - "80309f68": "water_bomb_cannon_act_1", - "8030a0e8": "water_bomb_cannon_act_2", - "8030a11c": "bhv_water_bomb_cannon_loop", - "8030a1c0": "bhv_unagi_init", - "8030a2a8": "unagi_act_0", - "8030a390": "unagi_act_1_4", - "8030a514": "unagi_act_2", - "8030a614": "unagi_act_3", - "8030a93c": "bhv_unagi_loop", - "8030aabc": "bhv_unagi_subobject_loop", - "8030ad04": "dorrie_raise_head", - "8030ae9c": "dorrie_act_move", - "8030b0b8": "dorrie_begin_head_raise", - "8030b0f0": "dorrie_act_lower_head", - "8030b220": "dorrie_act_raise_head", - "8030b2f4": "bhv_dorrie_update", - "8030b658": "bhv_haunted_chair_init", - "8030b6d8": "haunted_chair_act_0", - "8030ba68": "haunted_chair_act_1", - "8030bc90": "bhv_haunted_chair_loop", - "8030bfd0": "bhv_mad_piano_update", - "8030c06c": "flying_bookend_act_0", - "8030c0f0": "flying_bookend_act_1", - "8030c210": "flying_bookend_act_2", - "8030c2c8": "flying_bookend_act_3", - "8030c364": "bhv_flying_bookend_loop", - "8030c4b0": "bhv_bookend_spawn_loop", - "8030c564": "bookshelf_manager_act_0", - "8030c60c": "bookshelf_manager_act_1", - "8030c6a4": "bookshelf_manager_act_2", - "8030c828": "bookshelf_manager_act_3", - "8030c894": "bookshelf_manager_act_4", - "8030c8ec": "bhv_haunted_bookshelf_manager_loop", - "8030c98c": "bhv_book_switch_loop", - "8030cd30": "obj_spit_fire", - "8030cddc": "bhv_fire_piranha_plant_init", - "8030d2f0": "bhv_fire_piranha_plant_update", - "8030d598": "bhv_fire_spitter_update", - "8030d640": "bhv_small_piranha_flame_loop", - "8030d8d4": "bhv_fly_guy_flame_loop", - "8030d93c": "geo_snufit_move_mask", - "8030d9ac": "geo_snufit_scale_body", - "8030da14": "snufit_act_idle", - "8030db38": "snufit_act_shoot", - "8030dc70": "bhv_snufit_loop", - "8030dfc4": "bhv_snufit_balls_loop", - "8030e14c": "bhv_horizontal_grindel_init", - "8030e16c": "bhv_horizontal_grindel_update", - "8030ea9c": "bhv_eyerok_boss_loop", - "8030fff8": "bhv_eyerok_hand_loop", - "80310498": "bhv_klepto_init", - "8031126c": "obj_set_speed_to_zero", - "8031129c": "bhv_klepto_update", - "80311874": "bhv_bird_update", - "803118e4": "bhv_racing_penguin_init", - "80312070": "bhv_racing_penguin_update", - "80312168": "bhv_penguin_race_finish_line_update", - "80312200": "bhv_penguin_race_shortcut_check_update", - "80312248": "bhv_coffin_spawner_loop", - "80312370": "coffin_act_idle", - "8031262c": "coffin_act_stand_up", - "8031274c": "bhv_coffin_loop", - "80312804": "clam_act_0", - "80312900": "clam_act_1", - "80312a54": "bhv_clam_loop", - "80313110": "bhv_skeeter_update", - "803131e8": "bhv_skeeter_wave_update", - "8031326c": "bhv_swing_platform_init", - "80313294": "bhv_swing_platform_update", - "80313354": "bhv_donut_platform_spawner_update", - "80313530": "bhv_donut_platform_update", - "803136cc": "bhv_ddd_pole_init", - "80313754": "bhv_ddd_pole_update", - "803137f4": "bhv_red_coin_star_marker_init", - "80313fc0": "bhv_triplet_butterfly_update", - "80314098": "bubba_act_0", - "8031427c": "bubba_act_1", - "803145d4": "bhv_bubba_loop", - "80314a30": "prepare_reverb_ring_buffer", - "80314cc0": "get_volume_ramping", - "80314de4": "synthesis_execute", - "80314f64": "synthesis_do_one_audio_update", - "80315590": "synthesis_process_notes", - "80316010": "load_wave_samples", - "803160dc": "final_resample", - "80316138": "process_envelope", - "8031619c": "process_envelope_inner", - "803166fc": "note_apply_headset_pan_effects", - "80316ac8": "note_init_volume", - "80316af4": "note_set_vel_pan_reverb", - "80316da8": "note_set_frequency", - "80316db4": "note_enable", - "80316e00": "note_disable", - "80316e80": "reset_bank_and_seq_load_status", - "80316ec4": "discard_bank", - "80316fb4": "discard_sequence", - "80317040": "soundAlloc", - "803170b4": "sound_alloc_pool_init", - "803170d4": "persistent_pool_clear", - "803170e8": "temporary_pool_clear", - "80317118": "unused_803160F8", - "80317128": "sound_init_main_pools", - "80317184": "session_pools_init", - "80317200": "seq_and_bank_pool_init", - "8031727c": "persistent_pools_init", - "80317338": "temporary_pools_init", - "803173fc": "alloc_bank_or_seq", - "8031782c": "get_bank_or_seq", - "803178ec": "decrease_reverb_gain", - "80317914": "wait_for_audio_frames", - "80317948": "audio_reset_session", - "80318040": "audio_dma_copy_immediate", - "803180c4": "audio_dma_copy_async", - "80318130": "audio_dma_partial_copy_async", - "803181ec": "decrease_sample_dma_ttls", - "80318300": "dma_sample_data", - "80318634": "init_sample_dma_buffers", - "803188f4": "patch_audio_bank", - "80318b30": "bank_load_immediate", - "80318c8c": "bank_load_async", - "80318dc4": "sequence_dma_immediate", - "80318e70": "sequence_dma_async", - "80318fac": "get_missing_bank", - "803190f4": "load_banks_immediate", - "80319220": "preload_sequence", - "80319328": "load_sequence", - "80319388": "load_sequence_internal", - "8031950c": "audio_init", - "80319920": "note_init", - "80319998": "note_disable2", - "803199b8": "process_notes", - "80319db8": "seq_channel_layer_decay_release_internal", - "80319f64": "seq_channel_layer_note_decay", - "80319f84": "seq_channel_layer_note_release", - "80319fa4": "build_synthetic_wave", - "8031a1d0": "init_synthetic_wave", - "8031a254": "init_note_list", - "8031a264": "init_note_lists", - "8031a2b4": "init_note_free_list", - "8031a368": "note_pool_clear", - "8031a494": "note_pool_fill", - "8031a5d0": "audio_list_push_front", - "8031a610": "audio_list_remove", - "8031a63c": "pop_node_with_lower_prio", - "8031a6cc": "note_init_for_layer", - "8031a794": "func_80319728", - "8031a7c8": "note_release_and_take_ownership", - "8031a820": "alloc_note_from_disabled", - "8031a89c": "alloc_note_from_decaying", - "8031a8f0": "alloc_note_from_active", - "8031a94c": "alloc_note", - "8031ac34": "reclaim_notes", - "8031adac": "note_init_all", - "8031aee8": "sequence_player_process_sound", - "8031b0cc": "get_portamento_freq_scale", - "8031b1c0": "get_vibrato_pitch_change", - "8031b248": "get_vibrato_freq_scale", - "8031b440": "note_vibrato_update", - "8031b4a0": "note_vibrato_init", - "8031b58c": "adsr_init", - "8031b5ac": "adsr_update", - "8031b830": "sequence_channel_init", - "8031b940": "seq_channel_set_layer", - "8031ba30": "seq_channel_layer_disable", - "8031ba6c": "seq_channel_layer_free", - "8031baf0": "sequence_channel_disable", - "8031bb5c": "allocate_sequence_channel", - "8031bba4": "sequence_player_init_channels", - "8031bcd0": "sequence_player_disable_channels", - "8031bda0": "sequence_channel_enable", - "8031be44": "sequence_player_disable", - "8031bf14": "audio_list_push_back", - "8031bf54": "audio_list_pop_back", - "8031bf94": "init_layer_freelist", - "8031c03c": "m64_read_u8", - "8031c050": "m64_read_s16", - "8031c080": "m64_read_compressed_u16", - "8031c0c4": "seq_channel_layer_process_script", - "8031ce54": "get_instrument", - "8031cfd4": "set_instrument", - "8031d068": "sequence_channel_set_volume", - "8031d08c": "sequence_channel_process_script", - "8031d9ec": "sequence_player_process_sequence", - "8031e240": "process_sequences", - "8031e2e8": "init_sequence_player", - "8031e374": "init_sequence_players", - "8031e4f0": "unused_8031E4F0", - "8031e568": "unused_8031E568", - "8031e7b8": "create_next_audio_frame_task", - "8031eb00": "play_sound", - "8031fd84": "audio_signal_game_loop_tick", - "80320678": "seq_player_fade_out", - "803206bc": "fade_volume_scale", - "803208ec": "process_level_music_dynamics", - "80320d70": "unused_8031FED0", - "80320e3c": "seq_player_lower_volume", - "80320ec4": "seq_player_unlower_volume", - "803210d4": "set_audio_muted", - "8032112c": "sound_init", - "80321398": "get_currently_playing_sound", - "80321474": "stop_sound", - "80321584": "stop_sounds_from_source", - "8032171c": "stop_sounds_in_continuous_banks", - "8032174c": "sound_banks_disable", - "8032180c": "sound_banks_enable", - "80321864": "unused_803209D8", - "803218d8": "set_sound_moving_speed", - "803218f4": "play_dialog_sound", - "803219ac": "play_music", - "80321bac": "stop_background_music", - "80321ce4": "fadeout_background_music", - "80321d38": "drop_queued_background_music", - "80321d5c": "get_current_background_music", - "80321d9c": "func_80320ED8", - "80321e48": "play_secondary_music", - "80321f48": "func_80321080", - "80321f9c": "func_803210D4", - "80322078": "play_course_clear", - "803220b4": "play_peachs_jingle", - "803220f0": "play_puzzle_jingle", - "8032212c": "play_star_fanfare", - "80322168": "play_power_star_jingle", - "803221b8": "play_race_fanfare", - "803221f4": "play_toads_jingle", - "80322230": "sound_reset", - "8032231c": "audio_set_sound_mode", - "80322348": "unused_80321460", - "8032235c": "unused_80321474", - "803223b0": "osSetTime", - "803223e0": "osMapTLB", - "803224a0": "osUnmapTLBAll", - "803224f0": "sprintf", - "8032255c": "proutSprintf", - "803225a0": "osCreateMesgQueue", - "803225d0": "osSetEventMesg", - "80322640": "osViSetEvent", - "803226b0": "osCreateThread", - "80322800": "osRecvMesg", - "80322940": "_VirtualToPhysicalTask", - "80322a5c": "osSpTaskLoad", - "80322bbc": "osSpTaskStartGo", - "80322c00": "osSpTaskYield", - "80322c20": "osSendMesg", - "80322d70": "osSpTaskYielded", - "80322df0": "osStartThread", - "80322f40": "osWritebackDCacheAll", - "80322f70": "osCreateViManager", - "803230f4": "viMgrMain", - "803232d0": "osViSetMode", - "80323340": "osViBlack", - "803233b0": "osViSetSpecialFeatures", - "80323570": "osCreatePiManager", - "803236f0": "osSetThreadPri", - "803237d0": "osInitialize", - "80323a00": "osViSwapBuffer", - "80323a50": "sqrtf", - "80323a60": "osContStartReadData", - "80323b24": "osContGetReadData", - "80323bcc": "__osPackReadData", - "80323cc0": "osContInit", - "80323ebc": "__osContGetInitData", - "80323f8c": "__osPackRequestData", - "80324080": "osEepromProbe", - "803240f0": "__ull_rshift", - "8032411c": "__ull_rem", - "80324158": "__ull_div", - "80324194": "__ll_lshift", - "803241c0": "__ll_rem", - "803241fc": "__ll_div", - "80324258": "__ll_mul", - "80324288": "__ull_divremi", - "803242e8": "__ll_mod", - "80324384": "__ll_rshift", - "803243b0": "osInvalDCache", - "80324460": "osPiStartDma", - "80324570": "bzero", - "80324610": "osInvalICache", - "80324690": "osEepromLongRead", - "803247d0": "osEepromLongWrite", - "80324910": "bcopy", - "80324c20": "guOrthoF", - "80324d74": "guOrtho", - "80324de0": "guPerspectiveF", - "80325010": "guPerspective", - "80325070": "osGetTime", - "80325100": "__d_to_ll", - "8032511c": "__f_to_ll", - "80325138": "__d_to_ull", - "803251d8": "__f_to_ull", - "80325274": "__ll_to_d", - "8032528c": "__ll_to_f", - "803252a4": "__ull_to_d", - "803252d8": "__ull_to_f", - "80325310": "cosf", - "80325480": "sinf", - "80325640": "guTranslateF", - "80325688": "guTranslate", - "803256e0": "guRotateF", - "80325874": "guRotate", - "803258d0": "guScaleF", - "80325924": "guScale", - "80325970": "osAiSetFrequency", - "80325bd4": "alBnkfNew", - "80325cd8": "alSeqFileNew", - "80325d20": "osWritebackDCache", - "80325da0": "osAiGetLength", - "80325db0": "osAiSetNextBuffer", - "80325e60": "__osTimerServicesInit", - "80325eec": "__osTimerInterrupt", - "80326064": "__osSetTimerIntr", - "803260d8": "__osInsertTimer", - "80326260": "_Printf", - "803273f0": "memcpy", - "8032741c": "strlen", - "80327444": "strchr", - "80327490": "__osDequeueThread", - "803274d0": "__osDisableInt", - "803274f0": "__osRestoreInt", - "80327510": "__osViInit", - "80327640": "__osExceptionPreamble", - "80327650": "__osException", - "803278e4": "counter", - "80327904": "cart", - "80327938": "rcp", - "80327a68": "prenmi", - "80327ac4": "sw2", - "80327ae4": "sw1", - "80327b1c": "redispatch", - "80327b68": "panic", - "80327b98": "send_mesg", - "80327c80": "__osEnqueueAndYield", - "80327d10": "__osEnqueueThread", - "80327d58": "__osPopThread", - "80327d68": "__osDispatchThread", - "80327ea8": "__osCleanupThread", - "80327eb0": "osVirtualToPhysical", - "80327f30": "__osSpSetStatus", - "80327f40": "__osSpSetPc", - "80327f80": "__osSpRawStartDma", - "80328010": "__osSpDeviceBusy", - "80328040": "__osSpGetStatus", - "80328050": "osGetThreadPri", - "80328070": "__osViGetCurrentContext", - "80328080": "__osViSwapContext", - "803283e0": "osGetCount", - "803283f0": "__osPiCreateAccessQueue", - "80328440": "__osPiGetAccess", - "80328484": "__osPiRelAccess", - "803284b0": "osPiRawStartDma", - "80328590": "__osDevMgrMain", - "80328710": "__osSetSR", - "80328720": "__osGetSR", - "80328730": "__osSetFpcCsr", - "80328740": "__osSiRawReadIo", - "80328790": "__osSiRawWriteIo", - "803287e0": "osMapTLBRdb", - "80328840": "osPiRawReadIo", - "803288a0": "__osSiCreateAccessQueue", - "803288f0": "__osSiGetAccess", - "80328934": "__osSiRelAccess", - "80328960": "__osSiRawStartDma", - "80328a10": "osSetTimer", - "80328af0": "osEepromWrite", - "80328ca0": "__osPackEepWriteData", - "80328dac": "__osEepStatus", - "80328fd0": "osJamMesg", - "80329120": "osPiGetCmdQueue", - "80329150": "osEepromRead", - "80329340": "__osPackEepReadData", - "80329450": "guMtxF2L", - "80329550": "guMtxIdentF", - "803295d8": "guMtxIdent", - "80329608": "guMtxL2F", - "803296c0": "guNormalize", - "80329750": "__osAiDeviceBusy", - "80329780": "__osSetCompare", - "80329790": "_Litob", - "80329a90": "_Ldtob", - "8032a860": "u32_to_string", - "8032a890": "string_to_u32", - "8032a8e8": "send_packet", - "8032a9a8": "send", - "8032aa80": "process_command_memory", - "8032aacc": "process_command_register", - "8032aaf8": "kdebugserver", - "8032ace0": "__osSyncPutChars", - "8032ae10": "osSetIntMask", - "8032ae70": "osDestroyThread", - "8032af70": "__osProbeTLB", - "8032b030": "__osSiDeviceBusy", - "8032b060": "lldiv", - "8032b160": "ldiv", - "8032b1f0": "__osGetCause", - "8032b200": "__osAtomicDec", - "8032b260": "rspF3DBootStart", - "8032b330": "rspF3DBootEnd", - "8032b330": "rspF3DStart", - "8032c738": "rspF3DEnd", - "8032c740": "rspAspMainStart", - "8032d560": "rspAspMainEnd", - "8032d560": "gVblankHandler1", - "8032d564": "gVblankHandler2", - "8032d568": "gActiveSPTask", - "8032d56c": "sCurrentAudioSPTask", - "8032d570": "sCurrentDisplaySPTask", - "8032d574": "sNextAudioSPTask", - "8032d578": "sNextDisplaySPTask", - "8032d57c": "sAudioEnabled", - "8032d580": "gNumVblanks", - "8032d584": "gResetTimer", - "8032d588": "gNmiResetBarsTimer", - "8032d58c": "gDebugLevelSelect", - "8032d590": "D_8032C650", - "8032d594": "gShowProfiler", - "8032d598": "gShowDebugText", - "8032d5d4": "gGlobalTimer", - "8032d5d8": "sRenderedFramebuffer", - "8032d5dc": "sRenderingFramebuffer", - "8032d5e0": "gGoddardVblankCallback", - "8032d5e4": "gPlayer1Controller", - "8032d5e8": "gPlayer2Controller", - "8032d5ec": "gPlayer3Controller", - "8032d5f0": "gCurrDemoInput", - "8032d5f4": "gDemoInputListID", - "8032d5f8": "gRecordedDemoInput", - "8032d6d0": "credits01", - "8032d6d8": "credits02", - "8032d6e4": "credits03", - "8032d6f0": "credits04", - "8032d700": "credits05", - "8032d710": "credits06", - "8032d71c": "credits07", - "8032d728": "credits08", - "8032d738": "credits09", - "8032d740": "credits10", - "8032d750": "credits11", - "8032d75c": "credits12", - "8032d764": "credits13", - "8032d774": "credits14", - "8032d77c": "credits15", - "8032d788": "credits16", - "8032d79c": "credits17", - "8032d7ac": "credits18", - "8032d7bc": "credits19", - "8032d7c4": "credits20", - "8032d7cc": "sCreditsSequence", - "8032d93c": "gMarioState", - "8032d940": "unused1", - "8032d944": "sWarpCheckpointActive", - "8032daa0": "sTerrainSounds", - "8032dacc": "sSquishScaleOverTime", - "8032dae0": "sCapFlickerFrames", - "8032daf8": "gWaterSurfacePseudoFloor", - "8032dc50": "sJumpLandAction", - "8032dc68": "sFreefallLandAction", - "8032dc80": "sSideFlipLandAction", - "8032dc98": "sHoldJumpLandAction", - "8032dcb0": "sHoldFreefallLandAction", - "8032dcc8": "sLongJumpLandAction", - "8032dce0": "sDoubleJumpLandAction", - "8032dcf8": "sTripleJumpLandAction", - "8032dd10": "sBackflipLandAction", - "8032dd40": "sPunchingForwardVelocities", - "8032dd80": "gLastCompletedCourseNum", - "8032dd84": "gLastCompletedStarNum", - "8032dd88": "sUnusedGotGlobalCoinHiScore", - "8032dd8c": "gGotFileCoinHiScore", - "8032dd90": "gCurrCourseStarFlags", - "8032dd94": "gSpecialTripleJump", - "8032dd98": "gLevelToCourseNumTable", - "8032ddc0": "gMarioSpawnInfo", - "8032ddc4": "gLoadedGraphNodes", - "8032ddc8": "gAreas", - "8032ddcc": "gCurrentArea", - "8032ddd0": "gCurrCreditsEntry", - "8032ddd4": "D_8032CE74", - "8032ddd8": "D_8032CE78", - "8032dddc": "gWarpTransDelay", - "8032dde0": "gFBSetColor", - "8032dde4": "gWarpTransFBSetColor", - "8032dde8": "gWarpTransRed", - "8032ddec": "gWarpTransGreen", - "8032ddf0": "gWarpTransBlue", - "8032ddf4": "gCurrSaveFileNum", - "8032ddf8": "gCurrLevelNum", - "8032ddfc": "sWarpBhvSpawnTable", - "8032de4c": "sSpawnTypeFromWarpBhv", - "8032de60": "D_8032CF00", - "8032de70": "renderModeTable_1Cycle", - "8032deb0": "renderModeTable_2Cycle", - "8032def0": "gCurGraphNodeRoot", - "8032def4": "gCurGraphNodeMasterList", - "8032def8": "gCurGraphNodeCamFrustum", - "8032defc": "gCurGraphNodeCamera", - "8032df00": "gCurGraphNodeObject", - "8032df04": "gCurGraphNodeHeldObject", - "8032df08": "gAreaUpdateCounter", - "8032df10": "gProfilerMode", - "8032df14": "gCurrentFrameIndex1", - "8032df18": "gCurrentFrameIndex2", - "8032df20": "unused8032CFC0", - "8032df24": "gCutsceneFocus", - "8032df28": "unused8032CFC8", - "8032df2c": "unused8032CFCC", - "8032df30": "gSecondCameraFocus", - "8032df34": "sYawSpeed", - "8032df38": "gCurrLevelArea", - "8032df3c": "gPrevLevel", - "8032df40": "unused8032CFE0", - "8032df44": "unused8032CFE4", - "8032df48": "unused8032CFE8", - "8032df4c": "gCameraZoomDist", - "8032df50": "sObjectCutscene", - "8032df54": "gRecentCutscene", - "8032df58": "sFramesSinceCutsceneEnded", - "8032df5c": "sCutsceneDialogResponse", - "8032df60": "sMarioCamState", - "8032df64": "sLuigiCamState", - "8032df68": "unused8032D008", - "8032df6c": "sFixedModeBasePosition", - "8032df78": "sUnusedModeBasePosition_2", - "8032df84": "sUnusedModeBasePosition_3", - "8032df90": "sUnusedModeBasePosition_4", - "8032df9c": "sUnusedModeBasePosition_5", - "8032dfa8": "sModeTransitions", - "8032e008": "unused8032D0A8", - "8032e010": "unused8032D0B0", - "8032e018": "sDanceCutsceneTable", - "8032e024": "unusedDanceInfo1", - "8032e038": "unusedDanceType", - "8032e03c": "unusedDanceInfo2", - "8032e050": "sBBHLibraryParTrackPath", - "8032e098": "sCamSL", - "8032e0e0": "sCamTHI", - "8032e128": "sCamHMC", - "8032e1d0": "sCamSSL", - "8032e248": "sCamRR", - "8032e2f0": "sCamBOB", - "8032e338": "sCamCotMC", - "8032e368": "sCamCCM", - "8032e3b0": "sCamCastle", - "8032e6f8": "sCamBBH", - "8032ecb0": "sCameraTriggers", - "8032ed50": "sIntroStartToPipePosition", - "8032ee08": "sIntroStartToPipeFocus", - "8032eec0": "sIntroPipeToDialogPosition", - "8032ef30": "sIntroPipeToDialogFocus", - "8032efa0": "sEndingFlyToWindowPos", - "8032eff0": "sEndingFlyToWindowFocus", - "8032f048": "sEndingPeachDescentCamPos", - "8032f0e8": "sEndingMarioToPeachPos", - "8032f130": "sEndingMarioToPeachFocus", - "8032f178": "sEndingLookUpAtCastle", - "8032f1b8": "sEndingLookAtSkyFocus", - "8032f214": "gIntroLakituStartToPipeFocus", - "8032f32c": "gIntroLakituStartToPipeOffsetFromCamera", - "8032f444": "gEndWavingPos", - "8032f48c": "gEndWavingFocus", - "8032f4d4": "sCutsceneEnding", - "8032f534": "sCutsceneGrandStar", - "8032f544": "sCutsceneUnused", - "8032f554": "sCutsceneDoorWarp", - "8032f564": "sCutsceneEndWaving", - "8032f56c": "sCutsceneCredits", - "8032f574": "sCutsceneDoorPull", - "8032f59c": "sCutsceneDoorPush", - "8032f5c4": "sCutsceneDoorPullMode", - "8032f5dc": "sCutsceneDoorPushMode", - "8032f5f4": "sCutsceneEnterCannon", - "8032f60c": "sCutsceneStarSpawn", - "8032f624": "sCutsceneRedCoinStarSpawn", - "8032f634": "sCutsceneEnterPainting", - "8032f63c": "sCutsceneDeathExit", - "8032f64c": "sCutsceneExitPaintingSuccess", - "8032f65c": "sCutsceneUnusedExit", - "8032f674": "sCutsceneIntroPeach", - "8032f69c": "sCutscenePrepareCannon", - "8032f6ac": "sCutsceneExitWaterfall", - "8032f6bc": "sCutsceneFallToCastleGrounds", - "8032f6cc": "sCutsceneEnterPyramidTop", - "8032f6dc": "sCutscenePyramidTopExplode", - "8032f6f4": "sCutsceneStandingDeath", - "8032f6fc": "sCutsceneEnterPool", - "8032f70c": "sCutsceneDeathStomach", - "8032f714": "sCutsceneDeathOnBack", - "8032f71c": "sCutsceneQuicksandDeath", - "8032f724": "sCutsceneWaterDeath", - "8032f72c": "sCutsceneSuffocation", - "8032f734": "sCutsceneEnterBowserArena", - "8032f74c": "sCutsceneDanceDefaultRotate", - "8032f754": "sCutsceneDanceFlyAway", - "8032f75c": "sCutsceneDanceCloseup", - "8032f764": "sCutsceneKeyDance", - "8032f76c": "sCutsceneCapSwitchPress", - "8032f774": "sCutsceneSlidingDoorsOpen", - "8032f784": "sCutsceneUnlockKeyDoor", - "8032f794": "sCutsceneExitBowserSuccess", - "8032f7a4": "sCutsceneExitBowserDeath", - "8032f7b4": "sCutsceneExitSpecialSuccess", - "8032f7c4": "sCutsceneNonPaintingDeath", - "8032f7d4": "sCutsceneDialog", - "8032f7ec": "sCutsceneReadMessage", - "8032f804": "sDanceCutsceneIndexTable", - "8032f870": "sZoomOutAreaMasks", - "8032f884": "sBoBCreditsSplinePositions", - "8032f8ac": "sBoBCreditsSplineFocus", - "8032f8d4": "sWFCreditsSplinePositions", - "8032f8fc": "sWFCreditsSplineFocus", - "8032f924": "sJRBCreditsSplinePositions", - "8032f94c": "sJRBCreditsSplineFocus", - "8032f974": "sCCMSlideCreditsSplinePositions", - "8032f99c": "sCCMSlideCreditsSplineFocus", - "8032f9c4": "sBBHCreditsSplinePositions", - "8032f9e4": "sBBHCreditsSplineFocus", - "8032fa04": "sHMCCreditsSplinePositions", - "8032fa2c": "sHMCCreditsSplineFocus", - "8032fa54": "sTHIWigglerCreditsSplinePositions", - "8032fa6c": "sTHIWigglerCreditsSplineFocus", - "8032fa84": "sVolcanoCreditsSplinePositions", - "8032fab4": "sVolcanoCreditsSplineFocus", - "8032fae4": "sSSLCreditsSplinePositions", - "8032fb14": "sSSLCreditsSplineFocus", - "8032fb44": "sDDDCreditsSplinePositions", - "8032fb7c": "sDDDCreditsSplineFocus", - "8032fbb4": "sSLCreditsSplinePositions", - "8032fbd4": "sSLCreditsSplineFocus", - "8032fbf4": "sWDWCreditsSplinePositions", - "8032fc14": "sWDWCreditsSplineFocus", - "8032fc34": "sTTMCreditsSplinePositions", - "8032fc64": "sTTMCreditsSplineFocus", - "8032fc94": "sTHIHugeCreditsSplinePositions", - "8032fccc": "sTHIHugeCreditsSplineFocus", - "8032fd04": "sTTCCreditsSplinePositions", - "8032fd24": "sTTCCreditsSplineFocus", - "8032fd44": "sRRCreditsSplinePositions", - "8032fd64": "sRRCreditsSplineFocus", - "8032fd84": "sSACreditsSplinePositions", - "8032fdac": "sSACreditsSplineFocus", - "8032fdd4": "sCotMCCreditsSplinePositions", - "8032fdfc": "sCotMCCreditsSplineFocus", - "8032fe24": "sDDDSubCreditsSplinePositions", - "8032fe4c": "sDDDSubCreditsSplineFocus", - "8032fe74": "sCCMOutsideCreditsSplinePositions", - "8032fe94": "sCCMOutsideCreditsSplineFocus", - "8032fec0": "sObjectListUpdateOrder", - "8032fecc": "sParticleTypes", - "8033006c": "sMrIParticleActions", - "80330074": "sMrIActions", - "80330084": "sMrIHitbox", - "803300a8": "sCapSwitchText", - "803300ac": "sCapSwitchActions", - "803300bc": "sKingBobombActions", - "803300e0": "sKingBobombSoundStates", - "80330140": "sOpenedCannonActions", - "8033015c": "sUnusedChuckyaData", - "80330198": "sChuckyaActions", - "803301a8": "sRotatingPlatformData", - "803301c0": "sKoopaShellUnderwaterHitbox", - "803301e4": "sSparkleSpawnStarHitbox", - "803301f4": "sYellowCoinHitbox", - "80330204": "sCoinArrowPositions", - "80330224": "sCoinInsideBooActions", - "80330298": "sGrindelThwompActions", - "803302ac": "sTumblingBridgeData", - "803302dc": "sTumblingBridgeActions", - "80330318": "sElevatorActions", - "80330370": "sUkikiCageActions", - "80330380": "sBowserShockwaveHitPoints", - "80330390": "sSpindriftHitbox", - "803303a0": "sMetalBoxHitbox", - "803303b0": "sBreakableBoxHitbox", - "803303c0": "D_8032F460", - "803303e8": "sHeaveHoActions", - "803303f8": "sJumpingBoxHitbox", - "80330408": "sJumpingBoxActions", - "8033042c": "sBowserKeyHitbox", - "8033043c": "sBulletBillActions", - "80330450": "sBowserTailAnchorActions", - "8033045c": "sBowserDebugActions", - "8033046c": "sBowserVelYAir", - "80330470": "sBowserFVelAir", - "80330474": "sBowserDanceStepNoises", - "80330478": "sBowserDefeatedDialogText", - "80330480": "sBowsertiltPlatformData", - "803304c8": "sBowserActions", - "80330518": "sBowserSoundStates", - "803305f0": "sBowserRainbowLight", - "803305f4": "sBowserHealth", - "803305f8": "sBowserFallingPlatform", - "8033067c": "sFallingBowserPlatformActions", - "80330688": "sGrowingBowserFlameHitbox", - "80330698": "sBowserFlameHitbox", - "803306a8": "sFlameFloatingYLimit", - "803306b4": "D_8032F754", - "80330738": "sUkikiSoundStates", - "803307a0": "sUkikiActions", - "803307c0": "D_8032F860", - "803307f4": "D_8032F894", - "80330828": "D_8032F8C8", - "80330830": "sRotatingCwFireBarsActions", - "80330840": "sKoopaShellHitbox", - "80330850": "sToxBoxActionTable1", - "80330884": "sToxBoxActionTable2", - "803308a8": "sToxBoxActionTable3", - "803308cc": "sToxBoxActionTables", - "803308d8": "sToxBoxActions", - "80330900": "TablePiranhaPlantActions", - "80330b1c": "sBowserPuzzlePieceActions", - "80330b38": "sTuxiesMotherActions", - "80330b44": "sSmallPenguinActions", - "80330b74": "sBirdChirpChirpActions", - "80330b84": "sCheepCheepActions", - "80330b90": "sExclamationBoxHitbox", - "80330ba0": "sExclamationBoxContents", - "80330c20": "sExclamationBoxActions", - "80330c38": "sSkullSlidingBoxHitbox", - "80330c48": "gOpenableGrills", - "80330c58": "sTweesterHitbox", - "80330c68": "sTweesterActions", - "80330cd4": "sScuttlebugHitbox", - "80330ce4": "sWhompActions", - "80330d0c": "sWaterSplashDropletParams", - "80330d30": "gShallowWaterSplashDropletParams", - "80330d54": "sWaterDropletFishParams", - "80330d78": "gShallowWaterWaveDropletParams", - "80330d9c": "sStrongWindParticleHitbox", - "80330dac": "sSLWalkingPenguinErraticSteps", - "80330e20": "D_8032FEC0", - "80330e24": "unused_8032FEC4", - "80330e34": "gMarioPlatform", - "80330e40": "sDebugEffectStringInfo", - "80330e64": "sDebugEnemyStringInfo", - "80330e88": "sDebugInfoDPadMask", - "80330e8c": "sDebugInfoDPadUpdID", - "80330e90": "sDebugLvSelectCheckFlag", - "80330e94": "sDebugPage", - "80330e98": "sNoExtraDebug", - "80330e9c": "sDebugStringArrPrinted", - "80330ea0": "sDebugSysCursor", - "80330ea4": "sDebugInfoButtonSeqID", - "80330ea8": "sDebugInfoButtonSeq", - "80330ec0": "sTransitionColorFadeCount", - "80330ec4": "sTransitionTextureFadeCount", - "80330ec8": "sTextureTransitionID", - "80330ee0": "rectangles", - "80330f00": "sSkyboxTextures", - "80330f28": "sSkyboxColors", - "80330f30": "gMovtexCounter", - "80330f34": "gMovtexCounterPrev", - "80330f38": "gMovtexVtxColor", - "80330f3c": "gPaintingMarioYEntry", - "80330f40": "gWDWWaterLevelSet", - "80330f44": "gMovtexIdToTexture", - "80330f64": "gMovtexNonColored", - "803311a4": "gMovtexColored", - "8033127c": "gMovtexColored2", - "80331300": "sHMCPaintings", - "80331308": "sInsideCastlePaintings", - "80331344": "sTTMPaintings", - "8033134c": "sPaintingGroups", - "80331358": "gPaintingUpdateCounter", - "8033135c": "gLastPaintingUpdateCounter", - "80331360": "sTextLabelsCount", - "80331370": "gDialogCharWidths", - "80331470": "gMenuState", - "80331474": "gDialogBoxAngle", - "80331478": "gDialogBoxScale", - "8033147c": "gDialogScrollOffsetY", - "80331480": "gDialogBoxType", - "80331484": "gDialogID", - "80331488": "gNextDialogPageStartStrIndex", - "8033148c": "gDialogPageStartStrIndex", - "80331490": "gMenuLineNum", - "80331494": "gDialogWithChoice", - "80331498": "gMenuHoldKeyIndex", - "8033149c": "gMenuHoldKeyTimer", - "803314a0": "gDialogResponse", - "803314b0": "gHudSymCoin", - "803314b4": "gHudSymX", - "803314f8": "gMenuMode", - "803314fc": "gEndCutsceneStrEn0", - "80331504": "gEndCutsceneStrEn1", - "80331538": "gEndCutsceneStrEn2", - "80331558": "gEndCutsceneStrEn3", - "8033156c": "gEndCutsceneStrEn4", - "80331598": "gEndCutsceneStrEn5", - "803315ac": "gEndCutsceneStrEn6", - "803315cc": "gEndCutsceneStrEn7", - "803315dc": "gEndCutsceneStrEn8", - "803315e4": "gEndCutsceneStringsEn", - "8033160c": "gCutsceneMsgFade", - "80331610": "gCutsceneMsgIndex", - "80331614": "gCutsceneMsgDuration", - "80331618": "gCutsceneMsgTimer", - "8033161c": "gDialogCameraAngleIndex", - "80331620": "gDialogCourseActNum", - "803316c8": "gCourseCompleteCoinsEqual", - "803316cc": "gCourseCompleteScreenTimer", - "803316d0": "gCourseCompleteCoins", - "803316d4": "gHudFlash", - "80331750": "gEnvFxMode", - "80331754": "D_80330644", - "80331758": "gSnowTempVtx", - "80331788": "gSnowFlakeVertex1", - "80331790": "gSnowFlakeVertex2", - "80331798": "gSnowFlakeVertex3", - "803317a0": "D_80330690", - "803317a4": "D_80330694", - "803317a8": "gBubbleTempVtx", - "803325fc": "sPowerMeterVisibleTimer", - "80332614": "sPrevCheckMarioRoom", - "80332618": "sYoshiDead", - "8033261c": "sDebugSequenceTracker", - "80332620": "sDebugTimer", - "803327a8": "sBreakableBoxSmallHitbox", - "80332b00": "sMrBlizzardHitbox", - "80332b24": "sMrBlizzardSnowballHitbox", - "80332b64": "D_80331A54", - "80332bdc": "D_80331ACC", - "80332bf0": "sRecoveryHeartHitbox", - "80332c00": "sUnagiHitbox", - "80332c10": "sHauntedChairHitbox", - "80332c30": "sFlyingBookendHitbox", - "80332c40": "D_80331B30", - "80332c4c": "sBookSwitchHitbox", - "80332c5c": "sFirePiranhaPlantHitbox", - "80332c6c": "D_80331B5C", - "80332c74": "sPiranhaPlantFireHitbox", - "80332c84": "sSnufitHitbox", - "80332c94": "sSnufitBulletHitbox", - "80332ca4": "sEyerokHitbox", - "80332cb4": "D_80331BA4", - "80332d10": "coffinRelativePos", - "80332d28": "sClamShellHitbox", - "80332d38": "sSkeeterHitbox", - "80332d48": "D_80331C38", - "80332e50": "gAudioErrorFlags", - "80332e54": "sGameLoopTicked", - "80332e58": "sDialogSpeaker", - "80332f04": "sDialogSpeakerVoice", - "80332f40": "sNumProcessedSoundRequests", - "80332f44": "sSoundRequestCount", - "80332f48": "sDynBBH", - "80332f54": "sDynDDD", - "80332f6c": "sDynJRB", - "80332f88": "sDynWDW", - "80332f98": "sDynHMC", - "80332fa8": "sDynUnk38", - "80332fb8": "sDynNone", - "80332fbc": "sCurrentMusicDynamic", - "80332fc0": "sBackgroundMusicForDynamics", - "80332fc4": "sLevelDynamics", - "80333060": "sMusicDynamics", - "803330c0": "sLevelAreaReverbs", - "80333138": "sLevelAcousticReaches", - "80333188": "sBackgroundMusicDefaultVolume", - "803331ac": "sCurrentBackgroundMusicSeqId", - "803331b0": "sMusicDynamicDelay", - "803331b4": "sSoundBankUsedListBack", - "803331c0": "sSoundBankFreeListFront", - "803331cc": "sNumSoundsInBank", - "803331d8": "sMaxChannelsForSoundBank", - "803331e4": "sNumSoundsPerBank", - "803331f0": "gGlobalSoundSource", - "803331fc": "sUnusedSoundArgs", - "80333208": "sSoundBankDisabled", - "80333218": "D_80332108", - "8033321c": "sHasStartedFadeOut", - "80333220": "sSoundBanksThatLowerBackgroundMusic", - "80333224": "sUnused80332114", - "80333228": "sUnused80332118", - "8033322c": "sBackgroundMusicMaxTargetVolume", - "80333230": "D_80332120", - "80333234": "D_80332124", - "80333238": "sBackgroundMusicQueueSize", - "8033323c": "sUnused8033323C", - "803332a0": "gAudioSessionPresets", - "80333498": "gAudioCosineTable", - "80333598": "gPitchBendFrequencyScale", - "80333994": "gNoteFrequencies", - "80333b94": "gDefaultShortNoteVelocityTable", - "80333ba4": "gDefaultShortNoteDurationTable", - "80333bb4": "gVibratoCurve", - "80333bc4": "gDefaultEnvelope", - "80333bd0": "sSineWave", - "80333c50": "sSquareWave", - "80333cd0": "sTriangleWave", - "80333d50": "sSawtoothWave", - "80333dd0": "gWaveSamples", - "80333de0": "gHeadsetPanQuantization", - "80333df4": "gHeadsetPanVolume", - "80333ff4": "gStereoPanVolume", - "803341f4": "gDefaultPanVolume", - "803343f4": "gVolRampingLhs136", - "803345f4": "gVolRampingRhs136", - "803347f4": "gVolRampingLhs144", - "803349f4": "gVolRampingRhs144", - "80334bf4": "gVolRampingLhs128", - "80334df4": "gVolRampingRhs128", - "80334ff4": "gTatumsPerBeat", - "80334ff8": "gUnusedCount80333EE8", - "80334ffc": "gAudioHeapSize", - "80335000": "gAudioInitPoolSize", - "80335004": "gAudioLoadLock", - "80335008": "sUnused8033EF8", - "80335010": "osViModeTable", - "803358d0": "viMgrMainArgs", - "803358f0": "__osPiDevMgr", - "80335910": "osClockRate", - "80335918": "__osShutdown", - "80335920": "_osContInitialized", - "80335940": "__osTimerList", - "80335950": "spaces", - "80335974": "zeroes", - "803359a0": "__osThreadTail", - "803359a4": "D_80334894", - "803359a8": "__osRunQueue", - "803359ac": "__osActiveQueue", - "803359b0": "__osRunningThread", - "803359b4": "__osFaultedThread", - "803359c0": "sViContexts", - "80335a20": "__osViCurr", - "80335a24": "__osViNext", - "80335a28": "sTvType", - "80335a2c": "osViClock", - "80335a30": "__osHwIntTable", - "80335a44": "D_80334934", - "80335a48": "D_80334938", - "80335a50": "gOsPiAccessQueueCreated", - "80335a60": "gOsSiAccessQueueCreated", - "80335aa0": "osViModePalLan1", - "80335af0": "osViModeMpalLan1", - "80335b50": "__osRdbSendMessage", - "80335b54": "__osRdbWriteOK", - "80339980": "__osIntOffTable", - "803399a0": "__osIntTable", - "803399d0": "NAN", - "803399e0": "pows", - "80339a40": "__osRcpImTable", - "80339ac0": "rspF3DDataStart", - "8033a2c0": "rspF3DDataEnd", - "8033a2c0": "rspAspMainDataStart", - "8033a580": "rspAspMainDataEnd", - "8033a580": "_mainSegmentEnd", - "000f5580": "_mainSegmentRomEnd", - "007cc6c0": "__romPos", - "8033a580": "_mainSegmentNoloadStart", - "8033a580": "D_80339210", - "8033a730": "gIdleThread", - "8033a8e0": "gMainThread", - "8033aa90": "gGameLoopThread", - "8033ac40": "gSoundThread", - "8033adf0": "gPIMesgQueue", - "8033ae08": "gIntrMesgQueue", - "8033ae20": "gSPTaskMesgQueue", - "8033ae38": "gDmaMesgBuf", - "8033ae40": "gPIMesgBuf", - "8033aec0": "gSIEventMesgBuf", - "8033aec8": "gIntrMesgBuf", - "8033af08": "gUnknownMesgBuf", - "8033af48": "gDmaIoMesg", - "8033af5c": "gMainReceivedMesg", - "8033af60": "gDmaMesgQueue", - "8033af78": "gSIEventMesgQueue", - "8033af90": "gControllers", - "8033afe8": "gControllerStatuses", - "8033aff8": "gControllerPads", - "8033b010": "gGameVblankQueue", - "8033b028": "gGfxVblankQueue", - "8033b040": "gGameMesgBuf", - "8033b044": "gGfxMesgBuf", - "8033b048": "gGameVblankHandler", - "8033b050": "gPhysicalFramebuffers", - "8033b05c": "gPhysicalZBuffer", - "8033b060": "gMarioAnimsMemAlloc", - "8033b064": "gDemoInputsMemAlloc", - "8033b068": "gGfxSPTask", - "8033b06c": "gDisplayListHead", - "8033b070": "gGfxPoolEnd", - "8033b074": "gGfxPool", - "8033b078": "gControllerBits", - "8033b079": "gEepromProbe", - "8033b080": "gMarioAnimsBuf", - "8033b090": "gDemoInputsBuf", - "8033b170": "gMarioStates", - "8033b238": "sCurrPlayMode", - "8033b23a": "D_80339ECA", - "8033b23c": "sTransitionTimer", - "8033b240": "sTransitionUpdate", - "8033b244": "unused2", - "8033b248": "sWarpDest", - "8033b250": "D_80339EE0", - "8033b252": "sDelayedWarpOp", - "8033b254": "sDelayedWarpTimer", - "8033b256": "sSourceWarpNodeId", - "8033b258": "sDelayedWarpArg", - "8033b25c": "sUnusedLevelUpdateBss", - "8033b25e": "sTimerRunning", - "8033b260": "gHudDisplay", - "8033b26e": "gNeverEnteredCastle", - "8033b270": "sDelayInvincTimer", - "8033b272": "sInvulnerable", - "8033b280": "unused80339F10", - "8033b288": "unused80339F1C", - "8033b2c0": "sFloorAlignMatrix", - "8033b350": "gMirrorMario", - "8033b3b0": "gBodyStates", - "8033b400": "sSegmentTable", - "8033b480": "sPoolFreeSpace", - "8033b484": "sPoolStart", - "8033b488": "sPoolEnd", - "8033b48c": "sPoolListHeadL", - "8033b490": "sPoolListHeadR", - "8033b494": "gEffectsMemoryPool", - "8033b4a0": "gWarpCheckpoint", - "8033b4a5": "gMainMenuDataModified", - "8033b4a6": "gSaveFileModified", - "8033b4b0": "gPlayerSpawnInfos", - "8033b4d0": "D_8033A160", - "8033b8d0": "gAreaData", - "8033bab0": "gWarpTransition", - "8033bac6": "gCurrCourseNum", - "8033bac8": "gCurrActNum", - "8033baca": "gCurrAreaIndex", - "8033bacc": "gSavedCourseNum", - "8033bace": "gMenuOptSelectIndex", - "8033bad0": "gSaveOptSelectIndex", - "8033bae0": "gMatStackIndex", - "8033bae8": "gMatStack", - "8033c2e8": "gMatStackFixed", - "8033c368": "gGeoTempState", - "8033c378": "gCurrAnimType", - "8033c379": "gCurrAnimEnabled", - "8033c37a": "gCurrAnimFrame", - "8033c37c": "gCurrAnimTranslationMultiplier", - "8033c380": "gCurrAnimAttribute", - "8033c384": "gCurrAnimData", - "8033c388": "gDisplayListHeap", - "8033c390": "gProfilerFrameData", - "8033c520": "gPlayerCameraState", - "8033c568": "sOldPosition", - "8033c578": "sOldFocus", - "8033c588": "sPlayer2FocusOffset", - "8033c594": "sCreditsPlayer2Pitch", - "8033c596": "sCreditsPlayer2Yaw", - "8033c598": "sFramesPaused", - "8033c5a0": "sFOVState", - "8033c5c0": "sModeTransition", - "8033c5e8": "sMarioGeometry", - "8033c61c": "unusedFreeRoamWallYaw", - "8033c61e": "sAvoidYawVel", - "8033c620": "sCameraYawAfterDoorCutscene", - "8033c622": "unusedSplinePitch", - "8033c624": "unusedSplineYaw", - "8033c628": "sHandheldShakeSpline", - "8033c668": "sHandheldShakeMag", - "8033c66c": "sHandheldShakeTimer", - "8033c670": "sHandheldShakeInc", - "8033c674": "sHandheldShakePitch", - "8033c676": "sHandheldShakeYaw", - "8033c678": "sHandheldShakeRoll", - "8033c67c": "unused8033B30C", - "8033c680": "unused8033B310", - "8033c684": "sSelectionFlags", - "8033c686": "unused8033B316", - "8033c688": "s2ndRotateFlags", - "8033c68a": "unused8033B31A", - "8033c68c": "sCameraSoundFlags", - "8033c68e": "sCButtonsPressed", - "8033c690": "sCutsceneDialogID", - "8033c698": "gLakituState", - "8033c758": "unused8033B3E8", - "8033c75a": "sAreaYaw", - "8033c75c": "sAreaYawChange", - "8033c75e": "sLakituDist", - "8033c760": "sLakituPitch", - "8033c764": "sZoomAmount", - "8033c768": "sCSideButtonYaw", - "8033c76a": "sBehindMarioSoundTimer", - "8033c76c": "sZeroZoomDist", - "8033c770": "sCUpCameraPitch", - "8033c772": "sModeOffsetYaw", - "8033c774": "sSpiralStairsYawOffset", - "8033c776": "s8DirModeBaseYaw", - "8033c778": "s8DirModeYawOffset", - "8033c77c": "sPanDistance", - "8033c780": "sCannonYOffset", - "8033c788": "sModeInfo", - "8033c7d0": "sCastleEntranceOffset", - "8033c7dc": "sParTrackIndex", - "8033c7e0": "sParTrackPath", - "8033c7e8": "sParTrackTransOff", - "8033c808": "sCameraStoreCUp", - "8033c828": "sCameraStoreCutscene", - "8033c848": "gCameraMovementFlags", - "8033c84a": "sStatusFlags", - "8033c850": "sCurCreditsSplinePos", - "8033c950": "sCurCreditsSplineFocus", - "8033ca50": "sCutsceneSplineSegment", - "8033ca54": "sCutsceneSplineSegmentProgress", - "8033ca58": "unused8033B6E8", - "8033ca5a": "sCutsceneShot", - "8033ca5c": "gCutsceneTimer", - "8033ca60": "sCutsceneVars", - "8033cbc8": "gObjCutsceneDone", - "8033cbcc": "gCutsceneObjSpawn", - "8033cbd0": "gCamera", - "8033cbe0": "gObjectListArray", - "8033d260": "gDebugInfoFlags", - "8033d264": "gNumFindFloorMisses", - "8033d268": "unused_8033BEF8", - "8033d26c": "gUnknownWallCount", - "8033d270": "gObjectCounter", - "8033d274": "gNumCalls", - "8033d280": "gDebugInfo", - "8033d380": "gDebugInfoOverwrite", - "8033d480": "gTimeStopState", - "8033d488": "gObjectPool", - "80360e88": "gMacroObjectDefaultParent", - "803610e8": "gObjectLists", - "803610f0": "gFreeObjectList", - "80361158": "gMarioObject", - "8036115c": "gLuigiObject", - "80361160": "gCurrentObject", - "80361164": "gCurBhvCommand", - "80361168": "gPrevFrameObjectCount", - "8036116c": "gSurfaceNodesAllocated", - "80361170": "gSurfacesAllocated", - "80361174": "gNumStaticSurfaceNodes", - "80361178": "gNumStaticSurfaces", - "8036117c": "gObjectMemoryPool", - "80361180": "gCheckingSurfaceCollisionsForCamera", - "80361182": "gFindFloorIncludeSurfaceIntangible", - "80361184": "gEnvironmentRegions", - "80361188": "gEnvironmentLevels", - "803611d8": "gDoorAdjacentRooms", - "80361250": "gMarioCurrentRoom", - "80361252": "D_8035FEE2", - "80361254": "D_8035FEE4", - "80361256": "gTHIWaterDrained", - "80361258": "gTTCSpeedSetting", - "8036125a": "gMarioShotFromCannon", - "8036125c": "gCCMEnteredSlide", - "8036125e": "gNumRoomedObjectsInMarioRoom", - "80361260": "gNumRoomedObjectsNotInMarioRoom", - "80361262": "gWDWWaterLevelChanging", - "80361264": "gMarioOnMerryGoRound", - "80361290": "gDebugPrintState1", - "803612a0": "gDebugPrintState2", - "803612b0": "sMarioOnFlyingCarpet", - "803612b2": "sSurfaceTypeBelowShadow", - "803612b4": "gShadowAboveWaterOrLava", - "803612b5": "gMarioOnIceOrCarpet", - "803612c0": "sSkyBoxInfo", - "803612e0": "gMovetexLastTextureId", - "803612f0": "gFlyingCarpetState", - "80361300": "gPaintingMarioFloorType", - "80361304": "gPaintingMarioXPos", - "80361308": "gPaintingMarioYPos", - "8036130c": "gPaintingMarioZPos", - "80361310": "gPaintingMesh", - "80361314": "gPaintingTriNorms", - "80361318": "gRipplingPainting", - "8036131c": "gDDDPaintingStatus", - "80361320": "sTextLabels", - "803613f0": "gMenuTextColorTransTimer", - "803613f2": "gLastDialogLineNum", - "803613f4": "gDialogVariable", - "803613f8": "gMenuTextAlpha", - "803613fa": "gCutsceneMsgXOffset", - "803613fc": "gCutsceneMsgYOffset", - "803613fe": "gRedCoinsCollected", - "80361400": "gEnvFxBuffer", - "80361408": "gSnowCylinderLastPos", - "80361414": "gSnowParticleCount", - "80361416": "gSnowParticleMaxCount", - "80361420": "gEnvFxBubbleConfig", - "80361460": "sNumActiveFirePiranhaPlants", - "80361464": "sNumKilledFirePiranhaPlants", - "80361468": "sObjSavedPosX", - "8036146c": "sObjSavedPosY", - "80361470": "sObjSavedPosZ", - "80361474": "sMontyMoleHoleList", - "80361478": "sMontyMoleKillStreak", - "8036147c": "sMontyMoleLastKilledPosX", - "80361480": "sMontyMoleLastKilledPosY", - "80361484": "sMontyMoleLastKilledPosZ", - "80361488": "sMasterTreadmill", - "80361490": "gCurrAiBuffer", - "80361498": "sSoundRequests", - "80361c98": "D_80360928", - "80361f98": "sUsedChannelsForSoundBank", - "80361fa8": "sCurrentSound", - "80361fb8": "sSoundBanks", - "80364b78": "sSoundMovingSpeed", - "80364b82": "sBackgroundMusicTargetVolume", - "80364b88": "sBackgroundMusicQueue", - "80364ba0": "__osEventStateTab", - "80364c20": "tmpTask", - "80365e70": "piMgrThread", - "80366020": "piMgrStack", - "80367020": "piEventQueue", - "80367038": "piEventBuf", - "80367040": "__osFinalrom", - "80367050": "__osContPifRam", - "80367090": "__osContLastCmd", - "80367091": "__osMaxControllers", - "80367098": "__osEepromTimer", - "803670b8": "__osEepromTimerQ", - "803670d0": "__osEepromTimerMsg", - "803670f0": "__osBaseTimer", - "80367110": "__osCurrentTime", - "80367118": "__osBaseCounter", - "8036711c": "__osViIntrCount", - "80367120": "__osTimerCounter", - "80367130": "osPiMesgBuff", - "80367138": "gOsPiMessageQueue", - "80367150": "osSiMesgBuff", - "80367158": "gOsSiMessageQueue", - "80367170": "__osEepPifRam", - "803671b0": "debugBuffer", - "803672b0": "__osThreadSave", - "80367460": ".", - "80367460": "_mainSegmentNoloadEnd", - "00000002": "_mainSegmentNoloadSizeHi", - "0000cee0": "_mainSegmentNoloadSizeLo", - "80378800": "_engineSegmentStart", - "000f5580": "_engineSegmentRomStart", - "80378800": "vec3f_copy", - "80378840": "vec3f_set", - "8037888c": "vec3f_add", - "803788e4": "vec3f_sum", - "8037893c": "vec3s_copy", - "8037897c": "vec3s_set", - "803789c8": "vec3s_add", - "80378a20": "vec3s_sum", - "80378a78": "vec3s_sub", - "80378ad0": "vec3s_to_vec3f", - "80378b34": "vec3f_to_vec3s", - "80378c50": "find_vector_perpendicular_to_plane", - "80378d38": "vec3f_cross", - "80378dc0": "vec3f_normalize", - "80378e68": "mtxf_copy", - "80378eb4": "mtxf_identity", - "80378f24": "mtxf_translate", - "80378f84": "mtxf_lookat", - "80379440": "mtxf_rotate_zxy_and_translate", - "803795f0": "mtxf_rotate_xyz_and_translate", - "80379798": "mtxf_billboard", - "80379918": "mtxf_align_terrain_normal", - "80379aa4": "mtxf_align_terrain_triangle", - "80379f60": "mtxf_mul", - "8037a29c": "mtxf_scale_vec3f", - "8037a348": "mtxf_mul_vec3s", - "8037a434": "mtxf_to_mtx", - "8037a4b8": "mtxf_rotate_xy", - "8037a550": "get_pos_from_transform_mtx", - "8037a69c": "vec3f_get_dist_and_angle", - "8037a788": "vec3f_set_dist_and_angle", - "8037a860": "approach_s32", - "8037a8b4": "approach_f32", - "8037a9a8": "atan2s", - "8037ab88": "atan2f", - "8037abec": "spline_get_weights", - "8037afb8": "anim_spline_init", - "8037afe8": "anim_spline_poll", - "8037b220": "init_scene_graph_node_links", - "8037b24c": "init_graph_node_root", - "8037b30c": "init_graph_node_ortho_projection", - "8037b380": "init_graph_node_perspective", - "8037b448": "init_graph_node_start", - "8037b4ac": "init_graph_node_master_list", - "8037b530": "init_graph_node_render_range", - "8037b5b4": "init_graph_node_switch_case", - "8037b670": "init_graph_node_camera", - "8037b744": "init_graph_node_translation_rotation", - "8037b7f8": "init_graph_node_translation", - "8037b89c": "init_graph_node_rotation", - "8037b940": "init_graph_node_scale", - "8037b9e0": "init_graph_node_object", - "8037bad4": "init_graph_node_culling_radius", - "8037bb48": "init_graph_node_animated_part", - "8037bbec": "init_graph_node_billboard", - "8037bc90": "init_graph_node_display_list", - "8037bd24": "init_graph_node_shadow", - "8037bdb4": "init_graph_node_object_parent", - "8037be28": "init_graph_node_generated", - "8037becc": "init_graph_node_background", - "8037bf84": "init_graph_node_held_object", - "8037c044": "geo_add_child", - "8037c0bc": "geo_remove_child", - "8037c138": "geo_make_first_child", - "8037c1e4": "geo_call_global_function_nodes_helper", - "8037c360": "geo_call_global_function_nodes", - "8037c3d0": "geo_reset_object_node", - "8037c448": "geo_obj_init", - "8037c51c": "geo_obj_init_spawninfo", - "8037c658": "geo_obj_init_animation", - "8037c708": "geo_obj_init_animation_accel", - "8037c7d8": "retrieve_animation_index", - "8037c844": "geo_update_animation_frame", - "8037c9e8": "geo_retreive_animation_translation", - "8037cb10": "geo_find_root", - "8037cb60": "read_vec3s_to_vec3f", - "8037cbc0": "read_vec3s", - "8037cbfc": "read_vec3s_angle", - "8037cc74": "register_scene_graph_node", - "8037cd60": "geo_layout_cmd_branch_and_link", - "8037ce24": "geo_layout_cmd_end", - "8037cee8": "geo_layout_cmd_branch", - "8037cf70": "geo_layout_cmd_return", - "8037cfc0": "geo_layout_cmd_open_node", - "8037d018": "geo_layout_cmd_close_node", - "8037d050": "geo_layout_cmd_assign_as_view", - "8037d0d0": "geo_layout_cmd_update_node_flags", - "8037d1d0": "geo_layout_cmd_node_root", - "8037d328": "geo_layout_cmd_node_ortho_projection", - "8037d3a4": "geo_layout_cmd_node_perspective", - "8037d48c": "geo_layout_cmd_node_start", - "8037d4dc": "geo_layout_cmd_nop3", - "8037d500": "geo_layout_cmd_node_master_list", - "8037d55c": "geo_layout_cmd_node_level_of_detail", - "8037d5d4": "geo_layout_cmd_node_switch_case", - "8037d640": "geo_layout_cmd_node_camera", - "8037d6f0": "geo_layout_cmd_node_translation_rotation", - "8037d8d4": "geo_layout_cmd_node_translation", - "8037d998": "geo_layout_cmd_node_rotation", - "8037da5c": "geo_layout_cmd_node_scale", - "8037db50": "geo_layout_cmd_nop2", - "8037db74": "geo_layout_cmd_node_animated_part", - "8037dc10": "geo_layout_cmd_node_billboard", - "8037dcd4": "geo_layout_cmd_node_display_list", - "8037dd4c": "geo_layout_cmd_node_shadow", - "8037dddc": "geo_layout_cmd_node_object_parent", - "8037de34": "geo_layout_cmd_node_generated", - "8037de94": "geo_layout_cmd_node_background", - "8037def8": "geo_layout_cmd_nop", - "8037df1c": "geo_layout_cmd_copy_view", - "8037dfd4": "geo_layout_cmd_node_held_obj", - "8037e058": "geo_layout_cmd_node_culling_radius", - "8037e0b4": "process_geo_layout", - "803805c8": "level_script_execute", - "80380de8": "f32_find_wall_collision", - "80380e8c": "find_wall_collisions", - "80381264": "find_ceil", - "80381470": "unused_obj_find_floor_height", - "803814b8": "find_floor_height_and_data", - "80381794": "find_floor_height", - "803817e0": "unused_find_dynamic_floor", - "80381900": "find_floor", - "80381ba0": "find_water_level", - "80381d3c": "find_poison_gas_level", - "80381f08": "debug_surface_list_info", - "80382294": "unused_resolve_floor_or_ceil_collisions", - "80383340": "alloc_surface_pools", - "803833b8": "load_area_terrain", - "803835a4": "clear_dynamic_surfaces", - "80383614": "transform_object_vertices", - "80383828": "load_object_surfaces", - "803839cc": "load_object_collision_model", - "80383bb0": "random_u16", - "80383cb4": "random_float", - "80383d1c": "random_sign", - "80383d68": "obj_update_gfx_pos_and_angle", - "80385bf0": "stub_behavior_script_2", - "80385c00": "cur_obj_update", - "80385f90": "identityMtx", - "80385fb0": "zeroMtx", - "80385fd0": "gVec3fZero", - "80385fdc": "gVec3sZero", - "80385fe4": "gVec3fOne", - "80385ff0": "gVec3sOne", - "80386000": "gSineTable", - "80387000": "gCosineTable", - "8038b000": "gArctanTable", - "8038b810": "GeoLayoutJumpTable", - "8038b894": "unused_8038B894", - "8038bc90": "_engineSegmentEnd", - "00108a10": "_engineSegmentRomEnd", - "007cc6c0": "__romPos", - "8038bc90": "_engineSegmentNoloadStart", - "8038bc90": "gSplineKeyframe", - "8038bc94": "gSplineKeyframeFraction", - "8038bc98": "gSplineState", - "8038bca0": "gGraphNodePool", - "8038bca4": "gCurRootGraphNode", - "8038bca8": "D_8038BCA8", - "8038bcac": "gGeoViews", - "8038bcb0": "gGeoNumViews", - "8038bcb8": "gGeoLayoutStack", - "8038bcf8": "gCurGraphNodeList", - "8038bd78": "gCurGraphNodeIndex", - "8038bd7a": "gGeoLayoutStackIndex", - "8038bd7c": "D_8038BD7C", - "8038bd7e": "gGeoLayoutReturnIndex", - "8038bd80": "gGeoLayoutCommand", - "8038bd88": "gObjParentGraphNode", - "8038be30": "sFloorGeo", - "8038be90": "unused8038BE90", - "8038be98": "gStaticSurfacePartition", - "8038d698": "gDynamicSurfacePartition", - "8038ee98": "sSurfaceNodePool", - "8038ee9c": "sSurfacePool", - "8038eea0": "sSurfacePoolSize", - "8038eea8": "unused8038EEA8", - "8038eef0": "_engineSegmentNoloadEnd", - "8038f800": ".", - "8038f800": "_framebuffersSegmentNoloadStart", - "8038f800": "0x70800", - "8038f800": "gFramebuffer0", - "803b5000": "gFramebuffer1", - "803da800": "gFramebuffer2", - "80400000": "_framebuffersSegmentNoloadEnd", - "10000000": "_entrySegmentStart", - "00108a10": "_entrySegmentRomStart", - "10000000": "level_script_entry", - "10000030": "_entrySegmentEnd", - "00108a40": "_entrySegmentRomEnd", - "007cc6c0": "__romPos", - "02000000": "_segment2_mio0SegmentStart", - "00108a40": "_segment2_mio0SegmentRomStart", - "02000000": "_binary_build_us_bin_segment2_mio0_start", - "0200bd06": "_binary_build_us_bin_segment2_mio0_end", - "0200bd10": ".", - "0200bd10": "_segment2_mio0SegmentEnd", - "00114750": "_segment2_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "04000000": "_group0_mio0SegmentStart", - "00114750": "_group0_mio0SegmentRomStart", - "04000000": "_binary_build_us_actors_group0_mio0_start", - "04013260": "_binary_build_us_actors_group0_mio0_end", - "04013260": ".", - "04013260": "_group0_mio0SegmentEnd", - "001279b0": "_group0_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "17000000": "_group0_geoSegmentStart", - "001279b0": "_group0_geoSegmentRomStart", - "17000000": "bubble_geo", - "1700001c": "purple_marble_geo", - "17000038": "smoke_geo", - "17000084": "burn_smoke_geo", - "1700009c": "small_water_splash_geo", - "170000e0": "mario_TODO_geo_0000E0", - "17000124": "idle_water_wave_geo", - "17000168": "wave_trail_geo", - "170001bc": "sparkles_geo", - "17000230": "water_splash_geo", - "17000284": "sparkles_animation_geo", - "170002e0": "mario_geo_face_and_wings", - "1700041c": "mario_geo_left_hand", - "17000494": "mario_geo_right_hand", - "1700053c": "mario_geo_body", - "170006f8": "mario_geo_medium_poly_left_hand", - "17000770": "mario_geo_medium_poly_right_hand", - "17000818": "mario_geo_medium_poly_body", - "170009d4": "mario_geo_low_poly_face_and_wings", - "17000b10": "mario_geo_low_poly_left_hand", - "17000b88": "mario_geo_low_poly_right_hand", - "17000c30": "mario_geo_low_poly_body", - "17000dec": "mario_vanish_geo_face_and_wings", - "17000f28": "mario_vanish_geo_left_hand", - "17000fa0": "mario_vanish_geo_right_hand", - "17001048": "mario_vanish_geo_body", - "17001204": "mario_vanish_geo_medium_poly_left_hand", - "1700127c": "mario_vanish_geo_medium_poly_right_hand", - "17001324": "mario_vanish_geo_medium_poly_body", - "170014e0": "mario_vanish_geo_low_poly_face_and_wings", - "1700161c": "mario_vanish_geo_low_poly_left_hand", - "17001694": "mario_vanish_geo_low_poly_right_hand", - "1700173c": "mario_vanish_geo_low_poly_body", - "170018f8": "mario_metal_geo_face_and_wings", - "170019a4": "mario_metal_geo_left_hand", - "17001a1c": "mario_metal_geo_right_hand", - "17001ac4": "mario_metal_geo_body", - "17001c80": "mario_metal_geo_medium_poly_left_hand", - "17001cf8": "mario_metal_geo_medium_poly_right_hand", - "17001da0": "mario_metal_geo_medium_poly_body", - "17001f5c": "mario_metal_geo_low_poly_face_and_wings", - "17002008": "mario_metal_geo_low_poly_left_hand", - "17002080": "mario_metal_geo_low_poly_right_hand", - "17002128": "mario_metal_geo_low_poly_body", - "170022e4": "mario_metal_vanish_geo_face_and_wings", - "17002390": "mario_metal_vanish_geo_left_hand", - "17002408": "mario_metal_vanish_geo_right_hand", - "170024b0": "mario_metal_vanish_geo_body", - "1700266c": "mario_metal_vanish_geo_medium_poly_left_hand", - "170026e4": "mario_metal_vanish_geo_medium_poly_right_hand", - "1700278c": "mario_metal_vanish_geo_medium_poly_body", - "17002958": "mario_metal_vanish_geo_low_poly_face_and_wings", - "17002a04": "mario_metal_vanish_geo_low_poly_left_hand", - "17002a7c": "mario_metal_vanish_geo_low_poly_right_hand", - "17002b24": "mario_metal_vanish_geo_low_poly_body", - "17002ce0": "mario_geo_load_body", - "17002d14": "mario_geo_load_medium_poly_body", - "17002d48": "mario_geo_load_low_poly_body", - "17002d7c": "mario_geo_render_body", - "17002dd4": "mario_geo", - "17002e30": "_group0_geoSegmentEnd", - "0012a7e0": "_group0_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group1_mio0SegmentStart", - "0012a7e0": "_group1_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group1_mio0_start", - "0500806f": "_binary_build_us_actors_group1_mio0_end", - "05008070": ".", - "05008070": "_group1_mio0SegmentEnd", - "00132850": "_group1_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group1_geoSegmentStart", - "00132850": "_group1_geoSegmentRomStart", - "0c000000": "yellow_sphere_geo", - "0c000018": "hoot_geo", - "0c0001e4": "yoshi_egg_geo", - "0c000248": "thwomp_geo", - "0c000264": "bullet_bill_geo", - "0c00028c": "heave_ho_geo", - "0c000410": "_group1_geoSegmentEnd", - "00132c60": "_group1_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group2_mio0SegmentStart", - "00132c60": "_group2_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group2_mio0_start", - "05001e0c": "_binary_build_us_actors_group2_mio0_end", - "05001e10": ".", - "05001e10": "_group2_mio0SegmentEnd", - "00134a70": "_group2_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group2_geoSegmentStart", - "00134a70": "_group2_geoSegmentRomStart", - "0c000000": "bully_geo", - "0c000120": "bully_boss_geo", - "0c000240": "blargg_geo", - "0c0002b0": "_group2_geoSegmentEnd", - "00134d20": "_group2_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group3_mio0SegmentStart", - "00134d20": "_group3_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group3_mio0_start", - "050068a1": "_binary_build_us_actors_group3_mio0_end", - "050068b0": ".", - "050068b0": "_group3_mio0SegmentEnd", - "0013b5d0": "_group3_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group3_geoSegmentStart", - "0013b5d0": "_group3_geoSegmentRomStart", - "0c000000": "king_bobomb_geo", - "0c000308": "water_bomb_geo", - "0c000328": "water_bomb_shadow_geo", - "0c000340": "_group3_geoSegmentEnd", - "0013b910": "_group3_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group4_mio0SegmentStart", - "0013b910": "_group4_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group4_mio0_start", - "0500a2ff": "_binary_build_us_actors_group4_mio0_end", - "0500a300": ".", - "0500a300": "_group4_mio0SegmentEnd", - "00145c10": "_group4_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group4_geoSegmentStart", - "00145c10": "_group4_geoSegmentRomStart", - "0c000000": "clam_shell_geo", - "0c000068": "sushi_geo", - "0c00010c": "unagi_geo", - "0c000280": "_group4_geoSegmentEnd", - "00145e90": "_group4_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group5_mio0SegmentStart", - "00145e90": "_group5_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group5_mio0_start", - "0500bcd1": "_binary_build_us_actors_group5_mio0_end", - "0500bce0": ".", - "0500bce0": "_group5_mio0SegmentEnd", - "00151b70": "_group5_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group5_geoSegmentStart", - "00151b70": "_group5_geoSegmentRomStart", - "0c000000": "klepto_geo", - "0c0002ac": "eyerok_geo_0002AC", - "0c0005a8": "eyerok_left_hand_geo", - "0c0005e4": "eyerok_right_hand_geo", - "0c000610": "pokey_head_geo", - "0c000644": "pokey_body_part_geo", - "0c000660": "_group5_geoSegmentEnd", - "001521d0": "_group5_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group6_mio0SegmentStart", - "001521d0": "_group6_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group6_mio0_start", - "0500e108": "_binary_build_us_actors_group6_mio0_end", - "0500e110": ".", - "0500e110": "_group6_mio0SegmentEnd", - "001602e0": "_group6_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group6_geoSegmentStart", - "001602e0": "_group6_geoSegmentRomStart", - "0c000000": "monty_mole_geo", - "0c000110": "ukiki_geo", - "0c00036c": "fwoosh_geo", - "0c000390": "_group6_geoSegmentEnd", - "00160670": "_group6_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group7_mio0SegmentStart", - "00160670": "_group7_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group7_mio0_start", - "05005069": "_binary_build_us_actors_group7_mio0_end", - "05005070": ".", - "05005070": "_group7_mio0SegmentEnd", - "001656e0": "_group7_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group7_geoSegmentStart", - "001656e0": "_group7_geoSegmentRomStart", - "0c000000": "spindrift_geo", - "0c000104": "penguin_geo", - "0c00021c": "mr_blizzard_hidden_geo", - "0c000348": "mr_blizzard_geo", - "0c000370": "_group7_geoSegmentEnd", - "00165a50": "_group7_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group8_mio0SegmentStart", - "00165a50": "_group8_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group8_mio0_start", - "05001177": "_binary_build_us_actors_group8_mio0_end", - "05001180": ".", - "05001180": "_group8_mio0SegmentEnd", - "00166bd0": "_group8_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group8_geoSegmentStart", - "00166bd0": "_group8_geoSegmentRomStart", - "0c000000": "springboard_top_geo", - "0c000018": "springboard_spring_geo", - "0c000030": "springboard_bottom_geo", - "0c000048": "cap_switch_geo", - "0c000090": "_group8_geoSegmentEnd", - "00166c60": "_group8_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group9_mio0SegmentStart", - "00166c60": "_group9_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group9_mio0_start", - "05006958": "_binary_build_us_actors_group9_mio0_end", - "05006960": ".", - "05006960": "_group9_mio0SegmentEnd", - "0016d5c0": "_group9_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group9_geoSegmentStart", - "0016d5c0": "_group9_geoSegmentRomStart", - "0c000000": "bookend_part_geo", - "0c0000c0": "bookend_geo", - "0c0000d8": "haunted_chair_geo", - "0c000188": "small_key_geo", - "0c0001b4": "mad_piano_geo", - "0c000224": "boo_geo", - "0c000274": "haunted_cage_geo", - "0c0002b0": "_group9_geoSegmentEnd", - "0016d870": "_group9_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group10_mio0SegmentStart", - "0016d870": "_group10_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group10_mio0_start", - "05012cc5": "_binary_build_us_actors_group10_mio0_end", - "05012cd0": ".", - "05012cd0": "_group10_mio0SegmentEnd", - "00180540": "_group10_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group10_geoSegmentStart", - "00180540": "_group10_geoSegmentRomStart", - "0c000000": "birds_geo", - "0c000098": "peach_geo_000098", - "0c000254": "peach_geo_000254", - "0c000410": "peach_geo", - "0c000468": "yoshi_geo", - "0c000670": "_group10_geoSegmentEnd", - "00180bb0": "_group10_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "05000000": "_group11_mio0SegmentStart", - "00180bb0": "_group11_mio0SegmentRomStart", - "05000000": "_binary_build_us_actors_group11_mio0_start", - "050073ea": "_binary_build_us_actors_group11_mio0_end", - "050073f0": ".", - "050073f0": "_group11_mio0SegmentEnd", - "00187fa0": "_group11_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0c000000": "_group11_geoSegmentStart", - "00187fa0": "_group11_geoSegmentRomStart", - "0c000000": "bubba_geo", - "0c000030": "wiggler_head_geo", - "0c0001bc": "enemy_lakitu_geo", - "0c000290": "spiny_ball_geo", - "0c000328": "spiny_geo", - "0c0004a0": "_group11_geoSegmentEnd", - "00188440": "_group11_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "06000000": "_group12_mio0SegmentStart", - "00188440": "_group12_mio0SegmentRomStart", - "06000000": "_binary_build_us_actors_group12_mio0_start", - "06030c2a": "_binary_build_us_actors_group12_mio0_end", - "06030c30": ".", - "06030c30": "_group12_mio0SegmentEnd", - "001b9070": "_group12_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0d000000": "_group12_geoSegmentStart", - "001b9070": "_group12_geoSegmentRomStart", - "0d000000": "bowser_flames_geo", - "0d000090": "invisible_bowser_accessory_geo", - "0d0000b0": "bowser_1_yellow_sphere_geo", - "0d0000d8": "bowser_geo_0000D8", - "0d000424": "bowser_geo_000424", - "0d000770": "bowser_geo_000770", - "0d000ab8": "bowser_shadow_geo", - "0d000ac4": "bowser_geo", - "0d000b40": "bowser_geo_no_shadow", - "0d000bbc": "bowser_bomb_geo", - "0d000bfc": "bowser_impact_smoke_geo", - "0d000c50": "_group12_geoSegmentEnd", - "001b9cc0": "_group12_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "06000000": "_group13_mio0SegmentStart", - "001b9cc0": "_group13_mio0SegmentRomStart", - "06000000": "_binary_build_us_actors_group13_mio0_start", - "0600a0e4": "_binary_build_us_actors_group13_mio0_end", - "0600a0f0": ".", - "0600a0f0": "_group13_mio0SegmentEnd", - "001c3db0": "_group13_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0d000000": "_group13_geoSegmentStart", - "001c3db0": "_group13_geoSegmentRomStart", - "0d000000": "skeeter_geo", - "0d000284": "seaweed_geo", - "0d0002f4": "water_mine_geo", - "0d000324": "cyan_fish_geo", - "0d00038c": "bub_geo", - "0d000414": "water_ring_geo", - "0d000450": "treasure_chest_base_geo", - "0d000468": "treasure_chest_lid_geo", - "0d000480": "_group13_geoSegmentEnd", - "001c4230": "_group13_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "06000000": "_group14_mio0SegmentStart", - "001c4230": "_group14_mio0SegmentRomStart", - "06000000": "_binary_build_us_actors_group14_mio0_start", - "06013a5a": "_binary_build_us_actors_group14_mio0_end", - "06013a60": ".", - "06013a60": "_group14_mio0SegmentEnd", - "001d7c90": "_group14_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0d000000": "_group14_geoSegmentStart", - "001d7c90": "_group14_geoSegmentRomStart", - "0d000000": "koopa_flag_geo", - "0d0000b8": "wooden_post_geo", - "0d0000d0": "koopa_without_shell_geo", - "0d000214": "koopa_with_shell_geo", - "0d000358": "piranha_plant_geo", - "0d000480": "whomp_geo", - "0d0005d0": "metallic_ball_geo", - "0d0005ec": "chain_chomp_geo", - "0d000680": "_group14_geoSegmentEnd", - "001d8310": "_group14_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "06000000": "_group15_mio0SegmentStart", - "001d8310": "_group15_mio0SegmentRomStart", - "06000000": "_binary_build_us_actors_group15_mio0_start", - "0600c8de": "_binary_build_us_actors_group15_mio0_end", - "0600c8e0": ".", - "0600c8e0": "_group15_mio0SegmentEnd", - "001e4bf0": "_group15_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0d000000": "_group15_geoSegmentStart", - "001e4bf0": "_group15_geoSegmentRomStart", - "0d000000": "lakitu_geo", - "0d000114": "toad_geo_000114", - "0d00027c": "toad_geo_00027C", - "0d0003e4": "toad_geo", - "0d000448": "mips_geo", - "0d0005b0": "boo_castle_geo", - "0d000600": "_group15_geoSegmentEnd", - "001e51f0": "_group15_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "06000000": "_group16_mio0SegmentStart", - "001e51f0": "_group16_mio0SegmentRomStart", - "06000000": "_binary_build_us_actors_group16_mio0_start", - "06002b98": "_binary_build_us_actors_group16_mio0_end", - "06002ba0": ".", - "06002ba0": "_group16_mio0SegmentEnd", - "001e7d90": "_group16_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0d000000": "_group16_geoSegmentStart", - "001e7d90": "_group16_geoSegmentRomStart", - "0d000000": "moneybag_geo_000000", - "0d000078": "moneybag_geo_000078", - "0d0000f0": "moneybag_geo", - "0d000150": "_group16_geoSegmentEnd", - "001e7ee0": "_group16_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "06000000": "_group17_mio0SegmentStart", - "001e7ee0": "_group17_mio0SegmentRomStart", - "06000000": "_binary_build_us_actors_group17_mio0_start", - "06009c4b": "_binary_build_us_actors_group17_mio0_end", - "06009c50": ".", - "06009c50": "_group17_mio0SegmentEnd", - "001f1b30": "_group17_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0d000000": "_group17_geoSegmentStart", - "001f1b30": "_group17_geoSegmentRomStart", - "0d000000": "mr_i_geo", - "0d00001c": "mr_i_iris_geo", - "0d0000dc": "swoop_geo", - "0d0001a0": "snufit_geo", - "0d000230": "dorrie_geo", - "0d000394": "scuttlebug_geo", - "0d0006d0": "_group17_geoSegmentEnd", - "001f2200": "_group17_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "08000000": "_common0_mio0SegmentStart", - "001f2200": "_common0_mio0SegmentRomStart", - "08000000": "_binary_build_us_actors_common0_mio0_start", - "0800e6c4": "_binary_build_us_actors_common0_mio0_end", - "0800e6d0": ".", - "0800e6d0": "_common0_mio0SegmentEnd", - "002008d0": "_common0_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "0f000000": "_common0_geoSegmentStart", - "002008d0": "_common0_geoSegmentRomStart", - "0f000000": "blue_coin_switch_geo", - "0f000020": "test_platform_geo", - "0f000028": "dAmpGeo", - "0f0001a8": "cannon_base_geo", - "0f0001c0": "cannon_barrel_geo", - "0f0001d8": "chuckya_geo", - "0f0004cc": "purple_switch_geo", - "0f0004e4": "checkerboard_platform_geo", - "0f0004fc": "heart_geo", - "0f000518": "flyguy_geo", - "0f0005d0": "breakable_box_geo", - "0f000610": "breakable_box_small_geo", - "0f000640": "bowling_ball_geo", - "0f00066c": "bowling_ball_track_geo", - "0f000694": "exclamation_box_geo", - "0f0006e4": "goomba_geo", - "0f0007b8": "black_bobomb_geo", - "0f0008f4": "bobomb_buddy_geo", - "0f000a30": "metal_box_geo", - "0f000a58": "exclamation_box_outline_geo", - "0f000ab0": "koopa_shell_geo", - "0f000adc": "koopa_shell2_geo", - "0f000b08": "koopa_shell3_geo", - "0f000b40": "_common0_geoSegmentEnd", - "00201410": "_common0_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "03000000": "_common1_mio0SegmentStart", - "00201410": "_common1_mio0SegmentRomStart", - "03000000": "_binary_build_us_actors_common1_mio0_start", - "0301798d": "_binary_build_us_actors_common1_mio0_end", - "03017990": ".", - "03017990": "_common1_mio0SegmentEnd", - "00218da0": "_common1_mio0SegmentRomEnd", - "007cc6c0": "__romPos", - "16000000": "_common1_geoSegmentStart", - "00218da0": "_common1_geoSegmentRomStart", - "16000000": "mist_geo", - "16000020": "white_puff_geo", - "16000040": "explosion_geo", - "160000a8": "butterfly_geo", - "1600013c": "yellow_coin_geo", - "160001a0": "yellow_coin_no_shadow_geo", - "16000200": "blue_coin_geo", - "16000264": "blue_coin_no_shadow_geo", - "160002c4": "red_coin_geo", - "16000328": "red_coin_no_shadow_geo", - "16000388": "warp_pipe_geo", - "160003a8": "castle_door_geo", - "1600043c": "cabin_door_geo", - "160004d0": "wooden_door_geo", - "16000564": "wooden_door2_geo", - "160005f8": "metal_door_geo", - "1600068c": "hazy_maze_door_geo", - "16000720": "haunted_door_geo", - "160007b4": "castle_door_0_star_geo", - "16000868": "castle_door_1_star_geo", - "1600091c": "castle_door_3_stars_geo", - "160009d0": "key_door_geo", - "16000a84": "bowser_key_geo", - "16000ab0": "bowser_key_cutscene_geo", - "16000b10": "red_flame_shadow_geo", - "16000b2c": "red_flame_geo", - "16000b8c": "blue_flame_geo", - "16000bec": "fish_shadow_geo", - "16000c44": "fish_geo", - "16000c8c": "leaves_geo", - "16000ca4": "marios_cap_geo", - "16000cf0": "marios_metal_cap_geo", - "16000d3c": "marios_wing_cap_geo", - "16000da8": "marios_winged_metal_cap_geo", - "16000e14": "number_geo", - "16000e84": "mushroom_1up_geo", - "16000ea0": "star_geo", - "16000ed4": "dirt_animation_geo", - "16000f24": "cartoon_star_geo", - "16000f6c": "transparent_star_geo", - "16000f98": "white_particle_geo", - "16000fb4": "wooden_signpost_geo", - "16000fe8": "bubbly_tree_geo", - "16001000": "spiky_tree_geo", - "16001018": "snow_tree_geo", - "16001030": "spiky_tree1_geo", - "16001048": "palm_tree_geo", - "16001060": "_common1_geoSegmentEnd", - "00219e00": "_common1_geoSegmentRomEnd", - "007cc6c0": "__romPos", - "13000000": "_behaviorSegmentStart", - "00219e00": "_behaviorSegmentRomStart", - "13000000": "bhvStarDoor", - "13000054": "bhvMrI", - "1300008c": "bhvMrIBody", - "130000ac": "bhvMrIParticle", - "130000f8": "bhvPurpleParticle", - "13000118": "bhvGiantPole", - "13000144": "bhvPoleGrabbing", - "13000174": "bhvTHIHugeIslandTop", - "13000194": "bhvTHITinyIslandTop", - "130001ac": "bhvCapSwitchBase", - "130001cc": "bhvCapSwitch", - "130001f4": "bhvKingBobomb", - "13000254": "bhvBobombAnchorMario", - "13000278": "bhvBetaChestBottom", - "1300029c": "bhvBetaChestLid", - "130002b8": "bhvBubbleParticleSpawner", - "130002e4": "bhvBubbleMaybe", - "13000338": "bhvSmallWaterWave", - "13000398": "bhvSmallWaterWave398", - "130003bc": "bhvWaterAirBubble", - "13000400": "bhvSmallParticle", - "13000428": "bhvPlungeBubble", - "13000444": "bhvSmallParticleSnow", - "1300046c": "bhvSmallParticleBubbles", - "13000494": "bhvFishGroup", - "130004a8": "bhvCannon", - "130004e4": "bhvCannonBarrel", - "13000500": "bhvCannonBaseUnused", - "13000528": "bhvChuckya", - "13000584": "bhvChuckyaAnchorMario", - "130005a8": "bhvUnused05A8", - "130005b4": "bhvRotatingPlatform", - "130005d8": "bhvTower", - "13000600": "bhvBulletBillCannon", - "13000624": "bhvWFBreakableWallRight", - "13000638": "bhvWFBreakableWallLeft", - "1300066c": "bhvKickableBoard", - "130006a4": "bhvTowerDoor", - "130006d8": "bhvRotatingCounterClockwise", - "130006e0": "bhvWFRotatingWoodenPlatform", - "13000708": "bhvKoopaShellUnderwater", - "13000720": "bhvExitPodiumWarp", - "1300075c": "bhvFadingWarp", - "13000780": "bhvWarp", - "130007a0": "bhvWarpPipe", - "130007dc": "bhvWhitePuffExplosion", - "130007f8": "bhvSpawnedStar", - "1300080c": "bhvSpawnedStarNoLevelExit", - "13000830": "bhvSpawnedBlueCoin", - "13000888": "bhvCoinInsideBoo", - "130008d0": "bhvCoinFormationSpawn", - "130008ec": "bhvCoinFormation", - "1300090c": "bhvOneCoin", - "1300091c": "bhvYellowCoin", - "13000940": "bhvTemporaryYellowCoin", - "13000964": "bhvThreeCoinsSpawn", - "13000984": "bhvTenCoinsSpawn", - "130009a4": "bhvSingleCoinGetsSpawned", - "130009e0": "bhvCoinSparkles", - "13000a14": "bhvGoldenCoinSparkles", - "13000a34": "bhvWallTinyStarParticle", - "13000a54": "bhvVertStarParticleSpawner", - "13000a78": "bhvPoundTinyStarParticle", - "13000a98": "bhvHorStarParticleSpawner", - "13000abc": "bhvPunchTinyTriangle", - "13000ad8": "bhvTriangleParticleSpawner", - "13000afc": "bhvDoorWarp", - "13000b0c": "bhvDoor", - "13000b58": "bhvGrindel", - "13000b8c": "bhvThwomp", - "13000bc8": "bhvThwomp2", - "13000c04": "bhvTumblingBridgePlatform", - "13000c28": "bhvTumblingBridge", - "13000c44": "bhvBBHTumblingBridge", - "13000c64": "bhvLLLTumblingBridge", - "13000c84": "bhvFlame", - "13000cc8": "bhvAnotherElavator", - "13000cfc": "bhvRRElevatorPlatform", - "13000d30": "bhvHMCElevatorPlatform", - "13000d6c": "bhvWaterMist", - "13000d98": "bhvBreathParticleSpawner", - "13000db4": "bhvBreakBoxTriangle", - "13000dd8": "bhvWaterMist2", - "13000dfc": "bhvUnused0DFC", - "13000e24": "bhvMistCircParticleSpawner", - "13000e3c": "bhvDirtParticleSpawner", - "13000e58": "bhvSnowParticleSpawner", - "13000e70": "bhvWind", - "13000e88": "bhvEndToad", - "13000eac": "bhvEndPeach", - "13000ed0": "bhvUnusedParticleSpawn", - "13000f08": "bhvUkiki", - "13000f14": "bhvUkikiCageChild", - "13000f2c": "bhvUkikiCageStar", - "13000f48": "bhvUkikiCage", - "13000f9c": "bhvBitFSSinkingPlatforms", - "13000fc8": "bhvBitFSSinkingCagePlatform", - "13001000": "bhvDDDMovingPole", - "13001030": "bhvBitFSTiltingInvertedPyramid", - "13001064": "bhvSquishablePlatform", - "13001098": "bhvCutOutObject", - "130010a8": "bhvBetaMovingFlamesSpawn", - "130010b8": "bhvBetaMovingFlames", - "130010d8": "bhvRRRotatingBridgePlatform", - "13001108": "bhvFlamethrower", - "13001124": "bhvFlamethrowerFlame", - "13001168": "bhvBouncingFireball", - "13001184": "bhvBouncingFireballFlame", - "130011d0": "bhvBowserShockWave", - "130011ec": "bhvFireParticleSpawner", - "13001214": "bhvBlackSmokeMario", - "13001254": "bhvBlackSmokeBowser", - "1300127c": "bhvBlackSmokeUpward", - "13001298": "bhvBetaFishSplashSpawner", - "130012b4": "bhvSpindrift", - "130012f4": "bhvTowerPlatformGroup", - "13001318": "bhvWFSlidingTowerPlatform", - "13001340": "bhvWFElevatorTowerPlatform", - "13001368": "bhvWFSolidTowerPlatform", - "13001390": "bhvLeafParticleSpawner", - "130013a8": "bhvTreeSnow", - "130013c4": "bhvTreeLeaf", - "130013dc": "bhvAnotherTiltingPlatform", - "13001408": "bhvSquarishPathMoving", - "1300142c": "bhvPiranhaPlantBubble", - "13001448": "bhvPiranhaPlantWakingBubbles", - "13001468": "bhvFloorSwitchAnimatesObject", - "13001478": "bhvFloorSwitchGrills", - "13001484": "bhvFloorSwitchHardcodedModel", - "130014ac": "bhvFloorSwitchHiddenObjects", - "130014bc": "bhvHiddenObject", - "130014e0": "bhvBreakableBox", - "13001518": "bhvPushableMetalBox", - "13001548": "bhvHeaveHo", - "130015a4": "bhvHeaveHoThrowMario", - "130015c0": "bhvCCMTouchedStarSpawn", - "130015e4": "bhvUnusedPoundablePlatform", - "13001608": "bhvBetaTrampolineTop", - "13001634": "bhvBetaTrampolineSpring", - "13001650": "bhvJumpingBox", - "1300167c": "bhvBooCage", - "130016ac": "bhvStub", - "130016b8": "bhvIgloo", - "130016e4": "bhvBowserKey", - "13001714": "bhvGrandStar", - "13001744": "bhvBetaBooKey", - "13001778": "bhvAlphaBooKey", - "1300179c": "bhvBulletBill", - "130017f4": "bhvWhitePuffSmoke", - "13001820": "bhvUnused1820", - "13001828": "bhvBowserTailAnchor", - "13001850": "bhvBowser", - "130018cc": "bhvBowserBodyAnchor", - "13001904": "bhvBowserFlameSpawn", - "13001920": "bhvTiltingBowserLavaPlatform", - "13001958": "bhvFallingBowserPlatform", - "13001984": "bhvBlueBowserFlame", - "130019c8": "bhvFlameFloatingLanding", - "13001a0c": "bhvBlueFlamesGroup", - "13001a30": "bhvFlameBouncing", - "13001a74": "bhvFlameMovingForwardGrowing", - "13001aa4": "bhvFlameBowser", - "13001ae8": "bhvFlameLargeBurningOut", - "13001b2c": "bhvBlueFish", - "13001b54": "bhvTankFishGroup", - "13001b70": "bhvCheckerboardElevatorGroup", - "13001b88": "bhvCheckerboardPlatformSub", - "13001bb4": "bhvBowserKeyUnlockDoor", - "13001bd4": "bhvBowserKeyCourseExit", - "13001bf4": "bhvInvisibleObjectsUnderBridge", - "13001c04": "bhvWaterLevelPillar", - "13001c34": "bhvDDDWarp", - "13001c58": "bhvMoatGrills", - "13001c7c": "bhvClockMinuteHand", - "13001c8c": "bhvClockHourHand", - "13001cb0": "bhvMacroUkiki", - "13001d0c": "bhvStub1D0C", - "13001d14": "bhvLLLRotatingHexagonalPlatform", - "13001d40": "bhvLLLSinkingRockBlock", - "13001d70": "bhvStub1D70", - "13001d78": "bhvLLLMovingOctagonalMeshPlatform", - "13001da4": "bhvSnowBall", - "13001da8": "bhvLLLRotatingBlockWithFireBars", - "13001dcc": "bhvLLLRotatingHexFlame", - "13001e04": "bhvLLLWoodPiece", - "13001e30": "bhvLLLFloatingWoodBridge", - "13001e4c": "bhvVolcanoFlames", - "13001e6c": "bhvLLLRotatingHexagonalRing", - "13001e94": "bhvLLLSinkingRectangularPlatform", - "13001ec4": "bhvLLLSinkingSquarePlatforms", - "13001ef8": "bhvLLLTiltingInvertedPyramid", - "13001f30": "bhvUnused1F30", - "13001f3c": "bhvKoopaShell", - "13001f68": "bhvKoopaShellFlame", - "13001f90": "bhvToxBox", - "13001fbc": "bhvPiranhaPlant", - "13002018": "bhvLLLHexagonalMesh", - "13002038": "bhvLLLBowserPuzzlePiece", - "13002068": "bhvLLLBowserPuzzle", - "13002088": "bhvTuxiesMother", - "130020d8": "bhvPenguinBaby", - "130020e0": "bhvUnused20E0", - "130020e8": "bhvSmallPenguin", - "1300213c": "bhvManyBlueFishSpawner", - "1300214c": "bhvFewBlueFishSpawner", - "1300215c": "bhvFishSpawner", - "13002178": "bhvFish", - "13002194": "bhvWDWExpressElevator", - "130021c0": "bhvWDWExpressElevatorPlatform", - "130021e4": "bhvChirpChirp", - "130021f4": "bhvChirpChirpUnused", - "1300220c": "bhvBub", - "13002250": "bhvExclamationBox", - "1300227c": "bhvRotatingExclamationMark", - "1300229c": "bhvSoundSpawner", - "130022b8": "bhvRockSolid", - "130022d8": "bhvBowserSubDoor", - "13002308": "bhvBowsersSub", - "13002338": "bhvSushiShark", - "13002388": "bhvSushiSharkCollisionChild", - "130023a4": "bhvJRBSlidingBox", - "130023d0": "bhvShipPart3", - "130023ec": "bhvInSunkenShip3", - "1300241c": "bhvSunkenShipPart", - "1300243c": "bhvSunkenShipSetRotation", - "1300244c": "bhvSunkenShipPart2", - "1300246c": "bhvInSunkenShip", - "13002480": "bhvInSunkenShip2", - "130024ac": "bhvMistParticleSpawner", - "130024dc": "bhvWhitePuff1", - "13002500": "bhvWhitePuff2", - "13002528": "bhvWhitePuffSmoke2", - "13002558": "bhvPurpleSwitchHiddenBoxes", - "13002568": "bhvBlueCoinSwitch", - "13002588": "bhvHiddenBlueCoin", - "130025c0": "bhvOpenableCageDoor", - "130025e0": "bhvOpenableGrill", - "130025f8": "bhvWaterLevelDiamond", - "13002620": "bhvInitializeChangingWaterLevel", - "13002634": "bhvTweesterSandParticle", - "13002650": "bhvTweester", - "13002684": "bhvMerryGoRoundBooManager", - "1300269c": "bhvAnimatedTexture", - "130026d4": "bhvBooInCastle", - "13002710": "bhvBooWithCage", - "13002768": "bhvBalconyBigBoo", - "1300277c": "bhvMerryGoRoundBigBoo", - "13002790": "bhvGhostHuntBigBoo", - "130027d0": "bhvCourtyardBooTriplet", - "130027e4": "bhvBoo", - "130027f4": "bhvMerryGoRoundBoo", - "13002804": "bhvGhostHuntBoo", - "1300286c": "bhvHiddenStaircaseStep", - "13002898": "bhvBooStaircase", - "130028cc": "bhvBBHTiltingTrapPlatform", - "130028fc": "bhvHauntedBookshelf", - "1300292c": "bhvMeshElevator", - "13002968": "bhvMerryGoRound", - "13002998": "bhvPlaysMusicTrackWhenTouched", - "130029b0": "bhvInsideCannon", - "130029b4": "bhvBetaBowserAnchor", - "130029e4": "bhvStaticCheckeredPlatform", - "13002a10": "bhvUnused2A10", - "13002a20": "bhvUnusedFakeStar", - "13002a48": "bhvStaticObject", - "13002a54": "bhvUnused2A54", - "13002a5c": "bhvCastleFloorTrap", - "13002a7c": "bhvFloorTrapInCastle", - "13002aa4": "bhvTree", - "13002ad0": "bhvSparkle", - "13002af0": "bhvSparkleSpawn", - "13002b08": "bhvSparkleParticleSpawner", - "13002b5c": "bhvScuttlebug", - "13002ba0": "bhvScuttlebugSpawn", - "13002bb8": "bhvWhompKingBoss", - "13002bcc": "bhvSmallWhomp", - "13002c14": "bhvWaterSplash", - "13002c60": "bhvWaterDroplet", - "13002c7c": "bhvWaterDropletSplash", - "13002cb0": "bhvBubbleSplash", - "13002ce0": "bhvIdleWaterWave", - "13002d28": "bhvObjectWaterSplash", - "13002d50": "bhvShallowWaterWave", - "13002d7c": "bhvShallowWaterSplash", - "13002db0": "bhvObjectWaveTrail", - "13002dc0": "bhvWaveTrail", - "13002e04": "bhvTinyStrongWindParticle", - "13002e20": "bhvStrongWindParticle", - "13002e3c": "bhvSLSnowmanWind", - "13002e58": "bhvSLWalkingPenguin", - "13002ea8": "bhvYellowBall", - "13002ec0": "bhvMario", - "13002ef8": "bhvToadMessage", - "13002f40": "bhvUnlockDoorStar", - "13002f60": "bhvInstantActiveWarp", - "13002f64": "bhvAirborneWarp", - "13002f68": "bhvHardAirKnockBackWarp", - "13002f6c": "bhvSpinAirborneCircleWarp", - "13002f70": "bhvDeathWarp", - "13002f74": "bhvSpinAirborneWarp", - "13002f78": "bhvFlyingWarp", - "13002f7c": "bhvPaintingStarCollectWarp", - "13002f80": "bhvPaintingDeathWarp", - "13002f84": "bhvAirborneDeathWarp", - "13002f88": "bhvAirborneStarCollectWarp", - "13002f8c": "bhvLaunchStarCollectWarp", - "13002f90": "bhvLaunchDeathWarp", - "13002f94": "bhvSwimmingWarp", - "13002fa0": "bhvRandomAnimatedTexture", - "13002fc0": "bhvYellowBackgroundInMenu", - "13002fe4": "bhvMenuButton", - "13003008": "bhvMenuButtonManager", - "1300302c": "bhvActSelectorStarType", - "13003048": "bhvActSelector", - "13003068": "bhvMovingYellowCoin", - "130030a4": "bhvMovingBlueCoin", - "130030d4": "bhvBlueCoinSliding", - "13003104": "bhvBlueCoinJumping", - "13003134": "bhvSeaweed", - "13003158": "bhvSeaweedBundle", - "13003174": "bhvBobomb", - "130031ac": "bhvBobombFuseSmoke", - "130031dc": "bhvBobombBuddy", - "13003228": "bhvBobombBuddyOpensCannon", - "13003274": "bhvCannonClosed", - "130032a8": "bhvWhirlpool", - "130032c8": "bhvJetStream", - "130032e0": "bhvMessagePanel", - "13003324": "bhvSignOnWall", - "13003354": "bhvHomingAmp", - "13003388": "bhvCirclingAmp", - "130033bc": "bhvButterfly", - "130033ec": "bhvHoot", - "13003420": "bhvBetaHoldableObject", - "13003454": "bhvCarrySomething1", - "1300345c": "bhvCarrySomething2", - "13003464": "bhvCarrySomething3", - "1300346c": "bhvCarrySomething4", - "13003474": "bhvCarrySomething5", - "1300347c": "bhvCarrySomething6", - "13003484": "bhvObjectBubble", - "130034c4": "bhvObjectWaterWave", - "13003510": "bhvExplosion", - "13003558": "bhvBobombBullyDeathSmoke", - "13003588": "bhvSmoke", - "130035b0": "bhvBobombExplosionBubble", - "13003600": "bhvBobombExplosionBubble3600", - "13003614": "bhvRespawner", - "1300362c": "bhvSmallBully", - "13003660": "bhvBigBully", - "13003694": "bhvBigBullyWithMinions", - "130036c8": "bhvSmallChillBully", - "13003700": "bhvBigChillBully", - "13003738": "bhvJetStreamRingSpawner", - "13003750": "bhvJetStreamWaterRing", - "13003798": "bhvMantaRayWaterRing", - "130037e0": "bhvMantaRayRingManager", - "130037ec": "bhvBowserBomb", - "1300381c": "bhvBowserBombExplosion", - "13003840": "bhvBowserBombSmoke", - "13003868": "bhvCelebrationStar", - "13003888": "bhvCelebrationStarSparkle", - "130038b0": "bhvStarKeyCollectionPuffSpawner", - "130038d0": "bhvLLLDrawbridgeSpawner", - "130038e8": "bhvLLLDrawbridge", - "13003910": "bhvSmallBomp", - "13003940": "bhvLargeBomp", - "13003970": "bhvWFSlidingPlatform", - "130039a0": "bhvMoneybag", - "130039d4": "bhvMoneybagHidden", - "13003a08": "bhvPitBowlingBall", - "13003a30": "bhvFreeBowlingBall", - "13003a58": "bhvBowlingBall", - "13003a80": "bhvTTMBowlingBallSpawner", - "13003aa4": "bhvBoBBowlingBallSpawner", - "13003ac8": "bhvTHIBowlingBallSpawner", - "13003ae0": "bhvRRCruiserWing", - "13003b00": "bhvSpindel", - "13003b30": "bhvSSLMovingPyramidWall", - "13003b60": "bhvPyramidElevator", - "13003b98": "bhvPyramidElevatorTrajectoryMarkerBall", - "13003bb4": "bhvPyramidTop", - "13003bec": "bhvPyramidTopFragment", - "13003c0c": "bhvPyramidPillarTouchDetector", - "13003c30": "bhvWaterfallSoundLoop", - "13003c44": "bhvVolcanoSoundLoop", - "13003c58": "bhvCastleFlagWaving", - "13003c7c": "bhvBirdsSoundLoop", - "13003c90": "bhvAmbientSounds", - "13003ca4": "bhvSandSoundLoop", - "13003cb8": "bhvHiddenAt120Stars", - "13003ce4": "bhvSnowmansBottom", - "13003d0c": "bhvSnowmansHead", - "13003d34": "bhvSnowmansBodyCheckpoint", - "13003d4c": "bhvBigSnowmanWhole", - "13003d74": "bhvBigBoulder", - "13003da0": "bhvBigBoulderGenerator", - "13003db8": "bhvWingCap", - "13003dd8": "bhvMetalCap", - "13003df8": "bhvNormalCap", - "13003e1c": "bhvVanishCap", - "13003e3c": "bhvStar", - "13003e64": "bhvStarSpawnCoordinates", - "13003e8c": "bhvHiddenRedCoinStar", - "13003eac": "bhvRedCoin", - "13003ee4": "bhvBowserCourseRedCoinStar", - "13003efc": "bhvHiddenStar", - "13003f1c": "bhvHiddenStarTrigger", - "13003f40": "bhvTTMRollingLog", - "13003f78": "bhvLLLVolcanoFallingTrap", - "13003fa4": "bhvLLLRollingLog", - "13003fdc": "bhv1UpWalking", - "13004010": "bhv1UpRunningAway", - "13004044": "bhv1UpSliding", - "1300407c": "bhv1Up", - "130040b4": "bhv1UpJumpOnApproach", - "130040ec": "bhvHidden1Up", - "13004124": "bhvHidden1UpTrigger", - "13004148": "bhvHidden1UpInPole", - "13004180": "bhvHidden1UpInPoleTrigger", - "130041a4": "bhvHidden1UpInPoleSpawner", - "130041bc": "bhvControllablePlatform", - "130041f0": "bhvControllablePlatformSub", - "13004218": "bhvBreakableBoxSmall", - "13004244": "bhvSlidingSnowMound", - "13004270": "bhvSnowMoundSpawn", - "13004284": "bhvWDWSquareFloatingPlatform", - "130042b4": "bhvWDWRectangularFloatingPlatform", - "130042e4": "bhvJRBFloatingPlatform", - "13004314": "bhvArrowLift", - "13004348": "bhvOrangeNumber", - "13004370": "bhvMantaRay", - "130043a0": "bhvFallingPillar", - "130043c4": "bhvFallingPillarHitbox", - "130043e0": "bhvPillarBase", - "13004400": "bhvJRBFloatingBox", - "1300442c": "bhvDecorativePendulum", - "1300444c": "bhvTreasureChestsShip", - "13004470": "bhvTreasureChestsJRB", - "13004494": "bhvTreasureChestsDDD", - "130044b8": "bhvTreasureChestBottom", - "130044e0": "bhvTreasureChestTop", - "130044fc": "bhvMips", - "13004538": "bhvYoshi", - "13004580": "bhvKoopa", - "130045d0": "bhvKoopaRaceEndpoint", - "130045f8": "bhvKoopaFlag", - "13004634": "bhvPokey", - "13004668": "bhvPokeyBodyPart", - "13004698": "bhvSwoop", - "130046dc": "bhvFlyGuy", - "1300472c": "bhvGoomba", - "13004770": "bhvGoombaTripletSpawner", - "1300478c": "bhvChainChomp", - "130047e4": "bhvChainChompChainPart", - "1300481c": "bhvWoodenPost", - "13004868": "bhvChainChompGate", - "13004898": "bhvWigglerHead", - "130048e0": "bhvWigglerBody", - "13004918": "bhvEnemyLakitu", - "13004954": "bhvCameraLakitu", - "13004988": "bhvCloud", - "130049ac": "bhvCloudPart", - "130049c8": "bhvSpiny", - "13004a00": "bhvMontyMole", - "13004a58": "bhvMontyMoleHole", - "13004a78": "bhvMontyMoleRock", - "13004ab0": "bhvPlatformOnTrack", - "13004af4": "bhvTrackBall", - "13004b1c": "bhvSeesawPlatform", - "13004b44": "bhvFerrisWheelAxle", - "13004b6c": "bhvFerrisWheelPlatform", - "13004b8c": "bhvWaterBombSpawner", - "13004ba8": "bhvWaterBomb", - "13004bd4": "bhvWaterBombShadow", - "13004bf0": "bhvTTCRotatingSolid", - "13004c24": "bhvTTCPendulum", - "13004c5c": "bhvTTCTreadmill", - "13004c94": "bhvTTCMovingBar", - "13004ccc": "bhvTTCCog", - "13004cf8": "bhvTTCPitBlock", - "13004d28": "bhvTTCElevator", - "13004d64": "bhvTTC2DRotator", - "13004d90": "bhvTTCSpinner", - "13004dbc": "bhvMrBlizzard", - "13004e08": "bhvMrBlizzardSnowball", - "13004e4c": "bhvSlidingPlatform2", - "13004e78": "bhvOctagonalPlatformRotating", - "13004ea0": "bhvAnimatesOnFloorSwitchPress", - "13004ecc": "bhvActivatedBackAndForthPlatform", - "13004ef8": "bhvRecoveryHeart", - "13004f10": "bhvWaterBombCannon", - "13004f28": "bhvCannonBarrelBubbles", - "13004f40": "bhvUnagi", - "13004f78": "bhvUnagiSubobject", - "13004f90": "bhvDorrie", - "13004fd4": "bhvHauntedChair", - "13005024": "bhvMadPiano", - "1300506c": "bhvFlyingBookend", - "130050b4": "bhvBookendSpawn", - "130050d4": "bhvHauntedBookshelfManager", - "130050f4": "bhvBookSwitch", - "13005120": "bhvFirePiranhaPlant", - "13005158": "bhvSmallPiranhaFlame", - "1300518c": "bhvFireSpitter", - "130051ac": "bhvFlyguyFlame", - "130051e0": "bhvSnufit", - "1300521c": "bhvSnufitBalls", - "1300525c": "bhvHorizontalGrindel", - "130052b4": "bhvEyerokBoss", - "130052d0": "bhvEyerokHand", - "13005310": "bhvKlepto", - "13005354": "bhvBird", - "13005380": "bhvRacingPenguin", - "130053c4": "bhvPenguinRaceFinishLine", - "130053dc": "bhvPenguinRaceShortcutCheck", - "130053f4": "bhvCoffinSpawner", - "13005414": "bhvCoffin", - "13005440": "bhvClamShell", - "13005468": "bhvSkeeter", - "130054a0": "bhvSkeeterWave", - "130054b8": "bhvSwingPlatform", - "130054ec": "bhvDonutPlatformSpawner", - "13005504": "bhvDonutPlatform", - "13005528": "bhvDDDPole", - "1300556c": "bhvRedCoinStarMarker", - "13005598": "bhvTripletButterfly", - "130055dc": "bhvBubba", - "13005610": "bhvBeginningLakitu", - "13005638": "bhvBeginningPeach", - "1300565c": "bhvEndBirds1", - "13005680": "bhvEndBirds2", - "130056a4": "bhvIntroScene", - "130056c0": "_behaviorSegmentEnd", - "0021f4c0": "_behaviorSegmentRomEnd", - "007cc6c0": "__romPos", - "8016f000": "_goddardSegmentStart", - "0021f4c0": "_goddardSegmentRomStart", + "80000000": ["EXCEPTION_TLB_MISS"], + "a4000000": ["SP_DMEM"], + "a40004c0": ["SP_DMEM_UNK0"], + "a4000774": ["SP_DMEM_UNK1"], + "a4001000": ["SP_IMEM"], + "a4040010": ["SP_STATUS_REG"], + "a4080000": ["SP_PC"], + "0400049c": ["D_CN_0400049C"], + "0400074c": ["D_CN_0400074C"], + "a4300000": ["MI_MODE_REG"], + "a4300004": ["MI_VERSION_REG"], + "a4300008": ["MI_INTR_REG"], + "a430000c": ["MI_INTR_MASK_REG"], + "a4400010": ["VI_CURRENT_REG"], + "a450000c": ["AI_STATUS_REG"], + "a4600000": ["PI_DRAM_ADDR_REG"], + "a4600004": ["PI_CART_ADDR_REG"], + "a460000c": ["PI_WR_LEN_REG"], + "a4600010": ["PI_STATUS_REG"], + "a4600014": ["PI_BSD_DOM1_LAT_REG"], + "a4600018": ["PI_BSD_DOM1_PWD_REG"], + "a460001c": ["PI_BSD_DOM1_PGS_REG"], + "a4600020": ["PI_BSD_DOM1_RLS_REG"], + "a4700000": ["RI_MODE_REG"], + "a4700010": ["RI_REFRESH_REG"], + "a4800018": ["SI_STATUS_REG"], + "b0000008": ["D_B0000008"], + "b0000010": ["D_B0000010"], + "b0000014": ["D_B0000014"], + "c0000000": ["D_C0000000"], + "c0000008": ["D_C0000008"], + "c000000c": ["D_C000000C"], + "8000035c": ["__osBbEepromAddress"], + "80000360": ["__osBbEepromSize"], + "80000364": ["__osBbFlashAddress"], + "80000368": ["__osBbFlashSize"], + "8000036c": ["__osBbSramAddress"], + "80000370": ["__osBbSramSize"], + "80000374": ["__osBbPakAddress"], + "80000384": ["__osBbPakSize"], + "80000388": ["__osBbIsBb"], + "8000038c": ["__osBbHackFlags"], + "007cc6c0": [ + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + "__romPos", + ], + "04000000": ["_bootSegmentStart", "_group0_mio0SegmentStart", "_binary_build_us_actors_group0_mio0_start"], + "00000000": ["_bootSegmentRomStart"], + "04000040": ["ipl3_entry"], + "04000b70": ["ipl3_font"], + "04001000": ["_bootSegmentEnd"], + "00001000": ["_bootSegmentRomEnd", "_mainSegmentRomStart"], + "80000400": [".", "_zbufferSegmentNoloadStart", "0x25800", "gZBuffer"], + "801c1000": [".", "_buffersSegmentNoloadStart", "0x85000", "gDecompressionHeap"], + "801ce000": ["gAudioHeap"], + "801ff200": ["gUnusedThread2Stack"], + "80200600": ["gIdleThreadStack"], + "80200e00": ["gThread3Stack"], + "80202e00": ["gThread4Stack"], + "80204e00": ["gThread5Stack"], + "80206e00": ["gGfxSPTaskYieldBuffer"], + "80207700": ["gSaveBuffer"], + "80207900": ["gGfxSPTaskStack"], + "80207d00": ["gGfxPools"], + "80220da0": ["gAudioGlobalsStartMarker"], + "80220db0": ["gSynthesisReverb"], + "80220e80": ["sAudioSynthesisPad"], + "80220ea0": ["gVolume"], + "80220ea2": ["gReverbDownsampleRate"], + "80220ea3": ["sReverbDownsampleRateLog"], + "80220ea8": ["gAudioSessionPool"], + "80220eb8": ["gAudioInitPool"], + "80220ec8": ["gNotesAndBuffersPool"], + "80220ed8": ["sAudioHeapPad"], + "80220ef8": ["gSeqAndBankPool"], + "80220f08": ["gPersistentCommonPool"], + "80220f18": ["gTemporaryCommonPool"], + "80220f28": ["gSeqLoadedPool"], + "802210f8": ["gBankLoadedPool"], + "802212c8": ["gUnusedLoadedPool"], + "80221498": ["sSessionPoolSplit"], + "802214a8": ["sSeqAndBankPoolSplit"], + "802214b0": ["sPersistentCommonPoolSplit"], + "802214c0": ["sTemporaryCommonPoolSplit"], + "802214d0": ["gBankLoadStatus"], + "80221510": ["gSeqLoadStatus"], + "80221610": ["gAudioUnusedBuffer"], + "80222610": ["gNotes"], + "80222618": ["gSequencePlayers"], + "802229d8": ["gSequenceChannels"], + "802241d8": ["gSequenceLayers"], + "80225bd8": ["gSequenceChannelNone"], + "80225c98": ["gLayerFreeList"], + "80225ca8": ["gNoteFreeLists"], + "80225ce8": ["gCurrAudioFrameDmaQueue"], + "80225d00": ["gCurrAudioFrameDmaMesgBufs"], + "80225e00": ["gCurrAudioFrameDmaIoMesgBufs"], + "80226300": ["gAudioDmaMesgQueue"], + "80226318": ["gAudioDmaMesg"], + "80226320": ["gAudioDmaIoMesg"], + "80226338": ["sSampleDmas"], + "80226938": ["gSampleDmaNumListItems"], + "8022693c": ["sSampleDmaListSize1"], + "80226940": ["sUnused80226B40"], + "80226948": ["sSampleDmaReuseQueue1"], + "80226a48": ["sSampleDmaReuseQueue2"], + "80226b48": ["sSampleDmaReuseQueueTail1"], + "80226b49": ["sSampleDmaReuseQueueTail2"], + "80226b4a": ["sSampleDmaReuseQueueHead1"], + "80226b4b": ["sSampleDmaReuseQueueHead2"], + "80226b4c": ["gSeqFileHeader"], + "80226b50": ["gAlCtlHeader"], + "80226b54": ["gAlTbl"], + "80226b58": ["gAlBankSets"], + "80226b5c": ["gSequenceCount"], + "80226b60": ["gCtlEntries"], + "80226b64": ["gAiFrequency"], + "80226b68": ["sDmaBufSize"], + "80226b6c": ["gMaxAudioCmds"], + "80226b70": ["gMaxSimultaneousNotes"], + "80226b74": ["gSamplesPerFrameTarget"], + "80226b78": ["gMinAiBufferLength"], + "80226b7c": ["gTempoInternalToExternal"], + "80226b7e": ["gAudioUpdatesPerFrame"], + "80226b7f": ["gSoundMode"], + "80226b80": ["gAudioFrameCount"], + "80226b84": ["gCurrAudioFrameDmaCount"], + "80226b88": ["gAudioTaskIndex"], + "80226b8c": ["gCurrAiBufferIndex"], + "80226b90": ["gAudioCmdBuffers"], + "80226b98": ["gAudioCmd"], + "80226b9c": ["gAudioTask"], + "80226ba0": ["gAudioTasks"], + "80226c40": ["gAiBuffers"], + "80226c4c": ["gAiBufferLengths"], + "80226c58": ["gUnused80226E58"], + "80226c98": ["gUnused80226E98"], + "80226cb8": ["gAudioRandom"], + "80226cc0": ["gAudioGlobalsEndMarker"], + "80227000": [".", "gGfxSPTaskOutputBuffer"], + "80246000": ["_buffersSegmentNoloadEnd", "_mainSegmentStart", "entry_point"], + "80246050": ["handle_debug_key_sequences"], + "80246170": ["unknown_main_func"], + "802461cc": ["stub_main_1"], + "802461dc": ["stub_main_2"], + "802461ec": ["stub_main_3"], + "802461fc": ["setup_mesg_queues"], + "802462e0": ["alloc_pool"], + "80246338": ["create_thread"], + "8024639c": ["handle_nmi_request"], + "802463ec": ["receive_new_tasks"], + "8024651c": ["start_sptask"], + "8024659c": ["interrupt_gfx_sptask"], + "802465ec": ["start_gfx_sptask"], + "80246648": ["pretend_audio_sptask_done"], + "8024669c": ["handle_vblank"], + "802467fc": ["handle_sp_complete"], + "8024694c": ["handle_dp_complete"], + "802469b8": ["thread3_main"], + "80246b14": ["set_vblank_handler"], + "80246b74": ["send_sp_task_message"], + "80246bb4": ["dispatch_audio_sptask"], + "80246c10": ["exec_display_list"], + "80246c9c": ["turn_on_audio"], + "80246cb8": ["turn_off_audio"], + "80246cf0": ["thread1_idle"], + "80246df8": ["main_func"], + "80246e70": ["init_rdp"], + "802471a4": ["init_rsp"], + "80247284": ["init_z_buffer"], + "802473c8": ["select_framebuffer"], + "802474b8": ["clear_framebuffer"], + "80247620": ["clear_viewport"], + "8024784c": ["draw_screen_borders"], + "802479bc": ["make_viewport_clip_rect"], + "80247b3c": ["create_gfx_task_structure"], + "80247ccc": ["init_rcp"], + "80247d14": ["end_master_display_list"], + "80247db4": ["draw_reset_bars"], + "80247f08": ["render_init"], + "80247fdc": ["select_gfx_pool"], + "80248090": ["display_and_vsync"], + "80248304": ["adjust_analog_stick"], + "80248498": ["run_demo_inputs"], + "80248638": ["read_controller_inputs"], + "80248824": ["init_controllers"], + "80248964": ["setup_game_memory"], + "80248af0": ["thread5_game_loop"], + "80248c40": ["reset_volume"], + "80248c58": ["lower_background_noise"], + "80248ce8": ["raise_background_noise"], + "80248d78": ["disable_background_sound"], + "80248dc0": ["enable_background_sound"], + "80248e08": ["set_sound_mode"], + "80248e54": ["play_menu_sounds"], + "80248fec": ["play_painting_eject_sound"], + "80249070": ["play_infinite_stairs_music"], + "80249178": ["set_background_music"], + "8024922c": ["fadeout_music"], + "8024927c": ["fadeout_level_music"], + "802492d0": ["play_cutscene_music"], + "80249310": ["play_shell_music"], + "8024934c": ["stop_shell_music"], + "80249398": ["play_cap_music"], + "80249404": ["fadeout_cap_music"], + "80249448": ["stop_cap_music"], + "80249494": ["play_menu_sounds_extra"], + "802494d8": ["audio_game_loop_tick"], + "80249500": ["thread4_sound"], + "802495e0": ["level_control_timer"], + "802496b8": ["pressed_pause"], + "80249764": ["set_play_mode"], + "8024978c": ["warp_special"], + "802497b8": ["fade_into_special_warp"], + "8024982c": ["stub_level_update_1"], + "8024983c": ["load_level_init_text"], + "8024995c": ["init_door_warp"], + "80249a10": ["set_mario_initial_cap_powerup"], + "80249ab4": ["set_mario_initial_action"], + "80249cd8": ["init_mario_after_warp"], + "8024a124": ["warp_area"], + "8024a18c": ["warp_level"], + "8024a1d8": ["warp_credits"], + "8024a374": ["check_instant_warp"], + "8024a584": ["music_changed_through_warp"], + "8024a700": ["initiate_warp"], + "8024a7b4": ["get_painting_warp_node"], + "8024a85c": ["initiate_painting_warp"], + "8024a9cc": ["level_trigger_warp"], + "8024aedc": ["initiate_delayed_warp"], + "8024b13c": ["update_hud_values"], + "8024b390": ["basic_update"], + "8024b3e4": ["play_mode_normal"], + "8024b5d4": ["play_mode_paused"], + "8024b6cc": ["play_mode_frame_advance"], + "8024b798": ["level_set_transition"], + "8024b7c0": ["play_mode_change_area"], + "8024b880": ["play_mode_change_level"], + "8024b9b8": ["update_level"], + "8024ba8c": ["init_level"], + "8024bcd8": ["lvl_init_or_update"], + "8024bd5c": ["lvl_init_from_save_file"], + "8024be14": ["lvl_set_current_level"], + "8024bfa0": ["lvl_play_the_end_screen_sound"], + "8024bff0": ["get_mario_cap_flag"], + "8024c0b8": ["object_facing_mario"], + "8024c16c": ["mario_obj_angle_to_object"], + "8024c1d8": ["determine_interaction"], + "8024c51c": ["attack_object"], + "8024c618": ["mario_stop_riding_object"], + "8024c66c": ["mario_grab_used_object"], + "8024c6c0": ["mario_drop_held_object"], + "8024c780": ["mario_throw_held_object"], + "8024c894": ["mario_stop_riding_and_holding"], + "8024c8fc": ["does_mario_have_normal_cap_on_head"], + "8024c928": ["mario_blow_off_cap"], + "8024ca68": ["mario_lose_cap_to_enemy"], + "8024caf8": ["mario_retrieve_cap"], + "8024cb58": ["able_to_grab_object"], + "8024cbfc": ["mario_get_collided_object"], + "8024cc7c": ["mario_check_object_grab"], + "8024ce08": ["bully_knock_back_mario"], + "8024d0b4": ["bounce_off_object"], + "8024d130": ["hit_object_from_below"], + "8024d2bc": ["determine_knockback_action"], + "8024d578": ["push_mario_out_of_object"], + "8024d72c": ["bounce_back_from_attack"], + "8024d804": ["should_push_or_pull_door"], + "8024d8b0": ["take_damage_from_interact_object"], + "8024d998": ["take_damage_and_knock_back"], + "8024daac": ["reset_mario_pitch"], + "8024db2c": ["interact_coin"], + "8024dbf0": ["interact_water_ring"], + "8024dc28": ["interact_star_or_key"], + "8024de4c": ["interact_bbh_entrance"], + "8024df10": ["interact_warp"], + "8024e0c4": ["interact_warp_door"], + "8024e2fc": ["get_door_save_file_flag"], + "8024e420": ["interact_door"], + "8024e6ec": ["interact_cannon_base"], + "8024e778": ["interact_igloo_barrier"], + "8024e7d4": ["interact_tornado"], + "8024e8f0": ["interact_whirlpool"], + "8024e9d0": ["interact_strong_wind"], + "8024ead8": ["interact_flame"], + "8024ec54": ["interact_snufit_bullet"], + "8024ed84": ["interact_clam_or_bubba"], + "8024ee44": ["interact_bully"], + "8024eff8": ["interact_shock"], + "8024f170": ["interact_mr_blizzard"], + "8024f1e0": ["interact_hit_from_below"], + "8024f354": ["interact_bounce_top"], + "8024f4ac": ["interact_unknown_08"], + "8024f55c": ["interact_damage"], + "8024f5cc": ["interact_breakable"], + "8024f6a4": ["interact_koopa_shell"], + "8024f7a8": ["check_object_grab_mario"], + "8024f8bc": ["interact_pole"], + "8024fa60": ["interact_hoot"], + "8024fb30": ["interact_cap"], + "8024fd2c": ["interact_grabbable"], + "8024fe6c": ["mario_can_talk"], + "8024ff04": ["check_read_sign"], + "80250098": ["check_npc_talk"], + "80250198": ["interact_text"], + "80250230": ["check_kick_or_punch_wall"], + "802503f0": ["mario_process_interactions"], + "802505c8": ["check_death_barrier"], + "8025065c": ["check_lava_boost"], + "80250724": ["pss_begin_slide"], + "80250778": ["pss_end_slide"], + "802507fc": ["mario_handle_special_floors"], + "80250940": ["is_anim_at_end"], + "8025097c": ["is_anim_past_end"], + "802509b8": ["set_mario_animation"], + "80250b04": ["set_mario_anim_with_accel"], + "80250c7c": ["set_anim_to_frame"], + "80250d38": ["is_anim_past_frame"], + "80250e54": ["find_mario_anim_flags_and_translation"], + "80251020": ["update_mario_pos_for_anim"], + "802510dc": ["return_mario_anim_y_translation"], + "80251120": ["play_sound_if_no_flag"], + "8025118c": ["play_mario_jump_sound"], + "80251274": ["adjust_sound_for_speed"], + "80251310": ["play_sound_and_spawn_particles"], + "80251444": ["play_mario_action_sound"], + "802514ac": ["play_mario_landing_sound"], + "80251510": ["play_mario_landing_sound_once"], + "80251574": ["play_mario_heavy_landing_sound"], + "802515d8": ["play_mario_heavy_landing_sound_once"], + "8025163c": ["play_mario_sound"], + "80251708": ["mario_set_forward_vel"], + "8025177c": ["mario_get_floor_class"], + "802518a8": ["mario_get_terrain_sound_addend"], + "80251a48": ["resolve_and_return_wall_collisions"], + "80251afc": ["vec3f_find_ceil"], + "80251b54": ["mario_facing_downhill"], + "80251bd4": ["mario_floor_is_slippery"], + "80251cfc": ["mario_floor_is_slope"], + "80251e24": ["mario_floor_is_steep"], + "80251f24": ["find_floor_height_relative_polar"], + "80252000": ["find_floor_slope"], + "802521a0": ["update_mario_sound_and_camera"], + "8025229c": ["set_steep_jump_action"], + "80252cf4": ["set_mario_action"], + "80252e5c": ["set_jump_from_landing"], + "802530a0": ["set_jumping_action"], + "80253178": ["drop_and_set_mario_action"], + "802531c4": ["hurt_and_set_mario_action"], + "80253218": ["check_common_action_exits"], + "80253300": ["check_common_hold_action_exits"], + "802533e4": ["transition_submerged_to_walking"], + "80253488": ["set_water_plunge_action"], + "80253588": ["squish_mario_model"], + "80253720": ["debug_print_speed_action_normal"], + "80253838": ["update_mario_button_inputs"], + "8025395c": ["update_mario_joystick_inputs"], + "80253a60": ["update_mario_geometry_inputs"], + "80253d58": ["update_mario_inputs"], + "80253ec0": ["set_submerged_cam_preset_and_spawn_bubbles"], + "80254060": ["update_mario_health"], + "802542b4": ["update_mario_info_for_cam"], + "80254338": ["mario_reset_bodystate"], + "80254390": ["sink_mario_in_quicksand"], + "802543e8": ["update_and_return_cap_flags"], + "80254588": ["mario_update_hitbox_and_cap_model"], + "80254830": ["execute_mario_action"], + "80254b20": ["init_mario"], + "80254f44": ["init_mario_from_save_file"], + "80255080": ["get_additive_y_vel_for_jumps"], + "8025509c": ["stub_mario_step_1"], + "802550b0": ["stub_mario_step_2"], + "802550c0": ["transfer_bully_speed"], + "80255238": ["init_bully_collision_data"], + "802552fc": ["mario_bonk_reflection"], + "80255414": ["mario_update_quicksand"], + "80255654": ["mario_push_off_steep_floor"], + "8025570c": ["mario_update_moving_sand"], + "8025580c": ["mario_update_windy_ground"], + "802559b0": ["stop_and_set_height_to_floor"], + "80255a34": ["stationary_ground_step"], + "80255d88": ["perform_ground_step"], + "80255ec4": ["check_ledge_grab"], + "802560ac": ["perform_air_quarter_step"], + "802564e0": ["apply_twirl_gravity"], + "80256584": ["should_strengthen_gravity_for_jump_ascent"], + "8025661c": ["apply_gravity"], + "802569f8": ["apply_vertical_wind"], + "80256b24": ["perform_air_step"], + "80256cd8": ["set_vel_from_pitch_and_yaw"], + "80256d8c": ["set_vel_from_yaw"], + "80256e00": ["get_credits_str_width"], + "80256e88": ["print_displaying_credits_entry"], + "80257060": ["bhv_end_peach_loop"], + "802570dc": ["bhv_end_toad_loop"], + "80257198": ["geo_switch_peach_eyes"], + "802572b0": ["get_star_collection_dialog"], + "8025733c": ["handle_save_menu"], + "80257450": ["spawn_obj_at_mario_rel_yaw"], + "802574e8": ["cutscene_take_cap_off"], + "80257548": ["cutscene_put_cap_on"], + "802575a8": ["mario_ready_to_speak"], + "80257640": ["set_mario_npc_dialog"], + "80257748": ["act_reading_npc_dialog"], + "80257980": ["act_waiting_for_dialog"], + "80257a0c": ["act_disappeared"], + "80257ab0": ["act_reading_automatic_dialog"], + "80257ce4": ["act_reading_sign"], + "80257eac": ["act_debug_free_move"], + "80258184": ["general_star_dance_handler"], + "80258420": ["act_star_dance"], + "802584dc": ["act_star_dance_water"], + "802585c0": ["act_fall_after_star_grab"], + "802586cc": ["common_death_handler"], + "80258744": ["act_standing_death"], + "802587ec": ["act_electrocution"], + "8025883c": ["act_suffocation"], + "8025888c": ["act_death_on_back"], + "802588f8": ["act_death_on_stomach"], + "80258964": ["act_quicksand_death"], + "80258a7c": ["act_eaten_by_bubba"], + "80258b24": ["launch_mario_until_land"], + "80258ba8": ["act_unlocking_key_door"], + "80258dac": ["act_unlocking_star_door"], + "80258f94": ["act_entering_star_door"], + "80259264": ["act_going_through_door"], + "802593cc": ["act_warp_door_spawn"], + "802594d4": ["act_emerge_from_pipe"], + "80259608": ["act_spawn_spin_airborne"], + "80259740": ["act_spawn_spin_landing"], + "802597ac": ["act_exit_airborne"], + "80259854": ["act_falling_exit_airborne"], + "802598d0": ["act_exit_land_save_dialog"], + "80259c30": ["act_death_exit"], + "80259ce8": ["act_unused_death_exit"], + "80259d74": ["act_falling_death_exit"], + "80259e00": ["act_special_exit_airborne"], + "80259ef8": ["act_special_death_exit"], + "80259fcc": ["act_spawn_no_spin_airborne"], + "8025a040": ["act_spawn_no_spin_landing"], + "8025a0bc": ["act_bbh_enter_spin"], + "8025a494": ["act_bbh_enter_jump"], + "8025a610": ["act_teleport_fade_out"], + "8025a6fc": ["act_teleport_fade_in"], + "8025a858": ["act_shocked"], + "8025a9ac": ["act_squished"], + "8025ae0c": ["act_putting_on_cap"], + "8025aea8": ["stuck_in_ground_handler"], + "8025affc": ["act_head_stuck_in_ground"], + "8025b050": ["act_butt_stuck_in_ground"], + "8025b0a4": ["act_feet_stuck_in_ground"], + "8025bc80": ["generate_yellow_sparkles"], + "8025d798": ["mario_execute_cutscene_action"], + "8025dd70": ["add_tree_leaf_particles"], + "8025de1c": ["play_climbing_sounds"], + "8025df04": ["set_pole_position"], + "8025e21c": ["act_holding_pole"], + "8025e5a8": ["act_climbing_pole"], + "8025e7a4": ["act_grab_pole_slow"], + "8025e830": ["act_grab_pole_fast"], + "8025e930": ["act_top_of_pole_transition"], + "8025ea30": ["act_top_of_pole"], + "8025eb50": ["perform_hanging_step"], + "8025ecfc": ["update_hang_moving"], + "8025eed0": ["update_hang_stationary"], + "8025ef58": ["act_start_hanging"], + "8025f0b4": ["act_hanging"], + "8025f1e4": ["act_hang_moving"], + "8025f384": ["let_go_of_ledge"], + "8025f4b4": ["climb_up_ledge"], + "8025f560": ["update_ledge_climb_camera"], + "8025f644": ["update_ledge_climb"], + "8025f6c0": ["act_ledge_grab"], + "8025f970": ["act_ledge_climb_slow"], + "8025fa64": ["act_ledge_climb_down"], + "8025fae8": ["act_ledge_climb_fast"], + "8025fb90": ["act_grabbed"], + "8025fc6c": ["act_in_cannon"], + "80260154": ["act_tornado_twirling"], + "80260568": ["check_common_automatic_cancels"], + "802605d0": ["mario_execute_automatic_action"], + "802608b0": ["check_common_idle_cancels"], + "80260aac": ["check_common_hold_idle_cancels"], + "80260cb4": ["act_idle"], + "80260f94": ["play_anim_sound"], + "80261000": ["act_start_sleeping"], + "80261268": ["act_sleeping"], + "802614fc": ["act_waking_up"], + "8026168c": ["act_shivering"], + "802618d8": ["act_coughing"], + "802619d0": ["act_hold_idle"], + "80261ad0": ["act_hold_heavy_idle"], + "80261bf8": ["act_standing_against_wall"], + "80261cec": ["act_in_quicksand"], + "80261db4": ["act_crouching"], + "80261f70": ["act_panting"], + "80262080": ["act_hold_panting_unused"], + "8026217c": ["stopping_step"], + "802621dc": ["act_braking_stop"], + "802622dc": ["act_butt_slide_stop"], + "80262398": ["act_hold_butt_slide_stop"], + "80262490": ["act_slide_kick_slide_stop"], + "80262530": ["act_start_crouching"], + "80262650": ["act_stop_crouching"], + "80262770": ["act_start_crawling"], + "80262890": ["act_stop_crawling"], + "80262980": ["act_shockwave_bounce"], + "80262bc4": ["landing_step"], + "80262c34": ["check_common_landing_cancels"], + "80262d68": ["act_jump_land_stop"], + "80262dc4": ["act_double_jump_land_stop"], + "80262e20": ["act_side_flip_land_stop"], + "80262e94": ["act_freefall_land_stop"], + "80262ef0": ["act_triple_jump_land_stop"], + "80262f50": ["act_backflip_land_stop"], + "80262fec": ["act_lava_boost_land"], + "8026305c": ["act_long_jump_land_stop"], + "802630f8": ["act_hold_jump_land_stop"], + "802631f0": ["act_hold_freefall_land_stop"], + "802632e8": ["act_air_throw_land"], + "802633b4": ["act_twirl_land"], + "8026350c": ["act_ground_pound_land"], + "802635e8": ["act_first_person"], + "80263784": ["check_common_stationary_cancels"], + "80263898": ["mario_execute_stationary_action"], + "80263e60": ["tilt_body_running"], + "80263ee4": ["play_step_sound"], + "80264024": ["align_with_floor"], + "8026409c": ["begin_walking_action"], + "802640fc": ["check_ledge_climb_down"], + "802642b4": ["slide_bonk"], + "80264340": ["set_triple_jump_action"], + "8026440c": ["update_sliding_angle"], + "80264740": ["update_sliding"], + "80264b54": ["apply_slope_accel"], + "80264d80": ["apply_landing_accel"], + "80264e18": ["update_shell_speed"], + "80265080": ["apply_slope_decel"], + "802651b0": ["update_decelerating_speed"], + "80265244": ["update_walking_speed"], + "80265458": ["should_begin_sliding"], + "80265514": ["analog_stick_held_back"], + "80265558": ["check_ground_dive_or_punch"], + "80265620": ["begin_braking_action"], + "80265700": ["anim_and_audio_for_walk"], + "80265b1c": ["anim_and_audio_for_hold_walk"], + "80265d90": ["anim_and_audio_for_heavy_walk"], + "80265df8": ["push_or_sidle_wall"], + "80266038": ["tilt_body_walking"], + "802661cc": ["tilt_body_ground_shell"], + "80266354": ["act_walking"], + "802665b4": ["act_move_punching"], + "80266734": ["act_hold_walking"], + "8026699c": ["act_hold_heavy_walking"], + "80266af8": ["act_turning_around"], + "80266d4c": ["act_finish_turning_around"], + "80266e48": ["act_braking"], + "80266fc8": ["act_decelerating"], + "80267240": ["act_hold_decelerating"], + "80267504": ["act_riding_shell_ground"], + "80267728": ["act_crawling"], + "8026795c": ["act_burning_ground"], + "80267c24": ["tilt_body_butt_slide"], + "80267ce4": ["common_slide_action"], + "80267fa4": ["common_slide_action_with_jump"], + "80268074": ["act_butt_slide"], + "802680d4": ["act_hold_butt_slide"], + "80268168": ["act_crouch_slide"], + "80268338": ["act_slide_kick_slide"], + "802684ac": ["stomach_slide_action"], + "802685c0": ["act_stomach_slide"], + "80268608": ["act_hold_stomach_slide"], + "80268684": ["act_dive_slide"], + "802687b8": ["common_ground_knockback_action"], + "802689f8": ["act_hard_backward_ground_kb"], + "80268adc": ["act_hard_forward_ground_kb"], + "80268b64": ["act_backward_ground_kb"], + "80268bb0": ["act_forward_ground_kb"], + "80268bfc": ["act_soft_backward_ground_kb"], + "80268c48": ["act_soft_forward_ground_kb"], + "80268c94": ["act_ground_bonk"], + "80268d04": ["act_death_exit_land"], + "80268dcc": ["common_landing_action"], + "80268f78": ["common_landing_cancels"], + "80269108": ["act_jump_land"], + "80269170": ["act_freefall_land"], + "802691d8": ["act_side_flip_land"], + "80269264": ["act_hold_jump_land"], + "80269300": ["act_hold_freefall_land"], + "8026939c": ["act_long_jump_land"], + "8026947c": ["act_double_jump_land"], + "802694e4": ["act_triple_jump_land"], + "80269588": ["act_backflip_land"], + "80269640": ["quicksand_jump_land_action"], + "80269788": ["act_quicksand_jump_land"], + "802697dc": ["act_hold_quicksand_jump_land"], + "80269830": ["check_common_moving_cancels"], + "80269954": ["mario_execute_moving_action"], + "80269f40": ["play_flip_sounds"], + "80269fc0": ["play_far_fall_sound"], + "8026a090": ["play_knockback_sound"], + "8026a12c": ["lava_boost_on_wall"], + "8026a224": ["check_fall_damage"], + "8026a400": ["check_kick_or_dive_in_air"], + "8026a494": ["should_get_stuck_in_ground"], + "8026a598": ["check_fall_damage_or_get_stuck"], + "8026a62c": ["check_horizontal_wind"], + "8026a818": ["update_air_with_turn"], + "8026aa48": ["update_air_without_turn"], + "8026acd8": ["update_lava_boost_or_twirling"], + "8026ae5c": ["update_flying_yaw"], + "8026b004": ["update_flying_pitch"], + "8026b17c": ["update_flying"], + "8026b444": ["common_air_action_step"], + "8026b6a0": ["act_jump"], + "8026b740": ["act_double_jump"], + "8026b814": ["act_triple_jump"], + "8026b90c": ["act_backflip"], + "8026b9ac": ["act_freefall"], + "8026bab8": ["act_hold_jump"], + "8026bbb4": ["act_hold_freefall"], + "8026bcc0": ["act_side_flip"], + "8026bdcc": ["act_wall_kick_air"], + "8026be78": ["act_long_jump"], + "8026bf40": ["act_riding_shell_air"], + "8026c034": ["act_twirling"], + "8026c1e0": ["act_dive"], + "8026c4b8": ["act_air_throw"], + "8026c5d0": ["act_water_jump"], + "8026c738": ["act_hold_water_jump"], + "8026c880": ["act_steep_jump"], + "8026c9fc": ["act_ground_pound"], + "8026cd0c": ["act_burning_jump"], + "8026ce50": ["act_burning_fall"], + "8026cf28": ["act_crazy_box_bounce"], + "8026d1b0": ["common_air_knockback_step"], + "8026d33c": ["check_wall_kick"], + "8026d3c8": ["act_backward_air_kb"], + "8026d43c": ["act_forward_air_kb"], + "8026d4b0": ["act_hard_backward_air_kb"], + "8026d508": ["act_hard_forward_air_kb"], + "8026d560": ["act_thrown_backward"], + "8026d608": ["act_thrown_forward"], + "8026d6fc": ["act_soft_bonk"], + "8026d770": ["act_getting_blown"], + "8026d988": ["act_air_hit_wall"], + "8026db54": ["act_forward_rollout"], + "8026dcf4": ["act_backward_rollout"], + "8026de98": ["act_butt_slide_air"], + "8026e088": ["act_hold_butt_slide_air"], + "8026e2b4": ["act_lava_boost"], + "8026e59c": ["act_slide_kick"], + "8026e810": ["act_jump_kick"], + "8026e968": ["act_shot_from_cannon"], + "8026ec00": ["act_flying"], + "8026f158": ["act_riding_hoot"], + "8026f2ec": ["act_flying_triple_jump"], + "8026f614": ["act_top_of_pole_jump"], + "8026f660": ["act_vertical_wind"], + "8026f840": ["act_special_triple_jump"], + "8026fa18": ["check_common_airborne_cancels"], + "8026fb04": ["mario_execute_airborne_action"], + "8027499c": ["mario_execute_submerged_action"], + "80274eb0": ["animated_stationary_ground_step"], + "80274f10": ["mario_update_punch_sequence"], + "80275328": ["act_punching"], + "8027546c": ["act_picking_up"], + "802755fc": ["act_dive_picking_up"], + "802756c8": ["act_placing_down"], + "80275794": ["act_throwing"], + "802758c0": ["act_heavy_throw"], + "802759b4": ["act_stomach_slide_stop"], + "80275a80": ["act_picking_up_bowser"], + "80275b34": ["act_holding_bowser"], + "80275e78": ["act_releasing_bowser"], + "80275f0c": ["check_common_object_cancels"], + "80275fe0": ["mario_execute_object_action"], + "802761d0": ["geo_envfx_main"], + "802763d4": ["geo_skybox_main"], + "802764b0": ["geo_draw_mario_head_goddard"], + "8027684c": ["bhv_toad_message_loop"], + "80276910": ["bhv_toad_message_init"], + "80276bb8": ["bhv_unlock_door_star_init"], + "80276ccc": ["bhv_unlock_door_star_loop"], + "802770a4": ["geo_mirror_mario_set_alpha"], + "80277150": ["geo_switch_mario_stand_run"], + "802771bc": ["geo_switch_mario_eyes"], + "80277294": ["geo_mario_tilt_torso"], + "802773a4": ["geo_mario_head_rotation"], + "802774f4": ["geo_switch_mario_hand"], + "802775cc": ["geo_mario_hand_foot_scaler"], + "802776d8": ["geo_switch_mario_cap_effect"], + "80277740": ["geo_switch_mario_cap_on_off"], + "80277824": ["geo_mario_rotate_wing_cap_wings"], + "8027795c": ["geo_switch_mario_hand_grab_pos"], + "80277b14": ["geo_render_mirror_mario"], + "80277d6c": ["geo_mirror_mario_backface_culling"], + "80277ee0": ["set_segment_base_addr"], + "80277f20": ["get_segment_base_addr"], + "80277f50": ["segmented_to_virtual"], + "80277fa8": ["virtual_to_segmented"], + "80277ff0": ["move_segment_table_to_dmem"], + "80278074": ["main_pool_init"], + "80278120": ["main_pool_alloc"], + "80278238": ["main_pool_free"], + "80278358": ["main_pool_realloc"], + "802783c8": ["main_pool_available"], + "802783e8": ["main_pool_push_state"], + "80278498": ["main_pool_pop_state"], + "8027868c": ["load_segment"], + "802786f0": ["load_to_fixed_pool_addr"], + "802787d8": ["load_segment_decompress"], + "802788b4": ["load_segment_decompress_heap"], + "80278974": ["load_engine_code_segment"], + "80278a14": ["alloc_only_pool_init"], + "80278ab8": ["alloc_only_pool_alloc"], + "80278b28": ["alloc_only_pool_resize"], + "80278b98": ["mem_pool_init"], + "80278c58": ["mem_pool_alloc"], + "80278d74": ["mem_pool_free"], + "80278f2c": ["alloc_display_list"], + "80279028": ["setup_dma_table_list"], + "80279084": ["load_patchable_table"], + "80279840": ["save_file_do_save"], + "802798fc": ["save_file_erase"], + "80279960": ["save_file_copy"], + "802799dc": ["save_file_load_all"], + "80279bc8": ["save_file_reload"], + "80279c44": ["save_file_collect_star_or_key"], + "80279e44": ["save_file_exists"], + "80279e80": ["save_file_get_max_coin_score"], + "80279f80": ["save_file_get_course_star_count"], + "8027a010": ["save_file_get_total_star_count"], + "8027a0a8": ["save_file_set_flags"], + "8027a0f4": ["save_file_clear_flags"], + "8027a16c": ["save_file_get_flags"], + "8027a1c8": ["save_file_get_star_flags"], + "8027a23c": ["save_file_set_star_flags"], + "8027a310": ["save_file_get_course_coin_score"], + "8027a340": ["save_file_is_cannon_unlocked"], + "8027a390": ["save_file_set_cannon_unlocked"], + "8027a418": ["save_file_set_cap_pos"], + "8027a4ac": ["save_file_get_cap_pos"], + "8027a564": ["save_file_set_sound_mode"], + "8027a5b4": ["save_file_get_sound_mode"], + "8027a5d4": ["save_file_move_cap_to_default_location"], + "8027a698": ["disable_warp_checkpoint"], + "8027a6b0": ["check_if_should_set_warp_checkpoint"], + "8027a718": ["check_warp_checkpoint"], + "8027a7d0": ["override_viewport_and_clip"], + "8027a83c": ["set_warp_transition_rgb"], + "8027a8b0": ["print_intro_text"], + "8027a93c": ["get_mario_spawn_type"], + "8027a9c8": ["area_get_warp_node"], + "8027aa28": ["area_get_warp_node_from_params"], + "8027aa74": ["load_obj_warp_nodes"], + "8027ab04": ["clear_areas"], + "8027ad74": ["clear_area_graph_nodes"], + "8027ae44": ["load_area"], + "8027af48": ["unload_area"], + "8027afbc": ["load_mario_area"], + "8027b038": ["unload_mario_area"], + "8027b0c0": ["change_area"], + "8027b164": ["area_update_objects"], + "8027b1a0": ["play_transition"], + "8027b35c": ["play_transition_after_delay"], + "8027b3b4": ["render_game"], + "8027cf38": ["geo_set_animation_globals"], + "8027da84": ["geo_process_held_object"], + "8027de68": ["geo_try_process_children"], + "8027dea8": ["geo_process_node_and_siblings"], + "8027e130": ["geo_process_root"], + "8027e3e0": ["profiler_log_thread5_time"], + "8027e490": ["profiler_log_thread4_time"], + "8027e520": ["profiler_log_gfx_time"], + "8027e5cc": ["profiler_log_vblank_time"], + "8027e65c": ["draw_profiler_bar"], + "8027e958": ["draw_reference_profiler_bars"], + "8027ebcc": ["draw_profiler_mode_1"], + "8027eeac": ["draw_profiler_mode_0"], + "8027f460": ["draw_profiler"], + "8027f4e0": ["decompress"], + "8027f590": ["set_camera_shake_from_hit"], + "8027f8b8": ["set_environmental_camera_shake"], + "8027f9f0": ["set_camera_shake_from_point"], + "8027fb74": ["unused_set_camera_pitch_shake_env"], + "8027fc18": ["calc_y_to_curr_floor"], + "8027fe20": ["focus_on_mario"], + "8027fff8": ["set_camera_height"], + "80280368": ["look_down_slopes"], + "802804f4": ["pan_ahead_of_player"], + "802806a4": ["find_in_bounds_yaw_wdw_bob_thi"], + "80280810": ["update_radial_camera"], + "80280970": ["update_8_directions_camera"], + "80280b00": ["radial_camera_move"], + "80281188": ["lakitu_zoom"], + "802813bc": ["radial_camera_input_default"], + "802813ec": ["update_yaw_and_dist_from_c_up"], + "8028146c": ["mode_radial_camera"], + "80281588": ["mode_8_directions_camera"], + "802816a0": ["update_outward_radial_camera"], + "802817fc": ["mode_outward_radial_camera"], + "80281904": ["update_parallel_tracking_camera"], + "80282280": ["update_fixed_camera"], + "802826a0": ["update_boss_fight_camera"], + "80282c0c": ["unused_update_mode_5_camera"], + "80282c3c": ["mode_boss_fight_camera"], + "80282c7c": ["mode_parallel_tracking_camera"], + "80282ce0": ["mode_fixed_camera"], + "80282d78": ["update_behind_mario_camera"], + "80283340": ["mode_behind_mario"], + "80283578": ["update_slide_camera"], + "802839e4": ["mode_behind_mario_camera"], + "80283a18": ["nop_update_water_camera"], + "80283a34": ["mode_water_surface_camera"], + "80283a68": ["update_mario_camera"], + "80283af8": ["update_default_camera"], + "80284cb8": ["mode_default_camera"], + "80284cfc": ["mode_lakitu_camera"], + "80284d38": ["mode_mario_camera"], + "80284d74": ["update_spiral_stairs_camera"], + "802850ac": ["mode_spiral_stairs_camera"], + "802850ec": ["update_slide_or_0f_camera"], + "802851dc": ["mode_slide_camera"], + "8028526c": ["store_lakitu_cam_info_for_c_up"], + "802852f4": ["set_mode_c_up"], + "80285370": ["exit_c_up"], + "80285808": ["update_c_up"], + "802858a4": ["move_mario_head_c_up"], + "80285a2c": ["move_into_c_up"], + "80285d20": ["mode_c_up_camera"], + "80285ed8": ["update_in_cannon"], + "80285f60": ["mode_cannon_camera"], + "8028603c": ["transition_next_state"], + "80286088": ["transition_to_camera_mode"], + "80286188": ["set_camera_mode"], + "80286420": ["update_lakitu"], + "802868f8": ["update_camera"], + "80286f68": ["reset_camera"], + "8028724c": ["init_camera"], + "802879ec": ["zoom_out_if_paused_and_outside"], + "80287bc4": ["select_mario_cam_mode"], + "80287be0": ["create_camera"], + "80287cb8": ["update_graph_node_camera"], + "80287d30": ["geo_camera_main"], + "80287dc0": ["stub_camera_2"], + "80287dd4": ["stub_camera_3"], + "80287de8": ["vec3f_sub"], + "80287e28": ["object_pos_to_vec3f"], + "80287e50": ["vec3f_to_object_pos"], + "80287e78": ["unused_object_angle_to_vec3s"], + "80287ea0": ["evaluate_cubic_spline"], + "802882e4": ["move_point_along_spline"], + "80288624": ["cam_select_alt_mode"], + "80288718": ["set_cam_angle"], + "80288888": ["set_handheld_shake"], + "802889b0": ["shake_camera_handheld"], + "80288ce4": ["find_c_buttons_pressed"], + "80288e68": ["update_camera_hud_status"], + "80288f5c": ["collide_with_walls"], + "80289198": ["vec3f_compare"], + "80289214": ["clamp_pitch"], + "802892d8": ["is_within_100_units_of_mario"], + "8028935c": ["set_or_approach_f32_asymptotic"], + "802893f4": ["approach_f32_asymptotic_bool"], + "80289488": ["approach_f32_asymptotic"], + "802894b4": ["approach_s16_asymptotic_bool"], + "8028956c": ["approach_s16_asymptotic"], + "80289610": ["approach_vec3f_asymptotic"], + "80289684": ["set_or_approach_vec3f_asymptotic"], + "802896f8": ["approach_vec3s_asymptotic"], + "8028976c": ["camera_approach_s16_symmetric_bool"], + "8028984c": ["camera_approach_s16_symmetric"], + "8028993c": ["set_or_approach_s16_symmetric"], + "802899cc": ["camera_approach_f32_symmetric_bool"], + "80289b0c": ["camera_approach_f32_symmetric"], + "80289c00": ["random_vec3s"], + "80289d20": ["reduce_by_dist_from_camera"], + "80289f88": ["clamp_positions_and_find_yaw"], + "8028a080": ["calc_avoid_yaw"], + "8028a0f4": ["is_surf_within_bounding_box"], + "8028a4ec": ["is_behind_surface"], + "8028a6bc": ["is_range_behind_surface"], + "8028a7ec": ["is_mario_behind_surface"], + "8028a834": ["scale_along_line"], + "8028a8e8": ["is_pos_in_bounds"], + "8028aa28": ["calculate_pitch"], + "8028aad8": ["calculate_yaw"], + "8028ab60": ["calculate_angles"], + "8028ac28": ["calc_abs_dist"], + "8028accc": ["calc_hor_dist"], + "8028ad4c": ["rotate_in_xz"], + "8028ae1c": ["rotate_in_yz"], + "8028aef0": ["set_camera_pitch_shake"], + "8028af4c": ["set_camera_yaw_shake"], + "8028b00c": ["set_camera_roll_shake"], + "8028b068": ["set_pitch_shake_from_point"], + "8028b11c": ["set_yaw_shake_from_point"], + "8028b1d0": ["increment_shake_offset"], + "8028b218": ["shake_camera_pitch"], + "8028b32c": ["shake_camera_yaw"], + "8028b438": ["shake_camera_roll"], + "8028b50c": ["offset_yaw_outward_radial"], + "8028b724": ["cutscene_intro_peach_play_message_music"], + "8028b754": ["cutscene_intro_peach_play_lakitu_flying_music"], + "8028b784": ["play_camera_buzz_if_cdown"], + "8028b7c4": ["play_camera_buzz_if_cbutton"], + "8028b804": ["play_camera_buzz_if_c_sideways"], + "8028b850": ["play_sound_cbutton_up"], + "8028b884": ["play_sound_cbutton_down"], + "8028b8b8": ["play_sound_cbutton_side"], + "8028b8ec": ["play_sound_button_change_blocked"], + "8028b920": ["play_sound_rbutton_changed"], + "8028b954": ["play_sound_if_cam_switched_to_lakitu_or_mario"], + "8028b9c4": ["radial_camera_input"], + "8028bd34": ["trigger_cutscene_dialog"], + "8028bd98": ["handle_c_button_movement"], + "8028c038": ["clear_cutscene_vars"], + "8028c13c": ["start_cutscene"], + "8028c18c": ["determine_dance_cutscene"], + "8028c26c": ["open_door_cutscene"], + "8028c2c8": ["get_cutscene_from_mario_status"], + "8028c7a0": ["warp_camera"], + "8028c8f0": ["approach_camera_height"], + "8028c9ac": ["stub_camera_4"], + "8028c9cc": ["set_focus_rel_mario"], + "8028cbf0": ["offset_rotated"], + "8028cd94": ["offset_rotated_coords"], + "8028cdec": ["determine_pushing_or_pulling_door"], + "8028ce24": ["next_lakitu_state"], + "8028d44c": ["set_camera_mode_fixed"], + "8028d5ac": ["set_camera_mode_8_directions"], + "8028d5fc": ["set_camera_mode_boss_fight"], + "8028d658": ["set_camera_mode_close_cam"], + "8028d698": ["set_camera_mode_radial"], + "8028d79c": ["parallel_tracking_init"], + "8028d888": ["set_fixed_cam_axis_sa_lobby"], + "8028d92c": ["check_blocking_area_processing"], + "8028da18": ["cam_rr_exit_building_side"], + "8028da50": ["cam_rr_exit_building_top"], + "8028daec": ["cam_rr_enter_building_window"], + "8028db38": ["cam_rr_enter_building"], + "8028dbb4": ["cam_rr_enter_building_side"], + "8028dbf4": ["cam_cotmc_exit_waterfall"], + "8028dc1c": ["cam_sl_snowman_head_8dir"], + "8028dc70": ["cam_sl_free_roam"], + "8028dca4": ["move_camera_through_floor_while_descending"], + "8028dd48": ["cam_hmc_enter_maze"], + "8028de2c": ["cam_hmc_elevator_black_hole"], + "8028de5c": ["cam_hmc_elevator_maze_emergency_exit"], + "8028de90": ["cam_hmc_elevator_lake"], + "8028dec4": ["cam_hmc_elevator_maze"], + "8028def8": ["cam_ssl_enter_pyramid_top"], + "8028df24": ["cam_ssl_pyramid_center"], + "8028df6c": ["cam_ssl_boss_room"], + "8028dfb4": ["cam_thi_move_cam_through_tunnel"], + "8028dfe8": ["cam_thi_look_through_tunnel"], + "8028e01c": ["cam_bob_tower"], + "8028e064": ["cam_bob_default_free_roam"], + "8028e098": ["cam_castle_hmc_start_pool_cutscene"], + "8028e0ec": ["cam_castle_lobby_entrance"], + "8028e164": ["cam_castle_look_upstairs"], + "8028e210": ["cam_castle_basement_look_downstairs"], + "8028e298": ["cam_castle_enter_lobby"], + "8028e300": ["cam_castle_enter_spiral_stairs"], + "8028e38c": ["cam_castle_close_mode"], + "8028e3b8": ["cam_castle_leave_lobby_sliding_door"], + "8028e3f0": ["cam_castle_enter_lobby_sliding_door"], + "8028e41c": ["cam_bbh_room_6"], + "8028e450": ["cam_bbh_fall_off_roof"], + "8028e47c": ["cam_bbh_fall_into_pool"], + "8028e524": ["cam_bbh_room_1"], + "8028e55c": ["cam_bbh_leave_front_door"], + "8028e594": ["cam_bbh_room_2_lower"], + "8028e5cc": ["cam_bbh_room_4"], + "8028e604": ["cam_bbh_room_8"], + "8028e63c": ["cam_bbh_room_5_library"], + "8028e674": ["cam_bbh_room_5_library_to_hidden_transition"], + "8028e6c4": ["cam_bbh_room_5_hidden_to_library_transition"], + "8028e714": ["cam_bbh_room_5_hidden"], + "8028e758": ["cam_bbh_room_3"], + "8028e790": ["cam_bbh_room_7_mr_i"], + "8028e7c8": ["cam_bbh_room_7_mr_i_to_coffins_transition"], + "8028e818": ["cam_bbh_room_7_coffins_to_mr_i_transition"], + "8028e868": ["cam_bbh_elevator_room_lower"], + "8028e8a0": ["cam_bbh_room_0_back_entrance"], + "8028e8cc": ["cam_bbh_elevator"], + "8028e930": ["cam_bbh_room_12_upper"], + "8028e974": ["cam_bbh_enter_front_door"], + "8028e9a0": ["cam_bbh_room_2_library"], + "8028e9d8": ["cam_bbh_room_2_library_to_trapdoor_transition"], + "8028ea28": ["cam_bbh_room_2_trapdoor"], + "8028ea60": ["cam_bbh_room_2_trapdoor_transition"], + "8028eab0": ["cam_bbh_room_9_attic"], + "8028eae8": ["cam_bbh_room_9_attic_transition"], + "8028eb38": ["cam_bbh_room_9_mr_i_transition"], + "8028eb88": ["cam_bbh_room_13_balcony"], + "8028ebc0": ["cam_bbh_room_0"], + "8028ec04": ["cam_ccm_enter_slide_shortcut"], + "8028ec2c": ["cam_ccm_leave_slide_shortcut"], + "8028ec58": ["surface_type_modes"], + "8028ed30": ["set_mode_if_not_set_by_surface"], + "8028ed98": ["surface_type_modes_thi"], + "8028eeb0": ["camera_course_processing"], + "8028f670": ["resolve_geometry_collisions"], + "8028f914": ["rotate_camera_around_walls"], + "8028fc9c": ["find_mario_floor_and_ceil"], + "8028fe24": ["start_object_cutscene"], + "8028fe58": ["start_object_cutscene_without_focus"], + "8028fe84": ["unused_dialog_cutscene_response"], + "8028ff04": ["cutscene_object_with_dialog"], + "8028ffc8": ["cutscene_object_without_dialog"], + "8029000c": ["cutscene_object"], + "80290098": ["update_camera_yaw"], + "802900e0": ["cutscene_reset_spline"], + "80290104": ["stop_cutscene_and_retrieve_stored_info"], + "80290168": ["cap_switch_save"], + "802901a4": ["init_spline_point"], + "802901fc": ["copy_spline_segment"], + "802903b8": ["cutscene_common_set_dialog_state"], + "802904a8": ["cutscene_intro_peach_start_letter_music"], + "802904e4": ["cutscene_intro_peach_start_flying_music"], + "8029051c": ["reset_pan_distance"], + "8029053c": ["player2_rotate_cam"], + "80290784": ["store_info_cannon"], + "802907f4": ["retrieve_info_cannon"], + "80290864": ["store_info_star"], + "802908e8": ["retrieve_info_star"], + "802909d0": ["pan_camera"], + "80290a5c": ["cutscene_shake_explosion"], + "80290abc": ["rotate_and_move_vec3f"], + "80290b54": ["set_flag_post_door"], + "80290ba4": ["cutscene_soften_music"], + "80290bd8": ["cutscene_unsoften_music"], + "80290c1c": ["cutscene_unused_start"], + "80290c30": ["cutscene_unused_loop"], + "80290c44": ["cutscene_ending_mario_fall_start"], + "80290c9c": ["cutscene_ending_mario_fall_focus_mario"], + "80290d90": ["cutscene_ending_mario_fall"], + "80290e00": ["cutscene_ending_mario_land_closeup"], + "80290e74": ["cutscene_ending_reset_spline"], + "80290eb0": ["cutscene_ending_fly_up_to_window"], + "80290f1c": ["cutscene_ending_stars_free_peach"], + "80290f8c": ["cutscene_ending_mario_land"], + "80291074": ["cutscene_ending_peach_appear_closeup"], + "80291108": ["cutscene_ending_peach_appears"], + "802911c8": ["cutscene_ending_peach_descends_start"], + "80291208": ["cutscene_ending_follow_peach_descent"], + "8029127c": ["cutscene_ending_peach_descent_lower_focus"], + "802912b8": ["cutscene_ending_peach_descent_back_to_mario"], + "80291354": ["cutscene_ending_peach_descends"], + "8029142c": ["cutscene_ending_mario_to_peach"], + "802914cc": ["cutscene_ending_look_up_at_castle"], + "80291514": ["cutscene_ending_peach_wakeup"], + "802915d4": ["cutscene_ending_dialog"], + "80291654": ["cutscene_ending_kiss_closeup"], + "802916b8": ["cutscene_ending_kiss_here_we_go"], + "80291774": ["cutscene_ending_kiss"], + "802917e4": ["cutscene_ending_look_at_sky"], + "8029184c": ["cutscene_ending_zoom_fov"], + "80291870": ["cutscene_ending_cake_for_mario"], + "80291924": ["cutscene_ending_stop"], + "80291964": ["cutscene_grand_star_start"], + "802919dc": ["cutscene_grand_star_front_of_mario"], + "80291ab4": ["cutscene_grand_star_mario_jump"], + "80291b18": ["cutscene_grand_star_accel_cvar2"], + "80291b68": ["cutscene_grand_star_approach_mario"], + "80291bf4": ["cutscene_grand_star_move_cvar2"], + "80291c3c": ["cutscene_grand_star_focus_mario"], + "80291cd0": ["cutscene_grand_star"], + "80291db0": ["cutscene_grand_star_fly_start"], + "80291e84": ["cutscene_grand_star_fly_move_to_mario"], + "80291f18": ["cutscene_grand_star_fly_mario_offscreen"], + "80292038": ["cutscene_grand_star_fly_app_cvars"], + "80292164": ["cutscene_grand_star_fly"], + "802921fc": ["focus_in_front_of_mario"], + "8029228c": ["cutscene_dance_move_to_mario"], + "80292324": ["cutscene_dance_rotate"], + "80292370": ["cutscene_dance_rotate_move_back"], + "802923b8": ["cutscene_dance_rotate_move_towards_mario"], + "80292414": ["cutscene_dance_default_focus_mario"], + "8029244c": ["cutscene_dance_rotate_focus_mario"], + "80292484": ["cutscene_dance_shake_fov"], + "802924b8": ["cutscene_dance_default_rotate"], + "80292628": ["star_dance_bound_yaw"], + "802926dc": ["cutscene_dance_closeup_start"], + "802927d0": ["cutscene_dance_closeup_focus_mario"], + "80292868": ["cutscene_dance_closeup_fly_above"], + "80292974": ["cutscene_dance_closeup_fly_closer"], + "80292a20": ["cutscene_dance_closeup_zoom"], + "80292a4c": ["cutscene_dance_closeup_shake_fov"], + "80292a80": ["cutscene_dance_closeup"], + "80292c00": ["cutscene_dance_fly_away_start"], + "80292d80": ["cutscene_dance_fly_away_approach_mario"], + "80292e2c": ["cutscene_dance_fly_away_focus_mario"], + "80292ec4": ["cutscene_pan_cvar9"], + "80292f40": ["cutscene_dance_fly_rotate_around_mario"], + "80292f98": ["cutscene_dance_fly_away_rotate_while_flying"], + "80292fe4": ["cutscene_dance_fly_away_shake_fov"], + "80293018": ["cutscene_dance_fly_away"], + "802930f0": ["cutscene_key_dance_jump_cvar"], + "80293164": ["cutscene_key_dance_jump_closeup"], + "802931c0": ["cutscene_key_dance_jump_lower_left"], + "80293220": ["cutscene_key_dance_jump_above"], + "8029328c": ["cutscene_key_dance_jump_last"], + "802932f4": ["cutscene_key_dance_shake_fov"], + "80293328": ["cutscene_key_dance_handheld_shake"], + "80293354": ["cutscene_key_dance_focus_mario"], + "8029338c": ["cutscene_key_dance"], + "80293488": ["cutscene_bowser_area_shake_fov"], + "802934b4": ["cutscene_bowser_area_start_bowser_walking"], + "802934d8": ["cutscene_bowser_arena_set_pos"], + "80293548": ["cutscene_bowser_arena_focus_sine"], + "802935e0": ["cutscene_bowser_arena_set_focus"], + "80293624": ["cutscene_bowser_arena_adjust_offsets"], + "8029369c": ["cutscene_bowser_arena_pan_left"], + "802936dc": ["cutscene_bowser_arena_mario_dialog"], + "80293708": ["cutscene_stop_dialog"], + "80293734": ["cutscene_bowser_arena_start"], + "802937e8": ["bowser_fight_intro_dialog"], + "8029386c": ["cutscene_bowser_arena_dialog"], + "802938c8": ["cutscene_bowser_arena_end"], + "80293944": ["cutscene_bowser_arena"], + "80293abc": ["cutscene_star_spawn_store_info"], + "80293ae8": ["cutscene_star_spawn_focus_star"], + "80293b70": ["cutscene_star_spawn_update_boss_fight"], + "80293bf4": ["cutscene_star_spawn_fly_back"], + "80293c2c": ["cutscene_star_spawn"], + "80293cb0": ["cutscene_star_spawn_back"], + "80293d5c": ["cutscene_star_spawn_end"], + "80293d90": ["cutscene_exit_waterfall_warp"], + "80293dd4": ["cutscene_exit_to_castle_grounds_focus_mario"], + "80293e7c": ["cutscene_exit_waterfall"], + "80293ed8": ["cutscene_exit_to_castle_grounds_end"], + "80293f2c": ["cutscene_exit_fall_to_castle_grounds_warp"], + "80293f70": ["cutscene_exit_fall_to_castle_grounds"], + "80293fcc": ["cutscene_red_coin_star_start"], + "80294024": ["cutscene_red_coin_star_focus_xz"], + "80294088": ["cutscene_red_coin_star_focus_y"], + "802940cc": ["cutscene_red_coin_star_look_up_at_star"], + "8029410c": ["cutscene_red_coin_star_warp"], + "802942cc": ["cutscene_red_coin_star_set_fov"], + "802942f0": ["cutscene_red_coin_star"], + "802943d4": ["cutscene_red_coin_star_end"], + "80294428": ["cutscene_goto_cvar_pos"], + "80294718": ["cutscene_prepare_cannon_start"], + "802947a4": ["cutscene_prepare_cannon_fly_to_cannon"], + "8029480c": ["cannon_approach_prev"], + "802948a0": ["cutscene_prepare_cannon_fly_back"], + "80294a14": ["cutscene_prepare_cannon"], + "80294a94": ["cutscene_prepare_cannon_end"], + "80294ae8": ["water_death_move_to_mario_side"], + "80294b78": ["death_goto_mario"], + "80294bb4": ["cutscene_death_standing_start"], + "80294c28": ["cutscene_death_standing_goto_mario"], + "80294c5c": ["cutscene_death_standing"], + "80294cc4": ["cutscene_death_stomach_start"], + "80294d48": ["cutscene_death_stomach_goto_mario"], + "80294db4": ["cutscene_death_stomach"], + "80294e24": ["cutscene_bbh_death_start"], + "80294ea8": ["cutscene_bbh_death_goto_mario"], + "80294ee8": ["cutscene_bbh_death"], + "80294f58": ["cutscene_quicksand_death_start"], + "80294f94": ["cutscene_quicksand_death_goto_mario"], + "80294fec": ["cutscene_quicksand_death"], + "802950b0": ["cutscene_suffocation_fly_away"], + "80295140": ["cutscene_suffocation_stay_above_gas"], + "802951f0": ["cutscene_suffocation_rotate"], + "80295270": ["cutscene_suffocation"], + "80295310": ["cutscene_enter_pool_start"], + "802953dc": ["cutscene_enter_pool_loop"], + "80295418": ["cutscene_enter_pool"], + "80295480": ["cutscene_pyramid_top_explode_start"], + "802954ec": ["cutscene_pyramid_top_explode_zoom_in"], + "80295518": ["cutscene_pyramid_top_explode_focus"], + "80295580": ["cutscene_pyramid_top_explode_warp"], + "80295670": ["cutscene_pyramid_top_explode_closeup"], + "80295740": ["cutscene_pyramid_top_explode_cam_shake"], + "8029576c": ["cutscene_pyramid_top_explode_warp_back"], + "802957c8": ["cutscene_pyramid_top_explode"], + "80295894": ["cutscene_pyramid_top_explode_end"], + "802958d4": ["cutscene_enter_pyramid_top_start"], + "80295930": ["cutscene_enter_pyramid_top"], + "80295a58": ["cutscene_dialog_start"], + "80295bf0": ["cutscene_dialog_move_mario_shoulder"], + "80295e24": ["cutscene_dialog_create_dialog_box"], + "80295e8c": ["cutscene_dialog"], + "80295fb0": ["cutscene_dialog_set_flag"], + "80295fd8": ["cutscene_dialog_end"], + "80296020": ["cutscene_read_message_start"], + "80296160": ["cutscene_read_message"], + "802962c8": ["cutscene_read_message_set_flag"], + "802962f0": ["cutscene_read_message_end"], + "80296318": ["cutscene_exit_succ_start"], + "802963b8": ["cutscene_non_painting_set_cam_pos"], + "8029652c": ["cutscene_non_painting_set_cam_focus"], + "8029665c": ["cutscene_exit_bowser_succ_focus_left"], + "8029669c": ["cutscene_exit_bowser_key_toss_shake"], + "802966e4": ["cutscene_exit_succ_shake_landing"], + "80296710": ["cutscene_exit_bowser_succ"], + "802967c4": ["cutscene_non_painting_end"], + "8029685c": ["cutscene_exit_non_painting_succ_override_cvar"], + "802968a0": ["cutscene_exit_non_painting_succ"], + "8029695c": ["cutscene_non_painting_death_start"], + "802969f8": ["cutscene_exit_bowser_death"], + "80296a64": ["cutscene_non_painting_death_override_offset"], + "80296b30": ["cutscene_non_painting_death"], + "80296bc8": ["cutscene_cap_switch_press_start"], + "80296c4c": ["cutscene_cap_switch_press_rotate_around_mario"], + "80296d60": ["cutscene_cap_switch_press_lower_cam"], + "80296da8": ["cutscene_cap_switch_press_approach_mario"], + "80296eb4": ["cutscene_cap_switch_press_pan_left"], + "80296f38": ["cutscene_cap_switch_press_create_dialog"], + "80296fa8": ["cutscene_cap_switch_press"], + "80297148": ["cutscene_unlock_key_door_start"], + "8029720c": ["cutscene_unlock_key_door_approach_mario"], + "80297290": ["cutscene_unlock_key_door_focus_lock"], + "802972ec": ["cutscene_unlock_key_door_stub"], + "80297300": ["cutscene_unlock_key_door_fly_back"], + "80297384": ["cutscene_unlock_key_door_fov_shake"], + "802973b0": ["cutscene_unlock_key_door"], + "80297464": ["intro_peach_move_camera_start_to_pipe"], + "80297560": ["peach_letter_text"], + "8029758c": ["play_sound_peach_reading_letter"], + "802975c4": ["cutscene_intro_peach_start_to_pipe_spline"], + "8029762c": ["cutscene_intro_peach_dialog"], + "802976bc": ["cutscene_intro_peach_follow_pipe_spline"], + "80297728": ["cutscene_intro_peach_clear_cutscene_status"], + "80297748": ["cutscene_intro_peach_zoom_fov"], + "80297784": ["cutscene_intro_peach_reset_spline"], + "802977c8": ["cutscene_intro_peach_handheld_shake_off"], + "802977f4": ["intro_pipe_exit_text"], + "80297820": ["play_sound_intro_turn_on_hud"], + "8029784c": ["cutscene_intro_peach_fly_to_pipe"], + "80297908": ["cutscene_intro_peach_mario_appears"], + "80297a38": ["cutscene_intro_peach_reset_fov"], + "80297a64": ["cutscene_intro_peach_letter"], + "80297b58": ["cutscene_end_waving_start"], + "80297b84": ["cutscene_end_waving"], + "80297c14": ["cutscene_credits_reset_spline"], + "80297c40": ["cutscene_credits"], + "802980dc": ["cutscene_sliding_doors_open_start"], + "8029819c": ["cutscene_sliding_doors_open_set_cvars"], + "80298218": ["cutscene_sliding_doors_go_under_doorway"], + "80298254": ["cutscene_sliding_doors_fly_back_up"], + "80298290": ["cutscene_sliding_doors_follow_mario"], + "802983b4": ["cutscene_sliding_doors_open"], + "80298458": ["cutscene_double_doors_end"], + "802984a0": ["cutscene_enter_painting_stub"], + "802984b4": ["cutscene_enter_painting"], + "802987b0": ["cutscene_exit_painting_start"], + "8029894c": ["cutscene_exit_painting_move_to_mario"], + "802989e8": ["cutscene_exit_painting_move_to_floor"], + "80298af8": ["cutscene_exit_painting"], + "80298ba0": ["cutscene_unused_exit_start"], + "80298c2c": ["cutscene_unused_exit_focus_mario"], + "80298ccc": ["cutscene_exit_painting_end"], + "80298d44": ["cutscene_enter_cannon_end"], + "80298d9c": ["cutscene_enter_cannon_raise"], + "80298fe8": ["cutscene_enter_cannon_start"], + "80299100": ["cutscene_door_start"], + "80299154": ["cutscene_door_fix_cam"], + "802991a8": ["cutscene_door_loop"], + "802991f0": ["cutscene_door_move_behind_mario"], + "802992cc": ["cutscene_door_follow_mario"], + "80299360": ["cutscene_door_end"], + "80299404": ["cutscene_door_mode"], + "802994e8": ["play_cutscene"], + "8029a2f8": ["cutscene_event"], + "8029a37c": ["cutscene_spawn_obj"], + "8029a3b4": ["set_fov_shake"], + "8029a41c": ["set_fov_shake_from_point"], + "8029a4d0": ["shake_camera_fov"], + "8029a5e8": ["set_fov_30"], + "8029a60c": ["approach_fov_20"], + "8029a64c": ["set_fov_45"], + "8029a670": ["set_fov_29"], + "8029a694": ["zoom_fov_30"], + "8029a6f4": ["fov_default"], + "8029a858": ["approach_fov_30"], + "8029a894": ["approach_fov_60"], + "8029a8d0": ["approach_fov_45"], + "8029a968": ["approach_fov_80"], + "8029a9a4": ["set_fov_bbh"], + "8029aa3c": ["geo_camera_fov"], + "8029ab94": ["set_fov_function"], + "8029abb0": ["cutscene_set_fov_shake_preset"], + "8029ac30": ["set_fov_shake_from_point_preset"], + "8029aef8": ["obj_rotate_towards_point"], + "8029af98": ["intro_peach_set_pos_and_opacity"], + "8029b08c": ["bhv_intro_peach_loop"], + "8029b28c": ["intro_lakitu_set_offset_from_camera"], + "8029b358": ["intro_lakitu_set_focus"], + "8029b3c8": ["intro_lakitu_set_pos_and_focus"], + "8029b49c": ["bhv_intro_lakitu_loop"], + "8029bde4": ["bhv_end_birds_1_loop"], + "8029bf64": ["bhv_end_birds_2_loop"], + "8029c0e4": ["spawn_child_obj_relative"], + "8029c254": ["bhv_intro_scene_loop"], + "8029c770": ["nop_change_course"], + "8029c780": ["copy_mario_state_to_object"], + "8029c9cc": ["spawn_particle"], + "8029ca58": ["bhv_mario_update"], + "8029cb34": ["update_objects_starting_at"], + "8029cbc8": ["update_objects_during_time_stop"], + "8029cd28": ["update_objects_in_list"], + "8029cd98": ["unload_deactivated_objects_in_list"], + "8029ce58": ["set_object_respawn_info_bits"], + "8029cedc": ["unload_objects_from_area"], + "8029cfb0": ["spawn_objects_from_info"], + "8029d1d8": ["stub_obj_list_processor_1"], + "8029d1e8": ["clear_objects"], + "8029d324": ["update_terrain_objects"], + "8029d374": ["update_non_terrain_objects"], + "8029d428": ["unload_deactivated_objects"], + "8029d690": ["update_objects"], + "8029d890": ["geo_update_projectile_pos_from_parent"], + "8029d924": ["geo_update_layer_transparency"], + "8029db48": ["geo_switch_anim_state"], + "8029dbd4": ["geo_switch_area"], + "8029dcd4": ["obj_update_pos_from_parent_transformation"], + "8029dda8": ["obj_apply_scale_to_matrix"], + "8029de80": ["create_transformation_from_matrices"], + "8029e1b0": ["obj_set_held_state"], + "8029e27c": ["lateral_dist_between_objects"], + "8029e2f8": ["dist_between_objects"], + "8029e398": ["cur_obj_forward_vel_approach_upward"], + "8029e3e8": ["approach_f32_signed"], + "8029e494": ["approach_f32_symmetric"], + "8029e530": ["approach_s16_symmetric"], + "8029e5ec": ["cur_obj_rotate_yaw_toward"], + "8029e694": ["obj_angle_to_object"], + "8029e714": ["obj_turn_toward_object"], + "8029e8bc": ["obj_set_parent_relative_pos"], + "8029e914": ["obj_set_pos"], + "8029e96c": ["obj_set_angle"], + "8029e9ac": ["spawn_object_abs_with_rot"], + "8029ea24": ["spawn_object_rel_with_rot"], + "8029eaac": ["spawn_obj_with_transform_flags"], + "8029eb04": ["spawn_water_droplet"], + "8029ed20": ["spawn_object_at_origin"], + "8029edcc": ["spawn_object"], + "8029ee24": ["try_to_spawn_object"], + "8029eeb8": ["spawn_object_with_scale"], + "8029ef64": ["spawn_object_relative"], + "8029effc": ["spawn_object_relative_with_scale"], + "8029f070": ["cur_obj_move_using_vel"], + "8029f0c8": ["obj_copy_graph_y_offset"], + "8029f0e0": ["obj_copy_pos_and_angle"], + "8029f120": ["obj_copy_pos"], + "8029f148": ["obj_copy_angle"], + "8029f188": ["obj_set_gfx_pos_from_pos"], + "8029f1b0": ["obj_init_animation"], + "8029f200": ["linear_mtxf_mul_vec3f"], + "8029f274": ["linear_mtxf_transpose_mul_vec3f"], + "8029f2ec": ["obj_apply_scale_to_transform"], + "8029f3a8": ["obj_copy_scale"], + "8029f3d0": ["obj_scale_xyz"], + "8029f404": ["obj_scale"], + "8029f430": ["cur_obj_scale"], + "8029f464": ["cur_obj_init_animation"], + "8029f4b4": ["cur_obj_init_animation_with_sound"], + "8029f514": ["cur_obj_init_animation_with_accel_and_sound"], + "8029f59c": ["obj_init_animation_with_sound"], + "8029f600": ["cur_obj_enable_rendering_and_become_tangible"], + "8029f620": ["cur_obj_enable_rendering"], + "8029f644": ["cur_obj_disable_rendering_and_become_intangible"], + "8029f66c": ["cur_obj_disable_rendering"], + "8029f694": ["cur_obj_unhide"], + "8029f6bc": ["cur_obj_hide"], + "8029f6e0": ["cur_obj_set_pos_relative"], + "8029f7d8": ["cur_obj_set_pos_relative_to_parent"], + "8029f820": ["cur_obj_enable_rendering_2"], + "8029f848": ["cur_obj_unused_init_on_floor"], + "8029f8ec": ["obj_set_face_angle_to_move_angle"], + "8029f914": ["get_object_list_from_behavior"], + "8029f95c": ["cur_obj_nearest_object_with_behavior"], + "8029f998": ["cur_obj_dist_to_nearest_object_with_behavior"], + "8029f9ec": ["cur_obj_find_nearest_object_with_behavior"], + "8029fb1c": ["find_unimportant_object"], + "8029fb68": ["count_unimportant_objects"], + "8029fbdc": ["count_objects_with_behavior"], + "8029fc9c": ["cur_obj_find_nearby_held_actor"], + "8029fdb4": ["cur_obj_change_action"], + "8029fe00": ["cur_obj_set_vel_from_mario_vel"], + "8029fe6c": ["cur_obj_reverse_animation"], + "8029fea4": ["cur_obj_extend_animation_if_at_end"], + "8029ff04": ["cur_obj_check_if_near_animation_end"], + "8029ffa4": ["cur_obj_check_if_at_animation_end"], + "802a0008": ["cur_obj_check_anim_frame"], + "802a0050": ["cur_obj_check_anim_frame_in_range"], + "802a00ac": ["cur_obj_check_frame_prior_current_frame"], + "802a0114": ["mario_is_in_air_action"], + "802a0154": ["mario_is_dive_sliding"], + "802a0198": ["cur_obj_set_y_vel_and_animation"], + "802a01d8": ["cur_obj_unrender_set_action_and_anim"], + "802a0380": ["cur_obj_get_thrown_or_placed"], + "802a0474": ["cur_obj_get_dropped"], + "802a04c0": ["cur_obj_set_model"], + "802a04f0": ["mario_set_flag"], + "802a0514": ["cur_obj_clear_interact_status_flag"], + "802a0568": ["obj_mark_for_deletion"], + "802a057c": ["cur_obj_disable"], + "802a05b4": ["cur_obj_become_intangible"], + "802a05d4": ["cur_obj_become_tangible"], + "802a05f0": ["obj_become_tangible"], + "802a0604": ["cur_obj_update_floor_height"], + "802a064c": ["cur_obj_update_floor_height_and_get_floor"], + "802a079c": ["cur_obj_apply_drag_xz"], + "802a0e68": ["cur_obj_move_y"], + "802a113c": ["cur_obj_unused_resolve_wall_collisions"], + "802a11a8": ["abs_angle_diff"], + "802a120c": ["cur_obj_move_xz_using_fvel_and_yaw"], + "802a12a4": ["cur_obj_move_y_with_terminal_vel"], + "802a1308": ["cur_obj_compute_vel_xz"], + "802a1370": ["increment_velocity_toward_range"], + "802a1424": ["obj_check_if_collided_with_object"], + "802a148c": ["cur_obj_set_behavior"], + "802a14c4": ["obj_set_behavior"], + "802a14fc": ["cur_obj_has_behavior"], + "802a1554": ["obj_has_behavior"], + "802a15ac": ["cur_obj_lateral_dist_from_mario_to_home"], + "802a1634": ["cur_obj_lateral_dist_to_home"], + "802a16ac": ["cur_obj_outside_home_square"], + "802a1774": ["cur_obj_outside_home_rectangle"], + "802a184c": ["cur_obj_set_pos_to_home"], + "802a188c": ["cur_obj_set_pos_to_home_and_stop"], + "802a18dc": ["cur_obj_shake_y"], + "802a1930": ["cur_obj_start_cam_event"], + "802a1960": ["set_mario_interact_true_if_in_range"], + "802a19ac": ["obj_set_billboard"], + "802a19c8": ["cur_obj_set_hitbox_radius_and_height"], + "802a19f0": ["cur_obj_set_hurtbox_radius_and_height"], + "802a1b34": ["obj_spawn_loot_blue_coins"], + "802a1b8c": ["obj_spawn_loot_yellow_coins"], + "802a1bdc": ["cur_obj_spawn_loot_coin_at_mario_pos"], + "802a1c68": ["cur_obj_abs_y_dist_to_home"], + "802a1cc4": ["cur_obj_advance_looping_anim"], + "802a1f3c": ["cur_obj_resolve_wall_collisions"], + "802a2320": ["cur_obj_update_floor_and_walls"], + "802a2348": ["cur_obj_move_standard"], + "802a25b4": ["cur_obj_move_using_vel_and_gravity"], + "802a2644": ["cur_obj_move_using_fvel_and_gravity"], + "802a2674": ["obj_set_pos_relative"], + "802a2748": ["cur_obj_angle_to_home"], + "802a27b0": ["obj_set_gfx_pos_at_obj_pos"], + "802a2804": ["obj_translate_local"], + "802a2930": ["obj_build_transform_from_pos_and_angle"], + "802a2a18": ["obj_set_throw_matrix_from_transform"], + "802a2a84": ["obj_build_transform_relative_to_parent"], + "802a2b28": ["obj_create_transform_from_self"], + "802a2b6c": ["cur_obj_rotate_move_angle_using_vel"], + "802a2bc4": ["cur_obj_rotate_face_angle_using_vel"], + "802a2c1c": ["cur_obj_set_face_angle_to_move_angle"], + "802a2c5c": ["cur_obj_follow_path"], + "802a2ed4": ["chain_segment_init"], + "802a2f14": ["random_f32_around_zero"], + "802a2f5c": ["obj_scale_random"], + "802a2fc0": ["obj_translate_xyz_random"], + "802a308c": ["obj_translate_xz_random"], + "802a31e0": ["cur_obj_set_pos_via_transform"], + "802a3268": ["cur_obj_reflect_move_angle_off_wall"], + "802a32ac": ["cur_obj_spawn_particles"], + "802a34a4": ["obj_set_hitbox"], + "802a3604": ["signum_positive"], + "802a3634": ["absf"], + "802a3674": ["absi"], + "802a36a4": ["cur_obj_wait_then_blink"], + "802a3754": ["cur_obj_is_mario_ground_pounding_platform"], + "802a37ac": ["spawn_mist_particles"], + "802a37dc": ["spawn_mist_particles_with_sound"], + "802a3818": ["cur_obj_push_mario_away"], + "802a390c": ["cur_obj_push_mario_away_from_cylinder"], + "802a399c": ["bhv_dust_smoke_loop"], + "802a3a4c": ["cur_obj_set_action_table"], + "802a3a88": ["cur_obj_progress_action_table"], + "802a3b28": ["stub_obj_helpers_3"], + "802a3b40": ["cur_obj_scale_over_time"], + "802a3c18": ["cur_obj_set_pos_to_home_with_debug"], + "802a3cec": ["stub_obj_helpers_4"], + "802a3cfc": ["cur_obj_is_mario_on_platform"], + "802a3d40": ["cur_obj_shake_y_until"], + "802a3dd4": ["jiggle_bbh_stair"], + "802a3e30": ["cur_obj_call_action_function"], + "802a3ef8": ["spawn_base_star_with_no_lvl_exit"], + "802a3f24": ["bit_shift_left"], + "802a3f48": ["cur_obj_mario_far_away"], + "802a404c": ["is_mario_moving_fast_or_in_air"], + "802a40b8": ["is_item_in_array"], + "802a4120": ["bhv_init_room"], + "802a4210": ["cur_obj_enable_rendering_if_mario_in_room"], + "802a4360": ["cur_obj_set_hitbox_and_die_if_attacked"], + "802a4440": ["obj_explode_and_spawn_coins"], + "802a44f4": ["obj_set_collision_data"], + "802a452c": ["cur_obj_if_hit_wall_bounce_away"], + "802a4564": ["cur_obj_hide_if_mario_far_away_y"], + "802a45e4": ["geo_offset_klepto_held_object"], + "802a462c": ["geo_offset_klepto_debug"], + "802a46cc": ["obj_is_hidden"], + "802a4704": ["enable_time_stop"], + "802a4728": ["disable_time_stop"], + "802a4750": ["set_time_stop_flags"], + "802a4774": ["clear_time_stop_flags"], + "802a47a0": ["cur_obj_can_mario_activate_textbox"], + "802a48bc": ["cur_obj_can_mario_activate_textbox_2"], + "802a4960": ["cur_obj_update_dialog"], + "802a4be4": ["cur_obj_update_dialog_with_cutscene"], + "802a4f04": ["cur_obj_has_model"], + "802a4f58": ["cur_obj_align_gfx_with_floor"], + "802a5034": ["mario_is_within_rectangle"], + "802a50fc": ["cur_obj_shake_screen"], + "802a513c": ["obj_attack_collided_from_other_object"], + "802a51ac": ["cur_obj_was_attacked_or_ground_pounded"], + "802a5228": ["obj_copy_behavior_params"], + "802a5248": ["cur_obj_init_animation_and_anim_frame"], + "802a5288": ["cur_obj_init_animation_and_check_if_near_end"], + "802a52c4": ["cur_obj_init_animation_and_extend_if_at_end"], + "802a52f8": ["cur_obj_check_grabbed_mario"], + "802a5358": ["player_performed_grab_escape_action"], + "802a540c": ["cur_obj_unused_play_footstep_sound"], + "802a5460": ["enable_time_stop_including_mario"], + "802a5498": ["disable_time_stop_including_mario"], + "802a54d8": ["cur_obj_check_interacted"], + "802a5524": ["cur_obj_spawn_loot_blue_coin"], + "802a5588": ["cur_obj_spawn_star_at_y_offset"], + "802a5620": ["star_door_update_pos"], + "802a56bc": ["bhv_star_door_loop"], + "802a58dc": ["bhv_piranha_particle_loop"], + "802a597c": ["mr_i_piranha_particle_act_0"], + "802a5a44": ["mr_i_piranha_particle_act_1"], + "802a5aa0": ["bhv_mr_i_particle_loop"], + "802a5acc": ["spawn_mr_i_particle"], + "802a5bd4": ["bhv_mr_i_body_loop"], + "802a5d4c": ["mr_i_act_3"], + "802a6518": ["mr_i_act_2"], + "802a68a0": ["mr_i_act_1"], + "802a6ad8": ["mr_i_act_0"], + "802a6b7c": ["bhv_mr_i_loop"], + "802a6c20": ["bhv_pole_init"], + "802a6c74": ["bhv_giant_pole_loop"], + "802a6cf4": ["bhv_thi_huge_island_top_loop"], + "802a6d64": ["bhv_thi_tiny_island_top_loop"], + "802a6ee4": ["cap_switch_act_0"], + "802a7020": ["cap_switch_act_1"], + "802a708c": ["cap_switch_act_2"], + "802a7160": ["cap_switch_act_3"], + "802a7170": ["bhv_cap_switch_loop"], + "802a719c": ["geo_update_held_mario_pos"], + "802a7230": ["bhv_bobomb_anchor_mario_loop"], + "802a7264": ["king_bobomb_act_0"], + "802a7384": ["mario_is_far_below_object"], + "802a73d8": ["king_bobomb_act_2"], + "802a7598": ["king_bobomb_act_3"], + "802a7804": ["king_bobomb_act_1"], + "802a78d8": ["king_bobomb_act_6"], + "802a7a60": ["king_bobomb_act_7"], + "802a7b1c": ["king_bobomb_act_8"], + "802a7b5c": ["king_bobomb_act_4"], + "802a7d14": ["king_bobomb_act_5"], + "802a7fbc": ["king_bobomb_move"], + "802a8064": ["bhv_king_bobomb_loop"], + "802a816c": ["bhv_beta_chest_bottom_init"], + "802a81e8": ["bhv_beta_chest_bottom_loop"], + "802a821c": ["bhv_beta_chest_lid_loop"], + "802a8370": ["bhv_water_air_bubble_init"], + "802a83a0": ["bhv_water_air_bubble_loop"], + "802a8630": ["bhv_bubble_wave_init"], + "802a86bc": ["scale_bubble_random"], + "802a870c": ["bhv_bubble_maybe_loop"], + "802a88a4": ["bhv_small_water_wave_loop"], + "802a8a38": ["scale_bubble_sin"], + "802a8b18": ["bhv_particle_init"], + "802a8bc0": ["bhv_particle_loop"], + "802a8c88": ["bhv_small_bubbles_loop"], + "802a8cdc": ["bhv_fish_group_loop"], + "802a8d48": ["bhv_water_waves_init"], + "802a8d98": ["bhv_cannon_base_unused_loop"], + "802a8dc0": ["opened_cannon_act_0"], + "802a8f40": ["opened_cannon_act_4"], + "802a9114": ["opened_cannon_act_6"], + "802a92fc": ["opened_cannon_act_5"], + "802a93f8": ["opened_cannon_act_1"], + "802a9440": ["opened_cannon_act_2"], + "802a9460": ["opened_cannon_act_3"], + "802a9498": ["bhv_cannon_base_loop"], + "802a94f8": ["bhv_cannon_barrel_loop"], + "802a958c": ["common_anchor_mario_behavior"], + "802a9708": ["bhv_chuckya_anchor_mario_loop"], + "802a973c": ["unknown_chuckya_function"], + "802a98c4": ["approach_forward_vel"], + "802a9994": ["chuckya_act_0"], + "802a9d08": ["chuckya_act_1"], + "802a9f54": ["chuckya_act_3"], + "802a9fc8": ["chuckya_act_2"], + "802aa02c": ["chuckya_move"], + "802aa0ac": ["bhv_chuckya_loop"], + "802aa1b8": ["bhv_wf_breakable_wall_loop"], + "802aa280": ["check_mario_attacking"], + "802aa3c8": ["init_kickable_board_rock"], + "802aa3f4": ["bhv_kickable_board_loop"], + "802aa700": ["bhv_tower_door_loop"], + "802aa774": ["bhv_wf_rotating_wooden_platform_loop"], + "802aa830": ["bhv_rotating_platform_loop"], + "802aa948": ["set_koopa_shell_underwater_hitbox"], + "802aa97c": ["bhv_koopa_shell_underwater_loop"], + "802aaa60": ["bhv_warp_loop"], + "802aab54": ["bhv_fading_warp_loop"], + "802aac48": ["bhv_white_puff_exploding_loop"], + "802aae8c": ["spawn_mist_particles_variable"], + "802aaf48": ["bhv_spawned_star_init"], + "802aaffc": ["set_sparkle_spawn_star_hitbox"], + "802ab060": ["set_home_to_mario"], + "802ab158": ["set_y_home_to_pos"], + "802ab18c": ["slow_star_rotation"], + "802ab1c8": ["bhv_spawned_star_loop"], + "802ab558": ["bhv_spawn_star_no_level_exit"], + "802ab5c8": ["bhv_coin_sparkles_init"], + "802ab650": ["bhv_yellow_coin_init"], + "802ab70c": ["bhv_yellow_coin_loop"], + "802ab748": ["bhv_temp_coin_loop"], + "802ab7a4": ["bhv_spawned_coin_init"], + "802ab860": ["bhv_spawned_coin_loop"], + "802aba40": ["bhv_coin_formation_spawn_loop"], + "802abc04": ["spawn_coin_in_formation"], + "802abee4": ["bhv_coin_formation_init"], + "802abf0c": ["bhv_coin_formation_loop"], + "802ac068": ["coin_inside_boo_act_1"], + "802ac15c": ["coin_inside_boo_act_0"], + "802ac294": ["bhv_coin_inside_boo_loop"], + "802ac2c0": ["bhv_coin_sparkles_loop"], + "802ac2ec": ["bhv_golden_coin_sparkles_loop"], + "802ac3a8": ["bhv_punch_tiny_triangle_loop"], + "802ac4a0": ["bhv_punch_tiny_triangle_init"], + "802ac5b4": ["bhv_wall_tiny_star_particle_loop"], + "802ac678": ["bhv_tiny_star_particles_init"], + "802ac78c": ["bhv_pound_tiny_star_particle_loop"], + "802ac864": ["bhv_pound_tiny_star_particle_init"], + "802ac910": ["door_animation_and_reset"], + "802ac958": ["set_door_camera_event"], + "802ac9d0": ["play_door_open_noise"], + "802aca6c": ["play_warp_door_open_noise"], + "802acac8": ["bhv_door_loop"], + "802acc3c": ["bhv_door_init"], + "802ace80": ["bhv_star_door_loop_2"], + "802ad078": ["grindel_thwomp_act_idle_at_bottom"], + "802ad10c": ["grindel_thwomp_act_lower"], + "802ad1a4": ["grindel_thwomp_act_land"], + "802ad238": ["grindel_thwomp_act_idle_at_top"], + "802ad2d0": ["grindel_thwomp_act_raise"], + "802ad34c": ["bhv_grindel_thwomp_loop"], + "802ad378": ["bhv_tumbling_bridge_platform_loop"], + "802ad580": ["tumbling_bridge_act_1"], + "802ad76c": ["tumbling_bridge_act_2"], + "802ad7f4": ["tumbling_bridge_act_3"], + "802ad828": ["tumbling_bridge_act_0"], + "802ad890": ["bhv_tumbling_bridge_loop"], + "802ad8bc": ["elevator_starting_shake"], + "802ad8f0": ["elevator_act_0"], + "802ada4c": ["elevator_act_1"], + "802adb88": ["elevator_act_2"], + "802adce4": ["elevator_act_4"], + "802add70": ["elevator_act_3"], + "802addf8": ["bhv_elevator_init"], + "802adf6c": ["bhv_elevator_loop"], + "802adf98": ["bhv_water_mist_spawn_loop"], + "802adfd8": ["bhv_water_mist_loop"], + "802ae0cc": ["spawn_triangle_break_particles"], + "802ae238": ["bhv_water_mist_2_loop"], + "802ae304": ["bhv_pound_white_puffs_init"], + "802ae334": ["spawn_mist_from_global"], + "802ae360": ["bhv_ground_sand_init"], + "802ae394": ["spawn_smoke_with_velocity"], + "802ae45c": ["clear_particle_flags"], + "802ae48c": ["bhv_ground_snow_init"], + "802ae4c0": ["spawn_wind_particles"], + "802ae534": ["bhv_wind_loop"], + "802ae85c": ["bhv_unused_particle_spawn_loop"], + "802ae908": ["bhv_ukiki_cage_star_loop"], + "802aea6c": ["ukiki_cage_act_wait_for_ukiki"], + "802aeab8": ["ukiki_cage_act_spin"], + "802aeb1c": ["ukiki_cage_act_fall"], + "802aeb74": ["ukiki_cage_act_hide"], + "802aeb9c": ["bhv_ukiki_cage_loop"], + "802aebc8": ["bhv_squishable_platform_loop"], + "802aec40": ["bhv_bitfs_sinking_platform_loop"], + "802aeca8": ["bhv_ddd_moving_pole_loop"], + "802aecdc": ["bhv_bitfs_sinking_cage_platform_loop"], + "802aedc0": ["bhv_beta_moving_flames_spawn_loop"], + "802aeea4": ["bhv_beta_moving_flames_loop"], + "802aef1c": ["bhv_flamethrower_flame_loop"], + "802af1e8": ["bhv_flamethrower_loop"], + "802af3fc": ["bhv_rr_rotating_bridge_platform_loop"], + "802af448": ["bhv_bouncing_fireball_flame_loop"], + "802af5f8": ["bhv_bouncing_fireball_loop"], + "802af7c4": ["bhv_bowser_shock_wave_loop"], + "802af9cc": ["bhv_black_smoke_upward_loop"], + "802afa0c": ["bhv_black_smoke_bowser_loop"], + "802afae4": ["bhv_black_smoke_mario_loop"], + "802afbf8": ["bhv_flame_mario_loop"], + "802afce4": ["bhv_beta_fish_splash_spawner_loop"], + "802afd1c": ["bhv_spindrift_loop"], + "802afee8": ["bhv_wf_solid_tower_platform_loop"], + "802aff30": ["bhv_wf_elevator_tower_platform_loop"], + "802b00e4": ["bhv_wf_sliding_tower_platform_loop"], + "802b0244": ["spawn_and_init_wf_platforms"], + "802b039c": ["spawn_wf_platform_group"], + "802b04b4": ["bhv_tower_platform_group_loop"], + "802b0614": ["bhv_tree_snow_or_leaf_loop"], + "802b0974": ["bhv_snow_leaf_particle_spawn_init"], + "802b0b9c": ["square_plat_set_yaw_until_timer"], + "802b0bec": ["bhv_squarish_path_moving_loop"], + "802b0d48": ["bhv_piranha_plant_waking_bubbles_loop"], + "802b0df0": ["bhv_piranha_plant_bubble_loop"], + "802b1278": ["bhv_purple_switch_loop"], + "802b14f4": ["check_if_moving_over_floor"], + "802b15e8": ["bhv_pushable_loop"], + "802b1714": ["breakable_box_init"], + "802b17f4": ["hidden_breakable_box_actions"], + "802b19d8": ["hidden_wdw_platform_actions"], + "802b1ae0": ["bhv_hidden_object_loop"], + "802b1b2c": ["bhv_breakable_box_loop"], + "802b1bb0": ["geo_move_mario_part_from_parent"], + "802b1c54": ["bhv_heave_ho_throw_mario_loop"], + "802b1d7c": ["heave_ho_act_1"], + "802b1e6c": ["heave_ho_act_2"], + "802b1ff4": ["heave_ho_act_3"], + "802b20a0": ["heave_ho_act_0"], + "802b2154": ["heave_ho_move"], + "802b2278": ["bhv_heave_ho_loop"], + "802b2340": ["bhv_ccm_touched_star_spawn_loop"], + "802b23e0": ["bhv_unused_poundable_platform"], + "802b2494": ["bhv_beta_trampoline_spring_loop"], + "802b25ac": ["bhv_beta_trampoline_top_loop"], + "802b26a4": ["jumping_box_act_0"], + "802b27d8": ["jumping_box_act_1"], + "802b2824": ["jumping_box_free_update"], + "802b288c": ["bhv_jumping_box_loop"], + "802b29b8": ["bhv_boo_cage_loop"], + "802b2bc8": ["spawn_sparkle_particles"], + "802b2d10": ["bhv_alpha_boo_key_loop"], + "802b3108": ["bhv_beta_boo_key_loop"], + "802b3134": ["arc_to_goal_pos"], + "802b3250": ["grand_star_zero_velocity"], + "802b329c": ["bhv_grand_star_loop"], + "802b3600": ["bhv_bowser_key_loop"], + "802b37b8": ["bhv_white_puff_smoke_init"], + "802b3810": ["bhv_bullet_bill_init"], + "802b3830": ["bullet_bill_act_0"], + "802b38b8": ["bullet_bill_act_1"], + "802b394c": ["bullet_bill_act_2"], + "802b3b08": ["bullet_bill_act_3"], + "802b3b24": ["bullet_bill_act_4"], + "802b3be0": ["bhv_bullet_bill_loop"], + "802b3c2c": ["bowser_tail_anchor_act_default"], + "802b3cdc": ["bowser_tail_anchor_thrown"], + "802b3d10": ["bowser_tail_anchor_act_touched_mario"], + "802b3d74": ["bhv_bowser_tail_anchor_loop"], + "802b3df4": ["bhv_bowser_flame_spawn_loop"], + "802b4080": ["bhv_bowser_body_anchor_loop"], + "802b4184": ["bowser_spawn_shockwave"], + "802b41fc": ["bowser_bounce_effects"], + "802b4288": ["bowser_set_anim_look_up_and_walk"], + "802b4300": ["bowser_set_anim_slow_gait"], + "802b4368": ["bowser_set_anim_look_down_stop_walk"], + "802b43dc": ["bowser_init_camera_actions"], + "802b4478": ["bowser_act_wait"], + "802b44bc": ["bowser_act_intro_walk"], + "802b45f4": ["bowser_bitdw_actions"], + "802b473c": ["bowser_bitfs_actions"], + "802b48d4": ["bowser_bits_action_list"], + "802b4a1c": ["bowser_set_act_big_jump"], + "802b4a3c": ["bowser_bits_actions"], + "802b4af4": ["bowser_reset_fallen_off_stage"], + "802b4bac": ["bowser_act_idle"], + "802b4be8": ["bowser_act_default"], + "802b4ca4": ["bowser_act_breath_fire"], + "802b4d14": ["bowser_act_walk_to_mario"], + "802b4f00": ["bowser_act_teleport"], + "802b5104": ["bowser_act_spit_fire_into_sky"], + "802b5218": ["bowser_act_hit_mine"], + "802b53f4": ["bowser_set_anim_jump"], + "802b5444": ["bowser_land"], + "802b5554": ["bowser_short_second_hop"], + "802b55cc": ["bowser_act_big_jump"], + "802b5798": ["bowser_act_quick_jump"], + "802b58bc": ["bowser_act_hit_edge"], + "802b59cc": ["bowser_act_spit_fire_onto_floor"], + "802b5aec": ["bowser_turn_on_timer"], + "802b5c00": ["bowser_act_turn_from_edge"], + "802b5c40": ["bowser_act_charge_mario"], + "802b5f6c": ["bowser_check_hit_mine"], + "802b5fec": ["bowser_act_thrown"], + "802b611c": ["bowser_set_goal_invisible"], + "802b6190": ["bowser_act_jump_onto_stage"], + "802b6568": ["bowser_act_dance"], + "802b65d0": ["bowser_spawn_collectable"], + "802b6670": ["bowser_fly_back_dead"], + "802b6730": ["bowser_dead_bounce"], + "802b67d4": ["bowser_dead_wait_for_mario"], + "802b6878": ["bowser_dead_twirl_up"], + "802b6a10": ["bowser_dead_hide"], + "802b6a78": ["bowser_dead_default_stage_ending"], + "802b6bac": ["bowser_dead_final_stage_ending"], + "802b6cf0": ["bowser_act_dead"], + "802b6e40": ["bowser_tilt_platform"], + "802b6ee0": ["bowser_act_tilt_lava_platform"], + "802b711c": ["bowser_check_fallen_off_stage"], + "802b71e4": ["bowser_free_update"], + "802b72d4": ["bowser_held_update"], + "802b7418": ["bowser_thrown_dropped_update"], + "802b75a4": ["bhv_bowser_loop"], + "802b7878": ["bhv_bowser_init"], + "802b798c": ["geo_update_body_rot_from_parent"], + "802b7a20": ["bowser_open_eye_switch"], + "802b7c64": ["geo_switch_bowser_eyes"], + "802b7d44": ["geo_bits_bowser_coloring"], + "802b7e68": ["falling_bowser_plat_act_start"], + "802b7ef0": ["falling_bowser_plat_act_check"], + "802b8024": ["falling_bowser_plat_act_fall"], + "802b8384": ["bhv_falling_bowser_platform_loop"], + "802b83b0": ["bowser_flame_despawn"], + "802b8434": ["bowser_flame_should_despawn"], + "802b84ac": ["bhv_flame_bowser_init"], + "802b85b0": ["bhv_flame_large_burning_out_init"], + "802b8654": ["bowser_flame_move"], + "802b8734": ["bhv_flame_bowser_loop"], + "802b8960": ["bhv_flame_moving_forward_growing_init"], + "802b89ec": ["bhv_flame_moving_forward_growing_loop"], + "802b8b1c": ["bhv_flame_floating_landing_init"], + "802b8c38": ["bhv_flame_floating_landing_loop"], + "802b8d68": ["bhv_blue_bowser_flame_init"], + "802b8e7c": ["bhv_blue_bowser_flame_loop"], + "802b9034": ["bhv_flame_bouncing_init"], + "802b90ec": ["bhv_flame_bouncing_loop"], + "802b921c": ["bhv_blue_flames_group_loop"], + "802b935c": ["bhv_blue_fish_movement_loop"], + "802b9790": ["bhv_tank_fish_group_loop"], + "802b98d4": ["vec3f_copy_2"], + "802b98fc": ["bhv_checkerboard_elevator_group_init"], + "802b9a78": ["checkerboard_plat_act_move_y"], + "802b9af8": ["checkerboard_plat_act_rotate"], + "802b9bb4": ["bhv_checkerboard_platform_init"], + "802b9bd8": ["bhv_checkerboard_platform_loop"], + "802b9e94": ["bhv_ddd_warp_loop"], + "802b9efc": ["water_level_pillar_undrained"], + "802ba13c": ["water_level_pillar_drained"], + "802ba19c": ["bhv_water_level_pillar_init"], + "802ba1e0": ["bhv_water_level_pillar_loop"], + "802ba25c": ["bhv_invisible_objects_under_bridge_init"], + "802ba2b0": ["geo_scale_bowser_key"], + "802ba2f8": ["bhv_bowser_key_unlock_door_loop"], + "802ba458": ["bhv_bowser_key_course_exit_loop"], + "802ba5bc": ["bhv_moat_grills_loop"], + "802ba608": ["bhv_rotating_clock_arm_loop"], + "802ba7e0": ["handle_cap_ukiki_reset"], + "802ba868": ["is_cap_ukiki_and_mario_has_normal_cap_on_head"], + "802ba8c4": ["geo_update_projectile_pos_from_parent_copy"], + "802ba958": ["idle_ukiki_taunt"], + "802bab7c": ["ukiki_act_idle"], + "802bae40": ["ukiki_act_return_home"], + "802baec4": ["ukiki_act_wait_to_respawn"], + "802baf10": ["ukiki_act_unused_turn"], + "802baf64": ["ukiki_act_turn_to_mario"], + "802bb07c": ["ukiki_act_run"], + "802bb288": ["ukiki_act_jump"], + "802bb3b8": ["ukiki_act_go_to_cage"], + "802bb798": ["ukiki_free_loop"], + "802bb888": ["cage_ukiki_held_loop"], + "802bba3c": ["cap_ukiki_held_loop"], + "802bbb98": ["bhv_ukiki_init"], + "802bbc0c": ["bhv_ukiki_loop"], + "802bbd6c": ["lll_octagonal_mesh_move"], + "802bbfd8": ["lll_octagonal_mesh_find_y_offset"], + "802bc0f0": ["bhv_lll_moving_octagonal_mesh_platform_loop"], + "802bc22c": ["bhv_lll_sinking_rock_block_loop"], + "802bc294": ["bhv_lll_rotating_hex_flame_loop"], + "802bc348": ["fire_bar_spawn_flames"], + "802bc4f4": ["fire_bar_act_0"], + "802bc538": ["fire_bar_act_1"], + "802bc590": ["fire_bar_act_2"], + "802bc5fc": ["fire_bar_act_3"], + "802bc618": ["bhv_lll_rotating_block_fire_bars_loop"], + "802bc660": ["bhv_lll_wood_piece_loop"], + "802bc728": ["bhv_lll_floating_wood_bridge_loop"], + "802bc898": ["bhv_volcano_flames_loop"], + "802bc934": ["hexagonal_ring_spawn_flames"], + "802bca74": ["bhv_lll_rotating_hexagonal_ring_loop"], + "802bcce8": ["sinking_rectangular_plat_actions"], + "802bcda8": ["bhv_lll_sinking_rectangular_platform_loop"], + "802bce58": ["bhv_lll_sinking_square_platforms_loop"], + "802bce9c": ["create_transform_from_normals"], + "802bcf40": ["bhv_platform_normals_init"], + "802bcfc4": ["approach_by_increment"], + "802bd058": ["bhv_tilting_inverted_pyramid_loop"], + "802bd3e4": ["koopa_shell_spawn_water_drop"], + "802bd488": ["bhv_koopa_shell_flame_loop"], + "802bd5dc": ["bhv_koopa_shell_flame_spawn"], + "802bd62c": ["koopa_shell_spawn_sparkles"], + "802bd680": ["bhv_koopa_shell_loop"], + "802bd8d0": ["tox_box_shake_screen"], + "802bd91c": ["tox_box_move"], + "802bdb04": ["tox_box_act_roll_forward"], + "802bdb3c": ["tox_box_act_roll_backward"], + "802bdb74": ["tox_box_act_roll_right"], + "802bdbac": ["tox_box_act_roll_left"], + "802bdbe4": ["tox_box_act_roll_land"], + "802bdc7c": ["tox_box_act_idle"], + "802bdcc8": ["tox_box_act_unused_idle"], + "802bdd14": ["tox_box_act_init"], + "802bdd68": ["bhv_tox_box_loop"], + "802bdd9c": ["piranha_plant_act_idle"], + "802bde10": ["piranha_plant_check_interactions"], + "802bdeec": ["piranha_plant_act_sleeping"], + "802be034": ["piranha_plant_act_woken_up"], + "802be0b8": ["piranha_plant_reset_when_far"], + "802be0ec": ["piranha_plant_attacked"], + "802be150": ["piranha_plant_act_shrink_and_die"], + "802be234": ["piranha_plant_act_wait_to_respawn"], + "802be278": ["piranha_plant_act_respawn"], + "802be350": ["piranha_plant_act_biting"], + "802be49c": ["mario_moving_fast_enough_to_make_piranha_plant_bite"], + "802be50c": ["piranha_plant_act_stopped_biting"], + "802be5a0": ["bhv_piranha_plant_loop"], + "802be628": ["bhv_lll_bowser_puzzle_spawn_piece"], + "802be6d4": ["bhv_lll_bowser_puzzle_spawn_pieces"], + "802be79c": ["bhv_lll_bowser_puzzle_loop"], + "802be8a8": ["bhv_lll_bowser_puzzle_piece_action_0"], + "802be8b8": ["bhv_lll_bowser_puzzle_piece_action_1"], + "802be8f4": ["bhv_lll_bowser_puzzle_piece_update"], + "802be9dc": ["bhv_lll_bowser_puzzle_piece_move"], + "802beb14": ["bhv_lll_bowser_puzzle_piece_idle"], + "802beb54": ["bhv_lll_bowser_puzzle_piece_move_left"], + "802beb8c": ["bhv_lll_bowser_puzzle_piece_move_right"], + "802bebc4": ["bhv_lll_bowser_puzzle_piece_move_up"], + "802bebfc": ["bhv_lll_bowser_puzzle_piece_move_down"], + "802bec34": ["bhv_lll_bowser_puzzle_piece_loop"], + "802becb0": ["set_obj_anim_with_accel_and_sound"], + "802bed7c": ["play_penguin_walking_sound"], + "802bedec": ["tuxies_mother_act_2"], + "802bef8c": ["tuxies_mother_act_1"], + "802bf1d8": ["tuxies_mother_act_0"], + "802bf3c0": ["bhv_tuxies_mother_loop"], + "802bf424": ["small_penguin_dive_with_mario"], + "802bf474": ["small_penguin_act_2"], + "802bf57c": ["small_penguin_act_1"], + "802bf648": ["small_penguin_act_3"], + "802bf6e4": ["small_penguin_act_4"], + "802bf760": ["small_penguin_act_0"], + "802bf90c": ["small_penguin_act_5"], + "802bfa14": ["small_penguin_free_actions"], + "802bfa88": ["bhv_small_penguin_loop"], + "802bfbac": ["geo_switch_tuxie_mother_eyes"], + "802bff3c": ["bhv_fish_spawner_loop"], + "802c0768": ["bhv_fish_loop"], + "802c08a8": ["bhv_wdw_express_elevator_loop"], + "802c0aac": ["bub_spawner_act_0"], + "802c0b50": ["bub_spawner_act_1"], + "802c0ba4": ["bub_spawner_act_2"], + "802c0bc4": ["bub_spawner_act_3"], + "802c0be0": ["bhv_bub_spawner_loop"], + "802c0c0c": ["bub_move_vertically"], + "802c0cd4": ["bub_act_0"], + "802c0d44": ["bub_act_1"], + "802c0f90": ["bub_act_2"], + "802c1204": ["bhv_bub_loop"], + "802c12c0": ["bhv_rotating_exclamation_box_loop"], + "802c1308": ["exclamation_box_act_0"], + "802c13ec": ["exclamation_box_act_1"], + "802c14b0": ["exclamation_box_act_2"], + "802c15b8": ["exclamation_box_act_3"], + "802c17bc": ["exclamation_box_spawn_contents"], + "802c18d0": ["exclamation_box_act_4"], + "802c1988": ["exclamation_box_act_5"], + "802c19c0": ["bhv_exclamation_box_loop"], + "802c19fc": ["bhv_sound_spawner_init"], + "802c1a40": ["bhv_bowsers_sub_loop"], + "802c1a80": ["bhv_sushi_shark_collision_loop"], + "802c1a90": ["bhv_sushi_shark_loop"], + "802c1c44": ["bhv_sunken_ship_part_loop"], + "802c1cd4": ["bhv_ship_part_3_loop"], + "802c1e10": ["bhv_jrb_sliding_box_loop"], + "802c2190": ["bhv_white_puff_1_loop"], + "802c2274": ["bhv_white_puff_2_loop"], + "802c22b8": ["bhv_hidden_blue_coin_loop"], + "802c242c": ["bhv_blue_coin_switch_loop"], + "802c263c": ["bhv_openable_cage_door_loop"], + "802c26f8": ["bhv_openable_grill_loop"], + "802c2930": ["bhv_init_changing_water_level_loop"], + "802c2a24": ["bhv_water_level_diamond_loop"], + "802c2ce8": ["tweester_scale_and_move"], + "802c2ebc": ["tweester_act_idle"], + "802c2fbc": ["tweester_act_chase"], + "802c31c4": ["tweester_act_hide"], + "802c329c": ["bhv_tweester_loop"], + "802c32e8": ["bhv_tweester_sand_particle_loop"], + "802c3440": ["bhv_boo_init"], + "802c3684": ["bhv_courtyard_boo_triplet_init"], + "802c4824": ["bhv_boo_loop"], + "802c4f30": ["bhv_big_boo_loop"], + "802c515c": ["bhv_boo_with_cage_init"], + "802c51d4": ["bhv_boo_with_cage_loop"], + "802c5224": ["bhv_merry_go_round_boo_manager_loop"], + "802c53cc": ["obj_set_secondary_camera_focus"], + "802c53ec": ["bhv_animated_texture_loop"], + "802c5414": ["bhv_boo_in_castle_loop"], + "802c5688": ["bhv_boo_staircase"], + "802c5890": ["bhv_bbh_tilting_trap_platform_loop"], + "802c5a38": ["bhv_haunted_bookshelf_loop"], + "802c5ca8": ["bhv_merry_go_round_loop"], + "802c5dc0": ["bhv_static_checkered_platform_loop"], + "802c5f48": ["bhv_beta_bowser_anchor_loop"], + "802c5fdc": ["bhv_play_music_track_when_touched_loop"], + "802c6050": ["bhv_floor_trap_in_castle_loop"], + "802c60ac": ["bhv_castle_floor_trap_init"], + "802c6150": ["bhv_castle_floor_trap_open_detect"], + "802c61d4": ["bhv_castle_floor_trap_open"], + "802c6278": ["bhv_castle_floor_trap_close_detect"], + "802c62bc": ["bhv_castle_floor_trap_close"], + "802c6328": ["bhv_castle_floor_trap_rotate"], + "802c6348": ["bhv_castle_floor_trap_loop"], + "802c63e8": ["bhv_pole_base_loop"], + "802c64a4": ["bhv_sparkle_spawn_loop"], + "802c6538": ["update_angle_from_move_flags"], + "802c65c0": ["bhv_scuttlebug_loop"], + "802c6b6c": ["bhv_scuttlebug_spawn_loop"], + "802c6ca0": ["whomp_play_sfx_from_pound_animation"], + "802c6d6c": ["whomp_init"], + "802c6ec8": ["whomp_turn"], + "802c6fb0": ["whomp_patrol"], + "802c710c": ["king_whomp_chase"], + "802c7254": ["whomp_prepare_jump"], + "802c72b4": ["whomp_jump"], + "802c7380": ["whomp_land"], + "802c7428": ["king_whomp_on_ground"], + "802c75fc": ["whomp_on_ground"], + "802c76d4": ["whomp_on_ground_general"], + "802c7858": ["whomp_die"], + "802c7998": ["king_whomp_stop_music"], + "802c79d8": ["bhv_whomp_loop"], + "802c7a70": ["bhv_water_splash_spawn_droplets"], + "802c7b14": ["bhv_water_droplet_loop"], + "802c7cac": ["bhv_idle_water_wave_loop"], + "802c7d40": ["bhv_water_droplet_splash_init"], + "802c7d90": ["bhv_bubble_splash_init"], + "802c7dfc": ["bhv_shallow_water_splash_init"], + "802c7e5c": ["bhv_wave_trail_shrink"], + "802c7f98": ["bhv_strong_wind_particle_loop"], + "802c81b4": ["cur_obj_spawn_strong_wind_particles"], + "802c834c": ["bhv_sl_snowman_wind_loop"], + "802c863c": ["bhv_sl_walking_penguin_loop"], + "802c89f0": ["update_mario_platform"], + "802c8b4c": ["get_mario_pos"], + "802c8b8c": ["set_mario_pos"], + "802c8bc8": ["apply_platform_displacement"], + "802c8ec0": ["apply_mario_platform_displacement"], + "802c8f28": ["clear_mario_platform"], + "802c8f40": ["debug_print_obj_collision"], + "802c8fe4": ["detect_object_hitbox_overlap"], + "802c91ec": ["detect_object_hurtbox_overlap"], + "802c9388": ["clear_object_collision"], + "802c93f8": ["check_collision_in_list"], + "802c94ac": ["check_player_object_collision"], + "802c95b4": ["check_pushable_object_collision"], + "802c9630": ["check_destructive_object_collision"], + "802c9724": ["detect_object_collisions"], + "802c97d0": ["unused_init_free_list"], + "802c9840": ["unused_try_allocate"], + "802c98a4": ["try_allocate_object"], + "802c9950": ["unused_deallocate"], + "802c99b8": ["init_free_object_list"], + "802c9a3c": ["clear_object_lists"], + "802c9b68": ["unload_object"], + "802c9c00": ["allocate_object"], + "802c9f04": ["create_object"], + "802ca028": ["mark_obj_for_deletion"], + "802ca040": ["exec_anim_sound_state"], + "802ca144": ["create_sound_spawner"], + "802ca190": ["cur_obj_play_sound_1"], + "802ca1e0": ["cur_obj_play_sound_2"], + "802ca230": ["calc_dist_to_volume_range_1"], + "802ca2d4": ["calc_dist_to_volume_range_2"], + "802ca370": ["stub_debug_1"], + "802ca380": ["stub_debug_2"], + "802ca390": ["stub_debug_3"], + "802ca3a0": ["stub_debug_4"], + "802ca3b0": ["get_current_clock"], + "802ca3e0": ["get_clock_difference"], + "802ca418": ["set_print_state_info"], + "802ca460": ["print_text_array_info"], + "802ca51c": ["set_text_array_x_y"], + "802ca568": ["print_debug_bottom_up"], + "802ca5b8": ["print_debug_top_down_objectinfo"], + "802ca618": ["print_debug_top_down_mapinfo"], + "802ca680": ["print_debug_top_down_normal"], + "802ca6d0": ["print_mapinfo"], + "802ca8e8": ["print_checkinfo"], + "802ca918": ["print_surfaceinfo"], + "802ca94c": ["print_stageinfo"], + "802ca990": ["print_string_array_info"], + "802caa6c": ["print_effectinfo"], + "802caaa8": ["print_enemyinfo"], + "802caae4": ["update_debug_dpadmask"], + "802cabac": ["debug_unknown_level_select_check"], + "802cac20": ["reset_debug_objectinfo"], + "802cae9c": ["try_modify_debug_controls"], + "802cb0b0": ["stub_debug_5"], + "802cb0c0": ["try_print_debug_mario_object_info"], + "802cb1c0": ["try_print_debug_mario_level_info"], + "802cb264": ["try_do_mario_debug_object_spawn"], + "802cb394": ["debug_print_obj_move_flags"], + "802cb564": ["debug_enemy_unknown"], + "802cb5c0": ["set_and_reset_transition_fade_timer"], + "802cb640": ["set_transition_color_fade_alpha"], + "802cb894": ["vertex_transition_color"], + "802cba18": ["dl_transition_color"], + "802cbbc4": ["render_fade_transition_from_color"], + "802cbc20": ["render_fade_transition_into_color"], + "802cbc7c": ["calc_tex_transition_radius"], + "802cbd54": ["calc_tex_transition_time"], + "802cbe64": ["convert_tex_transition_angle_to_pos"], + "802cbee0": ["center_tex_transition_x"], + "802cbf64": ["center_tex_transition_y"], + "802cbfe8": ["make_tex_transition_vertex"], + "802cc180": ["load_tex_transition_vertex"], + "802cc4d8": ["render_textured_transition"], + "802ccbe8": ["render_screen_transition"], + "802ccdc8": ["render_cannon_circle_base"], + "802cd1e8": ["geo_cannon_circle_base"], + "802cd280": ["rotate_rectangle"], + "802cd328": ["atan2_deg"], + "802cd388": ["scale_shadow_with_distance"], + "802cd444": ["disable_shadow_with_distance"], + "802cd48c": ["dim_shadow_with_distance"], + "802cd614": ["get_water_level_below_shadow"], + "802cd6c4": ["init_shadow"], + "802cd938": ["get_texture_coords_9_vertices"], + "802cd988": ["get_texture_coords_4_vertices"], + "802cd9ec": ["make_shadow_vertex_at_xyz"], + "802cdb20": ["extrapolate_vertex_y_position"], + "802cdb74": ["get_vertex_coords"], + "802cdc40": ["calculate_vertex_xyz"], + "802cde94": ["floor_local_tilt"], + "802cdf3c": ["make_shadow_vertex"], + "802ce128": ["add_shadow_to_display_list"], + "802ce2bc": ["linearly_interpolate_solidity_positive"], + "802ce3ec": ["linearly_interpolate_solidity_negative"], + "802ce524": ["correct_shadow_solidity_for_animations"], + "802ce690": ["correct_lava_shadow_height"], + "802ce79c": ["create_shadow_player"], + "802ce9d0": ["create_shadow_circle_9_verts"], + "802ceae8": ["create_shadow_circle_4_verts"], + "802cec04": ["create_shadow_circle_assuming_flat_ground"], + "802cedc0": ["create_shadow_rectangle"], + "802cef6c": ["get_shadow_height_solidity"], + "802cf080": ["create_shadow_square"], + "802cf1f0": ["create_shadow_hardcoded_rectangle"], + "802cf34c": ["create_shadow_below_xyz"], + "802cf5b0": ["calculate_skybox_scaled_x"], + "802cf69c": ["calculate_skybox_scaled_y"], + "802cf804": ["make_skybox_rect"], + "802cfa2c": ["draw_skybox_tile_grid"], + "802cfc68": ["create_skybox_ortho_matrix"], + "802cfd88": ["init_skybox_display_list"], + "802cfef4": ["create_skybox_facing_camera"], + "802d0080": ["geo_wdw_set_initial_water_level"], + "802d01e0": ["geo_movtex_pause_control"], + "802d0254": ["movtex_make_quad_vertex"], + "802d0484": ["movtex_gen_from_quad"], + "802d0a84": ["movtex_gen_from_quad_array"], + "802d0bb0": ["movtex_gen_quads_id"], + "802d0c84": ["get_quad_collection_from_id"], + "802d0f28": ["movtex_change_texture_format"], + "802d104c": ["geo_movtex_draw_water_regions"], + "802d1330": ["update_moving_texture_offset"], + "802d13cc": ["movtex_write_vertex_first"], + "802d1574": ["movtex_write_vertex_index"], + "802d18b4": ["movtex_gen_list"], + "802d1b70": ["geo_movtex_draw_nocolor"], + "802d1cdc": ["geo_movtex_draw_colored"], + "802d1e48": ["geo_movtex_draw_colored_no_update"], + "802d1fa8": ["geo_movtex_draw_colored_2_no_update"], + "802d2108": ["geo_movtex_update_horizontal"], + "802d2210": ["make_vertex"], + "802d22c4": ["round_float"], + "802d2360": ["geo_exec_inside_castle_light"], + "802d2470": ["geo_exec_flying_carpet_timer_update"], + "802d2520": ["geo_exec_flying_carpet_create"], + "802d28cc": ["geo_exec_cake_end_screen"], + "802d29c0": ["stop_other_paintings"], + "802d2a74": ["painting_mario_y"], + "802d2b08": ["painting_mario_z"], + "802d2b84": ["painting_ripple_y"], + "802d2c40": ["painting_nearest_4th"], + "802d2d80": ["painting_mario_x"], + "802d2dfc": ["painting_ripple_x"], + "802d2eb8": ["painting_state"], + "802d2ffc": ["wall_painting_proximity_idle"], + "802d319c": ["wall_painting_proximity_rippling"], + "802d327c": ["wall_painting_continuous_idle"], + "802d341c": ["wall_painting_continuous_rippling"], + "802d34fc": ["floor_painting_proximity_idle"], + "802d36ac": ["floor_painting_proximity_rippling"], + "802d379c": ["floor_painting_continuous_idle"], + "802d393c": ["floor_painting_continuous_rippling"], + "802d3a2c": ["painting_update_floors"], + "802d3bec": ["painting_update_ripple_state"], + "802d3cec": ["calculate_ripple_at_point"], + "802d3e6c": ["ripple_if_movable"], + "802d3ee4": ["painting_generate_mesh"], + "802d404c": ["painting_calculate_triangle_normals"], + "802d43f8": ["normalize_component"], + "802d44bc": ["painting_average_vertex_normals"], + "802d47d0": ["render_painting"], + "802d4edc": ["painting_model_view_transform"], + "802d50dc": ["painting_ripple_image"], + "802d5354": ["painting_ripple_env_mapped"], + "802d556c": ["display_painting_rippling"], + "802d568c": ["display_painting_not_rippling"], + "802d5778": ["reset_painting"], + "802d57a8": ["move_ddd_painting"], + "802d58e4": ["set_painting_layer"], + "802d593c": ["display_painting"], + "802d59a8": ["wall_painting_update"], + "802d5aa0": ["floor_painting_update"], + "802d5b98": ["geo_painting_draw"], + "802d5d0c": ["geo_painting_update"], + "802d5e00": ["int_pow"], + "802d5e54": ["format_integer"], + "802d6144": ["parse_width_field"], + "802d62d8": ["print_text_fmt_int"], + "802d6554": ["print_text"], + "802d66c0": ["print_text_centered"], + "802d6858": ["char_to_glyph_index"], + "802d69f8": ["add_glyph_texture"], + "802d6acc": ["clip_to_bounds"], + "802d6b3c": ["render_textrect"], + "802d6c88": ["render_text_labels"], + "802d6f20": ["create_dl_identity_matrix"], + "802d7070": ["create_dl_translation_matrix"], + "802d7174": ["create_dl_rotation_matrix"], + "802d7280": ["create_dl_scale_matrix"], + "802d7384": ["create_dl_ortho_matrix"], + "802d75dc": ["render_generic_char"], + "802d76c8": ["render_multi_text_string"], + "802d77dc": ["print_generic_string"], + "802d7b84": ["print_hud_lut_string"], + "802d7e88": ["print_menu_generic_string"], + "802d82d4": ["print_credits_string"], + "802d862c": ["handle_menu_scrolling"], + "802d8844": ["get_str_x_pos_from_center"], + "802d8934": ["get_string_width"], + "802d89b8": ["print_hud_my_score_coins"], + "802d8a80": ["print_hud_my_score_stars"], + "802d8b34": ["int_to_str"], + "802d8c6c": ["get_dialog_id"], + "802d8c88": ["create_dialog_box"], + "802d8cc4": ["create_dialog_box_with_var"], + "802d8d08": ["create_dialog_inverted_box"], + "802d8d48": ["create_dialog_box_with_response"], + "802d8d90": ["reset_dialog_render_state"], + "802d8e2c": ["render_dialog_box_type"], + "802d9148": ["change_and_flash_dialog_text_color_lines"], + "802d9388": ["handle_dialog_scroll_page_state"], + "802d944c": ["render_star_count_dialog_text"], + "802d9634": ["render_multi_text_string_lines"], + "802d9800": ["ensure_nonnegative"], + "802d982c": ["handle_dialog_text_and_pages"], + "802d9cb0": ["render_dialog_triangle_choice"], + "802d9dfc": ["render_dialog_triangle_next"], + "802d9f84": ["handle_special_dialog_text"], + "802da1ac": ["render_dialog_entries"], + "802da810": ["set_menu_mode"], + "802da844": ["reset_cutscene_msg_fade"], + "802da85c": ["dl_rgba16_begin_cutscene_msg_fade"], + "802da8e4": ["dl_rgba16_stop_cutscene_msg_fade"], + "802da964": ["ascii_to_credits_char"], + "802daa34": ["print_credits_str_ascii"], + "802daae4": ["set_cutscene_message"], + "802dab58": ["do_cutscene_handler"], + "802dad54": ["print_peach_letter_message"], + "802db08c": ["render_hud_cannon_reticle"], + "802db350": ["reset_red_coins_collected"], + "802db368": ["change_dialog_camera_angle"], + "802db3b8": ["shade_screen"], + "802db498": ["print_animated_red_coin"], + "802db6e8": ["render_pause_red_coins"], + "802db760": ["render_pause_my_score_coins"], + "802dbb24": ["render_pause_camera_options"], + "802dbe68": ["render_pause_course_options"], + "802dc15c": ["render_pause_castle_menu_box"], + "802dc418": ["highlight_last_course_complete_stars"], + "802dc478": ["print_hud_pause_colorful_str"], + "802dc570": ["render_pause_castle_course_stars"], + "802dc718": ["render_pause_castle_main_strings"], + "802dca88": ["render_pause_screen"], + "802dcd04": ["print_hud_course_complete_string"], + "802dcf30": ["print_hud_course_complete_coins"], + "802dd194": ["play_star_fanfare_and_flash_hud"], + "802dd210": ["render_course_complete_lvl_info_and_hud_str"], + "802dd838": ["render_save_confirmation"], + "802ddae0": ["render_course_complete_screen"], + "802ddca4": ["render_menus_and_dialogs"], + "802dddf0": ["envfx_init_snow"], + "802ddf38": ["envfx_update_snowflake_count"], + "802de0bc": ["envfx_cleanup_snow"], + "802de114": ["orbit_from_positions"], + "802de23c": ["pos_from_orbit"], + "802de360": ["envfx_is_snowflake_alive"], + "802de458": ["envfx_update_snow_normal"], + "802de888": ["envfx_update_snow_blizzard"], + "802ded38": ["envfx_update_snow_water"], + "802def2c": ["rotate_triangle_vertices"], + "802df334": ["append_snowflake_vertex_buffer"], + "802df748": ["envfx_update_snow"], + "802dfbc8": ["envfx_update_particles"], + "802dfd50": ["particle_is_laterally_close"], + "802dfe00": ["random_flower_offset"], + "802dfe80": ["envfx_update_flower"], + "802e0120": ["envfx_set_lava_bubble_position"], + "802e048c": ["envfx_update_lava"], + "802e065c": ["envfx_rotate_around_whirlpool"], + "802e08a8": ["envfx_is_whirlpool_bubble_alive"], + "802e0934": ["envfx_update_whirlpool"], + "802e0e24": ["envfx_is_jestream_bubble_alive"], + "802e0eb8": ["envfx_update_jetstream"], + "802e1238": ["envfx_init_bubble"], + "802e1414": ["envfx_bubbles_update_switch"], + "802e1618": ["append_bubble_vertex_buffer"], + "802e1a20": ["envfx_set_bubble_texture"], + "802e1bb8": ["envfx_update_bubble_particles"], + "802e1ed8": ["envfx_set_max_bubble_particles"], + "802e1f48": ["envfx_update_bubbles"], + "802e20a0": ["convert_rotation"], + "802e2134": ["spawn_macro_abs_yrot_2params"], + "802e21dc": ["spawn_macro_abs_yrot_param1"], + "802e2284": ["spawn_macro_abs_special"], + "802e2414": ["spawn_macro_objects"], + "802e2690": ["spawn_macro_objects_hardcoded"], + "802e28ec": ["spawn_special_objects"], + "802e2cf0": ["render_hud_tex_lut"], + "802e2e58": ["render_hud_small_tex_lut"], + "802e30b4": ["render_power_meter_health_segment"], + "802e3214": ["render_dl_power_meter"], + "802e33b8": ["animate_power_meter_emphasized"], + "802e352c": ["handle_power_meter_actions"], + "802e3654": ["render_hud_power_meter"], + "802e3744": ["render_hud_mario_lives"], + "802e37a8": ["render_hud_coins"], + "802e380c": ["render_hud_stars"], + "802e38e4": ["render_hud_keys"], + "802e395c": ["render_hud_timer"], + "802e3b1c": ["set_hud_camera_status"], + "802e3b3c": ["render_hud_camera_status"], + "802e3d2c": ["render_hud"], + "802e3e50": ["set_yoshi_as_not_dead"], + "802e3e68": ["geo_obj_transparency_something"], + "802e3f68": ["absf_2"], + "802e3fac": ["turn_obj_away_from_surface"], + "802e405c": ["obj_find_wall"], + "802e41a4": ["turn_obj_away_from_steep_floor"], + "802e42e0": ["obj_orient_graph"], + "802e43e4": ["calc_obj_friction"], + "802e445c": ["calc_new_obj_vel_and_pos_y"], + "802e4814": ["calc_new_obj_vel_and_pos_y_underwater"], + "802e4cec": ["obj_update_pos_vel_xz"], + "802e4d88": ["obj_splash"], + "802e4e90": ["object_step"], + "802e5114": ["object_step_without_floor_orient"], + "802e5160": ["obj_move_xyz_using_fvel_and_yaw"], + "802e5208": ["is_point_within_radius_of_mario"], + "802e52b8": ["is_point_close_to_object"], + "802e5360": ["set_object_visibility"], + "802e53f4": ["obj_return_home_if_safe"], + "802e54b0": ["obj_return_and_displace_home"], + "802e55d0": ["obj_check_if_facing_toward_angle"], + "802e569c": ["obj_find_wall_displacement"], + "802e5760": ["obj_spawn_yellow_coins"], + "802e5824": ["obj_flicker_and_disappear"], + "802e58b4": ["current_mario_room_check"], + "802e5948": ["trigger_obj_dialog_when_facing"], + "802e5a80": ["obj_check_floor_death"], + "802e5b18": ["obj_lava_death"], + "802e5c6c": ["spawn_orange_number"], + "802e5d04": ["debug_sequence_tracker"], + "802e5de8": ["coin_step"], + "802e5e6c": ["moving_coin_flicker"], + "802e5ea4": ["coin_collected"], + "802e5ee8": ["bhv_moving_yellow_coin_init"], + "802e5f64": ["bhv_moving_yellow_coin_loop"], + "802e6098": ["bhv_moving_blue_coin_init"], + "802e6114": ["bhv_moving_blue_coin_loop"], + "802e62a4": ["bhv_blue_coin_sliding_jumping_init"], + "802e631c": ["blue_coin_sliding_away_from_mario"], + "802e63ec": ["blue_coin_sliding_slow_down"], + "802e6474": ["bhv_blue_coin_sliding_loop"], + "802e6628": ["bhv_blue_coin_jumping_loop"], + "802e6790": ["bhv_seaweed_init"], + "802e67dc": ["bhv_seaweed_bundle_init"], + "802e6a2c": ["bhv_bobomb_init"], + "802e6a8c": ["bobomb_spawn_coin"], + "802e6af8": ["bobomb_act_explode"], + "802e6bd4": ["bobomb_check_interactions"], + "802e6cf0": ["bobomb_act_patrol"], + "802e6dc8": ["bobomb_act_chase_mario"], + "802e6e84": ["bobomb_act_launched"], + "802e6ed8": ["generic_bobomb_free_loop"], + "802e7020": ["stationary_bobomb_free_loop"], + "802e7134": ["bobomb_free_loop"], + "802e7180": ["bobomb_held_loop"], + "802e7220": ["bobomb_dropped_loop"], + "802e7280": ["bobomb_thrown_loop"], + "802e7324": ["curr_obj_random_blink"], + "802e742c": ["bhv_bobomb_loop"], + "802e75a0": ["bhv_bobomb_fuse_smoke_init"], + "802e76ac": ["bhv_bobomb_buddy_init"], + "802e770c": ["bobomb_buddy_act_idle"], + "802e7814": ["bobomb_buddy_cannon_dialog"], + "802e79dc": ["bobomb_buddy_act_talk"], + "802e7b00": ["bobomb_buddy_act_turn_to_talk"], + "802e7bb0": ["bobomb_buddy_actions"], + "802e7c4c": ["bhv_bobomb_buddy_loop"], + "802e7c90": ["bhv_cannon_closed_init"], + "802e7d4c": ["cannon_door_act_opening"], + "802e7e54": ["bhv_cannon_closed_loop"], + "802e7f70": ["bhv_whirlpool_init"], + "802e7fb8": ["whirlpool_set_hitbox"], + "802e7fec": ["whirpool_orient_graph"], + "802e80dc": ["bhv_whirlpool_loop"], + "802e82b0": ["bhv_jet_stream_loop"], + "802e8388": ["bhv_homing_amp_init"], + "802e89d4": ["bhv_homing_amp_loop"], + "802e8ae4": ["bhv_circling_amp_init"], + "802e8ecc": ["bhv_circling_amp_loop"], + "802e8f68": ["bhv_butterfly_init"], + "802e9018": ["butterfly_step"], + "802e9278": ["butterfly_calculate_angle"], + "802e9470": ["butterfly_act_rest"], + "802e94e4": ["butterfly_act_follow_mario"], + "802e9548": ["butterfly_act_return_home"], + "802e96c8": ["bhv_butterfly_loop"], + "802e9764": ["bhv_hoot_init"], + "802e97fc": ["hoot_find_next_floor"], + "802e98c0": ["hoot_floor_bounce"], + "802e9a4c": ["hoot_free_step"], + "802e9cf4": ["hoot_player_set_yaw"], + "802e9d98": ["hoot_carry_step"], + "802e9f60": ["hoot_surface_collision"], + "802ea144": ["hoot_act_ascent"], + "802ea258": ["hoot_action_loop"], + "802ea3f0": ["hoot_turn_to_home"], + "802ea4ec": ["hoot_awake_loop"], + "802ea588": ["bhv_hoot_loop"], + "802ea6a8": ["bhv_beta_holdable_object_init"], + "802ea7e0": ["bhv_beta_holdable_object_loop"], + "802ea888": ["bhv_object_bubble_init"], + "802ea934": ["bhv_object_bubble_loop"], + "802eaa10": ["bhv_object_water_wave_init"], + "802eaa50": ["bhv_object_water_wave_loop"], + "802eaa8c": ["bhv_explosion_init"], + "802eaad0": ["bhv_explosion_loop"], + "802eabf0": ["bhv_bobomb_bully_death_smoke_init"], + "802eac3c": ["bhv_bobomb_explosion_bubble_init"], + "802ead3c": ["bhv_bobomb_explosion_bubble_loop"], + "802eaef8": ["bhv_respawner_loop"], + "802eaf84": ["create_respawner"], + "802eb05c": ["bhv_small_bully_init"], + "802eb104": ["bhv_big_bully_init"], + "802eb1c0": ["bully_check_mario_collision"], + "802eb288": ["bully_act_chase_mario"], + "802eb3f0": ["bully_act_knockback"], + "802eb510": ["bully_act_back_up"], + "802eb5c4": ["bully_backup_check"], + "802eb630": ["bully_play_stomping_sound"], + "802eb744": ["bully_step"], + "802eb7e0": ["bully_spawn_coin"], + "802eb8b0": ["bully_act_level_death"], + "802eb9d0": ["bhv_bully_loop"], + "802ebb74": ["big_bully_spawn_minion"], + "802ebc00": ["bhv_big_bully_with_minions_init"], + "802ebc88": ["big_bully_spawn_star"], + "802ebce0": ["bhv_big_bully_with_minions_loop"], + "802ebf70": ["water_ring_calc_mario_dist"], + "802ec030": ["water_ring_init"], + "802ec1b0": ["bhv_jet_stream_water_ring_init"], + "802ec200": ["water_ring_check_collection"], + "802ec3d0": ["water_ring_set_scale"], + "802ec4e0": ["water_ring_act_collected"], + "802ec59c": ["water_ring_act_not_collected"], + "802ec75c": ["bhv_jet_stream_water_ring_loop"], + "802ec7cc": ["spawn_manta_ray_ring_manager"], + "802ec818": ["water_ring_spawner_act_inactive"], + "802ec908": ["bhv_jet_stream_ring_spawner_loop"], + "802ec9b8": ["bhv_manta_ray_water_ring_init"], + "802ec9f0": ["manta_water_ring_act_not_collected"], + "802ecba4": ["bhv_manta_ray_water_ring_loop"], + "802ecc14": ["bhv_bowser_bomb_loop"], + "802ecd0c": ["bhv_bowser_bomb_explosion_loop"], + "802ecea0": ["bhv_bowser_bomb_smoke_loop"], + "802ecfac": ["bhv_celebration_star_init"], + "802ed10c": ["celeb_star_act_spin_around_mario"], + "802ed28c": ["celeb_star_act_face_camera"], + "802ed39c": ["bhv_celebration_star_loop"], + "802ed40c": ["bhv_celebration_star_sparkle_loop"], + "802ed45c": ["bhv_star_key_collection_puff_spawner_loop"], + "802ed498": ["bhv_lll_drawbridge_spawner_loop"], + "802ed62c": ["bhv_lll_drawbridge_loop"], + "802ed78c": ["bhv_small_bomp_init"], + "802ed7fc": ["bhv_small_bomp_loop"], + "802edacc": ["bhv_large_bomp_init"], + "802edb2c": ["bhv_large_bomp_loop"], + "802eddfc": ["bhv_wf_sliding_platform_init"], + "802edf28": ["bhv_wf_sliding_platform_loop"], + "802ee124": ["bhv_moneybag_init"], + "802ee1a0": ["moneybag_check_mario_collision"], + "802ee268": ["moneybag_jump"], + "802ee46c": ["moneybag_act_move_around"], + "802ee598": ["moneybag_act_return_home"], + "802ee728": ["moneybag_act_disappear"], + "802ee778": ["moneybag_act_death"], + "802ee7e0": ["bhv_moneybag_loop"], + "802ee8f4": ["bhv_moneybag_hidden_loop"], + "802ee9cc": ["bhv_bowling_ball_init"], + "802eea24": ["bowling_ball_set_hitbox"], + "802eea7c": ["bowling_ball_set_waypoints"], + "802eeb64": ["bhv_bowling_ball_roll_loop"], + "802eecb8": ["bhv_bowling_ball_initialize_loop"], + "802eedf0": ["bhv_bowling_ball_loop"], + "802eeeb4": ["bhv_generic_bowling_ball_spawner_init"], + "802eef9c": ["bhv_generic_bowling_ball_spawner_loop"], + "802ef0e8": ["bhv_thi_bowling_ball_spawner_loop"], + "802ef21c": ["bhv_bob_pit_bowling_ball_init"], + "802ef274": ["bhv_bob_pit_bowling_ball_loop"], + "802ef34c": ["bhv_free_bowling_ball_init"], + "802ef3f4": ["bhv_free_bowling_ball_roll_loop"], + "802ef524": ["bhv_free_bowling_ball_loop"], + "802ef63c": ["bhv_rr_cruiser_wing_init"], + "802ef66c": ["bhv_rr_cruiser_wing_loop"], + "802ef820": ["bhv_spindel_init"], + "802ef858": ["bhv_spindel_loop"], + "802efcd0": ["bhv_ssl_moving_pyramid_wall_init"], + "802efd8c": ["bhv_ssl_moving_pyramid_wall_loop"], + "802efe64": ["bhv_pyramid_elevator_init"], + "802efef4": ["bhv_pyramid_elevator_loop"], + "802f0104": ["bhv_pyramid_elevator_trajectory_marker_ball_loop"], + "802f0168": ["bhv_pyramid_top_init"], + "802f0288": ["bhv_pyramid_top_spinning"], + "802f04a0": ["bhv_pyramid_top_explode"], + "802f05b4": ["bhv_pyramid_top_loop"], + "802f06a8": ["bhv_pyramid_top_fragment_init"], + "802f0714": ["bhv_pyramid_top_fragment_loop"], + "802f0788": ["bhv_pyramid_pillar_touch_detector_loop"], + "802f07f4": ["bhv_waterfall_sound_loop"], + "802f0820": ["bhv_volcano_sound_loop"], + "802f084c": ["bhv_castle_flag_init"], + "802f0898": ["bhv_birds_sound_loop"], + "802f0950": ["bhv_ambient_sounds_init"], + "802f09a4": ["bhv_sand_sound_loop"], + "802f09f0": ["bhv_castle_cannon_grate_init"], + "802f0a40": ["bhv_snowmans_bottom_init"], + "802f0b7c": ["set_rolling_sphere_hitbox"], + "802f0bd4": ["adjust_rolling_face_pitch"], + "802f0c94": ["snowmans_bottom_act_1"], + "802f0df0": ["snowmans_bottom_act_2"], + "802f0fa8": ["snowmans_bottom_act_3"], + "802f105c": ["bhv_snowmans_bottom_loop"], + "802f120c": ["bhv_snowmans_head_init"], + "802f1370": ["bhv_snowmans_head_loop"], + "802f151c": ["bhv_snowmans_body_checkpoint_loop"], + "802f15a8": ["bhv_big_boulder_init"], + "802f162c": ["boulder_act_1"], + "802f1714": ["bhv_big_boulder_loop"], + "802f17f0": ["bhv_big_boulder_generator_loop"], + "802f1954": ["cap_set_hitbox"], + "802f19c8": ["cap_despawn"], + "802f1a10": ["cap_check_quicksand"], + "802f1bb8": ["cap_sink_quicksand"], + "802f1d64": ["bhv_wing_cap_init"], + "802f1dc0": ["cap_scale_vertically"], + "802f1e5c": ["wing_vanish_cap_act_0"], + "802f1f3c": ["bhv_wing_vanish_cap_loop"], + "802f1fd0": ["bhv_metal_cap_init"], + "802f2030": ["metal_cap_act_0"], + "802f20ac": ["bhv_metal_cap_loop"], + "802f2140": ["bhv_normal_cap_init"], + "802f21e0": ["normal_cap_set_save_flags"], + "802f2284": ["normal_cap_act_0"], + "802f23a8": ["bhv_normal_cap_loop"], + "802f2498": ["bhv_vanish_cap_init"], + "802f24f4": ["bhv_collect_star_init"], + "802f25b0": ["bhv_collect_star_loop"], + "802f2614": ["bhv_star_spawn_init"], + "802f2768": ["bhv_star_spawn_loop"], + "802f2aa0": ["spawn_star"], + "802f2b88": ["spawn_default_star"], + "802f2bd4": ["spawn_red_coin_cutscene_star"], + "802f2c24": ["spawn_no_exit_star"], + "802f2c84": ["bhv_hidden_red_coin_star_init"], + "802f2d8c": ["bhv_hidden_red_coin_star_loop"], + "802f2e6c": ["bhv_red_coin_init"], + "802f2f2c": ["bhv_red_coin_loop"], + "802f3014": ["bhv_hidden_star_init"], + "802f30f0": ["bhv_hidden_star_loop"], + "802f31bc": ["bhv_hidden_star_trigger_loop"], + "802f328c": ["bhv_bowser_course_red_coin_star_loop"], + "802f336c": ["bhv_ttm_rolling_log_init"], + "802f341c": ["rolling_log_roll_log"], + "802f36a4": ["bhv_rolling_log_loop"], + "802f38b0": ["volcano_act_1"], + "802f39b4": ["volcano_act_3"], + "802f3a30": ["bhv_volcano_trap_loop"], + "802f3b98": ["bhv_lll_rolling_log_init"], + "802f3c54": ["bhv_1up_interact"], + "802f3cc8": ["bhv_1up_common_init"], + "802f3d30": ["bhv_1up_init"], + "802f3dd0": ["one_up_loop_in_air"], + "802f3ea8": ["pole_1up_move_towards_mario"], + "802f401c": ["one_up_move_away_from_mario"], + "802f40cc": ["bhv_1up_walking_loop"], + "802f4248": ["bhv_1up_running_away_loop"], + "802f43b8": ["sliding_1up_move"], + "802f44c0": ["bhv_1up_sliding_loop"], + "802f45b8": ["bhv_1up_loop"], + "802f45f0": ["bhv_1up_jump_on_approach_loop"], + "802f4710": ["bhv_1up_hidden_loop"], + "802f48f4": ["bhv_1up_hidden_trigger_loop"], + "802f496c": ["bhv_1up_hidden_in_pole_loop"], + "802f4b00": ["bhv_1up_hidden_in_pole_trigger_loop"], + "802f4b78": ["bhv_1up_hidden_in_pole_spawner_loop"], + "802f4c68": ["controllable_platform_act_1"], + "802f4ce0": ["controllable_platform_act_2"], + "802f4d78": ["bhv_controllable_platform_sub_loop"], + "802f4eb4": ["bhv_controllable_platform_init"], + "802f5010": ["controllable_platform_hit_wall"], + "802f5068": ["controllable_platform_check_walls"], + "802f52c0": ["controllable_platform_shake_on_wall_hit"], + "802f547c": ["controllable_platform_tilt_from_mario"], + "802f55a4": ["bhv_controllable_platform_loop"], + "802f5cd4": ["bhv_breakable_box_small_init"], + "802f5d78": ["small_breakable_box_spawn_dust"], + "802f5e44": ["small_breakable_box_act_move"], + "802f5f48": ["breakable_box_small_released_loop"], + "802f6014": ["breakable_box_small_idle_loop"], + "802f60d8": ["breakable_box_small_get_dropped"], + "802f6150": ["breakable_box_small_get_thrown"], + "802f6228": ["bhv_breakable_box_small_loop"], + "802f62e4": ["bhv_sliding_snow_mound_loop"], + "802f6448": ["bhv_snow_mound_spawn_loop"], + "802f6588": ["floating_platform_find_home_y"], + "802f665c": ["floating_platform_act_0"], + "802f6984": ["bhv_floating_platform_loop"], + "802f6c0c": ["bhv_arrow_lift_loop"], + "802f6d20": ["bhv_orange_number_init"], + "802f6d58": ["bhv_orange_number_loop"], + "802f6e40": ["bhv_manta_ray_init"], + "802f7264": ["bhv_manta_ray_loop"], + "802f7348": ["bhv_falling_pillar_init"], + "802f7398": ["bhv_falling_pillar_spawn_hitboxes"], + "802f7418": ["bhv_falling_pillar_calculate_angle_in_front_of_mario"], + "802f74dc": ["bhv_falling_pillar_loop"], + "802f7760": ["bhv_falling_pillar_hitbox_loop"], + "802f7924": ["bhv_jrb_floating_box_loop"], + "802f7978": ["bhv_decorative_pendulum_init"], + "802f79b0": ["bhv_decorative_pendulum_loop"], + "802f7a58": ["bhv_treasure_chest_top_loop"], + "802f7c9c": ["bhv_treasure_chest_bottom_init"], + "802f7d04": ["bhv_treasure_chest_bottom_loop"], + "802f7f1c": ["spawn_treasure_chest"], + "802f7fa0": ["bhv_treasure_chest_ship_init"], + "802f8044": ["bhv_treasure_chest_ship_loop"], + "802f8158": ["bhv_treasure_chest_jrb_init"], + "802f8208": ["bhv_treasure_chest_jrb_loop"], + "802f82f8": ["bhv_treasure_chest_ddd_init"], + "802f83a4": ["bhv_treasure_chest_ddd_loop"], + "802f8490": ["bhv_mips_init"], + "802f85e0": ["bhv_mips_find_furthest_waypoint_to_mario"], + "802f8760": ["bhv_mips_act_wait_for_nearby_mario"], + "802f8808": ["bhv_mips_act_follow_path"], + "802f893c": ["bhv_mips_act_wait_for_animation_done"], + "802f8988": ["bhv_mips_act_fall_down"], + "802f8a34": ["bhv_mips_act_idle"], + "802f8ab4": ["bhv_mips_free"], + "802f8b54": ["bhv_mips_held"], + "802f8c74": ["bhv_mips_dropped"], + "802f8cf8": ["bhv_mips_thrown"], + "802f8dac": ["bhv_mips_loop"], + "802f8e54": ["bhv_yoshi_init"], + "802f8f08": ["yoshi_walk_loop"], + "802f9054": ["yoshi_idle_loop"], + "802f923c": ["yoshi_talk_loop"], + "802f93a8": ["yoshi_walk_and_jump_off_roof_loop"], + "802f9500": ["yoshi_finish_jumping_and_despawn_loop"], + "802f95ac": ["yoshi_give_present_loop"], + "802f965c": ["bhv_yoshi_loop"], + "802fbc4c": ["bhv_koopa_init"], + "802fc414": ["shelled_koopa_attack_handler"], + "802fcc00": ["obj_begin_race"], + "802fd7f8": ["bhv_koopa_update"], + "802fd950": ["bhv_koopa_race_endpoint_update"], + "802fda28": ["bhv_pokey_body_part_update"], + "802fe3b0": ["bhv_pokey_update"], + "802fe8b4": ["bhv_swoop_update"], + "802ff040": ["bhv_fly_guy_update"], + "802ff214": ["bhv_goomba_triplet_spawner_update"], + "802ff408": ["bhv_goomba_init"], + "802ff94c": ["huge_goomba_weakly_attacked"], + "802ff96c": ["bhv_goomba_update"], + "802ffb38": ["bhv_chain_chomp_chain_part_update"], + "80300e40": ["bhv_chain_chomp_update"], + "80300ecc": ["bhv_wooden_post_update"], + "80301148": ["bhv_chain_chomp_gate_init"], + "80301180": ["bhv_chain_chomp_gate_update"], + "80301210": ["bhv_wiggler_body_part_update"], + "803014cc": ["wiggler_init_segments"], + "803016e0": ["wiggler_update_segments"], + "803020e4": ["wiggler_jumped_on_attack_handler"], + "80302154": ["bhv_wiggler_update"], + "80302910": ["bhv_spiny_update"], + "80303028": ["bhv_enemy_lakitu_update"], + "8030369c": ["bhv_cloud_update"], + "80303744": ["bhv_cloud_part_update"], + "80303984": ["bhv_camera_lakitu_init"], + "80303f64": ["bhv_camera_lakitu_update"], + "803043f8": ["bhv_monty_mole_hole_update"], + "80304474": ["monty_mole_spawn_dirt_particles"], + "803044c0": ["bhv_monty_mole_init"], + "80304ba8": ["bhv_monty_mole_update"], + "80304fd4": ["bhv_monty_mole_rock_update"], + "80305100": ["bhv_platform_on_track_init"], + "80305a58": ["bhv_platform_on_track_update"], + "80305bb0": ["bhv_track_ball_update"], + "80305c14": ["bhv_seesaw_platform_init"], + "80305c90": ["bhv_seesaw_platform_update"], + "80305e2c": ["bhv_ferris_wheel_axle_init"], + "80305f24": ["bhv_ferris_wheel_platform_update"], + "80306084": ["bhv_water_bomb_spawner_update"], + "803062a8": ["water_bomb_spawn_explode_particles"], + "803067e8": ["bhv_water_bomb_update"], + "803068c0": ["bhv_water_bomb_shadow_update"], + "8030699c": ["bhv_ttc_rotating_solid_init"], + "80306a38": ["bhv_ttc_rotating_solid_update"], + "80306cc4": ["bhv_ttc_pendulum_init"], + "80306d38": ["bhv_ttc_pendulum_update"], + "80306f48": ["bhv_ttc_treadmill_init"], + "80307010": ["bhv_ttc_treadmill_update"], + "803071b8": ["bhv_ttc_moving_bar_init"], + "80307670": ["bhv_ttc_moving_bar_update"], + "80307760": ["bhv_ttc_cog_init"], + "803077e0": ["bhv_ttc_cog_update"], + "80307930": ["bhv_ttc_pit_block_init"], + "803079c8": ["bhv_ttc_pit_block_update"], + "80307ae4": ["bhv_ttc_elevator_init"], + "80307b58": ["bhv_ttc_elevator_update"], + "80307c88": ["bhv_ttc_2d_rotator_init"], + "80307cf8": ["bhv_ttc_2d_rotator_update"], + "80307ea4": ["bhv_ttc_spinner_update"], + "80307fb8": ["mr_blizzard_spawn_white_particles"], + "8030803c": ["bhv_mr_blizzard_init"], + "80308d6c": ["bhv_mr_blizzard_update"], + "80309154": ["bhv_mr_blizzard_snowball"], + "803091e0": ["bhv_sliding_plat_2_init"], + "80309354": ["bhv_sliding_plat_2_loop"], + "80309454": ["bhv_rotating_octagonal_plat_init"], + "803094d0": ["bhv_rotating_octagonal_plat_loop"], + "803094f8": ["bhv_animates_on_floor_switch_press_init"], + "80309530": ["bhv_animates_on_floor_switch_press_loop"], + "803097a4": ["bhv_activated_back_and_forth_platform_init"], + "803098c0": ["bhv_activated_back_and_forth_platform_update"], + "80309b64": ["bhv_recovery_heart_loop"], + "80309cec": ["bhv_bubble_cannon_barrel_loop"], + "80309ed4": ["water_bomb_cannon_act_0"], + "80309f68": ["water_bomb_cannon_act_1"], + "8030a0e8": ["water_bomb_cannon_act_2"], + "8030a11c": ["bhv_water_bomb_cannon_loop"], + "8030a1c0": ["bhv_unagi_init"], + "8030a2a8": ["unagi_act_0"], + "8030a390": ["unagi_act_1_4"], + "8030a514": ["unagi_act_2"], + "8030a614": ["unagi_act_3"], + "8030a93c": ["bhv_unagi_loop"], + "8030aabc": ["bhv_unagi_subobject_loop"], + "8030ad04": ["dorrie_raise_head"], + "8030ae9c": ["dorrie_act_move"], + "8030b0b8": ["dorrie_begin_head_raise"], + "8030b0f0": ["dorrie_act_lower_head"], + "8030b220": ["dorrie_act_raise_head"], + "8030b2f4": ["bhv_dorrie_update"], + "8030b658": ["bhv_haunted_chair_init"], + "8030b6d8": ["haunted_chair_act_0"], + "8030ba68": ["haunted_chair_act_1"], + "8030bc90": ["bhv_haunted_chair_loop"], + "8030bfd0": ["bhv_mad_piano_update"], + "8030c06c": ["flying_bookend_act_0"], + "8030c0f0": ["flying_bookend_act_1"], + "8030c210": ["flying_bookend_act_2"], + "8030c2c8": ["flying_bookend_act_3"], + "8030c364": ["bhv_flying_bookend_loop"], + "8030c4b0": ["bhv_bookend_spawn_loop"], + "8030c564": ["bookshelf_manager_act_0"], + "8030c60c": ["bookshelf_manager_act_1"], + "8030c6a4": ["bookshelf_manager_act_2"], + "8030c828": ["bookshelf_manager_act_3"], + "8030c894": ["bookshelf_manager_act_4"], + "8030c8ec": ["bhv_haunted_bookshelf_manager_loop"], + "8030c98c": ["bhv_book_switch_loop"], + "8030cd30": ["obj_spit_fire"], + "8030cddc": ["bhv_fire_piranha_plant_init"], + "8030d2f0": ["bhv_fire_piranha_plant_update"], + "8030d598": ["bhv_fire_spitter_update"], + "8030d640": ["bhv_small_piranha_flame_loop"], + "8030d8d4": ["bhv_fly_guy_flame_loop"], + "8030d93c": ["geo_snufit_move_mask"], + "8030d9ac": ["geo_snufit_scale_body"], + "8030da14": ["snufit_act_idle"], + "8030db38": ["snufit_act_shoot"], + "8030dc70": ["bhv_snufit_loop"], + "8030dfc4": ["bhv_snufit_balls_loop"], + "8030e14c": ["bhv_horizontal_grindel_init"], + "8030e16c": ["bhv_horizontal_grindel_update"], + "8030ea9c": ["bhv_eyerok_boss_loop"], + "8030fff8": ["bhv_eyerok_hand_loop"], + "80310498": ["bhv_klepto_init"], + "8031126c": ["obj_set_speed_to_zero"], + "8031129c": ["bhv_klepto_update"], + "80311874": ["bhv_bird_update"], + "803118e4": ["bhv_racing_penguin_init"], + "80312070": ["bhv_racing_penguin_update"], + "80312168": ["bhv_penguin_race_finish_line_update"], + "80312200": ["bhv_penguin_race_shortcut_check_update"], + "80312248": ["bhv_coffin_spawner_loop"], + "80312370": ["coffin_act_idle"], + "8031262c": ["coffin_act_stand_up"], + "8031274c": ["bhv_coffin_loop"], + "80312804": ["clam_act_0"], + "80312900": ["clam_act_1"], + "80312a54": ["bhv_clam_loop"], + "80313110": ["bhv_skeeter_update"], + "803131e8": ["bhv_skeeter_wave_update"], + "8031326c": ["bhv_swing_platform_init"], + "80313294": ["bhv_swing_platform_update"], + "80313354": ["bhv_donut_platform_spawner_update"], + "80313530": ["bhv_donut_platform_update"], + "803136cc": ["bhv_ddd_pole_init"], + "80313754": ["bhv_ddd_pole_update"], + "803137f4": ["bhv_red_coin_star_marker_init"], + "80313fc0": ["bhv_triplet_butterfly_update"], + "80314098": ["bubba_act_0"], + "8031427c": ["bubba_act_1"], + "803145d4": ["bhv_bubba_loop"], + "80314a30": ["prepare_reverb_ring_buffer"], + "80314cc0": ["get_volume_ramping"], + "80314de4": ["synthesis_execute"], + "80314f64": ["synthesis_do_one_audio_update"], + "80315590": ["synthesis_process_notes"], + "80316010": ["load_wave_samples"], + "803160dc": ["final_resample"], + "80316138": ["process_envelope"], + "8031619c": ["process_envelope_inner"], + "803166fc": ["note_apply_headset_pan_effects"], + "80316ac8": ["note_init_volume"], + "80316af4": ["note_set_vel_pan_reverb"], + "80316da8": ["note_set_frequency"], + "80316db4": ["note_enable"], + "80316e00": ["note_disable"], + "80316e80": ["reset_bank_and_seq_load_status"], + "80316ec4": ["discard_bank"], + "80316fb4": ["discard_sequence"], + "80317040": ["soundAlloc"], + "803170b4": ["sound_alloc_pool_init"], + "803170d4": ["persistent_pool_clear"], + "803170e8": ["temporary_pool_clear"], + "80317118": ["unused_803160F8"], + "80317128": ["sound_init_main_pools"], + "80317184": ["session_pools_init"], + "80317200": ["seq_and_bank_pool_init"], + "8031727c": ["persistent_pools_init"], + "80317338": ["temporary_pools_init"], + "803173fc": ["alloc_bank_or_seq"], + "8031782c": ["get_bank_or_seq"], + "803178ec": ["decrease_reverb_gain"], + "80317914": ["wait_for_audio_frames"], + "80317948": ["audio_reset_session"], + "80318040": ["audio_dma_copy_immediate"], + "803180c4": ["audio_dma_copy_async"], + "80318130": ["audio_dma_partial_copy_async"], + "803181ec": ["decrease_sample_dma_ttls"], + "80318300": ["dma_sample_data"], + "80318634": ["init_sample_dma_buffers"], + "803188f4": ["patch_audio_bank"], + "80318b30": ["bank_load_immediate"], + "80318c8c": ["bank_load_async"], + "80318dc4": ["sequence_dma_immediate"], + "80318e70": ["sequence_dma_async"], + "80318fac": ["get_missing_bank"], + "803190f4": ["load_banks_immediate"], + "80319220": ["preload_sequence"], + "80319328": ["load_sequence"], + "80319388": ["load_sequence_internal"], + "8031950c": ["audio_init"], + "80319920": ["note_init"], + "80319998": ["note_disable2"], + "803199b8": ["process_notes"], + "80319db8": ["seq_channel_layer_decay_release_internal"], + "80319f64": ["seq_channel_layer_note_decay"], + "80319f84": ["seq_channel_layer_note_release"], + "80319fa4": ["build_synthetic_wave"], + "8031a1d0": ["init_synthetic_wave"], + "8031a254": ["init_note_list"], + "8031a264": ["init_note_lists"], + "8031a2b4": ["init_note_free_list"], + "8031a368": ["note_pool_clear"], + "8031a494": ["note_pool_fill"], + "8031a5d0": ["audio_list_push_front"], + "8031a610": ["audio_list_remove"], + "8031a63c": ["pop_node_with_lower_prio"], + "8031a6cc": ["note_init_for_layer"], + "8031a794": ["func_80319728"], + "8031a7c8": ["note_release_and_take_ownership"], + "8031a820": ["alloc_note_from_disabled"], + "8031a89c": ["alloc_note_from_decaying"], + "8031a8f0": ["alloc_note_from_active"], + "8031a94c": ["alloc_note"], + "8031ac34": ["reclaim_notes"], + "8031adac": ["note_init_all"], + "8031aee8": ["sequence_player_process_sound"], + "8031b0cc": ["get_portamento_freq_scale"], + "8031b1c0": ["get_vibrato_pitch_change"], + "8031b248": ["get_vibrato_freq_scale"], + "8031b440": ["note_vibrato_update"], + "8031b4a0": ["note_vibrato_init"], + "8031b58c": ["adsr_init"], + "8031b5ac": ["adsr_update"], + "8031b830": ["sequence_channel_init"], + "8031b940": ["seq_channel_set_layer"], + "8031ba30": ["seq_channel_layer_disable"], + "8031ba6c": ["seq_channel_layer_free"], + "8031baf0": ["sequence_channel_disable"], + "8031bb5c": ["allocate_sequence_channel"], + "8031bba4": ["sequence_player_init_channels"], + "8031bcd0": ["sequence_player_disable_channels"], + "8031bda0": ["sequence_channel_enable"], + "8031be44": ["sequence_player_disable"], + "8031bf14": ["audio_list_push_back"], + "8031bf54": ["audio_list_pop_back"], + "8031bf94": ["init_layer_freelist"], + "8031c03c": ["m64_read_u8"], + "8031c050": ["m64_read_s16"], + "8031c080": ["m64_read_compressed_u16"], + "8031c0c4": ["seq_channel_layer_process_script"], + "8031ce54": ["get_instrument"], + "8031cfd4": ["set_instrument"], + "8031d068": ["sequence_channel_set_volume"], + "8031d08c": ["sequence_channel_process_script"], + "8031d9ec": ["sequence_player_process_sequence"], + "8031e240": ["process_sequences"], + "8031e2e8": ["init_sequence_player"], + "8031e374": ["init_sequence_players"], + "8031e4f0": ["unused_8031E4F0"], + "8031e568": ["unused_8031E568"], + "8031e7b8": ["create_next_audio_frame_task"], + "8031eb00": ["play_sound"], + "8031fd84": ["audio_signal_game_loop_tick"], + "80320678": ["seq_player_fade_out"], + "803206bc": ["fade_volume_scale"], + "803208ec": ["process_level_music_dynamics"], + "80320d70": ["unused_8031FED0"], + "80320e3c": ["seq_player_lower_volume"], + "80320ec4": ["seq_player_unlower_volume"], + "803210d4": ["set_audio_muted"], + "8032112c": ["sound_init"], + "80321398": ["get_currently_playing_sound"], + "80321474": ["stop_sound"], + "80321584": ["stop_sounds_from_source"], + "8032171c": ["stop_sounds_in_continuous_banks"], + "8032174c": ["sound_banks_disable"], + "8032180c": ["sound_banks_enable"], + "80321864": ["unused_803209D8"], + "803218d8": ["set_sound_moving_speed"], + "803218f4": ["play_dialog_sound"], + "803219ac": ["play_music"], + "80321bac": ["stop_background_music"], + "80321ce4": ["fadeout_background_music"], + "80321d38": ["drop_queued_background_music"], + "80321d5c": ["get_current_background_music"], + "80321d9c": ["func_80320ED8"], + "80321e48": ["play_secondary_music"], + "80321f48": ["func_80321080"], + "80321f9c": ["func_803210D4"], + "80322078": ["play_course_clear"], + "803220b4": ["play_peachs_jingle"], + "803220f0": ["play_puzzle_jingle"], + "8032212c": ["play_star_fanfare"], + "80322168": ["play_power_star_jingle"], + "803221b8": ["play_race_fanfare"], + "803221f4": ["play_toads_jingle"], + "80322230": ["sound_reset"], + "8032231c": ["audio_set_sound_mode"], + "80322348": ["unused_80321460"], + "8032235c": ["unused_80321474"], + "803223b0": ["osSetTime"], + "803223e0": ["osMapTLB"], + "803224a0": ["osUnmapTLBAll"], + "803224f0": ["sprintf"], + "8032255c": ["proutSprintf"], + "803225a0": ["osCreateMesgQueue"], + "803225d0": ["osSetEventMesg"], + "80322640": ["osViSetEvent"], + "803226b0": ["osCreateThread"], + "80322800": ["osRecvMesg"], + "80322940": ["_VirtualToPhysicalTask"], + "80322a5c": ["osSpTaskLoad"], + "80322bbc": ["osSpTaskStartGo"], + "80322c00": ["osSpTaskYield"], + "80322c20": ["osSendMesg"], + "80322d70": ["osSpTaskYielded"], + "80322df0": ["osStartThread"], + "80322f40": ["osWritebackDCacheAll"], + "80322f70": ["osCreateViManager"], + "803230f4": ["viMgrMain"], + "803232d0": ["osViSetMode"], + "80323340": ["osViBlack"], + "803233b0": ["osViSetSpecialFeatures"], + "80323570": ["osCreatePiManager"], + "803236f0": ["osSetThreadPri"], + "803237d0": ["osInitialize"], + "80323a00": ["osViSwapBuffer"], + "80323a50": ["sqrtf"], + "80323a60": ["osContStartReadData"], + "80323b24": ["osContGetReadData"], + "80323bcc": ["__osPackReadData"], + "80323cc0": ["osContInit"], + "80323ebc": ["__osContGetInitData"], + "80323f8c": ["__osPackRequestData"], + "80324080": ["osEepromProbe"], + "803240f0": ["__ull_rshift"], + "8032411c": ["__ull_rem"], + "80324158": ["__ull_div"], + "80324194": ["__ll_lshift"], + "803241c0": ["__ll_rem"], + "803241fc": ["__ll_div"], + "80324258": ["__ll_mul"], + "80324288": ["__ull_divremi"], + "803242e8": ["__ll_mod"], + "80324384": ["__ll_rshift"], + "803243b0": ["osInvalDCache"], + "80324460": ["osPiStartDma"], + "80324570": ["bzero"], + "80324610": ["osInvalICache"], + "80324690": ["osEepromLongRead"], + "803247d0": ["osEepromLongWrite"], + "80324910": ["bcopy"], + "80324c20": ["guOrthoF"], + "80324d74": ["guOrtho"], + "80324de0": ["guPerspectiveF"], + "80325010": ["guPerspective"], + "80325070": ["osGetTime"], + "80325100": ["__d_to_ll"], + "8032511c": ["__f_to_ll"], + "80325138": ["__d_to_ull"], + "803251d8": ["__f_to_ull"], + "80325274": ["__ll_to_d"], + "8032528c": ["__ll_to_f"], + "803252a4": ["__ull_to_d"], + "803252d8": ["__ull_to_f"], + "80325310": ["cosf"], + "80325480": ["sinf"], + "80325640": ["guTranslateF"], + "80325688": ["guTranslate"], + "803256e0": ["guRotateF"], + "80325874": ["guRotate"], + "803258d0": ["guScaleF"], + "80325924": ["guScale"], + "80325970": ["osAiSetFrequency"], + "80325bd4": ["alBnkfNew"], + "80325cd8": ["alSeqFileNew"], + "80325d20": ["osWritebackDCache"], + "80325da0": ["osAiGetLength"], + "80325db0": ["osAiSetNextBuffer"], + "80325e60": ["__osTimerServicesInit"], + "80325eec": ["__osTimerInterrupt"], + "80326064": ["__osSetTimerIntr"], + "803260d8": ["__osInsertTimer"], + "80326260": ["_Printf"], + "803273f0": ["memcpy"], + "8032741c": ["strlen"], + "80327444": ["strchr"], + "80327490": ["__osDequeueThread"], + "803274d0": ["__osDisableInt"], + "803274f0": ["__osRestoreInt"], + "80327510": ["__osViInit"], + "80327640": ["__osExceptionPreamble"], + "80327650": ["__osException"], + "803278e4": ["counter"], + "80327904": ["cart"], + "80327938": ["rcp"], + "80327a68": ["prenmi"], + "80327ac4": ["sw2"], + "80327ae4": ["sw1"], + "80327b1c": ["redispatch"], + "80327b68": ["panic"], + "80327b98": ["send_mesg"], + "80327c80": ["__osEnqueueAndYield"], + "80327d10": ["__osEnqueueThread"], + "80327d58": ["__osPopThread"], + "80327d68": ["__osDispatchThread"], + "80327ea8": ["__osCleanupThread"], + "80327eb0": ["osVirtualToPhysical"], + "80327f30": ["__osSpSetStatus"], + "80327f40": ["__osSpSetPc"], + "80327f80": ["__osSpRawStartDma"], + "80328010": ["__osSpDeviceBusy"], + "80328040": ["__osSpGetStatus"], + "80328050": ["osGetThreadPri"], + "80328070": ["__osViGetCurrentContext"], + "80328080": ["__osViSwapContext"], + "803283e0": ["osGetCount"], + "803283f0": ["__osPiCreateAccessQueue"], + "80328440": ["__osPiGetAccess"], + "80328484": ["__osPiRelAccess"], + "803284b0": ["osPiRawStartDma"], + "80328590": ["__osDevMgrMain"], + "80328710": ["__osSetSR"], + "80328720": ["__osGetSR"], + "80328730": ["__osSetFpcCsr"], + "80328740": ["__osSiRawReadIo"], + "80328790": ["__osSiRawWriteIo"], + "803287e0": ["osMapTLBRdb"], + "80328840": ["osPiRawReadIo"], + "803288a0": ["__osSiCreateAccessQueue"], + "803288f0": ["__osSiGetAccess"], + "80328934": ["__osSiRelAccess"], + "80328960": ["__osSiRawStartDma"], + "80328a10": ["osSetTimer"], + "80328af0": ["osEepromWrite"], + "80328ca0": ["__osPackEepWriteData"], + "80328dac": ["__osEepStatus"], + "80328fd0": ["osJamMesg"], + "80329120": ["osPiGetCmdQueue"], + "80329150": ["osEepromRead"], + "80329340": ["__osPackEepReadData"], + "80329450": ["guMtxF2L"], + "80329550": ["guMtxIdentF"], + "803295d8": ["guMtxIdent"], + "80329608": ["guMtxL2F"], + "803296c0": ["guNormalize"], + "80329750": ["__osAiDeviceBusy"], + "80329780": ["__osSetCompare"], + "80329790": ["_Litob"], + "80329a90": ["_Ldtob"], + "8032a860": ["u32_to_string"], + "8032a890": ["string_to_u32"], + "8032a8e8": ["send_packet"], + "8032a9a8": ["send"], + "8032aa80": ["process_command_memory"], + "8032aacc": ["process_command_register"], + "8032aaf8": ["kdebugserver"], + "8032ace0": ["__osSyncPutChars"], + "8032ae10": ["osSetIntMask"], + "8032ae70": ["osDestroyThread"], + "8032af70": ["__osProbeTLB"], + "8032b030": ["__osSiDeviceBusy"], + "8032b060": ["lldiv"], + "8032b160": ["ldiv"], + "8032b1f0": ["__osGetCause"], + "8032b200": ["__osAtomicDec"], + "8032b260": ["rspF3DBootStart"], + "8032b330": ["rspF3DBootEnd", "rspF3DStart"], + "8032c738": ["rspF3DEnd"], + "8032c740": ["rspAspMainStart"], + "8032d560": ["rspAspMainEnd", "gVblankHandler1"], + "8032d564": ["gVblankHandler2"], + "8032d568": ["gActiveSPTask"], + "8032d56c": ["sCurrentAudioSPTask"], + "8032d570": ["sCurrentDisplaySPTask"], + "8032d574": ["sNextAudioSPTask"], + "8032d578": ["sNextDisplaySPTask"], + "8032d57c": ["sAudioEnabled"], + "8032d580": ["gNumVblanks"], + "8032d584": ["gResetTimer"], + "8032d588": ["gNmiResetBarsTimer"], + "8032d58c": ["gDebugLevelSelect"], + "8032d590": ["D_8032C650"], + "8032d594": ["gShowProfiler"], + "8032d598": ["gShowDebugText"], + "8032d5d4": ["gGlobalTimer"], + "8032d5d8": ["sRenderedFramebuffer"], + "8032d5dc": ["sRenderingFramebuffer"], + "8032d5e0": ["gGoddardVblankCallback"], + "8032d5e4": ["gPlayer1Controller"], + "8032d5e8": ["gPlayer2Controller"], + "8032d5ec": ["gPlayer3Controller"], + "8032d5f0": ["gCurrDemoInput"], + "8032d5f4": ["gDemoInputListID"], + "8032d5f8": ["gRecordedDemoInput"], + "8032d6d0": ["credits01"], + "8032d6d8": ["credits02"], + "8032d6e4": ["credits03"], + "8032d6f0": ["credits04"], + "8032d700": ["credits05"], + "8032d710": ["credits06"], + "8032d71c": ["credits07"], + "8032d728": ["credits08"], + "8032d738": ["credits09"], + "8032d740": ["credits10"], + "8032d750": ["credits11"], + "8032d75c": ["credits12"], + "8032d764": ["credits13"], + "8032d774": ["credits14"], + "8032d77c": ["credits15"], + "8032d788": ["credits16"], + "8032d79c": ["credits17"], + "8032d7ac": ["credits18"], + "8032d7bc": ["credits19"], + "8032d7c4": ["credits20"], + "8032d7cc": ["sCreditsSequence"], + "8032d93c": ["gMarioState"], + "8032d940": ["unused1"], + "8032d944": ["sWarpCheckpointActive"], + "8032daa0": ["sTerrainSounds"], + "8032dacc": ["sSquishScaleOverTime"], + "8032dae0": ["sCapFlickerFrames"], + "8032daf8": ["gWaterSurfacePseudoFloor"], + "8032dc50": ["sJumpLandAction"], + "8032dc68": ["sFreefallLandAction"], + "8032dc80": ["sSideFlipLandAction"], + "8032dc98": ["sHoldJumpLandAction"], + "8032dcb0": ["sHoldFreefallLandAction"], + "8032dcc8": ["sLongJumpLandAction"], + "8032dce0": ["sDoubleJumpLandAction"], + "8032dcf8": ["sTripleJumpLandAction"], + "8032dd10": ["sBackflipLandAction"], + "8032dd40": ["sPunchingForwardVelocities"], + "8032dd80": ["gLastCompletedCourseNum"], + "8032dd84": ["gLastCompletedStarNum"], + "8032dd88": ["sUnusedGotGlobalCoinHiScore"], + "8032dd8c": ["gGotFileCoinHiScore"], + "8032dd90": ["gCurrCourseStarFlags"], + "8032dd94": ["gSpecialTripleJump"], + "8032dd98": ["gLevelToCourseNumTable"], + "8032ddc0": ["gMarioSpawnInfo"], + "8032ddc4": ["gLoadedGraphNodes"], + "8032ddc8": ["gAreas"], + "8032ddcc": ["gCurrentArea"], + "8032ddd0": ["gCurrCreditsEntry"], + "8032ddd4": ["D_8032CE74"], + "8032ddd8": ["D_8032CE78"], + "8032dddc": ["gWarpTransDelay"], + "8032dde0": ["gFBSetColor"], + "8032dde4": ["gWarpTransFBSetColor"], + "8032dde8": ["gWarpTransRed"], + "8032ddec": ["gWarpTransGreen"], + "8032ddf0": ["gWarpTransBlue"], + "8032ddf4": ["gCurrSaveFileNum"], + "8032ddf8": ["gCurrLevelNum"], + "8032ddfc": ["sWarpBhvSpawnTable"], + "8032de4c": ["sSpawnTypeFromWarpBhv"], + "8032de60": ["D_8032CF00"], + "8032de70": ["renderModeTable_1Cycle"], + "8032deb0": ["renderModeTable_2Cycle"], + "8032def0": ["gCurGraphNodeRoot"], + "8032def4": ["gCurGraphNodeMasterList"], + "8032def8": ["gCurGraphNodeCamFrustum"], + "8032defc": ["gCurGraphNodeCamera"], + "8032df00": ["gCurGraphNodeObject"], + "8032df04": ["gCurGraphNodeHeldObject"], + "8032df08": ["gAreaUpdateCounter"], + "8032df10": ["gProfilerMode"], + "8032df14": ["gCurrentFrameIndex1"], + "8032df18": ["gCurrentFrameIndex2"], + "8032df20": ["unused8032CFC0"], + "8032df24": ["gCutsceneFocus"], + "8032df28": ["unused8032CFC8"], + "8032df2c": ["unused8032CFCC"], + "8032df30": ["gSecondCameraFocus"], + "8032df34": ["sYawSpeed"], + "8032df38": ["gCurrLevelArea"], + "8032df3c": ["gPrevLevel"], + "8032df40": ["unused8032CFE0"], + "8032df44": ["unused8032CFE4"], + "8032df48": ["unused8032CFE8"], + "8032df4c": ["gCameraZoomDist"], + "8032df50": ["sObjectCutscene"], + "8032df54": ["gRecentCutscene"], + "8032df58": ["sFramesSinceCutsceneEnded"], + "8032df5c": ["sCutsceneDialogResponse"], + "8032df60": ["sMarioCamState"], + "8032df64": ["sLuigiCamState"], + "8032df68": ["unused8032D008"], + "8032df6c": ["sFixedModeBasePosition"], + "8032df78": ["sUnusedModeBasePosition_2"], + "8032df84": ["sUnusedModeBasePosition_3"], + "8032df90": ["sUnusedModeBasePosition_4"], + "8032df9c": ["sUnusedModeBasePosition_5"], + "8032dfa8": ["sModeTransitions"], + "8032e008": ["unused8032D0A8"], + "8032e010": ["unused8032D0B0"], + "8032e018": ["sDanceCutsceneTable"], + "8032e024": ["unusedDanceInfo1"], + "8032e038": ["unusedDanceType"], + "8032e03c": ["unusedDanceInfo2"], + "8032e050": ["sBBHLibraryParTrackPath"], + "8032e098": ["sCamSL"], + "8032e0e0": ["sCamTHI"], + "8032e128": ["sCamHMC"], + "8032e1d0": ["sCamSSL"], + "8032e248": ["sCamRR"], + "8032e2f0": ["sCamBOB"], + "8032e338": ["sCamCotMC"], + "8032e368": ["sCamCCM"], + "8032e3b0": ["sCamCastle"], + "8032e6f8": ["sCamBBH"], + "8032ecb0": ["sCameraTriggers"], + "8032ed50": ["sIntroStartToPipePosition"], + "8032ee08": ["sIntroStartToPipeFocus"], + "8032eec0": ["sIntroPipeToDialogPosition"], + "8032ef30": ["sIntroPipeToDialogFocus"], + "8032efa0": ["sEndingFlyToWindowPos"], + "8032eff0": ["sEndingFlyToWindowFocus"], + "8032f048": ["sEndingPeachDescentCamPos"], + "8032f0e8": ["sEndingMarioToPeachPos"], + "8032f130": ["sEndingMarioToPeachFocus"], + "8032f178": ["sEndingLookUpAtCastle"], + "8032f1b8": ["sEndingLookAtSkyFocus"], + "8032f214": ["gIntroLakituStartToPipeFocus"], + "8032f32c": ["gIntroLakituStartToPipeOffsetFromCamera"], + "8032f444": ["gEndWavingPos"], + "8032f48c": ["gEndWavingFocus"], + "8032f4d4": ["sCutsceneEnding"], + "8032f534": ["sCutsceneGrandStar"], + "8032f544": ["sCutsceneUnused"], + "8032f554": ["sCutsceneDoorWarp"], + "8032f564": ["sCutsceneEndWaving"], + "8032f56c": ["sCutsceneCredits"], + "8032f574": ["sCutsceneDoorPull"], + "8032f59c": ["sCutsceneDoorPush"], + "8032f5c4": ["sCutsceneDoorPullMode"], + "8032f5dc": ["sCutsceneDoorPushMode"], + "8032f5f4": ["sCutsceneEnterCannon"], + "8032f60c": ["sCutsceneStarSpawn"], + "8032f624": ["sCutsceneRedCoinStarSpawn"], + "8032f634": ["sCutsceneEnterPainting"], + "8032f63c": ["sCutsceneDeathExit"], + "8032f64c": ["sCutsceneExitPaintingSuccess"], + "8032f65c": ["sCutsceneUnusedExit"], + "8032f674": ["sCutsceneIntroPeach"], + "8032f69c": ["sCutscenePrepareCannon"], + "8032f6ac": ["sCutsceneExitWaterfall"], + "8032f6bc": ["sCutsceneFallToCastleGrounds"], + "8032f6cc": ["sCutsceneEnterPyramidTop"], + "8032f6dc": ["sCutscenePyramidTopExplode"], + "8032f6f4": ["sCutsceneStandingDeath"], + "8032f6fc": ["sCutsceneEnterPool"], + "8032f70c": ["sCutsceneDeathStomach"], + "8032f714": ["sCutsceneDeathOnBack"], + "8032f71c": ["sCutsceneQuicksandDeath"], + "8032f724": ["sCutsceneWaterDeath"], + "8032f72c": ["sCutsceneSuffocation"], + "8032f734": ["sCutsceneEnterBowserArena"], + "8032f74c": ["sCutsceneDanceDefaultRotate"], + "8032f754": ["sCutsceneDanceFlyAway"], + "8032f75c": ["sCutsceneDanceCloseup"], + "8032f764": ["sCutsceneKeyDance"], + "8032f76c": ["sCutsceneCapSwitchPress"], + "8032f774": ["sCutsceneSlidingDoorsOpen"], + "8032f784": ["sCutsceneUnlockKeyDoor"], + "8032f794": ["sCutsceneExitBowserSuccess"], + "8032f7a4": ["sCutsceneExitBowserDeath"], + "8032f7b4": ["sCutsceneExitSpecialSuccess"], + "8032f7c4": ["sCutsceneNonPaintingDeath"], + "8032f7d4": ["sCutsceneDialog"], + "8032f7ec": ["sCutsceneReadMessage"], + "8032f804": ["sDanceCutsceneIndexTable"], + "8032f870": ["sZoomOutAreaMasks"], + "8032f884": ["sBoBCreditsSplinePositions"], + "8032f8ac": ["sBoBCreditsSplineFocus"], + "8032f8d4": ["sWFCreditsSplinePositions"], + "8032f8fc": ["sWFCreditsSplineFocus"], + "8032f924": ["sJRBCreditsSplinePositions"], + "8032f94c": ["sJRBCreditsSplineFocus"], + "8032f974": ["sCCMSlideCreditsSplinePositions"], + "8032f99c": ["sCCMSlideCreditsSplineFocus"], + "8032f9c4": ["sBBHCreditsSplinePositions"], + "8032f9e4": ["sBBHCreditsSplineFocus"], + "8032fa04": ["sHMCCreditsSplinePositions"], + "8032fa2c": ["sHMCCreditsSplineFocus"], + "8032fa54": ["sTHIWigglerCreditsSplinePositions"], + "8032fa6c": ["sTHIWigglerCreditsSplineFocus"], + "8032fa84": ["sVolcanoCreditsSplinePositions"], + "8032fab4": ["sVolcanoCreditsSplineFocus"], + "8032fae4": ["sSSLCreditsSplinePositions"], + "8032fb14": ["sSSLCreditsSplineFocus"], + "8032fb44": ["sDDDCreditsSplinePositions"], + "8032fb7c": ["sDDDCreditsSplineFocus"], + "8032fbb4": ["sSLCreditsSplinePositions"], + "8032fbd4": ["sSLCreditsSplineFocus"], + "8032fbf4": ["sWDWCreditsSplinePositions"], + "8032fc14": ["sWDWCreditsSplineFocus"], + "8032fc34": ["sTTMCreditsSplinePositions"], + "8032fc64": ["sTTMCreditsSplineFocus"], + "8032fc94": ["sTHIHugeCreditsSplinePositions"], + "8032fccc": ["sTHIHugeCreditsSplineFocus"], + "8032fd04": ["sTTCCreditsSplinePositions"], + "8032fd24": ["sTTCCreditsSplineFocus"], + "8032fd44": ["sRRCreditsSplinePositions"], + "8032fd64": ["sRRCreditsSplineFocus"], + "8032fd84": ["sSACreditsSplinePositions"], + "8032fdac": ["sSACreditsSplineFocus"], + "8032fdd4": ["sCotMCCreditsSplinePositions"], + "8032fdfc": ["sCotMCCreditsSplineFocus"], + "8032fe24": ["sDDDSubCreditsSplinePositions"], + "8032fe4c": ["sDDDSubCreditsSplineFocus"], + "8032fe74": ["sCCMOutsideCreditsSplinePositions"], + "8032fe94": ["sCCMOutsideCreditsSplineFocus"], + "8032fec0": ["sObjectListUpdateOrder"], + "8032fecc": ["sParticleTypes"], + "8033006c": ["sMrIParticleActions"], + "80330074": ["sMrIActions"], + "80330084": ["sMrIHitbox"], + "803300a8": ["sCapSwitchText"], + "803300ac": ["sCapSwitchActions"], + "803300bc": ["sKingBobombActions"], + "803300e0": ["sKingBobombSoundStates"], + "80330140": ["sOpenedCannonActions"], + "8033015c": ["sUnusedChuckyaData"], + "80330198": ["sChuckyaActions"], + "803301a8": ["sRotatingPlatformData"], + "803301c0": ["sKoopaShellUnderwaterHitbox"], + "803301e4": ["sSparkleSpawnStarHitbox"], + "803301f4": ["sYellowCoinHitbox"], + "80330204": ["sCoinArrowPositions"], + "80330224": ["sCoinInsideBooActions"], + "80330298": ["sGrindelThwompActions"], + "803302ac": ["sTumblingBridgeData"], + "803302dc": ["sTumblingBridgeActions"], + "80330318": ["sElevatorActions"], + "80330370": ["sUkikiCageActions"], + "80330380": ["sBowserShockwaveHitPoints"], + "80330390": ["sSpindriftHitbox"], + "803303a0": ["sMetalBoxHitbox"], + "803303b0": ["sBreakableBoxHitbox"], + "803303c0": ["D_8032F460"], + "803303e8": ["sHeaveHoActions"], + "803303f8": ["sJumpingBoxHitbox"], + "80330408": ["sJumpingBoxActions"], + "8033042c": ["sBowserKeyHitbox"], + "8033043c": ["sBulletBillActions"], + "80330450": ["sBowserTailAnchorActions"], + "8033045c": ["sBowserDebugActions"], + "8033046c": ["sBowserVelYAir"], + "80330470": ["sBowserFVelAir"], + "80330474": ["sBowserDanceStepNoises"], + "80330478": ["sBowserDefeatedDialogText"], + "80330480": ["sBowsertiltPlatformData"], + "803304c8": ["sBowserActions"], + "80330518": ["sBowserSoundStates"], + "803305f0": ["sBowserRainbowLight"], + "803305f4": ["sBowserHealth"], + "803305f8": ["sBowserFallingPlatform"], + "8033067c": ["sFallingBowserPlatformActions"], + "80330688": ["sGrowingBowserFlameHitbox"], + "80330698": ["sBowserFlameHitbox"], + "803306a8": ["sFlameFloatingYLimit"], + "803306b4": ["D_8032F754"], + "80330738": ["sUkikiSoundStates"], + "803307a0": ["sUkikiActions"], + "803307c0": ["D_8032F860"], + "803307f4": ["D_8032F894"], + "80330828": ["D_8032F8C8"], + "80330830": ["sRotatingCwFireBarsActions"], + "80330840": ["sKoopaShellHitbox"], + "80330850": ["sToxBoxActionTable1"], + "80330884": ["sToxBoxActionTable2"], + "803308a8": ["sToxBoxActionTable3"], + "803308cc": ["sToxBoxActionTables"], + "803308d8": ["sToxBoxActions"], + "80330900": ["TablePiranhaPlantActions"], + "80330b1c": ["sBowserPuzzlePieceActions"], + "80330b38": ["sTuxiesMotherActions"], + "80330b44": ["sSmallPenguinActions"], + "80330b74": ["sBirdChirpChirpActions"], + "80330b84": ["sCheepCheepActions"], + "80330b90": ["sExclamationBoxHitbox"], + "80330ba0": ["sExclamationBoxContents"], + "80330c20": ["sExclamationBoxActions"], + "80330c38": ["sSkullSlidingBoxHitbox"], + "80330c48": ["gOpenableGrills"], + "80330c58": ["sTweesterHitbox"], + "80330c68": ["sTweesterActions"], + "80330cd4": ["sScuttlebugHitbox"], + "80330ce4": ["sWhompActions"], + "80330d0c": ["sWaterSplashDropletParams"], + "80330d30": ["gShallowWaterSplashDropletParams"], + "80330d54": ["sWaterDropletFishParams"], + "80330d78": ["gShallowWaterWaveDropletParams"], + "80330d9c": ["sStrongWindParticleHitbox"], + "80330dac": ["sSLWalkingPenguinErraticSteps"], + "80330e20": ["D_8032FEC0"], + "80330e24": ["unused_8032FEC4"], + "80330e34": ["gMarioPlatform"], + "80330e40": ["sDebugEffectStringInfo"], + "80330e64": ["sDebugEnemyStringInfo"], + "80330e88": ["sDebugInfoDPadMask"], + "80330e8c": ["sDebugInfoDPadUpdID"], + "80330e90": ["sDebugLvSelectCheckFlag"], + "80330e94": ["sDebugPage"], + "80330e98": ["sNoExtraDebug"], + "80330e9c": ["sDebugStringArrPrinted"], + "80330ea0": ["sDebugSysCursor"], + "80330ea4": ["sDebugInfoButtonSeqID"], + "80330ea8": ["sDebugInfoButtonSeq"], + "80330ec0": ["sTransitionColorFadeCount"], + "80330ec4": ["sTransitionTextureFadeCount"], + "80330ec8": ["sTextureTransitionID"], + "80330ee0": ["rectangles"], + "80330f00": ["sSkyboxTextures"], + "80330f28": ["sSkyboxColors"], + "80330f30": ["gMovtexCounter"], + "80330f34": ["gMovtexCounterPrev"], + "80330f38": ["gMovtexVtxColor"], + "80330f3c": ["gPaintingMarioYEntry"], + "80330f40": ["gWDWWaterLevelSet"], + "80330f44": ["gMovtexIdToTexture"], + "80330f64": ["gMovtexNonColored"], + "803311a4": ["gMovtexColored"], + "8033127c": ["gMovtexColored2"], + "80331300": ["sHMCPaintings"], + "80331308": ["sInsideCastlePaintings"], + "80331344": ["sTTMPaintings"], + "8033134c": ["sPaintingGroups"], + "80331358": ["gPaintingUpdateCounter"], + "8033135c": ["gLastPaintingUpdateCounter"], + "80331360": ["sTextLabelsCount"], + "80331370": ["gDialogCharWidths"], + "80331470": ["gMenuState"], + "80331474": ["gDialogBoxAngle"], + "80331478": ["gDialogBoxScale"], + "8033147c": ["gDialogScrollOffsetY"], + "80331480": ["gDialogBoxType"], + "80331484": ["gDialogID"], + "80331488": ["gNextDialogPageStartStrIndex"], + "8033148c": ["gDialogPageStartStrIndex"], + "80331490": ["gMenuLineNum"], + "80331494": ["gDialogWithChoice"], + "80331498": ["gMenuHoldKeyIndex"], + "8033149c": ["gMenuHoldKeyTimer"], + "803314a0": ["gDialogResponse"], + "803314b0": ["gHudSymCoin"], + "803314b4": ["gHudSymX"], + "803314f8": ["gMenuMode"], + "803314fc": ["gEndCutsceneStrEn0"], + "80331504": ["gEndCutsceneStrEn1"], + "80331538": ["gEndCutsceneStrEn2"], + "80331558": ["gEndCutsceneStrEn3"], + "8033156c": ["gEndCutsceneStrEn4"], + "80331598": ["gEndCutsceneStrEn5"], + "803315ac": ["gEndCutsceneStrEn6"], + "803315cc": ["gEndCutsceneStrEn7"], + "803315dc": ["gEndCutsceneStrEn8"], + "803315e4": ["gEndCutsceneStringsEn"], + "8033160c": ["gCutsceneMsgFade"], + "80331610": ["gCutsceneMsgIndex"], + "80331614": ["gCutsceneMsgDuration"], + "80331618": ["gCutsceneMsgTimer"], + "8033161c": ["gDialogCameraAngleIndex"], + "80331620": ["gDialogCourseActNum"], + "803316c8": ["gCourseCompleteCoinsEqual"], + "803316cc": ["gCourseCompleteScreenTimer"], + "803316d0": ["gCourseCompleteCoins"], + "803316d4": ["gHudFlash"], + "80331750": ["gEnvFxMode"], + "80331754": ["D_80330644"], + "80331758": ["gSnowTempVtx"], + "80331788": ["gSnowFlakeVertex1"], + "80331790": ["gSnowFlakeVertex2"], + "80331798": ["gSnowFlakeVertex3"], + "803317a0": ["D_80330690"], + "803317a4": ["D_80330694"], + "803317a8": ["gBubbleTempVtx"], + "803325fc": ["sPowerMeterVisibleTimer"], + "80332614": ["sPrevCheckMarioRoom"], + "80332618": ["sYoshiDead"], + "8033261c": ["sDebugSequenceTracker"], + "80332620": ["sDebugTimer"], + "803327a8": ["sBreakableBoxSmallHitbox"], + "80332b00": ["sMrBlizzardHitbox"], + "80332b24": ["sMrBlizzardSnowballHitbox"], + "80332b64": ["D_80331A54"], + "80332bdc": ["D_80331ACC"], + "80332bf0": ["sRecoveryHeartHitbox"], + "80332c00": ["sUnagiHitbox"], + "80332c10": ["sHauntedChairHitbox"], + "80332c30": ["sFlyingBookendHitbox"], + "80332c40": ["D_80331B30"], + "80332c4c": ["sBookSwitchHitbox"], + "80332c5c": ["sFirePiranhaPlantHitbox"], + "80332c6c": ["D_80331B5C"], + "80332c74": ["sPiranhaPlantFireHitbox"], + "80332c84": ["sSnufitHitbox"], + "80332c94": ["sSnufitBulletHitbox"], + "80332ca4": ["sEyerokHitbox"], + "80332cb4": ["D_80331BA4"], + "80332d10": ["coffinRelativePos"], + "80332d28": ["sClamShellHitbox"], + "80332d38": ["sSkeeterHitbox"], + "80332d48": ["D_80331C38"], + "80332e50": ["gAudioErrorFlags"], + "80332e54": ["sGameLoopTicked"], + "80332e58": ["sDialogSpeaker"], + "80332f04": ["sDialogSpeakerVoice"], + "80332f40": ["sNumProcessedSoundRequests"], + "80332f44": ["sSoundRequestCount"], + "80332f48": ["sDynBBH"], + "80332f54": ["sDynDDD"], + "80332f6c": ["sDynJRB"], + "80332f88": ["sDynWDW"], + "80332f98": ["sDynHMC"], + "80332fa8": ["sDynUnk38"], + "80332fb8": ["sDynNone"], + "80332fbc": ["sCurrentMusicDynamic"], + "80332fc0": ["sBackgroundMusicForDynamics"], + "80332fc4": ["sLevelDynamics"], + "80333060": ["sMusicDynamics"], + "803330c0": ["sLevelAreaReverbs"], + "80333138": ["sLevelAcousticReaches"], + "80333188": ["sBackgroundMusicDefaultVolume"], + "803331ac": ["sCurrentBackgroundMusicSeqId"], + "803331b0": ["sMusicDynamicDelay"], + "803331b4": ["sSoundBankUsedListBack"], + "803331c0": ["sSoundBankFreeListFront"], + "803331cc": ["sNumSoundsInBank"], + "803331d8": ["sMaxChannelsForSoundBank"], + "803331e4": ["sNumSoundsPerBank"], + "803331f0": ["gGlobalSoundSource"], + "803331fc": ["sUnusedSoundArgs"], + "80333208": ["sSoundBankDisabled"], + "80333218": ["D_80332108"], + "8033321c": ["sHasStartedFadeOut"], + "80333220": ["sSoundBanksThatLowerBackgroundMusic"], + "80333224": ["sUnused80332114"], + "80333228": ["sUnused80332118"], + "8033322c": ["sBackgroundMusicMaxTargetVolume"], + "80333230": ["D_80332120"], + "80333234": ["D_80332124"], + "80333238": ["sBackgroundMusicQueueSize"], + "8033323c": ["sUnused8033323C"], + "803332a0": ["gAudioSessionPresets"], + "80333498": ["gAudioCosineTable"], + "80333598": ["gPitchBendFrequencyScale"], + "80333994": ["gNoteFrequencies"], + "80333b94": ["gDefaultShortNoteVelocityTable"], + "80333ba4": ["gDefaultShortNoteDurationTable"], + "80333bb4": ["gVibratoCurve"], + "80333bc4": ["gDefaultEnvelope"], + "80333bd0": ["sSineWave"], + "80333c50": ["sSquareWave"], + "80333cd0": ["sTriangleWave"], + "80333d50": ["sSawtoothWave"], + "80333dd0": ["gWaveSamples"], + "80333de0": ["gHeadsetPanQuantization"], + "80333df4": ["gHeadsetPanVolume"], + "80333ff4": ["gStereoPanVolume"], + "803341f4": ["gDefaultPanVolume"], + "803343f4": ["gVolRampingLhs136"], + "803345f4": ["gVolRampingRhs136"], + "803347f4": ["gVolRampingLhs144"], + "803349f4": ["gVolRampingRhs144"], + "80334bf4": ["gVolRampingLhs128"], + "80334df4": ["gVolRampingRhs128"], + "80334ff4": ["gTatumsPerBeat"], + "80334ff8": ["gUnusedCount80333EE8"], + "80334ffc": ["gAudioHeapSize"], + "80335000": ["gAudioInitPoolSize"], + "80335004": ["gAudioLoadLock"], + "80335008": ["sUnused8033EF8"], + "80335010": ["osViModeTable"], + "803358d0": ["viMgrMainArgs"], + "803358f0": ["__osPiDevMgr"], + "80335910": ["osClockRate"], + "80335918": ["__osShutdown"], + "80335920": ["_osContInitialized"], + "80335940": ["__osTimerList"], + "80335950": ["spaces"], + "80335974": ["zeroes"], + "803359a0": ["__osThreadTail"], + "803359a4": ["D_80334894"], + "803359a8": ["__osRunQueue"], + "803359ac": ["__osActiveQueue"], + "803359b0": ["__osRunningThread"], + "803359b4": ["__osFaultedThread"], + "803359c0": ["sViContexts"], + "80335a20": ["__osViCurr"], + "80335a24": ["__osViNext"], + "80335a28": ["sTvType"], + "80335a2c": ["osViClock"], + "80335a30": ["__osHwIntTable"], + "80335a44": ["D_80334934"], + "80335a48": ["D_80334938"], + "80335a50": ["gOsPiAccessQueueCreated"], + "80335a60": ["gOsSiAccessQueueCreated"], + "80335aa0": ["osViModePalLan1"], + "80335af0": ["osViModeMpalLan1"], + "80335b50": ["__osRdbSendMessage"], + "80335b54": ["__osRdbWriteOK"], + "80339980": ["__osIntOffTable"], + "803399a0": ["__osIntTable"], + "803399d0": ["NAN"], + "803399e0": ["pows"], + "80339a40": ["__osRcpImTable"], + "80339ac0": ["rspF3DDataStart"], + "8033a2c0": ["rspF3DDataEnd", "rspAspMainDataStart"], + "8033a580": ["rspAspMainDataEnd", "_mainSegmentEnd", "_mainSegmentNoloadStart", "D_80339210"], + "000f5580": ["_mainSegmentRomEnd", "_engineSegmentRomStart"], + "8033a730": ["gIdleThread"], + "8033a8e0": ["gMainThread"], + "8033aa90": ["gGameLoopThread"], + "8033ac40": ["gSoundThread"], + "8033adf0": ["gPIMesgQueue"], + "8033ae08": ["gIntrMesgQueue"], + "8033ae20": ["gSPTaskMesgQueue"], + "8033ae38": ["gDmaMesgBuf"], + "8033ae40": ["gPIMesgBuf"], + "8033aec0": ["gSIEventMesgBuf"], + "8033aec8": ["gIntrMesgBuf"], + "8033af08": ["gUnknownMesgBuf"], + "8033af48": ["gDmaIoMesg"], + "8033af5c": ["gMainReceivedMesg"], + "8033af60": ["gDmaMesgQueue"], + "8033af78": ["gSIEventMesgQueue"], + "8033af90": ["gControllers"], + "8033afe8": ["gControllerStatuses"], + "8033aff8": ["gControllerPads"], + "8033b010": ["gGameVblankQueue"], + "8033b028": ["gGfxVblankQueue"], + "8033b040": ["gGameMesgBuf"], + "8033b044": ["gGfxMesgBuf"], + "8033b048": ["gGameVblankHandler"], + "8033b050": ["gPhysicalFramebuffers"], + "8033b05c": ["gPhysicalZBuffer"], + "8033b060": ["gMarioAnimsMemAlloc"], + "8033b064": ["gDemoInputsMemAlloc"], + "8033b068": ["gGfxSPTask"], + "8033b06c": ["gDisplayListHead"], + "8033b070": ["gGfxPoolEnd"], + "8033b074": ["gGfxPool"], + "8033b078": ["gControllerBits"], + "8033b079": ["gEepromProbe"], + "8033b080": ["gMarioAnimsBuf"], + "8033b090": ["gDemoInputsBuf"], + "8033b170": ["gMarioStates"], + "8033b238": ["sCurrPlayMode"], + "8033b23a": ["D_80339ECA"], + "8033b23c": ["sTransitionTimer"], + "8033b240": ["sTransitionUpdate"], + "8033b244": ["unused2"], + "8033b248": ["sWarpDest"], + "8033b250": ["D_80339EE0"], + "8033b252": ["sDelayedWarpOp"], + "8033b254": ["sDelayedWarpTimer"], + "8033b256": ["sSourceWarpNodeId"], + "8033b258": ["sDelayedWarpArg"], + "8033b25c": ["sUnusedLevelUpdateBss"], + "8033b25e": ["sTimerRunning"], + "8033b260": ["gHudDisplay"], + "8033b26e": ["gNeverEnteredCastle"], + "8033b270": ["sDelayInvincTimer"], + "8033b272": ["sInvulnerable"], + "8033b280": ["unused80339F10"], + "8033b288": ["unused80339F1C"], + "8033b2c0": ["sFloorAlignMatrix"], + "8033b350": ["gMirrorMario"], + "8033b3b0": ["gBodyStates"], + "8033b400": ["sSegmentTable"], + "8033b480": ["sPoolFreeSpace"], + "8033b484": ["sPoolStart"], + "8033b488": ["sPoolEnd"], + "8033b48c": ["sPoolListHeadL"], + "8033b490": ["sPoolListHeadR"], + "8033b494": ["gEffectsMemoryPool"], + "8033b4a0": ["gWarpCheckpoint"], + "8033b4a5": ["gMainMenuDataModified"], + "8033b4a6": ["gSaveFileModified"], + "8033b4b0": ["gPlayerSpawnInfos"], + "8033b4d0": ["D_8033A160"], + "8033b8d0": ["gAreaData"], + "8033bab0": ["gWarpTransition"], + "8033bac6": ["gCurrCourseNum"], + "8033bac8": ["gCurrActNum"], + "8033baca": ["gCurrAreaIndex"], + "8033bacc": ["gSavedCourseNum"], + "8033bace": ["gMenuOptSelectIndex"], + "8033bad0": ["gSaveOptSelectIndex"], + "8033bae0": ["gMatStackIndex"], + "8033bae8": ["gMatStack"], + "8033c2e8": ["gMatStackFixed"], + "8033c368": ["gGeoTempState"], + "8033c378": ["gCurrAnimType"], + "8033c379": ["gCurrAnimEnabled"], + "8033c37a": ["gCurrAnimFrame"], + "8033c37c": ["gCurrAnimTranslationMultiplier"], + "8033c380": ["gCurrAnimAttribute"], + "8033c384": ["gCurrAnimData"], + "8033c388": ["gDisplayListHeap"], + "8033c390": ["gProfilerFrameData"], + "8033c520": ["gPlayerCameraState"], + "8033c568": ["sOldPosition"], + "8033c578": ["sOldFocus"], + "8033c588": ["sPlayer2FocusOffset"], + "8033c594": ["sCreditsPlayer2Pitch"], + "8033c596": ["sCreditsPlayer2Yaw"], + "8033c598": ["sFramesPaused"], + "8033c5a0": ["sFOVState"], + "8033c5c0": ["sModeTransition"], + "8033c5e8": ["sMarioGeometry"], + "8033c61c": ["unusedFreeRoamWallYaw"], + "8033c61e": ["sAvoidYawVel"], + "8033c620": ["sCameraYawAfterDoorCutscene"], + "8033c622": ["unusedSplinePitch"], + "8033c624": ["unusedSplineYaw"], + "8033c628": ["sHandheldShakeSpline"], + "8033c668": ["sHandheldShakeMag"], + "8033c66c": ["sHandheldShakeTimer"], + "8033c670": ["sHandheldShakeInc"], + "8033c674": ["sHandheldShakePitch"], + "8033c676": ["sHandheldShakeYaw"], + "8033c678": ["sHandheldShakeRoll"], + "8033c67c": ["unused8033B30C"], + "8033c680": ["unused8033B310"], + "8033c684": ["sSelectionFlags"], + "8033c686": ["unused8033B316"], + "8033c688": ["s2ndRotateFlags"], + "8033c68a": ["unused8033B31A"], + "8033c68c": ["sCameraSoundFlags"], + "8033c68e": ["sCButtonsPressed"], + "8033c690": ["sCutsceneDialogID"], + "8033c698": ["gLakituState"], + "8033c758": ["unused8033B3E8"], + "8033c75a": ["sAreaYaw"], + "8033c75c": ["sAreaYawChange"], + "8033c75e": ["sLakituDist"], + "8033c760": ["sLakituPitch"], + "8033c764": ["sZoomAmount"], + "8033c768": ["sCSideButtonYaw"], + "8033c76a": ["sBehindMarioSoundTimer"], + "8033c76c": ["sZeroZoomDist"], + "8033c770": ["sCUpCameraPitch"], + "8033c772": ["sModeOffsetYaw"], + "8033c774": ["sSpiralStairsYawOffset"], + "8033c776": ["s8DirModeBaseYaw"], + "8033c778": ["s8DirModeYawOffset"], + "8033c77c": ["sPanDistance"], + "8033c780": ["sCannonYOffset"], + "8033c788": ["sModeInfo"], + "8033c7d0": ["sCastleEntranceOffset"], + "8033c7dc": ["sParTrackIndex"], + "8033c7e0": ["sParTrackPath"], + "8033c7e8": ["sParTrackTransOff"], + "8033c808": ["sCameraStoreCUp"], + "8033c828": ["sCameraStoreCutscene"], + "8033c848": ["gCameraMovementFlags"], + "8033c84a": ["sStatusFlags"], + "8033c850": ["sCurCreditsSplinePos"], + "8033c950": ["sCurCreditsSplineFocus"], + "8033ca50": ["sCutsceneSplineSegment"], + "8033ca54": ["sCutsceneSplineSegmentProgress"], + "8033ca58": ["unused8033B6E8"], + "8033ca5a": ["sCutsceneShot"], + "8033ca5c": ["gCutsceneTimer"], + "8033ca60": ["sCutsceneVars"], + "8033cbc8": ["gObjCutsceneDone"], + "8033cbcc": ["gCutsceneObjSpawn"], + "8033cbd0": ["gCamera"], + "8033cbe0": ["gObjectListArray"], + "8033d260": ["gDebugInfoFlags"], + "8033d264": ["gNumFindFloorMisses"], + "8033d268": ["unused_8033BEF8"], + "8033d26c": ["gUnknownWallCount"], + "8033d270": ["gObjectCounter"], + "8033d274": ["gNumCalls"], + "8033d280": ["gDebugInfo"], + "8033d380": ["gDebugInfoOverwrite"], + "8033d480": ["gTimeStopState"], + "8033d488": ["gObjectPool"], + "80360e88": ["gMacroObjectDefaultParent"], + "803610e8": ["gObjectLists"], + "803610f0": ["gFreeObjectList"], + "80361158": ["gMarioObject"], + "8036115c": ["gLuigiObject"], + "80361160": ["gCurrentObject"], + "80361164": ["gCurBhvCommand"], + "80361168": ["gPrevFrameObjectCount"], + "8036116c": ["gSurfaceNodesAllocated"], + "80361170": ["gSurfacesAllocated"], + "80361174": ["gNumStaticSurfaceNodes"], + "80361178": ["gNumStaticSurfaces"], + "8036117c": ["gObjectMemoryPool"], + "80361180": ["gCheckingSurfaceCollisionsForCamera"], + "80361182": ["gFindFloorIncludeSurfaceIntangible"], + "80361184": ["gEnvironmentRegions"], + "80361188": ["gEnvironmentLevels"], + "803611d8": ["gDoorAdjacentRooms"], + "80361250": ["gMarioCurrentRoom"], + "80361252": ["D_8035FEE2"], + "80361254": ["D_8035FEE4"], + "80361256": ["gTHIWaterDrained"], + "80361258": ["gTTCSpeedSetting"], + "8036125a": ["gMarioShotFromCannon"], + "8036125c": ["gCCMEnteredSlide"], + "8036125e": ["gNumRoomedObjectsInMarioRoom"], + "80361260": ["gNumRoomedObjectsNotInMarioRoom"], + "80361262": ["gWDWWaterLevelChanging"], + "80361264": ["gMarioOnMerryGoRound"], + "80361290": ["gDebugPrintState1"], + "803612a0": ["gDebugPrintState2"], + "803612b0": ["sMarioOnFlyingCarpet"], + "803612b2": ["sSurfaceTypeBelowShadow"], + "803612b4": ["gShadowAboveWaterOrLava"], + "803612b5": ["gMarioOnIceOrCarpet"], + "803612c0": ["sSkyBoxInfo"], + "803612e0": ["gMovetexLastTextureId"], + "803612f0": ["gFlyingCarpetState"], + "80361300": ["gPaintingMarioFloorType"], + "80361304": ["gPaintingMarioXPos"], + "80361308": ["gPaintingMarioYPos"], + "8036130c": ["gPaintingMarioZPos"], + "80361310": ["gPaintingMesh"], + "80361314": ["gPaintingTriNorms"], + "80361318": ["gRipplingPainting"], + "8036131c": ["gDDDPaintingStatus"], + "80361320": ["sTextLabels"], + "803613f0": ["gMenuTextColorTransTimer"], + "803613f2": ["gLastDialogLineNum"], + "803613f4": ["gDialogVariable"], + "803613f8": ["gMenuTextAlpha"], + "803613fa": ["gCutsceneMsgXOffset"], + "803613fc": ["gCutsceneMsgYOffset"], + "803613fe": ["gRedCoinsCollected"], + "80361400": ["gEnvFxBuffer"], + "80361408": ["gSnowCylinderLastPos"], + "80361414": ["gSnowParticleCount"], + "80361416": ["gSnowParticleMaxCount"], + "80361420": ["gEnvFxBubbleConfig"], + "80361460": ["sNumActiveFirePiranhaPlants"], + "80361464": ["sNumKilledFirePiranhaPlants"], + "80361468": ["sObjSavedPosX"], + "8036146c": ["sObjSavedPosY"], + "80361470": ["sObjSavedPosZ"], + "80361474": ["sMontyMoleHoleList"], + "80361478": ["sMontyMoleKillStreak"], + "8036147c": ["sMontyMoleLastKilledPosX"], + "80361480": ["sMontyMoleLastKilledPosY"], + "80361484": ["sMontyMoleLastKilledPosZ"], + "80361488": ["sMasterTreadmill"], + "80361490": ["gCurrAiBuffer"], + "80361498": ["sSoundRequests"], + "80361c98": ["D_80360928"], + "80361f98": ["sUsedChannelsForSoundBank"], + "80361fa8": ["sCurrentSound"], + "80361fb8": ["sSoundBanks"], + "80364b78": ["sSoundMovingSpeed"], + "80364b82": ["sBackgroundMusicTargetVolume"], + "80364b88": ["sBackgroundMusicQueue"], + "80364ba0": ["__osEventStateTab"], + "80364c20": ["tmpTask"], + "80365e70": ["piMgrThread"], + "80366020": ["piMgrStack"], + "80367020": ["piEventQueue"], + "80367038": ["piEventBuf"], + "80367040": ["__osFinalrom"], + "80367050": ["__osContPifRam"], + "80367090": ["__osContLastCmd"], + "80367091": ["__osMaxControllers"], + "80367098": ["__osEepromTimer"], + "803670b8": ["__osEepromTimerQ"], + "803670d0": ["__osEepromTimerMsg"], + "803670f0": ["__osBaseTimer"], + "80367110": ["__osCurrentTime"], + "80367118": ["__osBaseCounter"], + "8036711c": ["__osViIntrCount"], + "80367120": ["__osTimerCounter"], + "80367130": ["osPiMesgBuff"], + "80367138": ["gOsPiMessageQueue"], + "80367150": ["osSiMesgBuff"], + "80367158": ["gOsSiMessageQueue"], + "80367170": ["__osEepPifRam"], + "803671b0": ["debugBuffer"], + "803672b0": ["__osThreadSave"], + "80367460": [".", "_mainSegmentNoloadEnd"], + "00000002": ["_mainSegmentNoloadSizeHi"], + "0000cee0": ["_mainSegmentNoloadSizeLo"], + "80378800": ["_engineSegmentStart", "vec3f_copy"], + "80378840": ["vec3f_set"], + "8037888c": ["vec3f_add"], + "803788e4": ["vec3f_sum"], + "8037893c": ["vec3s_copy"], + "8037897c": ["vec3s_set"], + "803789c8": ["vec3s_add"], + "80378a20": ["vec3s_sum"], + "80378a78": ["vec3s_sub"], + "80378ad0": ["vec3s_to_vec3f"], + "80378b34": ["vec3f_to_vec3s"], + "80378c50": ["find_vector_perpendicular_to_plane"], + "80378d38": ["vec3f_cross"], + "80378dc0": ["vec3f_normalize"], + "80378e68": ["mtxf_copy"], + "80378eb4": ["mtxf_identity"], + "80378f24": ["mtxf_translate"], + "80378f84": ["mtxf_lookat"], + "80379440": ["mtxf_rotate_zxy_and_translate"], + "803795f0": ["mtxf_rotate_xyz_and_translate"], + "80379798": ["mtxf_billboard"], + "80379918": ["mtxf_align_terrain_normal"], + "80379aa4": ["mtxf_align_terrain_triangle"], + "80379f60": ["mtxf_mul"], + "8037a29c": ["mtxf_scale_vec3f"], + "8037a348": ["mtxf_mul_vec3s"], + "8037a434": ["mtxf_to_mtx"], + "8037a4b8": ["mtxf_rotate_xy"], + "8037a550": ["get_pos_from_transform_mtx"], + "8037a69c": ["vec3f_get_dist_and_angle"], + "8037a788": ["vec3f_set_dist_and_angle"], + "8037a860": ["approach_s32"], + "8037a8b4": ["approach_f32"], + "8037a9a8": ["atan2s"], + "8037ab88": ["atan2f"], + "8037abec": ["spline_get_weights"], + "8037afb8": ["anim_spline_init"], + "8037afe8": ["anim_spline_poll"], + "8037b220": ["init_scene_graph_node_links"], + "8037b24c": ["init_graph_node_root"], + "8037b30c": ["init_graph_node_ortho_projection"], + "8037b380": ["init_graph_node_perspective"], + "8037b448": ["init_graph_node_start"], + "8037b4ac": ["init_graph_node_master_list"], + "8037b530": ["init_graph_node_render_range"], + "8037b5b4": ["init_graph_node_switch_case"], + "8037b670": ["init_graph_node_camera"], + "8037b744": ["init_graph_node_translation_rotation"], + "8037b7f8": ["init_graph_node_translation"], + "8037b89c": ["init_graph_node_rotation"], + "8037b940": ["init_graph_node_scale"], + "8037b9e0": ["init_graph_node_object"], + "8037bad4": ["init_graph_node_culling_radius"], + "8037bb48": ["init_graph_node_animated_part"], + "8037bbec": ["init_graph_node_billboard"], + "8037bc90": ["init_graph_node_display_list"], + "8037bd24": ["init_graph_node_shadow"], + "8037bdb4": ["init_graph_node_object_parent"], + "8037be28": ["init_graph_node_generated"], + "8037becc": ["init_graph_node_background"], + "8037bf84": ["init_graph_node_held_object"], + "8037c044": ["geo_add_child"], + "8037c0bc": ["geo_remove_child"], + "8037c138": ["geo_make_first_child"], + "8037c1e4": ["geo_call_global_function_nodes_helper"], + "8037c360": ["geo_call_global_function_nodes"], + "8037c3d0": ["geo_reset_object_node"], + "8037c448": ["geo_obj_init"], + "8037c51c": ["geo_obj_init_spawninfo"], + "8037c658": ["geo_obj_init_animation"], + "8037c708": ["geo_obj_init_animation_accel"], + "8037c7d8": ["retrieve_animation_index"], + "8037c844": ["geo_update_animation_frame"], + "8037c9e8": ["geo_retreive_animation_translation"], + "8037cb10": ["geo_find_root"], + "8037cb60": ["read_vec3s_to_vec3f"], + "8037cbc0": ["read_vec3s"], + "8037cbfc": ["read_vec3s_angle"], + "8037cc74": ["register_scene_graph_node"], + "8037cd60": ["geo_layout_cmd_branch_and_link"], + "8037ce24": ["geo_layout_cmd_end"], + "8037cee8": ["geo_layout_cmd_branch"], + "8037cf70": ["geo_layout_cmd_return"], + "8037cfc0": ["geo_layout_cmd_open_node"], + "8037d018": ["geo_layout_cmd_close_node"], + "8037d050": ["geo_layout_cmd_assign_as_view"], + "8037d0d0": ["geo_layout_cmd_update_node_flags"], + "8037d1d0": ["geo_layout_cmd_node_root"], + "8037d328": ["geo_layout_cmd_node_ortho_projection"], + "8037d3a4": ["geo_layout_cmd_node_perspective"], + "8037d48c": ["geo_layout_cmd_node_start"], + "8037d4dc": ["geo_layout_cmd_nop3"], + "8037d500": ["geo_layout_cmd_node_master_list"], + "8037d55c": ["geo_layout_cmd_node_level_of_detail"], + "8037d5d4": ["geo_layout_cmd_node_switch_case"], + "8037d640": ["geo_layout_cmd_node_camera"], + "8037d6f0": ["geo_layout_cmd_node_translation_rotation"], + "8037d8d4": ["geo_layout_cmd_node_translation"], + "8037d998": ["geo_layout_cmd_node_rotation"], + "8037da5c": ["geo_layout_cmd_node_scale"], + "8037db50": ["geo_layout_cmd_nop2"], + "8037db74": ["geo_layout_cmd_node_animated_part"], + "8037dc10": ["geo_layout_cmd_node_billboard"], + "8037dcd4": ["geo_layout_cmd_node_display_list"], + "8037dd4c": ["geo_layout_cmd_node_shadow"], + "8037dddc": ["geo_layout_cmd_node_object_parent"], + "8037de34": ["geo_layout_cmd_node_generated"], + "8037de94": ["geo_layout_cmd_node_background"], + "8037def8": ["geo_layout_cmd_nop"], + "8037df1c": ["geo_layout_cmd_copy_view"], + "8037dfd4": ["geo_layout_cmd_node_held_obj"], + "8037e058": ["geo_layout_cmd_node_culling_radius"], + "8037e0b4": ["process_geo_layout"], + "803805c8": ["level_script_execute"], + "80380de8": ["f32_find_wall_collision"], + "80380e8c": ["find_wall_collisions"], + "80381264": ["find_ceil"], + "80381470": ["unused_obj_find_floor_height"], + "803814b8": ["find_floor_height_and_data"], + "80381794": ["find_floor_height"], + "803817e0": ["unused_find_dynamic_floor"], + "80381900": ["find_floor"], + "80381ba0": ["find_water_level"], + "80381d3c": ["find_poison_gas_level"], + "80381f08": ["debug_surface_list_info"], + "80382294": ["unused_resolve_floor_or_ceil_collisions"], + "80383340": ["alloc_surface_pools"], + "803833b8": ["load_area_terrain"], + "803835a4": ["clear_dynamic_surfaces"], + "80383614": ["transform_object_vertices"], + "80383828": ["load_object_surfaces"], + "803839cc": ["load_object_collision_model"], + "80383bb0": ["random_u16"], + "80383cb4": ["random_float"], + "80383d1c": ["random_sign"], + "80383d68": ["obj_update_gfx_pos_and_angle"], + "80385bf0": ["stub_behavior_script_2"], + "80385c00": ["cur_obj_update"], + "80385f90": ["identityMtx"], + "80385fb0": ["zeroMtx"], + "80385fd0": ["gVec3fZero"], + "80385fdc": ["gVec3sZero"], + "80385fe4": ["gVec3fOne"], + "80385ff0": ["gVec3sOne"], + "80386000": ["gSineTable"], + "80387000": ["gCosineTable"], + "8038b000": ["gArctanTable"], + "8038b810": ["GeoLayoutJumpTable"], + "8038b894": ["unused_8038B894"], + "8038bc90": ["_engineSegmentEnd", "_engineSegmentNoloadStart", "gSplineKeyframe"], + "00108a10": ["_engineSegmentRomEnd", "_entrySegmentRomStart"], + "8038bc94": ["gSplineKeyframeFraction"], + "8038bc98": ["gSplineState"], + "8038bca0": ["gGraphNodePool"], + "8038bca4": ["gCurRootGraphNode"], + "8038bca8": ["D_8038BCA8"], + "8038bcac": ["gGeoViews"], + "8038bcb0": ["gGeoNumViews"], + "8038bcb8": ["gGeoLayoutStack"], + "8038bcf8": ["gCurGraphNodeList"], + "8038bd78": ["gCurGraphNodeIndex"], + "8038bd7a": ["gGeoLayoutStackIndex"], + "8038bd7c": ["D_8038BD7C"], + "8038bd7e": ["gGeoLayoutReturnIndex"], + "8038bd80": ["gGeoLayoutCommand"], + "8038bd88": ["gObjParentGraphNode"], + "8038be30": ["sFloorGeo"], + "8038be90": ["unused8038BE90"], + "8038be98": ["gStaticSurfacePartition"], + "8038d698": ["gDynamicSurfacePartition"], + "8038ee98": ["sSurfaceNodePool"], + "8038ee9c": ["sSurfacePool"], + "8038eea0": ["sSurfacePoolSize"], + "8038eea8": ["unused8038EEA8"], + "8038eef0": ["_engineSegmentNoloadEnd"], + "8038f800": [".", "_framebuffersSegmentNoloadStart", "0x70800", "gFramebuffer0"], + "803b5000": ["gFramebuffer1"], + "803da800": ["gFramebuffer2"], + "80400000": ["_framebuffersSegmentNoloadEnd"], + "10000000": ["_entrySegmentStart", "level_script_entry"], + "10000030": ["_entrySegmentEnd"], + "00108a40": ["_entrySegmentRomEnd", "_segment2_mio0SegmentRomStart"], + "02000000": ["_segment2_mio0SegmentStart", "_binary_build_us_bin_segment2_mio0_start"], + "0200bd06": ["_binary_build_us_bin_segment2_mio0_end"], + "0200bd10": [".", "_segment2_mio0SegmentEnd"], + "00114750": ["_segment2_mio0SegmentRomEnd", "_group0_mio0SegmentRomStart"], + "04013260": ["_binary_build_us_actors_group0_mio0_end", ".", "_group0_mio0SegmentEnd"], + "001279b0": ["_group0_mio0SegmentRomEnd", "_group0_geoSegmentRomStart"], + "17000000": ["_group0_geoSegmentStart", "bubble_geo"], + "1700001c": ["purple_marble_geo"], + "17000038": ["smoke_geo"], + "17000084": ["burn_smoke_geo"], + "1700009c": ["small_water_splash_geo"], + "170000e0": ["mario_TODO_geo_0000E0"], + "17000124": ["idle_water_wave_geo"], + "17000168": ["wave_trail_geo"], + "170001bc": ["sparkles_geo"], + "17000230": ["water_splash_geo"], + "17000284": ["sparkles_animation_geo"], + "170002e0": ["mario_geo_face_and_wings"], + "1700041c": ["mario_geo_left_hand"], + "17000494": ["mario_geo_right_hand"], + "1700053c": ["mario_geo_body"], + "170006f8": ["mario_geo_medium_poly_left_hand"], + "17000770": ["mario_geo_medium_poly_right_hand"], + "17000818": ["mario_geo_medium_poly_body"], + "170009d4": ["mario_geo_low_poly_face_and_wings"], + "17000b10": ["mario_geo_low_poly_left_hand"], + "17000b88": ["mario_geo_low_poly_right_hand"], + "17000c30": ["mario_geo_low_poly_body"], + "17000dec": ["mario_vanish_geo_face_and_wings"], + "17000f28": ["mario_vanish_geo_left_hand"], + "17000fa0": ["mario_vanish_geo_right_hand"], + "17001048": ["mario_vanish_geo_body"], + "17001204": ["mario_vanish_geo_medium_poly_left_hand"], + "1700127c": ["mario_vanish_geo_medium_poly_right_hand"], + "17001324": ["mario_vanish_geo_medium_poly_body"], + "170014e0": ["mario_vanish_geo_low_poly_face_and_wings"], + "1700161c": ["mario_vanish_geo_low_poly_left_hand"], + "17001694": ["mario_vanish_geo_low_poly_right_hand"], + "1700173c": ["mario_vanish_geo_low_poly_body"], + "170018f8": ["mario_metal_geo_face_and_wings"], + "170019a4": ["mario_metal_geo_left_hand"], + "17001a1c": ["mario_metal_geo_right_hand"], + "17001ac4": ["mario_metal_geo_body"], + "17001c80": ["mario_metal_geo_medium_poly_left_hand"], + "17001cf8": ["mario_metal_geo_medium_poly_right_hand"], + "17001da0": ["mario_metal_geo_medium_poly_body"], + "17001f5c": ["mario_metal_geo_low_poly_face_and_wings"], + "17002008": ["mario_metal_geo_low_poly_left_hand"], + "17002080": ["mario_metal_geo_low_poly_right_hand"], + "17002128": ["mario_metal_geo_low_poly_body"], + "170022e4": ["mario_metal_vanish_geo_face_and_wings"], + "17002390": ["mario_metal_vanish_geo_left_hand"], + "17002408": ["mario_metal_vanish_geo_right_hand"], + "170024b0": ["mario_metal_vanish_geo_body"], + "1700266c": ["mario_metal_vanish_geo_medium_poly_left_hand"], + "170026e4": ["mario_metal_vanish_geo_medium_poly_right_hand"], + "1700278c": ["mario_metal_vanish_geo_medium_poly_body"], + "17002958": ["mario_metal_vanish_geo_low_poly_face_and_wings"], + "17002a04": ["mario_metal_vanish_geo_low_poly_left_hand"], + "17002a7c": ["mario_metal_vanish_geo_low_poly_right_hand"], + "17002b24": ["mario_metal_vanish_geo_low_poly_body"], + "17002ce0": ["mario_geo_load_body"], + "17002d14": ["mario_geo_load_medium_poly_body"], + "17002d48": ["mario_geo_load_low_poly_body"], + "17002d7c": ["mario_geo_render_body"], + "17002dd4": ["mario_geo"], + "17002e30": ["_group0_geoSegmentEnd"], + "0012a7e0": ["_group0_geoSegmentRomEnd", "_group1_mio0SegmentRomStart"], + "05000000": [ + "_group1_mio0SegmentStart", + "_binary_build_us_actors_group1_mio0_start", + "_group2_mio0SegmentStart", + "_binary_build_us_actors_group2_mio0_start", + "_group3_mio0SegmentStart", + "_binary_build_us_actors_group3_mio0_start", + "_group4_mio0SegmentStart", + "_binary_build_us_actors_group4_mio0_start", + "_group5_mio0SegmentStart", + "_binary_build_us_actors_group5_mio0_start", + "_group6_mio0SegmentStart", + "_binary_build_us_actors_group6_mio0_start", + "_group7_mio0SegmentStart", + "_binary_build_us_actors_group7_mio0_start", + "_group8_mio0SegmentStart", + "_binary_build_us_actors_group8_mio0_start", + "_group9_mio0SegmentStart", + "_binary_build_us_actors_group9_mio0_start", + "_group10_mio0SegmentStart", + "_binary_build_us_actors_group10_mio0_start", + "_group11_mio0SegmentStart", + "_binary_build_us_actors_group11_mio0_start", + ], + "0500806f": ["_binary_build_us_actors_group1_mio0_end"], + "05008070": [".", "_group1_mio0SegmentEnd"], + "00132850": ["_group1_mio0SegmentRomEnd", "_group1_geoSegmentRomStart"], + "0c000000": [ + "_group1_geoSegmentStart", + "yellow_sphere_geo", + "_group2_geoSegmentStart", + "bully_geo", + "_group3_geoSegmentStart", + "king_bobomb_geo", + "_group4_geoSegmentStart", + "clam_shell_geo", + "_group5_geoSegmentStart", + "klepto_geo", + "_group6_geoSegmentStart", + "monty_mole_geo", + "_group7_geoSegmentStart", + "spindrift_geo", + "_group8_geoSegmentStart", + "springboard_top_geo", + "_group9_geoSegmentStart", + "bookend_part_geo", + "_group10_geoSegmentStart", + "birds_geo", + "_group11_geoSegmentStart", + "bubba_geo", + ], + "0c000018": ["hoot_geo", "springboard_spring_geo"], + "0c0001e4": ["yoshi_egg_geo"], + "0c000248": ["thwomp_geo"], + "0c000264": ["bullet_bill_geo"], + "0c00028c": ["heave_ho_geo"], + "0c000410": ["_group1_geoSegmentEnd", "peach_geo"], + "00132c60": ["_group1_geoSegmentRomEnd", "_group2_mio0SegmentRomStart"], + "05001e0c": ["_binary_build_us_actors_group2_mio0_end"], + "05001e10": [".", "_group2_mio0SegmentEnd"], + "00134a70": ["_group2_mio0SegmentRomEnd", "_group2_geoSegmentRomStart"], + "0c000120": ["bully_boss_geo"], + "0c000240": ["blargg_geo"], + "0c0002b0": ["_group2_geoSegmentEnd", "_group9_geoSegmentEnd"], + "00134d20": ["_group2_geoSegmentRomEnd", "_group3_mio0SegmentRomStart"], + "050068a1": ["_binary_build_us_actors_group3_mio0_end"], + "050068b0": [".", "_group3_mio0SegmentEnd"], + "0013b5d0": ["_group3_mio0SegmentRomEnd", "_group3_geoSegmentRomStart"], + "0c000308": ["water_bomb_geo"], + "0c000328": ["water_bomb_shadow_geo", "spiny_geo"], + "0c000340": ["_group3_geoSegmentEnd"], + "0013b910": ["_group3_geoSegmentRomEnd", "_group4_mio0SegmentRomStart"], + "0500a2ff": ["_binary_build_us_actors_group4_mio0_end"], + "0500a300": [".", "_group4_mio0SegmentEnd"], + "00145c10": ["_group4_mio0SegmentRomEnd", "_group4_geoSegmentRomStart"], + "0c000068": ["sushi_geo"], + "0c00010c": ["unagi_geo"], + "0c000280": ["_group4_geoSegmentEnd"], + "00145e90": ["_group4_geoSegmentRomEnd", "_group5_mio0SegmentRomStart"], + "0500bcd1": ["_binary_build_us_actors_group5_mio0_end"], + "0500bce0": [".", "_group5_mio0SegmentEnd"], + "00151b70": ["_group5_mio0SegmentRomEnd", "_group5_geoSegmentRomStart"], + "0c0002ac": ["eyerok_geo_0002AC"], + "0c0005a8": ["eyerok_left_hand_geo"], + "0c0005e4": ["eyerok_right_hand_geo"], + "0c000610": ["pokey_head_geo"], + "0c000644": ["pokey_body_part_geo"], + "0c000660": ["_group5_geoSegmentEnd"], + "001521d0": ["_group5_geoSegmentRomEnd", "_group6_mio0SegmentRomStart"], + "0500e108": ["_binary_build_us_actors_group6_mio0_end"], + "0500e110": [".", "_group6_mio0SegmentEnd"], + "001602e0": ["_group6_mio0SegmentRomEnd", "_group6_geoSegmentRomStart"], + "0c000110": ["ukiki_geo"], + "0c00036c": ["fwoosh_geo"], + "0c000390": ["_group6_geoSegmentEnd"], + "00160670": ["_group6_geoSegmentRomEnd", "_group7_mio0SegmentRomStart"], + "05005069": ["_binary_build_us_actors_group7_mio0_end"], + "05005070": [".", "_group7_mio0SegmentEnd"], + "001656e0": ["_group7_mio0SegmentRomEnd", "_group7_geoSegmentRomStart"], + "0c000104": ["penguin_geo"], + "0c00021c": ["mr_blizzard_hidden_geo"], + "0c000348": ["mr_blizzard_geo"], + "0c000370": ["_group7_geoSegmentEnd"], + "00165a50": ["_group7_geoSegmentRomEnd", "_group8_mio0SegmentRomStart"], + "05001177": ["_binary_build_us_actors_group8_mio0_end"], + "05001180": [".", "_group8_mio0SegmentEnd"], + "00166bd0": ["_group8_mio0SegmentRomEnd", "_group8_geoSegmentRomStart"], + "0c000030": ["springboard_bottom_geo", "wiggler_head_geo"], + "0c000048": ["cap_switch_geo"], + "0c000090": ["_group8_geoSegmentEnd"], + "00166c60": ["_group8_geoSegmentRomEnd", "_group9_mio0SegmentRomStart"], + "05006958": ["_binary_build_us_actors_group9_mio0_end"], + "05006960": [".", "_group9_mio0SegmentEnd"], + "0016d5c0": ["_group9_mio0SegmentRomEnd", "_group9_geoSegmentRomStart"], + "0c0000c0": ["bookend_geo"], + "0c0000d8": ["haunted_chair_geo"], + "0c000188": ["small_key_geo"], + "0c0001b4": ["mad_piano_geo"], + "0c000224": ["boo_geo"], + "0c000274": ["haunted_cage_geo"], + "0016d870": ["_group9_geoSegmentRomEnd", "_group10_mio0SegmentRomStart"], + "05012cc5": ["_binary_build_us_actors_group10_mio0_end"], + "05012cd0": [".", "_group10_mio0SegmentEnd"], + "00180540": ["_group10_mio0SegmentRomEnd", "_group10_geoSegmentRomStart"], + "0c000098": ["peach_geo_000098"], + "0c000254": ["peach_geo_000254"], + "0c000468": ["yoshi_geo"], + "0c000670": ["_group10_geoSegmentEnd"], + "00180bb0": ["_group10_geoSegmentRomEnd", "_group11_mio0SegmentRomStart"], + "050073ea": ["_binary_build_us_actors_group11_mio0_end"], + "050073f0": [".", "_group11_mio0SegmentEnd"], + "00187fa0": ["_group11_mio0SegmentRomEnd", "_group11_geoSegmentRomStart"], + "0c0001bc": ["enemy_lakitu_geo"], + "0c000290": ["spiny_ball_geo"], + "0c0004a0": ["_group11_geoSegmentEnd"], + "00188440": ["_group11_geoSegmentRomEnd", "_group12_mio0SegmentRomStart"], + "06000000": [ + "_group12_mio0SegmentStart", + "_binary_build_us_actors_group12_mio0_start", + "_group13_mio0SegmentStart", + "_binary_build_us_actors_group13_mio0_start", + "_group14_mio0SegmentStart", + "_binary_build_us_actors_group14_mio0_start", + "_group15_mio0SegmentStart", + "_binary_build_us_actors_group15_mio0_start", + "_group16_mio0SegmentStart", + "_binary_build_us_actors_group16_mio0_start", + "_group17_mio0SegmentStart", + "_binary_build_us_actors_group17_mio0_start", + ], + "06030c2a": ["_binary_build_us_actors_group12_mio0_end"], + "06030c30": [".", "_group12_mio0SegmentEnd"], + "001b9070": ["_group12_mio0SegmentRomEnd", "_group12_geoSegmentRomStart"], + "0d000000": [ + "_group12_geoSegmentStart", + "bowser_flames_geo", + "_group13_geoSegmentStart", + "skeeter_geo", + "_group14_geoSegmentStart", + "koopa_flag_geo", + "_group15_geoSegmentStart", + "lakitu_geo", + "_group16_geoSegmentStart", + "moneybag_geo_000000", + "_group17_geoSegmentStart", + "mr_i_geo", + ], + "0d000090": ["invisible_bowser_accessory_geo"], + "0d0000b0": ["bowser_1_yellow_sphere_geo"], + "0d0000d8": ["bowser_geo_0000D8"], + "0d000424": ["bowser_geo_000424"], + "0d000770": ["bowser_geo_000770"], + "0d000ab8": ["bowser_shadow_geo"], + "0d000ac4": ["bowser_geo"], + "0d000b40": ["bowser_geo_no_shadow"], + "0d000bbc": ["bowser_bomb_geo"], + "0d000bfc": ["bowser_impact_smoke_geo"], + "0d000c50": ["_group12_geoSegmentEnd"], + "001b9cc0": ["_group12_geoSegmentRomEnd", "_group13_mio0SegmentRomStart"], + "0600a0e4": ["_binary_build_us_actors_group13_mio0_end"], + "0600a0f0": [".", "_group13_mio0SegmentEnd"], + "001c3db0": ["_group13_mio0SegmentRomEnd", "_group13_geoSegmentRomStart"], + "0d000284": ["seaweed_geo"], + "0d0002f4": ["water_mine_geo"], + "0d000324": ["cyan_fish_geo"], + "0d00038c": ["bub_geo"], + "0d000414": ["water_ring_geo"], + "0d000450": ["treasure_chest_base_geo"], + "0d000468": ["treasure_chest_lid_geo"], + "0d000480": ["_group13_geoSegmentEnd", "whomp_geo"], + "001c4230": ["_group13_geoSegmentRomEnd", "_group14_mio0SegmentRomStart"], + "06013a5a": ["_binary_build_us_actors_group14_mio0_end"], + "06013a60": [".", "_group14_mio0SegmentEnd"], + "001d7c90": ["_group14_mio0SegmentRomEnd", "_group14_geoSegmentRomStart"], + "0d0000b8": ["wooden_post_geo"], + "0d0000d0": ["koopa_without_shell_geo"], + "0d000214": ["koopa_with_shell_geo"], + "0d000358": ["piranha_plant_geo"], + "0d0005d0": ["metallic_ball_geo"], + "0d0005ec": ["chain_chomp_geo"], + "0d000680": ["_group14_geoSegmentEnd"], + "001d8310": ["_group14_geoSegmentRomEnd", "_group15_mio0SegmentRomStart"], + "0600c8de": ["_binary_build_us_actors_group15_mio0_end"], + "0600c8e0": [".", "_group15_mio0SegmentEnd"], + "001e4bf0": ["_group15_mio0SegmentRomEnd", "_group15_geoSegmentRomStart"], + "0d000114": ["toad_geo_000114"], + "0d00027c": ["toad_geo_00027C"], + "0d0003e4": ["toad_geo"], + "0d000448": ["mips_geo"], + "0d0005b0": ["boo_castle_geo"], + "0d000600": ["_group15_geoSegmentEnd"], + "001e51f0": ["_group15_geoSegmentRomEnd", "_group16_mio0SegmentRomStart"], + "06002b98": ["_binary_build_us_actors_group16_mio0_end"], + "06002ba0": [".", "_group16_mio0SegmentEnd"], + "001e7d90": ["_group16_mio0SegmentRomEnd", "_group16_geoSegmentRomStart"], + "0d000078": ["moneybag_geo_000078"], + "0d0000f0": ["moneybag_geo"], + "0d000150": ["_group16_geoSegmentEnd"], + "001e7ee0": ["_group16_geoSegmentRomEnd", "_group17_mio0SegmentRomStart"], + "06009c4b": ["_binary_build_us_actors_group17_mio0_end"], + "06009c50": [".", "_group17_mio0SegmentEnd"], + "001f1b30": ["_group17_mio0SegmentRomEnd", "_group17_geoSegmentRomStart"], + "0d00001c": ["mr_i_iris_geo"], + "0d0000dc": ["swoop_geo"], + "0d0001a0": ["snufit_geo"], + "0d000230": ["dorrie_geo"], + "0d000394": ["scuttlebug_geo"], + "0d0006d0": ["_group17_geoSegmentEnd"], + "001f2200": ["_group17_geoSegmentRomEnd", "_common0_mio0SegmentRomStart"], + "08000000": ["_common0_mio0SegmentStart", "_binary_build_us_actors_common0_mio0_start"], + "0800e6c4": ["_binary_build_us_actors_common0_mio0_end"], + "0800e6d0": [".", "_common0_mio0SegmentEnd"], + "002008d0": ["_common0_mio0SegmentRomEnd", "_common0_geoSegmentRomStart"], + "0f000000": ["_common0_geoSegmentStart", "blue_coin_switch_geo"], + "0f000020": ["test_platform_geo"], + "0f000028": ["dAmpGeo"], + "0f0001a8": ["cannon_base_geo"], + "0f0001c0": ["cannon_barrel_geo"], + "0f0001d8": ["chuckya_geo"], + "0f0004cc": ["purple_switch_geo"], + "0f0004e4": ["checkerboard_platform_geo"], + "0f0004fc": ["heart_geo"], + "0f000518": ["flyguy_geo"], + "0f0005d0": ["breakable_box_geo"], + "0f000610": ["breakable_box_small_geo"], + "0f000640": ["bowling_ball_geo"], + "0f00066c": ["bowling_ball_track_geo"], + "0f000694": ["exclamation_box_geo"], + "0f0006e4": ["goomba_geo"], + "0f0007b8": ["black_bobomb_geo"], + "0f0008f4": ["bobomb_buddy_geo"], + "0f000a30": ["metal_box_geo"], + "0f000a58": ["exclamation_box_outline_geo"], + "0f000ab0": ["koopa_shell_geo"], + "0f000adc": ["koopa_shell2_geo"], + "0f000b08": ["koopa_shell3_geo"], + "0f000b40": ["_common0_geoSegmentEnd"], + "00201410": ["_common0_geoSegmentRomEnd", "_common1_mio0SegmentRomStart"], + "03000000": ["_common1_mio0SegmentStart", "_binary_build_us_actors_common1_mio0_start"], + "0301798d": ["_binary_build_us_actors_common1_mio0_end"], + "03017990": [".", "_common1_mio0SegmentEnd"], + "00218da0": ["_common1_mio0SegmentRomEnd", "_common1_geoSegmentRomStart"], + "16000000": ["_common1_geoSegmentStart", "mist_geo"], + "16000020": ["white_puff_geo"], + "16000040": ["explosion_geo"], + "160000a8": ["butterfly_geo"], + "1600013c": ["yellow_coin_geo"], + "160001a0": ["yellow_coin_no_shadow_geo"], + "16000200": ["blue_coin_geo"], + "16000264": ["blue_coin_no_shadow_geo"], + "160002c4": ["red_coin_geo"], + "16000328": ["red_coin_no_shadow_geo"], + "16000388": ["warp_pipe_geo"], + "160003a8": ["castle_door_geo"], + "1600043c": ["cabin_door_geo"], + "160004d0": ["wooden_door_geo"], + "16000564": ["wooden_door2_geo"], + "160005f8": ["metal_door_geo"], + "1600068c": ["hazy_maze_door_geo"], + "16000720": ["haunted_door_geo"], + "160007b4": ["castle_door_0_star_geo"], + "16000868": ["castle_door_1_star_geo"], + "1600091c": ["castle_door_3_stars_geo"], + "160009d0": ["key_door_geo"], + "16000a84": ["bowser_key_geo"], + "16000ab0": ["bowser_key_cutscene_geo"], + "16000b10": ["red_flame_shadow_geo"], + "16000b2c": ["red_flame_geo"], + "16000b8c": ["blue_flame_geo"], + "16000bec": ["fish_shadow_geo"], + "16000c44": ["fish_geo"], + "16000c8c": ["leaves_geo"], + "16000ca4": ["marios_cap_geo"], + "16000cf0": ["marios_metal_cap_geo"], + "16000d3c": ["marios_wing_cap_geo"], + "16000da8": ["marios_winged_metal_cap_geo"], + "16000e14": ["number_geo"], + "16000e84": ["mushroom_1up_geo"], + "16000ea0": ["star_geo"], + "16000ed4": ["dirt_animation_geo"], + "16000f24": ["cartoon_star_geo"], + "16000f6c": ["transparent_star_geo"], + "16000f98": ["white_particle_geo"], + "16000fb4": ["wooden_signpost_geo"], + "16000fe8": ["bubbly_tree_geo"], + "16001000": ["spiky_tree_geo"], + "16001018": ["snow_tree_geo"], + "16001030": ["spiky_tree1_geo"], + "16001048": ["palm_tree_geo"], + "16001060": ["_common1_geoSegmentEnd"], + "00219e00": ["_common1_geoSegmentRomEnd", "_behaviorSegmentRomStart"], + "13000000": ["_behaviorSegmentStart", "bhvStarDoor"], + "13000054": ["bhvMrI"], + "1300008c": ["bhvMrIBody"], + "130000ac": ["bhvMrIParticle"], + "130000f8": ["bhvPurpleParticle"], + "13000118": ["bhvGiantPole"], + "13000144": ["bhvPoleGrabbing"], + "13000174": ["bhvTHIHugeIslandTop"], + "13000194": ["bhvTHITinyIslandTop"], + "130001ac": ["bhvCapSwitchBase"], + "130001cc": ["bhvCapSwitch"], + "130001f4": ["bhvKingBobomb"], + "13000254": ["bhvBobombAnchorMario"], + "13000278": ["bhvBetaChestBottom"], + "1300029c": ["bhvBetaChestLid"], + "130002b8": ["bhvBubbleParticleSpawner"], + "130002e4": ["bhvBubbleMaybe"], + "13000338": ["bhvSmallWaterWave"], + "13000398": ["bhvSmallWaterWave398"], + "130003bc": ["bhvWaterAirBubble"], + "13000400": ["bhvSmallParticle"], + "13000428": ["bhvPlungeBubble"], + "13000444": ["bhvSmallParticleSnow"], + "1300046c": ["bhvSmallParticleBubbles"], + "13000494": ["bhvFishGroup"], + "130004a8": ["bhvCannon"], + "130004e4": ["bhvCannonBarrel"], + "13000500": ["bhvCannonBaseUnused"], + "13000528": ["bhvChuckya"], + "13000584": ["bhvChuckyaAnchorMario"], + "130005a8": ["bhvUnused05A8"], + "130005b4": ["bhvRotatingPlatform"], + "130005d8": ["bhvTower"], + "13000600": ["bhvBulletBillCannon"], + "13000624": ["bhvWFBreakableWallRight"], + "13000638": ["bhvWFBreakableWallLeft"], + "1300066c": ["bhvKickableBoard"], + "130006a4": ["bhvTowerDoor"], + "130006d8": ["bhvRotatingCounterClockwise"], + "130006e0": ["bhvWFRotatingWoodenPlatform"], + "13000708": ["bhvKoopaShellUnderwater"], + "13000720": ["bhvExitPodiumWarp"], + "1300075c": ["bhvFadingWarp"], + "13000780": ["bhvWarp"], + "130007a0": ["bhvWarpPipe"], + "130007dc": ["bhvWhitePuffExplosion"], + "130007f8": ["bhvSpawnedStar"], + "1300080c": ["bhvSpawnedStarNoLevelExit"], + "13000830": ["bhvSpawnedBlueCoin"], + "13000888": ["bhvCoinInsideBoo"], + "130008d0": ["bhvCoinFormationSpawn"], + "130008ec": ["bhvCoinFormation"], + "1300090c": ["bhvOneCoin"], + "1300091c": ["bhvYellowCoin"], + "13000940": ["bhvTemporaryYellowCoin"], + "13000964": ["bhvThreeCoinsSpawn"], + "13000984": ["bhvTenCoinsSpawn"], + "130009a4": ["bhvSingleCoinGetsSpawned"], + "130009e0": ["bhvCoinSparkles"], + "13000a14": ["bhvGoldenCoinSparkles"], + "13000a34": ["bhvWallTinyStarParticle"], + "13000a54": ["bhvVertStarParticleSpawner"], + "13000a78": ["bhvPoundTinyStarParticle"], + "13000a98": ["bhvHorStarParticleSpawner"], + "13000abc": ["bhvPunchTinyTriangle"], + "13000ad8": ["bhvTriangleParticleSpawner"], + "13000afc": ["bhvDoorWarp"], + "13000b0c": ["bhvDoor"], + "13000b58": ["bhvGrindel"], + "13000b8c": ["bhvThwomp"], + "13000bc8": ["bhvThwomp2"], + "13000c04": ["bhvTumblingBridgePlatform"], + "13000c28": ["bhvTumblingBridge"], + "13000c44": ["bhvBBHTumblingBridge"], + "13000c64": ["bhvLLLTumblingBridge"], + "13000c84": ["bhvFlame"], + "13000cc8": ["bhvAnotherElavator"], + "13000cfc": ["bhvRRElevatorPlatform"], + "13000d30": ["bhvHMCElevatorPlatform"], + "13000d6c": ["bhvWaterMist"], + "13000d98": ["bhvBreathParticleSpawner"], + "13000db4": ["bhvBreakBoxTriangle"], + "13000dd8": ["bhvWaterMist2"], + "13000dfc": ["bhvUnused0DFC"], + "13000e24": ["bhvMistCircParticleSpawner"], + "13000e3c": ["bhvDirtParticleSpawner"], + "13000e58": ["bhvSnowParticleSpawner"], + "13000e70": ["bhvWind"], + "13000e88": ["bhvEndToad"], + "13000eac": ["bhvEndPeach"], + "13000ed0": ["bhvUnusedParticleSpawn"], + "13000f08": ["bhvUkiki"], + "13000f14": ["bhvUkikiCageChild"], + "13000f2c": ["bhvUkikiCageStar"], + "13000f48": ["bhvUkikiCage"], + "13000f9c": ["bhvBitFSSinkingPlatforms"], + "13000fc8": ["bhvBitFSSinkingCagePlatform"], + "13001000": ["bhvDDDMovingPole"], + "13001030": ["bhvBitFSTiltingInvertedPyramid"], + "13001064": ["bhvSquishablePlatform"], + "13001098": ["bhvCutOutObject"], + "130010a8": ["bhvBetaMovingFlamesSpawn"], + "130010b8": ["bhvBetaMovingFlames"], + "130010d8": ["bhvRRRotatingBridgePlatform"], + "13001108": ["bhvFlamethrower"], + "13001124": ["bhvFlamethrowerFlame"], + "13001168": ["bhvBouncingFireball"], + "13001184": ["bhvBouncingFireballFlame"], + "130011d0": ["bhvBowserShockWave"], + "130011ec": ["bhvFireParticleSpawner"], + "13001214": ["bhvBlackSmokeMario"], + "13001254": ["bhvBlackSmokeBowser"], + "1300127c": ["bhvBlackSmokeUpward"], + "13001298": ["bhvBetaFishSplashSpawner"], + "130012b4": ["bhvSpindrift"], + "130012f4": ["bhvTowerPlatformGroup"], + "13001318": ["bhvWFSlidingTowerPlatform"], + "13001340": ["bhvWFElevatorTowerPlatform"], + "13001368": ["bhvWFSolidTowerPlatform"], + "13001390": ["bhvLeafParticleSpawner"], + "130013a8": ["bhvTreeSnow"], + "130013c4": ["bhvTreeLeaf"], + "130013dc": ["bhvAnotherTiltingPlatform"], + "13001408": ["bhvSquarishPathMoving"], + "1300142c": ["bhvPiranhaPlantBubble"], + "13001448": ["bhvPiranhaPlantWakingBubbles"], + "13001468": ["bhvFloorSwitchAnimatesObject"], + "13001478": ["bhvFloorSwitchGrills"], + "13001484": ["bhvFloorSwitchHardcodedModel"], + "130014ac": ["bhvFloorSwitchHiddenObjects"], + "130014bc": ["bhvHiddenObject"], + "130014e0": ["bhvBreakableBox"], + "13001518": ["bhvPushableMetalBox"], + "13001548": ["bhvHeaveHo"], + "130015a4": ["bhvHeaveHoThrowMario"], + "130015c0": ["bhvCCMTouchedStarSpawn"], + "130015e4": ["bhvUnusedPoundablePlatform"], + "13001608": ["bhvBetaTrampolineTop"], + "13001634": ["bhvBetaTrampolineSpring"], + "13001650": ["bhvJumpingBox"], + "1300167c": ["bhvBooCage"], + "130016ac": ["bhvStub"], + "130016b8": ["bhvIgloo"], + "130016e4": ["bhvBowserKey"], + "13001714": ["bhvGrandStar"], + "13001744": ["bhvBetaBooKey"], + "13001778": ["bhvAlphaBooKey"], + "1300179c": ["bhvBulletBill"], + "130017f4": ["bhvWhitePuffSmoke"], + "13001820": ["bhvUnused1820"], + "13001828": ["bhvBowserTailAnchor"], + "13001850": ["bhvBowser"], + "130018cc": ["bhvBowserBodyAnchor"], + "13001904": ["bhvBowserFlameSpawn"], + "13001920": ["bhvTiltingBowserLavaPlatform"], + "13001958": ["bhvFallingBowserPlatform"], + "13001984": ["bhvBlueBowserFlame"], + "130019c8": ["bhvFlameFloatingLanding"], + "13001a0c": ["bhvBlueFlamesGroup"], + "13001a30": ["bhvFlameBouncing"], + "13001a74": ["bhvFlameMovingForwardGrowing"], + "13001aa4": ["bhvFlameBowser"], + "13001ae8": ["bhvFlameLargeBurningOut"], + "13001b2c": ["bhvBlueFish"], + "13001b54": ["bhvTankFishGroup"], + "13001b70": ["bhvCheckerboardElevatorGroup"], + "13001b88": ["bhvCheckerboardPlatformSub"], + "13001bb4": ["bhvBowserKeyUnlockDoor"], + "13001bd4": ["bhvBowserKeyCourseExit"], + "13001bf4": ["bhvInvisibleObjectsUnderBridge"], + "13001c04": ["bhvWaterLevelPillar"], + "13001c34": ["bhvDDDWarp"], + "13001c58": ["bhvMoatGrills"], + "13001c7c": ["bhvClockMinuteHand"], + "13001c8c": ["bhvClockHourHand"], + "13001cb0": ["bhvMacroUkiki"], + "13001d0c": ["bhvStub1D0C"], + "13001d14": ["bhvLLLRotatingHexagonalPlatform"], + "13001d40": ["bhvLLLSinkingRockBlock"], + "13001d70": ["bhvStub1D70"], + "13001d78": ["bhvLLLMovingOctagonalMeshPlatform"], + "13001da4": ["bhvSnowBall"], + "13001da8": ["bhvLLLRotatingBlockWithFireBars"], + "13001dcc": ["bhvLLLRotatingHexFlame"], + "13001e04": ["bhvLLLWoodPiece"], + "13001e30": ["bhvLLLFloatingWoodBridge"], + "13001e4c": ["bhvVolcanoFlames"], + "13001e6c": ["bhvLLLRotatingHexagonalRing"], + "13001e94": ["bhvLLLSinkingRectangularPlatform"], + "13001ec4": ["bhvLLLSinkingSquarePlatforms"], + "13001ef8": ["bhvLLLTiltingInvertedPyramid"], + "13001f30": ["bhvUnused1F30"], + "13001f3c": ["bhvKoopaShell"], + "13001f68": ["bhvKoopaShellFlame"], + "13001f90": ["bhvToxBox"], + "13001fbc": ["bhvPiranhaPlant"], + "13002018": ["bhvLLLHexagonalMesh"], + "13002038": ["bhvLLLBowserPuzzlePiece"], + "13002068": ["bhvLLLBowserPuzzle"], + "13002088": ["bhvTuxiesMother"], + "130020d8": ["bhvPenguinBaby"], + "130020e0": ["bhvUnused20E0"], + "130020e8": ["bhvSmallPenguin"], + "1300213c": ["bhvManyBlueFishSpawner"], + "1300214c": ["bhvFewBlueFishSpawner"], + "1300215c": ["bhvFishSpawner"], + "13002178": ["bhvFish"], + "13002194": ["bhvWDWExpressElevator"], + "130021c0": ["bhvWDWExpressElevatorPlatform"], + "130021e4": ["bhvChirpChirp"], + "130021f4": ["bhvChirpChirpUnused"], + "1300220c": ["bhvBub"], + "13002250": ["bhvExclamationBox"], + "1300227c": ["bhvRotatingExclamationMark"], + "1300229c": ["bhvSoundSpawner"], + "130022b8": ["bhvRockSolid"], + "130022d8": ["bhvBowserSubDoor"], + "13002308": ["bhvBowsersSub"], + "13002338": ["bhvSushiShark"], + "13002388": ["bhvSushiSharkCollisionChild"], + "130023a4": ["bhvJRBSlidingBox"], + "130023d0": ["bhvShipPart3"], + "130023ec": ["bhvInSunkenShip3"], + "1300241c": ["bhvSunkenShipPart"], + "1300243c": ["bhvSunkenShipSetRotation"], + "1300244c": ["bhvSunkenShipPart2"], + "1300246c": ["bhvInSunkenShip"], + "13002480": ["bhvInSunkenShip2"], + "130024ac": ["bhvMistParticleSpawner"], + "130024dc": ["bhvWhitePuff1"], + "13002500": ["bhvWhitePuff2"], + "13002528": ["bhvWhitePuffSmoke2"], + "13002558": ["bhvPurpleSwitchHiddenBoxes"], + "13002568": ["bhvBlueCoinSwitch"], + "13002588": ["bhvHiddenBlueCoin"], + "130025c0": ["bhvOpenableCageDoor"], + "130025e0": ["bhvOpenableGrill"], + "130025f8": ["bhvWaterLevelDiamond"], + "13002620": ["bhvInitializeChangingWaterLevel"], + "13002634": ["bhvTweesterSandParticle"], + "13002650": ["bhvTweester"], + "13002684": ["bhvMerryGoRoundBooManager"], + "1300269c": ["bhvAnimatedTexture"], + "130026d4": ["bhvBooInCastle"], + "13002710": ["bhvBooWithCage"], + "13002768": ["bhvBalconyBigBoo"], + "1300277c": ["bhvMerryGoRoundBigBoo"], + "13002790": ["bhvGhostHuntBigBoo"], + "130027d0": ["bhvCourtyardBooTriplet"], + "130027e4": ["bhvBoo"], + "130027f4": ["bhvMerryGoRoundBoo"], + "13002804": ["bhvGhostHuntBoo"], + "1300286c": ["bhvHiddenStaircaseStep"], + "13002898": ["bhvBooStaircase"], + "130028cc": ["bhvBBHTiltingTrapPlatform"], + "130028fc": ["bhvHauntedBookshelf"], + "1300292c": ["bhvMeshElevator"], + "13002968": ["bhvMerryGoRound"], + "13002998": ["bhvPlaysMusicTrackWhenTouched"], + "130029b0": ["bhvInsideCannon"], + "130029b4": ["bhvBetaBowserAnchor"], + "130029e4": ["bhvStaticCheckeredPlatform"], + "13002a10": ["bhvUnused2A10"], + "13002a20": ["bhvUnusedFakeStar"], + "13002a48": ["bhvStaticObject"], + "13002a54": ["bhvUnused2A54"], + "13002a5c": ["bhvCastleFloorTrap"], + "13002a7c": ["bhvFloorTrapInCastle"], + "13002aa4": ["bhvTree"], + "13002ad0": ["bhvSparkle"], + "13002af0": ["bhvSparkleSpawn"], + "13002b08": ["bhvSparkleParticleSpawner"], + "13002b5c": ["bhvScuttlebug"], + "13002ba0": ["bhvScuttlebugSpawn"], + "13002bb8": ["bhvWhompKingBoss"], + "13002bcc": ["bhvSmallWhomp"], + "13002c14": ["bhvWaterSplash"], + "13002c60": ["bhvWaterDroplet"], + "13002c7c": ["bhvWaterDropletSplash"], + "13002cb0": ["bhvBubbleSplash"], + "13002ce0": ["bhvIdleWaterWave"], + "13002d28": ["bhvObjectWaterSplash"], + "13002d50": ["bhvShallowWaterWave"], + "13002d7c": ["bhvShallowWaterSplash"], + "13002db0": ["bhvObjectWaveTrail"], + "13002dc0": ["bhvWaveTrail"], + "13002e04": ["bhvTinyStrongWindParticle"], + "13002e20": ["bhvStrongWindParticle"], + "13002e3c": ["bhvSLSnowmanWind"], + "13002e58": ["bhvSLWalkingPenguin"], + "13002ea8": ["bhvYellowBall"], + "13002ec0": ["bhvMario"], + "13002ef8": ["bhvToadMessage"], + "13002f40": ["bhvUnlockDoorStar"], + "13002f60": ["bhvInstantActiveWarp"], + "13002f64": ["bhvAirborneWarp"], + "13002f68": ["bhvHardAirKnockBackWarp"], + "13002f6c": ["bhvSpinAirborneCircleWarp"], + "13002f70": ["bhvDeathWarp"], + "13002f74": ["bhvSpinAirborneWarp"], + "13002f78": ["bhvFlyingWarp"], + "13002f7c": ["bhvPaintingStarCollectWarp"], + "13002f80": ["bhvPaintingDeathWarp"], + "13002f84": ["bhvAirborneDeathWarp"], + "13002f88": ["bhvAirborneStarCollectWarp"], + "13002f8c": ["bhvLaunchStarCollectWarp"], + "13002f90": ["bhvLaunchDeathWarp"], + "13002f94": ["bhvSwimmingWarp"], + "13002fa0": ["bhvRandomAnimatedTexture"], + "13002fc0": ["bhvYellowBackgroundInMenu"], + "13002fe4": ["bhvMenuButton"], + "13003008": ["bhvMenuButtonManager"], + "1300302c": ["bhvActSelectorStarType"], + "13003048": ["bhvActSelector"], + "13003068": ["bhvMovingYellowCoin"], + "130030a4": ["bhvMovingBlueCoin"], + "130030d4": ["bhvBlueCoinSliding"], + "13003104": ["bhvBlueCoinJumping"], + "13003134": ["bhvSeaweed"], + "13003158": ["bhvSeaweedBundle"], + "13003174": ["bhvBobomb"], + "130031ac": ["bhvBobombFuseSmoke"], + "130031dc": ["bhvBobombBuddy"], + "13003228": ["bhvBobombBuddyOpensCannon"], + "13003274": ["bhvCannonClosed"], + "130032a8": ["bhvWhirlpool"], + "130032c8": ["bhvJetStream"], + "130032e0": ["bhvMessagePanel"], + "13003324": ["bhvSignOnWall"], + "13003354": ["bhvHomingAmp"], + "13003388": ["bhvCirclingAmp"], + "130033bc": ["bhvButterfly"], + "130033ec": ["bhvHoot"], + "13003420": ["bhvBetaHoldableObject"], + "13003454": ["bhvCarrySomething1"], + "1300345c": ["bhvCarrySomething2"], + "13003464": ["bhvCarrySomething3"], + "1300346c": ["bhvCarrySomething4"], + "13003474": ["bhvCarrySomething5"], + "1300347c": ["bhvCarrySomething6"], + "13003484": ["bhvObjectBubble"], + "130034c4": ["bhvObjectWaterWave"], + "13003510": ["bhvExplosion"], + "13003558": ["bhvBobombBullyDeathSmoke"], + "13003588": ["bhvSmoke"], + "130035b0": ["bhvBobombExplosionBubble"], + "13003600": ["bhvBobombExplosionBubble3600"], + "13003614": ["bhvRespawner"], + "1300362c": ["bhvSmallBully"], + "13003660": ["bhvBigBully"], + "13003694": ["bhvBigBullyWithMinions"], + "130036c8": ["bhvSmallChillBully"], + "13003700": ["bhvBigChillBully"], + "13003738": ["bhvJetStreamRingSpawner"], + "13003750": ["bhvJetStreamWaterRing"], + "13003798": ["bhvMantaRayWaterRing"], + "130037e0": ["bhvMantaRayRingManager"], + "130037ec": ["bhvBowserBomb"], + "1300381c": ["bhvBowserBombExplosion"], + "13003840": ["bhvBowserBombSmoke"], + "13003868": ["bhvCelebrationStar"], + "13003888": ["bhvCelebrationStarSparkle"], + "130038b0": ["bhvStarKeyCollectionPuffSpawner"], + "130038d0": ["bhvLLLDrawbridgeSpawner"], + "130038e8": ["bhvLLLDrawbridge"], + "13003910": ["bhvSmallBomp"], + "13003940": ["bhvLargeBomp"], + "13003970": ["bhvWFSlidingPlatform"], + "130039a0": ["bhvMoneybag"], + "130039d4": ["bhvMoneybagHidden"], + "13003a08": ["bhvPitBowlingBall"], + "13003a30": ["bhvFreeBowlingBall"], + "13003a58": ["bhvBowlingBall"], + "13003a80": ["bhvTTMBowlingBallSpawner"], + "13003aa4": ["bhvBoBBowlingBallSpawner"], + "13003ac8": ["bhvTHIBowlingBallSpawner"], + "13003ae0": ["bhvRRCruiserWing"], + "13003b00": ["bhvSpindel"], + "13003b30": ["bhvSSLMovingPyramidWall"], + "13003b60": ["bhvPyramidElevator"], + "13003b98": ["bhvPyramidElevatorTrajectoryMarkerBall"], + "13003bb4": ["bhvPyramidTop"], + "13003bec": ["bhvPyramidTopFragment"], + "13003c0c": ["bhvPyramidPillarTouchDetector"], + "13003c30": ["bhvWaterfallSoundLoop"], + "13003c44": ["bhvVolcanoSoundLoop"], + "13003c58": ["bhvCastleFlagWaving"], + "13003c7c": ["bhvBirdsSoundLoop"], + "13003c90": ["bhvAmbientSounds"], + "13003ca4": ["bhvSandSoundLoop"], + "13003cb8": ["bhvHiddenAt120Stars"], + "13003ce4": ["bhvSnowmansBottom"], + "13003d0c": ["bhvSnowmansHead"], + "13003d34": ["bhvSnowmansBodyCheckpoint"], + "13003d4c": ["bhvBigSnowmanWhole"], + "13003d74": ["bhvBigBoulder"], + "13003da0": ["bhvBigBoulderGenerator"], + "13003db8": ["bhvWingCap"], + "13003dd8": ["bhvMetalCap"], + "13003df8": ["bhvNormalCap"], + "13003e1c": ["bhvVanishCap"], + "13003e3c": ["bhvStar"], + "13003e64": ["bhvStarSpawnCoordinates"], + "13003e8c": ["bhvHiddenRedCoinStar"], + "13003eac": ["bhvRedCoin"], + "13003ee4": ["bhvBowserCourseRedCoinStar"], + "13003efc": ["bhvHiddenStar"], + "13003f1c": ["bhvHiddenStarTrigger"], + "13003f40": ["bhvTTMRollingLog"], + "13003f78": ["bhvLLLVolcanoFallingTrap"], + "13003fa4": ["bhvLLLRollingLog"], + "13003fdc": ["bhv1UpWalking"], + "13004010": ["bhv1UpRunningAway"], + "13004044": ["bhv1UpSliding"], + "1300407c": ["bhv1Up"], + "130040b4": ["bhv1UpJumpOnApproach"], + "130040ec": ["bhvHidden1Up"], + "13004124": ["bhvHidden1UpTrigger"], + "13004148": ["bhvHidden1UpInPole"], + "13004180": ["bhvHidden1UpInPoleTrigger"], + "130041a4": ["bhvHidden1UpInPoleSpawner"], + "130041bc": ["bhvControllablePlatform"], + "130041f0": ["bhvControllablePlatformSub"], + "13004218": ["bhvBreakableBoxSmall"], + "13004244": ["bhvSlidingSnowMound"], + "13004270": ["bhvSnowMoundSpawn"], + "13004284": ["bhvWDWSquareFloatingPlatform"], + "130042b4": ["bhvWDWRectangularFloatingPlatform"], + "130042e4": ["bhvJRBFloatingPlatform"], + "13004314": ["bhvArrowLift"], + "13004348": ["bhvOrangeNumber"], + "13004370": ["bhvMantaRay"], + "130043a0": ["bhvFallingPillar"], + "130043c4": ["bhvFallingPillarHitbox"], + "130043e0": ["bhvPillarBase"], + "13004400": ["bhvJRBFloatingBox"], + "1300442c": ["bhvDecorativePendulum"], + "1300444c": ["bhvTreasureChestsShip"], + "13004470": ["bhvTreasureChestsJRB"], + "13004494": ["bhvTreasureChestsDDD"], + "130044b8": ["bhvTreasureChestBottom"], + "130044e0": ["bhvTreasureChestTop"], + "130044fc": ["bhvMips"], + "13004538": ["bhvYoshi"], + "13004580": ["bhvKoopa"], + "130045d0": ["bhvKoopaRaceEndpoint"], + "130045f8": ["bhvKoopaFlag"], + "13004634": ["bhvPokey"], + "13004668": ["bhvPokeyBodyPart"], + "13004698": ["bhvSwoop"], + "130046dc": ["bhvFlyGuy"], + "1300472c": ["bhvGoomba"], + "13004770": ["bhvGoombaTripletSpawner"], + "1300478c": ["bhvChainChomp"], + "130047e4": ["bhvChainChompChainPart"], + "1300481c": ["bhvWoodenPost"], + "13004868": ["bhvChainChompGate"], + "13004898": ["bhvWigglerHead"], + "130048e0": ["bhvWigglerBody"], + "13004918": ["bhvEnemyLakitu"], + "13004954": ["bhvCameraLakitu"], + "13004988": ["bhvCloud"], + "130049ac": ["bhvCloudPart"], + "130049c8": ["bhvSpiny"], + "13004a00": ["bhvMontyMole"], + "13004a58": ["bhvMontyMoleHole"], + "13004a78": ["bhvMontyMoleRock"], + "13004ab0": ["bhvPlatformOnTrack"], + "13004af4": ["bhvTrackBall"], + "13004b1c": ["bhvSeesawPlatform"], + "13004b44": ["bhvFerrisWheelAxle"], + "13004b6c": ["bhvFerrisWheelPlatform"], + "13004b8c": ["bhvWaterBombSpawner"], + "13004ba8": ["bhvWaterBomb"], + "13004bd4": ["bhvWaterBombShadow"], + "13004bf0": ["bhvTTCRotatingSolid"], + "13004c24": ["bhvTTCPendulum"], + "13004c5c": ["bhvTTCTreadmill"], + "13004c94": ["bhvTTCMovingBar"], + "13004ccc": ["bhvTTCCog"], + "13004cf8": ["bhvTTCPitBlock"], + "13004d28": ["bhvTTCElevator"], + "13004d64": ["bhvTTC2DRotator"], + "13004d90": ["bhvTTCSpinner"], + "13004dbc": ["bhvMrBlizzard"], + "13004e08": ["bhvMrBlizzardSnowball"], + "13004e4c": ["bhvSlidingPlatform2"], + "13004e78": ["bhvOctagonalPlatformRotating"], + "13004ea0": ["bhvAnimatesOnFloorSwitchPress"], + "13004ecc": ["bhvActivatedBackAndForthPlatform"], + "13004ef8": ["bhvRecoveryHeart"], + "13004f10": ["bhvWaterBombCannon"], + "13004f28": ["bhvCannonBarrelBubbles"], + "13004f40": ["bhvUnagi"], + "13004f78": ["bhvUnagiSubobject"], + "13004f90": ["bhvDorrie"], + "13004fd4": ["bhvHauntedChair"], + "13005024": ["bhvMadPiano"], + "1300506c": ["bhvFlyingBookend"], + "130050b4": ["bhvBookendSpawn"], + "130050d4": ["bhvHauntedBookshelfManager"], + "130050f4": ["bhvBookSwitch"], + "13005120": ["bhvFirePiranhaPlant"], + "13005158": ["bhvSmallPiranhaFlame"], + "1300518c": ["bhvFireSpitter"], + "130051ac": ["bhvFlyguyFlame"], + "130051e0": ["bhvSnufit"], + "1300521c": ["bhvSnufitBalls"], + "1300525c": ["bhvHorizontalGrindel"], + "130052b4": ["bhvEyerokBoss"], + "130052d0": ["bhvEyerokHand"], + "13005310": ["bhvKlepto"], + "13005354": ["bhvBird"], + "13005380": ["bhvRacingPenguin"], + "130053c4": ["bhvPenguinRaceFinishLine"], + "130053dc": ["bhvPenguinRaceShortcutCheck"], + "130053f4": ["bhvCoffinSpawner"], + "13005414": ["bhvCoffin"], + "13005440": ["bhvClamShell"], + "13005468": ["bhvSkeeter"], + "130054a0": ["bhvSkeeterWave"], + "130054b8": ["bhvSwingPlatform"], + "130054ec": ["bhvDonutPlatformSpawner"], + "13005504": ["bhvDonutPlatform"], + "13005528": ["bhvDDDPole"], + "1300556c": ["bhvRedCoinStarMarker"], + "13005598": ["bhvTripletButterfly"], + "130055dc": ["bhvBubba"], + "13005610": ["bhvBeginningLakitu"], + "13005638": ["bhvBeginningPeach"], + "1300565c": ["bhvEndBirds1"], + "13005680": ["bhvEndBirds2"], + "130056a4": ["bhvIntroScene"], + "130056c0": ["_behaviorSegmentEnd"], + "0021f4c0": ["_behaviorSegmentRomEnd", "_goddardSegmentRomStart"], + "8016f000": ["_goddardSegmentStart"], }, } + +# res_d = dict() +# d_start = 0 +# depth = 0 +# cur_key = None +# for line in func_map.splitlines(): +# line = line.replace('"', "") +# if "{" in line: +# d_start += 1 +# if "}" in line: +# d_start -= 1 +# depth -= 1 +# if d_start > depth: +# key = line.split(":")[0].strip() +# res_d[repr(key)] = dict() +# cur_key = repr(key) +# depth += 1 +# continue +# elif ":" in line: +# key, value = line.split(":") +# extant_val = res_d[cur_key].get(repr(key.strip()), None) +# if extant_val: +# res_d[cur_key][repr(key.strip())].append(value.strip()) +# else: +# res_d[cur_key][repr(key.strip())] = [value.strip()] +# +# out = "func_map = {\n" +# for k, v in res_d.items(): +# out += f"\t{k} : {{\n" +# print(k) +# for a, b in v.items(): +# out += f"\t\t{a} : {b},\n" +# out += "},\n" +# out += "}" +# with open("func_map.py", "w") as f: +# f.write(out) diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index ce437efd0..a584ba64e 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -2809,12 +2809,20 @@ def execute(self, context): group_prefix = props.group_prefix level_name = props.level_name level_prefix = props.level_prefix + + # add in common actor paths for actors that use stars or mario hat geo_paths = ( decomp_path / "actors" / (group_prefix + "_geo.c"), + decomp_path / "actors" / "common0_geo.c", + decomp_path / "actors" / "common1_geo.c", + decomp_path / "actors" / "group0_geo.c", decomp_path / "levels" / level_name / (level_prefix + "geo.c"), ) model_data_paths = ( decomp_path / "actors" / (group_prefix + ".c"), + decomp_path / "actors" / "common0.c", + decomp_path / "actors" / "common1.c", + decomp_path / "actors" / "group0.c", decomp_path / "levels" / level_name / (level_prefix + "leveldata.c"), ) @@ -3206,13 +3214,11 @@ def geo_layout(self): else: preset_full = self.get_actor_preset() model_info = preset_full.get_model_info(self.actor_preset) - print(f"preset: {self.actor_preset}, geo: {model_info.geolayout:08x}") - return convert_addr_to_func(f"{model_info.geolayout:08x}") + return convert_addr_to_func(f"{model_info.geolayout:08x}", self.actor_preset.replace(" ", "_").lower()) @property def geo_layout_binary(self): if self.actor_preset == "Custom": - convert_addr_to_func(self.custom_geo_layout_addr) return self.custom_geo_layout_str else: preset_full = self.get_actor_preset() diff --git a/fast64_internal/sm64/sm64_utility.py b/fast64_internal/sm64/sm64_utility.py index f408bc17d..4c2a0dc51 100644 --- a/fast64_internal/sm64/sm64_utility.py +++ b/fast64_internal/sm64/sm64_utility.py @@ -126,7 +126,7 @@ def string_int_prop(layout: UILayout, data, prop: str, name="", split=True, **pr return string_int_warning(layout, getattr(data, prop)) -def convert_addr_to_func(addr: str): +def convert_addr_to_func(addr: str, name: str = None): if addr == "": raise PluginError("Empty function name/address.") refresh_version: str = bpy.context.scene.fast64.sm64.refresh_version @@ -135,7 +135,13 @@ def convert_addr_to_func(addr: str): assert refresh_version in func_map, "Refresh version not found in function map" refresh_func_map = func_map[refresh_version] if addr.lower() in refresh_func_map: - return refresh_func_map[addr.lower()] + if not name: + return refresh_func_map[addr.lower()][0] + for val in refresh_func_map[addr.lower()]: + if name in val: + return val + else: + return refresh_func_map[addr.lower()][0] else: return addr From 522bd303e8de83ba29770452ac8b734e2a13361e Mon Sep 17 00:00:00 2001 From: scut Date: Mon, 23 Feb 2026 16:58:05 -0500 Subject: [PATCH 27/30] organized file better, added proper docstrings to most classes and base level functions, changed tile property parsing, added actor collision importing --- fast64_internal/f3d/f3d_import.py | 176 ++--- fast64_internal/sm64/sm64_constants.py | 6 + fast64_internal/sm64/sm64_level_importer.py | 782 +++++++++++--------- fast64_internal/utility_importer.py | 239 +++--- 4 files changed, 644 insertions(+), 559 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 3ef4edfd6..8105f6f1d 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -1,6 +1,3 @@ -# ------------------------------------------------------------------------ -# Header -# ------------------------------------------------------------------------ from __future__ import annotations import bpy, bmesh @@ -42,8 +39,9 @@ # ------------------------------------------------------------------------ -# will format light struct data passed depending on type of light class LightParent: + """format light struct data passed depending on type of light""" + def __init__(self, name: str, light_struct: Sequence): self.name = name getattr(self, light_struct.var_type)(light_struct.var_data) @@ -82,8 +80,9 @@ def Lights(self, light_data: list[str]): self.dir = data[7:10] -# just holds common methods for tiles & textures class TexBase: + """Holds common methods for tiles & textures""" + def check_tex_hack(self): # check for hacky 4b loading if "RGBA" in self.fmt and "4b" in self.siz: @@ -103,8 +102,44 @@ def eval_texture_format(self): self.check_tex_hack() return f"{self.fmt.replace('G_IM_FMT_','')}{self.siz.replace('G_IM_SIZ_','').replace('b','')}" + # if someone uses just the int these catch that + @staticmethod + def parse_timg_format(fmt: str): + GBI_fmt_ints = { + "0": "G_IM_FMT_RGBA", + "1": "G_IM_FMT_YUV", + "2": "G_IM_FMT_CI", + "3": "G_IM_FMT_IA", + "4": "G_IM_FMT_I", + } + return GBI_fmt_ints.get(fmt, fmt) + + @staticmethod + def parse_tile_flags(fmt: str): + GBI_flag_ints = { + "0": "G_TX_NOMIRROR", + "1": "G_TX_MIRROR", + "2": "G_TX_CLAMP", + } + return GBI_flag_ints.get(fmt, fmt) + + @staticmethod + def parse_image_frac(arg: Union[str, Number]): + if type(arg) == int: + return arg + arg2 = arg.replace("G_TEXTURE_IMAGE_FRAC", "2") + # evals bad probably + return eval(arg2) + + @staticmethod + def parse_tile_enum(f3d_gbi: F3D, arg: Union[str, Number]): + if type(arg) is str and not arg.isdigit(): + # fix later + return getattr(f3d_gbi, arg, 0) + else: + return hexOrDecInt(arg) + -# this will hold tile properties class Tile(TexBase): def __init__(self): self.fmt = "G_IM_FMT_RGBA" @@ -122,10 +157,12 @@ def __init__(self): self.tmem = -1 # because 0 is the start -# this will hold texture properties, dataclass props -# are created in order for me to make comparisons in a set @dataclass(init=True, eq=True, unsafe_hash=True) class Texture(TexBase): + """this will hold texture properties + dataclass props are created in order for me to make comparisons in a set + """ + tex_img: str fmt: str siz: int @@ -137,29 +174,22 @@ class Texture(TexBase): num_bytes: int = 0 # to be filled in after self.determine_size def determine_size(self): - # dxt is a ratio between words and lines of a texture - # we can use it to get the true texture width for textures - # loaded via loadblock - - # that said sometimes dxt is used in funny ways for special effects - # in these cases, I will default to another measurement because - # dxt is no longer reliable - # reverse load block texels to be just width * height - # dxs = (((fImage.width) * (fImage.height) + 3) >> 2) - 1 for 4B - # else - # dxs = ( - # ((fImage.width) * (fImage.height) + f3d.G_IM_SIZ_VARS[siz + "_INCR"]) - # >> f3d.G_IM_SIZ_VARS[siz + "_SHIFT"] - # ) - 1 - # define G_IM_SIZ_4b_SHIFT 2 - # define G_IM_SIZ_8b_SHIFT 1 - # define G_IM_SIZ_16b_SHIFT 0 - # define G_IM_SIZ_32b_SHIFT 0 - - # define G_IM_SIZ_4b_INCR 3 - # define G_IM_SIZ_8b_INCR 1 - # define G_IM_SIZ_16b_INCR 0 - # define G_IM_SIZ_32b_INCR 0 + """Calculate image size using load block values and texture format + dxt is a ratio between words and lines of a texture + we can use it to get the true texture width for textures + loaded via loadblock + + that said sometimes dxt is used in funny ways for special effects + in these cases, I will default to another measurement because + dxt is no longer reliable + reverse load block texels to be just width * height + dxs = (((fImage.width) * (fImage.height) + 3) >> 2) - 1 for 4B + else + dxs = ( + ((fImage.width) * (fImage.height) + f3d.G_IM_SIZ_VARS[siz + "_INCR"]) + >> f3d.G_IM_SIZ_VARS[siz + "_SHIFT"] + ) - 1 + """ bit_size = int(re.search("\d+", self.siz).group()) if bit_size == 4: texels = (self.texels + 1) << 2 @@ -199,9 +229,9 @@ def size(self): return self.width, self.height -# This is a data storage class and mat to f3dmat converting class -# used when importing for kirby class Mat: + """Holds parsed material data to be written out to fast64 f3d materials with method apply_material_settings""" + # constants for lastmat layer lookup _base_layer = -1 _base_combiner = ( @@ -596,10 +626,13 @@ def eval_tile_flags(self, flags: str): return x -# handles DL import processing, specifically built to process each cmd into the mat class -# should be inherited into a larger F3d class which wraps DL processing -# does not deal with flow control or gathering the data containers (VB, Geo cls etc.) class DL(DataParser): + """handles DL import processing, specifically built to process each cmd into the mat class + + should be inherited into a larger F3d class which wraps DL processing + does not deal with flow control or gathering the data containers (VB, Geo cls etc.) + """ + _skippable_cmds = { "gsDPNoOp", "gsDPFullSync", @@ -695,10 +728,10 @@ def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] # idk why this is necessary. N64 thing or something? if self.parsing_target == DataParser._binary_parsing: - flip = 1 + flip = lambda x: x else: - flip = -1 - l[uv_map].uv[1] = l[uv_map].uv[1] * flip + 1 + flip = lambda x: x * -1 + 1 + l[uv_map].uv[1] = flip(l[uv_map].uv[1]) l[v_color] = [*gammaInverse([a / 255 for a in vcol]), 255] l[v_alpha] = [vcol[3] / 255 for i in range(4)] @@ -1506,14 +1539,14 @@ def gsSPTexture(self, macro: Macro): self.last_mat.tex_scale = [ ((0x10000 * (hexOrDecInt(a) < 0)) + hexOrDecInt(a)) / 0xFFFF for a in macro.args[0:2] ] # signed half to unsigned half - self.last_mat.base_tile = self.eval_tile_enum(macro.args[-2]) + self.last_mat.base_tile = TexBase.parse_tile_enum(self.f3d_gbi, macro.args[-2]) return self._continue_parse # last tex is a palette def gsDPLoadTLUTCmd(self, macro: Macro): if hasattr(self.last_mat, "loadtex"): tex = self.last_mat.loadtex - tile_index = self.eval_tile_enum(macro.args[0]) + tile_index = TexBase.parse_tile_enum(self.f3d_gbi, macro.args[0]) tex.tile = self.last_mat.tiles[tile_index] tex.pal = True self.last_mat.pal = tex @@ -1541,7 +1574,7 @@ def gsDPLoadBlock(self, macro: Macro): tex.texels = eval(macro.args[3]) else: tex.texels = hexOrDecInt(macro.args[3]) - tile_index = self.eval_tile_enum(macro.args[0]) + tile_index = TexBase.parse_tile_enum(self.f3d_gbi, macro.args[0]) tex.tile = self.last_mat.tiles[tile_index] self.last_mat.tmem[tex.tile.tmem] = tex else: @@ -1563,25 +1596,25 @@ def gsDPSetTextureImage(self, macro: Macro): def gsDPSetTileSize(self, macro: Macro): self.NewMat = 1 - tile = self.last_mat.tiles[self.eval_tile_enum(macro.args[0])] - tile.Slow = self.eval_image_frac(macro.args[1]) - tile.Tlow = self.eval_image_frac(macro.args[2]) - tile.Shigh = self.eval_image_frac(macro.args[3]) - tile.Thigh = self.eval_image_frac(macro.args[4]) + tile = self.last_mat.tiles[TexBase.parse_tile_enum(self.f3d_gbi, macro.args[0])] + tile.Slow = tile.parse_image_frac(macro.args[1]) + tile.Tlow = tile.parse_image_frac(macro.args[2]) + tile.Shigh = tile.parse_image_frac(macro.args[3]) + tile.Thigh = tile.parse_image_frac(macro.args[4]) return self._continue_parse def gsDPSetTile(self, macro: Macro): self.NewMat = 1 - tile = self.last_mat.tiles[self.eval_tile_enum(macro.args[4])] + tile = self.last_mat.tiles[TexBase.parse_tile_enum(self.f3d_gbi, macro.args[4])] tile.tmem = hexOrDecInt(macro.args[3]) tile.fmt = macro.args[0].strip() tile.siz = macro.args[1].strip() - tile.Tflags = macro.args[6].strip() - tile.TMask = self.eval_tile_enum(macro.args[7]) - tile.TShift = self.eval_tile_enum(macro.args[8]) - tile.Sflags = macro.args[9].strip() - tile.SMask = self.eval_tile_enum(macro.args[10]) - tile.SShift = self.eval_tile_enum(macro.args[11]) + tile.Tflags = tile.parse_tile_flags(macro.args[6].strip()) + tile.TMask = tile.parse_tile_enum(self.f3d_gbi, macro.args[7]) + tile.TShift = tile.parse_tile_enum(self.f3d_gbi, macro.args[8]) + tile.Sflags = tile.parse_tile_flags(macro.args[9].strip()) + tile.SMask = tile.parse_tile_enum(self.f3d_gbi, macro.args[10]) + tile.SShift = tile.parse_tile_enum(self.f3d_gbi, macro.args[11]) # on a render tile 4 bit textures will change their size here tex = self.last_mat.tmem.get(tile.tmem, None) if tex: @@ -1600,8 +1633,8 @@ def gsDPLoadTLUT(self, macro: Macro): def gsDPLoadTextureBlock(self, macro: Macro): # 0tex, 1fmt, 2siz, 3height, 4width, 5pal, 6flags, 8masks, 10shifts args = macro.args - fmt = self.eval_timg_format(args[1]) - siz = self.eval_timg_format(args[2]) + fmt = TexBase.parse_timg_format(args[1]) + siz = TexBase.parse_timg_format(args[2]) self.gsDPSetTextureImage(macro.partial(fmt, siz, 1, args[0])) self.gsDPSetTile(macro.partial(fmt, siz, 0, 0, 7, 0, args[7], args[9], args[11], args[6], args[8], args[10])) # self.gsDPLoadSync(macro) @@ -1621,8 +1654,8 @@ def gsDPLoadTextureBlockS(self, macro: Macro): def _gsDPLoadTextureBlock(self, macro: Macro): # 0tex, 1tmem, 2fmt, 3siz, 4height, 5width, 6pal, 7flags, 9masks, 11shifts args = macro.args - fmt = eval_timg_format(args[2]) - siz = eval_timg_format(args[3]) + fmt = TexBase.parse_timg_format(args[2]) + siz = TexBase.parse_timg_format(args[3]) self.gsDPSetTextureImage(macro.partial(fmt, siz, 1, args[0])) self.gsDPSetTile(macro.partial(fmt, siz, 0, 0, 7, 0, args[8], args[10], args[12], args[7], args[9], args[11])) # self.gsDPLoadSync(macro) @@ -1637,7 +1670,7 @@ def _gsDPLoadTextureBlock(self, macro: Macro): def gsDPLoadTextureBlock_4b(self, macro: Macro): # 0tex, 1fmt, 2height, 3width, 4pal, 5flags, 7masks, 9shifts args = macro.args - fmt = eval_timg_format(args[1]) + fmt = TexBase.parse_timg_format(args[1]) self.gsDPSetTextureImage(macro.partial(fmt, "G_IM_SIZ_16b", 1, args[0])) self.gsDPSetTile( macro.partial(fmt, "G_IM_SIZ_16b", 0, 0, 7, 0, args[6], args[8], args[10], args[5], args[7], args[9]) @@ -1682,31 +1715,6 @@ def make_new_material(self): self.last_mat = deepcopy(self.last_mat) # for safety self.last_mat_dict[self.last_mat.layer] = self.last_mat - # if someone uses just the int these catch that - def eval_timg_format(self, fmt: str): - GBI_fmt_ints = { - "0": "G_IM_FMT_RGBA", - "1": "G_IM_FMT_YUV", - "2": "G_IM_FMT_CI", - "3": "G_IM_FMT_IA", - "4": "G_IM_FMT_I", - } - return GBI_fmt_ints.get(fmt, fmt) - - def eval_image_frac(self, arg: Union[str, Number]): - if type(arg) == int: - return arg - arg2 = arg.replace("G_TEXTURE_IMAGE_FRAC", "2") - # evals bad probably - return eval(arg2) - - def eval_tile_enum(self, arg: Union[str, Number]): - if type(arg) is str and not arg.isdigit(): - # fix later - return getattr(self.f3d_gbi, arg, 0) - else: - return hexOrDecInt(arg) - def eval_set_combine_macro(self, arg: str): return getattr(self.f3d_gbi, arg[0], ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"]) + getattr( self.f3d_gbi, arg[1], ["TEXEL0", "0", "SHADE", "0", "TEXEL0", "0", "SHADE", "0"] diff --git a/fast64_internal/sm64/sm64_constants.py b/fast64_internal/sm64/sm64_constants.py index ba575573e..46e426295 100644 --- a/fast64_internal/sm64/sm64_constants.py +++ b/fast64_internal/sm64/sm64_constants.py @@ -2437,6 +2437,12 @@ def get_model_info(self, name: str): else: return self.models + def get_collision_info(self, name: str): + if type(self.collision) == dict: + return self.collision.get(name, None) + else: + return self.collision + ACTOR_PRESET_INFO = { "Amp": ActorPresetInfo( diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index a584ba64e..641db204c 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -1,16 +1,8 @@ -# ------------------------------------------------------------------------ -# Header -# ------------------------------------------------------------------------ - # TODO: -# clean up code base, remove existing sm64 binary importer -# make sure props play nice in prop updating system - +# Add support for special objects # stretch goals # deal with direct DLs instead of geos (model metal box for example) -# make rooms work better? (currently imports but definetly not good for export) # make layer detection work better? -# add function and class descriptors per spec (triple quotes) # make better naming for certain vars # try to fix edge cases and any weird importing stuff (basically lots of testing, it feels mostly good but this must be done last) @@ -287,6 +279,11 @@ def link_bpy_obj_to_empty( class Level(DataParser): + """DataParser for level scripts, run parse_level_script to get data, entry point is anywhere in bin files, level specific script start for C + + Use parse_level_script helper function to setup and run Level script parser properly + """ + # class data _skippable_cmds = { "LOAD_MARIO_HEAD", @@ -460,6 +457,7 @@ def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: return cmd_name, packed_fmt def load_segment_two(self, bin_file: BinaryIO): + """Loads segment two which is based on asm ran during game start""" start = self.unpack_type(bin_file, 0x3AC2, ">H", make_str=False) << 16 start += self.unpack_type(bin_file, 0x3ACE, ">H", make_str=False) end = self.unpack_type(bin_file, 0x3AC6, ">H", make_str=False) << 16 @@ -467,16 +465,17 @@ def load_segment_two(self, bin_file: BinaryIO): # mio0 for seg2 expands by 0x3156, from mio0 header 0xC self.banks.tlb[2] = [start + 0x3156, end + 0x3156] - def check_rom_manager(self, editor: bool = False, rom_manager: bool = True): - """ - # custom hacks override the level script execute jump table (0x8038B914 -> 0x00108694) cmd 0x17 LOAD_RAW with a cmd in custom memory - # in vanilla it is 0x8037ECA4 -> 0x00FBA24 - # the function goes to 0x80402000 -> 0x1204000 - # in editor the override goes to 0x80401500 -> 0x1201500 - # other versions of editor/rom manager may use other overrides but I doubt it's that common - # for debugging purposes, sSegmentTable is 0x8033B400 - - # check for version based on args, default is rom manager. False for vanilla, True if matching specific tool + def check_rom_manager(self, editor: bool = False, rom_manager: bool = True) -> bool: + """Checks if bin_file is a RM, editor or vanilla ROM based on signatures + + custom hacks override the level script execute jump table (0x8038B914 -> 0x00108694) cmd 0x17 LOAD_RAW with a cmd in custom memory + in vanilla it is 0x8037ECA4 -> 0x00FBA24 + the function goes to 0x80402000 -> 0x1204000 + in editor the override goes to 0x80401500 -> 0x1201500 + other versions of editor/rom manager may use other overrides but I doubt it's that common + for debugging purposes, sSegmentTable is 0x8033B400 + + check for version based on args, default is rom manager. False for vanilla, True if matching specific tool """ load_raw_func_addr = self.unpack_type(self.bin_file, 0x00108694, ">L", make_str=False) if load_raw_func_addr == 0x8037ECA4: @@ -489,15 +488,18 @@ def check_rom_manager(self, editor: bool = False, rom_manager: bool = True): # update area terrain and geo_ptr def update_col_ptr(self, area_index: int): if self.areas[area_index].terrain: - self.areas[area_index].terrain = self.seg2phys(self.areas[area_index].terrain) + self.areas[area_index].col_file = self.seg2phys(self.areas[area_index].terrain) def update_geo_ptr(self, area_index: int): if self.areas[area_index].geo: self.areas[area_index].geo = self.seg2phys(self.areas[area_index].geo) def load_segment_E(self, area_index: int): - # for RM custom levels, segment 0xE has a hook on the CALL level script to dma new data to seg 0xE - # for blender purposes, this can just be emulated by calling this func before each area is parsed + """Loads segment 0xE after level script is done, call before parsing col/geo/f3d data + + for RM custom levels, segment 0xE has a hook on the CALL level script to dma new data to seg 0xE + for blender purposes, this can just be emulated by calling this func before each area is parsed + """ is_rm = self.check_rom_manager() if not is_rm: return @@ -511,9 +513,10 @@ def load_segment_E(self, area_index: int): self.banks.tlb[0x0E] = [start, end] # macro parsing funcs - # jump to new script, goes back via EXIT, not RETURN - # shouldn't matter though as long as game follows its own rules, can use normal recursion def EXECUTE(self, macro: Macro, col: bpy.types.Collection): + """jump to new script, goes back via EXIT, not RETURN + shouldn't matter though as long as game follows its own rules, can use normal recursion + """ self.banks.tlb[macro.args[0]] = (macro.args[1], macro.args[2]) if type(macro.args[-1]) is int: macro.args[-1] = self.seg2phys(macro.args[-1]) @@ -771,6 +774,8 @@ class ColTri: class Collision(DataParser): + """Data parser for collision files, use import_level_collision to setup""" + def __init__(self, collision: list[str], scale: float, parse_target=DataParser._c_parsing): self.collision = collision # will be none in binary self.scale = scale @@ -982,9 +987,12 @@ def SPECIAL_OBJECT_WITH_YAW_AND_PARAM(self, macro: Macro): class SM64_Material(Mat): + """Holds parsed material data to be written out to fast64 f3d materials with method apply_material_settings""" + def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture): if not tex: return None + # TODO # for some reason I can't get the parsing target to be what I want, so read props instead # would like for this to be better if bpy.context.scene.fast64.sm64.importer.import_target == "Binary": @@ -1073,14 +1081,17 @@ def set_textures(self, f3d: F3DMaterialProperty, textures: dict, tex_path: Path) class SM64_F3D(DL): + """DataParser for display lists, must gather sm64 specific data before parsing with get_f3d_data_from_model""" + def __init__(self, scene, parse_target: int = DataParser._c_parsing): self.scene = scene self.props = scene.fast64.sm64.importer super().__init__(lastmat=SM64_Material(), parse_target=parse_target) - # Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file - # this will add all the textures located in the /textures/ folder in decomp def get_generic_textures(self, root_path: Path): + """Add all the textures located in the /textures/ folder in decomp to Textures dict + without this, Textures only contains the texture data found inside the model.inc.c file and the texture.inc.c file + """ # check that there is a textures directory if not (tex_path := root_path / "textures").exists(): raise Exception("you must make project for /textures/ folder to exist") @@ -1116,8 +1127,8 @@ def get_generic_textures(self, root_path: Path): ) t.close() - # recursively parse the display list in order to return a bunch of model data def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, layer: int = None): + """recursively parse the display list in order to return a bunch of model data""" # inherit the mat based on the layer, or explicitly given one if last_mat: self.last_mat = last_mat @@ -1133,9 +1144,10 @@ def get_f3d_data_from_model(self, start: str, last_mat: SM64_Material = None, la return [self.Verts, self.Tris] -# holds model found by geo @dataclass class ModelDat: + """holds model found by geo layout""" + transform: Matrix layer: int model_name: str @@ -1145,8 +1157,9 @@ class ModelDat: object: bpy.types.Object = None -# base class for geo layouts and armatures class GraphNodes(DataParser): + """base DataParser class for geo layouts and geo armatures, sets up object hierarchy with proper transforms for model in blender based on sm64 geo layouts""" + # class data _skipped_geo_asm_funcs = { "geo_movtex_pause_control", @@ -2207,9 +2220,11 @@ def GEO_OPEN_NODE(self, macro: Macro, depth: int): # Functions # ------------------------------------------------------------------------ +# Helper and pre processing funcs + -# parse aggregate files, and search for sm64 specific fast64 export name schemes def get_all_aggregates(aggregate_path: Path, filenames: tuple[callable], root_path: Path) -> list[Path]: + """parse aggregate files, and search for sm64 specific fast64 export name schemes""" if not aggregate_path or not aggregate_path.exists(): return [] version = bpy.context.scene.fast64.sm64.importer.version @@ -2243,8 +2258,9 @@ def get_and_check_rom(scene: bpy.types.Scene) -> filepathIO: return rom_path -# given a rom, parse the level script +# Level script functions def parse_level_script_binary(bin_file: BinaryIO, scene: bpy.types.Scene, col: bpy.types.Collection = None) -> Level: + """given a rom, parse the level script from the level script start and entering level importer_props.level_name""" root = bpy.data.objects.new("Empty", None) if not col: scene.collection.objects.link(root) @@ -2266,8 +2282,8 @@ def parse_level_script_binary(bin_file: BinaryIO, scene: bpy.types.Scene, col: b return lvl -# given a path, get a level object by parsing the script.c file def parse_level_script_c(script_files: list[Path], scene: bpy.types.Scene, col: bpy.types.Collection = None) -> Level: + """Given an aggregate scripts path, get a level object by parsing the script.c file from importer_props.entry""" props = scene.fast64.sm64.importer root = bpy.data.objects.new("Empty", None) if not col: @@ -2294,7 +2310,6 @@ def parse_level_script_c(script_files: list[Path], scene: bpy.types.Scene, col: return lvl -# generate level object def parse_level_script( script_files: list[Path], decomp_path: Path, @@ -2302,6 +2317,7 @@ def parse_level_script( scene: bpy.types.Scene, col: bpy.types.Collection = None, ) -> Level: + """generate level object given data containers (rom or aggregate script files)""" props = scene.fast64.sm64.importer if props.import_target == "C": return parse_level_script_c( @@ -2313,175 +2329,14 @@ def parse_level_script( return parse_level_script_binary(bin_file, scene, col=col) -# write the objects from a level object def write_level_objects(lvl: Level, col_name: str = None, actor_models: dict[model_name, bpy.Types.Mesh] = None): for area in lvl.areas.values(): area.place_objects(col_name=col_name, actor_models=actor_models) -# from a geo layout, create all the mesh's -def write_armature_to_bpy( - geo_armature: GeoArmature, - scene: bpy.types.Scene, - f3d_dat: SM64_F3D, - root_path: Path, - parsed_model_data: dict[str, bpy.Types.Mesh], - cleanup: bool = True, -): - parsed_model_data = recurse_armature(geo_armature, scene, f3d_dat, root_path, parsed_model_data, cleanup=cleanup) - - def glob_models_in_arm(object_dict: dict, geo_armature: GeoArmature): - for model_data in geo_armature.models: - if not object_dict.get(model_data.armature_obj, None): - object_dict[model_data.armature_obj] = [model_data.object] - else: - object_dict[model_data.armature_obj].append(model_data.object) - if not geo_armature.children: - return object_dict - for arm in geo_armature.children: - object_dict = glob_models_in_arm(object_dict, arm) - return object_dict - - objects_by_armature = glob_models_in_arm(dict(), geo_armature) - - for armature_obj, objects in objects_by_armature.items(): - # I don't really know the specific override needed for this to work - if len(objects) > 1: - override = {**bpy.context.copy(), "selected_editable_objects": objects, "active_object": objects[0]} - with bpy.context.temp_override(**override): - bpy.ops.object.join() - - obj = objects[0] - obj.location += armature_obj.location - parentObject(armature_obj, obj, keep=1) - obj.ignore_collision = True - # armature deform - mod = obj.modifiers.new("deform", "ARMATURE") - mod.object = geo_armature.armature - return parsed_model_data - - -def apply_mesh_data( - f3d_dat: SM64_F3D, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, root_path: Path, cleanup: bool = False -): - f3d_dat.apply_mesh_data(obj, mesh, layer, root_path, f3d_dat.props.force_new_tex) - if cleanup: - mesh = obj.data - # clean up after applying dat - mesh.validate() - mesh.update(calc_edges=True) - # final operators to clean stuff up - # shade smooth - obj.select_set(True) - bpy.context.view_layer.objects.active = obj - bpy.ops.object.shade_smooth() - bpy.ops.object.mode_set(mode="EDIT") - bpy.ops.mesh.remove_doubles() - bpy.ops.object.mode_set(mode="OBJECT") - - -def recurse_armature( - geo_armature: GeoArmature, - scene: bpy.types.Scene, - f3d_dat: SM64_F3D, - root_path: Path, - parsed_model_data: dict[str, bpy.Types.Mesh], - cleanup: bool = True, -): - if geo_armature.models: - # create a mesh for each one - for model_data in geo_armature.models: - name = f"{model_data.model_name} data" - layer = geo_armature.parse_layer(model_data.layer) - if parsed_model_data and name in parsed_model_data.keys(): - mesh = parsed_model_data[name] - name = 0 - else: - mesh = bpy.data.meshes.new(name) - model_data.mesh = mesh - parsed_model_data[name] = mesh - [verts, tris] = f3d_dat.get_f3d_data_from_model(model_data.model_name, layer=layer) - mesh.from_pydata(verts, [], tris) - - obj = bpy.data.objects.new(f"{model_data.model_name} obj", mesh) - - obj.matrix_world = transform_matrix_to_bpy(model_data.transform) * ( - 1 / scene.fast64.sm64.blender_to_sm64_scale - ) - - model_data.object = obj - geo_armature.col.objects.link(obj) - # vertex groups are shared with shared mesh data - if model_data.vertex_group_name and name: - vertex_group = obj.vertex_groups.new(name=model_data.vertex_group_name) - vertex_group.add([vert.index for vert in obj.data.vertices], 1, "ADD") - if model_data.switch_index: - model_data.armature_obj = geo_armature.switch_armatures[model_data.switch_index] - else: - model_data.armature_obj = geo_armature.armature - - if name: - apply_mesh_data(f3d_dat, obj, mesh, str(layer), root_path, cleanup) - - if not geo_armature.children: - return parsed_model_data - for arm in geo_armature.children: - parsed_model_data = recurse_armature(arm, scene, f3d_dat, root_path, parsed_model_data, cleanup=cleanup) - return parsed_model_data - - -# from a geo layout, create all the mesh's -def write_geo_to_bpy( - geo: GeoLayout, - scene: bpy.types.Scene, - f3d_dat: SM64_F3D, - root_path: Path, - meshes: dict[str, bpy.Types.Mesh], - cleanup: bool = True, -) -> dict[str, bpy.Types.Mesh]: - if geo.models: - # create a mesh for each one. - for model_data in geo.models: - name = f"{model_data.model_name} data" - layer = geo.parse_layer(model_data.layer) - if meshes and name in meshes.keys(): - mesh = meshes[name] - name = 0 - else: - mesh = bpy.data.meshes.new(name) - meshes[name] = mesh - [verts, tris] = f3d_dat.get_f3d_data_from_model(model_data.model_name, layer=layer) - # don't write empty models, delete empties with no children - # potential mat errors if used for DL setup but current importer should account for that using last_mat system - if tris: - mesh.from_pydata(verts, [], tris) - elif not geo.children: - bpy.data.objects.remove(model_data.object) - model_data.object = None - meshes.pop(name) - continue - - # swap out placeholder mesh data - model_data.object.data = mesh - - if name: - apply_mesh_data(f3d_dat, model_data.object, mesh, str(layer), root_path, cleanup) - if not geo.children: - return meshes - for g in geo.children: - meshes = write_geo_to_bpy(g, scene, f3d_dat, root_path, meshes, cleanup=cleanup) - return meshes - - -# write the gfx for a level given the level data, and f3d data -def write_level_to_bpy(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: SM64_F3D, cleanup: bool = False): - for area_index, area in lvl.areas.items(): - write_geo_to_bpy(area.geo_data, scene, f3d_dat, root_path, dict(), cleanup=cleanup) - return lvl - - -# given a geo.c file and a path, return cleaned up geo layouts in a dict +# Geo Layout functions def construct_geo_layouts_from_file(geo_paths: list[Path], root_path: Path) -> dict[geo_name:str, geo_data : list[str]]: + """given a list of aggregate geo.c file, return cleaned up geo layouts in a dict""" geo_layout_files = [] for path in geo_paths: geo_layout_files += get_all_aggregates(path, (lambda path: "geo.inc.c" in path.name,), root_path) @@ -2501,84 +2356,6 @@ def construct_geo_layouts_from_file(geo_paths: list[Path], root_path: Path) -> d return geo_layout_data -# get all the relevant data types cleaned up and organized for the f3d class -def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO) -> SM64_F3D: - gfx_dat = get_data_types_from_file( - model_file, - { - "Vtx": ["{", "}"], - "Gfx": ["(", ")"], - "Light_t": [None, None], - "Ambient_t": [None, None], - "Lights": [None, None], - }, - macro_check=gfx.props.version, - collated=True, - ) - for key, value in gfx_dat.items(): - attr = getattr(gfx, key) - attr.update(value) - gfx.Textures.update( - get_data_types_from_file( - model_file, - { - "Texture": [None, None], - "u8": [None, None], - "s16": [None, None], - }, - macro_check=gfx.props.version, - ) - ) - return gfx - - -# Parse an aggregate group file or level data file for f3d data -def construct_model_data_from_file(aggregates: list[Path], scene: bpy.types.Scene, root_path: Path) -> SM64_F3D: - model_files = [] - texture_files = [] - for dat_file in aggregates: - model_files += get_all_aggregates( - dat_file, - ( - lambda path: "model.inc.c" in path.name, - lambda path: path.match("*[0-9].inc.c"), # deal with 1.inc.c files etc. - lambda path: "painting.inc.c" in path.name, # add way to deal with 1.inc.c filees etc. - lambda path: "light.inc.c" in path.name, # only in vanilla decomp in LLL for some reason - ), - root_path, - ) - texture_files += get_all_aggregates( - dat_file, - ( - lambda path: "texture.inc.c" in path.name, - lambda path: "textureNew.inc.c" in path.name, - ), - root_path, - ) - # Get all modeldata in the level - sm64_f3d_data = SM64_F3D(scene) - for model_file in model_files: - model_file = open(model_file, "r", newline="") - construct_sm64_f3d_data_from_file(sm64_f3d_data, model_file) - # Update file to have texture.inc.c textures, deal with included textures in the model.inc.c files aswell - for texture_file in [*texture_files, *model_files]: - with open(texture_file, "r", newline="") as texture_file: - # For textures, try u8, and s16 aswell - sm64_f3d_data.Textures.update( - get_data_types_from_file( - texture_file, - { - "Texture": [None, None], - "u8": [None, None], - "s16": [None, None], - }, - macro_check=sm64_f3d_data.props.version, - ) - ) - return sm64_f3d_data - - -# Parse an aggregate group file or level data file for geo layouts corresponding to list of model IDs def find_actor_models_from_model_ids( geo_paths: list[Path], model_ids: list[str], @@ -2587,6 +2364,7 @@ def find_actor_models_from_model_ids( root_path: Path, col: bpy.types.Collection = None, ) -> dict[model_id, GeoLayout]: + """Parse geo_layouts with matching found in aggregate group_geo.c or level geo.c files""" geo_layout_dict = construct_geo_layouts_from_file(geo_paths, root_path) geo_layout_per_model: dict[model_id, GeoLayout] = dict() for model in model_ids: @@ -2606,7 +2384,6 @@ def find_actor_models_from_model_ids( return geo_layout_per_model -# Parse an aggregate group file or level data file for geo layouts def find_actor_models_from_geo( geo_paths: list[Path], layout_name: str, @@ -2614,11 +2391,11 @@ def find_actor_models_from_geo( root_path: Path, col: bpy.types.Collection = None, ) -> GeoLayout: + """Parse geo_layout found within aggregate group_geo.c file or level geo.c""" geo_layout_dict = construct_geo_layouts_from_file(geo_paths, root_path) return GraphNodes.new_subclass_dyn_c(geo_layout_dict, scene, layout_name, col) -# Parse an aggregate group file or level data file for geo layouts def find_actor_models_binary( bin_file: BinaryIO, entry: int, @@ -2626,13 +2403,14 @@ def find_actor_models_binary( root_path: Path, col: bpy.types.Collection = None, ) -> GeoLayout: + """Parse geo_layout found at entry rom offset""" return GraphNodes.new_subclass_dyn_bin(bin_file, scene, entry, col) -# Find DL references given a level geo file and a path to a level folder def find_level_models_from_geo( geo_paths: list[Path], lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None ) -> Level: + """Parse geo_layout based on area ptr found within aggregate group_geo.c file or level geo.c""" props = scene.fast64.sm64.importer geo_layout_dict = construct_geo_layouts_from_file(geo_paths, root_path) for area_index, area in lvl.areas.items(): @@ -2649,6 +2427,7 @@ def find_level_models_from_geo( def find_level_models_binary(lvl: Level, scene: bpy.types.Scene, root_path: Path, col_name: str = None) -> Level: + """Parse geo_layout based on area ptr found within rom_file""" props = scene.fast64.sm64.importer for area_index, area in lvl.areas.items(): lvl.load_segment_E(area_index) @@ -2676,7 +2455,7 @@ def find_level_models_binary(lvl: Level, scene: bpy.types.Scene, root_path: Path return lvl -# import level graphics given geo.c file, and a level object +# F3d data functions def import_level_graphics( geo_paths: list[Path], lvl: Level, @@ -2686,6 +2465,7 @@ def import_level_graphics( cleanup: bool = False, col_name: str = None, ) -> Level: + """import level graphics given aggregate geo.c and leveldata.c files, and a level object""" if lvl.props.import_target == "C": lvl = find_level_models_from_geo(geo_paths, lvl, scene, root_path, col_name=col_name) models = construct_model_data_from_file(aggregates, scene, root_path) @@ -2707,68 +2487,247 @@ def import_level_graphics( return lvl -# get all the collision data from a certain path -def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types.Scene, root_path: Path) -> Level: - collision_files = get_all_aggregates(aggregate, (lambda path: "collision.inc.c" in path.name,), root_path) - col_data = dict() - for col_file in collision_files: - if not os.path.isfile(col_file): - continue - with open(col_file, "r", newline="") as col_file: - col_data.update( - get_data_types_from_file(col_file, {"Collision": ["(", ")"]}, macro_check=lvl.props.version) - ) - # search for the area terrain from available collision data - for area in lvl.areas.values(): - area.col_file = col_data.get(area.terrain, None) - if not area.col_file: - props = scene.fast64.sm64.importer - raise Exception( - f"Collision {area.terrain} not found in levels/{props.level_name}/{props.level_prefix}leveldata.c" - ) +def write_level_to_bpy(lvl: Level, scene: bpy.types.Scene, root_path: Path, f3d_dat: SM64_F3D, cleanup: bool = False): + """write the gfx for a level given the level data, parsed geolayout and gathered f3d data""" + for area_index, area in lvl.areas.items(): + write_geo_to_bpy(area.geo_data, scene, f3d_dat, root_path, dict(), cleanup=cleanup) return lvl -def write_level_collision_to_bpy( - lvl: Level, +def write_geo_to_bpy( + geo: GeoLayout, scene: bpy.types.Scene, - cleanup: bool, - col_name: str = None, - actor_models: dict[model_name, bpy.Types.Mesh] = None, + f3d_dat: SM64_F3D, + root_path: Path, + meshes: dict[str, bpy.Types.Mesh], + cleanup: bool = True, +) -> dict[str, bpy.Types.Mesh]: + """from a parsed geo layout, parse f3d data and create all the meshes""" + if geo.models: + # create a mesh for each one. + for model_data in geo.models: + name = f"{model_data.model_name} data" + layer = geo.parse_layer(model_data.layer) + if meshes and name in meshes.keys(): + mesh = meshes[name] + name = 0 + else: + mesh = bpy.data.meshes.new(name) + meshes[name] = mesh + [verts, tris] = f3d_dat.get_f3d_data_from_model(model_data.model_name, layer=layer) + # don't write empty models, delete empties with no children + # potential mat errors if used for DL setup but current importer should account for that using last_mat system + if tris: + mesh.from_pydata(verts, [], tris) + elif not geo.children: + bpy.data.objects.remove(model_data.object) + model_data.object = None + meshes.pop(name) + continue + + # swap out placeholder mesh data + model_data.object.data = mesh + + if name: + apply_mesh_data(f3d_dat, model_data.object, mesh, str(layer), root_path, cleanup) + if not geo.children: + return meshes + for g in geo.children: + meshes = write_geo_to_bpy(g, scene, f3d_dat, root_path, meshes, cleanup=cleanup) + return meshes + + +def write_armature_to_bpy( + geo_armature: GeoArmature, + scene: bpy.types.Scene, + f3d_dat: SM64_F3D, + root_path: Path, + parsed_model_data: dict[str, bpy.Types.Mesh], + cleanup: bool = True, ): - for area_index, area in lvl.areas.items(): - lvl.load_segment_E(area_index) - lvl.update_col_ptr(area_index) - if not col_name: - col = area.root.users_collection[0] - else: - col = create_collection(area.root.users_collection[0], col_name) - col_parser = Collision(area.col_file, scene.fast64.sm64.blender_to_sm64_scale) - if lvl.props.import_target == "C": - col_parser.parse_collision() - else: - try: - col_parser.parse_collision_binary(lvl.bin_file, area.terrain) - except Exception as exc: - if type(exc) is not ParseException: - raise exc - name = "SM64 {} Area {} Col".format(scene.fast64.sm64.importer.level_name, area_index) - obj = col_parser.write_collision(scene, name, area.root, col) - area.write_special_objects(col_parser.special_objects, col) + """from a parsed geo armature, recurse armature and then join meshes to armature roots""" + parsed_model_data = recurse_armature(geo_armature, scene, f3d_dat, root_path, parsed_model_data, cleanup=cleanup) + + def glob_models_in_arm(object_dict: dict, geo_armature: GeoArmature): + for model_data in geo_armature.models: + if not object_dict.get(model_data.armature_obj, None): + object_dict[model_data.armature_obj] = [model_data.object] + else: + object_dict[model_data.armature_obj].append(model_data.object) + if not geo_armature.children: + return object_dict + for arm in geo_armature.children: + object_dict = glob_models_in_arm(object_dict, arm) + return object_dict + + objects_by_armature = glob_models_in_arm(dict(), geo_armature) + + for armature_obj, objects in objects_by_armature.items(): + # I don't really know the specific override needed for this to work + if len(objects) > 1: + override = {**bpy.context.copy(), "selected_editable_objects": objects, "active_object": objects[0]} + with bpy.context.temp_override(**override): + bpy.ops.object.join() + + obj = objects[0] + obj.location += armature_obj.location + parentObject(armature_obj, obj, keep=1) + obj.ignore_collision = True + # armature deform + mod = obj.modifiers.new("deform", "ARMATURE") + mod.object = geo_armature.armature + return parsed_model_data + + +def recurse_armature( + geo_armature: GeoArmature, + scene: bpy.types.Scene, + f3d_dat: SM64_F3D, + root_path: Path, + parsed_model_data: dict[str, bpy.Types.Mesh], + cleanup: bool = True, +): + """from a parsed geo armature, parse f3d data and create meshes for armature""" + if geo_armature.models: + # create a mesh for each one + for model_data in geo_armature.models: + name = f"{model_data.model_name} data" + layer = geo_armature.parse_layer(model_data.layer) + if parsed_model_data and name in parsed_model_data.keys(): + mesh = parsed_model_data[name] + name = 0 + else: + mesh = bpy.data.meshes.new(name) + model_data.mesh = mesh + parsed_model_data[name] = mesh + [verts, tris] = f3d_dat.get_f3d_data_from_model(model_data.model_name, layer=layer) + mesh.from_pydata(verts, [], tris) + + obj = bpy.data.objects.new(f"{model_data.model_name} obj", mesh) + + obj.matrix_world = transform_matrix_to_bpy(model_data.transform) * ( + 1 / scene.fast64.sm64.blender_to_sm64_scale + ) + + model_data.object = obj + geo_armature.col.objects.link(obj) + # vertex groups are shared with shared mesh data + if model_data.vertex_group_name and name: + vertex_group = obj.vertex_groups.new(name=model_data.vertex_group_name) + vertex_group.add([vert.index for vert in obj.data.vertices], 1, "ADD") + if model_data.switch_index: + model_data.armature_obj = geo_armature.switch_armatures[model_data.switch_index] + else: + model_data.armature_obj = geo_armature.armature + + if name: + apply_mesh_data(f3d_dat, obj, mesh, str(layer), root_path, cleanup) + + if not geo_armature.children: + return parsed_model_data + for arm in geo_armature.children: + parsed_model_data = recurse_armature(arm, scene, f3d_dat, root_path, parsed_model_data, cleanup=cleanup) + return parsed_model_data + + +def apply_mesh_data( + f3d_dat: SM64_F3D, obj: bpy.types.Object, mesh: bpy.types.Mesh, layer: int, root_path: Path, cleanup: bool = False +): + """apply the f3d material data to newly created mesh, textures, f3d mat props, vertex colors and UVs""" + f3d_dat.apply_mesh_data(obj, mesh, layer, root_path, f3d_dat.props.force_new_tex) + if cleanup: + mesh = obj.data + # clean up after applying dat + mesh.validate() + mesh.update(calc_edges=True) # final operators to clean stuff up - if cleanup: - obj.data.validate() - obj.data.update(calc_edges=True) - # shade smooth - obj.select_set(True) - bpy.context.view_layer.objects.active = obj - bpy.ops.object.shade_smooth() - bpy.ops.object.mode_set(mode="EDIT") - bpy.ops.mesh.remove_doubles() - bpy.ops.object.mode_set(mode="OBJECT") - - -# import level collision given a level script + # shade smooth + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.shade_smooth() + bpy.ops.object.mode_set(mode="EDIT") + bpy.ops.mesh.remove_doubles() + bpy.ops.object.mode_set(mode="OBJECT") + + +def construct_model_data_from_file(aggregates: list[Path], scene: bpy.types.Scene, root_path: Path) -> SM64_F3D: + """Parse a list of aggregate group.c leveldata.c files for f3d data and organize into F3D class""" + model_files = [] + texture_files = [] + for dat_file in aggregates: + model_files += get_all_aggregates( + dat_file, + ( + lambda path: "model.inc.c" in path.name, + lambda path: path.match("*[0-9].inc.c"), # deal with 1.inc.c files etc. + lambda path: "painting.inc.c" in path.name, # add way to deal with 1.inc.c filees etc. + lambda path: "light.inc.c" in path.name, # only in vanilla decomp in LLL for some reason + ), + root_path, + ) + texture_files += get_all_aggregates( + dat_file, + ( + lambda path: "texture.inc.c" in path.name, + lambda path: "textureNew.inc.c" in path.name, + ), + root_path, + ) + # Get all modeldata in the level + sm64_f3d_data = SM64_F3D(scene) + for model_file in model_files: + model_file = open(model_file, "r", newline="") + construct_sm64_f3d_data_from_file(sm64_f3d_data, model_file) + # Update file to have texture.inc.c textures, deal with included textures in the model.inc.c files aswell + for texture_file in [*texture_files, *model_files]: + with open(texture_file, "r", newline="") as texture_file: + # For textures, try u8, and s16 aswell + sm64_f3d_data.Textures.update( + get_data_types_from_file( + texture_file, + { + "Texture": [None, None], + "u8": [None, None], + "s16": [None, None], + }, + macro_check=sm64_f3d_data.props.version, + ) + ) + return sm64_f3d_data + + +def construct_sm64_f3d_data_from_file(gfx: SM64_F3D, model_file: TextIO) -> SM64_F3D: + """Update F3D class with all the relevant data types cleaned up and organized into appropriate attributes""" + gfx_dat = get_data_types_from_file( + model_file, + { + "Vtx": ["{", "}"], + "Gfx": ["(", ")"], + "Light_t": [None, None], + "Ambient_t": [None, None], + "Lights": [None, None], + }, + macro_check=gfx.props.version, + collated=True, + ) + for key, value in gfx_dat.items(): + attr = getattr(gfx, key) + attr.update(value) + gfx.Textures.update( + get_data_types_from_file( + model_file, + { + "Texture": [None, None], + "u8": [None, None], + "s16": [None, None], + }, + macro_check=gfx.props.version, + ) + ) + return gfx + + +# Collision functions def import_level_collision( aggregate: Path, lvl: Level, @@ -2777,6 +2736,7 @@ def import_level_collision( cleanup: bool, col_name: str = None, ) -> Level: + """import level collision given a level script""" if lvl.props.import_target == "C": lvl = find_collision_data_from_path( aggregate, lvl, scene, root_path @@ -2786,6 +2746,127 @@ def import_level_collision( return lvl +def import_actor_collision( + aggregate: Path, + props: SM64_ImportProperties, + bin_file: BinaryIO, + scene: bpy.types.Scene, + col_ptr: Union[int, str], + root_path: Path, + cleanup: bool, + col: bpy.types.Collection, +) -> Level: + """import level collision given a level script""" + if props.import_target == "C": + collision_files = [] + for agg_path in aggregate: + collision_files += get_all_aggregates(agg_path, (lambda path: "collision.inc.c" in path.name,), root_path) + col_data = dict() + for col_file in collision_files: + if not os.path.isfile(col_file): + continue + with open(col_file, "r", newline="") as col_file: + col_data.update( + get_data_types_from_file(col_file, {"Collision": ["(", ")"]}, macro_check=props.version) + ) + # search for the area terrain from available collision data + col_file = col_data.get(col_ptr, None) + if not col_file: + raise Exception(f"Collision {col_ptr} not found") + else: + col_file = col_ptr + root_obj = bpy.data.objects.new(f"col obj {col_ptr}", None) + col.objects.link(root_obj) + # in binary, the collision is at the bin_file, area.terrain ptr + write_collision_to_bpy(props, bin_file, scene, col_file, root_obj, f"col obj {col_ptr}", cleanup, col) + + +def write_level_collision_to_bpy( + lvl: Level, + scene: bpy.types.Scene, + cleanup: bool, + col_name: str = None, + actor_models: dict[model_name, bpy.Types.Mesh] = None, +): + """Write level collision data to blender given parsed collision file""" + for area_index, area in lvl.areas.items(): + if lvl.props.import_target == "Binary": + lvl.load_segment_E(area_index) + lvl.update_col_ptr(area_index) + if not col_name: + col = area.root.users_collection[0] + else: + col = create_collection(area.root.users_collection[0], col_name) + col_parser = write_collision_to_bpy( + lvl.props, + lvl.bin_file, + scene, + area.col_file, + area.root, + "SM64 {} Area {} Col".format(lvl.props.level_name, area_index), + cleanup, + col, + ) + area.write_special_objects(col_parser.special_objects, col) + + +def write_collision_to_bpy( + props: SM64_ImportProperties, + bin_file: BinaryIO, + scene: bpy.types.Scene, + col_ptr: Union[int, CDataArray], + root_obj: bpy.types.Object, + name: str, + cleanup: bool, + col: bpy.types.Collection, +): + """Write level collision data to blender given parsed collision file""" + col_parser = Collision(col_ptr, scene.fast64.sm64.blender_to_sm64_scale) + if props.import_target == "C": + col_parser.parse_collision() + else: + try: + col_parser.parse_collision_binary(bin_file, col_ptr) + except Exception as exc: + if type(exc) is not ParseException: + raise exc + obj = col_parser.write_collision(scene, name, root_obj, col) + # final operators to clean stuff up + if cleanup: + obj.data.validate() + obj.data.update(calc_edges=True) + # shade smooth + obj.select_set(True) + bpy.context.view_layer.objects.active = obj + bpy.ops.object.shade_smooth() + bpy.ops.object.mode_set(mode="EDIT") + bpy.ops.mesh.remove_doubles() + bpy.ops.object.mode_set(mode="OBJECT") + return col_parser + + +def find_collision_data_from_path(aggregate: Path, lvl: Level, scene: bpy.types.Scene, root_path: Path) -> Level: + """Parse collision data given an aggregate leveldata.c or group.c file""" + collision_files = get_all_aggregates(aggregate, (lambda path: "collision.inc.c" in path.name,), root_path) + col_data = dict() + for col_file in collision_files: + if not os.path.isfile(col_file): + continue + with open(col_file, "r", newline="") as col_file: + col_data.update( + get_data_types_from_file(col_file, {"Collision": ["(", ")"]}, macro_check=lvl.props.version) + ) + # search for the area terrain from available collision data + for area in lvl.areas.values(): + area.col_file = col_data.get(area.terrain, None) + if not area.col_file: + props = scene.fast64.sm64.importer + raise Exception( + f"Collision {area.terrain} not found in levels/{props.level_name}/{props.level_prefix}leveldata.c" + ) + return lvl + + # ------------------------------------------------------------------------ # Operators # ------------------------------------------------------------------------ @@ -2827,7 +2908,11 @@ def execute(self, context): ) if props.import_target == "C": - print(props.geo_layout) + # check if actor has collision data + if props.col_data: + import_actor_collision( + model_data_paths, props, None, scene, props.col_data, decomp_path, self.cleanup, rt_col + ) geo_layout = find_actor_models_from_geo( geo_paths, props.geo_layout, scene, decomp_path, col=rt_col ) # return geo layout class and write the geo layout @@ -2835,6 +2920,18 @@ def execute(self, context): elif props.import_target == "Binary": # levels need to be parsed to get the rom bank loads, choose level object is used in lvl = parse_level_script(None, None, rom_path, scene, rt_col) + # check if actor has collision data + if props.col_data: + import_actor_collision( + model_data_paths, + props, + lvl.bin_file, + scene, + lvl.seg2phys(props.col_data), + decomp_path, + self.cleanup, + rt_col, + ) entry = lvl.seg2phys(props.geo_layout_binary) geo_layout = find_actor_models_binary( lvl.bin_file, entry, scene, decomp_path, col=rt_col @@ -3225,6 +3322,21 @@ def geo_layout_binary(self): model_info = preset_full.get_model_info(self.actor_preset) return model_info.geolayout + @property + def col_data(self): + if self.actor_preset == "Custom": + return None + # return self.custom_geo_layout_str + else: + preset_full = self.get_actor_preset() + col_info = preset_full.get_collision_info(self.actor_preset) + if not col_info: + return None + if self.import_target == "C": + return col_info.c_name + else: + return col_info.address + def draw_actor(self, layout: bpy.types.UILayout): box = layout.box() box.label(text="SM64 Actor Importer") diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index 35150dc89..7edf5d870 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -7,7 +7,6 @@ from dataclasses import dataclass, field, fields from pathlib import Path from typing import TextIO, Any, Union -from numbers import Number from collections.abc import Sequence from .utility import transform_mtx_blender_to_n64 @@ -18,7 +17,7 @@ # ------------------------------------------------------------------------ -def is_arr(val): +def is_arr(val: Any) -> bool: if type(val) == str: return False if hasattr(val, "__iter__"): @@ -26,8 +25,7 @@ def is_arr(val): return False -# eval line if not integer -def eval_or_int(val): +def eval_or_int(val: Union[str, int]) -> int: if type(val) is int: return val else: @@ -47,6 +45,12 @@ class BankLoads: def get_bank_loads(reset: bool = False) -> BankLoads: + """Retrieve global banks across multiple classes of a single import session. + + example use: + level.banks = get_bank_loads(reset=True) # first call while parsing bank BankLoads + DL.banks = get_bank_loads() or level.banks # for DL/geo parsing, use existing banks + """ global g_bank_loads if reset: g_bank_loads = BankLoads() @@ -58,35 +62,39 @@ def get_bank_loads(reset: bool = False) -> BankLoads: # ------------------------------------------------------------------------ -# used to unpack data via BinProcess methods @dataclass class PackedFormat: + """Formatter for unpacking ROM data to a specific struct + + format_str -- struct format str to unpack, see https://docs.python.org/3/library/struct.html#struct-format-strings + ptr_indices -- indices of the unpacked argument to convert to physical addresses from segmented. Called last, e.g. after bit_packing, reorder, and post_unpack + optional_arg_call -- function included in the class to be called after unpacking operations at the users convenience. Assumed to be called before running macro functions + make_str -- convert arguments (that aren't pointers) to strings, called after all unpacking is done (reorder, post_unpack) + reorder -- new order of arguments, supports repeats and ommissions, called after bit_unpacking, before post_unpack + bit_packing -- unpack struct as bitfields, requires that format_str is individual bytes, each tuple item is number of bits unpacked sequentially + post_unpack -- function called after unpacking and reordering to process args, generally for simple lambda funcs such as lambda x: [a*10 for a in x], + for more complicated processing, it's probably more convenient to change macro processing function to something unique from the C equivalent, e.g. _BIN + """ + format_str: str = "" ptr_indices: tuple = field(default_factory=tuple) - optional_arg_call: callable = None # callable used to edit format & ptrs, ran manually - make_str: bool = True # convert args to strings for blender prop compat - reorder: tuple = field( - default_factory=tuple - ) # reorders args after unpacking, called right after bit unpacking, before post_unpack - bit_packing: tuple = field( - default_factory=tuple - ) # use a packed bitfield to unpack, each item is num bits, unpacked sequentially, make format all bytes - post_unpack: callable = None # called after unpacking, used for doing math to args, useful for f3d - # it may instead be more convenient to just change the macro name to BIN for specific processing - # usually in the case where a binary cmd can be one of several equivalent C macros the pre processor simplifies + optional_arg_call: callable = None + make_str: bool = True + reorder: tuple = field(default_factory=tuple) + bit_packing: tuple = field(default_factory=tuple) + post_unpack: callable = None @property - def format_size(self): + def format_size(self) -> int: return struct.calcsize(self.format_str) - # add optional formatting def edit_format(self, *args): if not self.optional_arg_call: return self.format_str = self.optional_arg_call(self.format_str, *args) self.ptr_indices = self.optional_arg_call(self.ptr_indices, *args) - def unpack(self, bin_data: BinaryIO): + def unpack(self, bin_data: BinaryIO) -> list[int]: args = list(struct.unpack(self.format_str, bin_data)) if self.bit_packing: args = self.unpack_bits(args) @@ -95,8 +103,10 @@ def unpack(self, bin_data: BinaryIO): args = self.post_unpack(args) return args - # format_str must be list of unsigned bytes - def unpack_bits(self, args: list): + def unpack_bits(self, args: list) -> list[int]: + """unpack byte data into individual bits + format_str must be list of unsigned bytes + """ # combined bytes into one bit chunk of data dat = 0 for shift, byte in enumerate(reversed(args)): @@ -122,12 +132,8 @@ def make_args_str(self, args: list) -> list: class BinProcess: - """ - A base class that holds some binary processing functions - this class is focused on reading data - """ + """A base class that holds some binary processing functions focused on reading data""" - # a bit messy, default to str to match C except for ptrs which will always have math ops def unpack_type( self, bin_file: BinaryIO, @@ -135,7 +141,10 @@ def unpack_type( unpack_str: Union[PackedFormat, str], ret_iterable=False, make_str: bool = True, - ): + ) -> list[Union[int, str]]: + """unpacks data from ROM at offset with format unpack_str + a bit messy, default to str to match C except for ptrs which will always have math ops + """ if type(unpack_str) is str: unpack_str = PackedFormat(unpack_str, make_str=make_str) @@ -151,52 +160,19 @@ def unpack_type( else: return args - def seg2phys(self, ptr: int): + def seg2phys(self, ptr: int) -> int: + """Convert segmented address to physical address using dictionary of loaded banks""" if (seg_num := ptr >> 24) != 0: segment = self.banks.tlb[seg_num][0] return segment + (ptr & 0xFFFFFF) else: return ptr - # get list of pointers, stop at ARR_TERMINATOR - def get_referece_list(self, start, stop=0): - x = 0 - start = self.seg2phys(start) - ref = [] - r = self.unpack_type(start, ">L", 4) - while r != stop: - x += 4 - ref.append(r) - r = self.unpack_type(start + x, ">L", 4) - ref.append(r) - return ref - - # using a list of labels, find which symbol corresponds to pointer - def get_symbol_from_locations(self, symbol_dict, pointer, size=8): - # throw out non pointers - if pointer == 0: - return 0 - closest = None - chosen_str = None - for format_str, symbols in symbol_dict.items(): - for sym in symbols: - if not closest: - closest = sym if sym < pointer else None - chosen_str = format_str - continue - if sym > pointer: - continue - if (pointer - sym) < (pointer - closest): - closest = sym - chosen_str = format_str - if not closest: - closest = min([sym for sym in symbols for symbols in symbol_dict.values()]) - return chosen_str.format(f"{closest:X}", f"[{(pointer - closest) // size}]") - - # turn dict into an array. usually to be fed into a named tuple - # dict is: key - offset, value - func->type, name, func->len, arr = None - # returns: list[ints] - def extract_dict(self, start, type_dict): + def extract_dict(self, start: int, type_dict: dict) -> list[int]: + """turn dict into an array. usually to be fed into a named tuple + dict is: key - offset, value - func->type, name, arr = None + carry over from kirby importing, messy and not used in mario but will def be used later + """ output = [] for k, v in type_dict.items(): try: @@ -215,6 +191,8 @@ def extract_dict(self, start, type_dict): class BinWrite: + """Writes out data to C from binary imports. Useful for debugging and conversion""" + def type_declare(self, type_name: str, var_name: str): return f"static {type_name} {var_name}[{len(data_arr)}] = {{\n" @@ -255,8 +233,8 @@ def simple_write(self, data: Sequence, no_arr=False): @dataclass class CDataArray: - """ - Used as an iterable but also contains the name and var type if called upon + """Iterable for C data that also holds C type and C data name + Generally useful for types that have aliases but functionally act the same like Light1 vs Light_t """ @@ -281,6 +259,8 @@ def __setitem__(self, index, val): @dataclass class Macro: + """Decoded C Macro, contains macro name and arguments""" + cmd: str args: list[str, int] @@ -289,13 +269,15 @@ def __post_init__(self): self.args = [arg.strip() if type(arg) is str else arg for arg in self.args] self.cmd = self.cmd.strip() - # make new macro that is the indices chosen or supplied args def partial(self, *new_args: Any): + """make new macro that is the indices chosen or supplied args""" return Macro(self.cmd, (arg for arg in new_args)) @dataclass class Parser: + """Holds data parsing sequence (often CDataArray) and streams data while keeping track of location for jumps/branches""" + cur_stream: Sequence[Any] head: int = -1 @@ -304,16 +286,20 @@ def stream(self): self.head += 1 yield self.cur_stream[self.head] - def advance_head(self, adv): + def advance_head(self, adv: int): + """Advanced the head manually for binary parsing which has variable length data stream members""" self.head += adv class ParseException(Exception): + """Exception used to end parsing no matter the recursion depth""" + pass -# basic methods and utility to parse scripts or data streams of bytecode class DataParser(BinProcess): + """basic methods and utility to parse scripts or data streams of bytecode""" + # parsing flow status codes _continue_parse = 1 _break_parse = 2 @@ -333,6 +319,7 @@ def __init__(self, parent: DataParser = None, parse_target=None): self.parsed_streams = dict() def reset_parser(self, entry_id: Any): + """Resets parser so next entry always starts from entry/data start, as opposed to last left position""" self.parsed_streams[entry_id] = None def get_parser(self, entry_id: Any, relative_offset: int = 0) -> Parser: @@ -340,31 +327,38 @@ def get_parser(self, entry_id: Any, relative_offset: int = 0) -> Parser: parser.head += relative_offset return parser - # for if you're jumping, you start from the beginning, but if you're starting/stopping - # then you want to just pickup from the last spot def parse_stream_from_start(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): + """Start parsing stream from first member of data + If you're jumping to stream, you start from the beginning -> call this + but if you're starting/stopping then you want to just pickup from the last spot -> regular parse_stream + """ self.reset_parser(entry_id) self.parse_stream(dat_stream, entry_id, *args, **kwargs) def parse_stream(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): + """Stream data sequence to parsing func, which calls functions for each Macro encountered + + *args and **kwargs are passed to each individual macro function + """ if self.parsing_target == self._c_parsing: self.parse_stream_c(dat_stream, entry_id, *args, **kwargs) elif self.parsing_target == self._binary_parsing: - # assuming parsing of one single rom + # assuming parsing of one single rom per class self.parse_stream_binary(self.bin_file, entry_id, *args, **kwargs) else: raise Exception("Unhandled parsing type detected") def parse_stream_c(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwargs): - """ + """Parses C array data stream of Macros, calling specific function for each equivalent Macro encountered + C parsing works in the following order: * parse C files and collect data into dictionaries[var_name, CDataArray], set to class specific attrs * set class.parse_target to DataParser._c_parsing, this is the defualt * run parse_stream_from_start(script_stream, entry, *args) w/ script_stream = CDataArray, entry = var_name: str * c_macro_split(pre parsed line of C code) -> Macro, assumes MACRO(macro_args) format * Macro function is ran, e.g. EXECUTE or gsSPDisplayList - * jumps enter new recursion depth of parser, rom is supplied using attr self.bin_file - * repeat until _break_parse, use ParseException to fully exit recursion + * jumps enter new recursion depth of parser, new stream is entered -> parse_stream_from_start + * repeat until _break_parse, exit single recursion depth, use ParseException to fully exit recursion """ parser = self.parsed_streams.get(entry_id) if not parser: @@ -382,7 +376,7 @@ def parse_stream_c(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwar return # entry id in this instance is a pointer, converted to physical address, e.g. file offset - def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs): + def parse_stream_binary(self, bin_file: BinaryIO, entry_id: int, *args, **kwargs): """ Binary parsing works in the following order: * set class.parse_target to DataParser._binary_parsing, cls.banks to tlb mapping and class.bin_file to rom @@ -391,7 +385,7 @@ def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs * cmd specific func or binary_cmd_unpack unpacks cmd using stream and PackedFormat -> cmd_args * parser head is advanced the length of PackedFormat! Make sure all bytes are read, even padding * Macro function is ran as if were C, e.g. EXECUTE or gsSPDisplayList - * jumps enter new recursion depth of parser, rom is supplied using attr self.bin_file + * jumps enter new recursion depth of parser, new stream is entered -> parse_stream_from_start * repeat until _break_parse, use ParseException to fully exit recursion """ parser = self.parsed_streams.get(entry_id) @@ -421,11 +415,13 @@ def parse_stream_binary(self, bin_file: BinaryIO, entry_id: Any, *args, **kwargs raise ParseException(f"Parsing stopped") def get_cmd_name(cmd_type: int): + """gets Macro name from binary data, typically the MSB, not required to be used""" raise Exception("You must call this from subclass") def binary_cmd_unpack( self, parser: Parser, cmd_name: str, packed_fmt: PackedFormat ) -> tuple[cmd_args, cmd_len:int]: + """Unpacks binary data using data supplied by binary_cmd_get""" # no cmd data if not packed_fmt.format_str: cmd_args = [] @@ -434,9 +430,11 @@ def binary_cmd_unpack( return cmd_args, packed_fmt.format_size def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: + """Gets Macro name (get_cmd_name) and unpack format using data at parser head, typically MSB and class dictionary""" raise Exception("You must call this from a sublcass") def c_macro_split(self, macro: str) -> list[str]: + """Using preprocessed string containing single C macro, convert to Macro class""" args_start = macro.find("(") # have to deal with nested macros, such as with calc_dxt() in f3d # maybe there is a way to oneline with regex? @@ -468,6 +466,7 @@ def c_macro_split(self, macro: str) -> list[str]: def evaluate_macro(line: str, macro_check: str): + """Preprocessing for C macros, typically ifdef statements on versioning""" if macro_check in line: return False if macro_check in line: @@ -475,8 +474,8 @@ def evaluate_macro(line: str, macro_check: str): return True -# gets rid of comments, whitespace and macros in a file def pre_parse_file(file: TextIO, macro_check: str) -> list[str]: + """gets rid of comments, whitespace and macros in a file""" multi_line_comment_regx = "/\*[^*]*\*+(?:[^/*][^*]*\*+)*/" file = re.sub(multi_line_comment_regx, "", file.read()) skip_macro = 0 # bool to skip during macros @@ -502,10 +501,17 @@ def pre_parse_file(file: TextIO, macro_check: str) -> list[str]: return output_lines -# given an aggregate file that imports many files, find files with the name of type def parse_aggregate_file( agg_file: TextIO, file_catches: tuple[callable], root_path: Path, aggregate_path: Path, macro_check: str ) -> list[Path]: + """given an aggregate file that imports many files, find files with the name of type + + agg_file -- aggregate file containing many file #include + file_catches -- lambda functions supplied argment of #include line, ret True to add path to caught files + root_path -- decomp or other path to base prepend to file inclusion + aggregate_path -- path of aggregate file for prepending to file inclusion + macro_check -- macro to preparse file against + """ agg_file.seek(0) # so it may be read multiple times file_lines = pre_parse_file(agg_file, macro_check) @@ -518,12 +524,12 @@ def parse_aggregate_file( for r in remove: line = line.replace(r, "") line = Path(line.strip()) - for callable in file_catches: - if callable(line): + for func in file_catches: + if func(line): caught_files.append(line) break - # include is relative cur aggregate file or root + # include is relative to current aggregate file or root path def get_file_path(root_path: Path, include: str): if (include_file := root_path / include).exists(): return include_file @@ -537,61 +543,15 @@ def get_file_path(root_path: Path, include: str): return [] -# Search through a C file to find data of typeName[] and split it into a list -# of data types with all comments removed -def get_data_types_from_file(file: TextIO, type_dict, macro_check: str, collated=False): - # from a raw file, create a dict of types. Types should all be arrays - file_lines = pre_parse_file(file, macro_check) - array_bounds_regx = "\[[0-9a-fx]*\]" # basically [] with any valid number in it - equality_regx = "\s*=" # finds the first char before the equals sign - output_variables = {type_name: dict() for type_name in type_dict.keys()} - type_found = None - var_dat_buffer = [] - for line in file_lines: - if type_found is not None: - # Check for end of array - if ";" in line: - output_variables[type_found.var_type][type_found.var_name] = CDataArray( - type_found.var_type, type_found.var_name, "".join(var_dat_buffer) - ) - type_found = None - var_dat_buffer = [] - else: - var_dat_buffer.append(line) - continue - # name ends at the array bounds, or the equals sign - match = re.search(array_bounds_regx, line, flags=re.IGNORECASE) - if not match: - match = re.search(equality_regx, line, flags=re.IGNORECASE) - type_collisions = [type_name for type_name in type_dict.keys() if type_name in line] - if match and type_collisions: - # there should ideally only be one collision - type_name = type_collisions[0] - # type_name plus any extra chars(non greedy) until a space - name_start = re.search(f"{type_name}.*?\s", line, flags=re.IGNORECASE).span()[1] - variable_name = line[name_start : match.span()[0]].strip() - type_found = CDataArray(type_name, variable_name) - # Now remove newlines from each line, and then split macro ends - # This makes each member of the array a single macro or array - for data_type, delimiters in type_dict.items(): - for variable_name, data_array in output_variables[data_type].items(): - data_array.var_data = format_data_arr(data_array.var_data, delimiters) - output_variables[data_type][variable_name] = data_array +def get_data_types_from_file( + file: TextIO, type_dict: dict[str, delimiters : tuple[str]], macro_check: str, collated=False +) -> dict[str, CDataArray]: + """Search through a C file to find data of (typeName name[]) and split it into a dict of typeName:CDataArray with all comments removed - # if collated, organize by data type, otherwise just take the various dicts raw - return ( - output_variables - if collated - else {vd_key: vd_value for var_dict in output_variables.values() for vd_key, vd_value in var_dict.items()} - ) - - -# Search through a C file to find data of struct/enum typeName{ }; -# merge this with the above function at some point -def get_enum_struct_data_from_file(file: TextIO, type_dict, macro_check: str, collated=False): - # from a raw file, create a dict of types. Types should all be arrays + Collated organizes by data type, otherwise just take the various dicts raw + """ file_lines = pre_parse_file(file, macro_check) - array_bounds_regx = "\[[0-9a-fx]*\]" # basically [] with any valid number in it + array_bounds_regx = "\\[[0-9a-fx]*\\]" # basically [] with any valid number in it equality_regx = "\\s*=" # finds the first char before the equals sign output_variables = {type_name: dict() for type_name in type_dict.keys()} type_found = None @@ -646,7 +606,6 @@ def get_enum_struct_data_from_file(file: TextIO, type_dict, macro_check: str, co data_array.var_data = format_data_arr(data_array.var_data, delimiters) output_variables[data_type][variable_name] = data_array - # if collated, organize by data type, otherwise just take the various dicts raw return ( output_variables if collated @@ -654,8 +613,8 @@ def get_enum_struct_data_from_file(file: TextIO, type_dict, macro_check: str, co ) -# takes a raw string representing data and then formats it into an array def format_data_arr(raw_data: str, delimiters: tuple[str]) -> list[str]: + """takes a raw string representing data and then formats it into an array""" raw_data = raw_data.replace("\n", "") arr = [] # arr of data in format buf = "" # buf to put currently processed data in From b7d15a4a625e2c75d8a38a667c224ee7eda80427 Mon Sep 17 00:00:00 2001 From: scut Date: Mon, 23 Feb 2026 17:13:16 -0500 Subject: [PATCH 28/30] removed test file --- fast64_internal/tmp_tex_examples.c | 1200 ---------------------------- 1 file changed, 1200 deletions(-) delete mode 100644 fast64_internal/tmp_tex_examples.c diff --git a/fast64_internal/tmp_tex_examples.c b/fast64_internal/tmp_tex_examples.c deleted file mode 100644 index a0cccddc6..000000000 --- a/fast64_internal/tmp_tex_examples.c +++ /dev/null @@ -1,1200 +0,0 @@ - -Gfx jrb_dl_tempImgEd002C_ci8_aligner[] = {gsSPEndDisplayList()}; -u8 jrb_dl_tempImgEd002C_ci8[] = { - 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x05, 0x06, - 0x07, 0x08, 0x09, 0x0a, 0x08, 0x01, 0x05, 0x0b, - 0x0b, 0x05, 0x05, 0x00, 0x0c, 0x09, 0x09, 0x05, - 0x0b, 0x07, 0x0d, 0x0a, 0x0a, 0x0e, 0x0f, 0x00, - 0x09, 0x06, 0x06, 0x06, 0x01, 0x05, 0x05, 0x0c, - 0x08, 0x08, 0x08, 0x10, 0x10, 0x0d, 0x05, 0x07, - 0x07, 0x11, 0x00, 0x07, 0x07, 0x07, 0x05, 0x0d, - 0x0c, 0x00, 0x09, 0x08, 0x00, 0x01, 0x01, 0x09, - 0x05, 0x01, 0x06, 0x05, 0x05, 0x05, 0x05, 0x07, - 0x08, 0x00, 0x05, 0x08, 0x08, 0x00, 0x09, 0x00, - 0x00, 0x05, 0x09, 0x07, 0x0c, 0x05, 0x00, 0x09, - 0x00, 0x09, 0x0c, 0x08, 0x07, 0x01, 0x06, 0x05, - 0x00, 0x05, 0x0d, 0x05, 0x05, 0x09, 0x09, 0x07, - 0x0c, 0x01, 0x01, 0x0c, 0x00, 0x09, 0x05, 0x0b, - 0x0b, 0x07, 0x07, 0x00, 0x05, 0x0d, 0x0d, 0x09, - 0x09, 0x01, 0x12, 0x05, 0x07, 0x07, 0x09, 0x00, - 0x07, 0x05, 0x01, 0x02, 0x0d, 0x01, 0x0c, 0x0b, - 0x01, 0x05, 0x05, 0x13, 0x07, 0x08, 0x05, 0x05, - 0x00, 0x07, 0x0d, 0x01, 0x01, 0x01, 0x0d, 0x00, - 0x01, 0x13, 0x01, 0x01, 0x0c, 0x0b, 0x07, 0x08, - 0x07, 0x09, 0x01, 0x01, 0x01, 0x0f, 0x0c, 0x0c, - 0x14, 0x13, 0x02, 0x05, 0x00, 0x07, 0x08, 0x08, - 0x07, 0x0b, 0x0c, 0x01, 0x13, 0x13, 0x01, 0x05, - 0x01, 0x13, 0x13, 0x01, 0x00, 0x07, 0x07, 0x08, - 0x07, 0x00, 0x09, 0x13, 0x13, 0x0c, 0x0c, 0x01, - 0x13, 0x14, 0x14, 0x0d, 0x09, 0x0c, 0x0c, 0x0a, - 0x08, 0x07, 0x0c, 0x12, 0x12, 0x14, 0x0c, 0x0f, - 0x13, 0x12, 0x13, 0x0c, 0x07, 0x12, 0x05, 0x0b, - 0x0f, 0x0d, 0x00, 0x0c, 0x0c, 0x00, 0x0c, 0x13, - 0x01, 0x0f, 0x01, 0x05, 0x0c, 0x01, 0x01, 0x02, - 0x0f, 0x05, 0x07, 0x0c, 0x0c, 0x05, 0x05, 0x13, - 0x13, 0x13, 0x09, 0x07, 0x01, 0x0f, 0x0c, 0x01, - 0x05, 0x12, 0x01, 0x0c, 0x0c, 0x07, 0x07, 0x05, - 0x12, 0x01, 0x05, 0x0d, 0x01, 0x0f, 0x01, 0x12, - 0x01, 0x0f, 0x0d, 0x09, 0x0c, 0x05, 0x05, 0x0c, - 0x00, 0x00, 0x07, 0x07, 0x00, 0x05, 0x0c, 0x05, - 0x0d, 0x01, 0x0f, 0x0c, 0x0c, 0x0c, 0x07, 0x0c, - 0x05, 0x0d, 0x12, 0x12, 0x0d, 0x14, 0x13, 0x01, - 0x01, 0x02, 0x13, 0x00, 0x00, 0x05, 0x07, 0x00, - 0x09, 0x0c, 0x0f, 0x01, 0x00, 0x0c, 0x0c, 0x05, - 0x05, 0x01, 0x12, 0x05, 0x12, 0x05, 0x0c, 0x00, - 0x07, 0x09, 0x13, 0x14, 0x12, 0x13, 0x0f, 0x13, - 0x00, 0x00, 0x0c, 0x12, 0x0c, 0x0c, 0x0c, 0x05, - 0x12, 0x05, 0x0f, 0x13, 0x12, 0x0d, 0x01, 0x12, - 0x0d, 0x06, 0x0d, 0x01, 0x13, 0x15, 0x13, 0x0d, - 0x12, 0x12, 0x05, 0x01, 0x14, 0x12, 0x0e, 0x0f, - 0x01, 0x0c, 0x0d, 0x14, 0x0f, 0x0f, 0x0c, 0x09, - 0x12, 0x12, 0x14, 0x0f, 0x14, 0x0d, 0x01, 0x02, - 0x05, 0x0d, 0x13, 0x13, 0x0f, 0x15, 0x15, 0x12, - 0x13, 0x01, 0x0e, 0x05, 0x01, 0x13, 0x0c, 0x00, - 0x00, 0x12, 0x13, 0x0f, 0x0f, 0x0e, 0x0f, 0x0c, - 0x05, 0x12, 0x16, 0x01, 0x13, 0x13, 0x05, 0x05, - 0x0d, 0x01, 0x02, 0x0f, 0x0e, 0x0e, 0x13, 0x0d, - 0x0f, 0x13, 0x0f, 0x0e, 0x01, 0x0c, 0x0c, 0x00, - 0x0c, 0x0f, 0x0f, 0x0f, 0x0e, 0x0e, 0x14, 0x0c, - 0x01, 0x0d, 0x0f, 0x17, 0x01, 0x12, 0x0d, 0x05, - 0x0f, 0x0f, 0x0f, 0x0e, 0x17, 0x0e, 0x01, 0x01, - 0x14, 0x13, 0x0f, 0x18, 0x0c, 0x0c, 0x14, 0x0f, - 0x0f, 0x0f, 0x0e, 0x0f, 0x0e, 0x0e, 0x01, 0x05, - 0x13, 0x13, 0x0f, 0x18, 0x01, 0x12, 0x0f, 0x01, - 0x0c, 0x13, 0x0f, 0x01, 0x17, 0x01, 0x01, 0x17, - 0x13, 0x13, 0x12, 0x0c, 0x0c, 0x01, 0x0e, 0x0e, - 0x0e, 0x0e, 0x0e, 0x14, 0x0f, 0x0f, 0x01, 0x0f, - 0x0c, 0x0c, 0x01, 0x01, 0x01, 0x02, 0x02, 0x05, - 0x0c, 0x01, 0x0e, 0x05, 0x0f, 0x12, 0x01, 0x0e, - 0x13, 0x0f, 0x13, 0x0c, 0x0c, 0x14, 0x18, 0x0f, - 0x0e, 0x0f, 0x17, 0x12, 0x0e, 0x01, 0x13, 0x0e, - 0x12, 0x0c, 0x0c, 0x0d, 0x01, 0x0f, 0x01, 0x05, - 0x05, 0x14, 0x01, 0x05, 0x01, 0x01, 0x14, 0x14, - 0x01, 0x0f, 0x13, 0x0c, 0x12, 0x0f, 0x0f, 0x0f, - 0x0f, 0x0e, 0x0e, 0x01, 0x0f, 0x01, 0x0f, 0x01, - 0x0c, 0x0c, 0x09, 0x09, 0x05, 0x01, 0x15, 0x0d, - 0x02, 0x0f, 0x05, 0x0d, 0x01, 0x0f, 0x01, 0x0d, - 0x01, 0x0f, 0x01, 0x0c, 0x09, 0x01, 0x0f, 0x17, - 0x0f, 0x0e, 0x01, 0x13, 0x01, 0x02, 0x13, 0x09, - 0x0c, 0x12, 0x01, 0x12, 0x05, 0x0c, 0x0c, 0x02, - 0x05, 0x01, 0x0d, 0x12, 0x14, 0x0f, 0x12, 0x12, - 0x17, 0x0f, 0x17, 0x0f, 0x0c, 0x00, 0x13, 0x0f, - 0x0f, 0x0e, 0x01, 0x01, 0x0f, 0x13, 0x12, 0x0c, - 0x01, 0x01, 0x0f, 0x15, 0x0d, 0x05, 0x06, 0x09, - 0x01, 0x07, 0x0d, 0x14, 0x14, 0x0e, 0x01, 0x12, - 0x0f, 0x0e, 0x0f, 0x15, 0x13, 0x0c, 0x07, 0x07, - 0x01, 0x12, 0x01, 0x14, 0x14, 0x0f, 0x0d, 0x0d, - 0x12, 0x01, 0x14, 0x0f, 0x05, 0x0c, 0x05, 0x05, - 0x09, 0x07, 0x05, 0x0f, 0x13, 0x0f, 0x01, 0x14, - 0x0f, 0x13, 0x18, 0x14, 0x0c, 0x0c, 0x0c, 0x07, - 0x07, 0x0c, 0x0f, 0x0f, 0x14, 0x18, 0x0c, 0x01, - 0x0f, 0x01, 0x13, 0x12, 0x05, 0x0c, 0x0c, 0x05, - 0x07, 0x00, 0x12, 0x12, 0x05, 0x01, 0x0f, 0x0f, - 0x0e, 0x01, 0x0f, 0x0c, 0x0c, 0x0d, 0x05, 0x05, - 0x00, 0x07, 0x0c, 0x12, 0x13, 0x0c, 0x0d, 0x0f, - 0x14, 0x13, 0x13, 0x05, 0x12, 0x12, 0x00, 0x00, - 0x01, 0x01, 0x0c, 0x0c, 0x05, 0x0c, 0x0c, 0x14, - 0x0f, 0x14, 0x0c, 0x0c, 0x01, 0x0f, 0x12, 0x12, - 0x05, 0x12, 0x09, 0x07, 0x09, 0x07, 0x0c, 0x0f, - 0x13, 0x12, 0x0d, 0x12, 0x13, 0x13, 0x05, 0x0d, - 0x05, 0x13, 0x01, 0x09, 0x13, 0x05, 0x0c, 0x00, - 0x00, 0x00, 0x07, 0x07, 0x07, 0x0d, 0x12, 0x12, - 0x12, 0x13, 0x0d, 0x07, 0x07, 0x07, 0x07, 0x0c, - 0x0c, 0x0c, 0x05, 0x01, 0x01, 0x01, 0x0d, 0x05, - 0x05, 0x01, 0x02, 0x00, 0x05, 0x0d, 0x0c, 0x0c, - 0x0c, 0x0c, 0x13, 0x01, 0x07, 0x0c, 0x05, 0x01, - 0x01, 0x01, 0x0f, 0x00, 0x05, 0x05, 0x0c, 0x09, - 0x0c, 0x0d, 0x05, 0x01, 0x05, 0x0d, 0x05, 0x05, - 0x00, 0x09, 0x0c, 0x0c, 0x00, 0x0c, 0x07, 0x05, - 0x12, 0x0c, 0x02, 0x0e, 0x01, 0x05, 0x0d, 0x13, - 0x05, 0x05, 0x0d, 0x07, 0x00, 0x0c, 0x07, 0x07, - 0x07, 0x0c, 0x12, 0x13, 0x13, 0x06, 0x13, 0x02, - 0x09, 0x07, 0x01, 0x02, 0x01, 0x0d, 0x07, 0x00, - 0x0c, 0x00, 0x05, 0x0f, 0x01, 0x01, 0x01, 0x01, - 0x0b, 0x00, 0x0c, 0x0d, 0x05, 0x0c, 0x00, 0x00, - 0x00, 0x0c, 0x09, 0x12, 0x01, 0x01, 0x0f, 0x19, - 0x07, 0x09, 0x01, 0x0f, 0x02, 0x0e, 0x01, 0x00, - 0x14, 0x05, 0x05, 0x05, 0x12, 0x02, 0x0c, 0x00, - 0x0b, 0x08, 0x0d, 0x02, 0x0f, 0x02, 0x05, 0x07, - 0x01, 0x0d, 0x0d, 0x00, 0x01, 0x01, 0x00, 0x07, - 0x05, 0x02, 0x02, 0x02, 0x0f, 0x0f, 0x01, 0x07, - 0x01, 0x05, 0x06, 0x05, 0x0c, 0x09, 0x0a, 0x0a, - 0x05, 0x03, 0x05, 0x13, 0x13, 0x02, 0x09, 0x07, - 0x12, 0x0d, 0x06, 0x09, 0x0d, 0x00, 0x0a, 0x08, - 0x13, 0x02, 0x0f, 0x0f, 0x02, 0x02, 0x01, 0x00, - 0x01, 0x0f, 0x11, 0x02, 0x00, 0x08, 0x11, 0x07, - 0x0f, 0x06, 0x11, 0x02, 0x01, 0x04, 0x09, 0x0b, - 0x05, 0x01, 0x05, 0x0d, 0x07, 0x08, 0x05, 0x05, - 0x00, 0x01, 0x02, 0x06, 0x02, 0x05, 0x05, 0x09, - 0x08, 0x00, 0x06, 0x00, 0x0a, 0x00, 0x05, 0x0b, - 0x00, 0x05, 0x0d, 0x09, 0x05, 0x0c, 0x0c, 0x00, - 0x09, 0x09, 0x06, 0x0b, 0x0a, 0x01, 0x0f, 0x00, - -}; - -Gfx jrb_dl_tempImgEd002C_ci8_pal_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 jrb_dl_tempImgEd002C_ci8_pal_rgba16[] = { - 0xb5, 0xed, 0xc6, 0x71, 0xc6, 0xb3, 0xbe, 0x6f, - 0xc6, 0xb1, 0xbe, 0x2f, 0xbe, 0x71, 0xb5, 0xad, - 0xad, 0xab, 0xb5, 0xef, 0xad, 0x6b, 0xad, 0xad, - 0xbd, 0xef, 0xbe, 0x31, 0xce, 0xb5, 0xce, 0xb3, - 0xa5, 0x69, 0xb6, 0x2f, 0xc6, 0x31, 0xc6, 0x73, - 0xce, 0x73, 0xce, 0xf5, 0xdf, 0x37, 0xd6, 0xf5, - 0xd6, 0xb5, 0xce, 0xf3, -}; - -Gfx jrb_dl_wild_wave01_ia8_aligner[] = {gsSPEndDisplayList()}; -u8 jrb_dl_wild_wave01_ia8[] = { - 0x96, 0xa8, 0x97, 0x97, 0x65, 0xca, 0x98, 0xb8, - 0x75, 0xdc, 0xec, 0xb9, 0xca, 0xba, 0xca, 0xdb, - 0xba, 0xdc, 0x98, 0x77, 0xba, 0xa9, 0xa8, 0xa9, - 0xcb, 0xa8, 0x98, 0xa9, 0xa9, 0xa9, 0xdc, 0xc9, - 0x87, 0x97, 0x76, 0xa9, 0xdb, 0xca, 0xda, 0xa8, - 0x98, 0xdc, 0xec, 0xec, 0xda, 0xca, 0xec, 0xdc, - 0xdc, 0xa9, 0xdb, 0xba, 0xec, 0xca, 0xcb, 0xba, - 0xdc, 0x75, 0xc9, 0xc9, 0x84, 0x75, 0x98, 0x98, - 0x76, 0xdc, 0xca, 0xa7, 0xb9, 0xb9, 0xd9, 0xa7, - 0xc9, 0xa8, 0xc8, 0xb8, 0x95, 0x86, 0xdb, 0xc9, - 0xca, 0xea, 0xd9, 0xa8, 0xcc, 0xa9, 0xba, 0x98, - 0xa9, 0x98, 0xa9, 0xba, 0x98, 0x87, 0xa9, 0xa8, - 0xb8, 0xb9, 0x87, 0xa8, 0xa9, 0xca, 0xfd, 0xec, - 0xdb, 0x97, 0xb8, 0xa5, 0xa6, 0xc9, 0xec, 0xdb, - 0xba, 0xca, 0xb9, 0xca, 0x76, 0xcb, 0x96, 0xda, - 0xcb, 0xeb, 0xb9, 0xa9, 0xa9, 0x87, 0xa8, 0x97, - 0xc8, 0xca, 0xca, 0xdb, 0xb8, 0xda, 0xa6, 0x64, - 0xa8, 0xdb, 0xda, 0xdb, 0xdb, 0xb9, 0xc9, 0xda, - 0xdd, 0xee, 0xb9, 0xcb, 0xba, 0x97, 0xcb, 0xaa, - 0xb9, 0xb9, 0x98, 0xdc, 0xcb, 0x98, 0x86, 0x98, - 0x87, 0x87, 0xa9, 0xba, 0xc9, 0x23, 0x86, 0xca, - 0x85, 0xc9, 0xc7, 0xc9, 0xed, 0xec, 0xea, 0xec, - 0xed, 0xdc, 0xec, 0x65, 0xb8, 0xda, 0xa9, 0x65, - 0x86, 0x76, 0xca, 0xda, 0xd9, 0xda, 0xc8, 0xa8, - 0xb8, 0xeb, 0xb9, 0x98, 0xc8, 0xdb, 0xda, 0xda, - 0xb7, 0xa7, 0xb9, 0xb8, 0xb9, 0xa8, 0xa6, 0x97, - 0xec, 0xb8, 0xba, 0x75, 0xb9, 0xb9, 0xb9, 0xca, - 0xa9, 0xa8, 0xa8, 0xa8, 0xda, 0xec, 0xc9, 0x76, - 0x87, 0x76, 0x76, 0x87, 0xa5, 0xa6, 0x97, 0x98, - 0x86, 0xda, 0xeb, 0x76, 0xc6, 0xb7, 0xeb, 0x97, - 0x97, 0xfd, 0xea, 0xdb, 0xdc, 0xdc, 0xda, 0xca, - 0xec, 0xeb, 0x97, 0xd9, 0xc9, 0xcb, 0xfe, 0xc9, - 0xb7, 0xdc, 0xec, 0xc8, 0x54, 0xb9, 0xdd, 0x76, - 0x86, 0xca, 0xa7, 0xa7, 0x86, 0x43, 0xdb, 0x87, - 0xb8, 0xed, 0xdb, 0xda, 0xa9, 0xca, 0xba, 0xdc, - 0xdb, 0xdb, 0x98, 0xb9, 0xc9, 0x76, 0x86, 0xdc, - 0xdc, 0x97, 0x87, 0x55, 0x97, 0x76, 0x54, 0x76, - 0x74, 0x76, 0xa6, 0x64, 0x86, 0xa7, 0x98, 0xa8, - 0xa8, 0xca, 0xda, 0xb7, 0xda, 0xfd, 0xca, 0xed, - 0xa9, 0xca, 0xee, 0xed, 0xda, 0xec, 0x75, 0xa7, - 0xb7, 0xda, 0xda, 0x85, 0xa8, 0x87, 0x55, 0xa8, - 0x97, 0x98, 0x65, 0x44, 0xc9, 0x86, 0x64, 0x75, - 0xca, 0xb8, 0xc8, 0xa4, 0xb9, 0xdc, 0xcb, 0xa8, - 0xb9, 0xba, 0x98, 0xb9, 0xb9, 0xa9, 0xca, 0xb9, - 0xa8, 0x88, 0xa9, 0x98, 0x85, 0x98, 0x98, 0x66, - 0xa5, 0x64, 0x53, 0x74, 0x76, 0x65, 0x76, 0x76, - 0x98, 0xc9, 0xc9, 0xb8, 0xec, 0xfe, 0xdb, 0xc8, - 0xea, 0xed, 0xc9, 0xec, 0xff, 0xdb, 0xb8, 0x98, - 0xb9, 0x96, 0xec, 0xc9, 0xb9, 0x65, 0xb9, 0xb9, - 0x54, 0xb7, 0x97, 0x98, 0x76, 0xba, 0xb7, 0x65, - 0xed, 0xc9, 0xa9, 0xbb, 0x87, 0xdc, 0xdc, 0xdc, - 0xed, 0xdc, 0xec, 0xfe, 0xa9, 0xdc, 0xdb, 0xb9, - 0x97, 0x76, 0xa9, 0x86, 0x76, 0x65, 0x98, 0x66, - 0x64, 0x65, 0x33, 0x76, 0x54, 0x54, 0x54, 0x87, - 0x54, 0xc8, 0xc9, 0xb7, 0xed, 0xdc, 0xca, 0x94, - 0xec, 0xec, 0xed, 0xdc, 0xed, 0xca, 0xec, 0xdb, - 0xfd, 0xec, 0x43, 0x65, 0xdb, 0xca, 0x76, 0x87, - 0xb8, 0x65, 0xb7, 0xa6, 0xa5, 0x74, 0x96, 0xed, - 0xcb, 0xa7, 0x95, 0xb9, 0xa7, 0xec, 0xca, 0xdc, - 0xdc, 0xdc, 0xdb, 0xed, 0x98, 0xa9, 0x97, 0xa8, - 0xca, 0x97, 0x87, 0x87, 0x64, 0x86, 0x97, 0x76, - 0x65, 0x44, 0x87, 0x44, 0x53, 0x44, 0x33, 0x44, - 0x43, 0x75, 0xc9, 0x65, 0xdc, 0xa5, 0xc7, 0xfe, - 0xfd, 0xca, 0xdb, 0xda, 0xc9, 0xb9, 0xcb, 0xb9, - 0xcb, 0x65, 0x76, 0xc7, 0x85, 0x86, 0x98, 0x96, - 0xcb, 0xb9, 0x86, 0x87, 0xb9, 0x87, 0xb8, 0x97, - 0xdc, 0xb8, 0xc8, 0xa7, 0xdb, 0xdb, 0xcb, 0xba, - 0xcb, 0xcb, 0xee, 0xeb, 0x87, 0xa9, 0xca, 0xb9, - 0xdc, 0x97, 0xa8, 0x98, 0x64, 0x65, 0x75, 0x65, - 0x54, 0x77, 0x33, 0x43, 0x55, 0x33, 0x44, 0x54, - 0x44, 0x76, 0x87, 0x54, 0xb8, 0xd8, 0xeb, 0xdc, - 0xc9, 0xed, 0xfe, 0xfe, 0xfe, 0xed, 0xdb, 0xdb, - 0x76, 0xca, 0xa8, 0x86, 0x76, 0x85, 0x65, 0xa8, - 0xb8, 0xa7, 0x96, 0x98, 0x86, 0xa8, 0x98, 0xa9, - 0xb8, 0x86, 0x95, 0x97, 0xdb, 0xdb, 0xdb, 0xcb, - 0xed, 0xba, 0xb9, 0xa8, 0xca, 0x88, 0x87, 0xb9, - 0x96, 0xa8, 0xba, 0xca, 0x64, 0x33, 0x65, 0x86, - 0x54, 0x44, 0x54, 0x43, 0x12, 0x44, 0x33, 0x44, - 0x65, 0x64, 0x75, 0x43, 0x65, 0x65, 0xc9, 0xa8, - 0xd6, 0xa8, 0x96, 0xec, 0xba, 0xca, 0xda, 0xdb, - 0x54, 0x76, 0x86, 0x76, 0x97, 0x65, 0x76, 0x96, - 0x43, 0x54, 0x75, 0x86, 0x87, 0x87, 0x86, 0xb7, - 0xb7, 0x86, 0xb9, 0xb9, 0xcb, 0x98, 0xba, 0xa9, - 0xcb, 0xdb, 0xba, 0x99, 0x98, 0xa8, 0x76, 0x98, - 0x65, 0x97, 0xba, 0x97, 0x43, 0xa8, 0x33, 0x76, - 0x33, 0x64, 0x65, 0x33, 0x64, 0x44, 0x54, 0x44, - 0x75, 0x54, 0x65, 0x85, 0x54, 0x33, 0xd9, 0xb9, - 0xa7, 0xa6, 0xfc, 0x96, 0x75, 0x86, 0xc9, 0xb8, - 0x96, 0x97, 0x65, 0x65, 0x98, 0x75, 0x75, 0x86, - 0x87, 0x76, 0x76, 0x86, 0x43, 0xb9, 0xb9, 0xa9, - 0x86, 0x85, 0xb9, 0x87, 0xa7, 0xda, 0xdb, 0xca, - 0xba, 0x98, 0x99, 0x98, 0xba, 0xcb, 0x98, 0xca, - 0x98, 0x85, 0x98, 0x85, 0x64, 0x85, 0x75, 0x54, - 0x54, 0x55, 0x76, 0x44, 0x44, 0x55, 0x45, 0x55, - 0x33, 0x65, 0x55, 0x87, 0x85, 0x65, 0x53, 0xb8, - 0xb8, 0xd9, 0x96, 0x65, 0xec, 0xb9, 0xd7, 0x55, - 0x76, 0x76, 0x76, 0x96, 0x65, 0x55, 0x64, 0x97, - 0x86, 0x55, 0x86, 0x97, 0x66, 0x86, 0x76, 0x76, - 0x65, 0x97, 0xb8, 0xa8, 0xa8, 0x97, 0xdc, 0xca, - 0xba, 0xba, 0xa9, 0x98, 0xba, 0xa8, 0x86, 0x98, - 0x53, 0xa9, 0x87, 0x74, 0x65, 0x65, 0x97, 0x76, - 0x75, 0x86, 0x54, 0x54, 0x33, 0x34, 0x33, 0x54, - 0x44, 0x44, 0xa8, 0xca, 0x65, 0x43, 0x55, 0x86, - 0x86, 0x64, 0x96, 0x76, 0x55, 0x76, 0x97, 0x96, - 0x96, 0x76, 0x87, 0x76, 0x66, 0x75, 0x65, 0x85, - 0x54, 0x98, 0xc9, 0x97, 0x97, 0x55, 0x75, 0xa8, - 0x85, 0xc8, 0x65, 0x96, 0xb8, 0x76, 0x98, 0xa9, - 0xcb, 0xa9, 0xa9, 0xa9, 0xa8, 0x76, 0x86, 0xa8, - 0x76, 0x87, 0x95, 0x88, 0x97, 0x65, 0x64, 0x65, - 0x75, 0x66, 0x55, 0x33, 0x55, 0x33, 0x53, 0x43, - 0x55, 0x55, 0x65, 0x64, 0x86, 0xdb, 0x65, 0xc9, - 0xb8, 0x87, 0xb8, 0xb9, 0xa7, 0x64, 0x76, 0xa8, - 0x54, 0xa8, 0x77, 0x65, 0x97, 0x87, 0x76, 0x86, - 0x87, 0x86, 0x65, 0x65, 0x54, 0xa8, 0x97, 0x96, - 0x86, 0x86, 0x98, 0x76, 0x87, 0x98, 0xa8, 0x87, - 0x98, 0x98, 0x98, 0x98, 0x85, 0x76, 0xa9, 0x87, - 0x85, 0x94, 0xa8, 0xbb, 0x96, 0x43, 0x65, 0x76, - 0x75, 0x54, 0x65, 0x55, 0x33, 0x55, 0x54, 0x54, - 0x66, 0x66, 0x97, 0x65, 0x97, 0x44, 0x33, 0x44, - 0x44, 0x64, 0xa7, 0x95, 0x86, 0x97, 0x43, 0x97, - 0x65, 0xa8, 0xa7, 0x88, 0x98, 0x75, 0x86, 0x87, - 0x86, 0x77, 0x86, 0x76, 0x97, 0x65, 0x98, 0x86, - 0x97, 0x87, 0x64, 0x97, 0x86, 0x87, 0x98, 0x87, - 0x88, 0x87, 0x87, 0x98, 0x75, 0x86, 0x95, 0x64, - 0x96, 0xa8, 0x85, 0xb9, 0x86, 0x43, 0x33, 0x32, - 0x54, 0x54, 0x64, 0x33, 0x54, 0x34, 0x66, 0x43, - 0x66, 0x75, 0x75, 0x44, 0x65, 0x45, 0x54, 0x44, - 0x65, 0x44, 0x76, 0x76, 0x87, 0x76, 0x87, 0x97, - 0x77, 0x95, 0x86, 0x76, 0x87, 0x75, 0x76, 0x88, - 0x97, 0x76, 0x97, 0x86, 0x75, 0x75, 0x75, 0x54, - 0x98, 0x98, 0x53, 0x87, 0x98, 0x98, 0x77, 0x76, - 0x88, 0x98, 0x66, 0x88, 0xa9, 0x64, 0x64, 0x76, - 0x88, 0x64, 0x75, 0x96, 0x85, 0x43, 0x53, 0x74, - 0x65, 0x33, 0x54, 0x43, 0x33, 0x53, 0x34, 0x66, - 0x65, 0x65, 0x85, 0x44, 0x43, 0x44, 0x54, 0x54, - 0x65, 0x54, 0x86, 0x98, 0x65, 0x76, 0x74, 0x96, - 0x76, 0xa9, 0xc9, 0x86, 0x87, 0x97, 0x86, 0x75, - 0x87, 0x87, 0x87, 0x98, 0x86, 0x87, 0x87, 0x87, - 0x76, 0x88, 0x75, 0x76, 0x55, 0x86, 0xa9, 0x88, - 0x87, 0x87, 0x87, 0x76, 0x77, 0x87, 0x76, 0x22, - 0x98, 0x75, 0x64, 0x54, 0x12, 0x22, 0x12, 0x54, - 0x64, 0x64, 0x44, 0x32, 0x54, 0x33, 0x33, 0x66, - 0x76, 0x66, 0x76, 0x33, 0x55, 0x86, 0x54, 0x76, - 0xa8, 0xb7, 0x76, 0x54, 0x96, 0x75, 0xa8, 0x76, - 0xa8, 0x77, 0x86, 0xaa, 0x98, 0x98, 0x98, 0x76, - 0x77, 0x76, 0x98, 0x87, 0x99, 0x98, 0x76, 0x86, - 0x65, 0x88, 0x98, 0x98, 0x98, 0x98, 0x88, 0x87, - 0x87, 0x76, 0x88, 0x87, 0x43, 0x65, 0x02, 0x75, - 0x86, 0x64, 0x87, 0x33, 0x33, 0x54, 0x64, 0x85, - 0x43, 0x64, 0x66, 0x23, 0x43, 0x43, 0x43, 0x54, - 0x76, 0x65, 0x54, 0x44, 0x96, 0x96, 0xb9, 0x86, - 0xa7, 0x55, 0x86, 0xb8, 0xb9, 0xa8, 0x97, 0x96, - 0xb9, 0x86, 0x87, 0xa8, 0x87, 0x87, 0x76, 0x98, - 0xa9, 0xa9, 0x76, 0x86, 0x75, 0x76, 0x87, 0x98, - 0x87, 0x87, 0x76, 0x98, 0x87, 0x87, 0x76, 0x77, - 0x87, 0x43, 0x77, 0x75, 0x54, 0x43, 0x75, 0x98, - 0x43, 0x76, 0x33, 0x74, 0x75, 0x55, 0x33, 0x44, - 0x54, 0x54, 0x33, 0x54, 0x75, 0x22, 0x54, 0x88, - 0x65, 0x54, 0xa8, 0xb9, 0x65, 0x65, 0x75, 0x44, - 0x65, 0x97, 0xcb, 0xca, 0xa7, 0xb8, 0xca, 0xca, - 0xb9, 0xb9, 0x76, 0xa8, 0xa8, 0x87, 0xba, 0xb8, - 0xa9, 0xba, 0x98, 0x86, 0x77, 0x87, 0x76, 0x76, - 0x88, 0x87, 0x76, 0x87, 0x86, 0x87, 0x76, 0x76, - 0x87, 0x87, 0x86, 0xa8, 0x64, 0x65, 0x75, 0x87, - 0x53, 0x86, 0x34, 0x43, 0x43, 0x44, 0x54, 0x33, - 0x43, 0x33, 0x22, 0x43, 0x55, 0x12, 0x44, 0x55, - 0x76, 0x86, 0x66, 0x65, 0x65, 0xb8, 0xba, 0x87, - 0xa8, 0xa8, 0xb8, 0xc9, 0xb9, 0xb9, 0xca, 0xa8, - 0xa7, 0xa9, 0xcc, 0xcb, 0xb9, 0x98, 0x87, 0xca, - 0x98, 0xb9, 0x99, 0x99, 0x87, 0x76, 0x87, 0x87, - 0x75, 0x76, 0x98, 0x98, 0xa7, 0x98, 0x76, 0x53, - 0x54, 0x87, 0x76, 0x53, 0x65, 0x76, 0x64, 0x33, - 0x12, 0x44, 0x64, 0x33, 0x33, 0x23, 0x33, 0x22, - 0x33, 0x33, 0x44, 0x43, 0x33, 0x55, 0x44, 0x76, - 0x97, 0xb9, 0x76, 0x87, 0xca, 0xa9, 0x65, 0xa9, - 0xa9, 0xb9, 0xdb, 0xcb, 0xba, 0xca, 0xdb, 0xca, - 0xdc, 0xb9, 0xba, 0xa9, 0x98, 0x98, 0xca, 0xcb, - 0xa8, 0xaa, 0xa9, 0xa9, 0x98, 0x87, 0x98, 0x76, - 0x86, 0x76, 0x98, 0x85, 0x88, 0x98, 0x96, 0x96, - 0x87, 0x77, 0x75, 0x76, 0x64, 0x65, 0x54, 0x22, - 0x23, 0x12, 0x32, 0x43, 0x75, 0x85, 0x63, 0x43, - 0x33, 0x22, 0x23, 0x54, 0x76, 0x75, 0x43, 0x77, - 0xa9, 0xa8, 0xca, 0x77, 0xca, 0xba, 0x65, 0xa8, - 0xb9, 0xca, 0xca, 0xb9, 0xcb, 0xba, 0xdc, 0xdb, - 0xcc, 0xdb, 0xa8, 0xa9, 0xa8, 0xba, 0xa8, 0xdb, - 0xca, 0xa9, 0xa9, 0x87, 0x98, 0x98, 0x98, 0xa9, - 0x87, 0x87, 0x76, 0x97, 0x97, 0x98, 0x97, 0x54, - 0x86, 0x86, 0x76, 0x53, 0x33, 0x75, 0x12, 0x86, - 0x97, 0x43, 0x22, 0x43, 0x43, 0x32, 0x33, 0x43, - 0x65, 0x44, 0x44, 0x98, 0x99, 0x87, 0xb7, 0x87, - 0x98, 0xa9, 0x86, 0xc9, 0x98, 0xba, 0x98, 0x96, - 0xb9, 0xa9, 0xcb, 0xed, 0xdc, 0xdc, 0xec, 0xcc, - 0xcb, 0xcb, 0xa8, 0xa9, 0xa8, 0xba, 0xa8, 0xdb, - 0xca, 0x99, 0xa9, 0x87, 0x98, 0x98, 0x97, 0xa8, - 0x97, 0x88, 0x86, 0x98, 0x97, 0xca, 0x96, 0x75, - 0x87, 0x86, 0x76, 0x87, 0x75, 0x75, 0x12, 0x86, - 0x97, 0x43, 0x22, 0x43, 0x43, 0x43, 0x44, 0x86, - 0x76, 0x65, 0x66, 0x98, 0x99, 0x77, 0x98, 0x87, - 0xca, 0xdc, 0xcb, 0xba, 0xdb, 0xdb, 0x76, 0x86, - 0x97, 0x98, 0xcb, 0xdb, 0xa8, 0xa6, 0xd8, 0x98, - 0x97, 0x97, 0xa8, 0x97, 0x86, 0x86, 0xdc, 0xcb, - 0xba, 0x88, 0xa8, 0xb9, 0xa9, 0x88, 0xcb, 0xba, - 0xca, 0xba, 0xca, 0xb9, 0xba, 0xdc, 0xdc, 0xa9, - 0xb9, 0x88, 0x86, 0x97, 0x55, 0x76, 0x54, 0x33, - 0x23, 0x22, 0x33, 0x54, 0x76, 0x87, 0xa8, 0xb9, - 0x97, 0x97, 0xaa, 0xba, 0xb9, 0xa9, 0xdc, 0xa8, - 0x87, 0xba, 0xba, 0x98, 0xcb, 0xa8, 0xb9, 0xb8, - 0x65, 0xda, 0xb9, 0x33, 0xa7, 0x33, 0x96, 0x54, - 0x54, 0x96, 0x33, 0x75, 0xa6, 0xdb, 0xdc, 0x64, - 0xc8, 0xdb, 0xa6, 0xca, 0xca, 0xdb, 0xed, 0xee, - 0xed, 0xdc, 0xee, 0xca, 0xee, 0xca, 0xdb, 0xdc, - 0x98, 0xa9, 0xa9, 0xdb, 0xa8, 0x98, 0x77, 0x65, - 0x12, 0x64, 0x76, 0xb7, 0x98, 0xba, 0xb9, 0xb8, - 0xca, 0xdb, 0x76, 0xa8, 0xcb, 0xa8, 0x98, 0x97, - 0x98, 0xca, 0xdb, 0xb9, 0xa8, 0x64, 0xb9, 0xa8, - 0xc8, 0xc7, 0x94, 0x83, 0x32, 0x33, 0x43, 0x44, - 0x22, 0x33, 0x76, 0xb7, 0x64, 0xa8, 0x64, 0xc8, - 0xdc, 0xc9, 0xb8, 0xdc, 0xb7, 0xdb, 0xdc, 0xed, - 0xed, 0xed, 0xed, 0xda, 0xa9, 0xcb, 0xdd, 0x99, - 0xba, 0xec, 0xdb, 0xb9, 0xb9, 0xcb, 0x98, 0x99, - 0x55, 0x97, 0x97, 0xdb, 0xca, 0x97, 0x96, 0xca, - 0xed, 0xca, 0xed, 0xed, 0xa7, 0x86, 0xca, 0xca, - 0x97, 0xb9, 0xba, 0xca, 0xc9, 0xa7, 0xb9, 0x33, - 0xc7, 0xa7, 0xb7, 0xc7, 0x65, 0x63, 0x12, 0x22, - 0x54, 0x75, 0xfd, 0xc9, 0xdc, 0xa7, 0xda, 0xec, - 0xa7, 0xca, 0xca, 0xed, 0xdc, 0xdc, 0xed, 0xdc, - 0xba, 0xed, 0xcb, 0xba, 0xcb, 0xdc, 0xca, 0x88, - 0xa9, 0xba, 0xba, 0xba, 0x98, 0xa8, 0xba, 0xa9, - 0x53, 0x76, 0xba, 0x98, 0xdc, 0xba, 0xba, 0xa9, - 0xa9, 0xed, 0xed, 0xc9, 0xeb, 0xfe, 0xec, 0xb9, - 0xa9, 0xca, 0x87, 0x88, 0xba, 0xa8, 0xb9, 0xa6, - 0xca, 0x96, 0xd9, 0x86, 0x65, 0x96, 0xc7, 0xb8, - 0x43, 0xc9, 0xb6, 0x95, 0xa7, 0xb8, 0xc8, 0xb7, - 0xca, 0xb8, 0xdc, 0xba, 0xed, 0xdd, 0xed, 0xdc, - 0xcb, 0xed, 0xdc, 0xca, 0xcc, 0xed, 0xba, 0xba, - 0xdc, 0xa9, 0xba, 0xb9, 0x87, 0xaa, 0xcb, 0x98, - 0xb8, 0xc8, 0x98, 0xba, 0x98, 0xb9, 0xed, 0xca, - 0xdc, 0xca, 0xca, 0xdb, 0xdc, 0xfe, 0xee, 0xcb, - 0x98, 0xa8, 0xa8, 0xb8, 0xdc, 0xa8, 0xb8, 0xa6, - 0xcb, 0xa8, 0xc6, 0xb9, 0x33, 0xb9, 0x55, 0x54, - 0x97, 0xa8, 0x44, 0xc9, 0xcb, 0xb8, 0xc9, 0xcb, - 0xc9, 0xb9, 0xec, 0xa8, 0xed, 0xdc, 0xed, 0xdb, - 0xdc, 0xed, 0x98, 0xcb, 0xba, 0xed, 0xc9, 0x87, - 0x98, 0xa9, 0xca, 0xa8, 0xb8, 0xa9, 0xba, 0xb9, - 0x98, 0xa9, 0xa8, 0xed, 0xcb, 0xdb, 0xdb, 0xfe, - 0xcb, 0xec, 0xed, 0xff, 0xfe, 0xed, 0xed, 0xba, - 0xa9, 0xa8, 0xda, 0xba, 0x76, 0xa8, 0xca, 0xb7, - 0xc8, 0xca, 0xba, 0xba, 0xd9, 0x43, 0x75, 0xa8, - 0xb9, 0x85, 0x96, 0xa7, 0xb9, 0xb9, 0xb7, 0xa8, - 0xb7, 0xa8, 0xdc, 0xba, 0xa9, 0xb9, 0xa7, 0xb9, - 0xa9, 0xec, 0xb9, 0xca, 0xba, 0xa9, 0x97, 0xba, - 0xb9, 0xaa, 0x88, 0x97, 0xa8, 0xa9, 0xb9, 0xa7, - 0xcb, 0xed, 0x77, 0xba, 0xca, 0x97, 0xdb, 0xec, - 0xb9, 0xdb, 0xed, 0xba, 0xdb, 0xfe, 0xdb, 0xcb, - 0xca, 0xa9, 0xcb, 0xb8, 0xa7, 0xb8, 0xbb, 0x97, - 0x76, 0x75, 0xc9, 0xca, 0xba, 0xa7, 0xa8, 0x86, - -}; - -u8 bob_dl_grey_brick_i4[] = { - 0x46, 0x66, 0x65, 0x45, 0x55, 0x54, 0x44, 0x55, - 0x44, 0x44, 0x35, 0x67, 0x77, 0x54, 0x56, 0x66, - 0x55, 0x66, 0x66, 0x56, 0x64, 0x44, 0x55, 0x55, - 0x44, 0x45, 0x55, 0x44, 0x34, 0x45, 0x65, 0x55, - 0x67, 0x66, 0x77, 0x66, 0x65, 0x54, 0x67, 0x77, - 0x78, 0x76, 0x66, 0x67, 0x76, 0x56, 0x67, 0x66, - 0x66, 0x66, 0x66, 0x54, 0x44, 0x44, 0x45, 0x43, - 0x44, 0x43, 0x55, 0x44, 0x44, 0x55, 0x66, 0x55, - 0x66, 0x65, 0x55, 0x65, 0x65, 0x54, 0x66, 0x77, - 0x77, 0x76, 0x55, 0x55, 0x55, 0x56, 0x65, 0x65, - 0x65, 0x55, 0x55, 0x44, 0x65, 0x55, 0x66, 0x55, - 0x45, 0x56, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x76, 0x66, 0x66, 0x77, 0x76, 0x66, 0x67, - 0x66, 0x55, 0x55, 0x55, 0x55, 0x66, 0x66, 0x66, - 0x66, 0x55, 0x55, 0x44, 0x66, 0x66, 0x66, 0x55, - 0x55, 0x55, 0x66, 0x66, 0x65, 0x55, 0x66, 0x66, - 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, - 0x66, 0x67, 0x65, 0x55, 0x66, 0x66, 0x66, 0x66, - 0x65, 0x55, 0x56, 0x55, 0x66, 0x56, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x76, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x66, - 0x66, 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x65, - 0x65, 0x55, 0x55, 0x55, 0x66, 0x66, 0x66, 0x76, - 0x66, 0x66, 0x66, 0x76, 0x56, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x55, - 0x65, 0x55, 0x55, 0x55, 0x66, 0x66, 0x76, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, - 0x55, 0x56, 0x55, 0x54, 0x66, 0x67, 0x76, 0x77, - 0x67, 0x66, 0x56, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x55, 0x67, 0x55, 0x63, 0x67, 0x76, 0x67, 0x76, - 0x66, 0x66, 0x67, 0x66, 0x76, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x77, 0x76, 0x66, 0x77, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x67, 0x55, 0x54, 0x67, 0x77, 0x76, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x77, 0x77, 0x66, 0x67, 0x76, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x55, 0x54, 0x67, 0x77, 0x76, 0x66, - 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x76, - 0x66, 0x66, 0x67, 0x77, 0x77, 0x76, 0x66, 0x66, - 0x66, 0x67, 0x77, 0x76, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x55, 0x54, 0x67, 0x77, 0x77, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, - 0x66, 0x67, 0x77, 0x76, 0x66, 0x66, 0x66, 0x65, - 0x56, 0x77, 0x76, 0x64, 0x66, 0x67, 0x76, 0x76, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x67, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, - 0x66, 0x76, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x55, 0x76, 0x66, 0x64, 0x67, 0x67, 0x76, 0x77, - 0x77, 0x77, 0x65, 0x55, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, - 0x66, 0x66, 0x77, 0x76, 0x66, 0x66, 0x56, 0x66, - 0x66, 0x66, 0x66, 0x65, 0x66, 0x66, 0x66, 0x67, - 0x77, 0x77, 0x66, 0x55, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x67, 0x77, 0x77, 0x77, 0x78, 0x77, 0x66, - 0x67, 0x67, 0x77, 0x76, 0x66, 0x65, 0x66, 0x66, - 0x66, 0x66, 0x67, 0x74, 0x66, 0x66, 0x66, 0x67, - 0x67, 0x76, 0x56, 0x55, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x68, 0x88, 0x77, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x76, 0x67, 0x65, 0x76, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x65, 0x55, 0x55, 0x55, 0x66, 0x55, - 0x77, 0x77, 0x67, 0x76, 0x67, 0x77, 0x77, 0x66, - 0x66, 0x66, 0x66, 0x67, 0x65, 0x56, 0x66, 0x66, - 0x76, 0x66, 0x67, 0x55, 0x76, 0x55, 0x56, 0x66, - 0x55, 0x66, 0x55, 0x55, 0x55, 0x55, 0x44, 0x45, - 0x67, 0x66, 0x55, 0x56, 0x65, 0x66, 0x55, 0x66, - 0x55, 0x66, 0x66, 0x66, 0x65, 0x55, 0x55, 0x55, - 0x55, 0x65, 0x55, 0x44, 0x65, 0x55, 0x55, 0x43, - 0x55, 0x54, 0x43, 0x44, 0x33, 0x22, 0x33, 0x43, - 0x55, 0x55, 0x54, 0x55, 0x55, 0x55, 0x55, 0x44, - 0x54, 0x55, 0x35, 0x66, 0x66, 0x54, 0x55, 0x55, - 0x55, 0x55, 0x55, 0x44, 0x45, 0x54, 0x55, 0x45, - 0x55, 0x55, 0x33, 0x44, 0x54, 0x33, 0x55, 0x55, - 0x68, 0x88, 0x78, 0x77, 0x67, 0x65, 0x64, 0x44, - 0x65, 0x55, 0x53, 0x21, 0x33, 0x33, 0x22, 0x22, - 0x23, 0x55, 0x55, 0x55, 0x57, 0x66, 0x76, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x77, 0x78, - 0x88, 0x88, 0x77, 0x75, 0x88, 0x87, 0x46, 0x77, - 0x77, 0x77, 0x76, 0x35, 0x67, 0x77, 0x77, 0x77, - 0x9a, 0xaa, 0xaa, 0xa9, 0x99, 0x98, 0x87, 0x77, - 0x77, 0x77, 0x66, 0x67, 0x66, 0x66, 0x77, 0x77, - 0x78, 0x88, 0x77, 0x77, 0x78, 0x88, 0x77, 0x67, - 0x77, 0x77, 0x77, 0x35, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x88, 0x88, 0x77, 0x77, 0x77, 0x66, - 0x77, 0x77, 0x66, 0x67, 0x66, 0x66, 0x77, 0x77, - 0x77, 0x77, 0x76, 0x77, 0x77, 0x77, 0x77, 0x67, - 0x77, 0x77, 0x77, 0x45, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x88, 0x88, 0x76, 0x77, 0x77, 0x67, - 0x67, 0x77, 0x66, 0x77, 0x66, 0x66, 0x77, 0x77, - 0x77, 0x87, 0x77, 0x77, 0x78, 0x87, 0x77, 0x66, - 0x77, 0x77, 0x66, 0x44, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x78, 0x89, 0x88, 0x77, 0x77, 0x76, 0x66, - 0x76, 0x66, 0x66, 0x77, 0x66, 0x65, 0x77, 0x77, - 0x77, 0x87, 0x88, 0x77, 0x77, 0x88, 0x77, 0x77, - 0x77, 0x77, 0x75, 0x44, 0x67, 0x77, 0x77, 0x77, - 0x87, 0x88, 0x88, 0x88, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x66, 0x75, 0x67, 0x77, - 0x88, 0x88, 0x87, 0x87, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x86, 0x44, 0x34, 0x77, 0x77, 0x77, - 0x77, 0x88, 0x88, 0x88, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x78, 0x77, 0x76, 0x77, 0x87, 0x77, - 0x88, 0x88, 0x87, 0x87, 0x77, 0x88, 0x77, 0x87, - 0x77, 0x77, 0x86, 0x55, 0x37, 0x77, 0x77, 0x78, - 0x77, 0x78, 0x98, 0x77, 0x77, 0x77, 0x67, 0x77, - 0x87, 0x87, 0x78, 0x77, 0x88, 0x78, 0x77, 0x66, - 0x77, 0x78, 0x87, 0x88, 0x88, 0x88, 0x77, 0x77, - 0x78, 0x88, 0x78, 0x75, 0x77, 0x88, 0x77, 0x78, - 0x98, 0x88, 0x87, 0x86, 0x67, 0x77, 0x67, 0x77, - 0x88, 0x78, 0x77, 0x77, 0x88, 0x88, 0x77, 0x66, - 0x77, 0x88, 0x87, 0x77, 0x88, 0x88, 0x77, 0x77, - 0x78, 0x88, 0x88, 0x76, 0x68, 0x88, 0x88, 0x88, - 0x88, 0x88, 0x88, 0x76, 0x67, 0x76, 0x66, 0x88, - 0x88, 0x88, 0x77, 0x77, 0x78, 0x87, 0x76, 0x67, - 0x78, 0x88, 0x88, 0x78, 0x88, 0x88, 0x87, 0x78, - 0x88, 0x88, 0x88, 0x87, 0x77, 0x78, 0x88, 0x88, - 0x88, 0x99, 0x98, 0x87, 0x88, 0x77, 0x77, 0x89, - 0x87, 0x88, 0x77, 0x77, 0x78, 0x77, 0x66, 0x67, - 0x78, 0x88, 0x88, 0x87, 0x78, 0x88, 0x77, 0x77, - 0x87, 0x88, 0x88, 0x77, 0x77, 0x88, 0x78, 0x89, - 0x99, 0x99, 0x99, 0x98, 0x88, 0x77, 0x77, 0x88, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, - 0x77, 0x88, 0x87, 0x77, 0x77, 0x87, 0x77, 0x77, - 0x88, 0x88, 0x78, 0x77, 0x77, 0x77, 0x78, 0x88, - 0x88, 0x99, 0x99, 0x98, 0x89, 0x88, 0x77, 0x88, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, - 0x88, 0x88, 0x88, 0x88, 0x89, 0x98, 0x77, 0x77, - 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, - 0x77, 0x77, 0x87, 0x66, 0x66, 0x77, 0x77, 0x68, - 0x78, 0x88, 0x77, 0x66, 0x66, 0x66, 0x77, 0x77, - 0x78, 0x88, 0x89, 0x99, 0x99, 0x99, 0x77, 0x76, - 0x77, 0x66, 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, - 0x56, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x78, 0x87, 0x76, 0x66, 0x66, 0x67, 0x77, 0x77, - 0x78, 0x88, 0x88, 0x99, 0x99, 0x98, 0x87, 0x77, - 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, 0x87, 0x66, - 0x22, 0x22, 0x44, 0x44, 0x55, 0x55, 0x55, 0x54, - 0x54, 0x55, 0x56, 0x66, 0x66, 0x66, 0x67, 0x77, - 0x77, 0x77, 0x77, 0x88, 0x87, 0x76, 0x55, 0x56, - 0x65, 0x56, 0x56, 0x66, 0x86, 0x57, 0x65, 0x64, - 0x35, 0x55, 0x67, 0x77, 0x55, 0x55, 0x55, 0x54, - 0x45, 0x55, 0x67, 0x77, 0x75, 0x65, 0x55, 0x55, - 0x66, 0x66, 0x67, 0x77, 0x76, 0x53, 0x44, 0x45, - 0x55, 0x55, 0x56, 0x66, 0x66, 0x66, 0x56, 0x65, - 0x56, 0x76, 0x67, 0x77, 0x65, 0x77, 0x77, 0x65, - 0x56, 0x67, 0x89, 0x99, 0x86, 0x67, 0x77, 0x75, - 0x55, 0x55, 0x55, 0x55, 0x53, 0x33, 0x44, 0x32, - 0x22, 0x34, 0x33, 0x33, 0x44, 0x56, 0x66, 0x78, - 0x56, 0x66, 0x77, 0x66, 0x55, 0x67, 0x77, 0x77, - 0x77, 0x88, 0x98, 0x77, 0x87, 0x88, 0x77, 0x67, - 0x66, 0x67, 0x88, 0x87, 0x77, 0x65, 0x65, 0x56, - 0x65, 0x66, 0x55, 0x67, 0x75, 0x57, 0x66, 0x88, - 0x56, 0x78, 0x77, 0x76, 0x77, 0x77, 0x76, 0x77, - 0x77, 0x77, 0x77, 0x78, 0x77, 0x67, 0x77, 0x77, - 0x66, 0x66, 0x66, 0x76, 0x67, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x44, 0x55, 0x66, 0x67, 0x76, 0x76, - 0x56, 0x78, 0x77, 0x77, 0x87, 0x78, 0x77, 0x77, - 0x77, 0x77, 0x87, 0x78, 0x87, 0x77, 0x77, 0x77, - 0x55, 0x56, 0x66, 0x66, 0x66, 0x66, 0x87, 0x66, - 0x66, 0x66, 0x55, 0x56, 0x66, 0x66, 0x76, 0x67, - 0x56, 0x67, 0x77, 0x77, 0x87, 0x88, 0x77, 0x77, - 0x77, 0x88, 0x88, 0x78, 0x88, 0x77, 0x77, 0x77, - 0x55, 0x55, 0x66, 0x66, 0x66, 0x77, 0x88, 0x66, - 0x76, 0x66, 0x55, 0x56, 0x77, 0x77, 0x76, 0x67, - 0x46, 0x66, 0x77, 0x77, 0x87, 0x88, 0x87, 0x77, - 0x77, 0x88, 0x88, 0x78, 0x88, 0x77, 0x76, 0x55, - 0x65, 0x55, 0x66, 0x66, 0x77, 0x77, 0x87, 0x66, - 0x66, 0x66, 0x55, 0x56, 0x77, 0x77, 0x75, 0x67, - 0x57, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x78, - 0x87, 0x88, 0x88, 0x78, 0x88, 0x77, 0x66, 0x66, - 0x66, 0x56, 0x56, 0x66, 0x76, 0x67, 0x77, 0x67, - 0x77, 0x66, 0x55, 0x56, 0x77, 0x77, 0x76, 0x77, - 0x67, 0x77, 0x78, 0x88, 0x77, 0x77, 0x87, 0x78, - 0x77, 0x88, 0x88, 0x88, 0x87, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, - 0x65, 0x56, 0x55, 0x56, 0x77, 0x77, 0x76, 0x78, - 0x67, 0x77, 0x77, 0x88, 0x87, 0x77, 0x88, 0x88, - 0x88, 0x88, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x65, 0x56, 0x66, 0x66, 0x77, 0x77, - 0x65, 0x55, 0x55, 0x56, 0x77, 0x77, 0x66, 0x88, - 0x57, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, - 0x88, 0x87, 0x77, 0x76, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x55, 0x56, 0x66, 0x66, 0x67, 0x77, - 0x65, 0x55, 0x54, 0x56, 0x77, 0x76, 0x77, 0x88, - 0x57, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x87, - 0x77, 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x65, 0x56, 0x66, 0x56, 0x66, 0x66, 0x66, - 0x64, 0x55, 0x66, 0x44, 0x66, 0x66, 0x77, 0x88, - 0x46, 0x67, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x66, 0x66, 0x66, 0x67, 0x66, 0x56, 0x66, - 0x55, 0x55, 0x66, 0x44, 0x45, 0x76, 0x78, 0x88, - 0x46, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, - 0x66, 0x66, 0x66, 0x66, 0x76, 0x66, 0x66, 0x66, - 0x55, 0x55, 0x43, 0x65, 0x46, 0x66, 0x78, 0x88, - 0x46, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, - 0x88, 0x88, 0x77, 0x77, 0x77, 0x78, 0x87, 0x77, - 0x77, 0x76, 0x66, 0x67, 0x77, 0x66, 0x66, 0x66, - 0x66, 0x65, 0x45, 0x66, 0x44, 0x66, 0x77, 0x77, - 0x56, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, - 0x88, 0x88, 0x88, 0x78, 0x77, 0x77, 0x77, 0x77, - 0x78, 0x76, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x65, 0x46, 0x63, 0x34, 0x46, 0x67, 0x76, - 0x67, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, - 0x88, 0x88, 0x87, 0x77, 0x77, 0x87, 0x77, 0x67, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x65, 0x46, 0x54, 0x44, 0x56, 0x67, 0x76, - 0x66, 0x77, 0x67, 0x78, 0x87, 0x77, 0x76, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x66, 0x76, 0x77, 0x65, - 0x44, 0x55, 0x65, 0x56, 0x66, 0x65, 0x66, 0x66, - 0x54, 0x44, 0x45, 0x44, 0x45, 0x56, 0x45, 0x66, - 0x66, 0x44, 0x66, 0x76, 0x67, 0x77, 0x65, 0x66, - 0x66, 0x65, 0x55, 0x55, 0x44, 0x44, 0x45, 0x43, - 0x44, 0x45, 0x44, 0x44, 0x55, 0x55, 0x55, 0x55, - 0x55, 0x44, 0x44, 0x45, 0x55, 0x66, 0x45, 0x65, - 0x66, 0x66, 0x67, 0x66, 0x55, 0x55, 0x44, 0x44, - 0x45, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x22, - 0x34, 0x44, 0x44, 0x44, 0x46, 0x66, 0x55, 0x55, - 0x55, 0x55, 0x55, 0x55, 0x55, 0x56, 0x44, 0x56, - 0x66, 0x67, 0x78, 0x87, 0x67, 0x88, 0x77, 0x77, - 0x76, 0x65, 0x55, 0x56, 0x77, 0x77, 0x77, 0x56, - 0x55, 0x55, 0x44, 0x56, 0x56, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x44, 0x44, - 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x87, - 0x77, 0x66, 0x55, 0x57, 0x87, 0x67, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x66, 0x67, 0x77, 0x77, 0x77, - 0x77, 0x76, 0x77, 0x66, 0x87, 0x77, 0x65, 0x65, - 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, - 0x77, 0x66, 0x55, 0x67, 0x97, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x76, 0x77, 0x88, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x87, 0x88, 0x77, 0x67, - 0x77, 0x77, 0x87, 0x77, 0x88, 0x88, 0x77, 0x77, - 0x88, 0x65, 0x66, 0x78, 0x88, 0x87, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x77, 0x66, - 0x77, 0x77, 0x78, 0x77, 0x77, 0x88, 0x87, 0x77, - 0x77, 0x77, 0x77, 0x78, 0x88, 0x88, 0x77, 0x77, - 0x88, 0x55, 0x66, 0x88, 0x88, 0x87, 0x77, 0x77, - 0x77, 0x77, 0x66, 0x77, 0x87, 0x77, 0x87, 0x87, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x76, - 0x87, 0x78, 0x88, 0x88, 0x88, 0x98, 0x87, 0x77, - 0x87, 0x55, 0x66, 0x77, 0x88, 0x87, 0x77, 0x77, - 0x77, 0x77, 0x76, 0x77, 0x78, 0x77, 0x77, 0x87, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, 0x77, - 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, - 0x86, 0x54, 0x66, 0x77, 0x88, 0x88, 0x77, 0x77, - 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, - 0x88, 0x88, 0x88, 0x98, 0x88, 0x88, 0x87, 0x78, - 0x76, 0x54, 0x66, 0x77, 0x88, 0x87, 0x76, 0x77, - 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, 0x67, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x67, - 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, - 0x87, 0x76, 0x66, 0x88, 0x88, 0x88, 0x77, 0x77, - 0x78, 0x77, 0x76, 0x76, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, - 0x87, 0x78, 0x88, 0x78, 0x78, 0x88, 0x88, 0x88, - 0x88, 0x76, 0x67, 0x88, 0x88, 0x88, 0x77, 0x88, - 0x77, 0x87, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x77, 0x76, - 0x87, 0x78, 0x88, 0x78, 0x77, 0x78, 0x88, 0x88, - 0x88, 0x66, 0x77, 0x88, 0x88, 0x88, 0x77, 0x88, - 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x67, 0x77, - 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x87, 0x76, - 0x88, 0x88, 0x77, 0x88, 0x77, 0x77, 0x78, 0x88, - 0x76, 0x76, 0x78, 0x88, 0x88, 0x78, 0x77, 0x78, - 0x88, 0x88, 0x77, 0x77, 0x66, 0x77, 0x77, 0x88, - 0x88, 0x78, 0x77, 0x77, 0x88, 0x88, 0x77, 0x76, - 0x77, 0x77, 0x77, 0x78, 0x77, 0x78, 0x77, 0x77, - 0x76, 0x67, 0x78, 0x88, 0x88, 0x87, 0x76, 0x78, - 0x78, 0x88, 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, - 0x77, 0x77, 0x78, 0x78, 0x88, 0x88, 0x77, 0x76, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, - 0x66, 0x67, 0x78, 0x88, 0x88, 0x87, 0x77, 0x77, - 0x88, 0x88, 0x77, 0x77, 0x77, 0x77, 0x67, 0x77, - 0x77, 0x77, 0x77, 0x78, 0x88, 0x78, 0x77, 0x66, - 0x88, 0x87, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, - 0x66, 0x67, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, - 0x88, 0x88, 0x87, 0x77, 0x77, 0x87, 0x77, 0x77, - 0x76, 0x77, 0x77, 0x78, 0x77, 0x78, 0x76, 0x65, - 0x78, 0x87, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, - 0x66, 0x66, 0x77, 0x78, 0x78, 0x87, 0x88, 0x88, - 0x77, 0x98, 0x88, 0x88, 0x67, 0x78, 0x88, 0x87, - 0x56, 0x56, 0x77, 0x77, 0x77, 0x76, 0x65, 0x55, - 0x67, 0x77, 0x77, 0x67, 0x76, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, - 0x76, 0x56, 0x78, 0x87, 0x55, 0x65, 0x66, 0x65, - 0x44, 0x34, 0x55, 0x65, 0x55, 0x55, 0x55, 0x55, - 0x56, 0x66, 0x66, 0x66, 0x66, 0x55, 0x55, 0x55, - 0x66, 0x66, 0x67, 0x77, 0x66, 0x66, 0x66, 0x55, - 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x56, 0x55, - 0x55, 0x54, 0x55, 0x66, 0x65, 0x45, 0x45, 0x54, - 0x77, 0x78, 0x77, 0x87, 0x76, 0x65, 0x55, 0x55, - 0x66, 0x67, 0x88, 0x99, 0x99, 0x78, 0x88, 0x87, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x67, 0x66, 0x55, - 0x66, 0x55, 0x56, 0x66, 0x65, 0x54, 0x45, 0x54, - 0x88, 0x88, 0x88, 0x88, 0x77, 0x77, 0x66, 0x67, - 0x78, 0x89, 0x99, 0x99, 0x99, 0x88, 0x88, 0x87, - 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x67, 0x66, 0x56, 0x55, 0x65, 0x55, 0x55, 0x65, - 0x77, 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x88, 0x87, 0x78, 0x88, 0x77, 0x66, 0x77, 0x76, - 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x76, 0x66, 0x66, 0x44, 0x55, 0x56, 0x55, 0x66, - 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x87, 0x77, 0x88, 0x87, 0x76, 0x66, 0x66, 0x77, - 0x76, 0x76, 0x66, 0x76, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x76, 0x66, 0x55, 0x66, 0x56, 0x65, 0x66, - 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x88, 0x77, 0x66, 0x66, 0x77, 0x77, - 0x77, 0x66, 0x66, 0x66, 0x56, 0x66, 0x66, 0x65, - 0x66, 0x77, 0x76, 0x66, 0x66, 0x66, 0x65, 0x66, - 0x66, 0x77, 0x77, 0x77, 0x67, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x67, 0x77, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x76, 0x66, 0x77, 0x77, 0x67, 0x77, 0x86, 0x67, - 0x77, 0x88, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x67, 0x65, 0x56, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, 0x77, - 0x77, 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x67, 0x76, 0x67, 0x66, 0x56, 0x66, 0x66, 0x66, - 0x77, 0x78, 0x77, 0x77, 0x77, 0x87, 0x67, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x67, - 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x67, 0x67, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x77, 0x88, 0x77, 0x78, 0x87, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x67, 0x77, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x78, 0x88, 0x87, 0x78, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, - 0x65, 0x55, 0x55, 0x66, 0x66, 0x66, 0x66, 0x56, - 0x66, 0x67, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x78, 0x88, 0x87, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x65, - 0x66, 0x55, 0x55, 0x66, 0x76, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x77, 0x88, 0x88, 0x87, 0x77, 0x78, 0x77, 0x76, - 0x76, 0x77, 0x77, 0x67, 0x76, 0x66, 0x66, 0x65, - 0x56, 0x55, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x67, 0x76, 0x55, 0x55, 0x66, 0x66, 0x66, - 0x88, 0x88, 0x77, 0x77, 0x88, 0x88, 0x77, 0x77, - 0x66, 0x76, 0x76, 0x77, 0x66, 0x66, 0x66, 0x66, - 0x65, 0x45, 0x76, 0x66, 0x66, 0x66, 0x55, 0x67, - 0x67, 0x67, 0x76, 0x55, 0x55, 0x66, 0x67, 0x76, - 0x88, 0x88, 0x77, 0x77, 0x76, 0x66, 0x77, 0x77, - 0x66, 0x66, 0x66, 0x76, 0x65, 0x66, 0x66, 0x76, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, - 0x66, 0x65, 0x44, 0x66, 0x55, 0x66, 0x67, 0x76, - 0x78, 0x87, 0x77, 0x77, 0x66, 0x65, 0x55, 0x54, - 0x66, 0x66, 0x55, 0x55, 0x56, 0x55, 0x65, 0x55, - 0x66, 0x56, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, - 0x67, 0x75, 0x45, 0x66, 0x55, 0x55, 0x56, 0x55, - 0x56, 0x66, 0x66, 0x55, 0x55, 0x44, 0x44, 0x44, - 0x34, 0x44, 0x54, 0x43, 0x33, 0x33, 0x45, 0x53, - 0x34, 0x44, 0x33, 0x34, 0x56, 0x55, 0x55, 0x45, - 0x66, 0x55, 0x46, 0x56, 0x66, 0x54, 0x43, 0x33, - 0x56, 0x65, 0x55, 0x77, 0x66, 0x66, 0x55, 0x53, - 0x45, 0x66, 0x65, 0x66, 0x77, 0x76, 0x56, 0x65, - 0x66, 0x77, 0x77, 0x77, 0x78, 0x87, 0x76, 0x66, - 0x78, 0x85, 0x57, 0x77, 0x77, 0x76, 0x55, 0x45, - 0x66, 0x66, 0x54, 0x67, 0x66, 0x66, 0x65, 0x56, - 0x77, 0x66, 0x67, 0x76, 0x66, 0x66, 0x66, 0x55, - 0x66, 0x77, 0x77, 0x77, 0x76, 0x67, 0x77, 0x66, - 0x77, 0x76, 0x66, 0x66, 0x56, 0x66, 0x55, 0x55, - 0x55, 0x55, 0x55, 0x55, 0x65, 0x55, 0x55, 0x56, - 0x77, 0x77, 0x77, 0x66, 0x66, 0x66, 0x65, 0x55, - 0x66, 0x66, 0x77, 0x77, 0x66, 0x67, 0x66, 0x66, - 0x66, 0x76, 0x66, 0x65, 0x66, 0x66, 0x55, 0x54, - 0x56, 0x55, 0x66, 0x66, 0x65, 0x55, 0x55, 0x55, - 0x65, 0x66, 0x66, 0x66, 0x66, 0x56, 0x65, 0x55, - 0x66, 0x67, 0x77, 0x76, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x76, 0x66, 0x55, 0x56, 0x65, 0x56, 0x55, - 0x66, 0x66, 0x66, 0x67, 0x65, 0x55, 0x66, 0x65, - 0x55, 0x55, 0x75, 0x66, 0x55, 0x55, 0x66, 0x55, - 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x56, 0x56, - 0x66, 0x66, 0x66, 0x67, 0x65, 0x66, 0x66, 0x66, - 0x56, 0x66, 0x66, 0x66, 0x65, 0x55, 0x56, 0x55, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, - 0x65, 0x64, 0x56, 0x75, 0x66, 0x56, 0x66, 0x65, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x67, 0x76, 0x66, 0x66, 0x66, - 0x65, 0x54, 0x46, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x65, 0x46, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x76, 0x77, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x76, - 0x55, 0x45, 0x76, 0x66, 0x66, 0x66, 0x66, 0x77, - 0x77, 0x77, 0x76, 0x66, 0x66, 0x76, 0x67, 0x76, - 0x66, 0x66, 0x66, 0x66, 0x55, 0x55, 0x66, 0x66, - 0x66, 0x56, 0x66, 0x66, 0x67, 0x76, 0x66, 0x66, - 0x54, 0x45, 0x76, 0x66, 0x77, 0x66, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, - 0x66, 0x66, 0x66, 0x66, 0x55, 0x56, 0x55, 0x55, - 0x66, 0x56, 0x66, 0x66, 0x66, 0x76, 0x66, 0x66, - 0x55, 0x56, 0x76, 0x66, 0x77, 0x66, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x88, 0x87, 0x77, 0x77, - 0x76, 0x66, 0x66, 0x66, 0x55, 0x66, 0x55, 0x55, - 0x56, 0x55, 0x66, 0x66, 0x66, 0x77, 0x76, 0x65, - 0x55, 0x55, 0x75, 0x56, 0x66, 0x66, 0x77, 0x77, - 0x78, 0x77, 0x77, 0x78, 0x88, 0x88, 0x87, 0x77, - 0x77, 0x66, 0x66, 0x66, 0x55, 0x65, 0x65, 0x55, - 0x55, 0x55, 0x66, 0x66, 0x66, 0x77, 0x66, 0x65, - 0x55, 0x55, 0x57, 0x66, 0x66, 0x66, 0x67, 0x77, - 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, - 0x76, 0x66, 0x66, 0x66, 0x65, 0x66, 0x65, 0x55, - 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, - 0x55, 0x56, 0x76, 0x76, 0x66, 0x66, 0x67, 0x77, - 0x77, 0x77, 0x88, 0x88, 0x88, 0x89, 0x87, 0x77, - 0x67, 0x76, 0x66, 0x75, 0x56, 0x66, 0x66, 0x55, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, - 0x55, 0x66, 0x76, 0x66, 0x66, 0x66, 0x67, 0x77, - 0x77, 0x77, 0x77, 0x78, 0x89, 0x98, 0x78, 0x77, - 0x67, 0x76, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, - 0x65, 0x66, 0x66, 0x66, 0x66, 0x66, 0x76, 0x66, - 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x67, 0x66, - 0x77, 0x65, 0x55, 0x56, 0x88, 0x77, 0x78, 0x77, - 0x66, 0x65, 0x67, 0x76, 0x66, 0x66, 0x66, 0x55, - 0x55, 0x56, 0x55, 0x65, 0x45, 0x55, 0x66, 0x56, - 0x66, 0x66, 0x66, 0x77, 0x76, 0x66, 0x65, 0x55, - 0x55, 0x44, 0x44, 0x56, 0x57, 0x77, 0x76, 0x65, - 0x54, 0x55, 0x76, 0x65, 0x66, 0x66, 0x66, 0x66, - 0x65, 0x55, 0x66, 0x77, 0x66, 0x66, 0x66, 0x66, - 0x66, 0x67, 0x77, 0x76, 0x65, 0x44, 0x43, 0x33, - 0x33, 0x33, 0x44, 0x44, 0x55, 0x55, 0x55, 0x55, - 0x54, 0x55, 0x46, 0x44, 0x55, 0x56, 0x65, 0x55, - 0x55, 0x56, 0x76, 0x77, 0x78, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0x78, 0x88, - 0x89, 0x99, 0x9a, 0xa9, 0x99, 0x99, 0x99, 0x99, - 0x88, 0x87, 0x76, 0x54, 0x45, 0x55, 0x55, 0x56, - 0x67, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, 0x67, - 0x77, 0x77, 0x77, 0x77, 0x66, 0x76, 0x67, 0x76, - 0x67, 0x77, 0x76, 0x66, 0x54, 0x55, 0x66, 0x66, - 0x67, 0x66, 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, - 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x67, 0x76, - 0x77, 0x67, 0x76, 0x76, 0x65, 0x66, 0x66, 0x66, - 0x65, 0x56, 0x77, 0x78, 0x87, 0x77, 0x77, 0x77, - 0x88, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x77, - 0x77, 0x67, 0x66, 0x66, 0x66, 0x67, 0x76, 0x67, - 0x66, 0x66, 0x77, 0x77, 0x87, 0x77, 0x77, 0x77, - 0x78, 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x77, - 0x77, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, - 0x66, 0x67, 0x77, 0x77, 0x77, 0x87, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x66, 0x67, 0x67, 0x67, 0x77, 0x77, 0x77, - 0x66, 0x67, 0x77, 0x77, 0x77, 0x87, 0x78, 0x77, - 0x77, 0x77, 0x78, 0x87, 0x88, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x76, 0x67, 0x77, 0x67, 0x77, 0x77, 0x77, - 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x87, 0x88, 0x88, 0x87, 0x77, 0x77, - 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x67, 0x77, 0x66, 0x67, 0x76, 0x66, - 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x78, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x76, 0x66, 0x66, 0x77, 0x66, 0x67, 0x76, 0x66, - 0x75, 0x68, 0x78, 0x87, 0x77, 0x77, 0x77, 0x66, - 0x77, 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x76, 0x77, 0x66, 0x67, 0x77, 0x77, 0x77, - 0x76, 0x66, 0x67, 0x77, 0x77, 0x67, 0x66, 0x66, - 0x65, 0x57, 0x78, 0x87, 0x77, 0x78, 0x77, 0x76, - 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, - 0x77, 0x77, 0x76, 0x66, 0x67, 0x77, 0x67, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, - 0x75, 0x56, 0x67, 0x77, 0x77, 0x77, 0x87, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x77, - 0x77, 0x77, 0x76, 0x66, 0x67, 0x76, 0x66, 0x77, - 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x66, 0x76, 0x67, 0x77, 0x77, 0x77, 0x77, 0x67, - 0x77, 0x76, 0x77, 0x77, 0x76, 0x66, 0x67, 0x77, - 0x77, 0x77, 0x76, 0x66, 0x77, 0x66, 0x66, 0x77, - 0x66, 0x67, 0x77, 0x77, 0x76, 0x66, 0x66, 0x66, - 0x66, 0x56, 0x66, 0x77, 0x66, 0x67, 0x77, 0x66, - 0x66, 0x66, 0x76, 0x67, 0x76, 0x67, 0x77, 0x66, - 0x67, 0x77, 0x66, 0x77, 0x66, 0x67, 0x76, 0x76, - 0x66, 0x66, 0x67, 0x66, 0x66, 0x66, 0x66, 0x77, - 0x65, 0x56, 0x66, 0x66, 0x66, 0x67, 0x76, 0x66, - 0x66, 0x66, 0x66, 0x77, 0x66, 0x77, 0x76, 0x66, - 0x76, 0x76, 0x56, 0x66, 0x66, 0x67, 0x76, 0x66, - 0x66, 0x66, 0x66, 0x65, 0x56, 0x66, 0x66, 0x66, - 0x55, 0x56, 0x65, 0x66, 0x67, 0x77, 0x76, 0x77, - 0x77, 0x76, 0x66, 0x66, 0x67, 0x67, 0x77, 0x77, - 0x67, 0x76, 0x66, 0x66, 0x67, 0x77, 0x77, 0x66, - 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, - 0x35, 0x65, 0x54, 0x55, 0x66, 0x57, 0x66, 0x88, - 0x77, 0x76, 0x66, 0x66, 0x66, 0x67, 0x77, 0x77, - 0x77, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x66, - 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, - -}; - -u8 jrb_dl_RSVP8P_e3fd4de76cd3b012_14_ci4_pal_rgba16[] = { - 0x00, 0x00, 0x81, 0x93, 0xa2, 0x9b, 0xbb, 0x21, - 0xb3, 0x63, 0xcc, 0x27, 0xdc, 0xed, 0xb2, 0x93, - 0xed, 0xb3, 0xd4, 0x25, 0xee, 0x35, 0xc3, 0x5d, - 0xdc, 0xe9, 0xf6, 0xb7, 0xcb, 0xdf, 0x89, 0x09, - -}; - - -Gfx jrb_dl_E050_O021_CI_ci4_aligner[] = {gsSPEndDisplayList()}; -u8 jrb_dl_E050_O021_CI_ci4[] = { - 0x00, 0x00, 0x01, 0x22, 0x30, 0x45, 0x44, 0x45, - 0x55, 0x54, 0x44, 0x46, 0x64, 0x44, 0x55, 0x44, - 0x55, 0x55, 0x77, 0x77, 0x55, 0x55, 0x77, 0x77, - 0x55, 0x55, 0x54, 0x00, 0x32, 0x22, 0x83, 0x03, - 0x33, 0x00, 0x11, 0x29, 0x30, 0x44, 0x44, 0x64, - 0x45, 0x44, 0x44, 0x66, 0x66, 0x44, 0x57, 0x77, - 0x55, 0xaa, 0xbb, 0xcb, 0xcc, 0xdd, 0xdd, 0xcc, - 0xbb, 0xa5, 0x55, 0x00, 0x02, 0x22, 0x33, 0x03, - 0x30, 0x00, 0x02, 0x92, 0x00, 0x55, 0x55, 0x65, - 0x55, 0x55, 0x55, 0x46, 0x47, 0x55, 0xe1, 0x1c, - 0xcc, 0xdc, 0x11, 0xc1, 0xaa, 0xcc, 0xcc, 0xcc, - 0xdd, 0xdd, 0xd1, 0x23, 0x09, 0x92, 0x33, 0x03, - 0x00, 0x00, 0x09, 0x92, 0x00, 0x55, 0x54, 0x45, - 0x55, 0x55, 0x57, 0x74, 0xab, 0xdd, 0xc1, 0x11, - 0x6b, 0x11, 0xa1, 0x11, 0xa1, 0xcc, 0xcc, 0xcc, - 0xcc, 0xcc, 0x1b, 0x23, 0x0f, 0x92, 0x33, 0x03, - 0x30, 0x00, 0x09, 0xf2, 0x33, 0x55, 0x54, 0x44, - 0x45, 0x66, 0x45, 0x7a, 0xd1, 0xcc, 0xaa, 0x11, - 0xa1, 0xc1, 0xab, 0xc1, 0x11, 0xcc, 0xcc, 0xdc, - 0xdd, 0xdc, 0x11, 0x23, 0x0f, 0x92, 0x33, 0x08, - 0x33, 0x30, 0x0f, 0x92, 0x33, 0x55, 0x55, 0x77, - 0x77, 0x77, 0x55, 0xe7, 0x75, 0x1a, 0xaa, 0x11, - 0x1a, 0xae, 0x5e, 0xee, 0xee, 0xaa, 0xaa, 0xaa, - 0xa1, 0x1a, 0xa6, 0x23, 0x0f, 0x92, 0x83, 0x03, - 0x33, 0x30, 0x29, 0xf2, 0x00, 0x54, 0x55, 0x77, - 0x77, 0x77, 0x77, 0x54, 0x57, 0xe1, 0x11, 0x1c, - 0xca, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x77, 0x55, 0xee, 0x03, 0x0f, 0xf9, 0x33, 0x03, - 0x03, 0x33, 0x09, 0xf2, 0x00, 0x54, 0x57, 0x77, - 0x75, 0x55, 0x55, 0x55, 0x44, 0x7a, 0x1c, 0x1c, - 0xca, 0x55, 0xaa, 0xaa, 0xee, 0xaa, 0xaa, 0xee, - 0x57, 0x57, 0x75, 0x03, 0x0f, 0xf9, 0x83, 0x33, - 0x33, 0x33, 0x1f, 0x99, 0x00, 0x74, 0x57, 0x77, - 0x55, 0x55, 0x55, 0x55, 0x55, 0x57, 0xe1, 0xc1, - 0x11, 0xe7, 0x55, 0xee, 0x55, 0x55, 0x55, 0x55, - 0x55, 0x44, 0x44, 0x23, 0x0f, 0xff, 0x33, 0x03, - 0x03, 0x38, 0x0f, 0x99, 0x00, 0x54, 0x47, 0x77, - 0x54, 0x44, 0x44, 0x44, 0x44, 0x65, 0xec, 0xc1, - 0x11, 0xa7, 0x77, 0x77, 0x77, 0x55, 0xfe, 0x55, - 0x77, 0x77, 0x54, 0x23, 0x0f, 0xff, 0x30, 0x03, - 0x00, 0x33, 0x0f, 0xf2, 0x00, 0x55, 0x45, 0x75, - 0x55, 0x44, 0x54, 0x54, 0x45, 0x47, 0x51, 0x11, - 0xc1, 0x15, 0x7e, 0x54, 0x44, 0x4b, 0xbb, 0xbb, - 0x44, 0xb6, 0x45, 0xa3, 0x2f, 0x99, 0x80, 0x83, - 0x30, 0x33, 0x0f, 0xf2, 0x00, 0x54, 0x45, 0x7e, - 0x55, 0x64, 0x54, 0x46, 0x65, 0x47, 0x5a, 0x1c, - 0xc1, 0xa5, 0x5a, 0x55, 0x55, 0x45, 0x66, 0x44, - 0x55, 0x45, 0x65, 0xa3, 0x2f, 0x9f, 0x33, 0x83, - 0x03, 0x33, 0x2f, 0xe2, 0x00, 0x55, 0x44, 0x5e, - 0xe5, 0x54, 0x44, 0x54, 0x45, 0x47, 0x55, 0x1c, - 0xc1, 0xa5, 0x74, 0x55, 0x55, 0x45, 0x4b, 0x44, - 0x55, 0x65, 0x55, 0xa8, 0x0e, 0xff, 0x30, 0x83, - 0x00, 0x33, 0x29, 0x92, 0x00, 0x44, 0x47, 0x5e, - 0x55, 0x55, 0x44, 0x54, 0x55, 0x47, 0x55, 0x1c, - 0x11, 0xa5, 0x75, 0x77, 0x77, 0x55, 0x55, 0x44, - 0x57, 0x77, 0x76, 0xa8, 0x0e, 0xf9, 0x30, 0x88, - 0x23, 0x33, 0x19, 0x92, 0x0c, 0x45, 0x47, 0x4e, - 0x55, 0x55, 0x7e, 0x65, 0x55, 0x57, 0x77, 0x55, - 0x55, 0x55, 0xee, 0xa1, 0x11, 0xcc, 0xc1, 0xdd, - 0xdc, 0xc1, 0x44, 0xa8, 0x09, 0xf9, 0x30, 0x88, - 0x03, 0x33, 0x0f, 0x99, 0x0c, 0x44, 0x47, 0x45, - 0x5a, 0xcb, 0x64, 0x55, 0x56, 0xee, 0xbb, 0xec, - 0xdc, 0xdc, 0xb1, 0xc1, 0xaa, 0x1a, 0x1a, 0x1d, - 0xcc, 0xcc, 0xdc, 0xa8, 0x09, 0xf9, 0x03, 0x88, - 0x33, 0x03, 0x0f, 0xf9, 0x03, 0x44, 0x55, 0xe5, - 0x5d, 0xdc, 0xdd, 0xd1, 0xcd, 0xcd, 0xdd, 0xcd, - 0xdc, 0xa1, 0xaa, 0xc1, 0xac, 0x1c, 0x1a, 0xac, - 0xdc, 0xcc, 0xcb, 0x28, 0x09, 0xf9, 0x00, 0x88, - 0x33, 0x03, 0x0f, 0xf9, 0x0c, 0x44, 0x75, 0xf5, - 0x5d, 0x11, 0xcc, 0xa1, 0xc1, 0x1c, 0xc1, 0x11, - 0xcc, 0xa1, 0xba, 0x11, 0x11, 0x1a, 0xaa, 0xe1, - 0xdc, 0xc1, 0xcb, 0x28, 0x19, 0xf9, 0x00, 0x83, - 0x33, 0x03, 0x1f, 0xf2, 0x00, 0x44, 0x75, 0x55, - 0x5d, 0xca, 0xcd, 0x1c, 0x11, 0x1c, 0x11, 0x1c, - 0xcc, 0x11, 0x11, 0xab, 0xca, 0x22, 0xaa, 0xa2, - 0xdd, 0xcc, 0xcb, 0x23, 0x29, 0xf9, 0x30, 0x83, - 0x33, 0x03, 0x1f, 0xf2, 0x03, 0x44, 0x55, 0xe7, - 0xed, 0xca, 0xc1, 0x11, 0xaa, 0x1a, 0xaa, 0xea, - 0xe4, 0xe5, 0x55, 0x55, 0x57, 0x77, 0x77, 0x7e, - 0xaa, 0xa1, 0xca, 0x23, 0x19, 0x99, 0x03, 0x83, - 0x33, 0x38, 0x0f, 0xf2, 0x33, 0x44, 0x55, 0xf7, - 0xad, 0xc1, 0xca, 0x75, 0x77, 0x57, 0x75, 0x55, - 0xab, 0x1a, 0x75, 0x55, 0x55, 0x57, 0x77, 0x77, - 0xb4, 0x57, 0x5e, 0xa3, 0x09, 0xee, 0x33, 0x83, - 0x33, 0x38, 0x0f, 0xf2, 0x33, 0x44, 0x54, 0xf7, - 0xac, 0xc1, 0x1a, 0x5e, 0x56, 0x77, 0x7c, 0xcd, - 0xdd, 0xce, 0x55, 0x45, 0x55, 0x57, 0x57, 0x74, - 0xdd, 0xdd, 0xda, 0xa8, 0x09, 0xee, 0x33, 0x83, - 0x33, 0x33, 0x0f, 0xf9, 0x83, 0x64, 0x5e, 0x57, - 0xac, 0x11, 0xc5, 0x75, 0x55, 0x77, 0x5c, 0x11, - 0xcc, 0x17, 0x55, 0x55, 0xaa, 0xbb, 0x47, 0x7a, - 0xdc, 0xcc, 0xcc, 0xa3, 0x0e, 0x92, 0x33, 0x38, - 0x38, 0x03, 0x0f, 0xf9, 0x30, 0x65, 0xee, 0x55, - 0x1c, 0xc1, 0x15, 0x56, 0x57, 0x77, 0x5c, 0xb1, - 0x1c, 0xa7, 0x6b, 0x6b, 0xa4, 0x66, 0x45, 0x7c, - 0xcc, 0xcc, 0xcb, 0xa3, 0x1e, 0x92, 0x30, 0x38, - 0x88, 0x03, 0x09, 0x79, 0x33, 0x65, 0xee, 0x77, - 0xcc, 0x1c, 0x17, 0xbb, 0x55, 0x77, 0x5c, 0x11, - 0x1c, 0xa7, 0x64, 0x45, 0x46, 0x54, 0x47, 0xac, - 0xc1, 0xcc, 0xcb, 0x23, 0x29, 0xee, 0x30, 0x83, - 0x38, 0x03, 0x0f, 0xff, 0x33, 0x67, 0xee, 0x77, - 0xc1, 0xc1, 0xe7, 0xb4, 0x55, 0x57, 0x51, 0x11, - 0x11, 0xe5, 0x64, 0x44, 0x56, 0x44, 0x47, 0x11, - 0x11, 0xcc, 0xcc, 0x28, 0x29, 0xe5, 0x00, 0xd3, - 0x33, 0x03, 0x27, 0xf9, 0x00, 0x67, 0xae, 0x77, - 0x1c, 0xc1, 0xe7, 0xa5, 0x45, 0x57, 0xa1, 0x11, - 0x11, 0x55, 0x65, 0x44, 0x54, 0x64, 0x54, 0xd1, - 0x11, 0xcc, 0xcc, 0xa3, 0x29, 0xee, 0x0c, 0x83, - 0x83, 0x03, 0x07, 0xf9, 0x00, 0x67, 0xae, 0x75, - 0x1c, 0xc1, 0xe5, 0xa5, 0x47, 0x57, 0xe1, 0xa1, - 0x11, 0x5e, 0x64, 0x54, 0x45, 0x66, 0x7b, 0xc1, - 0xa1, 0x11, 0xca, 0x23, 0x2f, 0xee, 0x18, 0x83, - 0x30, 0x03, 0x05, 0x79, 0x00, 0x67, 0xee, 0x75, - 0xcc, 0x11, 0x55, 0x45, 0x67, 0x57, 0x1a, 0x11, - 0x11, 0x5a, 0x64, 0x55, 0x44, 0x46, 0x51, 0xc1, - 0x11, 0x11, 0xc4, 0x23, 0x2f, 0xf2, 0x08, 0x83, - 0x09, 0x33, 0x05, 0x59, 0x30, 0x67, 0xaa, 0x75, - 0xc1, 0x1c, 0xe5, 0x65, 0x47, 0x57, 0xbc, 0x11, - 0x11, 0x5e, 0x64, 0x45, 0x54, 0x44, 0x51, 0xc1, - 0x11, 0x11, 0x14, 0x23, 0x2f, 0xf2, 0x38, 0x83, - 0x30, 0x03, 0x09, 0xf9, 0x33, 0x67, 0xaa, 0x55, - 0xc1, 0x1c, 0x55, 0x64, 0x47, 0xe7, 0xed, 0x11, - 0x11, 0x5b, 0x44, 0x65, 0x57, 0x55, 0xad, 0x11, - 0x11, 0xbc, 0xa5, 0x23, 0x25, 0xf2, 0x88, 0x83, - 0x83, 0x33, 0x09, 0xf9, 0x33, 0x67, 0xee, 0x55, - 0x1c, 0xcc, 0x55, 0xb4, 0x47, 0x57, 0xec, 0xca, - 0x11, 0x55, 0x55, 0x75, 0xea, 0xdd, 0xcd, 0xca, - 0xac, 0x11, 0xee, 0x23, 0x25, 0xf2, 0x88, 0x83, - 0x83, 0x33, 0x09, 0xf9, 0x33, 0x65, 0xee, 0x57, - 0x11, 0xc1, 0xe5, 0xb4, 0x47, 0x57, 0x5c, 0xcb, - 0x1a, 0x77, 0x5a, 0xdd, 0xdc, 0xcc, 0x1c, 0xc1, - 0xac, 0x1b, 0x5e, 0x28, 0x25, 0xf2, 0x8d, 0x83, - 0x83, 0x38, 0x32, 0xf9, 0x00, 0x45, 0xea, 0x77, - 0x11, 0xcc, 0x55, 0xb4, 0x47, 0x57, 0x5c, 0xaa, - 0x55, 0x51, 0x1c, 0xc1, 0x11, 0xcc, 0xb1, 0xcc, - 0xa1, 0xcb, 0x5e, 0x28, 0x2e, 0xf2, 0x8d, 0x83, - 0x33, 0x33, 0xc2, 0xf9, 0x03, 0x54, 0xea, 0x55, - 0x1c, 0x11, 0xe5, 0xb4, 0x47, 0x55, 0x51, 0x55, - 0x1c, 0xd1, 0xa1, 0xc1, 0x1a, 0xcc, 0xaa, 0xc1, - 0x1a, 0x11, 0x75, 0xa3, 0xae, 0xf2, 0x8d, 0x83, - 0x38, 0x33, 0xc2, 0xf9, 0x03, 0x5e, 0xea, 0x57, - 0xc1, 0xca, 0xe7, 0xa4, 0x65, 0x55, 0x55, 0xec, - 0xd1, 0x11, 0xa1, 0xc1, 0x11, 0xcc, 0xaa, 0xcc, - 0x1a, 0x11, 0x7e, 0xa3, 0x1e, 0xf2, 0x8d, 0x83, - 0x38, 0x33, 0xc2, 0xf9, 0x33, 0x46, 0x56, 0x55, - 0x11, 0xc1, 0x17, 0x44, 0x65, 0x55, 0xec, 0xdc, - 0xcc, 0x11, 0x11, 0x11, 0x11, 0xdc, 0x11, 0xc1, - 0xba, 0xca, 0x75, 0xa3, 0xae, 0xf0, 0x88, 0xc0, - 0x33, 0x30, 0xc2, 0xf9, 0x03, 0x44, 0x56, 0x57, - 0xaa, 0xcc, 0x15, 0x54, 0x45, 0x5e, 0xcc, 0xcc, - 0xcc, 0xc1, 0x11, 0x11, 0x1d, 0xcc, 0x1a, 0xaa, - 0x55, 0xee, 0x75, 0xa3, 0xae, 0xf0, 0x88, 0xc3, - 0x33, 0x30, 0x09, 0xf2, 0x03, 0x46, 0x5e, 0x57, - 0xe1, 0x1c, 0xde, 0x55, 0x7e, 0x11, 0xac, 0xcc, - 0xc1, 0x1c, 0xa1, 0x11, 0x11, 0x55, 0x57, 0x75, - 0x77, 0x45, 0x54, 0x23, 0xa9, 0x52, 0x88, 0x33, - 0x33, 0x33, 0x09, 0x52, 0x00, 0x56, 0x75, 0x57, - 0xaa, 0x1c, 0xd1, 0x75, 0xed, 0x1b, 0x1c, 0xcc, - 0xc1, 0x11, 0x11, 0xa5, 0x57, 0x55, 0x66, 0xbb, - 0x64, 0xb6, 0xb6, 0x20, 0xa9, 0x52, 0x88, 0x03, - 0x33, 0x33, 0x19, 0xf2, 0x00, 0x56, 0x45, 0xe5, - 0x5a, 0xa1, 0xc1, 0x5a, 0xc1, 0x11, 0x1c, 0xcc, - 0xc1, 0xbe, 0x45, 0x75, 0x4b, 0xbb, 0x66, 0x64, - 0x55, 0x44, 0x44, 0x20, 0x29, 0xf1, 0x88, 0x33, - 0x03, 0x83, 0x19, 0x92, 0x33, 0x44, 0x67, 0xee, - 0x5a, 0xaa, 0x1c, 0x5a, 0x11, 0x11, 0x1a, 0xcc, - 0xc1, 0xe5, 0x55, 0x4d, 0xb6, 0x44, 0x54, 0x64, - 0x45, 0x44, 0x45, 0x20, 0x29, 0xfa, 0x83, 0x33, - 0x03, 0x33, 0x0e, 0x99, 0x33, 0x44, 0x67, 0xee, - 0x7a, 0xae, 0xac, 0xa4, 0xac, 0x11, 0xba, 0xcc, - 0xa5, 0x5e, 0xc1, 0x56, 0x46, 0xb5, 0x45, 0x44, - 0x44, 0x57, 0x5e, 0x20, 0x29, 0xe9, 0x83, 0x33, - 0x03, 0x83, 0x0e, 0x92, 0x03, 0x44, 0xb7, 0x5e, - 0x7e, 0xba, 0xa1, 0x15, 0x11, 0xca, 0xaa, 0x1a, - 0x7e, 0x1a, 0xcc, 0x55, 0xbb, 0x45, 0x44, 0x44, - 0x57, 0x57, 0x55, 0xa0, 0x2e, 0xe9, 0x30, 0x33, - 0x03, 0x80, 0x0e, 0x22, 0x30, 0x44, 0x64, 0x5e, - 0x75, 0xaa, 0xa1, 0xe5, 0x11, 0xc1, 0xaa, 0xe7, - 0xab, 0xae, 0xcc, 0x15, 0x64, 0x44, 0x64, 0x55, - 0x55, 0x55, 0xba, 0x20, 0x1e, 0xee, 0x33, 0x03, - 0x03, 0x30, 0x0e, 0x92, 0x30, 0x44, 0x45, 0x5e, - 0x55, 0xab, 0xa1, 0xee, 0xac, 0xcc, 0xe5, 0x77, - 0xaa, 0xaa, 0xcc, 0xce, 0x55, 0x64, 0x57, 0x55, - 0x5e, 0xcd, 0xca, 0x20, 0x2e, 0xe2, 0x33, 0x03, - 0x00, 0x33, 0x3e, 0x92, 0x30, 0x45, 0x44, 0x75, - 0x57, 0xea, 0xac, 0xae, 0x51, 0xcc, 0xf7, 0x57, - 0x5e, 0xab, 0xcc, 0xcb, 0x77, 0x57, 0x55, 0x7a, - 0xcd, 0xcb, 0xb6, 0x23, 0x2e, 0xe2, 0x33, 0x33, - 0x00, 0x33, 0x0e, 0x22, 0x33, 0x44, 0x44, 0x57, - 0x55, 0xea, 0xcc, 0xca, 0x5a, 0xce, 0x77, 0xee, - 0x5e, 0xab, 0x1c, 0xda, 0xe5, 0x55, 0x5e, 0xdd, - 0xcc, 0x11, 0x16, 0x23, 0x2e, 0xe1, 0x33, 0x33, - 0x03, 0x38, 0x09, 0x99, 0x33, 0x44, 0x44, 0x55, - 0xec, 0x5b, 0x1c, 0x1a, 0xe5, 0xe5, 0x46, 0x7e, - 0x57, 0xaa, 0xc1, 0xca, 0xc7, 0x55, 0x1d, 0xcc, - 0xcc, 0xcc, 0xcb, 0xa3, 0x0e, 0xe2, 0x03, 0x33, - 0x00, 0x88, 0x09, 0x99, 0x33, 0x44, 0x44, 0x55, - 0xcd, 0x5a, 0x1c, 0x11, 0x1e, 0x7a, 0x64, 0x57, - 0x55, 0xea, 0xc1, 0xc1, 0xca, 0x4c, 0xcc, 0xdc, - 0xc1, 0xcc, 0xbb, 0xa3, 0x0e, 0x22, 0x03, 0x33, - 0x30, 0x88, 0x1f, 0xe2, 0x00, 0x64, 0x44, 0x7e, - 0xcd, 0xa5, 0x1c, 0x1a, 0x1a, 0x7b, 0x45, 0x47, - 0x55, 0x7e, 0x11, 0x11, 0xc1, 0xae, 0x1d, 0x1c, - 0xc1, 0xcc, 0xae, 0x23, 0x09, 0x22, 0x33, 0x33, - 0x30, 0x88, 0x1f, 0xe2, 0x00, 0x44, 0x44, 0x7a, - 0xcc, 0xc5, 0x1c, 0x1a, 0x11, 0x47, 0x64, 0x44, - 0x55, 0x75, 0x1a, 0x1c, 0xcc, 0xc5, 0x1c, 0x1c, - 0xc1, 0x1e, 0x74, 0x23, 0x09, 0x22, 0x03, 0x03, - 0x30, 0x88, 0x1f, 0xe9, 0x30, 0x44, 0x64, 0xf1, - 0xcd, 0xce, 0x1c, 0x1a, 0x11, 0xc5, 0x56, 0x44, - 0x75, 0x55, 0xe1, 0x11, 0xcc, 0xcc, 0x5b, 0xac, - 0x15, 0x77, 0x56, 0x20, 0x0f, 0x92, 0x33, 0x00, - 0x30, 0x88, 0x1e, 0xe9, 0x00, 0x44, 0x67, 0xa1, - 0xcd, 0xcc, 0x4c, 0xaa, 0xaa, 0xca, 0x76, 0x44, - 0x77, 0x77, 0x7e, 0x1b, 0x11, 0xcc, 0xae, 0xaa, - 0x57, 0xbd, 0x56, 0x23, 0x0f, 0x92, 0x33, 0x03, - 0x30, 0x38, 0xae, 0xe9, 0x00, 0x44, 0x45, 0x1a, - 0x1c, 0xdd, 0xac, 0x1a, 0xa1, 0xc1, 0x55, 0x65, - 0x77, 0x5a, 0x17, 0xa1, 0x1c, 0xdc, 0xce, 0x57, - 0x75, 0xb4, 0x5b, 0x23, 0x1f, 0x92, 0x33, 0x03, - 0x30, 0x38, 0xae, 0xe2, 0x00, 0x44, 0x5e, 0x11, - 0xa1, 0x11, 0xa5, 0xaa, 0xa1, 0xcc, 0xa5, 0x75, - 0x75, 0xac, 0x1a, 0x51, 0x1c, 0x11, 0x11, 0x57, - 0x57, 0x44, 0x5b, 0x23, 0x1f, 0x92, 0x33, 0x03, - 0x30, 0x38, 0xae, 0xf9, 0x03, 0x46, 0x7a, 0xa1, - 0x1c, 0xc1, 0xc5, 0xa1, 0xa1, 0xcc, 0x1a, 0x75, - 0x5c, 0xc1, 0x1c, 0xae, 0xcc, 0xc1, 0xcc, 0xe7, - 0x77, 0x44, 0x56, 0x20, 0x0f, 0xf2, 0x33, 0x23, - 0x30, 0x33, 0x1e, 0xf9, 0x03, 0x44, 0x5b, 0xa1, - 0x11, 0x11, 0xca, 0x5a, 0xaa, 0x11, 0xa1, 0x55, - 0xcc, 0x11, 0xaa, 0xce, 0xec, 0xc1, 0x11, 0xe5, - 0x77, 0x66, 0x65, 0x23, 0x0f, 0x92, 0x30, 0x03, - 0x33, 0x03, 0xce, 0xf9, 0x03, 0x45, 0x51, 0xa1, - 0x11, 0x11, 0x15, 0x7e, 0xaa, 0x11, 0x1e, 0x51, - 0xdc, 0x11, 0xaa, 0xbb, 0x5a, 0xca, 0xaa, 0xea, - 0xe7, 0x45, 0x66, 0x00, 0x0f, 0x92, 0x30, 0x03, - 0x33, 0x08, 0xce, 0xf9, 0x03, 0x64, 0xad, 0xdd, - 0xcc, 0xdd, 0xde, 0x5e, 0xcc, 0x1c, 0xa5, 0x1d, - 0xcc, 0xcc, 0x1c, 0xbb, 0x55, 0x1d, 0xcc, 0x11, - 0xde, 0x76, 0x46, 0x00, 0x0f, 0xf2, 0x30, 0x03, - 0x03, 0x38, 0x1f, 0xf9, 0x03, 0x65, 0xad, 0xcc, - 0xcc, 0xcc, 0xc5, 0x55, 0xec, 0xc1, 0x5b, 0xdc, - 0xcc, 0xc1, 0x11, 0xe7, 0x55, 0x5a, 0xc1, 0xbc, - 0xcd, 0xe7, 0x44, 0x13, 0x3f, 0xf2, 0x30, 0x03, - 0x33, 0x38, 0x1f, 0xf9, 0x03, 0x65, 0xad, 0xcc, - 0xcc, 0xcc, 0xc5, 0x55, 0x5a, 0xc5, 0xad, 0xcc, - 0xcc, 0xcc, 0xae, 0x75, 0xea, 0x55, 0xa1, 0x1c, - 0x1c, 0xce, 0x54, 0x03, 0x39, 0x92, 0x80, 0x08, - 0x33, 0x3c, 0x0f, 0xe9, 0x33, 0xb7, 0x1d, 0xcd, - 0xcd, 0xcc, 0x17, 0x55, 0x55, 0xee, 0xcc, 0xcc, - 0x1c, 0xcc, 0xe7, 0x6b, 0x55, 0xe5, 0x5a, 0xcc, - 0xbc, 0xcc, 0xa5, 0x13, 0x09, 0x99, 0x80, 0x03, - 0x03, 0x3d, 0x0f, 0xe9, 0x33, 0x67, 0xac, 0x1c, - 0xcc, 0xcc, 0x17, 0x55, 0x75, 0x5c, 0x1c, 0x1c, - 0x11, 0x1e, 0x75, 0xb6, 0xa5, 0xee, 0x55, 0x11, - 0x1c, 0xba, 0x15, 0x63, 0x09, 0xf9, 0x80, 0x03, - -}; - -Gfx jrb_dl_E050_O021_CI_ci4_pal_rgba16_aligner[] = {gsSPEndDisplayList()}; -u8 jrb_dl_E050_O021_CI_ci4_pal_rgba16[] = { - 0x62, 0x4f, 0x5a, 0x51, 0x49, 0xcb, 0x6a, 0xd1, - 0x29, 0x4b, 0x21, 0x07, 0x39, 0xcf, 0x00, 0x01, - 0x7b, 0x55, 0x39, 0x47, 0x41, 0xcd, 0x52, 0x53, - 0x6a, 0xd5, 0x7b, 0x59, 0x31, 0x49, 0x29, 0x05, - -}; From fe59265d2bc297877db74268fe4f995d865235ca Mon Sep 17 00:00:00 2001 From: scut Date: Sat, 28 Mar 2026 16:14:55 -0400 Subject: [PATCH 29/30] fixed array ptr offsets, better handling of textures when mipmaps are used, fixed bug with nested args in macros, fixed bug with texture array args, fixed bug with gsSPSetOthermode, added support for ifndef Macros in preparser, added support for skip level script cmds and ability to advance parser w/ returns, better traceback handling for recursive errors --- fast64_internal/f3d/f3d_import.py | 112 +++++++++++++------- fast64_internal/sm64/sm64_level_importer.py | 34 ++++-- fast64_internal/utility_importer.py | 38 +++++-- 3 files changed, 130 insertions(+), 54 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 8105f6f1d..7a2260aa8 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -18,11 +18,13 @@ from ..f3d.f3d_gbi import get_F3D_GBI from ..f3d.f3d_enums import ( enumAlphaCompare, + enumAlphaDither, enumRGBDither, enumCombKey, enumTextConv, enumTextFilt, enumTextLUT, + enumTextLOD, enumTextDetail, enumTextPersp, enumCycleType, @@ -196,6 +198,10 @@ def determine_size(self): else: siz_adjust = 1 if bit_size == 8 else 0 texels = (self.texels + 1) << siz_adjust + # you may have the size already figured out due to image data provided by the ROM + if self.width and self.height: + self.num_bytes = int(bit_size * self.width * self.height) + return if self.dxt == 0: # this just allows export but in no way is this a normal texture # nor will it properly show up in blender as an import @@ -262,6 +268,7 @@ def __init__(self, layer: int = None, bin_file: BinaryIO = None): self.num_lights = 1 self.light_col = {} self.ambient_light = tuple() + self.name = None if not layer: self.layer = self._base_layer else: @@ -308,32 +315,29 @@ def mat_hash_f3d(self, f3d: F3DMaterialProperty): pass def EvalGeo(self, mode): - for a in self.GeoSet: - if mode in a.lower(): - return True - for a in self.GeoClear: - if mode in a.lower(): - return False + if mode in self.GeoSet: + return True + if mode in self.GeoClear: + return False else: return True - chkT = lambda x, y, d: x.__dict__.get(y, d) rendermode = getattr(self, "RenderMode", ["G_RM_AA_ZB_OPA_SURF", "G_RM_AA_ZB_OPA_SURF2"]) MyProps = ( MyT, *self.Combiner[0:8], *rendermode, - EvalGeo(self, "g_lighting"), - EvalGeo(self, "g_shade"), - EvalGeo(self, "g_shade_smooth"), - EvalGeo(self, "g_zbuffer"), + EvalGeo(self, "G_LIGHTING"), + EvalGeo(self, "G_SHADE"), + EvalGeo(self, "G_SHADE_SMOOTH"), + EvalGeo(self, "G_ZBUFFER"), chkT(self, "g_mdsft_alpha_compare", "G_AC_NONE"), chkT(self, "g_mdsft_zsrcsel", "G_ZS_PIXEL"), chkT(self, "g_mdsft_alpha_dither", "G_AD_NOISE"), - self.tiles[0].Shigh, - self.tiles[0].Thigh, - self.tiles[0].Slow, - self.tiles[0].Tlow, + (self.tiles[0].Shigh/4), + (self.tiles[0].Thigh/4), + (self.tiles[0].Slow/4), + (self.tiles[0].Tlow/4), ) dupe = hash(MyProps) == hash(F3Dprops) return dupe @@ -356,12 +360,11 @@ def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Tex return self.load_texture_array( force_new_tex, textures, - path, tex, DataParser._c_parsing if not self.bin_file else DataParser._binary_parsing, ) - def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, tex: Texture, parse_target: int): + def load_texture_array(self, force_new_tex: bool, textures: dict, tex: Texture, parse_target: int): """ Create a new/find image object and then fill pixel buffer with array data """ @@ -369,7 +372,8 @@ def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, te # for some reason I can't get the parsing target to be what I want, so read props instead # based on naming structure, you shouldn't have repeat texture names since they're ROM addresses if parse_target == DataParser._binary_parsing: - name = f"tex_img_0x{tex.tex_img:X}" + prefix = f"{self.name}_" if self.name else "" + name = f"{prefix}tex_img_0x{tex.tex_img:X}" if i := bpy.data.images.get(name, None): return i tex_img = tex.tex_img @@ -378,7 +382,10 @@ def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, te pal_img = self.pal.tex_img if self.pal else None if pal_img: # determine if CI4 or CI8 and num colors - pal_img = self.bin_file[pal_img : pal_img + 32] + if "16b" in tex.siz: + pal_img = self.bin_file[pal_img : pal_img + 0x200] + else: + pal_img = self.bin_file[pal_img : pal_img + 32] image_texels = convert_tex_bin( tex.fmt, tex.width, @@ -387,7 +394,7 @@ def load_texture_array(self, force_new_tex: bool, textures: dict, path: Path, te tex_img, pal_stream=pal_img if pal_img else None, ) - name = f"tex_img_0x{tex.tex_img:X}" + name = f"{prefix}tex_img_0x{tex.tex_img:X}" else: name = tex.tex_img if (i := bpy.data.images.get(name, None)) and not force_new_tex: @@ -426,10 +433,10 @@ def apply_PBSDF_Mat(self, mat: bpy.types.Material, tex_path: Path, tex: Texture) if image: tex_node.image = image - def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_path: Path): + def apply_material_settings(self, mat: bpy.types.Material, textures: dict, tex_path: Path, layer: int = 1): f3d = mat.f3d_mat - self.set_texture_tile_mapping() + # self.set_texture_tile_mapping() self.set_register_settings(mat, f3d) self.set_textures(f3d, textures, tex_path) @@ -449,8 +456,11 @@ def set_register_settings(self, mat: bpy.types.Material, f3d: F3DMaterialPropert # since fast64 uses tile0 as tex0 always, so to get expected # results we need to start tex0 at the proper base tile def set_texture_tile_mapping(self): + use_mag = self.other_mode.get("g_mdsft_textdetail", None) == "G_TD_SHARPEN" for index, tile in enumerate(self.tiles): - tex_index = index - self.base_tile + # turn off mip mapping since fast64 doesn't emulate it + # tex_index = index - self.base_tile + use_mag + tex_index = index if tex_index < 0: continue tex = self.tmem.get(tile.tmem, None) @@ -695,6 +705,8 @@ def apply_mesh_data( self.Mats.append([len(tris), 0]) for i, t in enumerate(tris): if i > self.Mats[ind + 1][0]: + # set the texture tile mapping so mat.tex0 and mat.tex1 exist for mat hashing + self.Mats[ind + 1][1].set_texture_tile_mapping() new = self.create_new_f3d_mat(self.Mats[ind + 1][1], obj, force_new_tex) ind += 1 if not new: @@ -728,7 +740,7 @@ def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv l[uv_map].uv = [a * (1 / (32 * b)) if b > 0 else a * 0.001 * 32 for a, b in zip(uv, WH)] # idk why this is necessary. N64 thing or something? if self.parsing_target == DataParser._binary_parsing: - flip = lambda x: x + flip = lambda x: x - 1 else: flip = lambda x: x * -1 + 1 l[uv_map].uv[1] = flip(l[uv_map].uv[1]) @@ -736,7 +748,7 @@ def apply_loop_data(self, mat: bpy.Types.Material, mesh: bpy.Types.Mesh, tri, uv l[v_alpha] = [vcol[3] / 255 for i in range(4)] # create a new f3d_mat given an SM64_Material class but don't create copies with same props - def create_new_f3d_mat(self, mat: SM64_Material, obj: bpy.types.Object, force_new_tex: bool): + def create_new_f3d_mat(self, mat: Mat, obj: bpy.types.Object, force_new_tex: bool): if not force_new_tex: # check if this mat was used already in another mesh (or this mat if DL is suboptimal or something) # even looping n^2 is probably faster than duping 3 mats with blender speed @@ -865,8 +877,8 @@ def setup_unpack_dicts(self): ), # leads w/ rdp half cmd, deal with later f3d_gbi.G_TRI1: ( "gsSP1Triangle", - PackedFormat(">7B", make_str=False, post_unpack=lambda args: [a // 2 for a in args]), - ), # v123 flag pad567 + PackedFormat(">7B", make_str=False, reorder=(4, 5 ,6 ,3), post_unpack=lambda args: [a // 2 for a in args]), + ), # pad123 flag v123 f3d_gbi.G_TRI2: ( "gsSP2Triangles", PackedFormat(">7B", make_str=False, post_unpack=lambda args: [a // 2 for a in args]), @@ -1009,10 +1021,7 @@ def binary_cmd_unpack( cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) return cmd_args, packed_fmt.format_size - def parse_stream_DL(self, start_name: Union[str, int]): - """ - Initialize vars and then parse data stream - """ + def init_stream(self): self.VertBuff = [0] * 32 # turbo 3d in shambles self.Verts = [] self.Tris = [] @@ -1023,6 +1032,18 @@ def parse_stream_DL(self, start_name: Union[str, int]): self.Lights.update(self.Light_t) self.Lights.update(self.Ambient_t) self.last_mat.bin_file = self.bin_file + + def parse_stream_DL(self, start_name: Union[str, int]): + """ + Initialize vars and then parse data stream + """ + self.init_stream() + self.parse_stream(self.get_new_stream(start_name), start_name) + + def continue_stream_DL(self, start_name: Union[str, int]): + """ + Parse stream assuming vars already initialized + """ self.parse_stream(self.get_new_stream(start_name), start_name) def gsSPEndDisplayList(self, macro: Macro): @@ -1077,8 +1098,12 @@ def gsSPVertexBin(self, macro: Macro): return self._continue_parse def gsSPVertex(self, macro: Macro): - # vertex references commonly use pointer arithmatic. I will deal with that case here, but not for other things unless it somehow becomes a problem later - if "+" in macro.args[0]: + # check for ptr arithmatic via array offsets + if "&" in macro.args[0]: + offset = hexOrDecInt(re.search("\\[[0-9a-fx]*\\]", macro.args[0]).group(0)[1:-1]) + ref = re.split("\\[[0-9a-fx]*\\]", macro.args[0])[0].split("&")[1] + # if there is a plus sign check that + elif "+" in macro.args[0]: ref, offset = macro.args[0].split("+") offset = hexOrDecInt(offset) else: @@ -1310,12 +1335,27 @@ def gsSPSetOtherMode_L(self, macro: Macro): return self._continue_parse # this is kind of wacky? - def gsDPSetOtherMode(self, macro: Macro): + def gsSPSetOtherMode(self, macro: Macro): self.NewMat = 1 if macro.args[0] == "G_SETOTHERMODE_H": + valid_modes = [ + enumAlphaDither, + enumRGBDither, + enumCombKey, + enumTextConv, + enumTextFilt, + enumTextLUT, + enumTextLOD, + enumTextDetail, + enumTextPersp, + enumCycleType, + enumPipelineMode, + ] for i, othermode in enumerate(macro.args[3].split("|")): - # this may cause an issue if someone uses a wacky custom othermode H + # this may cause an issue if someone uses a wacky custom othermode H or has it out of order mode_h_attr = RDPSettings.other_mode_h_attributes[i][1] + if othermode.strip() not in {a[0] for a in valid_modes[i]}: + continue self.last_mat.other_mode[mode_h_attr] = othermode.strip() else: if int(macro.args[2]) > 3: @@ -1550,7 +1590,7 @@ def gsDPLoadTLUTCmd(self, macro: Macro): tex.tile = self.last_mat.tiles[tile_index] tex.pal = True self.last_mat.pal = tex - self.last_mat.tmem[tex.tile.tmem] = tex + self.last_mat.loadtex = None else: print( "**--Load block before set t img, DL is partial and missing context" diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index 641db204c..a6dc82536 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -310,6 +310,7 @@ class Level(DataParser): "LOAD_AREA", "UNLOAD_AREA", "UNLOAD_MARIO_AREA", + "SKIP_NOP", # hacker only cmds with no support needed "CHANGE_AREA_SKYBOX", "SET_ECHO", @@ -456,6 +457,18 @@ def binary_cmd_get(self, parser: Parser) -> tuple[cmd_name:str, PackedFormat]: parser.advance_head(2) return cmd_name, packed_fmt + def binary_cmd_unpack( + self, parser: Parser, cmd_name: str, packed_fmt: PackedFormat + ) -> tuple[cmd_args, cmd_len:int]: + """Unpacks binary data using data supplied by binary_cmd_get""" + # no cmd data + if not packed_fmt.format_str: + cmd_args = [] + else: + cmd_args = self.unpack_type(parser.cur_stream, parser.head, packed_fmt, ret_iterable=True) + # get cmd length from byte 2 of cmd + return cmd_args, self.unpack_type(parser.cur_stream, parser.head - 1, ">B", make_str=False) - 2 + def load_segment_two(self, bin_file: BinaryIO): """Loads segment two which is based on asm ran during game start""" start = self.unpack_type(bin_file, 0x3AC2, ">H", make_str=False) << 16 @@ -556,6 +569,13 @@ def JUMP_LINK(self, macro: Macro, col: bpy.types.Collection): self.parse_level_script(macro.args[-1], col=col) return self._continue_parse + def SKIP(self, macro: Macro, col: bpy.types.Collection): + # returning a val above 3 results in advancing head by value + if self.parsing_target == DataParser._binary_parsing: + return 4 + if self.parsing_target == DataParser._c_parsing: + return self._advance_head + def RETURN(self, macro: Macro, col: bpy.types.Collection): return self._break_parse @@ -759,12 +779,6 @@ def JUMP_LINK_IF(self, macro: Macro, col: bpy.types.Collection): def SKIP_IF(self, macro: Macro, col: bpy.types.Collection): raise Exception("no support yet woops") - def SKIP(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - - def SKIP_NOP(self, macro: Macro, col: bpy.types.Collection): - raise Exception("no support yet woops") - @dataclass class ColTri: @@ -842,7 +856,7 @@ def write_collision( mat.f3d_mat.default_light_color = [a / 255 for a in (hash(id(int(i))) & 0xFFFFFFFF).to_bytes(4, "big")] if col_tri.special_param is not None: mat.use_collision_param = True - mat.collision_param = col_tri.special_param + mat.collision_param = str(col_tri.special_param) # I don't think I care about this. It makes program slow # with bpy.context.temp_override(material=mat): # bpy.ops.material.update_f3d_nodes() @@ -996,13 +1010,13 @@ def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Tex # for some reason I can't get the parsing target to be what I want, so read props instead # would like for this to be better if bpy.context.scene.fast64.sm64.importer.import_target == "Binary": - return self.load_texture_array(force_new_tex, textures, path, tex, DataParser._binary_parsing) + return self.load_texture_array(force_new_tex, textures, tex, DataParser._binary_parsing) else: tex_img = textures.get(tex.tex_img) if tex_img and "#include" in tex_img[0]: return self.load_texture_png(force_new_tex, textures, path, tex) elif tex_img: - return self.load_texture_array(force_new_tex, textures, path, tex) + return self.load_texture_array(force_new_tex, textures, tex, DataParser._c_parsing) else: print(f"No tex_img found for tex {tex}") @@ -1872,6 +1886,7 @@ def GEO_BACKGROUND_BIN(self, macro: Macro, depth: int): self.GEO_BACKGROUND(macro.partial(*macro.args[1:]), depth) else: self.GEO_BACKGROUND_COLOR(macro.partial(*macro.args[1:]), depth) + return self._continue_parse def GEO_BACKGROUND(self, macro: Macro, depth: int): level_root = self.area_root.parent @@ -2277,6 +2292,7 @@ def parse_level_script_binary(bin_file: BinaryIO, scene: bpy.types.Scene, col: b try: lvl.parse_level_script(entry, col=col) except Exception as exc: + print(exc.__cause__, exc.__context__, exc) if type(exc) is not ParseException: raise exc return lvl diff --git a/fast64_internal/utility_importer.py b/fast64_internal/utility_importer.py index 7edf5d870..e3ae12eff 100644 --- a/fast64_internal/utility_importer.py +++ b/fast64_internal/utility_importer.py @@ -8,6 +8,7 @@ from pathlib import Path from typing import TextIO, Any, Union from collections.abc import Sequence +from traceback import format_exc from .utility import transform_mtx_blender_to_n64 @@ -304,6 +305,8 @@ class DataParser(BinProcess): _continue_parse = 1 _break_parse = 2 _exit_parse = 3 # fully stop script + _advance_parse = -1 + # jump ahead X items if value is above 3 _binary_parsing = 0 _c_parsing = 1 @@ -371,9 +374,15 @@ def parse_stream_c(self, dat_stream: Sequence[Any], entry_id: Any, *args, **kwar if not func: raise Exception(f"Macro {cur_macro} not found in parser function") else: - flow_status = func(cur_macro, *args, **kwargs) + try: + flow_status = func(cur_macro, *args, **kwargs) + except Exception as e: + print(format_exc()) + raise Exception(f"Exception on macro: {cur_macro} in stream: {entry_id} on line: {parser.head + 1}") if flow_status == self._break_parse: return + if flow_status == self._advance_parse: + parser.advance_head(1) # entry id in this instance is a pointer, converted to physical address, e.g. file offset def parse_stream_binary(self, bin_file: BinaryIO, entry_id: int, *args, **kwargs): @@ -405,14 +414,24 @@ def parse_stream_binary(self, bin_file: BinaryIO, entry_id: int, *args, **kwargs continue cur_macro = Macro(cmd_name, cmd_args) func = getattr(self, cur_macro.cmd, None) - # print(cur_macro) + print(cur_macro, hex(parser.head), cmd_len) if not func: raise Exception(f"Macro {cur_macro} not found in parser function") - flow_status = func(cur_macro, *args, **kwargs) + try: + flow_status = func(cur_macro, *args, **kwargs) + except Exception as e: + if type(e) == ParseException: + raise e + else: + print(format_exc()) + print(f"Exception on macro: {cur_macro} at location: 0x{parser.head:0X}") + raise ParseException(f"Parsing stopped on exception") if flow_status == self._break_parse: return if flow_status == self._exit_parse: raise ParseException(f"Parsing stopped") + if flow_status > 3: + parser.advance_head(flow_status) def get_cmd_name(cmd_type: int): """gets Macro name from binary data, typically the MSB, not required to be used""" @@ -439,8 +458,8 @@ def c_macro_split(self, macro: str) -> list[str]: # have to deal with nested macros, such as with calc_dxt() in f3d # maybe there is a way to oneline with regex? str_macro = macro[args_start + 1 : macro.rfind(")")] + "," - nested_paren_regex = "\w*\(([^\)]+)\)," - arg_regex = "[\w\s*()-]+" + nested_paren_regex = "[\w\s]*?\([\w\s*()\-<>+\/]+\)\s*?," + arg_regex = "[\w\s*()\\-<>+\\/]+" nested_args = [*re.finditer(nested_paren_regex, str_macro)] if not nested_args: macro_args = macro[args_start + 1 : macro.rfind(")")].split(",") @@ -450,12 +469,12 @@ def c_macro_split(self, macro: str) -> list[str]: macro_args = [] for arg in re.finditer(arg_regex, str_macro): if nested_args: - if arg.span()[0] > nested_args[0].span()[0] or arg.span()[1] > nested_args[0].span()[0]: + if arg.span()[0] >= nested_args[0].span()[0] or arg.span()[1] > nested_args[0].span()[0]: max_pos = nested_args[0].span()[1] macro_args.append(nested_args[0].group()) nested_args.pop(0) continue - if arg.span()[0] > max_pos: + if arg.span()[0] >= max_pos: macro_args.append(arg.group()) return Macro(macro[:args_start], macro_args) @@ -467,8 +486,6 @@ def c_macro_split(self, macro: str) -> list[str]: def evaluate_macro(line: str, macro_check: str): """Preprocessing for C macros, typically ifdef statements on versioning""" - if macro_check in line: - return False if macro_check in line: return False return True @@ -490,6 +507,9 @@ def pre_parse_file(file: TextIO, macro_check: str) -> list[str]: if "#ifdef" in line: skip_macro = evaluate_macro(line, macro_check) continue + if "#ifndef" in line: + skip_macro = not evaluate_macro(line, macro_check) + continue if "#elif" in line: skip_macro = evaluate_macro(line, macro_check) continue From 69c7543f297c559ec75359aa0abb4a2b1e43a554 Mon Sep 17 00:00:00 2001 From: scut Date: Sun, 16 Aug 2026 12:21:40 -0400 Subject: [PATCH 30/30] added feature to remove duplicate imports, intended use case is for room imports --- fast64_internal/f3d/f3d_import.py | 37 +++++++++++---------- fast64_internal/sm64/sm64_level_importer.py | 14 +++++++- 2 files changed, 33 insertions(+), 18 deletions(-) diff --git a/fast64_internal/f3d/f3d_import.py b/fast64_internal/f3d/f3d_import.py index 7a2260aa8..e3e68c810 100644 --- a/fast64_internal/f3d/f3d_import.py +++ b/fast64_internal/f3d/f3d_import.py @@ -321,6 +321,7 @@ def EvalGeo(self, mode): return False else: return True + chkT = lambda x, y, d: x.__dict__.get(y, d) rendermode = getattr(self, "RenderMode", ["G_RM_AA_ZB_OPA_SURF", "G_RM_AA_ZB_OPA_SURF2"]) MyProps = ( @@ -334,10 +335,10 @@ def EvalGeo(self, mode): chkT(self, "g_mdsft_alpha_compare", "G_AC_NONE"), chkT(self, "g_mdsft_zsrcsel", "G_ZS_PIXEL"), chkT(self, "g_mdsft_alpha_dither", "G_AD_NOISE"), - (self.tiles[0].Shigh/4), - (self.tiles[0].Thigh/4), - (self.tiles[0].Slow/4), - (self.tiles[0].Tlow/4), + (self.tiles[0].Shigh / 4), + (self.tiles[0].Thigh / 4), + (self.tiles[0].Slow / 4), + (self.tiles[0].Tlow / 4), ) dupe = hash(MyProps) == hash(F3Dprops) return dupe @@ -877,7 +878,9 @@ def setup_unpack_dicts(self): ), # leads w/ rdp half cmd, deal with later f3d_gbi.G_TRI1: ( "gsSP1Triangle", - PackedFormat(">7B", make_str=False, reorder=(4, 5 ,6 ,3), post_unpack=lambda args: [a // 2 for a in args]), + PackedFormat( + ">7B", make_str=False, reorder=(4, 5, 6, 3), post_unpack=lambda args: [a // 2 for a in args] + ), ), # pad123 flag v123 f3d_gbi.G_TRI2: ( "gsSP2Triangles", @@ -1339,18 +1342,18 @@ def gsSPSetOtherMode(self, macro: Macro): self.NewMat = 1 if macro.args[0] == "G_SETOTHERMODE_H": valid_modes = [ - enumAlphaDither, - enumRGBDither, - enumCombKey, - enumTextConv, - enumTextFilt, - enumTextLUT, - enumTextLOD, - enumTextDetail, - enumTextPersp, - enumCycleType, - enumPipelineMode, - ] + enumAlphaDither, + enumRGBDither, + enumCombKey, + enumTextConv, + enumTextFilt, + enumTextLUT, + enumTextLOD, + enumTextDetail, + enumTextPersp, + enumCycleType, + enumPipelineMode, + ] for i, othermode in enumerate(macro.args[3].split("|")): # this may cause an issue if someone uses a wacky custom othermode H or has it out of order mode_h_attr = RDPSettings.other_mode_h_attributes[i][1] diff --git a/fast64_internal/sm64/sm64_level_importer.py b/fast64_internal/sm64/sm64_level_importer.py index a6dc82536..0413a6be8 100644 --- a/fast64_internal/sm64/sm64_level_importer.py +++ b/fast64_internal/sm64/sm64_level_importer.py @@ -1016,7 +1016,7 @@ def load_texture(self, force_new_tex: bool, textures: dict, path: Path, tex: Tex if tex_img and "#include" in tex_img[0]: return self.load_texture_png(force_new_tex, textures, path, tex) elif tex_img: - return self.load_texture_array(force_new_tex, textures, tex, DataParser._c_parsing) + return self.load_texture_array(force_new_tex, textures, tex, DataParser._c_parsing) else: print(f"No tex_img found for tex {tex}") @@ -2519,6 +2519,9 @@ def write_geo_to_bpy( cleanup: bool = True, ) -> dict[str, bpy.Types.Mesh]: """from a parsed geo layout, parse f3d data and create all the meshes""" + + # tmp + props = scene.fast64.sm64.importer if geo.models: # create a mesh for each one. for model_data in geo.models: @@ -2541,6 +2544,9 @@ def write_geo_to_bpy( meshes.pop(name) continue + # tmp + if props.remove_duplicates and not name: + continue # swap out placeholder mesh data model_data.object.data = mesh @@ -3281,6 +3287,11 @@ class SM64_ImportProperties(PropertyGroup): description="Format import to be friendly for exporting for hacks rather than importing a 1:1 representation", default=True, ) + remove_duplicates: BoolProperty( + name="Remove Duplicates", + description="Experimental feature to remove duplicates from level imports, mostly affects rooms", + default=False, + ) import_linked_actors: BoolProperty( name="Import Actors", description="Imports the models of actors. Actor models will be duplicates", default=True ) @@ -3388,6 +3399,7 @@ def draw_level(self, layout: bpy.types.UILayout): row.prop(self, "force_new_tex") row.prop(self, "as_obj") row.prop(self, "export_friendly") + row.prop(self, "remove_duplicates") if self.import_target == "C": row.prop(self, "import_linked_actors") row.prop(self, "use_collection")