diff --git a/assets/.gitignore b/assets/.gitignore new file mode 100644 index 0000000..91ac966 --- /dev/null +++ b/assets/.gitignore @@ -0,0 +1,4 @@ +/__pycache__/ +/defs/* +/out.bin +/out_is_set.bin diff --git a/assets/animtiles_decode.py b/assets/animtiles_decode.py new file mode 100644 index 0000000..86f1a77 --- /dev/null +++ b/assets/animtiles_decode.py @@ -0,0 +1,80 @@ +from decode_common import * + +BANK = 0x87 + +kInstructionSet = { + 0x8780b2: ('Delete', ''), + 0x8780b7: ('Goto', 'G'), + 0x87813f: ('GotoIfEventHappened', 'HG'), + 0x878150: ('SetEventHappened', 'H'), + 0x8781ba: ('WaitUntilAreaBossDead_DoubleRet', ''), + 0x878303: ('GotoIfBossBitSetInArea', 'BBG'), + 0x878320: ('SpawnTourianStatueEyeGlow', 'H'), + 0x87832f: ('SpawnTourianStatueSoul', 'H'), + 0x87833e: ('GotoIfTourianStatueBusy', 'G'), + 0x878349: ('TourianStatueSetState', 'H'), + 0x878352: ('TourianStatueClearState', 'H'), + 0x87835b: ('Clear3PaletteColors', 'H'), + 0x878372: ('SpawnPalfxObj', 'H'), + 0x87837f: ('Write8PaletteColors', 'H'), +} + +kCommandByName = {v[0] : (k, v[1]) for k, v in kInstructionSet.items()} + +class AnimtilesParser(InstrParserCommon): + instruction_set = kInstructionSet + instruction_set_term = {0x8780b7, 0x8780b2} + TAG = 'animtiles' + + def __init__(self): + super().__init__() + self.current_array_size = None + + def handle_draw_command(self, ins, ea): + drawp = get_word(ea + 2) | (BANK << 16) + assert self.current_array_size != None + self.blobs[drawp] = self.current_array_size + self.print_line(ea, f' {ins} ! {get_ea_name(drawp)}') + return 4 + + def visit(self, ea, cur_size = None): + if cur_size == None: + super().visit(ea) + return + self.current_array_size = cur_size + super().visit(ea) + self.process_queue(final = False) + + def process_queue_entry(self, ea): + assert ea & 0x8000 + while ea not in self.visited: + self.visited.add(ea) + ins = get_word(ea) + if ins & 0x8000: + ea_org = ea + ins = (BANK << 16) | ins + if ins not in self.instruction_set: + raise Exception(f'Ins {ins:X} not in iset at {ea:X}') + name, operands = self.instruction_set[ins] + ea += 2 + r = [] + for op in operands: + if op == 'B': + r.append('%d' % get_byte(ea)) + ea += 1 + elif op == 'H': + r.append('%d' % get_word(ea)) + ea += 2 + elif op == 'G': + addr = (BANK << 16) | get_word(ea) + r.append(get_ea_name(addr, short_label=True)) + self.visit(addr) + ea += 2 + else: + assert 0 + self.print_line(ea_org, f' {name}({", ".join(r)})') + if ins in self.instruction_set_term: + self.print_line(ea_org + 1, '') + break + else: + ea += self.handle_draw_command(ins, ea) diff --git a/assets/consts.py b/assets/consts.py new file mode 100644 index 0000000..005164b --- /dev/null +++ b/assets/consts.py @@ -0,0 +1,376 @@ +kRoomNames = { + (0, 0): "Landing Site", + (0, 1): "Crateria Gauntlet Entrance", + (0, 2): "Parlor And Alcatraz", + (0, 3): "Crateria Power Bomb Room", + (0, 4): "Crateria Save Room", + (0, 5): "West Ocean", + (0, 6): "Bowling Alley Path", + (0, 7): "Crateria Kihunter Room", + (0, 8): "Elevator To Maridia", + (0, 9): "East Ocean", + (0, 10): "Forgotten Highway", + (0, 11): "Crab Maze", + (0, 12): "Tunnel To Maridia Elevator", + (0, 13): "Crateria Tube", + (0, 14): "Crateria Lake", + (0, 15): "Elevator To Red Brinstar", + (0, 16): "Crateria Gauntlet", + (0, 17): "West Ocean Bridge", + (0, 18): "Old Tourian Shaft", + (0, 19): "Old Tourian Boss Room", + (0, 20): "Elevator To Blue Brinstar", + (0, 21): "Silver Torizo Boss Room", + (0, 22): "Torizo Flyway", + (0, 23): "Map Flyway", + (0, 24): "Terminator Room", + (0, 25): "Elevator To Green Brinstar", + (0, 26): "Lower Mushrooms", + (0, 27): "Crateria Map Room", + (0, 28): "Green Pirates Shaft", + (0, 29): "Old Tourian Super Missile", + (0, 30): "Final Missile Bombway", + (0, 31): "The Final Missile", + (0, 48): "Statue Hallway", + (0, 51): "Statue Room", + (1, 0): "Green Brinstar Main Shaft", + (1, 1): "Spore Spawn Super Room", + (1, 2): "Brinstar Pre Map Trap", + (1, 3): "Early Super Room", + (1, 4): "Brinstar Reserve Tank", + (1, 5): "Brinstar Map Room", + (1, 6): "Fireflea Room", + (1, 7): "Brinstar Missile Station", + (1, 8): "Dachora Room", + (1, 9): "Big Pink", + (1, 10): "Spore Spawn Kihunter Room", + (1, 11): "Spore Spawn Boss Room", + (1, 12): "Pink Brinstar Power Bomb Room", + (1, 13): "Green Hill Zone", + (1, 14): "Morph Ball Room", + (1, 15): "Construction Zone", + (1, 16): "Blue Brinstar Energy Tank Room", + (1, 17): "Noob Bridge", + (1, 18): "Green Brinstar Beetom Room", + (1, 19): "Etecoon Energy Tank Room", + (1, 20): "Etecoon Super Room", + (1, 21): "Dachora Energy Station", + (1, 22): "Spore Spawn Refill Room", + (1, 23): "Waterway", + (1, 24): "The First Missile", + (1, 25): "Pink Brinstar Hopper Room", + (1, 26): "Hopper Energy Tank Room", + (1, 27): "Pink Brinstar Save Room", + (1, 28): "Blue Brinstar Boulder Room", + (1, 29): "Blue Brinstar Double Missile Room", + (1, 30): "Green Brinstar Save Room", + (1, 31): "Etecoon Save Room", + (1, 32): "Red Brinstar Shaft", + (1, 33): "Xray Gauntlet", + (1, 34): "Xray Puzzle", + (1, 35): "Hellway", + (1, 36): "Catapiller Room", + (1, 37): "Beta Power Bomb Room", + (1, 38): "Alpha Power Bomb Room", + (1, 39): "Red Brinstar Bat Room", + (1, 40): "Below Spazer", + (1, 41): "Spazer Beam Room", + (1, 42): "Warehouse Zeela Room", + (1, 43): "Warehouse Energy Tank Room", + (1, 44): "Warehouse Kihunter Room", + (1, 45): "Mini Kraid Hallway", + (1, 46): "Kraid Boss Door", + (1, 47): "Kraid Boss Room", + (1, 49): "Red Brinstar Energy Station", + (1, 50): "Kraid Refill Room", + (1, 52): "Kraid Hideout Entrance", + (1, 53): "Varia Suit Room", + (1, 54): "Kraid Save Room", + (1, 55): "Red Brinstar Save Room", + (2, 0): "Ice Beam Acid Room", + (2, 1): "Cathedral Entrance", + (2, 2): "Cathedral", + (2, 3): "Business Center", + (2, 4): "Ice Beam Gate Room", + (2, 5): "Ice Beam Tutorial Room", + (2, 6): "Ice Beam Room", + (2, 7): "Ice Beam Snake Room", + (2, 8): "Crumble Shaft", + (2, 9): "Crocomire Speedway", + (2, 10): "Crocomire Boss Room", + (2, 11): "High Jump Room", + (2, 12): "Crocomire Escape", + (2, 13): "Hi Jump Energy Tank Room", + (2, 14): "Post Crocomire Farming Room", + (2, 15): "Post Crocomire Save Room", + (2, 16): "Post Crocomire Power Bomb Room", + (2, 17): "Post Crocomire Shaft", + (2, 18): "Post Crocomire Missile Room", + (2, 19): "Grapple Tutorial Room 3", + (2, 20): "Grapple Jump Cavern", + (2, 21): "Grapple Tutorial Room 2", + (2, 22): "Grapple Tutorial Room 1", + (2, 23): "Grapple Beam Room", + (2, 24): "Norfair Reserve Tank", + (2, 25): "Green Bubbles Missile Room", + (2, 26): "Bubble Mountain", + (2, 27): "Speedbooster Hall", + (2, 28): "Speedbooster Room", + (2, 29): "Single Chamber", + (2, 30): "Double Chamber", + (2, 31): "Wave Beam Room", + (2, 32): "Spiky Platforms Tunnel", + (2, 33): "Volcano Room", + (2, 34): "Kronic Boost Room", + (2, 35): "Magdollite Tunnel", + (2, 36): "Purple Shaft", + (2, 37): "Lava Dive Room", + (2, 38): "Elevator To Lower Norfair", + (2, 39): "Upper Norfair Farming Room", + (2, 40): "Rising Tide", + (2, 41): "Acid Snakes Tunnel", + (2, 42): "Spiky Acid Snakes Tunnel", + (2, 43): "Upper Norfair Energy Station", + (2, 44): "Purple Refill Room", + (2, 45): "Bubble Mountian Bat Room", + (2, 46): "Norfair Map Room", + (2, 47): "Bubble Mountian Save Room", + (2, 48): "Speedbooster Rubble Hallway", + (2, 49): "Red Pirate Shaft", + (2, 50): "Rocky Norfair Save Room", + (2, 51): "Pre Crocomire Save Room", + (2, 52): "Ridley Hideout Save Room", + (2, 53): "Golden Chozo Statue", + (2, 54): "Lower Norfair Main Hall", + (2, 55): "Gold Torizo Boss Room", + (2, 56): "Fast Ripper Room", + (2, 57): "Golden Torizo Energy Station", + (2, 58): "Ridley Boss Room", + (2, 59): "Ridley Boss Door", + (2, 60): "Fast Pillars Setup Room", + (2, 62): "Mickey Mouse", + (2, 63): "Pillar Room", + (2, 64): "Plowerhouse Room", + (2, 65): "The Worst Room In The Game", + (2, 66): "Amphitheatre", + (2, 67): "Lower Norfair Maze Room", + (2, 68): "Lower Norfair Power Bomb", + (2, 69): "Red Keyhunter Shaft", + (2, 70): "Wasteland", + (2, 71): "Ninja Pirates Boss Room", + (2, 72): "Three Muskateers Room", + (2, 73): "Broken Hatchling Container", + (2, 74): "Screw Attack Room", + (2, 75): "Dragon Rock", + (2, 76): "Red Keyhunter Save Room", + (3, 0): "Bowling Alley", + (3, 1): "Wrecked Ship Entrance", + (3, 2): "Attic", + (3, 3): "Attic Missile Room", + (3, 4): "Wrecked Ship Main Shaft", + (3, 5): "Spiky Death Room", + (3, 6): "Electric Death Room", + (3, 7): "Wrecked Ship Energy Tank Room", + (3, 8): "Basement", + (3, 9): "Wrecked Ship Map Room", + (3, 10): "Phantoon Boss Room", + (3, 11): "Sponge Bath", + (3, 12): "Wrecked Ship West Super Room", + (3, 13): "Wrecked Ship East Super Room", + (3, 14): "Gravity Suit Room", + (3, 15): "Wrecked Ship Save Room", + (4, 0): "West Maridia Save Room", + (4, 1): "Glass Tube", + (4, 2): "West Maridia Tube", + (4, 3): "East Maridia Tube", + (4, 4): "Maridia Main Street", + (4, 5): "Fish Tank", + (4, 6): "Turtle Family Room", + (4, 7): "Crab Tunnel", + (4, 8): "Puffer Mountian", + (4, 9): "Red Fish Room", + (4, 10): "Watering Hole", + (4, 11): "Northwest Maridia Bug Room", + (4, 12): "Crab Shaft", + (4, 13): "Pseudo Plasma Spark Room", + (4, 14): "Crab Hole", + (4, 15): "Tunnel To West Sand Hall", + (4, 16): "Plasma Larvae", + (4, 17): "Plasma Beam Room", + (4, 18): "Thread The Needle Room", + (4, 19): "Maridia Elevator Room", + (4, 20): "Plasma Spark Room", + (4, 21): "Plasma Climb", + (4, 22): "Maridia Map Room", + (4, 23): "East Maridia Save Room", + (4, 24): "Maridia Transit Tube", + (4, 25): "Bug Sand Hole", + (4, 26): "West Sand Hall", + (4, 27): "Oasis", + (4, 28): "East Sand Hall", + (4, 29): "West Sand Hole Cave", + (4, 30): "East Sand Hole Cave", + (4, 31): "West Quicksand Room", + (4, 32): "East Quicksand Room", + (4, 33): "Maridia Aqueduct", + (4, 34): "Butterfly Room", + (4, 35): "Botwoon Hallway", + (4, 36): "Pants Room", + (4, 37): "East Pant Room", + (4, 38): "Spring Ball Room", + (4, 39): "Below Botwoon Quicksand Room", + (4, 40): "Colosseum", + (4, 41): "Maridia Aqueduct Save Room", + (4, 42): "Draygon Boss Door", + (4, 43): "Botwoon Speed Hallway", + (4, 44): "Draygon Save Room", + (4, 45): "Maridia Missile Refill Room", + (4, 46): "Plasma Beach Quicksand Room", + (4, 47): "Botwoon Quicksand Room", + (4, 48): "Shaktool Room", + (4, 49): "Halfie Room", + (4, 50): "Botwoon Boss Room", + (4, 51): "Space Jump Room", + (4, 52): "Draygon Energy Refill", + (4, 53): "West Cactus Alley", + (4, 54): "East Cactus Alley", + (4, 55): "Draygon Boss Room", + (5, 0): "Tourian Elevator", + (5, 1): "Metroid Room 1", + (5, 2): "Metroid Room 2", + (5, 3): "Metroid Room 3", + (5, 4): "Metroid Room 4", + (5, 5): "Blue Sidehoppers", + (5, 6): "Dust Torizo Room", + (5, 7): "Baby Metroid Room", + (5, 8): "Tourian Seaweed Room", + (5, 9): "Tourian Recharge Room", + (5, 10): "Mother Brain Boss Room", + (5, 11): "Mother Brain Boss Door", + (5, 12): "Rinka Shaft", + (5, 13): "Mother Brain Save Room", + (5, 14): "Tourian Escape Room 1", + (5, 15): "Tourian Escape Room 2", + (5, 16): "Tourian Horizontal Escape", + (5, 17): "Tourian Vertical Escape", + (5, 18): "Tourian Elevator Save Room", + (6, 0): "Ceres Shaft", + (6, 1): "Ceres Falling Tile Room", + (6, 2): "Ceres Stairs Room", + (6, 3): "Ceres Computer Room", + (6, 4): "Ceres 58 Escape", + (6, 5): "Ceres Ridley Boss Room", + (7, 0): "Debug Room", +} + +kEnemyNameToAddr = { + 'NODATA': 0xb4dd89, + 'ATOMIC': 0xb4dd97, + 'BANG': 0xb4dda5, + 'BATTA1': 0xb4ddb3, + 'BATTA2': 0xb4ddc1, + 'BATTA3': 0xb4ddcf, + 'BOTOON': 0xb4dddd, + 'BOYON': 0xb4ddeb, + 'DESSGEEGA': 0xb4ddf9, + 'DORI': 0xb4de07, + 'DRAGON': 0xb4de15, + 'EBI': 0xb4de23, + 'EYE': 0xb4de31, + 'NAMI': 0xb4de3f, + 'FISH': 0xb4de4d, + 'GAI': 0xb4de5b, + 'GAMET': 0xb4de69, + 'GEEGA': 0xb4de77, + 'GERUDA': 0xb4de85, + 'GRAVY': 0xb4de93, + 'HACHI1': 0xb4dea1, + 'HAND': 0xb4deaf, + 'HIBASHI': 0xb4debd, + 'HIRU': 0xb4decb, + 'HOLTZ': 0xb4ded9, + 'HOTARY': 0xb4dee7, + 'HZOOMER': 0xb4def5, + 'KAGO': 0xb4df03, + 'KAME': 0xb4df11, + 'KAMER': 0xb4df1f, + 'KANI': 0xb4df2d, + 'KOMA': 0xb4df3b, + 'KZAN': 0xb4df49, + 'LAVAMAN': 0xb4df57, + 'MELLA': 0xb4df65, + 'MEMU': 0xb4df73, + 'MERO': 0xb4df81, + 'METALEE': 0xb4df8f, + 'METMOD': 0xb4df9d, + 'METROID': 0xb4dfab, + 'MULTI': 0xb4dfb9, + 'MZOOMER': 0xb4dfc7, + 'NDRA': 0xb4dfd5, + 'NOMI': 0xb4dfe3, + 'NOVA': 0xb4dff1, + 'OUM': 0xb4dfff, + 'OUMU': 0xb4e00d, + 'PIPE': 0xb4e01b, + 'POLYP': 0xb4e029, + 'PUROMI': 0xb4e037, + 'PUU': 0xb4e045, + 'PUYO': 0xb4e053, + 'REFLEC': 0xb4e061, + 'RINKA': 0xb4e06f, + 'RIO': 0xb4e07d, + 'RIPPER': 0xb4e08b, + 'RIPPER2': 0xb4e099, + 'ROBO': 0xb4e0a7, + 'RSTONE': 0xb4e0b5, + 'SABOTEN': 0xb4e0c3, + 'SBUG': 0xb4e0d1, + 'SCLAYD': 0xb4e0df, + 'SDEATH': 0xb4e0ed, + 'SHUTTER': 0xb4e0fb, + 'SHUTTER2': 0xb4e109, + 'SIDE': 0xb4e117, + 'SKREE': 0xb4e125, + 'SPA': 0xb4e133, + 'SQUEEWPT': 0xb4e141, + 'SSIDE': 0xb4e14f, + 'STOKE': 0xb4e15d, + 'TOGE': 0xb4e16b, + 'VIOLA': 0xb4e179, + 'WAVER': 0xb4e187, + 'YARD': 0xb4e195, + 'ZEB': 0xb4e1a3, + 'ZEBBO': 0xb4e1b1, + 'ZEELA': 0xb4e1bf, + 'ZOA': 0xb4e1cd, + 'ZOOMER': 0xb4e1db, + 'BATTA1Br': 0xb4e1e9, + 'BATTA1No': 0xb4e1f7, + 'BATTA1Na': 0xb4e205, + 'BATTA1Ma': 0xb4e213, + 'BATTA1Tu': 0xb4e221, + 'BATTA2Br': 0xb4e22f, + 'BATTA2No': 0xb4e23d, + 'BATTA2Na': 0xb4e24b, + 'BATTA2Ma': 0xb4e259, + 'BATTA2Tu': 0xb4e267, + 'BATTA3Br': 0xb4e275, + 'BATTA3No': 0xb4e283, + 'BATTA3Na': 0xb4e291, + 'BATTA3Ma': 0xb4e29f, + 'BATTA3Tu': 0xb4e2ad, + 'FUNE': 0xb4e2bb, + 'HACHI2': 0xb4e2c9, + 'HACHI3': 0xb4e2d7, + 'ROBO2': 0xb4e2e5, +} + +kPlmHeaderAddrs = {0x84b62f, 0x84b74f, 0x84ef8b, 0x84b717, 0x84d0d4, 0x84db44, 0x84b79f, 0x84b6f7, 0x84df6d, 0x84d038, 0x84b78f, 0x84ef67, 0x84b653, 0x84c848, 0x84b6a3, 0x84ef9f, 0x84b763, 0x84b6df, 0x84cffc, 0x84efaf, 0x84b8eb, 0x84df85, 0x84eedf, 0x84d704, 0x84b7b3, 0x84db56, 0x84ef97, 0x84bb30, 0x84ef93, 0x84d020, 0x84d0a0, 0x84df5d, 0x84d080, 0x84d090, 0x84d127, 0x84c832, 0x84b70f, 0x84d0b4, 0x84d0e8, 0x84b753, 0x84b71f, 0x84c83e, 0x84ef9b, 0x84b633, 0x84b66b, 0x84b6bf, 0x84d0c4, 0x84b6cb, 0x84d6d6, 0x84bb05, 0x84ef03, 0x84c860, 0x84c80a, 0x84ef37, 0x84b7a3, 0x84b65b, 0x84b7eb, 0x84ef7b, 0x84d064, 0x84d0f2, 0x84d010, 0x84c86c, 0x84b64b, 0x84b6e3, 0x84b71b, 0x84b781, 0x84d0dc, 0x84b743, 0x84d05c, 0x84ef33, 0x84c842, 0x84b727, 0x84eee7, 0x84b663, 0x84ef47, 0x84b687, 0x84ef77, 0x84d08c, 0x84d00c, 0x84b777, 0x84efc3, 0x84c8b4, 0x84b793, 0x84d02c, 0x84b63f, 0x84b73f, 0x84baf4, 0x84d088, 0x84ef6f, 0x84b7af, 0x84d044, 0x84ef1b, 0x84d6fc, 0x84b67f, 0x84c8a2, 0x84d014, 0x84eedb, 0x84db48, 0x84ef4b, 0x84ef7f, 0x84c854, 0x84b968, 0x84d004, 0x84efa3, 0x84eef3, 0x84b7bb, 0x84efc7, 0x84d07c, 0x84b6af, 0x84efcb, 0x84b63b, 0x84b713, 0x84d034, 0x84b6cf, 0x84d070, 0x84b673, 0x84d6de, 0x84eeeb, 0x84b647, 0x84c80e, 0x84c896, 0x84c884, 0x84b9c1, 0x84c822, 0x84b8f9, 0x84c890, 0x84d0d0, 0x84c8c6, 0x84d094, 0x84ef1f, 0x84c81a, 0x84b703, 0x84d6f8, 0x84efab, 0x84d030, 0x84d70c, 0x84ef2f, 0x84c81e, 0x84d068, 0x84ef17, 0x84d6ee, 0x84d078, 0x84b6f3, 0x84cfec, 0x84d03c, 0x84b677, 0x84ef5f, 0x84eeef, 0x84d018, 0x84b78b, 0x84efa7, 0x84ef07, 0x84df71, 0x84d13b, 0x84b6c7, 0x84d0e0, 0x84d0b8, 0x84c812, 0x84cff4, 0x84efbb, 0x84b6d7, 0x84d048, 0x84c836, 0x84b723, 0x84d0c0, 0x84ef4f, 0x84b6eb, 0x84db60, 0x84d028, 0x84eef7, 0x84b68b, 0x84b6b7, 0x84c84e, 0x84b643, 0x84c806, 0x84b8ac, 0x84b964, 0x84b9ed, 0x84df81, 0x84ef63, 0x84c8c2, 0x84d0ac, 0x84b73b, 0x84c85a, 0x84ef8f, 0x84c8d0, 0x84c826, 0x84c8ba, 0x84c88a, 0x84df65, 0x84cff8, 0x84d6da, 0x84b65f, 0x84b6ab, 0x84b76b, 0x84d0cc, 0x84b757, 0x84d01c, 0x84b76f, 0x84d098, 0x84efcf, 0x84b6db, 0x84ef5b, 0x84b75b, 0x84c82a, 0x84b66f, 0x84b7ab, 0x84b974, 0x84d708, 0x84b6bb, 0x84d0d8, 0x84eed3, 0x84b6e7, 0x84df59, 0x84ef3b, 0x84d04c, 0x84cff0, 0x84d113, 0x84df61, 0x84d0b0, 0x84c8ca, 0x84df7d, 0x84b6d3, 0x84d040, 0x84b667, 0x84c878, 0x84b7bf, 0x84eeff, 0x84db52, 0x84db5a, 0x84ef53, 0x84b6c3, 0x84b72b, 0x84b6fb, 0x84c83a, 0x84b70b, 0x84efb3, 0x84df69, 0x84efbf, 0x84b773, 0x84b75f, 0x84ef3f, 0x84c8ae, 0x84ef13, 0x84b7b7, 0x84ef83, 0x84b7a7, 0x84d0a8, 0x84b68f, 0x84c87e, 0x84ef57, 0x84ef0b, 0x84b637, 0x84b79b, 0x84b737, 0x84c8a8, 0x84c82e, 0x84b69f, 0x84d058, 0x84b697, 0x84d060, 0x84b797, 0x84c866, 0x84c89c, 0x84eefb, 0x84b72f, 0x84b6ff, 0x84b707, 0x84d0bc, 0x84c872, 0x84b657, 0x84ef0f, 0x84ef23, 0x84b747, 0x84ef73, 0x84b693, 0x84d054, 0x84d700, 0x84ef27, 0x84c8be, 0x84eee3, 0x84ef87, 0x84b67b, 0x84b6b3, 0x84df75, 0x84b69b, 0x84ef2b, 0x84d06c, 0x84ef43, 0x84d050, 0x84eed7, 0x84d0c8, 0x84b767, 0x84d0e4, 0x84b6a7, 0x84d024, 0x84b733, 0x84d008, 0x84b683, 0x84b74b, 0x84db4c, 0x84d6ea, 0x84efb7, 0x84ef6b, 0x84c816, 0x84df79, 0x84d084, 0x84d09c, 0x84b64f, 0x84ba48, 0x84d0a4, 0x84b6ef, 0x84d074, 0x84d6f2, 0x84d000} +kEprojHeaders = {0x86ad6c, 0x868aaf, 0x86b4b1, 0x86ec48, 0x86de7a, 0x86afe5, 0x86f337, 0x86dafe, 0x868c24, 0x869c37, 0x86e0e0, 0x869650, 0x8696ce, 0x86a17b, 0x86dfca, 0x86bab0, 0x86e6d2, 0x86b5cb, 0x86d2d0, 0x86ad7a, 0x869dcc, 0x86cc5b, 0x86af76, 0x86e659, 0x86d2c2, 0x86a9af, 0x868f9d, 0x869634, 0x86a9a1, 0x86cb9f, 0x86a993, 0x86bd5a, 0x86966c, 0x86cbbb, 0x86eba0, 0x86d298, 0x869742, 0x86ab07, 0x86965e, 0x869c61, 0x86a3b0, 0x868bc2, 0x86b428, 0x86cb91, 0x868c08, 0x86cc85, 0x86cc69, 0x86a395, 0x86e64b, 0x86b751, 0x86b743, 0x86aeb6, 0x86967a, 0x86cb4b, 0x868c16, 0x869734, 0x86c18c, 0x86d904, 0x86ba78, 0x86a977, 0x86be41, 0x86cb13, 0x869c6f, 0x86be33, 0x86cb3d, 0x86cbad, 0x86a969, 0x86cefc, 0x86de6c, 0x869696, 0x86a95b, 0x86d2b4, 0x86f498, 0x86cf26, 0x86be25, 0x86f345, 0x86cb2f, 0x86a189, 0x86cf18, 0x8696a4, 0x868e50, 0x86ba86, 0x86cb83, 0x86cb21, 0x86ba94, 0x86d02e, 0x869688, 0x868bd0, 0x86babe, 0x86cb59, 0x86ec95, 0x868f8f, 0x8690c1, 0x868e6c, 0x86b31a, 0x86b1c0, 0x86de88, 0x86d920, 0x869e90, 0x86cf0a, 0x86d2a6, 0x8696c0, 0x868e5e, 0x86af68, 0x868bec, 0x869c53, 0x869c45, 0x86c17e, 0x86aff3, 0x86dfbc, 0x86cb75, 0x868bfa, 0x86dbf2, 0x86e517, 0x86ba5c, 0x86aea8, 0x868bde, 0x86d2de, 0x86a387, 0x869642, 0x86cc77, 0x86cb67, 0x869c29, 0x869dbe, 0x86a985, 0x86e525, 0x86af84, 0x86ba6a, 0x869db0, 0x86baa2, 0x86e675, 0x86ad5e, 0x86e667, 0x8696b2, 0x86a379, 0x86e509, 0x86bbc7, 0x86d912} +kEprojInstrLists={0x86eca3, 0x86ade5, 0x86b2ef, 0x86a48e, 0x868c38, 0x86a48a, 0x86b61d, 0x86d04a, 0x86976c, 0x868ffb, 0x86945f, 0x86d03c, 0x869772, 0x869574, 0x8697ac, 0x86ab41, 0x869782, 0x86dc06, 0x86b3e5, 0x8697f8, 0x86cf56, 0x86ab25, 0x86b1a8, 0x86a28b, 0x86b79f, 0x86c8e1, 0x86b5f3, 0x86b3cd, 0x86d218, 0x86d052, 0x86f363} + +kAnimtilesDefs = {0x87824b, 0x878251, 0x878257, 0x87825d, 0x878263, 0x878269, 0x87826f, 0x878275, 0x87827b, 0x878281, 0x878287, 0x87828d, 0x8782ab, 0x8782c9, 0x8782e7, 0x8782fd, 0x87854c, 0x878552, 0x878558, 0x87855e} + +kPalfxDefs = {0x8de194, 0x8de198, 0x8de19c, 0x8de1a0, 0x8de1a4, 0x8de1a8, 0x8de1ac, 0x8de1b0, 0x8de1b4, 0x8de1b8, 0x8de1bc, 0x8de1c0, 0x8de1c4, 0x8de1c8, 0x8de1cc, 0x8de1d0, 0x8de1d4, 0x8de1d8, 0x8de1dc, 0x8de1e0, 0x8de1e4, 0x8de1e8, 0x8de1ec, 0x8de1f0, 0x8de1f4, 0x8de1f8, 0x8de1fc, 0x8de200, 0x8df745, 0x8df749, 0x8df74d, 0x8df751, 0x8df755, 0x8df759, 0x8df75d, 0x8df761, 0x8df765, 0x8df769, 0x8df76d, 0x8df771, 0x8df775, 0x8df779, 0x8df77d, 0x8df781, 0x8df785, 0x8df789, 0x8df78d, 0x8df791, 0x8df795, 0x8df799, 0x8df79d, 0x8df7a1, 0x8df7a5, 0x8dffc9, 0x8dffcd, 0x8dffd1, 0x8dffd5, 0x8dffd9, 0x8dffdd, 0x8dffe1, 0x8dffe5, 0x8dffe9, 0x8dffed} + +kEnemyPopulation = {0xa6aa2f, 0xa6aa3f, 0xa6c987, 0xa6c997, 0xa6c9a7, 0xa6c9b7, 0xa6c9c7, 0xa6c9d7, 0xa6c9e7, 0xa6c9f7, 0xa6ca07, 0xa6ca17, 0xa6ca27, 0xa6ca37, 0xa6fce1, 0xa6fcf9, 0xa98ae5, 0xa98af5, 0xa98b05, 0xa98b15, 0xa98b25, 0xa9be28} \ No newline at end of file diff --git a/assets/decode_common.py b/assets/decode_common.py new file mode 100644 index 0000000..7feb9fc --- /dev/null +++ b/assets/decode_common.py @@ -0,0 +1,186 @@ +import pickle + +def load_names(): + xs = [a.split(' ') for a in open('names.txt', 'r').read().splitlines()] + return {b : int(a, 16) for a, b in xs} + +name2ea = load_names() +name2ea = {k.replace('?', '') : v for k, v in name2ea.items()} +ea2name = {v:k for k,v in name2ea.items()} + +g_marked_addresses = set() + +def mark_address(ea): + g_marked_addresses.add(ea) + return ea + +def get_ea_name(v, short_label = False, unknown_prefix = 'unk'): + if v == None: return None + if v == 0: return 'null' + r = ea2name.get(v) + if r == None: + if short_label and v not in g_marked_addresses: + r = 'lbl_%X' % (v) + else: + r = '%s_%X' % (unknown_prefix, v) + return r + +class Rom: + def __init__(self): + self.data = open('../sm.smc', 'rb').read() + + def map(self, addr): + assert addr & 0x8000 + return (((addr >> 16) << 15) | (addr & 0x7fff)) & 0x3fffff + + def get_byte(self, addr): + return self.data[self.map(addr)] + + def get_word(self, addr): + addr = self.map(addr) + return self.data[addr] + self.data[addr + 1] * 256 + + def get_long(self, addr): + addr = self.map(addr) + return self.data[addr] + self.data[addr + 1] * 256 + self.data[addr + 2] * 65536 + + def get_bytes(self, addr, n): + addr = self.map(addr) + return self.data[addr:addr+n] + +ROM = Rom() +get_byte = ROM.get_byte +get_word = ROM.get_word + + +def translate_old_layout(): + for k, v in kInstructionSet.items(): + k = k | 0x8D0000 + t = ea2name[k] + name = t.replace('PalInstr_', '') + args, _ = v + tostr = {1 : 'B', 2 : 'H', 3 : 'L'} + args = ''.join(tostr[a] for a in args) + if name.startswith('Goto'): + args = args[:-1] + 'G' + print(" 0x%x: ('%s', '%s')," % (k, name, args)) + +def sex8(v): + return v if v < 0x80 else v - 0x100 +def sex16(v): + return v if v < 0x8000 else v - 0x10000 + +class InstrParserCommon: + forbidden_addrs = set() + def __init__(self): + self.visited = set() + self.missing_isets = set() + self.queue = [] + self.queue_pos = 0 + self.label = set() + self.lines = [] + self.blobs = {} + + def print_line(self, ea, line): + self.lines.append((ea, line)) + + def visit(self, ea): + assert ea & 0x8000 + if ea in self.forbidden_addrs: + return + self.label.add(ea) + if ea not in self.visited: + self.queue.append(ea) + + def process_queue(self, final = True): + while self.queue_pos < len(self.queue): + if (ea := self.queue[self.queue_pos]) not in self.visited: + self.process_queue_entry(ea) + self.queue_pos += 1 + if final: + self.queue = None + + def print(self, file): + print('', file = file) + print('', file = file) + +def decompress(rom, ea): + ea = rom.map(ea) + ea_start = ea + data = rom.data + rv = bytearray() + while True: + b = data[ea]; ea += 1 + if b == 0xff: + return rv, ea - ea_start + if (b & 0xe0) == 0xe0: + cmd = (8 * b) & 0xe0 + size = ((b & 3) << 8 | data[ea]) + 1; ea += 1 + else: + cmd = b & 0xe0 + size = (b & 0x1f) + 1 + if cmd & 0x80: + want_xor = 0xff if cmd & 0x20 else 0x00 + if cmd >= 0xc0: + src_pos = len(rv) - data[ea]; ea += 1 + else: + src_pos = data[ea] | data[ea + 1] * 256; ea += 2 + for i in range(size): + rv.append(rv[src_pos + i] ^ want_xor) + elif cmd == 0x20: + b = data[ea]; ea += 1 + for i in range(size): + rv.append(b) + elif cmd == 0x40: + b, b2 = data[ea], data[ea + 1]; ea += 2 + while size: + rv.append(b) + if size <= 1: + break + rv.append(b2) + size -= 2 + elif cmd == 0x60: + b = data[ea]; ea += 1 + for i in range(size): + rv.append(b) + b = (b + 1) & 0xff + else: + for i in range(size): + rv.append(data[ea]); ea += 1 + + +def get_compressed_size(rom, ea): + ea = rom.map(ea) + ea_start = ea + data = rom.data + while True: + b = data[ea]; ea += 1 + if b == 0xff: + return ea - ea_start + if (b & 0xe0) == 0xe0: + cmd = (8 * b) & 0xe0 + size = ((b & 3) << 8 | data[ea]) + 1; ea += 1 + else: + cmd = b & 0xe0 + size = (b & 0x1f) + 1 + if cmd & 0x80: + if cmd >= 0xc0: + ea += 1 + else: + ea += 2 + elif cmd == 0x20: + ea += 1 + elif cmd == 0x40: + ea += 2 + elif cmd == 0x60: + ea += 1 + else: + ea += size + + + diff --git a/assets/enemy_instr_decode.py b/assets/enemy_instr_decode.py new file mode 100644 index 0000000..0c3263e --- /dev/null +++ b/assets/enemy_instr_decode.py @@ -0,0 +1,548 @@ +from decode_common import * + +BANK = None + +kInstructionSet = { + 0xa288c5: ('BouncingGoofball_Instr_88C5', ''), + 0xa288c6: ('BouncingGoofball_Instr_88C6', ''), + 0xa2897e: ('MiniCrocomire_Instr_897E', 'H'), + 0xa28990: ('MiniCrocomire_Instr_8990', ''), + 0xa2899d: ('MiniCrocomire_Instr_899D', ''), + 0xa29381: ('MaridiaBeybladeTurtle_Instr_9381', ''), + 0xa29412: ('MaridiaBeybladeTurtle_Instr_9412', ''), + 0xa29447: ('MaridiaBeybladeTurtle_Instr_9447', ''), + 0xa29451: ('MaridiaBeybladeTurtle_Instr_9451', ''), + 0xa2946b: ('MaridiaBeybladeTurtle_Instr_946B', ''), + 0xa29485: ('MaridiaBeybladeTurtle_Instr_9485', ''), + 0xa294a1: ('MaridiaBeybladeTurtle_Instr_94A1', ''), + 0xa294c7: ('MaridiaBeybladeTurtle_Instr_94C7', ''), + 0xa294d1: ('MaridiaBeybladeTurtle_Instr_94D1', ''), + 0xa29f2a: ('SpikeShootingPlant_Instr_9F2A', ''), + 0xa2a095: ('SpikeShootingPlant_Instr_A095', ''), + 0xa2a56d: ('MaridiaSpikeyShell_Instr_A56D', ''), + 0xa2a571: ('MaridiaSpikeyShell_Instr_A571', ''), + 0xa2a0a7: ('SpikeShootingPlant_Instr_A0A7', 'H'), + 0xa2b9c7: ('Rinka_Instr_B9C7', ''), + 0xa2be8e: ('NorfairLavajumpingEnemy_Instr_BE8E', ''), + 0xa2bbc3: ('EnemyInstr_Rio_Instr_1', ''), + 0xa2c1c9: ('NorfairRio_Instr_C1C9', ''), + 0xa2c1d4: ('NorfairRio_Instr_C1D4', ''), + 0xa2c1df: ('NorfairRio_Instr_C1DF', ''), + 0xa2c1ea: ('NorfairRio_Instr_C1EA', ''), + 0xa2c1f5: ('NorfairRio_Instr_C1F5', ''), + 0xa2c200: ('NorfairRio_Instr_C200', ''), + 0xa2c20b: ('NorfairRio_Instr_C20B', ''), + 0xa2c216: ('NorfairRio_Instr_C216', ''), + 0xa2c221: ('NorfairRio_Instr_C221', ''), + 0xa2c22c: ('NorfairRio_Instr_C22C', ''), + 0xa2c237: ('NorfairRio_Instr_C237', ''), + 0xa2c6d2: ('LowerNorfairRio_Instr_C6D2', ''), + 0xa2c6dd: ('LowerNorfairRio_Instr_C6DD', ''), + 0xa2c6e8: ('LowerNorfairRio_Instr_C6E8', ''), + 0xa2b9b3: ('Rinka_Instr_B9B3', ''), + 0xa2b9bd: ('Rinka_Instr_B9BD', ''), + 0xa2cb6b: ('MaridiaLargeSnail_Instr_CB6B', ''), + 0xa2ccb3: ('MaridiaLargeSnail_Instr_CCB3', ''), + 0xa2ccbe: ('MaridiaLargeSnail_Instr_CCBE', ''), + 0xa2ccc9: ('MaridiaLargeSnail_Instr_CCC9', ''), + 0xa2e5fb: ('LavaSeahorse_Instr_E5FB', ''), + 0xa386e3: ('Waver_Instr_1', ''), + 0xa38956: ('Metalee_Instr_1', ''), + 0xa39096: ('MaridiaFish_Instr_3', ''), + 0xa390a0: ('MaridiaFish_Instr_1', ''), + 0xa390aa: ('MaridiaFish_Instr_2', ''), + 0xa39c6b: ('PlatformThatFallsWithSamus_Instr_3', ''), + 0xa39c76: ('PlatformThatFallsWithSamus_Instr_4', ''), + 0xa39c81: ('PlatformThatFallsWithSamus_Instr_1', ''), + 0xa39c8c: ('PlatformThatFallsWithSamus_Instr_2', ''), + 0xa3aa68: ('Sidehopper_Func_1', 'H'), + 0xa3aafe: ('Sidehopper_Instr_1', ''), + 0xa3b429: ('MaridiaRefillCandy_Instr_1', ''), + 0xa3b434: ('MaridiaRefillCandy_Instr_2', ''), + 0xa3b43f: ('MaridiaRefillCandy_Instr_3', ''), + 0xa3ba78: ('Bang_Instr_1', ''), + 0xa3baa8: ('Bang_Instr_2', ''), + 0xa3c6a4: ('Skree_Instr_1', ''), + 0xa3cc36: ('MaridiaSnail_Instr_1', 'A'), + 0xa3cc3f: ('MaridiaSnail_Instr_2', 'A'), + 0xa3cc48: ('MaridiaSnail_Instr_4', 'H'), + 0xa3cc5f: ('MaridiaSnail_Instr_3', 'II'), + 0xa3cc78: ('MaridiaSnail_Instr_5', ''), + 0xa3dfc2: ('WreckedShipOrangeZoomer_Func_1', 'A'), + 0xa3dbc8: ('Reflec_Instr_1', 'H'), + 0xa3e660: ('Zoomer_Instr_SetPreinstr', 'A'), + 0xa3eaa5: ('Metroid_Instr_2', ''), + 0xa3eab1: ('Metroid_Instr_1', ''), + 0xa486a6: ('Crocomire_Instr_1', ''), + 0xa48cfb: ('Crocomire_Instr_11', ''), + 0xa48fc7: ('Crocomire_Instr_2', ''), + 0xa48ffa: ('Crocomire_Instr_3', ''), + 0xa48fdf: ('Crocomire_Instr_4', ''), + 0xa48752: ('Crocomire_Instr_14', ''), + 0xa48d07: ('Crocomire_Instr_7', ''), + 0xa48d13: ('Crocomire_Instr_19', ''), + 0xa48fff: ('Crocomire_Instr_15', ''), + 0xa4907f: ('Crocomire_Instr_18', ''), + 0xa4908f: ('Crocomire_Instr_12', ''), + 0xa49094: ('Crocomire_Instr_17', ''), + 0xa4905b: ('Crocomire_Instr_13', ''), + 0xa4901d: ('Crocomire_Instr_16', ''), + 0xa49a9b: ('Crocomire_Instr_8', ''), + 0xa49aa0: ('Crocomire_Instr_6', ''), + 0xa49aa5: ('Crocomire_Instr_9', ''), + 0xa49aaa: ('Crocomire_Instr_5', ''), + 0xa49aaf: ('Crocomire_Instr_20', ''), + 0xa49ab4: ('Crocomire_Instr_21', ''), + 0xa49ab9: ('Crocomire_Instr_22', ''), + 0xa49abe: ('Crocomire_Instr_23', ''), + 0xa49ac3: ('Crocomire_Instr_24', ''), + 0xa49ac8: ('Crocomire_Instr_10', ''), + 0xa49acd: ('Crocomire_Instr_25', ''), + 0xa49ad2: ('Crocomire_Instr_26', ''), + 0xa49ad7: ('Crocomire_Instr_27', ''), + 0xa594dd: ('Draygon_Instr_1', 'GGGG'), + 0xa59736: ('Draygon_Instr_13', 'A'), + 0xa5973f: ('Draygon_Instr_8', ''), + 0xa59752: ('Draygon_Instr_7', ''), + 0xa59765: ('Draygon_Instr_6', ''), + 0xa59778: ('Draygon_Instr_9', ''), + 0xa59895: ('Draygon_Instr_2', ''), + 0xa598d3: ('Draygon_Instr_11', ''), + 0xa598ef: ('Draygon_Instr_5', ''), + 0xa59b9a: ('Draygon_Instr_15', ''), + 0xa59c8a: ('Draygon_Instr_17', ''), + 0xa59e0a: ('Draygon_Instr_14', 'II'), + 0xa59f57: ('Draygon_Instr_16', 'A'), + 0xa59f60: ('Draygon_Instr_10', 'H'), + 0xa59f6e: ('Draygon_Instr_4', 'H'), + 0xa59f7c: ('Draygon_Instr_12', ''), + 0xa59fae: ('Draygon_Instr_18', ''), + 0xa5c47b: ('Draygon_Instr_3', 'A'), + 0xa5e75f: ('Draygon_Instr_25', ''), + 0xa5e771: ('Draygon_Instr_24', ''), + 0xa5e9b1: ('Draygon_Instr_26', ''), + 0xa5e87c: ('Draygon_Instr_27', ''), + 0xa5e96e: ('Draygon_Instr_28', ''), + 0xa5e82d: ('Draygon_Instr_21', 'HH'), + 0xa5e872: ('Draygon_Instr_22', 'H'), + 0xa5e895: ('Draygon_Instr_23', 'H'), + 0xa5e8a3: ('Draygon_Instr_55', 'H'), + 0xa5e8b1: ('Draygon_Instr_30', ''), + 0xa5e8ba: ('Draygon_Instr_20', 'A'), + 0xa5e8ca: ('Draygon_Instr_29', 'H'), + 0xa5e91c: ('Draygon_Instr_19', 'H'), + 0xa68daf: ('FireGeyser_Instr_1', ''), + 0xa68e13: ('FireGeyser_Instr_2', ''), + 0xa68e2d: ('FireGeyser_Instr_3', ''), + 0xa68e41: ('FireGeyser_Instr_4', ''), + 0xa68e55: ('FireGeyser_Instr_5', ''), + 0xa68e69: ('FireGeyser_Instr_6', ''), + 0xa68e7d: ('FireGeyser_Instr_7', ''), + 0xa68e91: ('FireGeyser_Instr_8', ''), + 0xa68ea5: ('FireGeyser_Instr_9', ''), + 0xa68eb9: ('FireGeyser_Instr_10', ''), + 0xa68ecd: ('FireGeyser_Instr_11', ''), + 0xa68ee1: ('FireGeyser_Instr_12', ''), + 0xa68ef5: ('FireGeyser_Instr_13', ''), + 0xa68f09: ('FireGeyser_Instr_14', ''), + 0xa68f1d: ('FireGeyser_Instr_15', ''), + 0xa68f31: ('FireGeyser_Instr_16', ''), + 0xa68f45: ('FireGeyser_Instr_17', ''), + 0xa68f59: ('FireGeyser_Instr_18', ''), + 0xa68f6d: ('FireGeyser_Instr_19', ''), + 0xa68f81: ('FireGeyser_Instr_20', ''), + 0xa68f95: ('FireGeyser_Instr_21', ''), + 0xa68fa9: ('FireGeyser_Instr_22', ''), + 0xa68fbd: ('FireGeyser_Instr_23', ''), + 0xa68fd1: ('FireGeyser_Instr_24', ''), + 0xa69b26: ('FakeKraid_Instr_2', ''), + 0xa69b74: ('FakeKraid_Instr_1', ''), + 0xa69bb2: ('FakeKraid_Instr_3', ''), + 0xa69bc4: ('FakeKraid_Instr_4', ''), + 0xa69c02: ('FakeKraid_Instr_5', ''), + 0xa6bfc9: ('BabyMetroid_Instr_2', 'G'), + 0xa6bfe1: ('BabyMetroid_Instr_3', '6'), + 0xa6bff2: ('BabyMetroid_Instr_1', 'G'), + 0xa6bff8: ('BabyMetroid_Instr_4', 'G'), + 0xa6e4be: ('Ridley_Instr_5', ''), + 0xa6e4ca: ('Ridley_Instr_6', ''), + 0xa6e4d2: ('Ridley_Instr_10', 'G'), + 0xa6e4e9: ('sub_A6E4E9', 'H'), + 0xa6e4ee: ('Ridley_Instr_4', 'GG'), + 0xa6e4f8: ('Ridley_Instr_3', 'G'), + 0xa6e501: ('Ridley_Instr_2', 'H'), + 0xa6e517: ('Ridley_Instr_1', 'G'), + 0xa6e51f: ('Ridley_Instr_14', 'II'), + 0xa6e71c: ('Ridley_Instr_9', ''), + 0xa6e727: ('Ridley_Instr_7', ''), + 0xa6e72f: ('Ridley_Instr_8', ''), + 0xa6e84d: ('Ridley_Instr_11', ''), + 0xa6e904: ('Ridley_Instr_12', ''), + 0xa6e909: ('Ridley_Instr_13', ''), + 0xa6e969: ('Ridley_Instr_15', ''), + 0xa6e976: ('Ridley_Instr_16', ''), + 0xa6f11d: ('CeresSteam_Instr_1', ''), + 0xa6f127: ('CeresSteam_Instr_2', 'GG'), + 0xa6f135: ('CeresSteam_Instr_3', ''), + 0xa6f63e: ('CeresDoor_Instr_6', 'G'), + 0xa6f66a: ('CeresDoor_Instr_4', 'G'), + 0xa6f678: ('CeresDoor_Instr_8', 'G'), + 0xa6f68b: ('CeresSteam_Instr_4', ''), + 0xa6f695: ('CeresDoor_Instr_1', ''), + 0xa6f69f: ('CeresDoor_Instr_3', ''), + 0xa6f6a6: ('CeresSteam_Instr_5', ''), + 0xa6f6b0: ('CeresDoor_Instr_5', ''), + 0xa6f6b3: ('CeresDoor_Instr_2', ''), + 0xa6f6bd: ('CeresDoor_Instr_7', ''), + 0xa78a8f: ('Kraid_Instr_9', ''), + 0xa7b633: ('Kraid_Instr_1', ''), + 0xa7b636: ('Kraid_Instr_DecYpos', ''), + 0xa7b63c: ('Kraid_Instr_IncrYpos_Shake', ''), + 0xa7b64e: ('Kraid_Instr_PlaySound_0x76', ''), + 0xa7b65a: ('Kraid_Instr_XposMinus3', ''), + 0xa7b667: ('Kraid_Instr_XposMinus3b', ''), + 0xa7b674: ('Kraid_Instr_XposPlus3', ''), + 0xa7b683: ('Kraid_Instr_MoveHimRight', ''), + 0xa8878f: ('MiniDraygon_Instr_2', ''), + 0xa8879b: ('MiniDraygon_Instr_1', ''), + 0xa887b6: ('MiniDraygon_Instr_3', ''), + 0xa887cb: ('MiniDraygon_Instr_4', ''), + 0xa89625: ('Fune_Instr_2', ''), + 0xa89631: ('Fune_Instr_6', ''), + 0xa8964a: ('Fune_Instr_7', ''), + 0xa89663: ('Fune_Instr_1', ''), + 0xa8967c: ('Fune_Instr_4', ''), + 0xa89695: ('Fune_Instr_3', ''), + 0xa896b4: ('Fune_Instr_5', ''), + 0xa8ae26: ('NorfairLavaMan_Instr_8', ''), + 0xa8ae30: ('NorfairLavaMan_Instr_14', ''), + 0xa8ae3a: ('NorfairLavaMan_Instr_2', ''), + 0xa8ae45: ('NorfairLavaMan_Instr_7', ''), + 0xa8ae50: ('NorfairLavaMan_Instr_10', ''), + 0xa8ae5a: ('NorfairLavaMan_Instr_12', ''), + 0xa8ae64: ('NorfairLavaMan_Instr_9', ''), + 0xa8ae88: ('NorfairLavaMan_Instr_11', ''), + 0xa8ae96: ('NorfairLavaMan_Instr_13', ''), + 0xa8aeba: ('NorfairLavaMan_Instr_5', ''), + 0xa8aeca: ('NorfairLavaMan_Instr_15', ''), + 0xa8aee4: ('NorfairLavaMan_Instr_4', ''), + 0xa8aefe: ('NorfairLavaMan_Instr_16', ''), + 0xa8af18: ('NorfairLavaMan_Instr_6', ''), + 0xa8af32: ('sub_A8AF32', ''), + 0xa8af44: ('NorfairLavaMan_Instr_3', ''), + 0xa8a0c7: ('YappingMaw_Instr_2', ''), + 0xa8a0d9: ('YappingMaw_Instr_4', ''), + 0xa8a10f: ('YappingMaw_Instr_3', ''), + 0xa8a0eb: ('YappingMaw_Instr_5', ''), + 0xa8a0fd: ('YappingMaw_Instr_7', ''), + 0xa8a121: ('YappingMaw_Instr_6', ''), + 0xa8a133: ('YappingMaw_Instr_1', ''), + 0xa8ae12: ('NorfairLavaMan_Instr_1', 'H'), + 0xa8b75e: ('Beetom_Instr_1', ''), + 0xa8cd09: ('WreckedShipRobot_Instr_4', ''), + 0xa8cda4: ('WreckedShipRobot_Instr_9', ''), + 0xa8cdea: ('WreckedShipRobot_Instr_6', ''), + 0xa8ce85: ('WreckedShipRobot_Instr_8', ''), + 0xa8cecb: ('WreckedShipRobot_Instr_7', ''), + 0xa8cecf: ('WreckedShipRobot_Instr_15', ''), + 0xa8cf6a: ('WreckedShipRobot_Instr_18', ''), + 0xa8cfb0: ('WreckedShipRobot_Instr_16', ''), + 0xa8d04b: ('WreckedShipRobot_Instr_17', ''), + 0xa8d091: ('WreckedShipRobot_Instr_3', ''), + 0xa8d0c2: ('WreckedShipRobot_Instr_10', ''), + 0xa8d0c6: ('WreckedShipRobot_Instr_14', ''), + 0xa8d0d2: ('WreckedShipRobot_Instr_2', ''), + 0xa8d100: ('WreckedShipRobot_Instr_13', ''), + 0xa8d107: ('WreckedShipRobot_Instr_1', ''), + 0xa8d131: ('WreckedShipRobot_Instr_12', ''), + 0xa8d13d: ('WreckedShipRobot_Instr_5', ''), + 0xa8d16b: ('WreckedShipRobot_Instr_11', ''), + 0xa8df1c: ('WalkingLavaSeahorse_Instr_4', ''), + 0xa8df33: ('WalkingLavaSeahorse_Instr_3', ''), + 0xa8df39: ('WalkingLavaSeahorse_Instr_5', ''), + 0xa8df3f: ('WalkingLavaSeahorse_Instr_6', ''), + 0xa8df63: ('WalkingLavaSeahorse_Instr_2', ''), + 0xa8df71: ('WalkingLavaSeahorse_Instr_1', ''), + 0xa8e61d: ('WreckedShipSpark_Instr_2', ''), + 0xa8e62a: ('WreckedShipSpark_Instr_1', ''), + 0xa8f526: ('KiHunter_Instr_1', ''), + 0xa8f5e4: ('KiHunter_Instr_2', ''), + 0xa8f67f: ('KiHunter_Instr_3', ''), + 0xa8f6d2: ('KiHunter_Instr_4', ''), + 0xa8f6d8: ('KiHunter_Instr_5', ''), + 0xa995b6: ('MotherBrain_Instr_MoveBodyUp10Left4', ''), + 0xa995c0: ('MotherBrain_Instr_MoveBodyUp16Left4', ''), + 0xa995ca: ('MotherBrain_Instr_MoveBodyUp12Right2', ''), + 0xa995de: ('MotherBrain_Instr_MoveDown12Left4', ''), + 0xa995e8: ('MotherBrain_Instr_MoveDown16Right2', ''), + 0xa995f2: ('MotherBrain_Instr_MoveDown10Right2', ''), + 0xa995fc: ('MotherBrain_Instr_MoveUp2Right1', ''), + 0xa9960c: ('MotherBrain_Instr_MoveRight2', ''), + 0xa9961c: ('MotherBrain_Instr_MoveUp1', ''), + 0xa99622: ('MotherBrain_Instr_MoveUp1Right3_Sfx', ''), + 0xa99638: ('MotherBrain_Instr_Down2Right15', ''), + 0xa99648: ('MotherBrain_Instr_Down4Right6', ''), + 0xa99658: ('MotherBrain_Instr_Up4Left2', ''), + 0xa99668: ('MotherBrain_Instr_Up2Left1_Sfx', ''), + 0xa9967e: ('MotherBrain_Instr_Up2Left1_Sfx2', ''), + 0xa99694: ('MotherBrain_Instr_MoveLeft2', ''), + 0xa996a4: ('MotherBrain_Instr_MoveDown1', ''), + 0xa996aa: ('MotherBrain_Instr_MoveDown1Left3', ''), + 0xa996ba: ('MotherBrain_Instr_MoveUp2Left15_Sfx', ''), + 0xa996d0: ('MotherBrain_Instr_MoveUp4Left6', ''), + 0xa996e0: ('MotherBrain_Instr_MoveDown4Right2', ''), + 0xa996f0: ('MotherBrain_Instr_MoveDown2Right1', ''), + 0xa99700: ('MotherBrain_Instr_SetPose_Standing', ''), + 0xa99708: ('MotherBrain_Instr_SetPose_Walking', ''), + 0xa99710: ('MotherBrain_Instr_SetPose_Crouched', ''), + 0xa99718: ('MotherBrain_Instr_SetPose_CrouchedTrans', ''), + 0xa99720: ('MotherBrain_Instr_SetPose_DeathBeamMode', ''), + 0xa99728: ('MotherBrain_Instr_SetPose_LeaningDown', ''), + 0xa99ac8: ('MotherBrain_Instr_SpawnEprojToOffset', 'IIH'), + 0xa99aef: ('MotherBrain_Instr_SpawnDeathBeamEproj', ''), + 0xa99b05: ('MotherBrain_Instr_IncrBeamAttackPhase', ''), + 0xa99b0f: ('MotherBrain_Instr_Goto', 'G'), + 0xa99b14: ('MotherBrain_Instr_EnableNeckMovementGoto', 'G'), + 0xa99b20: ('MotherBrain_Instr_DisableNeckMovement', ''), + 0xa99b28: ('MotherBrain_Instr_QueueSfx2', 'H'), + 0xa99b32: ('MotherBrain_Instr_QueueSfx3', 'H'), + 0xa99b3c: ('MotherBrain_Instr_SpawnDroolEproj', ''), + 0xa99b6d: ('MotherBrain_Instr_SpawnPurpleBreath', ''), + 0xa99b77: ('MotherBrain_Instr_SetMainShakeTimer50', ''), + 0xa99c65: ('MotherBrain_Instr_GotoEitherOr', ''), + 0xa99cad: ('MotherBrain_Instr_MaybeGoto', ''), + 0xa99d0d: ('MotherBrain_Instr_MaybeGoto2', ''), + 0xa99d21: ('MotherBrain_Instr_Goto2', ''), + 0xa99df7: ('MotherBrain_Instr_QueueShitroidAttackSfx', ''), + 0xa99e29: ('MotherBrain_Instr_SpawnBlueRingEproj', ''), + 0xa99e37: ('MotherBrain_Instr_AimRingsAtShitroid', ''), + 0xa99e5b: ('MotherBrain_Instr_AimRingsAtSamus', ''), + 0xa99ea3: ('MotherBrain_Instr_IncrShitroidAttackCtr', ''), + 0xa99eb5: ('MotherBrain_Instr_SetShitroidAttackCtr0', ''), + 0xa99ebd: ('MotherBrain_Instr_SpawnBombEproj', 'H'), + 0xa99f46: ('MotherBrain_Instr_SpawnLaserEproj', ''), + 0xa99f84: ('MotherBrain_Instr_SpawnRainbowEproj', ''), + 0xa99f8e: ('MotherBrain_Instr_SetupFxForRainbowBeam', ''), + 0xa9cfb4: ('Shitroid_Instr_1', ''), + 0xa9cfca: ('Shitroid_Instr_2', ''), + 0xa9ecd0: ('sub_A9ECD0', ''), + 0xa9f920: ('Shitroid_Instr_3', ''), + 0xa9f936: ('Shitroid_Instr_4', ''), + 0xa9f990: ('Shitroid_Instr_6', ''), + 0xa9f994: ('Shitroid_Instr_5', 'G'), + 0xaab09c: ('Torizo_Instr_3', 'A'), + 0xaab11d: ('Torizo_Instr_31', ''), + 0xaab1be: ('Torizo_Instr_33', ''), + 0xaab224: ('Torizo_Instr_36', ''), + 0xaab22e: ('Torizo_Instr_37', ''), + 0xaab238: ('Torizo_Instr_35', ''), + 0xaab24d: ('Torizo_Instr_38', ''), + 0xaab271: ('Torizo_Instr_6', ''), + 0xaab94d: ('Torizo_Instr_5', ''), + 0xaab951: ('Torizo_Instr_9', ''), + 0xaac2c8: ('Torizo_Instr_7', ''), + 0xaac2c9: ('Torizo_Instr_2', ''), + 0xaac2d1: ('Torizo_Instr_8', ''), + 0xaac2d9: ('Torizo_Instr_25', 'GG'), + 0xaac2ed: ('Torizo_Instr_22', 'A'), + 0xaac2f7: ('Torizo_Instr_19', ''), + 0xaac2fd: ('Torizo_Instr_32', ''), + 0xaac303: ('Torizo_Instr_30', 'H'), + 0xaac32f: ('Torizo_Instr_34', ''), + 0xaac34a: ('Torizo_Instr_24', ''), + 0xaac35b: ('Torizo_Instr_12', ''), + 0xaac36d: ('Torizo_Instr_10', ''), + 0xaac377: ('Torizo_Instr_11', ''), + 0xaac38a: ('Torizo_Instr_29', ''), + 0xaac3a0: ('Torizo_Instr_1', ''), + 0xaac3b6: ('Torizo_Instr_28', ''), + 0xaac3cc: ('Torizo_Instr_4', 'H'), + 0xaac41e: ('Torizo_Instr_40', 'H'), + 0xaac470: ('Torizo_Instr_16', 'H'), + 0xaac4e5: ('Torizo_Instr_27', 'H'), + 0xaac55a: ('Torizo_Instr_23', 'G'), + 0xaac567: ('Torizo_Instr_14', 'G'), + 0xaac58b: ('Torizo_Instr_15', 'G'), + 0xaac5a4: ('Torizo_Instr_26', 'GG'), + 0xaac5cb: ('Torizo_Instr_18', ''), + 0xaac5e3: ('Torizo_Instr_20', 'H'), + 0xaac5f2: ('Torizo_Instr_44', 'H'), + 0xaac601: ('Torizo_Instr_21', 'H'), + 0xaac610: ('Torizo_Instr_17', ''), + 0xaac618: ('Torizo_Instr_13', ''), + 0xaacace: ('Torizo_Instr_39', 'G'), + 0xaacade: ('Torizo_Instr_41', ''), + 0xaacae2: ('Torizo_Instr_42', ''), + 0xaacdd7: ('Torizo_Instr_48', ''), + 0xaad0e9: ('Torizo_Instr_57', ''), + 0xaad0f3: ('Torizo_Instr_58', 'G'), + 0xaad17b: ('Torizo_Instr_59', ''), + 0xaad187: ('Torizo_Instr_62', ''), + 0xaad1e7: ('Torizo_Instr_63', ''), + 0xaad38f: ('Torizo_Instr_56', ''), + 0xaad397: ('Torizo_Instr_60', ''), + 0xaad39f: ('Torizo_Instr_46', ''), + 0xaad3e0: ('Torizo_Instr_47', ''), + 0xaad3ea: ('Torizo_Instr_49', 'G'), + 0xaad436: ('Torizo_Instr_61', 'H'), + 0xaad445: ('Torizo_Instr_53', 'G'), + 0xaad474: ('Torizo_Instr_55', 'G'), + 0xaad49b: ('Torizo_Instr_52', 'G'), + 0xaad4ba: ('Torizo_Instr_50', 'G'), + 0xaad4f3: ('Torizo_Instr_43', ''), + 0xaad4fd: ('Torizo_Instr_51', 'G'), + 0xaad526: ('Torizo_Instr_45', 'GG'), + 0xaad54d: ('Torizo_Instr_54', 'H'), + 0xaad9ba: ('Shaktool_Instr_1', ''), + 0xaad931: ('Shaktool_Instr_2', ''), + 0xaad93f: ('Shaktool_Instr_3', ''), + 0xaad94a: ('Shaktool_Instr_4', ''), + 0xaad953: ('Shaktool_Instr_5', ''), + 0xaad99f: ('Shaktool_Instr_6', ''), + 0xaae429: ('Shaktool_Instr_9', ''), + 0xaae436: ('Shaktool_Instr_11', ''), + 0xaae43d: ('Shaktool_Instr_10', ''), + 0xaae57f: ('Shaktool_Instr_8', ''), + 0xaae587: ('Shaktool_Instr_13', ''), + 0xaae58f: ('Shaktool_Instr_12', 'I'), + 0xaae5d8: ('Shaktool_Instr_7', 'H'), + 0xaae6f0: ('Shaktool_Instr_14', ''), + 0xb2ee40: ('SpacePirates_Instr_MovePixelsDownAndChangeDirFaceRight', 'I'), + 0xb2ee72: ('SpacePirates_Instr_MovePixelsDownAndChangeDirFaceLeft', 'I'), + 0xb2eea4: ('SpacePirates_Instr_RandomNewDirFaceR', ''), + 0xb2eebc: ('SpacePirates_Instr_RandomNewDirFaceL', ''), + 0xb2eed4: ('SpacePirates_Instr_PrepareWallJumpR', ''), + 0xb2eefd: ('SpacePirates_Instr_PrepareWallJumpL', ''), + 0xb2ef2a: ('SpacePirates_Instr_FireLaserL', ''), + 0xb2ef5d: ('SpacePirates_Instr_FireLaserR', ''), + 0xb2ef83: ('SpacePirates_Instr_SetEnemyFunc', 'A'), + 0xb2ef93: ('SpacePirates_Instr_PlaySfx', ''), + 0xb2f536: ('SpacePirates_Instr_20', 'H'), + 0xb2f546: ('SpacePirates_Instr_16', 'H'), + 0xb2f554: ('sub_B2F554', ''), + 0xb2f564: ('SpacePirates_Instr_15', 'HII'), + 0xb2f590: ('SpacePirates_Instr_18', ''), + 0xb2f5b3: ('sub_B2F5B3', ''), + 0xb2f5d6: ('SpacePirates_Instr_17', ''), + 0xb2f969: ('SpacePirates_Instr_19', ''), + 0xb2f985: ('SpacePirates_F985', ''), + 0xb2fa3d: ('SpacePirates_Instr_21', ''), + 0xb2fa59: ('SpacePirates_FA59', ''), + 0xb2fc68: ('SpacePirates_Instr_12', 'I'), + 0xb2fc90: ('SpacePirates_Instr_14', 'I'), + 0xb2fcb8: ('SpacePirates_Instr_11', 'A'), + 0xb2fcc8: ('SpacePirates_Instr_13', ''), + 0xb394c7: ('Botwoon_Instr_1', ''), + 0xb394d7: ('Botwoon_Instr_2', ''), + 0xb394e7: ('Botwoon_Instr_3', ''), + 0xb394f7: ('Botwoon_Instr_4', ''), + 0xb39507: ('Botwoon_Instr_5', ''), + 0xb39517: ('Botwoon_Instr_6', ''), + 0xb39527: ('Botwoon_Instr_7', ''), + 0xb39537: ('Botwoon_Instr_8', ''), + 0xb39547: ('Botwoon_Instr_9', ''), + 0xb39557: ('Botwoon_Instr_10', ''), + 0xb39567: ('Botwoon_Instr_SetSpitting', ''), + 0xb39572: ('Botwoon_Instr_QueueSpitSfx', ''), + 0xb3e545: ('EscapeEtecoon_Instr_1', 'G'), + 0xb3e610: ('EscapeEtecoon_Instr_2', 'I'), + 0xb3eaa8: ('EscapeDachora_Instr_2', 'G'), + 0xb3eab8: ('EscapeDachora_Instr_3', 'G'), + 0xb3eac9: ('EscapeDachora_Instr_1', ''), + 0xb3ead7: ('EscapeDachora_Instr_4', ''), +} + +commons = { + 0x806b: ('SetAiPreInstr', 'A'), + 0x8074: ('ClearAiPreInstr', ''), + 0x807c: ('StopScript', ''), + 0x808a: ('Call', 'A'), + 0x80b5: ('CallFar', 'L'), + 0x80ed: ('Goto', 'G'), + 0x8110: ('DecTimerAndGoto', 'G'), + 0x8123: ('SetTimer', 'H'), + 0x812f: ('Sleep', ''), + 0x813a: ('WaitNframes', 'H'), + 0x814b: ('CopyToVram', 'HLX'), + 0x8173: ('EnableOffScreenProcessing', ''), + 0x817d: ('DisableOffScreenProcessing', ''), +} + +kInstrTerminator = { + 0x807C, 0x80ED, 0x812F, + 0xa6BFF8, 0xa29451, 0xa8CECB, 0xa8D0C2, 0xa8F526, 0xa99B0F, 0xa99B14, 0xa99C65, 0xa99d21, 0xa9cfb4, 0xA9CFCA, 0xa9f920, 0xa9f936, 0xa9f990, + 0xaaC2F7, 0xaaC2FD, 0xb2EEA4, 0xb2EEBC, 0xb2FCC8 +} + + +for x in [0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2, 0xb3]: + for k, v in commons.items(): + kInstructionSet[k + (x << 16)] = v + +kCommandByName = {v[0] : (k, v[1]) for k, v in kInstructionSet.items()} + +class EnemyInstrParser(InstrParserCommon): + instruction_set = kInstructionSet + instruction_set_term = kInstrTerminator + TAG = 'enemy' + + def __init__(self): + super().__init__() + self.sprite_maps = set() + + def handle_draw_command(self, ins, ea): + drawp = get_word(ea + 2) | (ea & 0xff0000) + self.sprite_maps.add(drawp) + #assert drawp != 0xa6f142, hex(ea) + self.print_line(ea, f' {ins} ! {get_ea_name(drawp)}') + return 4 + + def process_queue_entry(self, ea): + assert ea & 0x8000 + while ea not in self.visited: + self.visited.add(ea) + ins = get_word(ea) + if ins & 0x8000: + ea_org = ea + ins = (ea & 0xff0000) | ins + if ins not in self.instruction_set: + print(f'// Ins {ins:X} not in iset at {ea:X}') + return + name, operands = self.instruction_set[ins] + ea += 2 + r = [] + for op in operands: + if op == 'H': + r.append('%d' % get_word(ea)) + ea += 2 + elif op == 'I': + r.append('%d' % sex16(get_word(ea))) + ea += 2 + elif op == 'X': + r.append('0x%x' % get_word(ea)) + ea += 2 + elif op == 'L': + r.append(get_ea_name(get_word(ea) + get_byte(ea+2) * 65536)) + ea += 3 + elif op == 'A': + addr = (ea & 0xff0000) | get_word(ea) + r.append(get_ea_name(addr)) + ea += 2 + elif op == '6': + addr = 0xa60000 | get_word(ea) + r.append(get_ea_name(addr)) + ea += 2 + elif op == 'G': + addr = (ea & 0xff0000) | get_word(ea) + assert addr & 0x8000, hex(ea) + r.append(get_ea_name(addr, short_label = True)) + self.visit(addr) + ea += 2 + else: + assert 0, op + self.print_line(ea_org, f' {name}({", ".join(r)})') + if ins in self.instruction_set_term or (ins & 0xffff) in self.instruction_set_term: + self.print_line(ea_org + 1, '') + break + else: + ea += self.handle_draw_command(ins, ea) diff --git a/assets/eproj_decode.py b/assets/eproj_decode.py new file mode 100644 index 0000000..de790bb --- /dev/null +++ b/assets/eproj_decode.py @@ -0,0 +1,204 @@ +import pickle +from decode_common import * + +BANK = 0x86 + +kEprojInstructionSet = { + 0x868154: ('Delete', ''), + 0x868159: ('Sleep', ''), + 0x868161: ('SetPreInstr_', 'A'), + 0x86816a: ('ClearPreInstr', ''), + 0x868171: ('CallFunc', 'L'), + 0x86818b: ('CallFuncWithParam', 'LH'), + 0x8681ab: ('Goto', 'G'), + 0x8681c6: ('DecTimerAndGotoIfNonZero', 'G'), + 0x8681d5: ('SetTimer', 'H'), + 0x8681de: ('nullsub_82', ''), + 0x8681df: ('MoveRandomlyWithinRadius', 'BBBB'), + 0x868230: ('SetProjectileProperties', 'X'), + 0x86823c: ('ClearProjectileProperties', 'X'), + 0x868248: ('EnableCollisionWithSamusProj', ''), + 0x868252: ('DisableCollisionWithSamusProj', ''), + 0x86825c: ('DisableCollisionWithSamus', ''), + 0x868266: ('EnableCollisionWithSamus', ''), + 0x868270: ('SetToNotDieOnContact', ''), + 0x86827a: ('SetToDieOnContact', ''), + 0x868284: ('SetLowPriority', ''), + 0x86828e: ('SetHighPriority', ''), + 0x868298: ('SetXyRadius', 'BB'), + 0x8682a1: ('SetXyRadiusZero', ''), + 0x8682a5: ('CalculateDirectionTowardsSamus', ''), + 0x8682d5: ('WriteColorsToPalette', 'HHH'), + 0x8682fd: ('QueueMusic', 'B'), + 0x868309: ('QueueSfx1_Max6', 'B'), + 0x868312: ('QueueSfx2_Max6', 'B'), + 0x86831b: ('QueueSfx3_Max6', 'B'), + 0x868324: ('QueueSfx1_Max15', 'B'), + 0x86832d: ('QueueSfx2_Max15', 'B'), + 0x868336: ('QueueSfx3_Max15', 'B'), + 0x86833f: ('QueueSfx1_Max3', 'B'), + 0x868348: ('QueueSfx2_Max3', 'B'), + 0x868351: ('QueueSfx3_Max3', 'B'), + 0x86835a: ('QueueSfx1_Max9', 'B'), + 0x868363: ('QueueSfx2_Max9', 'B'), + 0x86836c: ('QueueSfx3_Max9', 'B'), + 0x868375: ('QueueSfx1_Max1', 'B'), + 0x86837e: ('QueueSfx2_Max1', 'B'), + 0x868387: ('QueueSfx3_Max1', 'B'), + 0x868c68: ('SpawnEnemyDropsWithDraygonsEyeDrops', ''), + 0x868cf6: ('EnemyProjInstr_SetPreInstrA', ''), + 0x868d99: ('EprojInstr_868D99', ''), + 0x869270: ('EprojInstr_9270', ''), + 0x8695ba: ('EprojInstr_95BA', ''), + 0x8695ed: ('EprojInstr_95ED', ''), + 0x869620: ('EprojInstr_9620', ''), + 0x86980e: ('EprojInstr_980E', ''), + 0x86a050: ('SetPreInstrAndRun', 'A'), + 0x86a3be: ('EprojInstr_A3BE', ''), + 0x86ab8a: ('SpawnEnemyDrops', 'aa'), + 0x86af36: ('ResetXYpos1', ''), + 0x86b269: ('SetVelTowardsSamus1', ''), + 0x86b7ea: ('SpawnTourianStatueUnlockingParticle', ''), + 0x86b7f5: ('Earthquake', ''), + 0x86b818: ('SpawnTourianStatueUnlockingParticleTail', ''), + 0x86c173: ('SwitchJump', ''), + 0x86c1b4: ('UserPalette0', ''), + 0x86caee: ('MotherBrainPurpleBreathIsActive', ''), + 0x86c42e: ('sub_86C42E', ''), + 0x86c8d0: ('Add12ToY', ''), + 0x86d1c7: ('EprojInstr_D1C7', ''), + 0x86d1ce: ('EprojInstr_D1CE', ''), + 0x86d5f2: ('SetN00bTubeShardX', 'SS'), + 0x86d5e1: ('AssignNewN00bTubeShardVelocity', ''), + 0x86d69a: ('SetXvelRandom', ''), + 0x86dc5a: ('EprojInstr_DC5A', ''), + 0x86dc61: ('SpawnEnemyDrops_0', ''), + 0x86dfea: ('EprojInstr_DFEA', ''), + 0x86e533: ('SetYVel', 'I'), + 0x86ee8b: ('QueueSfx2_9', ''), + 0x86b13e: ('sub_86B13E', ''), + 0x86b272: ('SetVelTowardsSamus2', ''), + 0x86b3b8: ('GotoIfFunc1', 'G'), + 0x86d15c: ('EprojInstr_D15C', ''), + 0x86d1b6: ('EprojInstr_D1B6', ''), + 0x86d62a: ('EprojInstr_D62A', 'H'), + 0x86dc77: ('SpawnSporesEproj', ''), + 0x86ef10: ('HandleRespawningEnemy', ''), + 0x86eeaf: ('EprojInstr_EEAF', ''), + 0x86eea3: ('QueueSfx2_B', ''), + 0x86ee97: ('QueueSfx2_24', ''), + 0x86ece3: ('EprojInstr_ECE3', 'H'), + 0x86ed17: ('EprojInstr_ED17', 'H'), + 0x86ad92: ('GotoDependingOnXDirection', 'HG'), + 0x869475: ('DisableCollisionsWithSamus', ''), + 0x86a456: ('GotoWithProbability25', 'G'), + 0x86af92: ('MoveY_Minus4', ''), + 0x86b841: ('AddToYpos', 'H'), +} + +kCommandByName = {v[0] : (k, v[1]) for k, v in kEprojInstructionSet.items()} + + +kEprojTerminator = {0x868154, 0x868159, 0x8681AB, 0x86c173} +kEprojTerminatorEA = {0x86B818} + +if 0: + name2ea = pickle.loads(open('names.pickle', 'rb').read()) + name2ea = {k.replace('?', '') : v for k, v in name2ea.items()} + ea2name = {v:k for k,v in name2ea.items()} + for k, v in kEprojInstructionSet.items(): + k = k | 0x860000 + t = ea2name[k] + name = t.replace('EprojInstr_', '') + args, _ = v + tostr = {1 : 'B', 2 : 'H', 3 : 'L'} + args = ''.join(tostr[a] for a in args) + if name.startswith('Goto'): + args = args[:-1] + 'G' + print(" 0x%x: ('%s', '%s')," % (k, name, args)) + +class EprojParser(InstrParserCommon): + forbidden_addrs = {0x868a39} + + def __init__(self): + super().__init__() + self.sprite_maps = set() + + def print(self, file): + print('', file = file) + print('', file = file) + + def process_queue_entry(self, ea): + assert ea & 0x8000 + while True: + if ea in self.visited or ea in kEprojTerminatorEA: + break + + self.visited.add(ea) + ins = get_word(ea) + if ins & 0x8000: + ea_org = ea + ins = 0x860000 | ins + if ins not in kEprojInstructionSet: + print(f'// Ins {ins:X} not in iset at {ea:X}') + self.missing_isets.add(ea & 0xff0000 | ins) + return + name, operands = kEprojInstructionSet[ins] + ea += 2 + r = [] + for op in operands: + if op == 'B': + r.append('%d' % get_byte(ea)) + ea += 1 + elif op == 'H': + r.append('%d' % get_word(ea)) + ea += 2 + elif op == 'I': + r.append('%d' % sex16(get_word(ea))) + ea += 2 + elif op == 'X': + r.append('0x%x' % get_word(ea)) + ea += 2 + elif op == 'L': + r.append(get_ea_name(get_word(ea) + get_byte(ea+2) * 65536)) + ea += 3 + elif op == 'G': + addr = 0x860000 | get_word(ea) + assert addr & 0x8000 + r.append(get_ea_name(addr, short_label=True)) + self.visit(addr) + ea += 2 + elif op == 'A': + addr = 0x860000 | get_word(ea) + assert addr & 0x8000 + r.append(get_ea_name(addr, short_label=True)) + ea += 2 + elif op == 'a': + addr = 0xa00000 | get_word(ea) + assert addr & 0x8000 + r.append(get_ea_name(addr)) + ea += 2 + elif op == 'S': + addr = 0x8D0000 | get_word(ea) + assert addr & 0x8000 + r.append(get_ea_name(addr)) + self.sprite_maps.add(addr) + ea += 2 + else: + assert 0 + self.print_line(ea_org, f' {name}({", ".join(r)})') + if ins in kEprojTerminator: + self.print_line(ea_org + 1, '') + break + else: + drawp = get_word(ea + 2) | 0x8D0000 + assert drawp & 0x8000, hex(ea) + assert drawp != 0x868000 + self.sprite_maps.add(drawp) + self.print_line(ea, f' {ins} ! {get_ea_name(drawp)}') + ea += 4 diff --git a/assets/names.txt b/assets/names.txt new file mode 100644 index 0000000..605df21 --- /dev/null +++ b/assets/names.txt @@ -0,0 +1,19217 @@ +0x700000 kSramChecksum +0x700008 kSramChecksumInverted +0x701fe0 str_madadameyohn +0x701fec sram_save_slot_selected +0x701fee sram_save_slot_selected_complement +0x701ff0 kSramChecksumUpper +0x701ff8 kSramChecksumInvertedUpper +0x7e0000 R0_ +0x7e0003 R3_ +0x7e0006 R6_ +0x7e0008 R8_ +0x7e000a R10_ +0x7e000c R12_ +0x7e000e R14_ +0x7e0010 R16_ +0x7e0012 R18_ +0x7e0014 R20_ +0x7e0016 R22_ +0x7e0018 R24_ +0x7e001a R26_ +0x7e001c R28_ +0x7e0020 R32 +0x7e0022 R34 +0x7e0024 R36 +0x7e0026 R38 +0x7e0028 R40 +0x7e002a R42 +0x7e002c R44 +0x7e002e R46 +0x7e0030 R48 +0x7e0032 R50 +0x7e0034 bg3_tilemap_offset +0x7e0036 copywithflip_src +0x7e003b nmicopy1_var_a +0x7e003c nmicopy1_var_d +0x7e0044 decompress_dst_tmp +0x7e0047 decompress_src +0x7e004a decompress_last_byte +0x7e004b decompress_tmp1 +0x7e004c decompress_dst +0x7e004f decompress_want_xor +0x7e0051 reg_INIDISP +0x7e0052 reg_OBSEL +0x7e0053 reg_OAMaddr_UNUSED +0x7e0055 reg_BGMODE +0x7e0056 reg_BGMODE_fake +0x7e0057 reg_MOSAIC +0x7e0058 reg_BG1SC +0x7e0059 reg_BG2SC +0x7e005a reg_BG3SC +0x7e005b gameplay_BG3SC +0x7e005c reg_BG4SC +0x7e005d reg_BG12NBA +0x7e005e reg_BG34NBA +0x7e005f reg_M7SEL +0x7e0060 reg_W12SEL +0x7e0061 reg_W34SEL +0x7e0062 reg_WOBJSEL +0x7e0063 reg_WH0 +0x7e0064 reg_WH1 +0x7e0065 reg_WH2 +0x7e0066 reg_WH3 +0x7e0067 reg_WBGLOG +0x7e0068 reg_WOBJLOG +0x7e0069 reg_TM +0x7e006a gameplay_TM +0x7e006b reg_TS +0x7e006c reg_TMW +0x7e006d reg_TSW +0x7e006e next_gameplay_CGWSEL +0x7e006f reg_CGWSEL +0x7e0070 gameplay_CGWSEL +0x7e0071 next_gameplay_CGADSUB +0x7e0072 reg_CGADSUB +0x7e0073 gameplay_CGADSUB +0x7e0074 reg_COLDATA +0x7e0077 reg_SETINI +0x7e0078 reg_M7A +0x7e007a reg_M7B +0x7e007c reg_M7C +0x7e007e reg_M7D +0x7e0080 reg_M7X +0x7e0082 reg_M7Y +0x7e0084 reg_NMITIMEN +0x7e0085 reg_HDMAEN +0x7e0086 reg_MEMSEL +0x7e0087 joypad_ctr_repeat_first +0x7e0089 joypad_ctr_repeat_next +0x7e008b joypad1_lastkeys +0x7e008d joypad2_last +0x7e008f joypad1_newkeys +0x7e0091 joypad2_new_keys +0x7e0093 joypad1_newkeys2_UNUSED +0x7e0095 joypad2_newkeys2 +0x7e0097 joypad1_prev +0x7e0099 joypad2_prev +0x7e00a3 joypad1_keyrepeat_ctr +0x7e00a5 joypad2_keyrepeat_ctr +0x7e00a7 irqhandler_next_handler +0x7e00a9 room_loading_irq_handler +0x7e00ab cur_irq_handler +0x7e00ad ptr_to_retaddr_parameters +0x7e00af current_region_animated_palette_fx +0x7e00b1 reg_BG1HOFS +0x7e00b3 reg_BG1VOFS +0x7e00b5 reg_BG2HOFS +0x7e00b7 reg_BG2VOFS +0x7e00b9 reg_BG3HOFS +0x7e00bb reg_BG3VOFS +0x7e00bd reg_BG4HOFS +0x7e00bf reg_BG4VOFS +0x7e00c2 bug_fix_counter +0x7e00d0 vram_write_queue +0x7e02d0 mode7_write_queue +0x7e0330 vram_write_queue_tail +0x7e0334 mode7_vram_write_queue_tail +0x7e0340 vram_read_queue +0x7e0360 vram_read_queue_tail +0x7e0370 oam_ent +0x7e0570 oam_ext +0x7e0590 oam_next_ptr +0x7e0592 power_bomb_explosion_status +0x7e059a set_to_e0_by_scrolling_sky +0x7e059c UNUSED_word_7E059C +0x7e05a0 UNUSED_hdma_contracting_flag +0x7e05a2 message_box_animation_y_radius +0x7e05a4 message_box_animation_y0 +0x7e05a6 message_box_animation_y1 +0x7e05a8 message_box_animation_y2 +0x7e05aa message_box_animation_y3 +0x7e05ac map_min_x_scroll +0x7e05ae map_max_x_scroll +0x7e05b0 map_min_y_scroll +0x7e05b2 map_max_y_scroll +0x7e05b4 waiting_for_nmi +0x7e05b5 nmi_frame_counter_byte +0x7e05b6 nmi_frame_counter_word +0x7e05b8 nmi_frame_counter_including_lag +0x7e05ba nmi_frames_missed +0x7e05bb nmi_frames_missed_max +0x7e05bc door_transition_vram_update_enabled +0x7e05be door_transition_vram_update_dst +0x7e05c0 door_transition_vram_update_src +0x7e05c3 door_transition_vram_update_size +0x7e05c5 joypad_dbg_1 +0x7e05c7 joypad_dbg_2 +0x7e05c9 joypad_dbg_missiles_swap +0x7e05cb joypad_dbg_super_missiles_swap +0x7e05cd joypad_dbg_power_bombs_swap +0x7e05cf joypad_dbg_flags +0x7e05d1 enable_debug +0x7e05d3 debug_saveload_scrollpos_toggle +0x7e05d5 debug_saved_xscroll +0x7e05d7 debug_saved_yscroll +0x7e05d9 joypad_released_keys +0x7e05db timed_held_input_timer +0x7e05dd timed_held_input_timer_reset +0x7e05df timed_held_input +0x7e05e1 newly_held_down_timed_held_input +0x7e05e3 previous_timed_held_input +0x7e05e5 random_number +0x7e05e7 bitmask +0x7e05e9 mult_tmp_a +0x7e05eb mult_tmp_y +0x7e05f1 mult_product_lo +0x7e05f3 mult_product_hi +0x7e05f5 debug_disable_sounds +0x7e05f7 debug_disable_minimap +0x7e05f9 save_confirmation_selection +0x7e05fb map_scrolling_gear_switch_timer +0x7e05fd map_scrolling_direction +0x7e05ff map_scrolling_speed_index +0x7e0601 pause_hook +0x7e0604 unpause_hook +0x7e0607 earthquake_sfx_index +0x7e0609 earthquake_sfx_timer +0x7e060b enemy_projectile_init_param_2 +0x7e060d remaining_enemy_hitbox_entries +0x7e060f num_projectiles_to_check_enemy_coll +0x7e0611 coroutine_state_0 +0x7e0612 coroutine_state_1 +0x7e0613 coroutine_state_2 +0x7e0614 coroutine_state_3 +0x7e0615 coroutine_state_4 +0x7e0616 coroutine_state_5 +0x7e0617 is_uploading_apu +0x7e0619 music_queue_track +0x7e0629 music_queue_delay +0x7e0639 music_queue_write_pos +0x7e063b music_queue_read_pos +0x7e063d music_entry +0x7e063f music_timer +0x7e0641 apu_attempts_countdown +0x7e0643 sfx_readpos +0x7e0646 sfx_writepos +0x7e0649 sfx_state +0x7e064c cur_music_track +0x7e064d sfx_cur +0x7e0650 sfx_clear_delay +0x7e0653 sfx_max_queued +0x7e0656 sfx1_queue +0x7e0666 sfx2_queue +0x7e0676 sfx3_queue +0x7e0686 sound_handler_downtime +0x7e0688 croco_target_0688 +0x7e068c croco_word_068C +0x7e0690 croco_cur_vline_idx +0x7e069c croco_vline_height +0x7e071c UNUSED_byte_7E071C +0x7e071d nmi_copy_samus_halves +0x7e071f nmi_copy_samus_top_half_src +0x7e0721 nmi_copy_samus_bottom_half_src +0x7e0723 screen_fade_delay +0x7e0725 screen_fade_counter +0x7e0727 menu_index +0x7e0729 pausemenu_start_lr_pressed_highlight_timer +0x7e072b pausemenu_lr_animation_timer +0x7e072d pausemenu_item_selector_animation_timer +0x7e072f pausemenu_reserve_tank_animation_timer +0x7e0731 UNUSED_word_7E0731 +0x7e0733 pausemenu_uparrow_animation_timer +0x7e0735 pausemenu_downarrow_animation_timer +0x7e0737 pausemenu_rightarrow_animation_timer +0x7e0739 pausemenu_leftarrow_animation_timer +0x7e073b pausemenu_palette_animation_timer +0x7e073d UNUSED_word_7E073D +0x7e073f pausemenu_lr_animation_frame +0x7e0741 pausemenu_item_selector_animation_frame +0x7e0743 pausemenu_reserve_tank_animation_frame +0x7e0745 UNUSED_word_7E0745 +0x7e0747 pausemenu_uparrow_animation_frame +0x7e0749 pausemenu_downarrow_animation_frame +0x7e074b pausemenu_rightarrow_animation_frame +0x7e074d pausemenu_leftarrow_animation_frame +0x7e074f pausemenu_palette_animation_frame +0x7e0751 pausemenu_shoulder_button_highlight +0x7e0753 pausemenu_button_label_mode +0x7e0755 pausemenu_equipment_category_item +0x7e0757 pausemenu_reserve_tank_delay_ctr +0x7e0759 UNUSED_word_7E0759 +0x7e075b UNUSED_word_7E075B +0x7e075d UNUSED_word_7E075D +0x7e075f UNUSED_word_7E075F +0x7e0761 UNUSED_word_7E0761 +0x7e0763 pause_screen_mode +0x7e0765 pausemenu_bak_BG1SC +0x7e0766 pausemenu_bak_BG2SC +0x7e0767 pausemenu_bak_BG3SC +0x7e0768 pausemenu_bak_BG12NBA +0x7e0769 pausemenu_bak_BG34NBA +0x7e076a pausemenu_bak_OBSEL +0x7e076b pausemenu_bak_BG1HOFS +0x7e076c pausemenu_bak_BG2HOFS +0x7e076d pausemenu_bak_BG3HOFS +0x7e076e pausemenu_bak_BG1VOFS +0x7e076f pausemenu_bak_BG2VOFS +0x7e0770 pausemenu_bak_BG3VOFS +0x7e0771 pausemenu_bak_BGMODE +0x7e0772 pausemenu_bak_layer2_scroll_x +0x7e0773 pausemenu_bak_layer2_scroll_y +0x7e0774 pausemenu_bak_MOSAIC +0x7e0775 pausemenu_bak_CGADSUB +0x7e0776 samus_position_indicator_animation_frame +0x7e0778 samus_position_indicator_animation_timer +0x7e077a samus_position_indicator_animation_loop_counter +0x7e077c hud_item_tilemap_palette_bits +0x7e077e my_counter +0x7e0780 my_counter2 +0x7e0782 coroutine_completion_flags +0x7e0783 irq_enable_mode7 +0x7e0785 mode7_rotation_angle +0x7e0789 has_area_map +0x7e078b load_station_index +0x7e078d door_def_ptr +0x7e078f door_bts +0x7e0791 door_direction +0x7e0793 elevator_door_properties_orientation +0x7e0795 door_transition_flag_elevator_zebetites +0x7e0797 door_transition_flag_enemies +0x7e0799 elevator_direction +0x7e079b room_ptr +0x7e079d room_index +0x7e079f area_index +0x7e07a1 room_x_coordinate_on_map +0x7e07a3 room_y_coordinate_on_map +0x7e07a5 room_width_in_blocks +0x7e07a7 room_height_in_blocks +0x7e07a9 room_width_in_scrolls +0x7e07ab room_height_in_scrolls +0x7e07ad up_scroller +0x7e07af down_scroller +0x7e07b1 previous_cre_bitset +0x7e07b3 cre_bitset +0x7e07b5 door_list_pointer +0x7e07b7 event_pointer +0x7e07b9 room_size_in_blocks +0x7e07bb roomdefroomstate_ptr +0x7e07bd room_compr_level_data_ptr +0x7e07c0 tileset_tile_table_pointer +0x7e07c3 tileset_tiles_pointer +0x7e07c6 tileset_compr_palette_ptr +0x7e07c9 room_music_track_index +0x7e07cb room_music_data_index +0x7e07cd room_layer3_asm_ptr +0x7e07cf room_enemy_population_ptr +0x7e07d1 room_enemy_tilesets_ptr +0x7e07df room_main_code_ptr +0x7e07e1 room_main_asm_variables +0x7e07e9 scrolling_finished_hook +0x7e07eb hdma_data_table_in_ceres +0x7e07f3 music_data_index +0x7e07f5 music_track_index +0x7e07f7 map_tiles_explored +0x7e08f7 layer1_x_block +0x7e08f9 layer1_y_block +0x7e08fb layer2_x_block +0x7e08fd layer2_y_block +0x7e08ff previous_layer1_x_block +0x7e0901 previous_layer1_y_block +0x7e0903 previous_layer2_x_block +0x7e0905 previous_layer2_y_block +0x7e0907 bg1_x_block +0x7e0909 bg1_y_block +0x7e090b bg2_x_block +0x7e090d bg2_y_block +0x7e090f layer1_x_subpos +0x7e0911 layer1_x_pos +0x7e0913 layer1_y_subpos +0x7e0915 layer1_y_pos +0x7e0917 layer2_x_pos +0x7e0919 layer2_y_pos +0x7e091b layer2_scroll_x +0x7e091c layer2_scroll_y +0x7e091d bg1_x_offset +0x7e091f bg1_y_offset +0x7e0921 bg2_x_scroll +0x7e0923 bg2_y_scroll +0x7e0925 door_transition_frame_counter +0x7e0927 door_destination_x_pos +0x7e0929 door_destination_y_pos +0x7e092b samus_door_transition_subspeed +0x7e092d samus_door_transition_speed +0x7e092f downwards_elevator_delay_timer +0x7e0931 door_transition_flag +0x7e0933 temp933 +0x7e0935 x_block_of_vram_blocks_to_update +0x7e0937 tmp_vram_base_addr +0x7e0939 var939 +0x7e093b tmp_block_to_update +0x7e093f ceres_status +0x7e0941 camera_distance_index +0x7e0943 timer_status +0x7e0945 timer_centiseconds +0x7e0946 timer_seconds +0x7e0947 timer_minutes +0x7e0948 timer_x_pos +0x7e094a timer_y_pos +0x7e0950 file_select_map_area_index +0x7e0952 selected_save_slot +0x7e0954 nonempty_save_slots +0x7e0956 bg1_update_col_unwrapped_size +0x7e0958 bg1_update_col_wrapped_size +0x7e095a bg1_update_col_unwrapped_dst +0x7e095c bg1_update_col_wrapped_dst +0x7e095e bg1_update_col_wrapped_left_src +0x7e0960 bg1_update_col_wrapped_right_src +0x7e0962 bg1_update_col_enable +0x7e0964 bg1_update_row_unwrapped_size +0x7e0966 bg1_update_row_wrapped_size +0x7e0968 bg1_update_row_unwrapped_dst +0x7e096a bg1_update_row_wrapped_dst +0x7e096c bg1_update_row_wrapped_top_src +0x7e096e bg1_update_row_wrapped_bottom_src +0x7e0970 bg1_update_row_enable +0x7e0972 bg2_update_col_unwrapped_size +0x7e0974 bg2_update_col_wrapped_size +0x7e0976 bg2_update_col_unwrapped_dst +0x7e0978 bg2_update_col_wrapped_dst +0x7e097a bg2_update_col_wrapped_left_src +0x7e097c bg2_update_col_wrapped_right_src +0x7e097e bg2_update_col_enable +0x7e0980 bg2_update_row_unwrapped_size +0x7e0982 bg2_update_row_wrapped_size +0x7e0984 bg2_update_row_unwrapped_dst +0x7e0986 bg2_update_row_wrapped_dst +0x7e0988 bg2_update_row_wrapped_top_src +0x7e098a bg2_update_row_wrapped_bottom_src +0x7e098c bg2_update_row_enable +0x7e098e size_of_bg2 +0x7e0990 blocks_to_update_x_block +0x7e0992 blocks_to_update_y_block +0x7e0994 vram_blocks_to_update_x_block +0x7e0996 vram_blocks_to_update_y_block +0x7e0998 game_state +0x7e099c door_transition_function +0x7e099e menu_option_index +0x7e09a2 equipped_items +0x7e09a4 collected_items +0x7e09a6 equipped_beams +0x7e09a8 collected_beams +0x7e09aa button_config_up +0x7e09ac button_config_down +0x7e09ae button_config_left +0x7e09b0 button_config_right +0x7e09b2 button_config_shoot_x +0x7e09b4 button_config_jump_a +0x7e09b6 button_config_run_b +0x7e09b8 button_config_itemcancel_y +0x7e09ba button_config_itemswitch +0x7e09bc button_config_aim_down_L +0x7e09be button_config_aim_up_R +0x7e09c0 reserve_health_mode +0x7e09c2 samus_health +0x7e09c4 samus_max_health +0x7e09c6 samus_missiles +0x7e09c8 samus_max_missiles +0x7e09ca samus_super_missiles +0x7e09cc samus_max_super_missiles +0x7e09ce samus_power_bombs +0x7e09d0 samus_max_power_bombs +0x7e09d2 hud_item_index +0x7e09d4 samus_max_reserve_health +0x7e09d6 samus_reserve_health +0x7e09d8 samus_reserve_missiles +0x7e09da game_time_frames +0x7e09dc game_time_seconds +0x7e09de game_time_minutes +0x7e09e0 game_time_hours +0x7e09e2 japanese_text_flag +0x7e09e4 moonwalk_flag +0x7e09e6 debug_flag +0x7e09e8 UNUSED_word_7E09E8 +0x7e09ea hud_auto_cancel_flag +0x7e0a04 samus_auto_cancel_hud_item_index +0x7e0a06 samus_prev_health +0x7e0a08 samus_prev_missiles +0x7e0a0a samus_prev_super_missiles +0x7e0a0c samus_prev_power_bombs +0x7e0a0e samus_prev_hud_item_index +0x7e0a10 UNUSED_unk_7E0A10 +0x7e0a11 samus_prev_movement_type +0x7e0a12 samus_prev_health_for_flash +0x7e0a14 controller1_input_for_demo +0x7e0a16 controller1_new_input_for_demo +0x7e0a18 UNUSED_word_7E0A18 +0x7e0a1c samus_pose +0x7e0a1e samus_pose_x_dir +0x7e0a1f samus_movement_type +0x7e0a20 samus_prev_pose +0x7e0a22 samus_prev_pose_x_dir +0x7e0a23 samus_prev_movement_type2 +0x7e0a24 samus_last_different_pose +0x7e0a26 samus_last_different_pose_x_dir +0x7e0a27 samus_last_different_pose_movement_type +0x7e0a28 samus_new_pose +0x7e0a2a samus_new_pose_interrupted +0x7e0a2c samus_new_pose_transitional +0x7e0a2e samus_momentum_routine_index +0x7e0a30 samus_special_transgfx_index +0x7e0a32 samus_hurt_switch_index +0x7e0a34 solid_enemy_collision_flags +0x7e0a36 block_collision_flags +0x7e0a38 samus_space_to_move_up_blocks +0x7e0a3a samus_y_radius_diff +0x7e0a3c samus_space_to_move_down_blocks +0x7e0a3e samus_space_to_move_up_enemy +0x7e0a40 samus_space_to_move_down_enemy +0x7e0a42 frame_handler_alfa +0x7e0a44 frame_handler_beta +0x7e0a46 enable_horiz_slope_coll +0x7e0a48 samus_hurt_flash_counter +0x7e0a4a samus_special_super_palette_flags +0x7e0a4c samus_subunit_health +0x7e0a4e samus_periodic_subdamage +0x7e0a50 samus_periodic_damage +0x7e0a52 knockback_dir +0x7e0a54 knockback_x_dir +0x7e0a56 bomb_jump_dir +0x7e0a58 samus_movement_handler +0x7e0a5a frame_handler_gamma +0x7e0a5c samus_draw_handler +0x7e0a5e UNUSED_word_7E0A5E +0x7e0a60 samus_input_handler +0x7e0a62 samus_var62 +0x7e0a64 samus_grapple_flags +0x7e0a66 samus_x_speed_divisor +0x7e0a68 samus_shine_timer +0x7e0a6a samus_health_warning +0x7e0a6c samus_x_speed_table_pointer +0x7e0a6e samus_contact_damage_index +0x7e0a72 samus_visor_palette_timer_index +0x7e0a74 samus_suit_palette_index +0x7e0a76 hyper_beam_flag +0x7e0a78 time_is_frozen_flag +0x7e0a7a demo_input_pre_instr +0x7e0a7c demo_input_instr_timer +0x7e0a7e demo_input_instr_ptr +0x7e0a80 demo_timer_counter +0x7e0a82 xray_angle +0x7e0a84 demo_input +0x7e0a86 demo_input_new +0x7e0a88 demo_enable +0x7e0a8a demo_num_input_frames +0x7e0a8c demo_input_prev +0x7e0a8e demo_input_prev_new +0x7e0a90 demo_backup_prev_controller_input +0x7e0a92 demo_backup_prev_controller_input_new +0x7e0a94 samus_anim_frame_timer +0x7e0a96 samus_anim_frame +0x7e0a9a samus_anim_frame_skip +0x7e0a9c samus_anim_frame_buffer +0x7e0a9e grapple_walljump_timer +0x7e0aa0 reached_ceres_elevator_fade_timer +0x7e0aa2 timer_for_shinesparks_startstop +0x7e0aa4 UNUSEDword_7E0AA4 +0x7e0aa6 flag_arm_cannon_open_or_opening +0x7e0aa7 flag_arm_cannon_opening_or_closing +0x7e0aa8 arm_cannon_frame +0x7e0aaa hud_item_changed_this_frame +0x7e0aac arm_cannon_drawing_mode +0x7e0aae speed_echoes_index +0x7e0ab0 speed_echo_xpos +0x7e0ab8 speed_echo_ypos +0x7e0ac0 speed_echo_xspeed +0x7e0ac8 samus_top_half_spritemap_index +0x7e0aca samus_bottom_half_spritemap_index +0x7e0acc timer_for_shine_timer +0x7e0ace special_samus_palette_frame +0x7e0ad0 special_samus_palette_timer +0x7e0ad2 liquid_physics_type +0x7e0ad4 atmospheric_gfx_anim_timer +0x7e0adc atmospheric_gfx_x_pos +0x7e0ae4 atmospheric_gfx_y_pos +0x7e0aec atmospheric_gfx_frame_and_type +0x7e0af4 autojump_timer +0x7e0af6 samus_x_pos +0x7e0af8 samus_x_subpos +0x7e0afa samus_y_pos +0x7e0afc samus_y_subpos +0x7e0afe samus_x_radius +0x7e0b00 samus_y_radius +0x7e0b02 samus_collision_direction +0x7e0b04 samus_spritemap_x_pos +0x7e0b06 samus_spritemap_y_pos +0x7e0b0a ideal_layer1_xpos +0x7e0b0e ideal_layer1_ypos +0x7e0b10 samus_prev_x_pos +0x7e0b12 samus_prev_x_subpos +0x7e0b14 samus_prev_y_pos +0x7e0b16 samus_prev_y_subpos +0x7e0b18 charged_shot_glow_timer +0x7e0b1a UNUSED_word_7E0B1A +0x7e0b20 used_for_ball_bounce_on_landing +0x7e0b22 samus_is_falling_flag +0x7e0b24 tempB24 +0x7e0b26 tempB26 +0x7e0b2a UNUSED_word_7E0B2A +0x7e0b2c samus_y_subspeed +0x7e0b2e samus_y_speed +0x7e0b32 samus_y_subaccel +0x7e0b34 samus_y_accel +0x7e0b36 samus_y_dir +0x7e0b38 UNUSED_word_7E0B38 +0x7e0b3c samus_has_momentum_flag +0x7e0b3e speed_boost_counter +0x7e0b40 samus_echoes_sound_flag +0x7e0b42 samus_x_extra_run_speed +0x7e0b44 samus_x_extra_run_subspeed +0x7e0b46 samus_x_base_speed +0x7e0b48 samus_x_base_subspeed +0x7e0b4a samus_x_accel_mode +0x7e0b4c samus_x_decel_mult +0x7e0b56 extra_samus_x_subdisplacement +0x7e0b58 extra_samus_x_displacement +0x7e0b5a extra_samus_y_subdisplacement +0x7e0b5c extra_samus_y_displacement +0x7e0b5e new_projectile_direction_changed_pose +0x7e0b60 used_for_sba_attacksB60 +0x7e0b62 samus_charge_palette_index +0x7e0b64 projectile_x_pos +0x7e0b78 projectile_y_pos +0x7e0b8c projectile_bomb_x_subpos +0x7e0ba0 projectile_bomb_y_subpos +0x7e0bb4 projectile_x_radius +0x7e0bc8 projectile_y_radius +0x7e0bdc projectile_bomb_x_speed +0x7e0bf0 projectile_bomb_y_speed +0x7e0c04 projectile_dir +0x7e0c18 projectile_type +0x7e0c2c projectile_damage +0x7e0c40 projectile_bomb_instruction_ptr +0x7e0c54 projectile_bomb_instruction_timers +0x7e0c68 projectile_bomb_pre_instructions +0x7e0c72 bomb_functions +0x7e0c7c projectile_variables +0x7e0c86 bomb_timers +0x7e0c90 projectile_timers +0x7e0c9a bomb_subspeeds +0x7e0ca4 projectile_unk_A +0x7e0cb8 projectile_spritemap_pointers +0x7e0ccc cooldown_timer +0x7e0cce projectile_counter +0x7e0cd0 flare_counter +0x7e0cd2 bomb_counter +0x7e0cd4 bomb_spread_charge_timeout_counter +0x7e0cd6 flare_animation_frame +0x7e0cd8 flare_slow_sparks_anim_frame +0x7e0cda flare_fast_sparks_anim_frame +0x7e0cdc flare_animation_timer +0x7e0cde flare_slow_sparks_anim_timer +0x7e0ce0 flare_fast_sparks_anim_timer +0x7e0ce2 power_bomb_explosion_x_pos +0x7e0ce4 power_bomb_explosion_y_pos +0x7e0ce6 power_bomb_explosion_x_pos_plus_0x100 +0x7e0ce8 power_bomb_explosion_y_pos_rsub_0x1ff +0x7e0cea power_bomb_explosion_radius +0x7e0cec power_bomb_pre_explosion_flash_radius +0x7e0cee power_bomb_flag +0x7e0cf0 power_bomb_pre_explosion_radius_speed +0x7e0cf2 pre_scaled_power_bomb_explosion_shape_def_ptr +0x7e0cf4 grapple_beam_flags +0x7e0cf6 grapple_varCF6 +0x7e0cf8 slow_grabble_scrolling_flag +0x7e0cfa grapple_beam_end_subangle +0x7e0cfb grapple_beam_end_angle +0x7e0cfc grapple_beam_end_angles_mirror +0x7e0cfe grapple_beam_length +0x7e0d00 grapple_beam_length_delta +0x7e0d02 grapple_beam_origin_x_offset +0x7e0d04 grapple_beam_origin_y_offset +0x7e0d06 grapple_beam_end_x_subpos +0x7e0d08 grapple_beam_end_x_pos +0x7e0d0a grapple_beam_end_y_subpos +0x7e0d0c grapple_beam_end_y_pos +0x7e0d0e grapple_beam_end_x_suboffset +0x7e0d10 grapple_beam_end_x_offset +0x7e0d12 grapple_beam_end_y_suboffset +0x7e0d14 grapple_beam_end_y_offset +0x7e0d16 x_pos_of_start_of_grapple_beam +0x7e0d18 y_pos_of_start_of_grapple_beam +0x7e0d1a x_pos_of_start_of_grapple_beam_prevframe +0x7e0d1c y_pos_of_start_of_grapple_beam_prevframe +0x7e0d1e grapple_beam_unkD1E +0x7e0d20 grapple_beam_unkD20 +0x7e0d22 grapple_beam_extension_x_velocity +0x7e0d24 grapple_beam_extension_y_velocity +0x7e0d26 grapple_beam_unkD26 +0x7e0d28 grapple_beam_unkD28 +0x7e0d2a grapple_beam_unkD2A +0x7e0d2c grapple_beam_unkD2C +0x7e0d2e grapple_beam_unkD2E +0x7e0d30 grapple_beam_unkD30 +0x7e0d32 grapple_beam_function +0x7e0d34 grapple_beam_direction +0x7e0d36 grapple_beam_unkD36 +0x7e0d38 grapple_beam_unkD38 +0x7e0d3a grapple_beam_unkD3A +0x7e0d3c grapple_beam_unkD3C +0x7e0d3e grapple_point_anim_timer +0x7e0d40 grapple_point_anim_ptr +0x7e0d42 grapple_segment_anim_instr_timers +0x7e0d62 grapple_segment_anim_instr_ptrs +0x7e0d82 grapple_beam_tmpD82 +0x7e0d84 grapple_beam_tmpD84 +0x7e0d86 grapple_beam_y_quarter_subvel +0x7e0d88 grapple_beam_y_quarter_vel +0x7e0d8a grapple_beam_tmpD8A +0x7e0d8c grapple_beam_varD8C +0x7e0d8e grapple_beam_varD8E +0x7e0d90 grapple_beam_grapple_start_x +0x7e0d92 grapple_beam_grapple_start_y +0x7e0d94 grapple_beam_grapple_start_block_x +0x7e0d96 grapple_beam_grapple_start_block_y +0x7e0da0 loop_counter_transfer_enemies_to_vram +0x7e0da2 absolute_moved_last_frame_x +0x7e0da4 absolute_moved_last_frame_x_fract +0x7e0da6 absolute_moved_last_frame_y +0x7e0da8 absolute_moved_last_frame_y_fract +0x7e0daa projectile_init_speed_samus_moved_left +0x7e0dac projectile_init_speed_samus_moved_left_fract +0x7e0dae projectile_init_speed_samus_moved_right +0x7e0db0 projectile_init_speed_samus_moved_right_fract +0x7e0db2 projectile_init_speed_samus_moved_up +0x7e0db4 projectile_init_speed_samus_moved_up_fract +0x7e0db6 projectile_init_speed_samus_moved_down +0x7e0db8 projectile_init_speed_samus_moved_down_fract +0x7e0dba samus_pos_adjusted_by_slope_flag +0x7e0dbc samus_total_x_speed +0x7e0dbe samus_total_x_subspeed +0x7e0dc0 play_resume_charging_beam_sfx +0x7e0dc2 prev_beam_charge_counter +0x7e0dc4 cur_block_index +0x7e0dc6 input_to_pose_calc +0x7e0dc8 queued_message_box_index +0x7e0dce samus_collides_with_solid_enemy +0x7e0dd0 samus_collision_flag +0x7e0dd2 temp_collision_DD2 +0x7e0dd4 temp_collision_DD4 +0x7e0dd6 temp_collision_DD6 +0x7e0ddc suit_pickup_light_beam_widening_speed +0x7e0dde projectile_index +0x7e0de0 debug_invincibility +0x7e0de2 game_options_screen_index +0x7e0dea which_item_to_pickup +0x7e0dec substate +0x7e0dee suit_pickup_light_beam_pos +0x7e0df0 suit_pickup_color_math_R +0x7e0df1 suit_pickup_color_math_G +0x7e0df2 suit_pickup_color_math_B +0x7e0df3 suit_pickup_palette_transition_color +0x7e0df4 debug_spare_cpu_display_flag +0x7e0df8 UNUSED_word_7E0DF8 +0x7e0dfa UNUSED_word_7E0DFA +0x7e0dfc UNUSED_word_7E0DFC +0x7e0dfe joypad1_input_samusfilter +0x7e0e00 joypad1_newinput_samusfilter +0x7e0e02 samus_bottom_boundary_position +0x7e0e04 distance_to_eject_samus_left +0x7e0e06 distance_to_eject_samus_right +0x7e0e08 distance_to_eject_samus_up +0x7e0e0a distance_to_eject_samus_down +0x7e0e12 debug_disable_sprite_interact +0x7e0e16 elevator_flags +0x7e0e18 elevator_status +0x7e0e1a health_drop_bias_flag +0x7e0e1c enemy_index_to_shake +0x7e0e1e nmi_flag_bg2_enemy_vram_transfer +0x7e0e20 varE20 +0x7e0e22 varE22 +0x7e0e24 varE24 +0x7e0e26 varE26 +0x7e0e28 varE28 +0x7e0e2a varE2A +0x7e0e2c varE2C +0x7e0e2e varE2E +0x7e0e32 varE32 +0x7e0e34 varE34 +0x7e0e36 varE36 +0x7e0e38 varE38 +0x7e0e3a varE3A +0x7e0e3c varE3C +0x7e0e3e varE3E +0x7e0e40 varE40 +0x7e0e44 varE44 +0x7e0e46 UNUSED_word_7E0E46 +0x7e0e48 UNUSED_word_7E0E48 +0x7e0e4a new_enemy_index +0x7e0e4c first_free_enemy_index +0x7e0e4e num_enemies_in_room +0x7e0e50 num_enemies_killed_in_room +0x7e0e52 num_enemy_deaths_left_to_clear +0x7e0e54 cur_enemy_index +0x7e0e56 cur_enemy_index_backup +0x7e0e58 enemy_data_ptr +0x7e0e5a enemy_tile_load_data +0x7e0e7a enemy_tile_load_data_write_pos +0x7e0e7c enemy_tile_vram_src +0x7e0e7e enemy_tile_vram_dst +0x7e0e84 enemy_drawing_queue +0x7e0f68 enemy_drawing_queue_sizes +0x7e0f78 enemy_data +0x7e1778 fireflea_flashing_timer +0x7e177a fireflea_flashing_index +0x7e177c UNUSED_word_7E177C +0x7e177e fireflea_darkness_level +0x7e1780 UNUSED_word_7E1780 +0x7e1782 UNUSED_word_7E1782 +0x7e1784 enemy_ai_pointer +0x7e1788 enemy_ai_pointer_backup +0x7e178c enemy_gfx_drawn_hook +0x7e1790 set_to_rtl_when_loading_enemies_unused +0x7e1794 variables_for_enemy_graphics_drawn_hook +0x7e179a enemy_bg2_tilemap_size +0x7e179c boss_id +0x7e179e UNUSED_word_7E179E +0x7e17a0 UNUSED_word_7E17A0 +0x7e17a2 UNUSED_word_7E17A2 +0x7e17a4 active_enemy_indexes_write_ptr +0x7e17a6 interactive_enemy_indexes_write_ptr +0x7e17a8 active_enemy_indexes_index +0x7e17aa interactive_enemy_indexes_index +0x7e17ac active_enemy_indexes +0x7e17ec interactive_enemy_indexes +0x7e182c enemy_index_colliding_dirs +0x7e1834 distance_to_enemy_colliding_dirs +0x7e183c flag_process_all_enemies +0x7e183e earthquake_type +0x7e1840 earthquake_timer +0x7e1842 frame_counter_every_frame +0x7e1844 sprite_object_index +0x7e1846 debug_enemy_index +0x7e1848 log_index_UNUSED +0x7e184a samus_x_pos_colliding_solid +0x7e184c samus_x_subpos_colliding_solid +0x7e184e enemy_x_pos_colliding_solid +0x7e1850 enemy_x_subpos_colliding_solid +0x7e1852 samus_pos_delta_colliding_solid +0x7e1854 samus_subpos_delta_colliding_solid +0x7e1856 samus_y_pos_colliding_solid +0x7e1858 samus_y_subpos_colliding_solid +0x7e185a solid_enemy_collision_type +0x7e185c debug_index +0x7e185e debug_time_frozen_for_enemies +0x7e1860 debug_text_cursor_x +0x7e1862 debug_text_cursor_y +0x7e1864 debug_enemy_set_entry_index +0x7e1866 debug_enemy_population_pointer +0x7e1868 debug_enemy_spawn_x_pos +0x7e186a debug_enemy_spawn_y_pos +0x7e186e enemy_spritemap_entry_pointer +0x7e1870 enemy_left_border_collision +0x7e1872 enemy_bottom_border_collision +0x7e1874 enemy_right_border_collision +0x7e1876 enemy_top_border_collision +0x7e1878 hitbox_ptr +0x7e187a enemy_spritemap_entry_coll_x_pos +0x7e187c enemy_spritemap_entry_coll_y_pos +0x7e187e samus_right_border_coll +0x7e1880 samus_left_border_coll +0x7e1882 samus_bottom_border_coll +0x7e1884 samus_top_border_coll +0x7e189a samus_target_x_pos +0x7e189c samus_target_x_subpos +0x7e189e samus_target_y_pos +0x7e18a0 samus_target_y_subpos +0x7e18a2 samus_x_radius_mirror +0x7e18a4 samus_y_radius_mirror +0x7e18a6 collision_detection_index +0x7e18a8 samus_invincibility_timer +0x7e18aa samus_knockback_timer +0x7e18ac projectile_invincibility_timer +0x7e18ae flag_disable_projectile_interaction +0x7e18b0 hdma_objects_enable_flag +0x7e18b2 hdma_object_index +0x7e18b4 hdma_object_channels_bitmask +0x7e18c0 hdma_object_bank_slot +0x7e18cc hdma_object_instruction_list_pointers +0x7e18d8 hdma_object_table_pointers +0x7e18e4 hdma_object_instruction_timers +0x7e18f0 hdma_object_pre_instructions +0x7e18fc hdma_object_pre_instruction_bank +0x7e1908 hdma_object_timers +0x7e1914 hdma_object_A +0x7e1920 hdma_object_B +0x7e192c hdma_object_C +0x7e1938 hdma_object_D +0x7e1944 hdma_object_E +0x7e1950 hdma_object_F +0x7e195c fx_y_subpos +0x7e195e fx_y_pos +0x7e1960 lava_acid_y_subpos +0x7e1962 lava_acid_y_pos +0x7e1964 fx_tilemap_ptr +0x7e1966 current_fx_entry_ptr +0x7e1968 current_fx_entry_offset +0x7e196a current_fx_palette_fx_bitset +0x7e196c fx_rising_function_bank_88 +0x7e196e fx_type +0x7e1970 fx_y_suboffset +0x7e1972 fx_y_offset +0x7e1974 tide_phase +0x7e1976 fx_base_y_subpos +0x7e1978 fx_base_y_pos +0x7e197a fx_target_y_pos +0x7e197c fx_y_vel +0x7e197e fx_liquid_options +0x7e1980 fx_timer +0x7e1982 fx_layer_blending_config_a +0x7e1984 fx_layer_blending_config_b +0x7e1986 fx_layer_blending_config_c +0x7e1988 phantom_related_layer_flag +0x7e198d enemy_projectile_enable_flag +0x7e198f enemy_projectile_unk198F +0x7e1991 enemy_projectile_index +0x7e1993 enemy_projectile_init_param +0x7e1995 enemy_projectile_unk1995 +0x7e1997 enemy_projectile_id +0x7e19b3 mode7_spawn_param +0x7e19bb enemy_projectile_gfx_idx +0x7e19df enemy_projectile_timers +0x7e1a03 enemy_projectile_pre_instr +0x7e1a27 enemy_projectile_1A27 +0x7e1a4b enemy_projectile_x_pos +0x7e1a6f enemy_projectile_y_subpos +0x7e1a93 enemy_projectile_y_pos +0x7e1ab7 enemy_projectile_x_vel +0x7e1adb enemy_projectile_y_vel +0x7e1aff enemy_projectile_E +0x7e1b23 enemy_projectile_F +0x7e1b47 enemy_projectile_instr_list_ptr +0x7e1b6b enemy_projectile_spritemap_ptr +0x7e1b8f enemy_projectile_instr_timers +0x7e1bb3 enemy_projectile_radius +0x7e1bd7 enemy_projectile_properties +0x7e1bfb enemy_projectile_G +0x7e1c1f message_box_index +0x7e1c23 plm_flag +0x7e1c25 plm_draw_tilemap_index +0x7e1c27 plm_id +0x7e1c29 plm_x_block +0x7e1c2b plm_y_block +0x7e1c2d plm_item_gfx_index +0x7e1c2f plm_item_gfx_ptrs +0x7e1c37 plm_header_ptr +0x7e1c87 plm_block_indices +0x7e1cd7 plm_pre_instrs +0x7e1d27 plm_instr_list_ptrs +0x7e1d77 plm_timers +0x7e1dc7 plm_room_arguments +0x7e1e17 plm_variable +0x7e1e67 custom_draw_instr_num_blocks +0x7e1e69 custom_draw_instr_plm_block +0x7e1e6b custom_draw_instr_zero_terminator +0x7e1e6d tourian_entrance_statue_finished +0x7e1e6f tourian_entrance_statue_animstate +0x7e1e71 flag_samus_in_quicksand +0x7e1e73 inside_block_reaction_samus_point +0x7e1e75 save_station_lockout_flag +0x7e1e77 current_slope_bts +0x7e1e79 flag_for_palette_fx_objects +0x7e1e7b palettefx_index +0x7e1e7d palettefx_ids +0x7e1e8d palettefx_color_indexes +0x7e1ead palettefx_pre_instr +0x7e1ebd palettefx_instr_list_ptrs +0x7e1ecd palettefx_instr_timers +0x7e1edd palettefx_timers +0x7e1eed samus_in_heat_palfx_index +0x7e1eef samus_in_heat_palettefx_prev_index +0x7e1ef1 animtiles_enable_flag +0x7e1ef3 animtiles_object_index +0x7e1ef5 animtiles_ids +0x7e1f01 animtiles_timers +0x7e1f0d animtiles_instr_list_ptrs +0x7e1f19 animtiles_instr_timers +0x7e1f25 animtiles_src_ptr +0x7e1f31 animtiles_sizes +0x7e1f3d animtiles_vram_ptr +0x7e1f49 animtiles_instruction +0x7e1f51 cinematic_function +0x7e1f53 demo_timer +0x7e1f55 demo_set +0x7e1f57 demo_scene +0x7e1f59 num_demo_sets +0x7e1f5b STACK +0x7e2000 tilemap_stuff +0x7e3000 ram3000 +0x7e3800 ram3800 +0x7e4000 ram4000 +0x7e7000 enemy_spawn_data +0x7e7800 extra_enemy_ram7800 +0x7e8000 extra_enemy_ram8000 +0x7e8800 extra_enemy_ram8800 +0x7e9000 kraid_unk9000 +0x7e9800 hdma_table_1 +0x7e9c00 mother_brain_indirect_hdma +0x7e9d00 hdma_table_2 +0x7e9e00 hdma_window_1_left_pos +0x7e9e10 hdma_window_1_right_pos +0x7e9e20 expanding_square_topbottom_margin_right_pos +0x7e9e22 expanding_square_topbottom_margin_left_pos +0x7e9e30 expanding_square_left_subpos +0x7e9e32 expanding_square_left_pos +0x7e9e34 expanding_square_right_subpos +0x7e9e36 expanding_square_right_pos +0x7e9e38 expanding_square_top_subpos +0x7e9e3a expanding_square_top_pos +0x7e9e3c expanding_square_bottom_subpos +0x7e9e3e expanding_square_bottom_pos +0x7e9e40 expanding_square_left_subvel +0x7e9e42 expanding_square_left_vel +0x7e9e44 expanding_square_right_subvel +0x7e9e46 expanding_square_right_vel +0x7e9e48 expanding_square_top_subvel +0x7e9e4a expanding_square_top_vel +0x7e9e4c expanding_square_bottom_subvel +0x7e9e4e expanding_square_bottom_vel +0x7e9e50 expanding_square_timer +0x7e9f00 scrolling_sky_bg2_indirect_hdma +0x7e9f80 scrolling_sky_bg2_hdma_data +0x7ea000 tile_table +0x7ec000 palette_buffer +0x7ec200 target_palettes +0x7ec400 palette_change_num +0x7ec402 palette_change_denom +0x7ec406 power_bomb_explosion_left_hdma +0x7ec506 power_bomb_explosion_right_hdma +0x7ec606 offscreen_power_bomb_left_hdma +0x7ec607 offscreen_power_bomb_right_hdma +0x7ec608 hud_tilemap +0x7ec6c8 plm_draw_tilemap +0x7ec8c8 bg1_column_update_tilemap_left_halves +0x7ec908 bg1_column_update_tilemap_right_halves +0x7ec948 bg1_column_update_tilemap_top_halves +0x7ec98c bg1_column_update_tilemap_bottom_halves +0x7ec9d0 bg2_column_update_tilemap_left_halves +0x7eca10 bg2_column_update_tilemap_right_halves +0x7eca50 bg2_column_update_tilemap_top_halves +0x7eca94 bg2_column_update_tilemap_bottom_halves +0x7ecad8 hud_bg3_xpos +0x7ecada hud_bg3_ypos +0x7ecadc bg3_xpos +0x7ecade bg3_ypos +0x7ecae0 crocomire_bg2_scroll_hdma_indirect +0x7ecaf0 crocomire_bg2_scroll_hdma_data +0x7ecd20 scrolls +0x7ecd52 explored_map_tiles_saved +0x7ed552 debug_enemy_set_name +0x7ed55a debug_enemy_set_data +0x7ed601 apui_mirror +0x7ed652 wrecked_ship_robot_palanim_palindex +0x7ed654 wrecked_ship_robot_palanim_timer +0x7ed656 wrecked_ship_robot_palanim_table_index +0x7ed658 projectiletrail_left_instr_timer +0x7ed67c projectiletrail_right_instr_timer +0x7ed6a0 projectiletrail_left_instr_list_ptr +0x7ed6c4 projectiletrail_right_instr_list_ptr +0x7ed6e8 projectiletrail_left_tile_and_attribs +0x7ed70c projectiletrail_right_tile_and_attribs +0x7ed730 projectiletrail_left_x_pos +0x7ed754 projectiletrail_right_x_pos +0x7ed778 projectiletrail_left_y_pos +0x7ed79c projectiletrail_right_y_pos +0x7ed7c0 player_data_saved +0x7ed820 events_that_happened +0x7ed828 boss_bits_for_area +0x7ed830 room_chozo_bits +0x7ed870 item_bit_array +0x7ed8b0 opened_door_bit_array +0x7ed8f0 UNUSED_word_7ED8F0 +0x7ed8f8 used_save_stations_and_elevators +0x7ed908 map_station_byte_array +0x7ed914 loading_game_state +0x7ed916 sram_save_station_index +0x7ed918 sram_area_index +0x7ed91a global_number_of_items_loaded_ctr +0x7ed91c compressed_map_data +0x7ede1c plm_instruction_timer +0x7ede6c plm_instruction_draw_ptr +0x7edebc plm_instruction_list_link_reg +0x7edf0c plm_variables +0x7edf5c backup_of_bg2_during_pause +0x7eef5c enemy_def_ptr +0x7eef64 enemy_gfxdata_tiles_index +0x7eef6c enemy_gfxdata_vram_ptr +0x7eef74 enemy_gfx_data_write_ptr +0x7eef76 next_enemy_tiles_index +0x7eef78 sprite_instr_list_ptrs +0x7eeff8 sprite_instr_timer +0x7ef078 sprite_palettes +0x7ef0f8 sprite_x_pos +0x7ef178 sprite_x_subpos +0x7ef1f8 sprite_y_pos +0x7ef278 sprite_y_subpos +0x7ef2f8 sprite_disable_flag +0x7ef378 enemy_processing_stage +0x7ef380 enemy_projectile_flags +0x7ef3c8 enemy_projectile_enemy_header_ptr +0x7ef410 enemy_projectile_killed_enemy_index +0x7ef434 special_death_item_drop_x_origin_pos +0x7ef436 special_death_item_drop_y_origin_pos +0x7f0000 ram7F_start +0x7f0002 level_data +0x7f6401 BTS_minus_1 +0x7f6402 BTS +0x7f9602 custom_background +0x7ffa02 unused_1fa02 +0x808000 disable_rom_console_and_sram_checks +0x808004 buildflags_debug +0x808006 debug_scrolling_enabled +0x808008 buildflag_disable_apu_upload +0x80800a APU_UploadBankIP +0x808024 APU_UploadBank_ +0x808028 APU_UploadBank +0x808059 APU_UploadBank_Inner +0x808100 ApuUploadBank_IncrementPtrx2 +0x808103 ApuUploadBank_IncrementPtrx1_IGNORE +0x808107 xsub_808107_IGNORE +0x808111 NextRandom +0x808146 ReleaseButtonsFilter +0x80818e PrepareBitAccess +0x8081a6 SetBossBitForCurArea +0x8081c0 ClearBossBitForCurArea +0x8081dc CheckBossBitForCurArea +0x8081fa SetEventHappened +0x808212 ClearEventHappened +0x808233 CheckEventHappened +0x80824f CopySuperMetroidString +0x808261 VerifySRAM +0x8082ad aMadadameyohn +0x8082b9 aSupermetroid +0x8082c5 WaitUntilEndOfVblank +0x8082d6 Multiply16x16 +0x808338 WaitForNMI +0x80834b EnableNMI +0x80835d DisableNMI +0x80836f ScreenOffWaitNMI +0x808382 ScreenOnWaitNMI +0x808395 UNUSED_sub_808395 +0x8083bd UNUSED_sub_8083BD +0x8083d0 UNUSED_sub_8083D0 +0x8083e3 UNUSED_sub_8083E3 +0x8083f6 memset7E +0x808409 memset7F +0x80841c Vector_RESET +0x808462 SoftReset_IGNORE +0x808573 InvalidInterrupt_Crash +0x808577 Unused_sub_808577 +0x80858c LoadMirrorOfExploredMapTiles +0x8085c6 SaveExploredMapTilesToSaved +0x8085f6 CheckNtscPalAndSramMapping +0x80875d InitializeCpuIoRegs +0x808792 InitializePpuIoRegs +0x8088b4 UNUSED_sub_8088B4 +0x8088d1 WriteLotsOf0x1c2f +0x808924 HandleFadeOut +0x80894d HandleFadeIn +0x80896e ClearUnusedOam_IGNORE +0x808b1a ClearOamExt +0x808b4f QueueTransfersForNmi +0x808bba NMI_ProcessMode7Queue +0x808bd3 NMI_ProcessMode7QueueInner +0x808c83 NMI_ProcessVramWriteQueue +0x808cd8 Nmi_ProcessHorizScrollingDma +0x808dac Nmi_ProcessVertScrollingDma +0x808ea2 NMI_ProcessVramReadQueue +0x808ef4 HasQueuedMusic +0x808f0c HandleMusicQueue +0x808fa3 UNUSED_APU_QueueMusic +0x808fc1 QueueMusic_Delayed8 +0x808ff7 QueueMusic_DelayedY +0x809021 QueueSfx1_Max15 +0x80902b QueueSfx1_Max9 +0x809035 QueueSfx1_Max3 +0x80903f QueueSfx1_Max1 +0x809049 QueueSfx1_Max6 +0x809051 QueueSfx1_Internal +0x8090a3 QueueSfx2_Max15 +0x8090ad QueueSfx2_Max9 +0x8090b7 QueueSfx2_Max3 +0x8090c1 QueueSfx2_Max1 +0x8090cb QueueSfx2_Max6 +0x8090d3 QueueSfx2_Internal +0x809125 QueueSfx3_Max15 +0x80912f QueueSfx3_Max9 +0x809139 QueueSfx3_Max3 +0x809143 QueueSfx3_Max1 +0x80914d QueueSfx3_Max6 +0x809155 QueueSfx3_Internal +0x8091a7 Apu_PlayQueueFull_Nop +0x8091a9 SetupDmaTransfer +0x8091ee NmiUpdateIoRegisters +0x80933a NmiUpdatePalettesAndOam +0x809376 NmiTransferSamusToVram +0x809416 NmiProcessAnimtilesVramTransfers +0x809459 ReadJoypadInputs +0x809583 Vector_NMI +0x809616 kIrqHandlers +0x809632 Irq_DoorTransitionVramUpdate +0x80966e IrqHandler_0_Nothing +0x809680 IrqHandler_2_DisableIRQ +0x80968b IrqHandler_4_Main_BeginHudDraw +0x8096a9 IrqHandler_6_Main_EndHudDraw +0x8096d3 IrqHandler_8_StartOfDoor_BeginHud +0x8096f1 IrqHandler_10_StartOfDoor_EndHud +0x80971a IrqHandler_12_Draygon_BeginHud +0x809733 IrqHandler_14_Draygon_EndHud +0x809758 IrqHandler_16_VerticalDoor_BeginHud +0x809771 IrqHandler_18_VerticalDoor_EndHud +0x8097a9 IrqHandler_20_VerticalDoor_EndDraw +0x8097c1 IrqHandler_22_HorizDoor_BeginHud +0x8097da IrqHandler_24_HorizDoor_EndHud +0x80980a IrqHandler_26_HorizDoor_EndDraw +0x80982a EnableIrqInterrupts +0x809841 EnableIrqInterruptsNow +0x80985f DisableIrqInterrupts +0x80986a Vector_IRQ +0x80988b kHudTilemaps +0x8098cb kHudTilemaps_Row1to3 +0x80998b kHudTilemaps_AutoReserve +0x8099a3 kHudTilemaps_Missiles +0x8099cf AddMissilesToHudTilemap +0x809a0e AddSuperMissilesToHudTilemap +0x809a1e AddPowerBombsToHudTilemap +0x809a2e AddGrappleToHudTilemap +0x809a3e AddXrayToHudTilemap +0x809a4c AddToTilemapInner +0x809a79 InitializeHud +0x809b44 HandleHudTilemap +0x809cce kEnergyTankIconTilemapOffsets +0x809cea ToggleHudItemHighlight +0x809d6e kHudItemTilemapOffsets +0x809d78 DrawThreeHudDigits +0x809d98 DrawTwoHudDigits +0x809dbf kDigitTilesetsHealth +0x809dd3 kDigitTilesetsWeapon +0x809de7 ProcessTimer +0x809dfb kTimerProcessFuncs +0x809e09 ProcessTimer_CeresStart +0x809e1a ProcessTimer_Empty +0x809e1c ProcessTimer_MotherBrainStart +0x809e2f ProcessTimer_InitialDelay +0x809e41 ProcessTimer_MovementDelayed +0x809e58 ProcessTimer_MovingIntoPlace +0x809e89 j_ProcessTimer_Decrement +0x809e8c SetTimerMinutes +0x809e93 ClearTimerRam +0x809ea9 ProcessTimer_Decrement +0x809eec kTimerCentisecondDecrements +0x809f6c DrawTimer +0x809f95 DrawTwoTimerDigits +0x809fb3 DrawTimerSpritemap +0x809fd4 kTimerDigitsSpritemapPtr +0x80a07b StartGameplay +0x80a12b Play20FramesOfMusic +0x80a149 ResumeGameplay +0x80a176 DisplayViewablePartOfRoom +0x80a1e3 UNUSED_sub_80A1E3 +0x80a211 QueueClearingOfFxTilemap +0x80a23f ClearBG2Tilemap +0x80a29c ClearFXTilemap +0x80a2f9 CalculateLayer2Xpos +0x80a33a CalculateLayer2Ypos +0x80a37b CalculateBgScrolls +0x80a3a0 UpdateScrollVarsUpdateMap +0x80a3ab CalculateLayer2PosAndScrollsWhenScrolling +0x80a3df UpdateBgGraphicsWhenScrolling +0x80a4bb CalculateBgScrollAndLayerPositionBlocks +0x80a528 HandleAutoscrolling_X +0x80a641 HandleScrollingWhenTriggeringScrollRight +0x80a6bb HandleScrollingWhenTriggeringScrollLeft +0x80a731 HandleAutoscrolling_Y +0x80a893 HandleScrollingWhenTriggeringScrollDown +0x80a936 HandleScrollingWhenTriggeringScrollUp +0x80a9ac DebugScrollPosSaveLoad +0x80a9d6 UploadBackgroundDataColumn +0x80a9db UploadLevelDataColumn +0x80a9de UpdateLevelOrBackgroundDataColumn +0x80ab70 UpdateBackgroundDataRow +0x80ab75 UpdateLevelDataRow +0x80ab78 UpdateLevelOrBackgroundDataRow +0x80ad1d FixDoorsMovingUp +0x80ad30 DoorTransitionScrollingSetup +0x80ad4a DoorTransitionScrollingSetup_Right +0x80ad74 DoorTransitionScrollingSetup_Left +0x80ad9e DoorTransitionScrollingSetup_Down +0x80adc8 DoorTransitionScrollingSetup_Up +0x80ae08 kDoorTransitionSetupFuncs +0x80ae10 UpdatePreviousLayerBlocks +0x80ae29 UpdateBgScrollOffsets +0x80ae4e FollowDoorTransition +0x80ae76 kDoorTransitionFuncs +0x80ae7e DoorTransition_Right +0x80aec2 DoorTransition_Left +0x80af02 DoorTransition_Down +0x80af89 DoorTransition_Up +0x80b032 UNUSED_Mode7Init +0x80b0c2 ConfigureMode7RotationMatrix +0x80b0ff DecompressToMem_IpArg +0x80b119 DecompressToMem +0x80b266 DecompressIncPtrPage_IGNORE +0x80b271 DecompressToVRAM +0x80b437 kTilemapFailedNTSC_Pal +0x80c437 LoadFromLoadStation +0x80c4b5 kLoadStationLists +0x80cd07 SetElevatorsAsUsed +0x80d000 Irq_DoorTransitionVramUpdate_Thunk +0x80d004 DoorTransitionFunction_LoadMoreThings_Patch +0x80d008 CodeThatPolls_door_transition_flag +0x80ffc0 snes_header +0x80ffd9 country_code +0x818000 SaveToSram +0x818085 LoadFromSram +0x81812b kOffsetToSaveSlot +0x818131 kPackedBytesPerArea_Count +0x818138 kPackedBytesPerArea_PackedOffs +0x8182d6 kPackedBytesPerArea_UnpackedOffs +0x8182e4 UnpackMapFromSave +0x81834b PackMapToSave +0x81839f kOamExtra_X8Small_And_Large +0x81859f kOamExtra_Address_And_X8Large +0x81879f DrawSpritemap +0x818853 DrawSpritemapOffScreen +0x818907 SetXCoordToInvalidPos +0x81891f DrawMenuSpritemap +0x8189ae DrawSamusSpritemap +0x818a37 DrawBeamGrappleSpritemap +0x818a4b DrawProjectileSpritemap +0x818ab7 nullsub_1 +0x818ab8 DrawSpritemapWithBaseTile +0x818b21 nullsub_27 +0x818b22 DrawSpritemapWithBaseTile2 +0x818b96 DrawSpritemapWithBaseTileOffscreen +0x818c0a DrawEprojSpritemapWithBaseTile +0x818c7f DrawEprojSpritemapWithBaseTileOffscreen +0x818cf4 DebugGameOverMenu +0x818d03 kDebugGameOverMenuFuncs +0x818d0f GameOverMenu_0_FadeOutConfigGfx +0x818d6d DebugGameOverMenu_1_Init +0x818da6 GameOverMenu_24_FadeIn +0x818dba MapVramForMenu +0x818ddb LoadInitialMenuTiles +0x818e60 LoadMenuPalettes +0x818e7f LoadDebugGameOverMenuTilemaps +0x819003 GameOverMenu_3_Main +0x81905b RestorePalettesAndIoAfterDebugGameover +0x81907e GameOverMenu_5_Continue +0x8190ae GameOverMenu +0x8190bd kGameOverMenuFuncs +0x8190cd GameOverMenu_3_FadeIn +0x8190e7 GameOverMenu_5_FadeOutToGameMap +0x8190fe GameOverMenu_7_FadeOutToSoftReset +0x819116 GameOverMenu_6_LoadGameMapView +0x81912b GameOverMenu_4_Main +0x8191a4 GameOverMenu_1_Init +0x81927d kHdmaObj_BackdropColor_GameOverMenuGradient +0x81928d kHdmaObj_ColorMathB_GameOverMenuGradient +0x81929d kHdmaTable_ColorMathB_GameOverMenuGradient +0x8192db nullsub_56 +0x8192dc kMenuTilemap_GameOver +0x819304 kMenuTilemap_FindMetroidLarva +0x819334 kMenuTilemap_TryAgain +0x81934c kMenuTilemap_YesReturnToGame +0x8193a0 kMenuTilemap_NoGoToTitle +0x8193e8 GameOverMenu_2_PlayMusic +0x8193fb FileSelectMenu +0x81940a kFileSelectMenuFuncs +0x81944e FileSelectMenu_0_FadeOutConfigGfx +0x819486 LoadFileSelectPalettes +0x8194a3 FileSelectMenu_32_FadeOutToOptions +0x8194d5 FileSelectMenu_33_FadeOutToTitle +0x8194ee FileSelectMenu_5_FadeOutFromMain +0x8194f4 FileSelectMenu_15_FadeOutToMain +0x81951e FileSelectMenu_17_FadeInToMain +0x819532 FileSelectMenu_7_FadeInFromMain +0x819561 FileSelectMenu_6_FileCopyInit +0x819566 FileSelectMenu_Func1 +0x819593 SetInitialFileCopyMenuSelection +0x8195a6 ClearMenuTilemap +0x8195b5 LoadMenuExitTilemap +0x8195be DrawFileCopySaveFileInfo +0x81960f DrawFileCopySaveSlotAInfo +0x81963f DrawFileCopySaveSlotBInfo +0x81966f DrawFileCopySaveSlotCInfo +0x81969f QueueTransferOfMenuTilemapToVramBG1 +0x8196c2 FileSelectMenu_8 +0x81975b kBitShl +0x81975e SetFileCopyMenuSelectionMissilePosition +0x819772 kFileCopyMissileY +0x81977a FileSelectMenu_9_InitializeSelectDest +0x819799 DrawFileCopySelectDestinationSaveFileInfo +0x819813 FileSelectMenu_10_FileCopySelectDest +0x8198af kFileCopySelectDest_MissileY +0x8198b7 FileSelectMenu_11_InitializeConfirm +0x8198ed DrawFileCopyClearConfirmation +0x819922 DrawFileCopyConfirmationSaveFileInfo +0x819984 FileSelectMenu_12_FileCopyConfirm +0x8199fe HandleFileCopyArrowPalette +0x819a2c FileSelectMenu_13_FileCopyDoIt +0x819af4 kBitShl_16bit +0x819afa FileSelectMenu_14_CopyCompleted +0x819b28 FileSelectMenu_18 +0x819b33 FileSelectMenu_20_FileClearInit +0x819b3c InitFileSelectMenuFileClear +0x819b64 FileSelectMenu_22_FileClearSelectSlot +0x819bec kBitShl_ +0x819bef SetFileClearMenuMissilePos +0x819c03 kFileClear_MissileY +0x819c0b FileSelectMenu_23_FileClearInitConfirm +0x819c36 FileSelectMenu_24_FileClearConfirm +0x819c9e FileSelectMenu_25_FileClearDoClear +0x819d20 kBitShl_Not +0x819d26 FileSelectMenu_26_ClearCompleted +0x819d68 FileSelectMenu_30 +0x819d77 FileSelectMenu_31_TurnSamusHelmet +0x819dc3 DrawFileSelectSamusHelmets +0x819de4 DrawFileSelectSlotSamusHelmet +0x819e2c kDrawFileSlotHelmet_Spritemaps +0x819e3e FileSelectMap +0x819e4d kFileSelectMapFuncs +0x819e7b FileSelectMap_22 +0x819e93 FileSelectMenu_1_LoadFileSelectMenuBG2 +0x819ed6 FileSelectMenu_2_InitMain +0x819ef3 FileSelectMenu_16 +0x81a053 LoadFromSram_ +0x81a058 FileSelectMenu_3_FadeInToMain +0x81a087 DrawFileSelectionHealth +0x81a14e DrawFileSelectionTime +0x81a1c2 FileSelectMenu_4_Main +0x81a312 kMenuSelectionMissileXY +0x81a32a FileSelectMap_0 +0x81a37c FileSelectMap_1 +0x81a3d3 LoadActiveAreaMapForegroundColors +0x81a3dc LoadInactiveAreaMapForegroundColors +0x81a3e3 LoadAreaMapForegroundColors +0x81a40e kAreaMapForegroundColors +0x81a4ce kActiveAreaMapForegroundColors +0x81a4da kInactiveAreaMapForegroundColors +0x81a4e6 kAreaMapForegroundSetDefs +0x81a546 FileSelectMap_2_LoadAreaSelectForegroundTilemap +0x81a578 FileSelectMap_18 +0x81a582 FileSelectMap_3_LoadAreaSelectBackgroundTilemap +0x81a58a LoadAreaSelectBackgroundTilemap +0x81a5b3 FileSelectMap_4_SetupExpandingSquareTransition +0x81a5f6 ConfigureWindow1ForExpandingSquare +0x81a61c SetupInitialExpandingSquareHDMA +0x81a724 kExpandingSquareTransitionSpeed +0x81a725 FileSelectMap_5_ExpandingSquare +0x81a800 FileSelectMap_6_AreaSelectMap +0x81a898 DecAndWraparoundTo5 +0x81a89f WraparoundFrom6to0 +0x81a8a9 SelectFileSelectMapArea +0x81a931 CheckIfFileSelectMapAreaCanBeSelected +0x81a958 SwitchActiveFileSelectMapArea +0x81a97e DrawAreaSelectMapLabels +0x81aa1c kAreaSelectMapLabelPositions +0x81aa34 kExpandingSquareVels +0x81aa94 kRoomSelectMapExpandingSquareTimers +0x81aaa0 kFileSelectMap_AreaIndexes +0x81aaac FileSelectMap_7_PrepExpandSquareTransToRoomMap +0x81aba7 SetupRoomSelectMapExpandingSquareTransHDMA +0x81abf7 AddExpandingSqTransLeftIndirHDMA +0x81ac2d AddExpandingSqTransRightIndirHDMA +0x81ac66 FileSelectMap_8_ExpandSquareTransToRoomSelectMap +0x81ac84 HandleRoomSelectMapExpandingSquareTrans +0x81ad17 FileSelectMap_9_InitRoomSelectMap +0x81ad7f FileSelectMap_10_RoomSelectMap +0x81aeca HandleFileSelectMapScrollArrows +0x81af32 kLeftMapScrollArrowData +0x81af3c kRightMapScrollArrowData +0x81af46 kUpMapScrollArrowData +0x81af50 kDownMapScrollArrowData +0x81af5a FileSelectMap_11 +0x81af66 FileSelectMap_13 +0x81af83 FileSelectMap_14 +0x81af97 FileSelectMap_15_ClearTileMap +0x81afd3 FileSelectMap_16_LoadPalettes +0x81aff6 FileSelectMap_20_SetupExpandingSquare +0x81b0bb FileSelectMap_21_MoveExpandingSquare +0x81b14b kFileSelectExpandingSquareTilemap +0x81b2cb NewSaveFile +0x81b3c5 FileSelectClearRestOfMenuTilemapRow +0x81b3e2 LoadMenuTilemap +0x81b40a kMenuTilemap_SamusData +0x81b436 kMenuTilemap_SamusA +0x81b456 kMenuTilemap_SamusB +0x81b476 kMenuTilemap_SamusC +0x81b496 kMenuTilemap_Energy +0x81b4a0 kMenuTilemap_TIME +0x81b4ac kMenuTilemap_NoData +0x81b4c4 kMenuTilemap_DataCopy +0x81b4d8 kMenuTilemap_DataClear +0x81b4ee kMenuTilemap_Exit +0x81b4f8 kMenuTilemap_DataCopyMode +0x81b534 kMenuTilemap_DataClearMode +0x81b574 kMenuTilemap_CopyWhichData +0x81b596 kMenuTilemap_CopySamusToWhere +0x81b5c8 kMenuTilemap_CopySamusToSamus +0x81b602 kMenuTilemap_IsThisOk +0x81b61a kMenuTilemap_Yes +0x81b62a kMenuTilemap_No +0x81b63a kMenuTilemap_CopyCompleted +0x81b65a kMenuTilemap_ClearWhichData +0x81b69a kMenuTilemap_ClearSamusA +0x81b6da kMenuTilemap_DataCleared +0x81b71a kAreaSelectForegroundTilemap +0x81bf1a kAreaSelectBackgroundTilemaps +0x81f000 SoftReset +0x828000 InitAndLoadGameData +0x82819b InitIoForGameplay +0x8281a4 InitCpuForGameplay +0x8281dd InitPpuForGameplay +0x8282c5 LoadInitialPalette +0x8282e2 LoadStdBG3andSpriteTilesClearTilemaps +0x828367 GameState_32_MadeItToCeresElevator +0x828388 GameState_33_BlackoutFromCeres +0x828411 GameState_35_TimeUp +0x828431 GameState_36_WhitingOutFromTimeUp +0x8284bd GameState_38_SamusEscapesFromZebes +0x82852d GameState_41_TransitionToDemo +0x828548 GameState_42_PlayingDemo +0x828593 GameState_43_TransitionFromDemo +0x8285fb GameState_44_TransitionFromDemo +0x828637 CheckForNextDemo +0x828679 LoadDemoRoomData +0x82876c kDemoRoomData +0x82891a DemoRoom_ChargeBeamRoomScroll21 +0x828924 nullsub_291 +0x828925 DemoRoom_SetBG2TilemapBase +0x82892b DemoRoom_SetKraidFunctionTimer +0x828932 DemoRoom_SetBrinstarBossBits +0x82893d MainGameLoopStarter +0x828948 RunOneFrameOfGame +0x828981 kGameStateFuncs +0x8289db GameState_29_DebugGameOverMenu +0x8289e0 GameState_26_GameOverMenu +0x8289e5 GameState_4_FileSelectMenus +0x8289ea GameState_5_FileSelectMap +0x8289ef HandleSoundEffects +0x828a22 kSfxHandlers +0x828a2c SfxHandlers_0_SendToApu +0x828a52 kMult16 +0x828a55 SfxHandlers_1_WaitForAck +0x828a6c SfxHandlers_2_ClearRequest +0x828a7c SfxHandlers_3_WaitForAck +0x828a90 SfxHandlers_4_Reset +0x828a9a ResetSoundQueues +0x828ab0 ShowSpareCpu +0x828ae4 GameState_0_Reset +0x828b08 GameState_1_OpeningCinematic +0x828b0d nullsub_8 +0x828b0e GameState_37_CeresGoesBoomWithSamus +0x828b13 GameState_39_EndingAndCredits +0x828b18 UNUSED_sub_828B18 +0x828b20 GameState_7_MainGameplayFadeIn +0x828b3f GameState_28_Unused +0x828b44 GameState_8_MainGameplay +0x828bb9 DeleteAllOptionsMenuObjects? +0x828bcb CreateOptionsMenuObject? +0x828c10 OptionsPreInstr_nullsub_57 +0x828c11 OptionsMenuFunc1 +0x828c2b OptionsMenuFunc2 +0x828c5a OptionsInstr_Destroy +0x828c64 OptionsInstr_8C64 +0x828c6e OptionsInstr_SetPreInstr +0x828c79 OptionsInstr_8C79 +0x828c82 OptionsInstr_Goto +0x828c89 OptionsInstr_8C89 +0x828c93 OptionsInstr_8C93 +0x828ca1 DrawOptionsMenuSpritemaps +0x828ccf GameState_12_Pausing_Darkening +0x828cef GameState_13_Pausing +0x828d51 BackupBG2TilemapForPauseMenu +0x828d96 RestoreBG2TilemapFromPauseScreen +0x828dbd BackupSomeGfxStateForPause +0x828e19 RestoreSomeGfxStateForPause +0x828e75 LoadPauseMenuTilesAndClearBG2 +0x828eda LoadPauseScreenBaseTilemaps +0x828f70 LoadEqupmentScreenReserveHealthTilemap +0x828fd4 BackupGameplayPalettesAndLoadForPause +0x829009 ContinueInitPauseMenu +0x829028 SetupMapScrollingForFileSelectMap +0x8290c8 GameState_14_Paused +0x8290e8 GameState_15_Paused +0x8290ff MainPauseRoutine +0x829110 kPauseMenuFuncs +0x829120 PauseMenu_0_MapScreen +0x829142 PauseMenu_1_EquipmentScreen +0x829156 PauseMenu_2 +0x829186 PauseMenu_5 +0x8291ab PauseMenu_3_MapToEquipment_Load +0x8291d7 PauseMenu_6_EquipmentToMap_Load +0x829200 PauseMenu_7_EquipmentToMap_FadeIn +0x829231 PauseMenu_4_MapToEquipment_FadeIn +0x82925d MapScrolling +0x82926e kMapScrollingFuncs +0x829278 MapScrolling_0_None +0x82927f MapScrolling_GetSpeedIndex +0x82928e MapScrolling_1_Left +0x829299 MapScrolling_Common +0x8292bd MapScrolling_2_Right +0x8292ca MapScrolling_3_Up +0x8292d7 MapScrolling_4_Down +0x8292e4 kMapScrollingSpeedTable +0x829324 GameState_16_Unpausing +0x82934b DrawPauseMenuDuringFadeout +0x829367 GameState_17_Unpausing +0x8293a1 GameState_18_Unpausing +0x8293c3 LoadPauseMenuMapTilemapAndAreaLabel +0x82943d LoadPauseMenuMapTilemap +0x829517 DrawRoomSelectMap +0x829628 DrawRoomSelectMapAreaLabel +0x82964a kPauseMenuMapTilemaps +0x82965f kPauseAreaLabelTilemap +0x829717 kPauseMenuMapData +0x829e27 SetupMapScrollingForPauseMenu +0x829ec4 DetermineMapScrollLimits +0x829f45 MultiplyBy8 +0x829f4a DetermineLeftmostMapColumn +0x829fa1 k0x80Shr +0x829fa9 DetermineRightmostMapColumn +0x82a001 k0x80Shr_0 +0x82a009 DetermineTopmostMapColumn +0x82a053 DetermineBottommostMapColumn +0x82a09a SetupPpuForPauseMenu +0x82a0f7 ResetPauseMenuAnimations +0x82a12b LoadEquipmentScreenEquipmentTilemaps +0x82a27e Copy_R22_Bytes +0x82a29d ChangePaletteValues +0x82a2be ClearSamusBeamTiles +0x82a2e3 ContinueInitGameplayResume +0x82a313 SetupPpuForGameplayResume +0x82a34e CalculateBgScrolls_Unpause +0x82a377 UpdateBeamTilesAndPalette_Unpause +0x82a380 ClearPauseMenuData +0x82a3d9 UNUSED_sub_82A3D9 +0x82a505 HandlePauseScreenLR +0x82a50c HandlePauseScreenLrInput +0x82a56d HandlePauseMenuLRPressHighlight +0x82a59a DrawLrHighlight +0x82a5b7 HandlePauseScreenStart +0x82a5f1 HighlightPauseScreenButton +0x82a615 SetPauseScreenButtonLabelPalettes +0x82a622 kSetPauseScreenButtonLabelPalettes_Funcs +0x82a628 SetPauseScreenButtonLabelPalettes_2 +0x82a6df SetPauseScreenButtonLabelPalettes_1 +0x82a796 SetPauseScreenButtonLabelPalettes_0 +0x82a84d UpdatePauseMenuLRStartVramTilemap +0x82a87d UNUSED_sub_82A87D +0x82a881 DrawPauseScreenSpriteAnim +0x82a92b HandlePauseScreenPaletteAnimation +0x82a987 kPauseAnimatedPalette +0x82ab47 EquipmentScreenSetupReserveMode +0x82ac22 EquipmentScreenTransferBG1Tilemap +0x82ac4f EquipmentScreenMain +0x82ac68 kEquipmentScreenCategories +0x82ac70 EquipmentScreenCategory_Tanks +0x82ac87 kEquipmentScreenCategory_TanksFuncs +0x82ac8b EquipmentScreenHandleDpad +0x82ad0a EquipmentScreenGlowingArrow +0x82ad25 kEquipmentScreenGlowingArrowFuncs +0x82ad29 EquipmentScreenGlowingArrowAnimated +0x82ad5d kEquipmentScreenGlowingArrowPalettes0 +0x82ad9d kEquipmentScreenGlowingArrowPalettes1 +0x82addd EquipmentScreenGlowingArrowSolidOn +0x82adef EquipmentScreenGlowingArrowSolidOff +0x82ae01 EquipmentScreenEnergyArrowGlow_On +0x82ae46 EquipmentScreenEnergyArrowGlow_Off +0x82ae8b EquipmentScreenCategory_Tanks_0 +0x82aefd EquipmentScreenHudReserveAutoTilemap_On_BUGGY +0x82af33 EquipmentScreenHudReserveAutoTilemap_Off +0x82af4f EquipmentScreenCategory_Tanks_1 +0x82afbe EquipmentScreenCategory_Weapons +0x82afdb EquipmentScreenCategory_Weapons_MoveButtons +0x82b068 EquipmentScreenCategory_Weapons_PlazmaSpazerCheck +0x82b0c2 EquipmentScreenCategory_Suit +0x82b0d2 EquipmentScreenCategory_Suit_MoveResponse +0x82b150 EquipmentScreenCategory_Boots +0x82b160 EquipmentScreenCategory_Boots_MoveResponse +0x82b1e0 WriteSamusWireframeTilemapAndQueue +0x82b20c WriteSamusWireframeTilemap +0x82b257 kEquipmentScreenWireframeCmp +0x82b25f kEquipmentScreenWireframePtrs +0x82b267 EquipmentScreenDrawItemSelector +0x82b2a2 EquipmentScreenDisplayReserveTankAmount +0x82b2aa EquipmentScreenDisplayReserveTankAmount_ +0x82b3d9 kPartialReserveTankSpritemapIds +0x82b3f9 EquipmentScreenDisplayReserves_PaletteSetup +0x82b43f EquipmentScreenMoveToReserveTanks +0x82b456 EquipmentScreenMoveToBeams +0x82b489 EquipmentScreenMoveToBottomOfBeams +0x82b4b7 EquipmentScreenMoveLowerOnSuitsMisc +0x82b4e6 EquipmentScreenMoveToScrewOrHigherOnSuits +0x82b511 EquipmentScreenMoveToHighJumpOrLowerInBoots +0x82b53f EquipmentScreenCategory_Boots_MoveUpInBoots +0x82b568 EquipmentScreenCategory_ButtonResponse +0x82b5e8 UNKNOWN_sub_82B5E8 +0x82b62b DrawPauseMenuDuringFadeIn +0x82b650 UNKNOWN_sub_82B650 +0x82b672 DrawMapIcons +0x82b6dd DrawFileSelectMapIcons +0x82b798 DrawSaveStationMapIcon +0x82b7c9 kShlBit +0x82b7d1 DrawDebugSaveMapIcons +0x82b7eb DrawDebugElevatorMapIcons +0x82b805 DrawSimpleMapIcons +0x82b81c DrawMapIconsOfType +0x82b855 CheckIfMapPositionIsExplored +0x82b88a kBits0x80Shr +0x82b892 DrawBossMapIcons +0x82b90a DrawMapScrollArrowAndCheckToScroll +0x82b934 HandleMapScrollArrows +0x82b9c8 MapScreenDrawSamusPositionIndicator +0x82b9fc UpdateSamusPositionIndicatorAnimation +0x82ba25 kMap_SamusPositionIndicator_Delays +0x82ba2d kMap_SamusPositionIndicator_SpritemapIds +0x82ba35 DrawBorderAroundSamusData +0x82ba48 DrawBorderAroundDataCopyMode +0x82ba5b DrawBorderAroundDataClearMode +0x82ba6e DrawMenuSelectionMissile +0x82baaa kDrawMenuSelectionMissile_Enable +0x82bab2 kDrawMenuSelectionMissile_SpriteMap +0x82baba DrawFileCopyArrow +0x82bb0c file_copy_arrow_stuff +0x82bb30 DisplayMapElevatorDestinations +0x82bb75 HandleGameOverBabyMetroid +0x82bb9e DrawBabyMetroid +0x82bbeb JmpFuncA +0x82bbf0 FinishProcessingGameOverBabyMetroidAsm +0x82bc0c BabyMetroidPlaySfx0x23 +0x82bc15 BabyMetroidPlaySfx0x26 +0x82bc1e BabyMetroidPlaySfx0x27 +0x82bc27 kgameOverBabyMetridInstructionList +0x82bd97 kGameOverBabyMetroidPalettes +0x82be17 CancelSoundEffects +0x82be2f QueueSamusMovementSfx +0x82be5a UNKOWN_sub_82BE5A +0x82bea3 UNKNOWN_sub_82BEA3 +0x82bf04 kReserveTankEnergyTransferPerFrame +0x82bf06 kEquipmentScreenTilemap_MODE_MANUAL +0x82bf14 kEquipmentScreenTilemap_RESERVE_TANK +0x82bf22 kEquipmentScreenTilemap_MANUAL +0x82bf2a kEquipmentScreenTilemap_AUTO +0x82bf32 kEquipmentScreenTilemap_CHARGE +0x82bf3c kEquipmentScreenTilemap_ICE +0x82bf46 kEquipmentScreenTilemap_WAVE +0x82bf50 kEquipmentScreenTilemap_SPAZER +0x82bf5a kEquipmentScreenTilemap_PLASMA +0x82bf64 kEquipmentScreenTilemap_VARIASUIT +0x82bf76 kEquipmentScreenTilemap_GRAVITYSUIT +0x82bf88 kEquipmentScreenTilemap_MORPHINGBALL +0x82bf9a kEquipmentScreenTilemap_BOMBS +0x82bfac kEquipmentScreenTilemap_SPRING_BALL +0x82bfc0 kEquipmentScreenTilemap_SCREW_ATTACK +0x82bfd2 kEquipmentScreenTilemap_HIJUMP_BOOTS +0x82bfe4 kEquipmentScreenTilemap_SPACE_JUMP +0x82bff6 kEquipmentScreenTilemap_SPEED_BOOSTER +0x82c008 kEquipmentScreenTilemap_HYPER +0x82c01a kEquipmentScreenTilemap_Blank +0x82c02c kEquipmentPtrsToRamTilemapOffsets +0x82c034 kEquipmentPtrsToBitmasks +0x82c03c kEquipmentPtrsToBitsets +0x82c044 kEquipmentPtrsToEquipmentTilemaps +0x82c04c kEquipmentBitmasks_Weapons +0x82c056 kEquipmentBitmasks_Suits +0x82c062 kEquipmentBitmasks_Boots +0x82c068 kEquipmentTilemapOffs_Tanks +0x82c06c kEquipmentTilemapOffs_Weapons +0x82c076 kEquipmentTilemapOffs_Suits +0x82c082 kEquipmentTilemapOffs_Boots +0x82c088 kEquipmentTilemaps_Tanks +0x82c08c kEquipmentTilemaps_Weapons +0x82c096 kEquipmentTilemaps_Suits +0x82c0a2 kEquipmentTilemaps_Boots +0x82c0a8 kHyperBeamWeaponsTilemaps +0x82c0b2 kPauseScreenSpriteAnimationData_0 +0x82c0c4 kPauseScreenSpriteAnimationData_1 +0x82c0d6 kPauseScreenSpriteAnimationData_2 +0x82c0e8 kPauseScreenSpriteAnimationData_3 +0x82c0fa kPAuseSpritePaletteIndexValues +0x82c10a kDurationOfLrButtonPressHighlight +0x82c10c kPauseLrHighlightAnimData +0x82c137 kPauseItemSelectorAndMapScrollArrows +0x82c165 kPauseReserveTankAnimationData +0x82c182 kPauseLrButtonPressedHighlight_Spritemap +0x82c186 kPauseLrButtonPressedHighlight_Y +0x82c18a kPauseLrButtonPressedHighlight_X +0x82c18e kEquipmentScreenPtrsToItemXYpos +0x82c1d6 kEquipmentScreenReserveTank_X +0x82c1e2 kEquipmentScreenReserveTank_Y +0x82c1e4 kPausePtsToAnimationSpritemapBaseIds +0x82c639 kDummySamusWireframeTilemap +0x82c74d kMapElevatorDests +0x82c7cb kMapIconDataPointers +0x82c84d kMap_Criteria_MapStations +0x82c853 kMap_Criteria_SavePoints +0x82c873 kMap_Criteria_DebugElevatorMarkers +0x82c893 kMap_Criteria_DebugSavePoints +0x82d521 kSamusWireframePtrs_0 +0x82d631 kSamusWireframePtrs_1 +0x82d741 kSamusWireframePtrs_2 +0x82d851 kSamusWireframePtrs_3 +0x82d961 AdvancePaletteFadeForAllPalettes_0xc +0x82d96c AdvancePaletteFade_BgPalette6 +0x82d9b8 AdvanceGradualColorChangeOfPalette +0x82da02 AdvancePaletteFadeForAllPalettes +0x82da4a CalculateNthTransitionColorFromXtoY +0x82daa6 CalculateNthTransitionColorComponentFromXtoY +0x82db69 HandleSamusOutOfHealthAndGameTile +0x82dc10 GameState_27_ReserveTanksAuto +0x82dc31 RefillHealthFromReserveTanks +0x82dc80 GameState_19_SamusNoHealth +0x82dce0 GameState_20_SamusNoHealth_BlackOut +0x82dd71 GameState_21_SamusNoHealth +0x82dd87 GameState_22_SamusNoHealth_Dying +0x82dd9a GameState_23_SamusNoHealth_Flashing +0x82ddaf GameState_24_SamusNoHealth_Explosion +0x82ddc7 GameState_25_SamusNoHealth_BlackOut +0x82ddf1 LoaadDesinationRoomCreBitset +0x82de12 LoadDoorHeader +0x82de6f LoadRoomHeader +0x82def2 LoadStateHeader +0x82df69 WaitUntilEndOfVblankAndEnableIrq +0x82df80 PointlessFunctionStupidToo +0x82df99 SaveMapExploredifElevator +0x82dfb6 LoadMapExploredIfElevator +0x82dfc7 EnsureSamusDrawnEachFrame +0x82dfd1 LoadEnemyGfxToVram +0x82e039 CopyToVramAtNextInterrupt +0x82e071 LoadRoomMusic +0x82e09b UpdateMusicTrackIndex +0x82e0d5 LoadNewMusicTrackIfChanged +0x82e113 NullFunc +0x82e118 PlayRoomMusicTrackAfterAFrames +0x82e138 nullsub_58 +0x82e139 LoadColorsForSpritesBeamsAndEnemies +0x82e169 GameState_9_HitDoorBlock +0x82e17d DoorTransitionFunction_HandleElevator +0x82e19f DoorTransitionFunction_Wait48frames +0x82e1b7 GameState_10_LoadingNextRoom +0x82e288 GameState_11_LoadingNextRoom +0x82e29e DoorTransitionFunction_WaitForSoundsToFinish +0x82e2db DoorTransitionFunction_FadeOutScreen +0x82e2f7 DoorTransitionFunction_LoadDoorHeaderEtc +0x82e310 DoorTransitionFunction_ScrollScreenToAlignment +0x82e353 DoorTransitionFunction_FixDoorsMovingUp +0x82e36e DoorTransitionFunction_SetupNewRoom +0x82e38e DoorTransitionFunction_SetupScrolling +0x82e3c0 DoorTransitionFunction_PlaceSamusLoadTiles +0x82e4a9 DoorTransitionFunction_LoadMoreThings +0x82e566 ClearFxTilemap +0x82e583 ClearBg2Tilemap +0x82e5a0 ClearKraidBg2Tilemap +0x82e5c7 kUpdateBackgroundCommands +0x82e5d7 UpdateBackgroundCommand_0_Finish +0x82e5d9 UpdateBackgroundCommand_E_DoorDependentTransferToVRAM +0x82e5eb UpdateBackgroundCommand_2_TransferToVram +0x82e616 UpdateBackgroundCommand_4_Decompression +0x82e637 UpdateBackgroundCommand_6_ClearFxTilemap +0x82e63e UpdateBackgroundCommand_8_TransferToVramAndSetBg3 +0x82e64b UpdateBackgroundCommand_A_ClearBg2Tilemap +0x82e652 UpdateBackgroundCommand_C_ClearKraidBg2Tilemap +0x82e659 DoorTransition_C_HandleAnimTiles +0x82e664 DoorTransition_WaitForMusicToClear +0x82e675 UNUSED_sub_82E675 +0x82e6a2 DoorTransition_HandleTransition +0x82e737 DoorTransition_FadeInScreenAndFinish +0x82e76b LoadDestinationRoomThings +0x82e783 LoadCRETilesTilesetTilesAndPalette +0x82e78c LoadCRETilesTilesetTilesAndPalette_ +0x82e7d3 LoadLevelDataAndOtherThings +0x82e8eb SpawnDoorClosingPLM +0x82e91c CheckIfColoredDoorCapSpawned +0x82e97c LoadLibraryBackground +0x82e9d5 kLoadLibraryBackgroundFuncs +0x82e9e5 LoadLibraryBackgroundFunc_0_DONE +0x82e9e7 LoadLibraryBackgroundFunc_E_DoorDependentTransferToVram +0x82e9f9 LoadLibraryBackgroundFunc_2_TransferToVram +0x82ea2d LoadLibraryBackgroundFunc_4_Decompress +0x82ea4e LoadLibraryBackgroundFunc_6_ClearFxTilemap +0x82ea56 LoadLibraryBackgroundFunc_A_ClearBG2Tilemap +0x82ea5e LoadLibraryBackgroundFunc_C_ClearKraidLayer2 +0x82ea66 LoadLibraryBackgroundFunc_8_TransferToVramAndSetBg3 +0x82ea73 LoadLevelScrollAndCre +0x82eb6c CreatePlmsExecuteDoorAsmRoomSetup +0x82eb9f GameState_2_GameOptionsMenu +0x82ebc1 kGameOptionsMenuFuncs +0x82ebdb GameOptionsMenuFunc_0 +0x82ec11 GameOptionsMenu_1_LoadingOptionsScreen +0x82ece4 GameOptionsMenu_2_FadeInOptionsScreen +0x82ecff OptionsMenu_AddToVramQueue +0x82ed28 OptionsMenuFunc5 +0x82ed42 GameOptionsMenu_3_OptionsScreen +0x82eda7 kGameOptionsMenuItemFuncs +0x82edb1 GameOptionsMenuItemFunc_0 +0x82edda GameOptionsMenuItemFunc_2_ToggleJapanese +0x82eded OptionsMenuFunc4 +0x82ee55 GameOptionsMenuItemFunc_4 +0x82ee6a GameOptionsMenu_B_TransitionBackToFileSelect +0x82ee92 GameOptionsMenu_C_FadeOutOptionsScreenToStart +0x82eeb4 GameOptionsMenu_4_StartGame +0x82ef18 GameOptionsMenu_5_DissolveOutScreen +0x82efdb GameOptionsMenu_6_DissolveInScreen +0x82f024 GameOptionsMenu_8_SpecialSettings +0x82f088 kGameOptionsMenuSpecialSettings +0x82f08e GameOptionsMenuSpecialSettings_0 +0x82f0ae kOptionsMenuSpecialPtrs +0x82f0b2 GameOptionsMenuSpecialSettings_2 +0x82f0b9 OptionsMenuFunc7 +0x82f159 GameOptionsMenu_7_ControllerSettings +0x82f1c9 kOptionsMenuControllerFuncs +0x82f224 OptionsMenuControllerFunc_8 +0x82f25d OptionsMenuControllerFunc_7 +0x82f271 GameOptionsMenu_9_ScrollControllerSettingsDown +0x82f285 GameOptionsMenu_A_ScrollControllerSettingsUp +0x82f2a9 OptionsPreInstr_F2A9 +0x82f376 OptionsPreInstr_F376 +0x82f3a0 OptionsPreInstr_F3A0 +0x82f3e2 OptionsPreInstr_F3E2 +0x82f42c OptionsPreInstr_F42C +0x82f4dc LoadControllerOptionsFromControllerBindings +0x82f558 OptionsMenuFunc8 +0x82f587 OptionsMenuFunc6 +0x82f6b9 OptionsMenuControllerFunc_0 +0x82f70e nullsub_59 +0x82f70f RunGameStateTrampoline_IGNORE +0x82f712 nullsub_370 +0x82f713 RunMainCode +0x838000 kRoomFxDef_8F9261 +0x838010 kRoomFxDef_8F9348 +0x838020 kRoomFxDef_8F9705 +0x838030 kRoomFxDef_8F984F +0x838040 kRoomFxDef_8F98C4 +0x838050 kRoomFxDef_8F932E_1 +0x838060 kRoomFxDef_8F96EB_1 +0x838080 kRoomFxDef_8F9787 +0x838090 kRoomFxDef_8F97E0 +0x8380a0 kRoomFxDef_8F9A70 +0x8380b0 kRoomFxDef_8F9ABC +0x8380c0 kRoomFxDef_8F9213 +0x8380d0 kRoomFxDef_8F9247_1 +0x8380e0 kRoomFxDef_8F92C5 +0x8380f0 kRoomFxDef_8F9314 +0x838100 kRoomFxDef_8F93B7 +0x838110 kRoomFxDefEmpty_8F93E2 +0x838112 kRoomFxDef_8F940B +0x838122 kRoomFxDef_8F946E +0x838132 kRoomFxDef_8F9499 +0x838142 kRoomFxDefEmpty_8F94D9 +0x838144 kRoomFxDef_8F950A +0x838154 kRoomFxDefEmpty_8F955F +0x838156 kRoomFxDef_8F958A +0x838166 kRoomFxDefEmpty_8F95B5 +0x838168 kRoomFxDefEmpty_8F95E1 +0x83816a kRoomFxDef_8F960C +0x83817a kRoomFxDefEmpty_8F9637 +0x83817c kRoomFxDef_8F9668 +0x83818c kRoomFxDefEmpty_8F969C +0x83818e kRoomFxDef_8F96D1 +0x83819e kRoomFxDef_8F976D +0x8381ae kRoomFxDef_8F97C6 +0x8381be kRoomFxDefEmpty_8F981B +0x8381c0 kRoomFxDefEmpty_8F9890 +0x8381c2 kRoomFxDefEmpty_8F99A1 +0x8381c4 kRoomFxDef_8F9A06 +0x8381d4 kRoomFxDef_8F9A56 +0x8381e4 kRoomFxDef_8F9AA2 +0x8381f4 kRoomFxDef_8F9F90 +0x838204 kRoomFxDef_8F9AE6 +0x838214 kRoomFxDef_8F9B68 +0x838224 kRoomFxDefEmpty_8F9BAA +0x838226 kRoomFxDefEmpty_8F9BD5 +0x838228 kRoomFxDefEmpty_8F9C14 +0x83822a kRoomFxDefEmpty_8F9C42 +0x83822c kRoomFxDef_8F9C6B +0x83823c kRoomFxDefEmpty_8F9C96 +0x83823e kRoomFxDef_8F9CC0 +0x83824e kRoomFxDef_8F9D26 +0x83825e kRoomFxDef_8F9DA9 +0x83826e kRoomFxDef_8F9DD9 +0x83827e kRoomFxDef_8F9E1E +0x83828e kRoomFxDefEmpty_8F9E5F +0x838290 kRoomFxDef_8F9EB1 +0x8382a0 kRoomFxDef_8F9F23 +0x8382b0 kRoomFxDef_8F9F76 +0x8382c0 kRoomFxDef_8F9FC7 +0x8382d0 kRoomFxDefEmpty_8F9FF2 +0x8382d2 kRoomFxDef_8FA01E +0x8382e2 kRoomFxDef_8FA05E +0x8382f2 kRoomFxDefEmpty_8FA088 +0x8382f4 kRoomFxDef_8FA0B1 +0x838304 kRoomFxDef_8FA0DF +0x838314 kRoomFxDef_8FA114 +0x838324 kRoomFxDef_8FA13D +0x838334 kRoomFxDefEmpty_8FA168 +0x838336 kRoomFxDefEmpty_8FA191 +0x838338 kRoomFxDef_8FA1BA +0x838348 kRoomFxDefEmpty_8FA1E5 +0x83834a kRoomFxDefEmpty_8FA20E +0x83834c kRoomFxDefEmpty_8FA237 +0x83834e kRoomFxDef_8FA260 +0x83835e kRoomFxDef_8FA2A0 +0x83836e kRoomFxDefEmpty_8FA2DB +0x838370 kRoomFxDef_8FA304 +0x838380 kRoomFxDef_8FA32F +0x838390 kRoomFxDef_8FA389 +0x8383a0 kRoomFxDef_8FA3BB +0x8383b0 kRoomFxDef_8FA3EA +0x8383c0 kRoomFxDef_8FA415 +0x8383d0 kRoomFxDefEmpty_8FA454 +0x8383d2 kRoomFxDef_8FA4E7 +0x8383e2 kRoomFxDef_8FA533 +0x8383f2 kRoomFxDefEmpty_8FA578 +0x8383f4 kRoomFxDefEmpty_8FA5B1 +0x8383f6 kRoomFxDef_8FA5FA +0x838406 kRoomFxDefEmpty_8FA625 +0x838408 kRoomFxDefEmpty_8FA64E +0x83840a kRoomFxDef_8FA677 +0x83841a kRoomFxDef_8FA6AE +0x83842a kRoomFxDefEmpty_8FA6EF +0x83842c kRoomFxDefEmpty_8FA718 +0x83842e kRoomFxDefEmpty_8FA741 +0x838430 kRoomFxDef_8FA76A +0x838440 kRoomFxDef_8FA795 +0x838450 kRoomFxDef_8FA7C0 +0x838460 kRoomFxDef_8FA7EB +0x838470 kRoomFxDef_8FA822 +0x838480 kRoomFxDef_8FA872 +0x838490 kRoomFxDef_8FA89D +0x8384a0 kRoomFxDef_8FA8C6 +0x8384b0 kRoomFxDef_8FA905 +0x8384c0 kRoomFxDef_8FA930 +0x8384d0 kRoomFxDef_8FA99F +0x8384e0 kRoomFxDef_8FA9F2 +0x8384f0 kRoomFxDef_8FAA1B +0x838500 kRoomFxDef_8FAA4E +0x838510 kRoomFxDef_8FAA8F +0x838520 kRoomFxDef_8FAAC2 +0x838530 kRoomFxDef_8FAAEB +0x838540 kRoomFxDef_8FAB14 +0x838550 kRoomFxDef_8FAB48 +0x838560 kRoomFxDef_8FAB71 +0x838570 kRoomFxDef_8FAB9C +0x838580 kRoomFxDef_8FABDF +0x838590 kRoomFxDef_8FAC0D +0x8385a0 kRoomFxDef_8FAC38 +0x8385b0 kRoomFxDef_8FAC67 +0x8385c0 kRoomFxDef_8FAC90 +0x8385d0 kRoomFxDef_8FACC0 +0x8385e0 kRoomFxDef_8FACFD +0x838600 kRoomFxDef_8FAD28 +0x838610 kRoomFxDef_8FAD6B +0x838620 kRoomFxDef_8FADBA +0x838630 kRoomFxDef_8FADEB +0x838640 kRoomFxDef_8FAE14 +0x838650 kRoomFxDef_8FAE3F +0x838670 kRoomFxDef_8FAE81 +0x838680 kRoomFxDef_8FAEC1 +0x838690 kRoomFxDef_8FAEEC +0x8386a0 kRoomFxDef_8FAF21 +0x8386b0 kRoomFxDef_8FAF4C +0x8386c0 kRoomFxDef_8FAF7F +0x8386d0 kRoomFxDef_8FAFB0 +0x8386f0 kRoomFxDef_8FAFDB +0x838700 kRoomFxDef_8FB008 +0x838710 kRoomFxDef_8FB033 +0x838720 kRoomFxDef_8FB05E +0x838730 kRoomFxDef_8FB087 +0x838740 kRoomFxDef_8FB0C1 +0x838750 kRoomFxDef_8FB0EA +0x838760 kRoomFxDefEmpty_8FB113 +0x838762 kRoomFxDefEmpty_8FB146 +0x838764 kRoomFxDefEmpty_8FB174 +0x838766 kRoomFxDefEmpty_8FB19F +0x838768 kRoomFxDefEmpty_8FB1C8 +0x83876a kRoomFxDef_8FB1F2 +0x83878a kRoomFxDef_8FB243 +0x83879a kRoomFxDef_8FB295 +0x8387aa kRoomFxDef_8FB2E7 +0x8387ba kRoomFxDefEmpty_8FB312 +0x8387bc kRoomFxDef_8FB340 +0x8387cc kRoomFxDef_8FB387 +0x8387dc kRoomFxDef_8FB3B2 +0x8387fc kRoomFxDef_8FB417 +0x83880c kRoomFxDef_8FB464 +0x83881c kRoomFxDef_8FB48F +0x83882c kRoomFxDef_8FB4BA +0x83883c kRoomFxDef_8FB4F2 +0x83885c kRoomFxDef_8FB51D +0x83886c kRoomFxDef_8FB567 +0x83887c kRoomFxDef_8FB592 +0x83888c kRoomFxDef_8FB5E2 +0x83889c kRoomFxDef_8FB638 +0x8388ac kRoomFxDef_8FB663 +0x8388bc kRoomFxDef_8FB6A5 +0x8388cc kRoomFxDef_8FB6CE +0x8388dc kRoomFxDef_8FB6FB +0x8388ec kRoomFxDef_8FB74E +0x8388fc kDoorDef_88fc +0x8388fe kDoorDef_88fe +0x838916 kDoorDef_8916 +0x838922 kDoorDef_8922 +0x83892e kDoorDef_892e +0x83893a kDoorDef_893a +0x838946 kDoorDef_8946 +0x838952 kDoorDef_8952 +0x83895e kDoorDef_895e +0x83896a kDoorDef_896a +0x838976 kDoorDef_8976 +0x838982 kDoorDef_8982 +0x83898e kDoorDef_898e +0x83899a kDoorDef_899a +0x8389a6 kDoorDef_89a6 +0x8389b2 kDoorDef_89b2 +0x8389be kDoorDef_89be +0x8389ca kDoorDef_89ca +0x8389d6 kDoorDef_89d6 +0x8389e2 kDoorDef_89e2 +0x8389ee kDoorDef_89ee +0x8389fa kDoorDef_89fa +0x838a06 kDoorDef_8a06 +0x838a12 kDoorDef_8a12 +0x838a1e kDoorDef_8a1e +0x838a2a kDoorDef_8a2a +0x838a36 kDoorDef_8a36 +0x838a42 kDoorDef_8a42 +0x838a4e kDoorDef_8a4e +0x838a5a kDoorDef_8a5a +0x838a66 kDoorDef_8a66 +0x838a72 kDoorDef_8a72 +0x838a7e kDoorDef_8a7e +0x838a8a kDoorDef_8a8a +0x838a96 kDoorDef_8a96 +0x838aa2 kDoorDef_8aa2 +0x838aae kDoorDef_8aae +0x838aba kDoorDef_8aba +0x838ac6 kDoorDef_8ac6 +0x838ad2 kDoorDef_8ad2 +0x838ade kDoorDef_8ade +0x838aea kDoorDef_8aea +0x838af6 kDoorDef_8af6 +0x838b02 kDoorDef_8b02 +0x838b0e kDoorDef_8b0e +0x838b1a kDoorDef_8b1a +0x838b26 kDoorDef_8b26 +0x838b32 kDoorDef_8b32 +0x838b3e kDoorDef_8b3e +0x838b4a kDoorDef_8b4a +0x838b56 kDoorDef_8b56 +0x838b62 kDoorDef_8b62 +0x838b6e kDoorDef_8b6e +0x838b7a kDoorDef_8b7a +0x838b86 kDoorDef_8b86 +0x838b92 kDoorDef_8b92 +0x838b9e kDoorDef_8b9e +0x838baa kDoorDef_8baa +0x838bb6 kDoorDef_8bb6 +0x838bc2 kDoorDef_8bc2 +0x838bce kDoorDef_8bce +0x838bda kDoorDef_8bda +0x838be6 kDoorDef_8be6 +0x838bf2 kDoorDef_8bf2 +0x838bfe kDoorDef_8bfe +0x838c0a kDoorDef_8c0a +0x838c16 kDoorDef_8c16 +0x838c22 kDoorDef_8c22 +0x838c2e kDoorDef_8c2e +0x838c3a kDoorDef_8c3a +0x838c46 kDoorDef_8c46 +0x838c52 kDoorDef_8c52 +0x838c5e kDoorDef_8c5e +0x838c6a kDoorDef_8c6a +0x838c76 kDoorDef_8c76 +0x838c82 kDoorDef_8c82 +0x838c8e kDoorDef_8c8e +0x838c9a kDoorDef_8c9a +0x838ca6 kDoorDef_8ca6 +0x838cb2 kDoorDef_8cb2 +0x838cbe kDoorDef_8cbe +0x838cca kDoorDef_8cca +0x838cd6 kDoorDef_8cd6 +0x838ce2 kDoorDef_8ce2 +0x838cee kDoorDef_8cee +0x838cfa kDoorDef_8cfa +0x838d06 kDoorDef_8d06 +0x838d12 kDoorDef_8d12 +0x838d1e kDoorDef_8d1e +0x838d2a kDoorDef_8d2a +0x838d36 kDoorDef_8d36 +0x838d42 kDoorDef_8d42 +0x838d4e kDoorDef_8d4e +0x838d5a kDoorDef_8d5a +0x838d66 kDoorDef_8d66 +0x838d72 kDoorDef_8d72 +0x838d7e kDoorDef_8d7e +0x838d8a kDoorDef_8d8a +0x838d96 kDoorDef_8d96 +0x838da2 kDoorDef_8da2 +0x838dae kDoorDef_8dae +0x838dba kDoorDef_8dba +0x838dc6 kDoorDef_8dc6 +0x838dd2 kDoorDef_8dd2 +0x838dde kDoorDef_8dde +0x838dea kDoorDef_8dea +0x838df6 kDoorDef_8df6 +0x838e02 kDoorDef_8e02 +0x838e0e kDoorDef_8e0e +0x838e1a kDoorDef_8e1a +0x838e26 kDoorDef_8e26 +0x838e32 kDoorDef_8e32 +0x838e3e kDoorDef_8e3e +0x838e4a kDoorDef_8e4a +0x838e56 kDoorDef_8e56 +0x838e62 kDoorDef_8e62 +0x838e6e kDoorDef_8e6e +0x838e7a kDoorDef_8e7a +0x838e86 kDoorDef_8e86 +0x838e92 kDoorDef_8e92 +0x838e9e kDoorDef_8e9e +0x838eaa kDoorDef_8eaa +0x838eb6 kDoorDef_8eb6 +0x838ec2 kDoorDef_8ec2 +0x838ece kDoorDef_8ece +0x838eda kDoorDef_8eda +0x838ee6 kDoorDef_8ee6 +0x838ef2 kDoorDef_8ef2 +0x838efe kDoorDef_8efe +0x838f0a kDoorDef_8f0a +0x838f16 kDoorDef_8f16 +0x838f22 kDoorDef_8f22 +0x838f2e kDoorDef_8f2e +0x838f3a kDoorDef_8f3a +0x838f46 kDoorDef_8f46 +0x838f52 kDoorDef_8f52 +0x838f5e kDoorDef_8f5e +0x838f6a kDoorDef_8f6a +0x838f76 kDoorDef_8f76 +0x838f82 kDoorDef_8f82 +0x838f8e kDoorDef_8f8e +0x838f9a kDoorDef_8f9a +0x838fa6 kDoorDef_8fa6 +0x838fb2 kDoorDef_8fb2 +0x838fbe kDoorDef_8fbe +0x838fca kDoorDef_8fca +0x838fd6 kDoorDef_8fd6 +0x838fe2 kDoorDef_8fe2 +0x838fee kDoorDef_8fee +0x838ffa kDoorDef_8ffa +0x839006 kDoorDef_9006 +0x839012 kDoorDef_9012 +0x83901e kDoorDef_901e +0x83902a kDoorDef_902a +0x839036 kDoorDef_9036 +0x839042 kDoorDef_9042 +0x83904e kDoorDef_904e +0x83905a kDoorDef_905a +0x839066 kDoorDef_9066 +0x839072 kDoorDef_9072 +0x83907e kDoorDef_907e +0x83908a kDoorDef_908a +0x839096 kDoorDef_9096 +0x8390a2 kDoorDef_90a2 +0x8390ae kDoorDef_90ae +0x8390ba kDoorDef_90ba +0x8390c6 kDoorDef_90c6 +0x8390d2 kDoorDef_90d2 +0x8390de kDoorDef_90de +0x8390ea kDoorDef_90ea +0x8390f6 kDoorDef_90f6 +0x839102 kDoorDef_9102 +0x83910e kDoorDef_910e +0x83911a kDoorDef_911a +0x839126 kDoorDef_9126 +0x839132 kDoorDef_9132 +0x83913e kDoorDef_913e +0x83914a kDoorDef_914a +0x839156 kDoorDef_9156 +0x839162 kDoorDef_9162 +0x83916e kDoorDef_916e +0x83917a kDoorDef_917a +0x839186 kDoorDef_9186 +0x839192 kDoorDef_9192 +0x83919e kDoorDef_919e +0x8391aa kDoorDef_91aa +0x8391b6 kDoorDef_91b6 +0x8391c2 kDoorDef_91c2 +0x8391ce kDoorDef_91ce +0x8391da kDoorDef_91da +0x8391e6 kDoorDef_91e6 +0x8391f2 kDoorDef_91f2 +0x8391fe kDoorDef_91fe +0x83920a kDoorDef_920a +0x839216 kDoorDef_9216 +0x839222 kDoorDef_9222 +0x83922e kDoorDef_922e +0x83923a kDoorDef_923a +0x839246 kDoorDef_9246 +0x839252 kDoorDef_9252 +0x83925e kDoorDef_925e +0x83926a kDoorDef_926a +0x839276 kDoorDef_9276 +0x839282 kDoorDef_9282 +0x83928e kDoorDef_928e +0x83929a kDoorDef_929a +0x8392a6 kDoorDef_92a6 +0x8392b2 kDoorDef_92b2 +0x8392be kDoorDef_92be +0x8392ca kDoorDef_92ca +0x8392d6 kDoorDef_92d6 +0x8392e2 kDoorDef_92e2 +0x8392ee kDoorDef_92ee +0x8392fa kDoorDef_92fa +0x839306 kDoorDef_9306 +0x839312 kDoorDef_9312 +0x83931e kDoorDef_931e +0x83932a kDoorDef_932a +0x839336 kDoorDef_9336 +0x839342 kDoorDef_9342 +0x83934e kDoorDef_934e +0x83935a kDoorDef_935a +0x839366 kDoorDef_9366 +0x839372 kDoorDef_9372 +0x83937e kDoorDef_937e +0x83938a kDoorDef_938a +0x839396 kDoorDef_9396 +0x8393a2 kDoorDef_93a2 +0x8393ae kDoorDef_93ae +0x8393ba kDoorDef_93ba +0x8393c6 kDoorDef_93c6 +0x8393d2 kDoorDef_93d2 +0x8393de kDoorDef_93de +0x8393ea kDoorDef_93ea +0x8393f6 kDoorDef_93f6 +0x839402 kDoorDef_9402 +0x83940e kDoorDef_940e +0x83941a kDoorDef_941a +0x839426 kDoorDef_9426 +0x839432 kDoorDef_9432 +0x83943e kDoorDef_943e +0x83944a kDoorDef_944a +0x839456 kDoorDef_9456 +0x839462 kDoorDef_9462 +0x83946e kDoorDef_946e +0x83947a kDoorDef_947a +0x839486 kDoorDef_9486 +0x839492 kDoorDef_9492 +0x83949e kDoorDef_949e +0x8394aa kDoorDef_94aa +0x8394b6 kDoorDef_94b6 +0x8394c2 kDoorDef_94c2 +0x8394ce kDoorDef_94ce +0x8394da kDoorDef_94da +0x8394e6 kDoorDef_94e6 +0x8394f2 kDoorDef_94f2 +0x8394fe kDoorDef_94fe +0x83950a kDoorDef_950a +0x839516 kDoorDef_9516 +0x839522 kDoorDef_9522 +0x83952e kDoorDef_952e +0x83953a kDoorDef_953a +0x839546 kDoorDef_9546 +0x839552 kDoorDef_9552 +0x83955e kDoorDef_955e +0x83956a kDoorDef_956a +0x839576 kDoorDef_9576 +0x839582 kDoorDef_9582 +0x83958e kDoorDef_958e +0x83959a kDoorDef_959a +0x8395a6 kDoorDef_95a6 +0x8395b2 kDoorDef_95b2 +0x8395be kDoorDef_95be +0x8395ca kDoorDef_95ca +0x8395d6 kDoorDef_95d6 +0x8395e2 kDoorDef_95e2 +0x8395ee kDoorDef_95ee +0x8395fa kDoorDef_95fa +0x839606 kDoorDef_9606 +0x839612 kDoorDef_9612 +0x83961e kDoorDef_961e +0x83962a kDoorDef_962a +0x839636 kDoorDef_9636 +0x839642 kDoorDef_9642 +0x83964e kDoorDef_964e +0x83965a kDoorDef_965a +0x839666 kDoorDef_9666 +0x839672 kDoorDef_9672 +0x83967e kDoorDef_967e +0x83968a kDoorDef_968a +0x839696 kDoorDef_9696 +0x8396a2 kDoorDef_96a2 +0x8396ae kDoorDef_96ae +0x8396ba kDoorDef_96ba +0x8396c6 kDoorDef_96c6 +0x8396d2 kDoorDef_96d2 +0x8396de kDoorDef_96de +0x8396ea kDoorDef_96ea +0x8396f6 kDoorDef_96f6 +0x839702 kDoorDef_9702 +0x83970e kDoorDef_970e +0x83971a kDoorDef_971a +0x839726 kDoorDef_9726 +0x839732 kDoorDef_9732 +0x83973e kDoorDef_973e +0x83974a kDoorDef_974a +0x839756 kDoorDef_9756 +0x839762 kDoorDef_9762 +0x83976e kDoorDef_976e +0x83977a kDoorDef_977a +0x839786 kDoorDef_9786 +0x839792 kDoorDef_9792 +0x83979e kDoorDef_979e +0x8397aa kDoorDef_97aa +0x8397b6 kDoorDef_97b6 +0x8397c2 kDoorDef_97c2 +0x8397ce kDoorDef_97ce +0x8397da kDoorDef_97da +0x8397e6 kDoorDef_97e6 +0x8397f2 kDoorDef_97f2 +0x8397fe kDoorDef_97fe +0x83980a kDoorDef_980a +0x839816 kDoorDef_9816 +0x839822 kDoorDef_9822 +0x83982e kDoorDef_982e +0x83983a kDoorDef_983a +0x839846 kDoorDef_9846 +0x839852 kDoorDef_9852 +0x83985e kDoorDef_985e +0x83986a kDoorDef_986a +0x839876 kDoorDef_9876 +0x839882 kDoorDef_9882 +0x83988e kDoorDef_988e +0x83989a kDoorDef_989a +0x8398a6 kDoorDef_98a6 +0x8398b2 kDoorDef_98b2 +0x8398be kDoorDef_98be +0x8398ca kDoorDef_98ca +0x8398d6 kDoorDef_98d6 +0x8398e2 kDoorDef_98e2 +0x8398ee kDoorDef_98ee +0x8398fa kDoorDef_98fa +0x839906 kDoorDef_9906 +0x839912 kDoorDef_9912 +0x83991e kDoorDef_991e +0x83992a kDoorDef_992a +0x839936 kDoorDef_9936 +0x839942 kDoorDef_9942 +0x83994e kDoorDef_994e +0x83995a kDoorDef_995a +0x839966 kDoorDef_9966 +0x839972 kDoorDef_9972 +0x83997e kDoorDef_997e +0x83998a kDoorDef_998a +0x839996 kDoorDef_9996 +0x8399a2 kDoorDef_99a2 +0x8399ae kDoorDef_99ae +0x8399ba kDoorDef_99ba +0x8399c6 kDoorDef_99c6 +0x8399d2 kDoorDef_99d2 +0x8399de kDoorDef_99de +0x8399ea kDoorDef_99ea +0x8399f6 kDoorDef_99f6 +0x839a02 kDoorDef_9a02 +0x839a0e kDoorDef_9a0e +0x839a1a kDoorDef_9a1a +0x839a26 kDoorDef_9a26 +0x839a32 kDoorDef_9a32 +0x839a3e kDoorDef_9a3e +0x839a4a kDoorDef_9a4a +0x839a56 kDoorDef_9a56 +0x839a62 kDoorDef_9a62 +0x839a6e kDoorDef_9a6e +0x839a7a kDoorDef_9a7a +0x839a86 kDoorDef_9a86 +0x839a92 kDoorDef_9a92 +0x839a9e kDoorDef_9a9e +0x839aaa kDoorDef_9aaa +0x839ab6 kDoorDef_9ab6 +0x839ac2 kRoomFxDef_8FC9BA +0x839ad2 kRoomFxDef_8FCA34 +0x839ae2 kRoomFxDef_8FCA7E +0x839af2 kRoomFxDef_8FCADA +0x839b02 kRoomFxDef_8FCB22 +0x839b12 kRoomFxDef_8FCBB7 +0x839b22 kRoomFxDef_8FCC01 +0x839b32 kRoomFxDef_8FCC53 +0x839b42 kRoomFxDef_8FCC9B +0x839b52 kRoomFxDef_8FCCF7 +0x839b62 kRoomFxDefEmpty_8FCD3F +0x839b64 kRoomFxDef_8FCD88 +0x839b74 kRoomFxDef_8FCDD4 +0x839b84 kRoomFxDef_8FCE1D +0x839b94 kRoomFxDef_8FCE6C +0x839ba4 kRoomFxDef_8FC9A0 +0x839bb4 kRoomFxDef_8FCA1A +0x839bc4 kRoomFxDef_8FCA64 +0x839bd4 kRoomFxDef_8FCAC0 +0x839be4 kRoomFxDef_8FCB08 +0x839bf4 kRoomFxDef_8FCB9D +0x839c04 kRoomFxDef_8FCBE7 +0x839c14 kRoomFxDef_8FCC39 +0x839c24 kRoomFxDef_8FCC81 +0x839c34 kRoomFxDef_8FCCDD +0x839c44 kRoomFxDef_8FCD25 +0x839c54 kRoomFxDef_8FCD6E +0x839c64 kRoomFxDef_8FCDBA +0x839c74 kRoomFxDef_8FCE52 +0x839c84 kRoomFxDef_8FCEDF +0x839c94 kRoomFxDef_8FCF0D +0x839ca4 kRoomFxDef_8FCF61 +0x839cb4 kRoomFxDef_8FCF8D +0x839cc4 kRoomFxDef_8FCFD6 +0x839cd4 kRoomFxDef_8FD024 +0x839ce4 kRoomFxDef_8FD062 +0x839cf4 kRoomFxDef_8FD097 +0x839d04 kRoomFxDef_8FD0C6 +0x839d14 kRoomFxDef_8FD111 +0x839d24 kRoomFxDef_8FD148 +0x839d34 kRoomFxDef_8FD17A +0x839d44 kRoomFxDef_8FD1B0 +0x839d54 kRoomFxDef_8FD1EA +0x839d64 kRoomFxDef_8FD229 +0x839d74 kRoomFxDef_8FD25F +0x839d84 kRoomFxDef_8FD28B +0x839d94 kRoomFxDef_8FD2B7 +0x839da4 kRoomFxDef_8FD2E6 +0x839db4 kRoomFxDef_8FD318 +0x839dc4 kRoomFxDef_8FD34D +0x839dd4 kRoomFxDef_8FD394 +0x839de4 kRoomFxDef_8FD3C3 +0x839df4 kRoomFxDef_8FD3EC +0x839e04 kRoomFxDef_8FD415 +0x839e34 kRoomFxDef_8FD440 +0x839e44 kRoomFxDef_8FD46E +0x839e54 kRoomFxDef_8FD49B +0x839e64 kRoomFxDef_8FD4CF +0x839e74 kRoomFxDef_8FD4FC +0x839e84 kRoomFxDef_8FD52B +0x839e94 kRoomFxDef_8FD587 +0x839ea4 kRoomFxDef_8FD5B4 +0x839eb4 kRoomFxDef_8FD5F9 +0x839ec4 kRoomFxDef_8FD624 +0x839ed4 kRoomFxDef_8FD653 +0x839ee4 kRoomFxDef_8FD6A7 +0x839ef4 kRoomFxDef_8FD6DD +0x839f04 kRoomFxDef_8FD70A +0x839f14 kRoomFxDef_8FD737 +0x839f24 kRoomFxDef_8FD772 +0x839f34 kRoomFxDef_8FD7A1 +0x839f44 kRoomFxDef_8FD7F1 +0x839f54 kRoomFxDef_8FD827 +0x839f64 kRoomFxDef_8FD852 +0x839f74 kRoomFxDef_8FD8A5 +0x839f84 kRoomFxDef_8FD8D7 +0x839f94 kRoomFxDef_8FD920 +0x839fa4 kRoomFxDef_8FD970 +0x839fb4 kRoomFxDef_8FD9B7 +0x839fc4 kRoomFxDef_8FD9E1 +0x839fd4 kRoomFxDef_8FDA0B +0x839fe4 kRoomFxDef_8FDA38 +0x839ff4 kRoomFxDef_8FDA72 +0x83a004 kRoomFxDef_8FDABB +0x83a014 kRoomFxDef_8FDAF3 +0x83a024 kRoomFxDef_8FDB43 +0x83a034 kRoomFxDef_8FDB8F +0x83a044 kRoomFxDef_8FDBDF +0x83a054 kRoomFxDef_8FDC2B +0x83a064 kRoomFxDef_8FDC77 +0x83a074 kRoomFxDef_8FDCC3 +0x83a084 kRoomFxDef_8FDD0C +0x83a094 kRoomFxDef_8FDD3B +0x83a0a4 kRoomFxDef_8FDD6E +0x83a0d4 kRoomFxDef_8FDDD1 +0x83a0e4 kRoomFxDef_8FDE00 +0x83a0f4 kRoomFxDef_8FDE30 +0x83a104 kRoomFxDef_8FDE5A +0x83a114 kRoomFxDef_8FDE87 +0x83a124 kRoomFxDef_8FDEB4 +0x83a134 kRoomFxDef_8FDEEB +0x83a144 kRoomFxDefEmpty_8FDF28 +0x83a146 kRoomFxDef_8FDF57 +0x83a156 kRoomFxDefEmpty_8FDF9F +0x83a158 kRoomFxDefEmpty_8FDFE9 +0x83a15a kRoomFxDefEmpty_8FE033 +0x83a15c kRoomFxDefEmpty_8FE07D +0x83a15e kRoomFxDef_8FE0C7 +0x83a17e kRoomFxDefEmpty_8FDFB9 +0x83a180 kRoomFxDefEmpty_8FE003 +0x83a182 kRoomFxDefEmpty_8FE04D +0x83a184 kRoomFxDefEmpty_8FE097 +0x83a186 kRoomFxDefEmpty_8FE0E1 +0x83a188 kRoomFxDefEmpty_8FE839 +0x83a18a kDoorDef_a18a +0x83a18c kDoorDef_a18c +0x83a198 kDoorDef_a198 +0x83a1a4 kDoorDef_a1a4 +0x83a1b0 kDoorDef_a1b0 +0x83a1bc kDoorDef_a1bc +0x83a1c8 kDoorDef_a1c8 +0x83a1d4 kDoorDef_a1d4 +0x83a1e0 kDoorDef_a1e0 +0x83a1ec kDoorDef_a1ec +0x83a1f8 kDoorDef_a1f8 +0x83a204 kDoorDef_a204 +0x83a210 kDoorDef_a210 +0x83a21c kDoorDef_a21c +0x83a228 kDoorDef_a228 +0x83a234 kDoorDef_a234 +0x83a240 kDoorDef_a240 +0x83a24c kDoorDef_a24c +0x83a258 kDoorDef_a258 +0x83a264 kDoorDef_a264 +0x83a270 kDoorDef_a270 +0x83a27c kDoorDef_a27c +0x83a288 kDoorDef_a288 +0x83a294 kDoorDef_a294 +0x83a2a0 kDoorDef_a2a0 +0x83a2ac kDoorDef_a2ac +0x83a2b8 kDoorDef_a2b8 +0x83a2c4 kDoorDef_a2c4 +0x83a2d0 kDoorDef_a2d0 +0x83a2dc kDoorDef_a2dc +0x83a2e8 kDoorDef_a2e8 +0x83a2f4 kDoorDef_a2f4 +0x83a300 kDoorDef_a300 +0x83a30c kDoorDef_a30c +0x83a318 kDoorDef_a318 +0x83a324 kDoorDef_a324 +0x83a330 kDoorDef_a330 +0x83a33c kDoorDef_a33c +0x83a348 kDoorDef_a348 +0x83a354 kDoorDef_a354 +0x83a360 kDoorDef_a360 +0x83a36c kDoorDef_a36c +0x83a378 kDoorDef_a378 +0x83a384 kDoorDef_a384 +0x83a390 kDoorDef_a390 +0x83a39c kDoorDef_a39c +0x83a3a8 kDoorDef_a3a8 +0x83a3b4 kDoorDef_a3b4 +0x83a3c0 kDoorDef_a3c0 +0x83a3cc kDoorDef_a3cc +0x83a3d8 kDoorDef_a3d8 +0x83a3e4 kDoorDef_a3e4 +0x83a3f0 kDoorDef_a3f0 +0x83a3fc kDoorDef_a3fc +0x83a408 kDoorDef_a408 +0x83a414 kDoorDef_a414 +0x83a420 kDoorDef_a420 +0x83a42c kDoorDef_a42c +0x83a438 kDoorDef_a438 +0x83a444 kDoorDef_a444 +0x83a450 kDoorDef_a450 +0x83a45c kDoorDef_a45c +0x83a468 kDoorDef_a468 +0x83a474 kDoorDef_a474 +0x83a480 kDoorDef_a480 +0x83a48c kDoorDef_a48c +0x83a498 kDoorDef_a498 +0x83a4a4 kDoorDef_a4a4 +0x83a4b0 kDoorDef_a4b0 +0x83a4bc kDoorDef_a4bc +0x83a4c8 kDoorDef_a4c8 +0x83a4d4 kDoorDef_a4d4 +0x83a4e0 kDoorDef_a4e0 +0x83a4ec kDoorDef_a4ec +0x83a4f8 kDoorDef_a4f8 +0x83a504 kDoorDef_a504 +0x83a510 kDoorDef_a510 +0x83a51c kDoorDef_a51c +0x83a528 kDoorDef_a528 +0x83a534 kDoorDef_a534 +0x83a540 kDoorDef_a540 +0x83a54c kDoorDef_a54c +0x83a558 kDoorDef_a558 +0x83a564 kDoorDef_a564 +0x83a570 kDoorDef_a570 +0x83a57c kDoorDef_a57c +0x83a588 kDoorDef_a588 +0x83a594 kDoorDef_a594 +0x83a5a0 kDoorDef_a5a0 +0x83a5ac kDoorDef_a5ac +0x83a5b8 kDoorDef_a5b8 +0x83a5c4 kDoorDef_a5c4 +0x83a5d0 kDoorDef_a5d0 +0x83a5dc kDoorDef_a5dc +0x83a5e8 kDoorDef_a5e8 +0x83a5f4 kDoorDef_a5f4 +0x83a600 kDoorDef_a600 +0x83a60c kDoorDef_a60c +0x83a618 kDoorDef_a618 +0x83a624 kDoorDef_a624 +0x83a630 kDoorDef_a630 +0x83a63c kDoorDef_a63c +0x83a648 kDoorDef_a648 +0x83a654 kDoorDef_a654 +0x83a660 kDoorDef_a660 +0x83a66c kDoorDef_a66c +0x83a678 kDoorDef_a678 +0x83a684 kDoorDef_a684 +0x83a690 kDoorDef_a690 +0x83a69c kDoorDef_a69c +0x83a6a8 kDoorDef_a6a8 +0x83a6b4 kDoorDef_a6b4 +0x83a6c0 kDoorDef_a6c0 +0x83a6cc kDoorDef_a6cc +0x83a6d8 kDoorDef_a6d8 +0x83a6e4 kDoorDef_a6e4 +0x83a6f0 kDoorDef_a6f0 +0x83a6fc kDoorDef_a6fc +0x83a708 kDoorDef_a708 +0x83a714 kDoorDef_a714 +0x83a720 kDoorDef_a720 +0x83a72c kDoorDef_a72c +0x83a738 kDoorDef_a738 +0x83a744 kDoorDef_a744 +0x83a750 kDoorDef_a750 +0x83a75c kDoorDef_a75c +0x83a768 kDoorDef_a768 +0x83a774 kDoorDef_a774 +0x83a780 kDoorDef_a780 +0x83a78c kDoorDef_a78c +0x83a798 kDoorDef_a798 +0x83a7a4 kDoorDef_a7a4 +0x83a7b0 kDoorDef_a7b0 +0x83a7bc kDoorDef_a7bc +0x83a7c8 kDoorDef_a7c8 +0x83a7d4 kDoorDef_a7d4 +0x83a7e0 kDoorDef_a7e0 +0x83a7ec kDoorDef_a7ec +0x83a7f8 kDoorDef_a7f8 +0x83a81c kDoorDef_a81c +0x83a828 kDoorDef_a828 +0x83a834 kDoorDef_a834 +0x83a840 kDoorDef_a840 +0x83a84c kDoorDef_a84c +0x83a858 kDoorDef_a858 +0x83a864 kDoorDef_a864 +0x83a870 kDoorDef_a870 +0x83a87c kDoorDef_a87c +0x83a888 kDoorDef_a888 +0x83a894 kDoorDef_a894 +0x83a8a0 kDoorDef_a8a0 +0x83a8ac kDoorDef_a8ac +0x83a8b8 kDoorDef_a8b8 +0x83a8c4 kDoorDef_a8c4 +0x83a8d0 kDoorDef_a8d0 +0x83a8dc kDoorDef_a8dc +0x83a8e8 kDoorDef_a8e8 +0x83a8f4 kDoorDef_a8f4 +0x83a900 kDoorDef_a900 +0x83a90c kDoorDef_a90c +0x83a918 kDoorDef_a918 +0x83a924 kDoorDef_a924 +0x83a930 kDoorDef_a930 +0x83a93c kDoorDef_a93c +0x83a948 kDoorDef_a948 +0x83a954 kDoorDef_a954 +0x83a960 kDoorDef_a960 +0x83a96c kDoorDef_a96c +0x83a978 kDoorDef_a978 +0x83a984 kDoorDef_a984 +0x83a990 kDoorDef_a990 +0x83a99c kDoorDef_a99c +0x83a9a8 kDoorDef_a9a8 +0x83a9b4 kDoorDef_a9b4 +0x83a9c0 kDoorDef_a9c0 +0x83a9cc kDoorDef_a9cc +0x83a9d8 kDoorDef_a9d8 +0x83a9e4 kDoorDef_a9e4 +0x83a9f0 kDoorDef_a9f0 +0x83a9fc kDoorDef_a9fc +0x83aa08 kDoorDef_aa08 +0x83aa14 kDoorDef_aa14 +0x83aa20 kDoorDef_aa20 +0x83aa2c kDoorDef_aa2c +0x83aa38 kDoorDef_aa38 +0x83aa44 kDoorDef_aa44 +0x83aa50 kDoorDef_aa50 +0x83aa5c kDoorDef_aa5c +0x83aa68 kDoorDef_aa68 +0x83aa74 kDoorDef_aa74 +0x83aa80 kDoorDef_aa80 +0x83aa8c kDoorDef_aa8c +0x83aa98 kDoorDef_aa98 +0x83aaa4 kDoorDef_aaa4 +0x83aab0 kDoorDef_aab0 +0x83aabc kDoorDef_aabc +0x83aac8 kDoorDef_aac8 +0x83aad4 kDoorDef_aad4 +0x83aae0 kDoorDef_aae0 +0x83aaec kDoorDef_aaec +0x83aaf8 kDoorDef_aaf8 +0x83ab04 kDoorDef_ab04 +0x83ab10 kDoorDef_ab10 +0x83ab1c kDoorDef_ab1c +0x83ab28 kDoorDef_ab28 +0x83ab34 kDoorDef_ab34 +0x83ab40 kDoorDef_ab40 +0x83ab4c kDoorDef_ab4c +0x83ab58 kDoorDef_ab58 +0x83ab64 kDoorDef_ab64 +0x83ab70 kDoorDef_ab70 +0x83ab7c kDoorDef_ab7c +0x83ab88 kDoorDef_ab88 +0x83ab94 kDoorDef_ab94 +0x83aba0 kDoorDef_aba0 +0x83abac kDoorDef_abac +0x83abb8 kDoorDef_abb8 +0x83abc4 kDebugDoorDef_ABC4 +0x83abcf kDebugDoorDef_abcf +0x83abda kDebugDoorDef_abda +0x83abe5 kDebugDoorDef_abe5 +0x83abf0 kFxTypeTilemapPtrs +0x83ac18 kFxTypeFuncPtrs +0x83ac46 kAreaPalFxListPointers +0x83ac56 kAreaAnimtilesListPtrs +0x83ac66 kAreaPalFxList_0 +0x83ac76 kAreaAnimtilesList_0 +0x83ac86 kAreaPalFxList_1 +0x83ac96 kAreaAnimtilesList_1 +0x83aca6 kAreaPalFxList_2 +0x83acb6 kAreaAnimtilesList_2 +0x83acc6 kAreaPalFxList_3 +0x83acd6 kAreaAnimtilesList_3 +0x83ace6 kAreaPalFxList_4 +0x83acf6 kAreaAnimtilesList_4 +0x83ad06 kAreaPalFxList_5 +0x83ad16 kAreaAnimtilesList_5 +0x83ad26 kAreaPalFxList_6 +0x83ad36 kAreaAnimtilesList_6 +0x83ad46 kAreaPalFxList_7 +0x83ad56 kAreaAnimtilesList_7 +0x848000 SetGoldenTorizoPalette +0x848032 kGoldenTorizoPalette1 +0x848132 kGoldenTorizoPalette2 +0x848232 LoadRoomPlmGfx +0x848250 ClearSoundsWhenGoingThroughDoor +0x848258 UNUSED_sub_848258 +0x848270 PlaySpinJumpSoundIfSpinJumping +0x848278 UNUSED_sub_848278 +0x848290 CalculatePlmBlockCoords +0x8482b4 WriteLevelDataBlockTypeAndBts +0x8482d6 WriteRowOfLevelDataBlockAndBTS +0x84831a LoadXrayBlocks +0x84839d kXrayBlockDrawingInstrs +0x8483ad EnablePLMs +0x8483b8 DisablePLMs +0x8483c3 ClearPLMs +0x8483d7 SpawnHardcodedPlm +0x848469 PlmPreInstr_nullsub_60 +0x84846a SpawnRoomPLM +0x8484e6 PlmPreInstr_Empty2 +0x8484e7 SpawnPLM +0x84853d PlmPreInstr_Empty3 +0x84853e UNUSED_sub_84853E +0x8485b3 nullsub_63 +0x8485b4 PlmHandler +0x8485da ProcessPlm +0x84861e ProcessPlmDrawInstruction +0x8486b4 PlmInstr_Sleep +0x8486bc PlmInstr_Delete +0x8486c1 PlmInstr_PreInstr +0x8486ca PlmInstr_ClearPreInstr +0x8486d0 PlmPreInstr_Empty +0x8486d1 UNUSED_PlmInstr_CallFunction +0x8486e8 Trampoline_sub_8486E8 +0x8486eb PlmInstr_CallFunctionWithArg +0x848708 Trampoline_sub_848708 +0x84870b PlmInstr_CallFunction +0x848721 Trampoline_sub_848721 +0x848724 PlmInstr_Goto +0x848729 UNUSED_sub_848729 +0x84873f PlmInstr_DecrementAndBranchNonzero +0x848747 Unused_sub_848747 +0x84874e PlmInstr_SetTimer +0x84875a UNUSED_sub_84875A +0x848763 nullsub_64 +0x848764 PlmInstr_LoadItemPlmGfx +0x8487cd kPlmVramAddresses +0x8487d5 kPlmTileDataOffs +0x8487dd kPlmStartingTileNumber +0x8487e5 PlmInstr_CopyFromRamToVram +0x84880e PlmInstr_GotoIfBossBitSet +0x848821 UNUSED_sub_848821 +0x84882d PlmInstr_GotoIfEventSet +0x84883e PlmInstr_SetEvent +0x848848 PlmInstr_GotoIfChozoSet +0x848865 PlmInstr_SetRoomChozoBit +0x84887c PlmInstr_GotoIfItemBitSet +0x848899 PlmInstr_SetItemBit +0x8488b0 PlmInstr_PickupBeamAndShowMessage +0x8488f3 PlmInstr_PickupEquipmentAndShowMessage +0x84891a PlmInstr_PickupEquipmentAddGrappleShowMessage +0x848941 PlmInstr_PickupEquipmentAddXrayShowMessage +0x848968 PlmInstr_CollectHealthEnergyTank +0x848986 PlmInstr_CollectHealthReserveTank +0x8489a9 PlmInstr_CollectAmmoMissileTank +0x8489d2 PlmInstr_CollectAmmoSuperMissileTank +0x8489fb PlmInstr_CollectAmmoPowerBombTank +0x848a24 PlmInstr_SetLinkReg +0x848a2e PlmInstr_Call +0x848a3a PlmInstr_Return +0x848a40 UNUSED_sub_848A40 +0x848a59 UNUSED_sub_848A59 +0x848a72 PlmInstr_GotoIfDoorBitSet +0x848a91 PlmInstr_IncrementDoorHitCounterAndJGE +0x848aa6 PlmPreInstr_Empty4 +0x848acd PlmInstr_IncrementArgumentAndJGE +0x848af1 PlmInstr_SetBTS +0x848b05 PlmInstr_DrawPlmBlock +0x848b17 PlmInstr_DrawPlmBlock_ +0x848b55 PlmInstr_ProcessAirScrollUpdate +0x848b93 PlmInstr_ProcessSolidScrollUpdate +0x848bd1 PlmInstr_QueueMusic +0x848bdd PlmInstr_ClearMusicQueueAndQueueTrack +0x848c07 PlmInstr_QueueSfx1_Max6 +0x848c10 PlmInstr_QueueSfx2_Max6 +0x848c19 PlmInstr_QueueSfx3_Max6 +0x848c22 PlmInstr_QueueSfx1_Max15 +0x848c2b PlmInstr_QueueSfx2_Max15 +0x848c34 PlmInstr_QueueSfx3_Max15 +0x848c3d PlmInstr_QueueSfx1_Max3 +0x848c46 PlmInstr_QueueSfx2_Max3 +0x848c4f PlmInstr_QueueSfx_Max3 +0x848c58 PlmInstr_QueueSfx1_Max9 +0x848c61 PlmInstr_QueueSfx2_Max9 +0x848c6a PlmInstr_QueueSfx3_Max9 +0x848c73 PlmInstr_QueueSfx1_Max1 +0x848c7c PlmInstr_QueueSfx2_Max1 +0x848c85 PlmInstr_QueueSfx3_Max1 +0x848c8e nullsub_65 +0x848c8f PlmInstr_ActivateMapStation +0x848caf PlmInstr_ActivateEnergyStation +0x848cd0 PlmInstr_ActivateMissileStation +0x848cf1 PlmInstr_ActivateSaveStationAndGotoIfNo +0x848d39 UNUSED_sub_848D39 +0x848d41 PlmInstr_GotoIfSamusNear +0x848d89 UNUSED_sub_848D89 +0x848d97 nullsub_66 +0x848da0 kDefaultPlmDrawInstruction +0x848da6 UNUSED_8DA6 +0x848daa DrawPlm +0x8491dc CalculatePlmDrawTilemapVramDst +0x849220 PartiallyQueueVramForSingleScreenPlm +0x84924d kPlmDrawCmds_924D +0x849253 kPlmDrawCmds_9253 +0x84925b kPlmDrawCmds_925B +0x849265 kPlmDrawCmds_9265 +0x84926f kPlmDrawCmds_926F +0x849279 kPlmDrawCmds_9279 +0x849283 kPlmDrawCmds_9283 +0x849297 kPlmDrawCmds_9297 +0x8492a3 kPlmDrawCmds_92A3 +0x8492af kPlmDrawCmds_92AF +0x8492bb kPlmDrawCmds_92BB +0x8492c7 kPlmDrawCmds_92C7 +0x84930f kPlmDrawCmds_930F +0x849367 kPlmDrawCmds_9367 +0x84936d kPlmDrawCmds_936D +0x849373 kPlmDrawCmds_9373 +0x849379 kPlmDrawCmds_9379 +0x84937f kPlmDrawCmds_937F +0x849385 kPlmDrawCmds_9385 +0x849391 kPlmDrawCmds_9391 +0x849397 kPlmDrawCmds_9397 +0x84939d kPlmDrawCmds_939D +0x8493bf kPlmDrawCmds_93BF +0x8493ef kPlmDrawCmds_93EF +0x849407 kPlmDrawCmds_9407 +0x849413 kPlmDrawCmds_9413 +0x849423 kPlmDrawCmds_9423 +0x849433 kPlmDrawCmds_9433 +0x849443 kPlmDrawCmds_9443 +0x849453 kPlmDrawCmds_9453 +0x849463 kPlmDrawCmds_9463 +0x849473 kPlmDrawCmds_9473 +0x84947f kPlmDrawCmds_947F +0x84948b kPlmDrawCmds_948B +0x849497 kPlmDrawCmds_9497 +0x84949d kPlmDrawCmds_949D +0x8494a3 kPlmDrawCmds_94A3 +0x8494b1 kPlmDrawCmds_94B1 +0x849505 kPlmDrawCmds_9505 +0x849523 kPlmDrawCmds_9523 +0x849541 kPlmDrawCmds_9541 +0x84955f kPlmDrawCmds_955F +0x84957d kPlmDrawCmds_957D +0x84959b kPlmDrawCmds_959B +0x8495b9 kPlmDrawCmds_95B9 +0x8495d7 kPlmDrawCmds_95D7 +0x8495f5 kPlmDrawCmds_95F5 +0x849613 kPlmDrawCmds_9613 +0x849631 kPlmDrawCmds_9631 +0x84964f kPlmDrawCmds_964F +0x84966d kPlmDrawCmds_966D +0x84968b kPlmDrawCmds_968B +0x8496a9 kPlmDrawCmds_96A9 +0x8496b1 kPlmDrawCmds_96B1 +0x8496bf kPlmDrawCmds_96BF +0x8496cb kPlmDrawCmds_96CB +0x8496ef kPlmDrawCmds_96EF +0x849703 kPlmDrawCmds_9703 +0x849717 kPlmDrawCmds_9717 +0x84971d kPlmDrawCmds_971D +0x849731 kPlmDrawCmds_9731 +0x849745 kPlmDrawCmds_9745 +0x84974f kPlmDrawCmds_974F +0x849769 kPlmDrawCmds_9769 +0x849781 kPlmDrawCmds_9781 +0x84978f kPlmDrawCmds_978F +0x8497b7 kPlmDrawCmds_97B7 +0x8497e7 kPlmDrawCmds_97E7 +0x849817 kPlmDrawCmds_9817 +0x849877 kPlmDrawCmds_9877 +0x84989d kPlmDrawCmds_989D +0x8498d1 kPlmDrawCmds_98D1 +0x8498d7 kPlmDrawCmds_98D7 +0x8498dd kPlmDrawCmds_98DD +0x849991 kPlmDrawCmds_9991 +0x8499e5 kPlmDrawCmds_99E5 +0x849a3f kPlmDrawCmds_9A3F +0x849a6f kPlmDrawCmds_9A6F +0x849a9f kPlmDrawCmds_9A9F +0x849acf kPlmDrawCmds_9ACF +0x849aed kPlmDrawCmds_9AED +0x849b0b kPlmDrawCmds_9B0B +0x849b1b kPlmDrawCmds_9B1B +0x849b2b kPlmDrawCmds_9B2B +0x849b3b kPlmDrawCmds_9B3B +0x849b4b kPlmDrawCmds_9B4B +0x849b5b kPlmDrawCmds_9B5B +0x849b73 kPlmDrawCmds_9B73 +0x849b79 kPlmDrawCmds_9B79 +0x849b7f kPlmDrawCmds_9B7F +0x849bbb kPlmDrawCmds_9BBB +0x849bf7 kPlmDrawCmds_9BF7 +0x849c03 kPlmDrawCmds_9C03 +0x849c0b kPlmDrawCmds_9C0B +0x849c13 kPlmDrawCmds_9C13 +0x849c1b kPlmDrawCmds_9C1B +0x849c23 kPlmDrawCmds_9C23 +0x849c2b kPlmDrawCmds_9C2B +0x849c31 kPlmDrawCmds_9C31 +0x849c37 kPlmDrawCmds_9C37 +0x849c3d kPlmDrawCmds_9C3D +0x849c43 kPlmDrawCmds_9C43 +0x849c49 kPlmDrawCmds_9C49 +0x849c4f kPlmDrawCmds_9C4F +0x849c5b kPlmDrawCmds_9C5B +0x849c63 kPlmDrawCmds_9C63 +0x849c6b kPlmDrawCmds_9C6B +0x849c73 kPlmDrawCmds_9C73 +0x849c7b kPlmDrawCmds_9C7B +0x849c83 kPlmDrawCmds_9C83 +0x849c89 kPlmDrawCmds_9C89 +0x849c8f kPlmDrawCmds_9C8F +0x849c95 kPlmDrawCmds_9C95 +0x849c9b kPlmDrawCmds_9C9B +0x849ca1 kPlmDrawCmds_9CA1 +0x849ca7 kPlmDrawCmds_9CA7 +0x849cbf kPlmDrawCmds_9CBF +0x849cc5 kPlmDrawCmds_9CC5 +0x849d0f kPlmDrawCmds_9D0F +0x849d59 kPlmDrawCmds_9D59 +0x849d7d kPlmDrawCmds_9D7D +0x849da1 kPlmDrawCmds_9DA1 +0x849dc5 kPlmDrawCmds_9DC5 +0x849de9 kPlmDrawCmds_9DE9 +0x849e0d kPlmDrawCmds_9E0D +0x849e45 kPlmDrawCmds_9E45 +0x849e61 kPlmDrawCmds_9E61 +0x849e7d kPlmDrawCmds_9E7D +0x849e99 kPlmDrawCmds_9E99 +0x849ed1 kPlmDrawCmds_9ED1 +0x849eed kPlmDrawCmds_9EED +0x849f09 kPlmDrawCmds_9F09 +0x849f25 kPlmDrawCmds_9F25 +0x849f31 kPlmDrawCmds_9F31 +0x849f3d kPlmDrawCmds_9F3D +0x849f49 kPlmDrawCmds_9F49 +0x849f55 kPlmDrawCmds_9F55 +0x849f5b kPlmDrawCmds_9F5B +0x849f67 kPlmDrawCmds_9F67 +0x849f6d kPlmDrawCmds_9F6D +0x849f79 kPlmDrawCmds_9F79 +0x849f85 kPlmDrawCmds_9F85 +0x849f91 kPlmDrawCmds_9F91 +0x849f9d kPlmDrawCmds_9F9D +0x849fa9 kPlmDrawCmds_9FA9 +0x849fb5 kPlmDrawCmds_9FB5 +0x849fbb kPlmDrawCmds_9FBB +0x849fc1 kPlmDrawCmds_9FC1 +0x849fc7 kPlmDrawCmds_9FC7 +0x849fcd kPlmDrawCmds_9FCD +0x849fdd kPlmDrawCmds_9FDD +0x849fed kPlmDrawCmds_9FED +0x849ffd kPlmDrawCmds_9FFD +0x84a00d kPlmDrawCmds_A00D +0x84a01d kPlmDrawCmds_A01D +0x84a02d kPlmDrawCmds_A02D +0x84a03d kPlmDrawCmds_A03D +0x84a04d kPlmDrawCmds_A04D +0x84a05d kPlmDrawCmds_A05D +0x84a06d kPlmDrawCmds_A06D +0x84a07d kPlmDrawCmds_A07D +0x84a08d kPlmDrawCmds_A08D +0x84a09d kPlmDrawCmds_A09D +0x84a0ad kPlmDrawCmds_A0AD +0x84a0bd kPlmDrawCmds_A0BD +0x84a0cd kPlmDrawCmds_A0CD +0x84a0dd kPlmDrawCmds_A0DD +0x84a0ed kPlmDrawCmds_A0ED +0x84a101 kPlmDrawCmds_A101 +0x84a115 kPlmDrawCmds_A115 +0x84a129 kPlmDrawCmds_A129 +0x84a13d kPlmDrawCmds_A13D +0x84a151 kPlmDrawCmds_A151 +0x84a165 kPlmDrawCmds_A165 +0x84a179 kPlmDrawCmds_A179 +0x84a18d kPlmDrawCmds_A18D +0x84a1a1 kPlmDrawCmds_A1A1 +0x84a1b5 kPlmDrawCmds_A1B5 +0x84a1c9 kPlmDrawCmds_A1C9 +0x84a1dd kPlmDrawCmds_A1DD +0x84a1f1 kPlmDrawCmds_A1F1 +0x84a205 kPlmDrawCmds_A205 +0x84a219 kPlmDrawCmds_A219 +0x84a22d kPlmDrawCmds_A22D +0x84a241 kPlmDrawCmds_A241 +0x84a255 kPlmDrawCmds_A255 +0x84a25d kPlmDrawCmds_A25D +0x84a265 kPlmDrawCmds_A265 +0x84a26d kPlmDrawCmds_A26D +0x84a275 kPlmDrawCmds_A275 +0x84a285 kPlmDrawCmds_A285 +0x84a295 kPlmDrawCmds_A295 +0x84a2a5 kPlmDrawCmds_A2A5 +0x84a2b5 kPlmDrawCmds_A2B5 +0x84a2c7 kPlmDrawCmds_A2C7 +0x84a2cd kPlmDrawCmds_A2CD +0x84a2d3 kPlmDrawCmds_A2D3 +0x84a2d9 kPlmDrawCmds_A2D9 +0x84a2df kPlmDrawCmds_A2DF +0x84a2e5 kPlmDrawCmds_A2E5 +0x84a2eb kPlmDrawCmds_A2EB +0x84a2f1 kPlmDrawCmds_A2F1 +0x84a2f7 kPlmDrawCmds_A2F7 +0x84a2fd kPlmDrawCmds_A2FD +0x84a303 kPlmDrawCmds_A303 +0x84a309 kPlmDrawCmds_A309 +0x84a30f kPlmDrawCmds_A30F +0x84a315 kPlmDrawCmds_A315 +0x84a31b kPlmDrawCmds_A31B +0x84a321 kPlmDrawCmds_A321 +0x84a327 kPlmDrawCmds_A327 +0x84a32d kPlmDrawCmds_A32D +0x84a333 kPlmDrawCmds_A333 +0x84a339 kPlmDrawCmds_A339 +0x84a33f kPlmDrawCmds_A33F +0x84a345 kPlmDrawCmds_A345 +0x84a34b kPlmDrawCmds_A34B +0x84a351 kPlmDrawCmds_A351 +0x84a357 kPlmDrawCmds_A357 +0x84a35d kPlmDrawCmds_A35D +0x84a365 kPlmDrawCmds_A365 +0x84a36d kPlmDrawCmds_A36D +0x84a375 kPlmDrawCmds_A375 +0x84a37d kPlmDrawCmds_A37D +0x84a385 kPlmDrawCmds_A385 +0x84a38d kPlmDrawCmds_A38D +0x84a395 kPlmDrawCmds_A395 +0x84a39d kPlmDrawCmds_A39D +0x84a3ad kPlmDrawCmds_A3AD +0x84a3bd kPlmDrawCmds_A3BD +0x84a3cd kPlmDrawCmds_A3CD +0x84a3dd kPlmDrawCmds_A3DD +0x84a3e3 kPlmDrawCmds_A3E3 +0x84a3e9 kPlmDrawCmds_A3E9 +0x84a475 kPlmDrawCmds_A475 +0x84a47b kPlmDrawCmds_A47B +0x84a483 kPlmDrawCmds_A483 +0x84a48b kPlmDrawCmds_A48B +0x84a49b kPlmDrawCmds_A49B +0x84a4a1 kPlmDrawCmds_A4A1 +0x84a4a9 kPlmDrawCmds_A4A9 +0x84a4b1 kPlmDrawCmds_A4B1 +0x84a4c1 kPlmDrawCmds_A4C1 +0x84a4c7 kPlmDrawCmds_A4C7 +0x84a4cf kPlmDrawCmds_A4CF +0x84a4d7 kPlmDrawCmds_A4D7 +0x84a4e7 kPlmDrawCmds_A4E7 +0x84a4ed kPlmDrawCmds_A4ED +0x84a4f3 kPlmDrawCmds_A4F3 +0x84a4f9 kPlmDrawCmds_A4F9 +0x84a4ff kPlmDrawCmds_A4FF +0x84a505 kPlmDrawCmds_A505 +0x84a50b kPlmDrawCmds_A50B +0x84a511 kPlmDrawCmds_A511 +0x84a517 kPlmDrawCmds_A517 +0x84a525 kPlmDrawCmds_A525 +0x84a533 kPlmDrawCmds_A533 +0x84a541 kPlmDrawCmds_A541 +0x84a54f kPlmDrawCmds_A54F +0x84a55d kPlmDrawCmds_A55D +0x84a56b kPlmDrawCmds_A56B +0x84a57d kPlmDrawCmds_A57D +0x84a58f kPlmDrawCmds_A58F +0x84a5a1 kPlmDrawCmds_A5A1 +0x84a5b3 kPlmDrawCmds_A5B3 +0x84a5c5 kPlmDrawCmds_A5C5 +0x84a5d7 kPlmDrawCmds_A5D7 +0x84a5e3 kPlmDrawCmds_A5E3 +0x84a5eb kPlmDrawCmds_A5EB +0x84a5f7 kPlmDrawCmds_A5F7 +0x84a5ff kPlmDrawCmds_A5FF +0x84a60b kPlmDrawCmds_A60B +0x84a613 kPlmDrawCmds_A613 +0x84a61f kPlmDrawCmds_A61F +0x84a627 kPlmDrawCmds_A627 +0x84a633 kPlmDrawCmds_A633 +0x84a63b kPlmDrawCmds_A63B +0x84a647 kPlmDrawCmds_A647 +0x84a64f kPlmDrawCmds_A64F +0x84a65b kPlmDrawCmds_A65B +0x84a663 kPlmDrawCmds_A663 +0x84a66f kPlmDrawCmds_A66F +0x84a677 kPlmDrawCmds_A677 +0x84a683 kPlmDrawCmds_A683 +0x84a68f kPlmDrawCmds_A68F +0x84a69b kPlmDrawCmds_A69B +0x84a6a7 kPlmDrawCmds_A6A7 +0x84a6b3 kPlmDrawCmds_A6B3 +0x84a6bf kPlmDrawCmds_A6BF +0x84a6cb kPlmDrawCmds_A6CB +0x84a6d7 kPlmDrawCmds_A6D7 +0x84a6e3 kPlmDrawCmds_A6E3 +0x84a6ef kPlmDrawCmds_A6EF +0x84a6fb kPlmDrawCmds_A6FB +0x84a707 kPlmDrawCmds_A707 +0x84a713 kPlmDrawCmds_A713 +0x84a71f kPlmDrawCmds_A71F +0x84a72b kPlmDrawCmds_A72B +0x84a737 kPlmDrawCmds_A737 +0x84a743 kPlmDrawCmds_A743 +0x84a74f kPlmDrawCmds_A74F +0x84a75b kPlmDrawCmds_A75B +0x84a767 kPlmDrawCmds_A767 +0x84a773 kPlmDrawCmds_A773 +0x84a77f kPlmDrawCmds_A77F +0x84a78b kPlmDrawCmds_A78B +0x84a797 kPlmDrawCmds_A797 +0x84a7a3 kPlmDrawCmds_A7A3 +0x84a7af kPlmDrawCmds_A7AF +0x84a7bb kPlmDrawCmds_A7BB +0x84a7c7 kPlmDrawCmds_A7C7 +0x84a7d3 kPlmDrawCmds_A7D3 +0x84a7df kPlmDrawCmds_A7DF +0x84a7eb kPlmDrawCmds_A7EB +0x84a7f7 kPlmDrawCmds_A7F7 +0x84a803 kPlmDrawCmds_A803 +0x84a80f kPlmDrawCmds_A80F +0x84a81b kPlmDrawCmds_A81B +0x84a827 kPlmDrawCmds_A827 +0x84a833 kPlmDrawCmds_A833 +0x84a83f kPlmDrawCmds_A83F +0x84a84b kPlmDrawCmds_A84B +0x84a857 kPlmDrawCmds_A857 +0x84a863 kPlmDrawCmds_A863 +0x84a86f kPlmDrawCmds_A86F +0x84a87b kPlmDrawCmds_A87B +0x84a887 kPlmDrawCmds_A887 +0x84a893 kPlmDrawCmds_A893 +0x84a89f kPlmDrawCmds_A89F +0x84a8ab kPlmDrawCmds_A8AB +0x84a8b7 kPlmDrawCmds_A8B7 +0x84a8c3 kPlmDrawCmds_A8C3 +0x84a8cf kPlmDrawCmds_A8CF +0x84a8db kPlmDrawCmds_A8DB +0x84a8e7 kPlmDrawCmds_A8E7 +0x84a8f3 kPlmDrawCmds_A8F3 +0x84a8ff kPlmDrawCmds_A8FF +0x84a90b kPlmDrawCmds_A90B +0x84a917 kPlmDrawCmds_A917 +0x84a923 kPlmDrawCmds_A923 +0x84a92f kPlmDrawCmds_A92F +0x84a93b kPlmDrawCmds_A93B +0x84a947 kPlmDrawCmds_A947 +0x84a953 kPlmDrawCmds_A953 +0x84a95f kPlmDrawCmds_A95F +0x84a96b kPlmDrawCmds_A96B +0x84a977 kPlmDrawCmds_A977 +0x84a983 kPlmDrawCmds_A983 +0x84a98f kPlmDrawCmds_A98F +0x84a99b kPlmDrawCmds_A99B +0x84a9a7 kPlmDrawCmds_A9A7 +0x84a9b3 kPlmDrawCmds_A9B3 +0x84a9bf kPlmDrawCmds_A9BF +0x84a9cb kPlmDrawCmds_A9CB +0x84a9d7 kPlmDrawCmds_A9D7 +0x84a9e3 kPlmDrawCmds_A9E3 +0x84a9ef kPlmDrawCmds_A9EF +0x84a9fb kPlmDrawCmds_A9FB +0x84aa07 kPlmDrawCmds_AA07 +0x84aa13 kPlmDrawCmds_AA13 +0x84aa2b kPlmDrawCmds_AA2B +0x84aa37 kPlmDrawCmds_AA37 +0x84aa43 kPlmDrawCmds_AA43 +0x84aa4f kPlmDrawCmds_AA4F +0x84aa67 kPlmDrawCmds_AA67 +0x84aa73 kPlmDrawCmds_AA73 +0x84aa7f kPlmDrawCmds_AA7F +0x84aa8b kPlmDrawCmds_AA8B +0x84aa97 kPlmDrawCmds_AA97 +0x84aaaf kPlmDrawCmds_AAAF +0x84aac7 kPlmDrawCmds_AAC7 +0x84aae3 kPlmInstrList_AAE3 +0x84aae5 kPlmInstrList_AAE5 +0x84ab00 PlmInstr_MovePlmDownOneBlock +0x84ab0c kPlmInstrList_AB0C +0x84ab12 kPlmInstrList_AB12 +0x84ab21 kPlmInstrList_AB21 +0x84ab27 nullsub_67 +0x84ab28 PlmSetup_CrumbleBotwoonWall +0x84ab31 kPlmInstrList_AB31 +0x84ab51 PlmInstr_Scroll_0_1_Blue +0x84ab59 PlmInstr_MovePlmDownOneBlock_0 +0x84ab67 kPlmInstrList_AB67 +0x84ab6d kPlmInstrList_AB6D +0x84ab7f kPlmInstrList_AB7F +0x84ab8b kPlmInstrList_AB8B +0x84ab91 kPlmInstrList_AB91 +0x84ab9d kPlmInstrList_AB9D +0x84aba3 kPlmInstrList_ABA3 +0x84aba9 kPlmInstrList_ABA9 +0x84abd6 PlmInstr_ABD6 +0x84abdd kPlmInstrList_ABDD +0x84abe3 kPlmInstrList_ABE3 +0x84abe9 kPlmInstrList_ABE9 +0x84abef kPlmInstrList_ABEF +0x84abf9 kPlmInstrList_ABF9 +0x84abff kPlmInstrList_ABFF +0x84ac05 kPlmInstrList_AC05 +0x84ac0b kPlmInstrList_AC0B +0x84ac11 kPlmInstrList_AC11 +0x84ac17 kPlmInstrList_AC17 +0x84ac1d kPlmInstrList_AC1D +0x84ac23 kPlmInstrList_AC23 +0x84ac29 kPlmInstrList_AC29 +0x84ac2f kPlmInstrList_AC2F +0x84ac35 kPlmInstrList_AC35 +0x84ac3b kPlmInstrList_AC3B +0x84ac41 kPlmInstrList_AC41 +0x84ac47 kPlmInstrList_AC47 +0x84ac4d kPlmInstrList_AC4D +0x84ac53 kPlmInstrList_AC53 +0x84ac59 kPlmInstrList_AC59 +0x84ac5f kPlmInstrList_AC5F +0x84ac65 kPlmInstrList_AC65 +0x84ac6b kPlmInstrList_AC6B +0x84ac71 kPlmInstrList_AC71 +0x84ac77 kPlmInstrList_AC77 +0x84ac7d kPlmInstrList_AC7D +0x84ac83 kPlmInstrList_AC83 +0x84ac89 PlmPreInstr_PositionSamusAndInvincible +0x84ac9d PlmInstr_DealDamage_2 +0x84acb1 PlmInstr_GiveInvincibility +0x84acb8 kPlmInstrList_ACB8 +0x84acf8 kPlmInstrList_ACF8 +0x84ad38 kPlmInstrList_AD38 +0x84ad43 PlmInstr_Draw0x38FramesOfRightTreadmill +0x84ad4d kPlmInstrList_AD4D +0x84ad58 PlmInstr_Draw0x38FramesOfLeftTreadmill +0x84ad62 kPlmInstrList_AD62 +0x84ad86 kPlmInstrList_AD86 +0x84ada4 kPlmInstrList_ADA4 +0x84adc2 kPlmInstrList_ADC2 +0x84adf1 kPlmInstrList_ADF1 +0x84ae13 kPlmInstrList_AE13 +0x84ae35 PlmInstr_GotoIfSamusHealthFull +0x84ae4c kPlmInstrList_AE4C +0x84ae7b kPlmInstrList_AE7B +0x84ae9d kPlmInstrList_AE9D +0x84aebf PlmInstr_GotoIfMissilesFull +0x84aed6 kPlmInstrList_AED6 +0x84af1c kPlmInstrList_AF1C +0x84af62 kPlmDrawCmds_AF62 +0x84af68 kPlmDrawCmds_AF68 +0x84af6e kPlmDrawCmds_AF6E +0x84af74 kPlmDrawCmds_AF74 +0x84af7a kPlmDrawCmds_AF7A +0x84af80 kPlmDrawCmds_AF80 +0x84af86 kPlmInstrList_AF86 +0x84af92 kPlmInstrList_AF92 +0x84af9e kPlmInstrList_AF9E +0x84afa4 kPlmInstrList_AFA4 +0x84afaa kPlmInstrList_AFAA +0x84afb0 kPlmInstrList_AFB0 +0x84afb6 kPlmInstrList_AFB6 +0x84afca kPlmInstrList_AFCA +0x84afd0 kPlmInstrList_AFD0 +0x84afd6 kPlmInstrList_AFD6 +0x84afdc kPlmInstrList_AFDC +0x84afe2 kPlmInstrList_AFE2 +0x84afe8 kPlmInstrList_AFE8 +0x84b00e PlmInstr_PlaceSamusOnSaveStation +0x84b024 PlmInstr_DisplayGameSavedMessageBox +0x84b030 PlmInstr_EnableMovementAndSetSaveStationUsed +0x84b03e kPlmInstrList_B03E +0x84b044 kPlmInstrList_B044 +0x84b04a PlmSetup_SetrupWreckedShipEntrance +0x84b05d UNUSED_sub_84B05D +0x84b08b UNUSED_sub_84B08B +0x84b0a6 UNUSED_sub_84B0A6 +0x84b0c1 UNUSED_sub_84B0C1 +0x84b0dc PlmSetup_BTS_Brinstar_0x80_Floorplant +0x84b113 PlmSetup_BTS_Brinstar_0x81_Ceilingplant +0x84b146 ActivateStationIfSamusCannonLinedUp +0x84b18b PlmSetup_B6D3_MapStation +0x84b1c8 PlmSetup_Bts47_MapStationRightAccess +0x84b1f0 PlmSetup_Bts4_MapStationLeftAccess +0x84b21d PlmSetup_PlmB6DF_EnergyStation +0x84b245 PlmSetup_PlmB6EB_EnergyStation +0x84b26d PlmSetup_B6E3_EnergyStationRightAccess +0x84b29d PlmSetup_B6E7_EnergyStationLeftAccess +0x84b2d0 PlmSetup_B6EF_MissileStationRightAccess +0x84b300 PlmSetup_B6F3_MissileStationLeftAccess +0x84b333 DeletePlm +0x84b33a PlmSetup_B638_Rightwards_Extension +0x84b345 PlmSetup_B63F_Leftwards_Extension +0x84b350 PlmSetup_B643_Downwards_Extension +0x84b35b PlmSetup_B647_Upwards_Extension +0x84b366 SkipDebugDrawInstructionsForScrollPlms +0x84b371 PlmSetup_B703_ScrollPLM +0x84b382 PlmSetup_B707_SolidScrollPLM +0x84b393 PlmSetup_B6FF_ScrollBlockTouch +0x84b3c1 PlmSetup_DeactivatePlm +0x84b3cf nullsub_290 +0x84b3d0 PlmSetup_ReturnCarryClear +0x84b3d2 PlmSetup_ReturnCarrySet +0x84b3d4 PlmSetup_D094_EnemyBreakableBlock +0x84b3e3 UNUSED_sub_84B3E3 +0x84b3eb PlmSetup_B70F_IcePhysics +0x84b408 PlmSetup_QuicksandSurface +0x84b43f kPlmSetup_QuicksandSurface +0x84b447 PlmSetup_QuicksandSurface_0 +0x84b459 nullsub_299 +0x84b45a PlmSetup_QuicksandSurface_1 +0x84b47b PlmSetup_QuicksandSurface_2 +0x84b497 PlmSetup_B71F_SubmergingQuicksand +0x84b4a8 PlmSetup_B723_SandfallsSlow +0x84b4b6 PlmSetup_B727_SandFallsFast +0x84b4c4 PlmSetup_QuicksandSurfaceB +0x84b4f8 kPlmSetup_QuicksandSurfaceB +0x84b500 PlmSetup_QuicksandSurfaceB_0 +0x84b528 PlmSetup_QuicksandSurfaceB_1 +0x84b52a PlmSetup_QuicksandSurfaceB_2 +0x84b541 PlmSetup_B737_SubmergingQuicksand +0x84b54f PlmSetup_B73B_B73F_SandFalls +0x84b551 PlmSetup_ClearShitroidInvisibleWall +0x84b56f PlmSetup_B767_ClearShitroidInvisibleWall +0x84b590 PlmSetup_B76B_SaveStationTrigger +0x84b5ee PlmSetup_B76F_SaveStation +0x84b5f8 PlmSetup_MotherBrainRoomEscapeDoor +0x84b62f kPlmHeader_B62F +0x84b633 kPlmHeader_B633 +0x84b637 kPlmHeader_B637 +0x84b63b kPlmHeader_B63B +0x84b63f kPlmHeader_B63F +0x84b643 kPlmHeader_B643 +0x84b647 kPlmHeader_B647 +0x84b64b kPlmHeader_B64B +0x84b64f kPlmHeader_B64F +0x84b653 kPlmHeader_B653 +0x84b657 kPlmHeader_B657 +0x84b65b kPlmHeader_B65B +0x84b65f kPlmHeader_B65F +0x84b663 kPlmHeader_B663 +0x84b667 kPlmHeader_B667 +0x84b66b kPlmHeader_B66B +0x84b66f kPlmHeader_B66F +0x84b673 kPlmHeader_B673 +0x84b677 kPlmHeader_B677 +0x84b67b kPlmHeader_B67B +0x84b67f kPlmHeader_B67F +0x84b683 kPlmHeader_B683 +0x84b687 kPlmHeader_B687 +0x84b68b kPlmHeader_B68B +0x84b68f kPlmHeader_B68F +0x84b693 kPlmHeader_B693 +0x84b697 kPlmHeader_B697 +0x84b69b kPlmHeader_B69B +0x84b69f kPlmHeader_B69F +0x84b6a3 kPlmHeader_B6A3 +0x84b6a7 kPlmHeader_B6A7 +0x84b6ab kPlmHeader_B6AB +0x84b6af kPlmHeader_B6AF +0x84b6b3 kPlmHeader_B6B3 +0x84b6b7 kPlmHeader_B6B7 +0x84b6bb kPlmHeader_B6BB +0x84b6bf kPlmHeader_B6BF +0x84b6c3 kPlmHeader_B6C3 +0x84b6c7 kPlmHeader_B6C7 +0x84b6cb kPlmHeader_B6CB +0x84b6cf kPlmHeader_B6CF +0x84b6d3 kPlmHeader_B6D3 +0x84b6d7 kPlmHeader_B6D7 +0x84b6db kPlmHeader_B6DB +0x84b6df kPlmHeader_B6DF +0x84b6e3 kPlmHeader_B6E3 +0x84b6e7 kPlmHeader_B6E7 +0x84b6eb kPlmHeader_B6EB +0x84b6ef kPlmHeader_B6EF +0x84b6f3 kPlmHeader_B6F3 +0x84b6f7 kPlmHeader_B6F7 +0x84b6fb kPlmHeader_B6FB +0x84b6ff kPlmHeader_B6FF +0x84b703 kPlmHeader_B703 +0x84b707 kPlmHeader_B707 +0x84b70b kPlmHeader_B70B +0x84b70f kPlmHeader_B70F +0x84b713 kPlmHeader_B713 +0x84b717 kPlmHeader_B717 +0x84b71b kPlmHeader_B71B +0x84b71f kPlmHeader_B71F +0x84b723 kPlmHeader_B723 +0x84b727 kPlmHeader_B727 +0x84b72b kPlmHeader_B72B +0x84b72f kPlmHeader_B72F +0x84b733 kPlmHeader_B733 +0x84b737 kPlmHeader_B737 +0x84b73b kPlmHeader_B73B +0x84b73f kPlmHeader_B73F +0x84b743 kPlmHeader_B743 +0x84b747 kPlmHeader_B747 +0x84b74b kPlmHeader_B74B +0x84b74f kPlmHeader_B74F +0x84b753 kPlmHeader_B753 +0x84b757 kPlmHeader_B757 +0x84b75b kPlmHeader_B75B +0x84b75f kPlmHeader_B75F +0x84b763 kPlmHeader_B763 +0x84b767 kPlmHeader_B767 +0x84b76b kPlmHeader_B76B +0x84b76f kPlmHeader_B76F +0x84b773 kPlmHeader_B773 +0x84b777 kPlmHeader_B777 +0x84b77b kPlmInstrList_B77B +0x84b781 kPlmHeader_B781 +0x84b785 kPlmInstrList_B785 +0x84b78b kPlmHeader_B78B +0x84b78f kPlmHeader_B78F +0x84b793 kPlmHeader_B793 +0x84b797 kPlmHeader_B797 +0x84b79b kPlmHeader_B79B +0x84b7a3 kPlmHeader_B7A3 +0x84b7a7 kPlmHeader_B7A7 +0x84b7ab kPlmHeader_B7AB +0x84b7af kPlmHeader_B7AF +0x84b7b3 kPlmHeader_B7B3 +0x84b7b7 kPlmHeader_B7B7 +0x84b7bb kPlmHeader_B7BB +0x84b7bf kPlmHeader_B7BF +0x84b7c3 PlmSetup_B7EB_EnableSoundsIn32Frames +0x84b7dd PlmPreInstr_B7EB_DecTimerEnableSoundsDeletePlm +0x84b7e9 kPlmInstrList_B7E9 +0x84b7eb kPlmHeader_B7EB +0x84b7ef PlmPreInstr_WakeAndLavaIfBoosterCollected +0x84b82a PlmPreInstr_WakePLMAndStartFxMotionSamusFarLeft +0x84b846 PlmPreInstr_AdvanceLavaSamusMovesLeft +0x84b88a kPlmInstrList_B88A +0x84b89c PlmSetup_SpeedBoosterEscape +0x84b8ac kPlmHeader_B8AC +0x84b8b0 PlmPreInstr_ShaktoolsRoom +0x84b8d6 kPlmInstrList_B8D6 +0x84b8dc PlmSetup_ShaktoolsRoom +0x84b8eb kPlmHeader_B8EB +0x84b8ef nullsub_68 +0x84b8f0 kPlmInstrList_B8F0 +0x84b8f9 kPlmHeader_B8F9 +0x84b8fd WakePlmIfSamusIsBelowAndRightOfTarget +0x84b919 kPlmInstrList_B919 +0x84b927 PlmPreInstr_OldTourianEscapeShaftEscape +0x84b940 kPlmInstrList_B940 +0x84b948 PlmPreInstr_EscapeRoomBeforeOldTourianEscapeShaft +0x84b964 kPlmHeader_B964 +0x84b968 kPlmHeader_B968 +0x84b96c PlmSetup_B974 +0x84b974 kPlmHeader_B974 +0x84b978 PlmSetup_B9C1_CrittersEscapeBlock +0x84b9a2 kPlmInstrList_B9A2 +0x84b9b9 PlmInstr_SetCrittersEscapedEvent +0x84b9c1 kPlmHeader_B9C1 +0x84b9c5 PlmSetup_B9ED_CrittersEscapeBlock +0x84b9ed kPlmHeader_B9ED +0x84ba48 kPlmHeader_BA48 +0x84ba4c kPlmInstrList_BA4C +0x84ba6f PlmInstr_JumpIfSamusHasNoBombs +0x84ba7f kPlmInstrList_BA7F +0x84bad1 UNUSED_sub_84BAD1 +0x84baf4 kPlmHeader_BAF4 +0x84bafa nullsub_84BAFA +0x84baff kPlmInstrList_BAFF +0x84bb05 kPlmHeader_BB05 +0x84bb09 PlmSetup_BB30_CrateriaMainstreetEscape +0x84bb19 kPlmInstrList_BB19 +0x84bb25 PlmInstr_MovePlmRight4Blocks +0x84bb30 kPlmHeader_BB30 +0x84bb34 kPlmInstrList_BB34 +0x84bb44 kPlmInstrList_BB44 +0x84bb52 PlmPreInstr_WakePlmIfTriggered +0x84bb6a nullsub_359 +0x84bb6b PlmPreInstr_WakePlmIfTriggeredOrSamusBelowPlm +0x84bba3 PlmPreInstr_Empty5 +0x84bba4 PlmPreInstr_WakePlmIfTriggeredOrSamusAbovePlm +0x84bbdd PlmInstr_ClearTrigger +0x84bbe1 PlmInstr_SpawnEproj +0x84bbf0 PlmInstr_WakeEprojAtPlmPos +0x84bc13 kPlmInstrList_BC13 +0x84bc3a kPlmInstrList_BC3A +0x84bc61 kPlmInstrList_BC61 +0x84bc88 kPlmInstrList_BC88 +0x84bcaf kPlmInstrList_BCAF +0x84bcdf kPlmInstrList_BCDF +0x84bd0f PlmPreInstr_GoToLinkInstrIfShot +0x84bd26 PlmPreInstr_GoToLinkInstrIfShotWithPowerBomb +0x84bd50 PlmPreInstr_GoToLinkInstrIfShotWithAnyMissile +0x84bd88 PlmPreInstr_GoToLinkInstrIfShotWithSuperMissile +0x84bdb2 PlmPreInstr_GoToLinkInstruction +0x84bdc4 PlmPreInstr_PlayDudSound_ +0x84bdd4 PlmPreInstr_GotoLinkIfBoss1Dead +0x84bde3 PlmPreInstr_GotoLinkIfMiniBossDead +0x84bdf2 PlmPreInstr_GotoLinkIfTorizoDead +0x84be01 PlmPreInstr_GotoLinkIfEnemyDeathQuotaOk +0x84be1c PlmPreInstr_PlayDudSound +0x84be1f PlmPreInstr_GotoLinkIfTourianStatueFinishedProcessing +0x84be30 PlmPreInstr_GotoLinkIfCrittersEscaped +0x84be3f PlmInstr_SetGreyDoorPreInstr +0x84be4b kGrayDoorPreInstrs +0x84be59 kPlmInstrList_BE59_DoorClosing? +0x84be70 kPlmInstrList_BE70 +0x84bec2 kPlmInstrList_BEC2 +0x84bed9 kPlmInstrList_BED9 +0x84bf2b kPlmInstrList_BF2B +0x84bf42 kPlmInstrList_BF42 +0x84bf94 kPlmInstrList_BF94 +0x84bfab kPlmInstrList_BFAB +0x84bffd kPlmInstrList_BFFD +0x84c014 kPlmInstrList_C014 +0x84c060 kPlmInstrList_C060 +0x84c077 kPlmInstrList_C077 +0x84c0c3 kPlmInstrList_C0C3 +0x84c0da kPlmInstrList_C0DA +0x84c122 kPlmInstrList_C122 +0x84c139 kPlmInstrList_C139 +0x84c185 kPlmInstrList_C185 +0x84c19c kPlmInstrList_C19C +0x84c1e4 kPlmInstrList_C1E4 +0x84c1fb kPlmInstrList_C1FB +0x84c243 kPlmInstrList_C243 +0x84c25a kPlmInstrList_C25A +0x84c2a2 kPlmInstrList_C2A2 +0x84c2b9 kPlmInstrList_C2B9 +0x84c301 kPlmInstrList_C301 +0x84c318 kPlmInstrList_C318 +0x84c363 kPlmInstrList_C363 +0x84c37a kPlmInstrList_C37A +0x84c3c5 kPlmInstrList_C3C5 +0x84c3dc kPlmInstrList_C3DC +0x84c427 kPlmInstrList_C427 +0x84c43e kPlmInstrList_C43E +0x84c489 kPlmInstrList_C489 +0x84c49e kPlmInstrList_C49E_DoorClosing +0x84c4ba kPlmInstrList_C4BA_DoorOpening +0x84c4cf kPlmInstrList_C4CF_DoorClosing +0x84c4eb kPlmInstrList_C4EB +0x84c500 kPlmInstrList_C500 +0x84c51c kPlmInstrList_C51C +0x84c531 kPlmInstrList_C531 +0x84c54d PlmSetup_C806_LeftGreenGateTrigger +0x84c56c PlmSetup_C80A_RightGreenGateTrigger +0x84c58b PlmSetup_C80E_LeftRedGateTrigger +0x84c5af PlmSetup_C812_RightRedGateTrigger +0x84c5d3 PlmSetup_C81E_LeftYellowGateTrigger +0x84c5f1 PlmSetup_C822_RightYellowGateTrigger +0x84c610 PlmSetup_C816_LeftBlueGateTrigger +0x84c627 PlmSetup_C81A_RightBlueGateTrigger +0x84c66a SetBts0x10FiveStepsDown +0x84c67f SetBtsTo0x10AdvanceRow +0x84c694 SetBts0x10FiveStepsUp +0x84c6a9 SetBtsTo0x10AdvanceRowUp +0x84c6be PlmSetup_C82A_DownwardsClosedGate +0x84c6cb PlmSetup_C832_UpwardsClosedGate +0x84c6d8 PlmSetup_C826_DownwardsOpenGate +0x84c6dc PlmSetup_C82E_UpwardsOpenGate +0x84c6e0 PlmSetup_C836_DownwardsGateShootblock +0x84c70a kDowardGatePlmListPtrs +0x84c71a kDowardGateLeftBlockBts +0x84c72a kDowardGateRightBlockBts +0x84c73a PlmSetup_C73A_UpwardsGateShootblock +0x84c764 kUpwardGatePlmListPtrs +0x84c774 kUpwardGateLeftBlockBts +0x84c784 kUpwardGateRightBlockBts +0x84c794 PlmSetup_C794_GreyDoor +0x84c7b1 PlmSetup_Door_Colored +0x84c7bb PlmSetup_Door_Blue +0x84c7e2 PlmSetup_Door_Strange +0x84c806 kPlmHeader_C806 +0x84c80a kPlmHeader_C80A +0x84c80e kPlmHeader_C80E +0x84c812 kPlmHeader_C812 +0x84c816 kPlmHeader_C816 +0x84c81a kPlmHeader_C81A +0x84c81e kPlmHeader_C81E +0x84c822 kPlmHeader_C822 +0x84c826 kPlmHeader_C826 +0x84c82a kPlmHeader_C82A +0x84c82e kPlmHeader_C82E +0x84c832 kPlmHeader_C832 +0x84c836 kPlmHeader_C836 +0x84c83a kPlmHeader_C83A +0x84c83e kPlmHeader_C83E +0x84c842 kPlmHeader_C842 +0x84c848 kPlmHeader_C848 +0x84c84e kPlmHeader_C84E +0x84c854 kPlmHeader_C854 +0x84c85a kPlmHeader_C85A +0x84c860 kPlmHeader_C860 +0x84c866 kPlmHeader_C866 +0x84c86c kPlmHeader_C86C +0x84c872 kPlmHeader_C872 +0x84c878 kPlmHeader_C878 +0x84c87e kPlmHeader_C87E +0x84c884 kPlmHeader_C884 +0x84c88a kPlmHeader_C88A +0x84c890 kPlmHeader_C890 +0x84c896 kPlmHeader_C896 +0x84c89c kPlmHeader_C89C +0x84c8a2 kPlmHeader_C8A2_DoorBlue +0x84c8a8 kPlmHeader_C8A8_DoorBlue +0x84c8ae kPlmHeader_C8AE_DoorBlue +0x84c8b4 kPlmHeader_C8B4_DoorBlue +0x84c8ba kPlmHeader_C8BA +0x84c8be kPlmHeader_C8BE +0x84c8c2 kPlmHeader_C8C2 +0x84c8c6 kPlmHeader_C8C6 +0x84c8ca kPlmHeader_C8CA +0x84c8d0 kPlmHeader_C8D0 +0x84c8d4 kPlmInstrList_C8D4 +0x84c8da kPlmInstrList_C8DA +0x84c8e0 kPlmInstrList_C8E0 +0x84c8e6 kPlmInstrList_C8E6 +0x84c8ec kPlmInstrList_C8EC +0x84c8f2 kPlmInstrList_C8F2 +0x84c8f8 kPlmInstrList_C8F8 +0x84c8fe kPlmInstrList_C8FE +0x84c904 kPlmInstrList_C904 +0x84c90a kPlmInstrList_C90A +0x84c910 kPlmInstrList_C910 +0x84c916 kPlmInstrList_C916 +0x84c91c kPlmInstrList_C91C +0x84c922 kPlmInstrList_C922 +0x84c928 kPlmInstrList_C928 +0x84c92e kPlmInstrList_C92E +0x84c951 kPlmInstrList_C951 +0x84c974 kPlmInstrList_C974 +0x84c997 kPlmInstrList_C997 +0x84c9ba kPlmInstrList_C9BA +0x84c9cf kPlmInstrList_C9CF +0x84c9e4 kPlmInstrList_C9E4 +0x84c9f9 kPlmInstrList_C9F9 +0x84ca1c kPlmInstrList_CA1C +0x84ca41 kPlmInstrList_CA41 +0x84ca66 kPlmInstrList_CA66 +0x84ca8b kPlmInstrList_CA8B +0x84caa0 kPlmInstrList_CAA0 +0x84cab5 kPlmInstrList_CAB5 +0x84caca kPlmInstrList_CACA +0x84cadf kPlmInstrList_CADF +0x84cb02 kPlmInstrList_CB02 +0x84cb27 kPlmInstrList_CB27 +0x84cb4c kPlmInstrList_CB4C +0x84cb71 kPlmInstrList_CB71 +0x84cb94 kPlmInstrList_CB94 +0x84cbb7 kPlmInstrList_CBB7 +0x84cbcc kPlmInstrList_CBCC +0x84cbe1 kPlmInstrList_CBE1 +0x84cbf6 kPlmInstrList_CBF6 +0x84cc0b kPlmInstrList_CC0B +0x84cc20 kPlmInstrList_CC20 +0x84cc35 kPlmInstrList_CC35 +0x84cc3c kPlmInstrList_CC3C +0x84cc5f kPlmInstrList_CC5F +0x84cc66 kPlmInstrList_CC66 +0x84cc8b kPlmInstrList_CC8B +0x84cc92 kPlmInstrList_CC92 +0x84ccb7 kPlmInstrList_CCB7 +0x84ccbe kPlmInstrList_CCBE +0x84cce3 kPlmInstrList_CCE3 +0x84ccea kPlmInstrList_CCEA +0x84ccff kPlmInstrList_CCFF +0x84cd06 kPlmInstrList_CD06 +0x84cd1b kPlmInstrList_CD1B +0x84cd22 kPlmInstrList_CD22 +0x84cd37 kPlmInstrList_CD37 +0x84cd3e kPlmInstrList_CD3E +0x84cd53 kPlmInstrList_CD53 +0x84cd68 kPlmInstrList_CD68 +0x84cd6a kPlmInstrList_CD6A +0x84cd93 PlmInstr_SetBtsTo1 +0x84cda9 kPlmInstrList_CDA9 +0x84cdc2 PlmSetup_D028_D02C_Unused +0x84cdea PlmSetup_RespawningSpeedBoostBlock +0x84ce37 PlmSetup_RespawningCrumbleBlock +0x84ce6b PlmSetup_RespawningShotBlock +0x84ce83 PlmSetup_RespawningBombBlock +0x84ceda PlmSetup_RespawningBombBlock2 +0x84cf2e PlmSetup_RespawningPowerBombBlock +0x84cf67 PlmSetup_D08C_SuperMissileBlockRespawning +0x84cfa0 PlmSetup_D08C_CrumbleBlock +0x84cfb5 PlmSetup_D0DC_BreakableGrappleBlock +0x84cfcd PlmSetup_D0D8_SetVFlag +0x84cfd1 PlmSetup_D0D8_ClearVflag +0x84cfd5 PlmSetup_D0E8_GiveSamusDamage +0x84cfec kPlmHeader_CFEC +0x84cff0 kPlmHeader_CFF0 +0x84cff4 kPlmHeader_CFF4 +0x84cff8 kPlmHeader_CFF8 +0x84cffc kPlmHeader_CFFC +0x84d000 kPlmHeader_D000 +0x84d004 kPlmHeader_D004 +0x84d008 kPlmHeader_D008 +0x84d00c kPlmHeader_D00C +0x84d010 kPlmHeader_D010 +0x84d014 kPlmHeader_D014 +0x84d018 kPlmHeader_D018 +0x84d01c kPlmHeader_D01C +0x84d020 kPlmHeader_D020 +0x84d024 kPlmHeader_D024 +0x84d028 kPlmHeader_D028 +0x84d02c kPlmHeader_D02C +0x84d030 kPlmHeader_D030 +0x84d034 kPlmHeader_D034 +0x84d038 kPlmHeader_D038 +0x84d03c kPlmHeader_D03C +0x84d040 kPlmHeader_D040 +0x84d044 kPlmHeader_D044 +0x84d048 kPlmHeader_D048 +0x84d04c kPlmHeader_D04C +0x84d050 kPlmHeader_D050 +0x84d054 kPlmHeader_D054 +0x84d058 kPlmHeader_D058 +0x84d05c kPlmHeader_D05C +0x84d060 kPlmHeader_D060 +0x84d064 kPlmHeader_D064 +0x84d068 kPlmHeader_D068 +0x84d06c kPlmHeader_D06C +0x84d070 kPlmHeader_D070 +0x84d074 kPlmHeader_D074 +0x84d078 kPlmHeader_D078 +0x84d07c kPlmHeader_D07C +0x84d080 kPlmHeader_D080 +0x84d084 kPlmHeader_D084 +0x84d088 kPlmHeader_D088 +0x84d08c kPlmHeader_D08C +0x84d090 kPlmHeader_D090 +0x84d094 kPlmHeader_D094 +0x84d098 kPlmHeader_D098 +0x84d09c kPlmHeader_D09C +0x84d0a0 kPlmHeader_D0A0 +0x84d0a4 kPlmHeader_D0A4 +0x84d0a8 kPlmHeader_D0A8 +0x84d0ac kPlmHeader_D0AC +0x84d0b0 kPlmHeader_D0B0 +0x84d0b4 kPlmHeader_D0B4 +0x84d0b8 kPlmHeader_D0B8 +0x84d0bc kPlmHeader_D0BC +0x84d0c0 kPlmHeader_D0C0 +0x84d0c4 kPlmHeader_D0C4 +0x84d0c8 kPlmHeader_D0C8 +0x84d0cc kPlmHeader_D0CC +0x84d0d0 kPlmHeader_D0D0 +0x84d0d4 kPlmHeader_D0D4 +0x84d0d8 kPlmHeader_D0D8 +0x84d0dc kPlmHeader_D0DC +0x84d0e0 kPlmHeader_D0E0 +0x84d0e4 kPlmHeader_D0E4 +0x84d0e8 kPlmHeader_D0E8 +0x84d0ec kPlmInstrList_D0EC +0x84d0f2 kPlmHeader_D0F2 +0x84d0f6 kPlmInstrList_D0F6 +0x84d108 PlmSetup_D113_LowerNorfairChozoRoomPlug +0x84d113 kPlmHeader_D113 +0x84d117 PlmSetup_D127 +0x84d121 kPlmInstrList_D121 +0x84d127 kPlmHeader_D127 +0x84d12b PlmSetup_D138 +0x84d135 kPlmInstrList_D135 +0x84d13b kPlmHeader_D13B +0x84d13f kPlmInstrList_D13F +0x84d155 PlmInstr_FxBaseYPos_0x2D2 +0x84d15c PlmPreInstr_DeletePlmAndSpawnTriggerIfBlockDestroyed +0x84d18e nullsub_69 +0x84d18f PlmSetup_D6DA_LowerNorfairChozoHandTrigger +0x84d1e6 PlmPreInstr_IncrementRoomArgIfShotBySuperMissile +0x84d202 kPlmInstrList_D202 +0x84d2f9 PlmInstr_GotoIfRoomArgLess +0x84d30b PlmInstr_SpawnFourMotherBrainGlass +0x84d331 SpawnMotherBrainGlassShatteringShard +0x84d33b PlmPreInstr_WakePlmIfSamusHasBombs +0x84d356 nullsub_351 +0x84d357 PlmInstr_SpawnTorizoStatueBreaking +0x84d368 kPlmInstrList_D368 +0x84d3c7 PlmInstr_QueueSong1MusicTrack +0x84d3cf kPlmInstrList_D3CF +0x84d3d7 PlmInstr_TransferWreckedShipChozoSpikesToSlopes +0x84d3ec kPlmInstrList_D3EC +0x84d3f4 PlmInstr_TransferWreckedShipSlopesToChozoSpikes +0x84d409 UNUSED_sub_84D409 +0x84d426 kPlmInstrList_D426 +0x84d44e kPlmInstrList_D44E +0x84d476 UNUSED_sub_84D476 +0x84d489 UNUSED_sub_84D489 +0x84d490 kPlmInstrList_D490 +0x84d4be nullsub_70 +0x84d4bf PlmPreInstr_WakeOnKeyPress +0x84d4d4 kPlmInstrList_D4D4 +0x84d525 PlmInstr_EnableWaterPhysics +0x84d52c PlmInstr_SpawnN00bTubeCrackEproj +0x84d536 PlmInstr_DiagonalEarthquake +0x84d543 PlmInstr_Spawn10shardsAnd6n00bs +0x84d5e6 PlmInstr_DisableSamusControls +0x84d5ee PlmInstr_EnableSamusControls +0x84d5f6 PlmSetup_MotherBrainGlass +0x84d606 PlmSetup_DeletePlmIfAreaTorizoDead +0x84d616 PlmSetup_MakeBllockChozoHandTrigger +0x84d620 PlmSetup_D6F2_WreckedShipChozoHandTrigger +0x84d67f PlmSetup_D700_MakePlmAirBlock_Unused +0x84d689 PlmSetup_D704_AlteranateLowerNorfairChozoHand_Unused +0x84d693 PlmSetup_D708_LowerNorfairChozoBlockUnused +0x84d6cc PlmSetup_D70C_NoobTube +0x84d6d6 kPlmHeader_D6D6 +0x84d6da kPlmHeader_D6DA +0x84d6de kPlmHeader_D6DE +0x84d6ea kPlmHeader_D6EA +0x84d6ee kPlmHeader_D6EE +0x84d6f2 kPlmHeader_D6F2 +0x84d6f6 nullsub_71 +0x84d6f7 nullsub_72 +0x84d6f8 kPlmHeader_D6F8 +0x84d6fc kPlmHeader_D6FC +0x84d700 kPlmHeader_D700 +0x84d704 kPlmHeader_D704 +0x84d708 kPlmHeader_D708 +0x84d70c kPlmHeader_D70C +0x84d710 UNUSED_sub_84D710 +0x84d753 PlmPreInstr_WakePlmIfRoomArgumentDoorIsSet +0x84d77a PlmInstr_ShootEyeDoorProjectileWithProjectileArg +0x84d790 PlmInstr_SpawnEyeDoorSweatEproj +0x84d79f PlmInstr_SpawnTwoEyeDoorSmoke +0x84d7b6 PlmInstr_SpawnEyeDoorSmokeProjectile +0x84d7c3 PlmInstr_MoveUpAndMakeBlueDoorFacingRight +0x84d7da PlmInstr_MoveUpAndMakeBlueDoorFacingLeft +0x84d81e kPlmInstrList_D81E +0x84d8e9 kPlmInstrList_D8E9 +0x84d91f kPlmInstrList_D91F +0x84d955 kPlmInstrList_D955 +0x84da20 kPlmInstrList_DA20 +0x84da56 kPlmInstrList_DA56 +0x84da8c PlmSetup_EyeDoorEye +0x84dab9 PlmSetup_EyeDoor +0x84dad5 nullsub_73 +0x84dad6 nullsub_74 +0x84dad7 nullsub_75 +0x84dad8 nullsub_76 +0x84dad9 nullsub_77 +0x84dada nullsub_78 +0x84dadb nullsub_79 +0x84dadc nullsub_80 +0x84dadd nullsub_81 +0x84dade PlmPreInstr_SetMetroidsClearState_Ev0x10 +0x84daee PlmPreInstr_SetMetroidsClearState_Ev0x11 +0x84dafe PlmPreInstr_SetMetroidsClearState_Ev0x12 +0x84db0e PlmPreInstr_SetMetroidsClearState_Ev0x13 +0x84db1e PlmSetup_SetMetroidRequiredClearState +0x84db42 kPlmInstrList_DB42 +0x84db44 kPlmHeader_DB44 +0x84db48 kPlmHeader_DB48 +0x84db4c kPlmHeader_DB4C +0x84db52 kPlmHeader_DB52 +0x84db56 kPlmHeader_DB56 +0x84db5a kPlmHeader_DB5A +0x84db60 kPlmHeader_DB60 +0x84db64 PlmPreInstr_GotoLinkIfShotWithSuperMissile +0x84db8e PlmInstr_DamageDraygonTurret +0x84dbb8 PlmInstr_DamageDraygonTurretFacingDownRight +0x84dbf7 PlmInstr_DamageDraygonTurretFacingUpRight +0x84dc36 PlmInstr_DamageDraygonTurret2 +0x84dc60 PlmInstr_DamageDraygonTurretFacingDownLeft +0x84dc9f PlmInstr_DamageDraygonTurretFacingUpLeft +0x84dcde kPlmInstrList_DCDE +0x84dd11 kPlmInstrList_DD11 +0x84dd27 kPlmInstrList_DD27 +0x84dd5a kPlmInstrList_DD5A +0x84dd70 kPlmInstrList_DD70 +0x84dda3 kPlmInstrList_DDA3 +0x84ddb9 kPlmInstrList_DDB9 +0x84ddec kPlmInstrList_DDEC +0x84de02 kPlmInstrList_DE02 +0x84de35 kPlmInstrList_DE35 +0x84de4b kPlmInstrList_DE4B +0x84de7e kPlmInstrList_DE7E +0x84de94 PlmSetup_DraygonCannonFacingRight +0x84deb9 PlmSetup_DraygonCannonFacingDiagonalRight +0x84def0 PlmSetup_DraygonCannonFacingLeft +0x84df15 PlmSetup_DraygonCannonFacingDiagonalLeft +0x84df4c PlmSetup_DraygonCannon +0x84df59 kPlmHeader_DF59 +0x84df5d kPlmHeader_DF5D +0x84df61 kPlmHeader_DF61 +0x84df65 kPlmHeader_DF65 +0x84df69 kPlmHeader_DF69 +0x84df6d kPlmHeader_DF6D +0x84df71 kPlmHeader_DF71 +0x84df75 kPlmHeader_DF75 +0x84df79 kPlmHeader_DF79 +0x84df7d kPlmHeader_DF7D +0x84df81 kPlmHeader_DF81 +0x84df85 kPlmHeader_DF85 +0x84df89 PlmPreInstr_GotoLinkIfTriggered +0x84dfa8 PlmPreInstr_nullsub_301 +0x84dfe6 PlmPreInstr_WakeIfTriggered +0x84e04f PlmInstr_DrawItemFrame0 +0x84e067 PlmInstr_DrawItemFrame1 +0x84e07f PlmInstr_DrawItemFrame_Common +0x84e099 kPlmInstrList_E099 +0x84e0be kPlmInstrList_E0BE +0x84e0e3 kPlmInstrList_E0E3 +0x84e108 kPlmInstrList_E108 +0x84e12d kPlmInstrList_E12D +0x84e15b kPlmInstrList_E15B +0x84e189 kPlmInstrList_E189 +0x84e1b7 kPlmInstrList_E1B7 +0x84e1e5 kPlmInstrList_E1E5 +0x84e213 kPlmInstrList_E213 +0x84e241 kPlmInstrList_E241 +0x84e26f kPlmInstrList_E26F +0x84e29d PlmInstr_ClearChargeBeamCounter +0x84e2a1 kPlmInstrList_E2A1 +0x84e2d6 kPlmInstrList_E2D6 +0x84e30b kPlmInstrList_E30B +0x84e338 kPlmInstrList_E338 +0x84e366 kPlmInstrList_E366 +0x84e393 kPlmInstrList_E393 +0x84e3c1 kPlmInstrList_E3C1 +0x84e3ef kPlmInstrList_E3EF +0x84e41d kPlmInstrList_E41D +0x84e44a kPlmInstrList_E44A +0x84e47c kPlmInstrList_E47C +0x84e4ae kPlmInstrList_E4AE +0x84e4e0 kPlmInstrList_E4E0 +0x84e512 kPlmInstrList_E512 +0x84e54d kPlmInstrList_E54D +0x84e588 kPlmInstrList_E588 +0x84e5c3 kPlmInstrList_E5C3 +0x84e5fe kPlmInstrList_E5FE +0x84e63b PlmInstr_E63B +0x84e642 kPlmInstrList_E642 +0x84e67d kPlmInstrList_E67D +0x84e6b8 kPlmInstrList_E6B8 +0x84e6f3 kPlmInstrList_E6F3 +0x84e735 kPlmInstrList_E735 +0x84e777 kPlmInstrList_E777 +0x84e7b1 kPlmInstrList_E7B1 +0x84e7ec kPlmInstrList_E7EC +0x84e826 kPlmInstrList_E826 +0x84e861 kPlmInstrList_E861 +0x84e89c kPlmInstrList_E89C +0x84e8d7 kPlmInstrList_E8D7 +0x84e911 kPlmInstrList_E911 +0x84e949 kPlmInstrList_E949 +0x84e981 kPlmInstrList_E981 +0x84e9b9 kPlmInstrList_E9B9 +0x84e9f1 kPlmInstrList_E9F1 +0x84ea32 kPlmInstrList_EA32 +0x84ea73 kPlmInstrList_EA73 +0x84eab4 kPlmInstrList_EAB4 +0x84eaf5 kPlmInstrList_EAF5 +0x84eb36 kPlmInstrList_EB36 +0x84eb77 kPlmInstrList_EB77 +0x84ebb8 kPlmInstrList_EBB8 +0x84ebf9 kPlmInstrList_EBF9 +0x84ec41 kPlmInstrList_EC41 +0x84ec89 kPlmInstrList_EC89 +0x84ecc9 kPlmInstrList_ECC9 +0x84ed0a kPlmInstrList_ED0A +0x84ed4a kPlmInstrList_ED4A +0x84ed8b kPlmInstrList_ED8B +0x84edcc kPlmInstrList_EDCC +0x84ee0d kPlmInstrList_EE0D +0x84eed3 kPlmHeader_EED3 +0x84eed7 kPlmHeader_EED7 +0x84eedb kPlmHeader_EEDB +0x84eedf kPlmHeader_EEDF +0x84eee3 kPlmHeader_EEE3 +0x84eee7 kPlmHeader_EEE7 +0x84eeeb kPlmHeader_EEEB +0x84eeef kPlmHeader_EEEF +0x84eef3 kPlmHeader_EEF3 +0x84eef7 kPlmHeader_EEF7 +0x84eefb kPlmHeader_EEFB +0x84eeff kPlmHeader_EEFF +0x84ef03 kPlmHeader_EF03 +0x84ef07 kPlmHeader_EF07 +0x84ef0b kPlmHeader_EF0B +0x84ef0f kPlmHeader_EF0F +0x84ef13 kPlmHeader_EF13 +0x84ef17 kPlmHeader_EF17 +0x84ef1b kPlmHeader_EF1B +0x84ef1f kPlmHeader_EF1F +0x84ef23 kPlmHeader_EF23 +0x84ef27 kPlmHeader_EF27 +0x84ef2b kPlmHeader_EF2B +0x84ef2f kPlmHeader_EF2F +0x84ef33 kPlmHeader_EF33 +0x84ef37 kPlmHeader_EF37 +0x84ef3b kPlmHeader_EF3B +0x84ef3f kPlmHeader_EF3F +0x84ef43 kPlmHeader_EF43 +0x84ef47 kPlmHeader_EF47 +0x84ef4b kPlmHeader_EF4B +0x84ef4f kPlmHeader_EF4F +0x84ef53 kPlmHeader_EF53 +0x84ef57 kPlmHeader_EF57 +0x84ef5b kPlmHeader_EF5B +0x84ef5f kPlmHeader_EF5F +0x84ef63 kPlmHeader_EF63 +0x84ef67 kPlmHeader_EF67 +0x84ef6b kPlmHeader_EF6B +0x84ef6f kPlmHeader_EF6F +0x84ef73 kPlmHeader_EF73 +0x84ef77 kPlmHeader_EF77 +0x84ef7b kPlmHeader_EF7B +0x84ef7f kPlmHeader_EF7F +0x84ef83 kPlmHeader_EF83 +0x84ef87 kPlmHeader_EF87 +0x84ef8b kPlmHeader_EF8B +0x84ef8f kPlmHeader_EF8F +0x84ef93 kPlmHeader_EF93 +0x84ef97 kPlmHeader_EF97 +0x84ef9b kPlmHeader_EF9B +0x84ef9f kPlmHeader_EF9F +0x84efa3 kPlmHeader_EFA3 +0x84efa7 kPlmHeader_EFA7 +0x84efab kPlmHeader_EFAB +0x84efaf kPlmHeader_EFAF +0x84efb3 kPlmHeader_EFB3 +0x84efb7 kPlmHeader_EFB7 +0x84efbb kPlmHeader_EFBB +0x84efbf kPlmHeader_EFBF +0x84efc3 kPlmHeader_EFC3 +0x84efc7 kPlmHeader_EFC7 +0x84efcb kPlmHeader_EFCB +0x84efcf kPlmHeader_EFCF +0x84efd3 PlmInstr_LoadItemPlmGfx_FIXED +0x84efdc ProcessPlm_CheckMessage +0x84f000 PlmInstr_ActivateSaveStationAndGotoIfNo_Fixed +0x858000 kLargeMsgBoxTopBottomBorderTilemap +0x858040 kSmallMsgBoxTopBottomBorderTilemap +0x858080 DisplayMessageBox +0x858084 DisplayMessageBox_ResumePoint +0x8580fa MaybeTriggerPauseScreenOrReturnSaveConfirm +0x858119 PlaySavingSoundEffect +0x858136 WaitForNMI_NoUpdate +0x858143 InitializePpuForMessageBoxes +0x8581f3 ClearMessageBoxBg3Tilemap +0x858241 InitializeMessageBox +0x85825a WriteLargeMessageBoxTilemap +0x858289 WriteSmallMessageBoxTilemap +0x8582b8 WriteMessageTilemap +0x85831e SetupPpuForActiveMessageBox +0x858363 SetupMessageBoxBg3YscrollHdma +0x8583c5 DrawShootButtonAndSetupPpuForLargeMessageBox +0x8583cc DrawRunButtonAndSetupPpuForLargeMessageBox +0x8583d1 DrawSpecialButtonAndSetupPpuForLargeMessageBox +0x858426 kTileNumbersForButtonLetters +0x858436 SetupPpuForSmallMessageBox +0x858441 SetupPpuForLargeMessageBox +0x85844c OpenMessageBox +0x85846d HandleMessageBoxInteraction +0x858507 ToggleSaveConfirmationSelection +0x858574 MsgBoxDelayFrames_2 +0x858589 CloseMessageBox +0x85859b MsgBoxMakeHdmaTable +0x85861a RestorePpuForMessageBox +0x85869b kMessageBoxDefs +0x858749 kMsgBoxSpecialButtonTilemapOffs +0x85877f kMsgBoxTilemap_1_EnergyTank +0x8587bf kMsgBoxTilemap_2_Missile +0x8588bf kMsgBoxTilemap_3_SuperMissile +0x8589bf kMsgBoxTilemap_4_PowerBomb +0x858abf kMsgBoxTilemap_5_GrapplingBeam +0x858bbf kMsgBoxTilemap_6_XrayScope +0x858cbf kMsgBoxTilemap_7_VariaSuit +0x858cff kMsgBoxTilemap_8_SpringBall +0x858d3f kMsgBoxTilemap_9_MorphingBall +0x858d7f kMsgBoxTilemap_10_ScrewAttack +0x858dbf kMsgBoxTilemap_11_HiJumpBoots +0x858dff kMsgBoxTilemap_12_SpaceJump +0x858e3f kMsgBoxTilemap_13_SpeedBooster +0x858f3f kMsgBoxTilemap_14_ChargeBeam +0x858f7f kMsgBoxTilemap_15_IceBeam +0x858fbf kMsgBoxTilemap_16_WaveBeam +0x858fff kMsgBoxTilemap_17_Spazer +0x85903f kMsgBoxTilemap_18_PlasmaBeam +0x85907f kMsgBoxTilemap_19_Bomb +0x85917f kMsgBoxTilemap_20_MapDataAccessCompleted +0x85923f kMsgBoxTilemap_21_EnergyRechargeComplete +0x8592ff kMsgBoxTilemap_22_MissileReloadComplete +0x8593bf kMsgBoxTilemap_23_WouldYouLikeToSave +0x8594bf kMsgBoxTilemap_24_SaveCompleted +0x8594ff kMsgBoxTilemap_25_ReserveTank +0x85953f kMsgBoxTilemap_26_GravitySuit +0x85957f kMsgBoxTilemap_27_Terminator +0x859581 kSaveConfirmationSelectionTilemap +0x859650 Fix_HandleMessageBoxInteraction_Async +0x859660 Fix_MsgBoxMakeHdmaTable_NoSleep +0x859670 DisplayMessageBox_GunshipTop +0x859681 DisplayMessageBox_Poll +0x859695 DisplayMessageBox_Org +0x8596a0 EnemyMain_WithCheckMsgBox +0x8596c0 CloseMessageBox_ResetMsgBoxIdx +0x868000 EnableEprojs +0x86800b DisableEprojs +0x868016 ClearEprojs +0x868027 SpawnEprojWithGfx +0x868097 SpawnEprojWithRoomGfx +0x868104 EprojRunAll +0x868125 EprojRunOne +0x868154 EprojInstr_Delete +0x868159 EprojInstr_Sleep +0x868161 EprojInstr_SetPreInstr_ +0x86816a EprojInstr_ClearPreInstr +0x868170 EprojPreInstr_nullsub_297 +0x868171 EprojInstr_CallFunc +0x868188 Trampoline_sub_868188 +0x86818b EprojInstr_CallFuncWithParam +0x8681a8 Trampoline_loc_8681A8 +0x8681ab EprojInstr_Goto +0x8681b0 EprojInstr_GotoRel +0x8681c6 EprojInstr_DecTimerAndGotoIfNonZero +0x8681ce EprojInstr_DecTimerAndGotoRelIfNonZero +0x8681d5 EprojInstr_SetTimer +0x8681de nullsub_82 +0x8681df EprojInstr_MoveRandomlyWithinRadius +0x868230 EprojInstr_SetProjectileProperties +0x86823c EprojInstr_ClearProjectileProperties +0x868248 EprojInstr_EnableCollisionWithSamusProj +0x868252 EprojInstr_DisableCollisionWithSamusProj +0x86825c EprojInstr_DisableCollisionWithSamus +0x868266 EprojInstr_EnableCollisionWithSamus +0x868270 EprojInstr_SetToNotDieOnContact +0x86827a EprojInstr_SetToDieOnContact +0x868284 EprojInstr_SetLowPriority +0x86828e EprojInstr_SetHighPriority +0x868298 EprojInstr_SetXyRadius +0x8682a1 EprojInstr_SetXyRadiusZero +0x8682a5 EprojInstr_CalculateDirectionTowardsSamus +0x8682d5 EprojInstr_WriteColorsToPalette +0x8682fd EprojInstr_QueueMusic +0x868309 EprojInstr_QueueSfx1_Max6 +0x868312 EprojInstr_QueueSfx2_Max6 +0x86831b EprojInstr_QueueSfx3_Max6 +0x868324 EprojInstr_QueueSfx1_Max15 +0x86832d EprojInstr_QueueSfx2_Max15 +0x868336 EprojInstr_QueueSfx3_Max15 +0x86833f EprojInstr_QueueSfx1_Max3 +0x868348 EprojInstr_QueueSfx2_Max3 +0x868351 EprojInstr_QueueSfx3_Max3 +0x86835a EprojInstr_QueueSfx1_Max9 +0x868363 EprojInstr_QueueSfx2_Max9 +0x86836c EprojInstr_QueueSfx3_Max9 +0x868375 EprojInstr_QueueSfx1_Max1 +0x86837e EprojInstr_QueueSfx2_Max1 +0x868387 EprojInstr_QueueSfx3_Max1 +0x868390 DrawLowPriorityEprojs +0x8683b2 DrawHighPriorityEprojs +0x8683d6 DrawEprojs +0x868427 GetValuesForScreenShaking +0x86846b kScreenShakeOffsets +0x8684fb EprojPreInstr_nullsub_83 +0x868506 EprojColl_8506 +0x86853c EprojColl_Unknown8536 +0x86858a EprojColl_ClearCarry +0x86858c EprojColl_SetCarry +0x86858e EprojColl_858E +0x8685ad EprojColl_85AD +0x8685c2 EprojColl_85C2 +0x868676 EprojColl_8676 +0x86873d EprojColl_873D +0x86874e EprojColl_874E +0x868846 kEprojBlockCollisition_FuncA +0x868866 kEprojBlockCollisition_FuncB +0x868886 EprojBlockCollisition_CheckHorizontal +0x86889e EprojBlockCollisition_CheckVertical +0x8688b6 EprojBlockCollisition_Horiz +0x86897b EprojBlockCollisition_Vertical +0x868a39 EnemyProj_Init_0x8aaf +0x868a7d EnemyProj_PreInit_0x8aaf +0x868acd EnemyProj_Init_0x8bc2_SkreeDownRight +0x868af1 EnemyProj_Init_0x8bd0_SkreeUpRight +0x868b15 EnemyProj_Init_0x8bde_SkreeDownLeft +0x868b39 EnemyProj_Init_0x8bec_SkreeUpLeft +0x868b5d EnemyProj_PreInstr_SkreeParticle +0x868c68 EprojInstr_SpawnEnemyDropsWithDraygonsEyeDrops +0x868cf6 EnemyProjInstr_SetPreInstrA +0x868cfd EnemyProjInstr_SetPreInstrB +0x868d04 EprojInit_DraygonsGunk +0x868d40 EprojInit_DraygonsWallTurretProjs +0x868d54 nullsub_84 +0x868d55 EprojInstr_868D55 +0x868d5c EprojPowerBombCollision +0x868d99 EprojInstr_868D99 +0x868dca EprojPreInstr_8DCA +0x868dff EprojPreInstr_DraygonsTurret_8DFF +0x868e0f EprojPreInstr_DraygonsGunk_8E0F +0x868e7a EprojInit_8E6C +0x868e99 EprojPreInstr_8E6C +0x869023 EprojInit_CrocomireProjectile +0x86906b EprojPreInstr_CrocomireProjectile +0x8690c1 kEproj_CrocomireSpikeWallPieces +0x8690cf EprojInit_CrocomireSpikeWallPieces +0x869115 EprojPreInstr_CrocomireSpikeWallPieces +0x8691c3 CrocomireSpikeWallPieces_Tab2 +0x8691e7 CrocomireSpikeWallPieces_Tab1 +0x86920b CrocomireSpikeWallPieces_Tab3 +0x86922f UNUSED_sub_86922F +0x869270 EprojInstr_9270 +0x869286 EprojInit_CrocomireBridgeCrumbling +0x8692ba EprojPreInstr_CrocomireBridgeCrumbling +0x8692d6 MoveEprojWithVelocity +0x8692f3 MoveEprojWithVelocityY +0x869311 MoveEprojWithVelocityX +0x86932f SetAreaDependentEprojPropertiesEx +0x86934d EprojInit_9634 +0x869382 kEprojInit_9634_Xvel +0x86938a kEprojInit_9634_Yvel +0x869392 EprojPreInstr_9634 +0x8693ca EprojInit_9642_RidleysFireball +0x869402 SetAreaDependentEprojProperties +0x869408 kRidleysFireball_Tab0 +0x86940e EprojPreInstr_9642_RidleysFireball +0x869442 UNUSED_sub_869442 +0x86945f UNUSED_word_86945F +0x869475 EprojInstr_DisableCollisionsWithSamus +0x86947f EprojInit_9660_FireballExplosion +0x8694a0 EprojInit_9688 +0x8694b4 EprojInit_9696 +0x8694c8 EprojInit_966C +0x8694dc EprojInit_967A +0x8694ee EprojInit_Common +0x86950c nullsub_85 +0x86950d EprojPreInstr_966C +0x869522 EprojPreInstr_9688 +0x869537 EprojPreInstr_96A4 +0x869540 EprojPreInstr_96C0 +0x869549 EprojPreInstr_96CE +0x8695ba EprojInstr_95BA +0x8695ed EprojInstr_95ED +0x869620 EprojInstr_9620 +0x8696dc EprojInit_9734_CeresFallingDebris +0x869701 EprojPreInstr_9734_CeresFallingDebris +0x86980e EprojInstr_980E +0x869824 EprojInit_PhantoonDestroyableFireballs +0x86983a EprojInit_PhantoonDestroyableFireballs_0 +0x86986d EprojInit_PhantoonDestroyableFireballs_1 +0x8698c4 EprojInit_PhantoonDestroyableFireballs_2 +0x869900 EprojInit_PhantoonDestroyableFireballs_3 +0x86993a EprojInit_PhantoonStartingFireballs +0x869981 EprojPreInstr_PhantoonStartingFireballs +0x8699bf EprojPreInstr_PhantoonStartingFireballs2 +0x869a01 EprojPreInstr_PhantoonStartingFireballs3 +0x869a44 nullsub_86 +0x869a45 EprojPreInstr_PhantoonDestroyableFireballs +0x869a94 EprojPreInstr_PhantoonDestroyableFireballs_2 +0x869ada EprojPreInstr_PhantoonDestroyableFireballs_3 +0x869b29 EprojPreInstr_PhantoonStartingFireballsB +0x869b41 EprojPreInstr_PhantoonStartingFireballsB_2 +0x869ba2 Eproj_PhantomFireballs_Func1 +0x869bf3 Eproj_PhantomFireballs_Func2 +0x869c29 kEproj_DestroyableFireballs +0x869c37 kEproj_StartingFireballs +0x869c45 kEproj_RocksKraidSpits +0x869c53 kEproj_RocksFallingKraidCeiling +0x869c61 kEproj_RocksWhenKraidRisesLeft +0x869c6f kEproj_RocksWhenKraidRisesRight +0x869ca3 EprojInit_RocksKraidSpits +0x869cd8 EprojInit_RocksFallingKraidCeiling +0x869d0c EprojInit_RocksWhenKraidRises +0x869d56 EprojPreInstr_KraidRocks +0x869d89 EprojPreInstr_RocksFallingKraidCeiling +0x869db0 kEproj_MiniKraidSpit +0x869dbe kEproj_MiniKraidSpikesLeft +0x869dcc kEproj_MiniKraidSpikesRight +0x869dec EprojInit_MiniKraidSpit +0x869e1e EprojPreInit_MiniKraidSpit +0x869e46 EprojInit_MiniKraidSpikesLeft +0x869e4b EprojInit_MiniKraidSpikesRight +0x869e4e EprojInit_MiniKraidSpikes +0x869e7d kEprojInit_MiniKraidSpikes_Tab0 +0x869e83 EprojPreInstr_MiniKraidSpikes +0x869e90 kEproj_WalkingLavaSeahorseFireball +0x869eb2 EprojInit_WalkingLavaSeahorseFireball +0x869eff EprojPreInstr_WalkingLavaSeahorseFireball +0x86a009 EprojInit_PirateMotherBrainLaser +0x86a050 EprojInstr_SetPreInstrAndRun +0x86a05b nullsub_87 +0x86a05c EprojPreInstr_PirateMotherBrainLaser_MoveLeft +0x86a07a EprojPreInstr_PirateMotherBrainLaser_MoveRight +0x86a098 EprojInit_PirateClaw +0x86a0d1 EprojPreInstr_PirateClawThrownLeft +0x86a124 EprojPreInstr_PirateClawThrownRight +0x86a189 kEproj_PirateClaw +0x86a2a1 EprojInit_A379 +0x86a2ee EprojInit_CeresElevatorPad +0x86a31b EprojInit_CeresElevatorPlatform +0x86a327 nullsub_88 +0x86a328 EprojPreInstr_CeresElevatorPad +0x86a364 EprojPreInstr_CeresElevatorPlatform +0x86a387 kEproj_CeresElevatorPad +0x86a395 kEproj_CeresElevatorPlatform +0x86a3a3 EprojPreInstr_PrePhantomRoom +0x86a3b0 kEproj_PrePhantomRoom +0x86a3be EprojInstr_A3BE +0x86a456 EprojInstr_GotoWithProbability25 +0x86a5d3 EprojInit_BombTorizoLowHealthDrool +0x86a65d EprojInit_BombTorizoLowHealthInitialDrool +0x86a6c7 EprojInit_A977 +0x86a6f6 EprojInit_BombTorizoExplosiveSwipe +0x86a738 kEprojInit_BombTorizoExplosiveSwipe_Tab0 +0x86a74e kEprojInit_BombTorizoExplosiveSwipe_Tab1 +0x86a764 EprojInit_BombTorizoStatueBreaking +0x86a7ab kEprojInit_BombTorizoStatueBreaking_InstrList +0x86a7cb kEprojInit_BombTorizoStatueBreaking_Xpos +0x86a7eb kEprojInit_BombTorizoStatueBreaking_Ypos +0x86a7fb kEprojInit_BombTorizoStatueBreaking_Yvel +0x86a80b kEprojInit_BombTorizoStatueBreaking_F +0x86a81b EprojInit_BombTorizoLowHealthExplode +0x86a859 kEprojInit_BombTorizoLowHealthExplode_X +0x86a865 kEprojInit_BombTorizoLowHealthExplode_Y +0x86a871 EprojInit_BombTorizoDeathExplosion +0x86a8ef EprojPreInstr_A977 +0x86a918 nullsub_352 +0x86a919 nullsub_89 +0x86a969 kEproj_BombTorizoLowHealthInitialDrool +0x86a977 kEproj_A977 +0x86a985 kEproj_BombTorizoExplosiveSwipe +0x86a993 kEproj_BombTorizoStatueBreaking +0x86a9a1 kEproj_BombTorizoLowHealthExplode +0x86a9af kEproj_BombTorizoDeathExplosion +0x86a9bd kEprojInit_AB07_Tile0 +0x86a9fd kEprojInit_AB07_Tile1 +0x86aa3d EprojInit_AB07 +0x86aa8c EprojPreInstr_AB07 +0x86ab07 kEproj_AB07 +0x86ab8a EprojInstr_SpawnEnemyDrops +0x86abae Eproj_InitXYVelRandom +0x86abeb EprojInit_BombTorizosChozoOrbs +0x86ac08 kEprojInit_BombTorizosChozoOrbs_init0 +0x86ac12 kEprojInit_BombTorizosChozoOrbs_init1 +0x86ac1c UNUSED_sub_86AC1C +0x86ac7c EprojInit_GoldenTorizosChozoOrbs +0x86ac99 kEprojInit_GoldenTorizosChozoOrbs_init0 +0x86aca3 kEprojInit_GoldenTorizosChozoOrbs_init1 +0x86acad EprojPreInstr_BombTorizosChozoOrbs +0x86acfa EprojPreInstr_GoldenTorizosChozoOrbs +0x86ad5e kEproj_BombTorizosChozoOrbs +0x86ad6c kEproj_BombTorizosChozoOrbsMoreDmg +0x86ad7a kEproj_GoldenTorizosChozoOrbs +0x86ad92 EprojInstr_GotoDependingOnXDirection +0x86ae15 EprojInit_TorizoSonicBoom +0x86ae6c EprojPreInstr_TorizoSonicBoom +0x86aea8 kEproj_BombTorizoSonicBoom +0x86aeb6 kEproj_GoldenTorizoSonicBoom +0x86aefc EprojInit_WreckedShipChozoSpikeFootsteps +0x86af36 EprojInstr_ResetXYpos1 +0x86af43 EprojInit_TourianStatueDustClouds +0x86af50 EprojInit_TourianLandingDustCloudsRightFoot +0x86af68 kEproj_WreckedShipChozoSpikeFootsteps_1 +0x86af76 kEproj_WreckedShipChozoSpikeFootsteps_2 +0x86af84 kEproj_TourianStatueDustClouds +0x86af92 EprojInstr_MoveY_Minus4 +0x86afcd EprojInit_TorizoLandingDustCloudLeftFoot +0x86afe5 kEproj_TourianLandingDustCloudsRightFoot +0x86b001 EprojInit_GoldenTorizoEgg +0x86b02f kEprojInit_GoldenTorizoEgg0 +0x86b039 kEprojInit_GoldenTorizoEgg1 +0x86b043 EprojPreInstr_GoldenTorizoEgg +0x86b1ce EprojInit_GoldenTorizoSuperMissile +0x86b20d EprojPreInstr_GoldenTorizoSuperMissile +0x86b237 EprojPreInstr_B237 +0x86b269 EprojInstr_SetVelTowardsSamus1 +0x86b272 EprojInstr_SetVelTowardsSamus2 +0x86b31a kEproj_GoldenTorizoSuperMissile +0x86b328 EprojInit_GoldenTorizoEyeBeam +0x86b38a EprojPreInstr_GoldenTorizoEyeBeam +0x86b3b8 EprojInstr_GotoIfFunc1 +0x86b428 kEproj_GoldenTorizoEyeBeam +0x86b436 EprojInstr_ResetXYpos2 +0x86b489 UNUSED_sub_86B489 +0x86b49d EprojInit_TourianEscapeShaftFakeWallExplode +0x86b4b0 nullsub_90 +0x86b4b1 kEproj_TourianEscapeShaftFakeWallExplode +0x86b4ef EprojInit_LavaSeahorseFireball +0x86b5b9 Eproj_DeleteIfYposOutside +0x86b5cb kEproj_LavaSeahorseFireball +0x86b62d EprojInit_EyeDoorProjectile +0x86b683 EprojInit_EyeDoorSweat +0x86b6b9 EprojPreInstr_EyeDoorProjectile +0x86b714 EprojPreInstr_EyeDoorSweat +0x86b743 kEproj_EyeDoorProjectile +0x86b751 kEproj_EyeDoorSweat +0x86b7ea EprojInstr_SpawnTourianStatueUnlockingParticle +0x86b7f5 EprojInstr_Earthquake +0x86b818 EprojInstr_SpawnTourianStatueUnlockingParticleTail +0x86b841 EprojInstr_AddToYpos +0x86b87a EprojInit_TourianStatueUnlockingParticleWaterSplash +0x86b88e EprojInit_TourianStatueEyeGlow +0x86b8b5 EprojInit_TourianStatueUnlockingParticle +0x86b8e8 EprojIni_TourianStatueUnlockingParticleTail +0x86b8f8 EprojInit_TourianStatueSoul +0x86b90e kEprojInit_TourianStatueEyeGlow_X +0x86b916 kEprojInit_TourianStatueEyeGlow_Y +0x86b91e kEprojInit_TourianStatueEyeGlow_Colors +0x86b93e EprojInit_TourianStatueBaseDecoration +0x86b951 EprojInit_TourianStatueRidley +0x86b964 EprojInit_TourianStatuePhantoon +0x86b977 EprojPreInstr_TourianStatueUnlockingParticleWaterSplash +0x86b982 EprojPreInstr_TourianStatueUnlockingParticle +0x86b9fd EprojPreInstr_TourianStatueSoul +0x86ba37 EprojPreInstr_TourianStatueStuff +0x86ba42 EprojPreInstr_BA42 +0x86ba6a kEproj_TourianStatueEyeGlow +0x86ba78 kEproj_TourianStatueUnlockingParticle +0x86ba86 kEproj_TourianStatueUnlockingParticleTail +0x86ba94 kEproj_TourianStatueSoul +0x86baa2 kEproj_TourianStatueRidley +0x86bab0 kEproj_TourianStatuePhantoon +0x86babe kEproj_TourianStatueBaseDecoration +0x86bb24 EprojInstr_BB24 +0x86bb4f nullsub_91 +0x86bb92 EprojInit_NuclearWaffleBody +0x86bbc6 nullsub_92 +0x86bbc7 kEproj_NuclearWaffleBody +0x86bbdb EprojInit_NorfairLavaquakeRocks +0x86bc0f EprojPreInstr_NorfairLavaquakeRocks +0x86bc16 Eproj_NorfairLavaquakeRocks_Func1 +0x86bc8f Eproj_NorfairLavaquakeRocks_Func2 +0x86bcf4 Eproj_NorfairLavaquakeRocks_Func3 +0x86bd1e EprojPreInstr_NorfairLavaquakeRocks_Inner +0x86bd2a EprojPreInstr_NorfairLavaquakeRocks_Inner2 +0x86bd9c EprojInit_ShaktoolAttackMiddleBackCircle +0x86bda2 EprojInit_BDA2 +0x86bde3 kEprojInit_ShaktoolAttackMiddleBackCircle_X +0x86bdf3 kEprojInit_ShaktoolAttackMiddleBackCircle_Y +0x86be03 EprojInit_ShaktoolAttackFrontCircle +0x86be12 EprojPreInstr_BE12 +0x86be25 kEproj_ShaktoolAttackFrontCircle +0x86be33 kEproj_ShaktoolAttackMiddleCircle +0x86be41 kEproj_ShaktoolAttackBackCircle +0x86be4f EprojInit_MotherBrainRoomTurrets +0x86be89 kEprojInit_MotherBrainRoomTurrets_X +0x86bea1 EprojInit_MotherBrainRoomTurrets_Y +0x86beb9 kEproj_MotherBrainRoomTurrets_InstrLists +0x86bec9 kEproj_MotherBrainRoomTurrets_AllowedRotations +0x86bee1 kEproj_MotherBrainRoomTurrets_DirectionIndexes +0x86bf59 EprojInit_MotherBrainRoomTurretBullets +0x86bf9f kEproj_MotherBrainRoomTurretBullets_X +0x86bfaf kEproj_MotherBrainRoomTurretBullets_Y +0x86bfbf kEproj_MotherBrainRoomTurretBullets_Xvel +0x86bfcf kEproj_MotherBrainRoomTurretBullets_Yvel +0x86bfdf EprojPreInstr_MotherBrainRoomTurrets +0x86c050 Eproj_MotherBrainRoomTurretBullets_Func2 +0x86c08e Eproj_SetXvelRandom +0x86c0a1 Eproj_SetYvelRandom +0x86c0b4 Eproj_MotherBrainRoomTurretBullets_CheckIfTurretOnScreen +0x86c0e0 EprojPreInstr_MotherBrainRoomTurretBullets +0x86c173 EprojInstr_SwitchJump +0x86c17e kEproj_MotherBrainRoomTurrets +0x86c18c kEproj_MotherBrainRoomTurretBullets +0x86c1b4 EprojInstr_UserPalette0 +0x86c1b8 Eproj_CheckForBombCollisionWithRect +0x86c209 Eproj_CheckForEnemyCollisionWithRect +0x86c239 Eproj_CheckForCollisionWithSamus +0x86c26c Math_MultBySin +0x86c272 Math_MultByCos +0x86c27a Math_MultBySinCos +0x86c29b Math_Mult16U +0x86c2f3 Eproj_MotherBrainsBlueRingLasers +0x86c335 Eproj_MoveToBlueRingSpawnPosition +0x86c3a9 CheckForCollisionWithShitroid_DoubleRet +0x86c3c9 CheckForBlueRingCollisionWithRoom +0x86c3e9 Eproj_GetCollDetectRect +0x86c404 Eproj_Earthqhake5 +0x86c410 BlueRingContactExplosion +0x86c482 EprojInit_MotherBrainBomb +0x86c4c8 EprojPreInstr_MotherBrainBomb +0x86c550 kMotherBrainsBomb_Yaccel +0x86c564 MotherBrainBomb_Bomb_CollDetect_DoubleRet +0x86c5c2 MoveMotherBrainBomb +0x86c684 EprojInit_MotherBrainDeathBeemFired +0x86c76d nullsub_366 +0x86c7fb SpawnMotherBrainDeathBeam +0x86c80a EprojInit_MotherBrainRainbowBeam +0x86c814 EprojPreInstr_MotherBrainRainbowBeam +0x86c843 EprojInit_MotherBrainsDrool +0x86c84d EprojPreInstr_C84D +0x86c86e kEprojInit_MotherBrainsDrool +0x86c886 EprojInit_MotherBrainsDrool_Falling +0x86c8d0 EprojInstr_Add12ToY +0x86c8f5 EprojInit_MotherBrainsDeathExplosion +0x86c914 EprojPreInit_MotherBrainsDeathExplosion_0 +0x86c92f EprojInit_MotherBrainsRainbowBeamExplosion +0x86c94c EprojPreInstr_MotherBrainsRainbowBeamExplosion +0x86c961 EprojInit_MotherBrainEscapeDoorParticles +0x86c992 kEprojInit_MotherBrainEscapeDoorParticles_X +0x86c9b2 kEprojInit_MotherBrainEscapeDoorParticles_Xvel +0x86c9d2 EprojPreInstr_MotherBrainsExplodedDoorParticles +0x86ca6a EprojInit_MotherBrainPurpleBreathBig +0x86ca83 EprojInit_MotherBrainPurpleBreathSmall +0x86caa3 nullsub_94 +0x86caee EprojInstr_MotherBrainPurpleBreathIsActive +0x86caf6 EprojInit_TimeBombSetJapaneseText +0x86cafa EprojPreInstr_TimeBombSetJapaneseText +0x86cb13 kEproj_MotherBrainDeathExplosion +0x86cb21 kEproj_MotherBrainExplodedEscapeDoor +0x86cb2f kEproj_MotherBrainPurpleBreathBig +0x86cb3d kEproj_MotherBrainPurpleBreathSmall +0x86cb4b kEproj_MotherBrainBlueRingLasers +0x86cb59 kEproj_MotherBrainBomb +0x86cb67 kEproj_MotherBrainDeathBeamCharging +0x86cb75 kEproj_MotherBrainDeathBeamFired +0x86cb83 kEproj_MotherBrainRainbowBeamCharging +0x86cb91 kEproj_MotherBrainDrool +0x86cb9f kEproj_MotherBrainDyingDrool +0x86cbad kEproj_MotherBrainRainbowBeamExplosion +0x86cbbb kEproj_TimeBombSetJapaneseText +0x86cbc9 EprojInit_MotherBrainTubeFalling +0x86cbe7 EprojPreInstr_MotherBrainTubeFalling +0x86cbea MotherBrainTubeFallingFunc_GenerateExplosion +0x86cc08 MotherBrainTubeFallingFunc_Falling +0x86cc5b kEproj_MotherBrainTubeFalling_TopRight +0x86cc69 kEproj_MotherBrainTubeFalling_TopLeft +0x86cc77 kEproj_MotherBrainTubeFalling_TopMiddleLeft +0x86cc85 kEproj_MotherBrainTubeFalling_TopMiddleRight +0x86cdc5 EprojInit_MotherBrainGlassShatteringShard +0x86ce41 kEprojInit_MotherBrainGlassShatteringShard_InstrPtrs +0x86ce61 kEprojInit_MotherBrainGlassShatteringShard_X +0x86ce67 kEprojInit_MotherBrainGlassShatteringShard_Y +0x86ce6d EprojInit_MotherBrainGlassShatteringSparkle +0x86ce9b EprojPreInstr_MotherBrainGlassShatteringShard +0x86cefc kEproj_MotherBrainGlassShatteringShard +0x86cf0a kEproj_MotherBrainGlassShatteringSparkle +0x86cf18 kEproj_KiHunterAcidSpitLeft +0x86cf26 kEproj_KiHunterAcidSpitRight +0x86cf90 EprojInit_KiHunterAcidSpitLeft +0x86cfa6 EprojInit_KiHunterAcidSpitRight +0x86cfba EprojInit_KiHunterAcidSpitCommon +0x86cff7 nullsub_95 +0x86d02e kEproj_KagosBugs +0x86d088 EprojInit_KagosBugs +0x86d0b3 EprojPreInstr_KagosBugs_Func1 +0x86d0ca EprojPreInstr_KagosBugs +0x86d0eb nullsub_302 +0x86d0ec EprojPreInstr_D0EC +0x86d128 EprojPreInstr_D128 +0x86d15c EprojInstr_D15C +0x86d1b6 EprojInstr_D1B6 +0x86d1c7 EprojInstr_D1C7 +0x86d1ce EprojInstr_D1CE +0x86d1e4 EprojPreInstr_KagosBugs_Func2 +0x86d23a EprojInit_MaridiaFloatersSpikes +0x86d263 EprojPreInstr_MaridiaFloatersSpikes +0x86d298 kEproj_MaridiaFloatersSpikes +0x86d2a6 kEproj_WreckedShipRobotLaserUpLeft +0x86d2b4 kEproj_WreckedShipRobotLaserHorizontal +0x86d2c2 kEproj_WreckedShipRobotLaserDownLeft +0x86d2d0 kEproj_WreckedShipRobotLaserUpRight +0x86d2de kEproj_WreckedShipRobotLaserDownRight +0x86d30c EprojInit_WreckedShipRobotLaserDown +0x86d32e EprojInit_WreckedShipRobotLaserHorizontal +0x86d341 EprojInit_WreckedShipRobotLaserUp +0x86d35b EprojInit_WreckedShipRobotLaserCommon +0x86d3bf EprojPreInstr_WreckedShipRobotLaser +0x86d5e1 EprojInstr_AssignNewN00bTubeShardVelocity +0x86d5f2 EprojInstr_SetN00bTubeShardX +0x86d62a EprojInstr_D62A +0x86d69a EprojInstr_SetXvelRandom +0x86d6a5 EprojInit_N00bTubeCrack +0x86d6c9 EprojInit_N00bTubeShards +0x86d710 kEprojInit_N00bTubeShards_X +0x86d724 kEprojInit_N00bTubeShards_Y +0x86d738 kEprojInit_N00bTubeShards_Xvel +0x86d74c kEprojInit_N00bTubeShards_Yvel +0x86d760 kEprojInit_N00bTubeShards_InstrPtrs +0x86d774 EprojInit_N00bTubeReleasedAirBubbles +0x86d7a7 kEprojInit_N00bTubeReleasedAirBubbles_X +0x86d7b3 kEprojInit_N00bTubeReleasedAirBubbles_Y +0x86d7fd EprojPreInstr_N00bTubeShards +0x86d904 kEproj_N00bTubeCrack +0x86d912 kEproj_N00bTubeShards +0x86d920 kEproj_N00bTubeReleasedAirBubbles +0x86d97e kEprojPreInstr_SpikeShootingPlantSpikes +0x86d9db EprojPreInstr_SpikeShootingPlantSpikes +0x86d9e6 EprojPreInstr_SpikeShootingPlantSpikes_MoveY1 +0x86da10 EprojPreInstr_SpikeShootingPlantSpikes_MoveY2 +0x86da3a EprojPreInstr_SpikeShootingPlantSpikes_MoveX1 +0x86da64 EprojPreInstr_SpikeShootingPlantSpikes_MoveX2 +0x86da8e EprojPreInstr_SpikeShootingPlantSpikes_0_MoveX1 +0x86da93 EprojPreInstr_SpikeShootingPlantSpikes_2_MoveX2 +0x86da98 EprojPreInstr_SpikeShootingPlantSpikes_1_MoveY1 +0x86da9d EprojPreInstr_SpikeShootingPlantSpikes_4_MoveY2 +0x86daa2 EprojPreInstr_SpikeShootingPlantSpikes_6_MoveX1Y1 +0x86daaa EprojPreInstr_SpikeShootingPlantSpikes_8_MoveX1Y2 +0x86dab2 EprojPreInstr_SpikeShootingPlantSpikes_7_MoveX2Y1 +0x86daba EprojPreInstr_SpikeShootingPlantSpikes_9_MoveX2Y2 +0x86dac2 EprojPreInstrHelper_SpikeShootingPlantSpikes_Func1 +0x86dace EprojPreInstrHelper_SpikeShootingPlantSpikes_Func2 +0x86dafe kEproj_SpikeShootingPlantSpikes +0x86db18 EprojInit_DBF2 +0x86db5b EprojPreInstr_DBF2 +0x86db62 EprojPreInstr_DBF2_MoveX1 +0x86db8c EprojPreInstr_DBF2_MoveX2 +0x86dbb6 EprojPreInstr_DBF2_Func1 +0x86dbc2 EprojPreInstrHelper_DBF2_Func2 +0x86dbf2 Eproj_DBF2 +0x86dc5a EprojInstr_DC5A +0x86dc61 EprojInstr_SpawnEnemyDrops_0 +0x86dc77 EprojInstr_SpawnSporesEproj +0x86dc8d EprojInit_Spores +0x86dca3 EprojInit_SporeSpawnStalk +0x86dcd4 EprojInit_SporeSpawners +0x86dce6 kEprojInit_SporeSpawners_X +0x86dcee EprojPreInstr_Spores +0x86dd44 nullsub_96 +0x86dd45 nullsub_97 +0x86dd46 EprojPreInstr_SporeSpawners +0x86dd6c kSporeMovementData +0x86de6c kEproj_SporeSpawnsStalk +0x86de7a kEproj_Spores +0x86de88 kEproj_SporeSpawners +0x86ded6 EprojInit_NamiFuneFireball +0x86df39 EprojPreInstr_NamiFuneFireball +0x86df40 EprojInit_NamiFuneFireball_MoveX1 +0x86df6a EprojInit_NamiFuneFireball_MoveX2 +0x86df94 Eproj_NamiFuneFireball_After +0x86dfea EprojInstr_DFEA +0x86e000 EprojInit_LavaThrownByLavaman +0x86e050 Eproj_LavaThrownByLavaman_MoveX1 +0x86e07a Eproj_LavaThrownByLavaman_MoveX2 +0x86e0e0 kEproj_LavaThrownByLavaman +0x86e468 EprojInst_DustCloudOrExplosion +0x86e4a6 EprojInit_EyeDoorSmoke +0x86e4fe EprojPreInstr_DustCloudOrExplosion +0x86e508 EprojPreInstr_nullsub_98 +0x86e509 kEproj_DustCloudExplosion +0x86e517 kEproj_EyeDoorSmoke +0x86e525 kEproj_E525 +0x86e533 EprojInstr_SetYVel +0x86e5d0 EprojInit_SpawnedShotGate +0x86e5d5 EprojInit_ClosedDownwardsShotGate +0x86e5da EprojInit_ClosedUpwardsShotGate +0x86e5dd EprojInit_SpawnedGate_Common +0x86e604 EprojPreInstr_nullsub_99 +0x86e605 EprojPreInstr_E605 +0x86e6ad EprojInit_SaveStationElectricity +0x86e6d1 nullsub_100 +0x86e6d2 kEproj_SaveStationElectricity +0x86e6e0 CheckIfEprojIsOffScreen +0x86e722 Eproj_FuncE722 +0x86e73e Eproj_FuncE73E_MoveXY +0x86e7ab Eproj_AngleToSamus +0x86e9f1 kEprojInit_BotwoonsBody_InstrLists +0x86ea31 EprojInit_BotwoonsBody +0x86ea80 EprojPreInstr_BotwoonsBody +0x86ea98 Eproj_BotwoonsBody_Main +0x86eab4 Eproj_BotwoonsBodyHurtFlashHandling1 +0x86ead4 Eproj_BotwoonsBodyHurtFlashHandling2 +0x86eaf4 Eproj_BotwonsBodyFunction_Dying +0x86eb04 Eproj_BotwonsBodyFunction_Dying2 +0x86eb1f Eproj_BotwonsBodyFunction_DyingFalling +0x86eb93 nullsub_101 +0x86eb94 QueueSmallExplosionSfx +0x86eba0 kEproj_BotwoonsBody +0x86ebc6 EprojInit_BotwoonsSpit +0x86ec05 EprojPreInstr_BotwoonsSpit +0x86ec48 kEproj_BotwoonsSpit +0x86ec62 EprojInit_YappingMawsBody +0x86ec94 EprojPreInstr_Empty2 +0x86ec95 kEproj_YappingMawsBody +0x86ece3 EprojInstr_ECE3 +0x86ed17 EprojInstr_ED17 +0x86ee8b EprojInstr_QueueSfx2_9 +0x86ee97 EprojInstr_QueueSfx2_24 +0x86eea3 EprojInstr_QueueSfx2_B +0x86eeaf EprojInstr_EEAF +0x86ef10 EprojInstr_HandleRespawningEnemy +0x86ef29 EprojInit_F337 +0x86ef89 EprojInit_EnemyDeathExplosion +0x86efdf EprojPreInstr_Empty +0x86efe0 EprojPreInstr_Pickup +0x86f0bb Eproj_Pickup_SmallHealth +0x86f0ca Eproj_Pickup_BigHealth +0x86f0d9 Eproj_Pickup_PowerBombs +0x86f0e8 Eproj_Pickup_Missiles +0x86f0f7 Eproj_Pickup_SuperMissiles +0x86f106 RandomDropRoutine +0x86f264 RespawnEnemy +0x86f327 Trampoline_CallEnemyAiPointer_IGNORE +0x86f337 kEproj_Pickup +0x86f345 kEproj_EnemyDeathExplosion +0x86f391 EprojInit_Sparks +0x86f3f0 EprojPreInstr_Sparks +0x86f498 kEproj_Sparks +0x86f4a6 EprojColl_8676_Fixed +0x878000 EnableAnimtiles +0x87800b DisableAnimtiles +0x878016 ClearAnimtiles +0x878027 SpawnAnimtiles +0x878064 AnimtilesHandler +0x878085 ProcessAnimtilesObject +0x8780b2 AnimtilesInstr_Delete +0x8780b7 AnimtilesInstr_Goto +0x8780bc AnimtilesInstr_GotoRel +0x8780d4 AnimtilesInstr_DecrementTimerAndGoto +0x8780dc AnimtilesInstr_DecrementTimerAndGotoRel +0x8780e3 AnimtilesInstr_SetTimer +0x8780ef nullsub_104 +0x8780f0 AnimtilesInstr_QueueMusic +0x8780fc AnimtilesInstr_QueueSfx1 +0x878108 AnimtilesInstr_QueueSfx2 +0x878114 AnimtilesInstr_QueueSfx3 +0x878120 AnimtilesInstr_GotoIfBossBitSet +0x878133 AnimtilesInstr_SetBossBit +0x87813f AnimtilesInstr_GotoIfEventHappened +0x878150 AnimtilesInstr_SetEventHappened +0x87815a UNUSED_sub_87815A +0x878162 UNUSED_sub_878162 +0x8781ba AnimtilesInstr_WaitUntilAreaBossDead_DoubleRet +0x87824b kAnimtiles_Nothing +0x878251 kAnimtiles_VerticalSpikes +0x878257 kAnimtiles_HorizontalSpikes +0x87825d kAnimtiles_CrateriaLake +0x878263 kAnimtiles_CrateriaLava0 +0x878269 kAnimtiles_CrateriaLava1 +0x87826f kAnimtiles_WreckedShipScreen +0x878275 kAnimtiles_WreckedShipTradmillRight +0x87827b kAnimtiles_WreckedShipTradmillLeft +0x878281 kAnimtiles_BrinstarMouth +0x878287 kAnimtiles_MaridiaSandCeiling +0x87828d kAnimtiles_MaridiaSandFalling +0x8782ab kAnimtiles_Lava +0x8782c9 kAnimtiles_Acid +0x8782e7 kAnimtiles_Rain +0x8782fd kAnimtiles_Spores +0x878303 AnimtilesInstr_GotoIfBossBitSetInArea +0x878320 AnimtilesInstr_SpawnTourianStatueEyeGlow +0x87832f AnimtilesInstr_SpawnTourianStatueSoul +0x87833e AnimtilesInstr_GotoIfTourianStatueBusy +0x878349 AnimtilesInstr_TourianStatueSetState +0x878352 AnimtilesInstr_TourianStatueClearState +0x87835b AnimtilesInstr_Clear3PaletteColors +0x878372 AnimtilesInstr_SpawnPalfxObj +0x87837f AnimtilesInstr_Write8PaletteColors +0x87839c kAnimtilesInstr_Write8PaletteColors +0x87854c kAnimtiles_TourianStatue_Phantoon +0x878552 kAnimtiles_TourianStatue_Ridley +0x878558 kAnimtiles_TourianStatue_Kraid +0x87855e kAnimtiles_TourianStatue_Draygon +0x87ad64 kTileData_TourianEntranceStatueGhost +0x87b364 kTourianEntranceStatue_TileData +0x888000 LayerBlendingHandler +0x88803e kLayerBlendFuncTable +0x888074 nullsub_9 +0x888075 InitializeLayerBlending +0x888090 LayerBlendFunc_4_PhantoonIntro +0x888099 LayerBlendFunc_6 +0x8880a2 LayerBlendFunc_8 +0x8880ab LayerBlendFunc_A +0x8880b0 LayerBlendFunc_C +0x8880b7 nullsub_10 +0x8880b8 LayerBlendFunc_10 +0x8880c5 LayerBlendFunc_14 +0x8880ca LayerBlendFunc_16 +0x8880d9 LayerBlendFunc_1A +0x8880e8 LayerBlendFunc_1C +0x8880f5 LayerBlendFunc_18 +0x88810c nullsub_11 +0x88810d LayerBlendFunc_26 +0x888112 LayerBlendFunc_28 +0x88812a LayerBlendFunc_2A +0x888142 LayerBlendFunc_2C +0x888145 LayerBlendFunc_2E +0x88814a LayerBlendFunc_32 +0x888153 LayerBlendFunc_34 +0x888156 LayerBlendFunc_24 +0x88817b HandleLayerBlendingXrayCanShowBlocks +0x8881a4 HandleLayerBlendingXrayCantShowBlocks +0x8881db HandleLayerBlendingXrayFirefleaRoom +0x8881fe HandleLayerBlendingPowerBomb +0x888211 kLayerBlendPowerBombFuncs +0x888219 LayerBlendPowerBombFunc_0 +0x88823e LayerBlendPowerBombFunc_4 +0x888263 LayerBlendPowerBombFunc_6 +0x888288 EnableHdmaObjects +0x888293 DisableHdmaObjects +0x88829e WaitUntilEndOfVblankAndClearHdma +0x8882c1 InitializeSpecialEffectsForNewRoom +0x8883e1 PauseHook_Empty +0x8883e2 UNUSED_sub_8883E2 +0x8883f6 UNUSED_sub_8883F6 +0x88840a SpawnHdmaObjectToSlot0xA +0x888435 SpawnHdmaObject +0x888477 SpawnHdmaObjectInner +0x8884b8 nullsub_293 +0x8884b9 HdmaObjectHandler +0x88851c HdmaobjInstructionHandler +0x888569 HdmaobjInstr_Delete +0x888570 HdmaobjInstr_SetPreInstr +0x888584 HdmaobjInstr_ClearPreInstr +0x88858b HdmaobjInstr_CallFunc +0x88859d HdmaobjInstr_CallFuncWithArg +0x8885b4 HdmaobjInstr_CallFarFunc +0x8885ca Trampoline_loc_8885CA +0x8885cd HdmaobjInstr_CallFarFuncWithArg +0x8885e9 Trampoline_loc_8885E9 +0x8885ec HdmaobjInstr_Goto +0x8885f1 HdmaobjInstr_GotoRel +0x888607 HdmaobjInstr_DecrementAndGoto +0x88860f HdmaobjInstr_DecrementAndGotoRel +0x888616 HdmaobjInstr_SetTimer +0x888622 HdmaobjInstr_SetHdmaControl +0x888637 HdmaobjInstr_SetHdmaTarget +0x88864c HdmaobjInstr_SetHdmaTablePtr +0x888655 HdmaobjInstr_SetHdmaTableBank +0x88866a HdmaobjInstr_SetIndirectHdmaDataBank +0x88867f HdmaobjInstr_Skip +0x888682 HdmaobjInstr_Sleep +0x88868c RaiseOrLowerFx +0x8886ef HdmaobjPreInstr_Xray +0x888726 kHdmaobjPreInstr_XrayFuncs +0x888732 HdmaobjPreInstr_XrayFunc0_NoBeam +0x888753 nullsub_2 +0x888754 HdmaobjPreInstr_XrayFunc1_BeamWidening +0x8887ab HdmaobjPreInstr_XrayFunc2_FullBeam +0x8887c5 HandleMovingXrayUpDown +0x8887e0 MoveXrayUp +0x888835 MoveXrayDown +0x888896 CalculateXrayHdmaTable +0x888934 HdmaobjPreInstr_XrayFunc3_DeactivateBeam +0x8889ba HdmaobjPreInstr_XrayFunc4_DeactivateBeam +0x888a08 HdmaobjPreInstr_XrayFunc5_DeactivateBeam +0x888aa4 SpawnPowerBombExplosion +0x888b14 Hdmaobj_PreExplodeWhite +0x888b32 Hdmaobj_PreExplodeYellow +0x888b39 Hdmaobj_ExplodeYellow +0x888b47 Hdmaobj_ExplodeWhite +0x888b4e Hdmaobj_CleanUpTryCrystalFlash +0x888b8f HdmaobjPreInstr_PowerBombExplode_SetWindowConf +0x888b98 HdmaobjPreInstr_PowerBombExplode_Stage5_Afterglow +0x888bea CalculatePowerBombHdma_LeftOfScreen +0x888c12 CalculatePowerBombHdma_OnScreen +0x888c3a CalculatePowerBombHdma_RightOfScreen +0x888c62 CalculatePowerBombHdmaObjectTablePtrs +0x888cc6 CalculatePowerBombHdmaScaled_LeftOfScreen +0x888d04 CalculatePowerBombHdmaScaled_OnScreen +0x888d46 CalculatePowerBombHdmaScaled_RightOfScreen +0x888d85 kPowerBombExplosionColors +0x888de5 kPowerBombExplosionRadiusSpeed +0x888de7 kPowerBombExplosionRadiusAccel +0x888de9 HdmaobjPreInstr_PowerBombExplode_ExplosionYellow +0x888eb2 HdmaobjPreInstr_PowerBombExplode_ExplosionWhite +0x888f56 CalculatePowerBombHdmaTablePointers +0x888fba UNUSED_sub_888FBA +0x888ff8 UNUSED_sub_888FF8 +0x88903a UNUSED_sub_88903A +0x8890db kPowerBombPreExplosionRadiusSpeed +0x8890dd kPowerBombPreExplosionRadiusAccel +0x8890df HdmaobjPreInstr_PowerBombExplode_PreExplosionWhite +0x8891a8 HdmaobjPreInstr_PowerBombExplode_PreExplosionYellow +0x889246 kPowerBombExplosionShapeDef0 +0x88a2a6 SpawnCrystalFlashHdmaObjs +0x88a2e4 CrystalFlashSetupPart1 +0x88a309 CrystalFlashSetupPart2 +0x88a317 CrystalFlashCleanup +0x88a339 HdmaobjPreInstr_CrystalFlash_CustomLayerBlend +0x88a35d HdmaobjPreInstr_CrystalFlash_Stage2_AfterGlow +0x88a3b7 UNUSED_sub_88A3B7 +0x88a3df UNUSED_loc_88A3DF +0x88a407 UNUSED_sub_88A407 +0x88a42f CalculateCrystalFlashHdmaObjectTablePtrs +0x88a493 CalculateCrystalFlashHdmaDataTablesScaled_LeftOfScreen +0x88a4d1 CalculateCrystalFlashHdmaDataTablesScaled_OnScreen +0x88a513 CalculateCrystalFlashHdmaDataTablesScaled_RightOfScreen +0x88a552 HdmaobjPreInstr_CrystalFlash_Stage1_Explosion +0x88a61b FxTypeFunc_22_ScrollingSky +0x88a643 HdmaobjPreInstr_FxType22_BG3Yscroll +0x88a66c HdmaobjInstr_SetFlagB +0x88a673 HdmaobjPreInstr_BG3Xscroll +0x88a786 HdmaFunc_A786 +0x88a7d8 FxTypeFunc_20 +0x88a800 RoomSetupAsm_ScrollingSkyOcean +0x88a81c SetupSomeHdmaTablesBG3 +0x88a8c4 DamageSamusInTopRow +0x88ad38 nullsub_105 +0x88adb2 HdmaobjPreInstr_SkyLandBG2Xscroll +0x88adba HdmaobjPreInstr_SkyLandBG2Xscroll2 +0x88adc2 HdmaobjPreInstr_SkyLandBG2XscrollInner +0x88aec1 kHdmaScrollEntrys +0x88af8d RoomCode_ScrollingSkyLand +0x88af99 RoomMainAsm_ScrollingSkyOcean +0x88afa3 RoomMainAsm_ScrollingSky +0x88b058 kFirefleaFlashingShades +0x88b070 kFirefleaDarknessShades +0x88b07c FxTypeFunc_24 +0x88b0bc HdmaobjPreInstr_FirefleaBG3XScroll +0x88b11e UNUSED_sub_88B11E +0x88b17f ExpandingContractingHdmaEffect +0x88b21d HandleEarthquakeSoundEffect +0x88b278 nullsub_106 +0x88b279 FxTypeFunc_2_Lava +0x88b2a1 FxTypeFunc_4_Acid +0x88b2c9 FxHandleTide +0x88b341 nullsub_107 +0x88b342 nullsub_108 +0x88b343 FxRisingFunction_LavaAcid +0x88b367 FxRisingFunction_LavaAcid_WaitToRise +0x88b382 FxRisingFunction_LavaAcid_Raising +0x88b3a1 kLavaSoundEffects +0x88b3a9 HdmaobjInstr_B3A9 +0x88b3b0 HdmaobjPreInstr_LavaAcidBG3YScroll +0x88b4ce HdmaobjInstr_SetFlagB_Copy +0x88b4d5 HdmaobjPreInstr_LavaAcidBG2YScroll +0x88b51d Handle_LavaAcidBG2YScroll_Func1 +0x88b53b Handle_LavaAcidBG2YScroll_Func2 +0x88b5a9 Handle_LavaAcidBG2YScroll_Func3 +0x88c3ff FxTypeFunc_6_Water +0x88c428 FxRisingFunction_C428_WaterNormal +0x88c44c FxRisingFunction_WaterWaitToRise +0x88c458 FxRisingFunction_WaterRising +0x88c467 HdmaobjInstr_SetFlagB_Copy2 +0x88c48e HdmaobjPreInstr_WaterBG3XScroll +0x88c582 HdmaobjInstr_SetFlagB_Copy3 +0x88c589 HdmaobjPreInstr_WaterBG2XScroll +0x88c5e4 HdmaobjPreInstr_WaterBG2XScroll_Func2 +0x88c636 HdmaobjPreInstr_WaterBG2XScroll_Func1 +0x88d865 SpawnBG3ScrollHdmaObject +0x88d86e nullsub_109 +0x88d8de FxTypeFunc_28_CeresRidley +0x88d8ef nullsub_110 +0x88d928 FxTypeFunc_CeresElevator +0x88d931 nullsub_111 +0x88d949 HdmaobjInstr_SetVideoMode1 +0x88d950 FxTypeFunc_A_Rain +0x88d981 HdmaobjInstr_1938_RandomNumber +0x88d9a1 HdmaobjPreInstr_RainBg3Scroll +0x88da11 FxTypeFunc_8_Spores +0x88da47 HdmaobjPreInstr_SporesBG3Xscroll +0x88db08 FxTypeFunc_C +0x88db2e nullsub_112 +0x88db36 HdmaobjPreInstr_FogBG3Scroll +0x88db8a FxTypeFunc_26_TourianEntranceStatue +0x88dbd7 HdmaobjPreInstr_CheckLotsOfEventsHappened +0x88dc23 HdmaobjPreInstr_DC23 +0x88dc69 HdmaobjPreInstr_DC69 +0x88dcba HdmaobjPreInstr_DCBA +0x88dccb HdmaobjInstr_GotoIfEventHappened +0x88dd32 SpawnBombTorizoHaze +0x88dd43 HdmaobjPreInstr_BombTorizoHazeColorMathBgColor +0x88ddc7 FxTypeFunc_2C_Haze +0x88de10 HdmaobjPreInstr_HazeColorMathSubscreen_CeresRidleyAlive +0x88de15 HdmaobjPreInstr_HazeColorMathSubscreen_CeresRidleyDead +0x88de2d HdmaobjPreInstr_HazeColorMathSubscreen_FadingIn +0x88de74 HdmaobjPreInstr_HazeColorMathSubscreen_FadedIn +0x88de96 HdmaobjPreInstr_HazeColorMathSubscreen_FadingOut +0x88df91 nullsub_113 +0x88df92 nullsub_114 +0x88df93 nullsub_115 +0x88df94 HdmaobjPreInstr_DF94 +0x88e026 HdmaobjPreInstr_VariaSuitPickup +0x88e05c HdmaobjPreInstr_GravitySuitPickup +0x88e092 VariaSuitPickup_0_LightBeamAppears +0x88e0d7 VariaSuitPickup_1 +0x88e113 VariaSuitPickup_2_LightBeamWidens +0x88e1ba VariaSuitPickup_4_LightBeamShrinks +0x88e22b VariaSuitPickup_5_LightBeamDissipates +0x88e258 VariaSuitPickup_6 +0x88e25f GravitySuitPickup_6 +0x88e2b4 AdvanceSuitPickupColorMathSubscreenToWhite +0x88e2f9 AdvanceSuitPickupColorMathToOrange +0x88e320 VariaSuitPickup_3 +0x88e361 GravitySuitPickup_3 +0x88e3a2 AdvanceSuitPickupColorMathToBlue +0x88e449 HdmaobjPreInstr_E449 +0x88e4bd HdmaobjInstr_E4BD +0x88e567 HdmaobjPreInstr_E567 +0x88e71e MotherBrainRisingHdmaObject +0x88e726 nullsub_357 +0x88e748 SpawnMotherBrainRainbowBeamHdma +0x88e767 InitializeRainbowBeam +0x88e7bc HdmaobjPreInstr_E7BC +0x88e8d9 SpawnMorphBallEyeBeamHdma +0x88e917 HdmaobjInstr_InitMorphBallEyeBeamHdma +0x88e9e6 HdmaobjPreInstr_E9E6 +0x88ea3c HdmaobjPreInstr_EA3C +0x88eacb HdmaobjPreInstr_EACB +0x88eb58 SpawnTitleScreenGradientObjs +0x88eb9f HdmaobjInsr_ConfigTitleSequenceGradientHDMA +0x88ebb0 HdmaobjPreInstr_Backdrop_TitleSequenceGradient +0x88ebd2 HdmaobjPreInstr_ColorMathControlB_TitleGradient +0x88ebf0 SpawnIntroCutsceneCrossfadeHdma +0x88ec1d HdmaobjPreInstr_IntroCutsceneCrossfade +0x88ec3b CinematicFunction_Intro_Func133 +0x88ec9f HdmaobjInstr_EC9F_ClearVars +0x88ecb6 HdmaobjPreInstr_ECB6 +0x898000 kItemPlmGraphics_Bombs +0x898100 kItemPlmGraphics_GravitySuit +0x898200 kItemPlmGraphics_SpringBall +0x898300 kItemPlmGraphics_VariaSuit +0x898400 kItemPlmGraphics_HiJump +0x898500 kItemPlmGraphics_ScrewAttack +0x898600 kItemPlmGraphics_SpaceJump +0x898700 kItemPlmGraphics_MorphBall +0x898800 kItemPlmGraphics_GrappleBeam +0x898900 kItemPlmGraphics_XrayScope +0x898a00 kItemPlmGraphics_SpeedBooster +0x898b00 kItemPlmGraphics_ChargeBeam +0x898c00 kItemPlmGraphics_IceBeam +0x898d00 kItemPlmGraphics_WaveBeam +0x898e00 kItemPlmGraphics_PlasmaBeam +0x898f00 kItemPlmGraphics_SpazerBeam +0x899000 kItemPlmGraphics_ReserveTank +0x899800 kIndirectHdmaTable_PowerBombExplodeLeft +0x89a101 kIndirectHdmaTable_PowerBombExplodeRight +0x89ab02 LoadFxEntry +0x89ab82 LoadFXHeader +0x89acc3 RoomCode_CeresElevatorShaft +0x8a8000 kLayer3LavaTilemap +0x8a8840 kLayer3AcidTilemap +0x8a9080 kLayer3WaterTilemap +0x8a98c0 kLayer3SporesTilemap +0x8aa100 kLayer3RainTilemap +0x8aa940 kLayer3FogTilemap +0x8ab180 kLayer3ScrollingSkyTilemap_0 +0x8ab980 kLayer3ScrollingSkyTilemap_1 +0x8ac180 kLayer3ScrollingSkyTilemap_2 +0x8ac980 kLayer3ScrollingSkyTilemap_3 +0x8ad180 kLayer3ScrollingSkyTilemap_4 +0x8ad980 kLayer3ScrollingSkyTilemap_5 +0x8ae180 kLayer3ScrollingSkyTilemap_6 +0x8b8000 SetupPpuForTitleSequence +0x8b80da SetupPpu_Intro +0x8b819b SetupPpu_3_Mode7 +0x8b8230 SetupPpu_4_Mode1 +0x8b8293 SetupPpu_5_Mode7 +0x8b833a SetupPpu_6_Mode1 +0x8b83d3 SetupPpu_7_Mode1 +0x8b8488 UNUSED_Mode7TransformWithController +0x8b8518 HandleMode7TransformationNoRotation +0x8b8532 HandleMode7TransformationMatrix +0x8b858f Smult16x16Shr16 +0x8b85ee Umult16x16Shr16 +0x8b8666 HandleFadeIn_ +0x8b866b SetPpuBackdropSomeColor +0x8b8682 SetPpuBackdropBlack +0x8b8697 nullsub_5 +0x8b8698 UNUSED_DebugDisplayVersionInfo +0x8b87a0 UpdateCinematicBgTilemap +0x8b87d3 UpdateSamusEyesTilemap +0x8b8806 CinematicUpdateSomeBg +0x8b8839 ProcessCinematicBgObject +0x8b8849 ProcessCinematicBgObject_Nothing +0x8b884d ProcessCinematicBgObject_DrawChar +0x8b88b7 ProcessCinematicBgObject_DrawToTextTilemap +0x8b88fd ProcessCinematicBgObject_DrawToBgTilemap +0x8b8943 CinematicGetTilemapOffsetForTile +0x8b896b ProcessCinematicBgObject_Unk1 +0x8b89cf ProcessCinematicBgObject_Unk2 +0x8b8a2c Mult0x80Add +0x8b8a52 Samus_CalcPos_Mode7 +0x8b8ad9 CalcExplosion_Mode7 +0x8b8b66 CalcCeresSteamPos_Mode7 +0x8b8be9 CopyPalettesToFadingPalettes +0x8b8c09 DecomposePaletteDataForFading +0x8b8c5e ClearYColorsFromIndexX +0x8b8c83 FadeOutYColorsFromIndexX +0x8b8cb2 FadeInYColorsFromIndexX +0x8b8cea ComposeFadingPalettes +0x8b8d23 CinematicFunction_Intro_Func20 +0x8b8de6 TransferJapaneseTextTilesToVram +0x8b8e0d HandleSamusDuringIntro +0x8b8e2d DrawIntroSprites +0x8b8e52 CalcSinCos +0x8b8ea3 CalcSinMult +0x8b8ed9 MoveUnusedSpritesOffScreen_IGNORE +0x8b8f26 kMoveUnusedSpritesMasks +0x8b90b8 AdvanceFastScreenFadeOut +0x8b90d5 AdvanceSlowScreenFadeOut +0x8b9100 AdvanceFastScreenFadeIn +0x8b911b AdvanceSlowScreenFadeIn +0x8b9146 InitializeIoDisplayLogo +0x8b936b AddNintentoLogoToOam +0x8b938a SpawnCinematicSpriteObject +0x8b93a2 SpawnCinematicSpriteObjectToR18 +0x8b93ac SpawnCimenaticSpriteObjectInner +0x8b93d9 CinematicFunction_nullsub_116 +0x8b93da ClearCinematicSprites +0x8b93ef HandleCinematicSprites +0x8b9409 ProcessCinematicSpriteInstructionList +0x8b9438 CinematicSprInstr_Delete +0x8b9442 CinematicSprInstr_Sleep +0x8b944c CinematicSprInstr_SetPreInstr +0x8b9457 CinematicSprInstr_ClearPreInstr +0x8b945f CinematicFunction_nullsub_298 +0x8b9460 CinematicSprInstr_CallFunc +0x8b947b Trampoline_loc_8B947B +0x8b947e CinematicSprInstr_CallFuncWithArg +0x8b949f Trampoline_loc_8B949F +0x8b94a2 CinematicSprInstr_GotoRel +0x8b94bc CinematicSprInstr_Goto +0x8b94c3 CinematicSprInstr_DecTimerGoto +0x8b94cd CinematicSprInstr_DecTimerGotoRel +0x8b94d6 CinematicSprInstr_SetTimer +0x8b94e4 SpawnMode7Object +0x8b951d HandleMode7Objects +0x8b9537 ProcessMode7ObjectInstructions +0x8b956b Mode7Instr_Delete +0x8b9572 Mode7Instr_SetPreInstr +0x8b957d Mode7Instr_ClearPreInstr +0x8b9586 Mode7Instr_Goto +0x8b958d Mode7Instr_DecTimerAndGoto +0x8b9597 Mode7Instr_SetTimer +0x8b95a2 EnableCinematicBgObjects +0x8b95ad DisableCinematicBgObjects +0x8b95b8 EnableCinematicBgTilemapUpdates +0x8b95c3 DisableCinematicBgTilemapUpdates +0x8b95ce ClearCinematicBgObjects +0x8b95f0 SpawnCinematicBgObject +0x8b962f HandleCinematicBgObjects +0x8b9659 ProcessCinematicBgObjectsInstrs +0x8b9698 CinematicBgInstr_Delete +0x8b96a3 UNUSED_CinematicBgInstr_Goto +0x8b96ae UNUSED_sub_8B96AE +0x8b96b9 UNUSED_sub_8B96B9 +0x8b96c2 UNUSED_sub_8B96C2 +0x8b96dd UNUSED_sub_8B96DD +0x8b96e0 UNUSED_sub_8B96E0 +0x8b9704 UNUSED_sub_8B9704 +0x8b971e CinematicBgInstr_Goto +0x8b9725 UNUSED_sub_8B9725 +0x8b972f UNUSED_sub_8B972F +0x8b9738 UNUSED_sub_8B9738 +0x8b9746 DrawCinematicSpriteObjects_Intro +0x8b9799 DrawCinematicSpriteObjects_Ending +0x8b97f7 SpawnTextGlowObject +0x8b9828 HandleTextGlowObjects +0x8b9849 ProcessTextGlowObject +0x8b98e3 EnableTextGlowObjects? +0x8b98ee DisableTextGlowObjects? +0x8b98f9 CinematicFunction_Intro_Func128 +0x8b9932 CreditsObject_Init +0x8b9955 CreditsObject_Process +0x8b996a CreditsObject_ProcessOne +0x8b99c1 CreditsObject_Func1 +0x8b99fe IntroObject_Delete +0x8b9a06 IntroObject_Goto +0x8b9a0d IntroObject_DecTimerGoto +0x8b9a17 IntroObject_SetTimer +0x8b9a22 GameState_1_OpeningCinematic_ +0x8b9a47 CinematicFunctionNone +0x8b9a48 MaybeSkipCinematics +0x8b9a6c HandleCinematicsTransitions +0x8b9a83 HandleCinematicsTransitions_1 +0x8b9a9c HandleCinematicsTransitions_2 +0x8b9b1a CinematicSpriteInit_7 +0x8b9b2d CinematicSpriteInit_8 +0x8b9b40 CinematicSpriteInit_9 +0x8b9b53 HandleCinematicsTransitions_3 +0x8b9b68 CinematicFunctionOpening +0x8b9b87 LoadTitleSequenceGraphics +0x8b9cbc CinematicSpriteInit_0 +0x8b9ce1 CinematicSprInstr_9CE1 +0x8b9d17 CinematicFunc_Func2 +0x8b9d4a CinematicSpriteInit_1 +0x8b9d5d CinematicSprInstr_9D5D +0x8b9d90 CinematicFunc_Func4 +0x8b9dc3 CinematicSpriteInit_2 +0x8b9dd6 CinematicSprInstr_9DD6 +0x8b9e12 CinematicFunc_Func5 +0x8b9e45 CinematicSpriteInit_3 +0x8b9e58 CinematicSprInstr_Func8 +0x8b9e8b CinematicFunc_Func7 +0x8b9eb3 CinematicSpriteInit_4 +0x8b9ecd CinematicSprInstr_Func9 +0x8b9ed6 CinematicSpriteInit_5 +0x8b9ef0 CinematicSprInstr_sub_8B9EF0 +0x8b9eff CinematicSpriteInit_6 +0x8b9f19 CinematicSprInstr_9F19 +0x8b9f28 nullsub_117 +0x8b9f29 CinematicFunc_Func1 +0x8b9f52 CinematicFunc_Func10 +0x8b9fae CinematicFunc_Func9 +0x8ba00a ConfigureTitleSequenceGradientHDMA +0x8ba03b nullsub_118 +0x8ba03c nullsub_119 +0x8ba25b PlayBabyMetroidCry1 +0x8ba263 PlayBabyMetroidCry2 +0x8ba26b PlayBabyMetroidCry3 +0x8ba273 CinematicSetPal1 +0x8ba284 CinematicSetPal2 +0x8ba295 CinematicSetPal3 +0x8ba2a6 CinematicSetPal4 +0x8ba2b7 kCinematicPal1 +0x8ba2d7 kCinematicPal2 +0x8ba2f7 kCinematicPal3 +0x8ba317 kCinematicPal4 +0x8ba355 kMode7ObjBabyMetroidInTitle +0x8ba35b GameState_37_CeresGoesBoomWithSamus_ +0x8ba38f nullsub_120 +0x8ba390 nullsub_121 +0x8ba391 CinematicFunc_Nothing +0x8ba395 CinematicFunction_Intro_Initial +0x8ba5a7 CinematicFunction_Intro_FadeIn +0x8ba5bd CinematicFunction_Intro_DrawInitJpn +0x8ba5f8 CinematicFunction_Intro_LastMetroidCaptivity +0x8ba613 CinematicFunc_Intro_QueueGalaxyIsAtPeace +0x8ba639 CinematicFunc_Intro_WaitForQueueWait4secs +0x8ba64c CinematicFunc_Intro_FadeOut +0x8ba663 CinematicFunc_Intro_WaitForFadeOut +0x8ba66f CinematicFunc_Intro_SetupTextPage2 +0x8ba82b CinematicFunc_Intro_WaitFadeinShowText +0x8ba84a CinematicFunc_Intro_WaitForFadeinSleep +0x8ba856 ClearEnglishTextTilemap +0x8ba86a ClearJapaneseTextTiles +0x8ba8c1 SetSomeStuffForSpriteObject_2 +0x8ba8d4 nullsub_122 +0x8ba8d5 SetSomeStuffForSpriteObject_3 +0x8ba8e8 SetSomeStuffForSpriteObject_4_MetroidEgg +0x8ba903 CinematicSprPreInstr_A903 +0x8ba918 CinematicSprInstr_SpawnMetroidEggParticles +0x8ba958 SetSomeStuffForSpriteObject_6 +0x8ba97c kSetSomeStuffForSpriteObject_6_Tab +0x8ba994 SetSomeStuffForSpriteObject_7 +0x8ba9ea kSetSomeStuffForSpriteObject_7_Tab0 +0x8baa02 kSetSomeStuffForSpriteObject_7_Tab1 +0x8baa9a SetSomeStuffForSpriteObject_8 +0x8baab3 SetSomeStuffForSpriteObject_9 +0x8bab35 kSetSomeStuffForSpriteObject_9_Tab0 +0x8bab49 kSetSomeStuffForSpriteObject_9_Tab2 +0x8bac41 kSetSomeStuffForSpriteObject_9_Tab1 +0x8bad55 SetSomeStuffForSpriteObject_10 +0x8bad68 SetSomeStuffForSpriteObject_11 +0x8bad93 SetSomeStuffForSpriteObject_12 +0x8bada6 SetSomeStuffForSpriteObject_13 +0x8badd4 CinematicBgInstr_SetSomeStuffForSpriteObject_14 +0x8bade1 SetSomeStuffForSpriteObject_15 +0x8badee SetSomeStuffForSpriteObject_16 +0x8bae07 SetSomeStuffForSpriteObject_17 +0x8bae1a SetSomeStuffForSpriteObject_18 +0x8bae43 CinematicBgInstr_HandleCreateJpnText_Page1 +0x8bae5b CinematicBgInstr_SpawnMarkerWaitInput_Page1 +0x8bae79 CinematicBgInstr_HandleCreateJpnText_Page2 +0x8bae91 CinematicBgInstr_SpawnMarkerWaitInput_Page2 +0x8baeb8 CinematicFunction_Intro_WaitInputSetupMotherBrainFight +0x8baf6c CinematicFunction_Intro_WaitInputSetupBabyMetroid +0x8bb018 CinematicFunction_Intro_SetupTransitionToGameplay +0x8bb074 CinematicBgInstr_HandleCreateJpnText_Page3 +0x8bb08c CinematicBgInstr_SpawnMarkerWaitInput_Page3 +0x8bb0b3 CinematicBgInstr_HandleCreateJpnText_Page4 +0x8bb0cb CinematicBgInstr_SpawnMarkerWaitInput_Page4 +0x8bb0f2 CinematicFunction_Intro_Func11 +0x8bb123 CinematicFunction_Intro_Func12 +0x8bb151 CinematicFunction_Intro_Func13 +0x8bb19b CinematicBgInstr_HandleCreateJpnText_Page5 +0x8bb1b3 CinematicBgInstr_SpawnMarkerWaitInput_Page5 +0x8bb1da CinematicFunction_Intro_Func15 +0x8bb207 CinematicFunction_Intro_Func15b +0x8bb228 CinematicBgInstr_Func16 +0x8bb240 CinematicBgInstr_Func17 +0x8bb250 CinematicFunction_Intro_XfadeGameplayFade +0x8bb2d2 CinematicFunction_Intro_XfadeScientistFade +0x8bb336 CinematicSprInstr_StartIntroPage2 +0x8bb33e CinematicSprInstr_StartIntroPage3 +0x8bb346 CinematicSprInstr_StartIntroPage4 +0x8bb34e CinematicSprInstr_StartIntroPage5 +0x8bb354 Instr_StartIntroPage_Common +0x8bb35f CinematicFunction_Intro_Page2 +0x8bb370 CinematicFunction_Intro_Page3 +0x8bb381 CinematicFunction_Intro_Page4 +0x8bb392 CinematicFunction_Intro_Page5 +0x8bb3a1 CinematicFunction_Intro_SetupStuff +0x8bb3f4 CinematicFunction_Intro_Fadestuff +0x8bb458 CinematicFunction_Intro_Fadestuff2 +0x8bb4bc CinematicBgPreInstr_SamusBlink +0x8bb4dc CinematicFunction_Intro_Func19 +0x8bb4eb CinematicFunction_Intro_Func18 +0x8bb519 EnableCinematicBgTilemapUpdates_ +0x8bb54f EnableCinematicBgTilemapUpdates__0 +0x8bb554 CinematicFunction_Intro_Func21 +0x8bb585 CinematicFunction_Intro_Func22 +0x8bb5b8 CinematicFunction_Intro_ThenWaitInputSetupBabyMetroid +0x8bb5c3 CinematicFunction_Intro_Func23 +0x8bb5ee CinematicFunction_Intro_Func24 +0x8bb61b CinematicFunction_Intro_Func25 +0x8bb626 CinematicFunction_Intro_Func26 +0x8bb657 CinematicFunction_Intro_Func27 +0x8bb68a CinematicFunction_Intro_Func28 +0x8bb695 CinematicFunction_Intro_Func29 +0x8bb6c0 CinematicFunction_Intro_Func30 +0x8bb6ed CinematicFunction_Intro_Func31 +0x8bb6f8 CinematicFunction_Intro_Func32 +0x8bb70b EnableCinematicBgTilemapUpdates__ +0x8bb710 nullsub_26 +0x8bb711 CinematicFunction_Intro_Func33 +0x8bb72f CinematicFunction_Intro_Func34 +0x8bb773 CinematicFunction_Intro_Func35 +0x8bb786 CinematicFunction_Intro_Func36 +0x8bb80f CinematicFunction_Intro_Func39 +0x8bb82e CinematicSprPreInstr_B82E +0x8bb846 CinematicFunction_Intro_Func37 +0x8bb877 CinematicFunction_Intro_Func40 +0x8bb896 CinematicFunction_Intro_Func42 +0x8bb8b5 kCinematicFunction_Intro_Func42_Tab0 +0x8bb8bd kCinematicFunction_Intro_Func42_Tab1 +0x8bb8c5 CinematicSprInstr_Func43 +0x8bb8d8 CinematicFunction_Intro_Func44 +0x8bb93b CinematicFunction_Intro_Func45 +0x8bb985 kCinematicFunction_Intro_Func45_Tab0 +0x8bb98d CinematicFunction_Intro_Func46 +0x8bb9b6 kCinematicFunction_Intro_Func46_Tab0 +0x8bb9c0 kCinematicFunction_Intro_Func46_Tab1 +0x8bb9ca kCinematicFunction_Intro_Func46_Tab2 +0x8bb9d4 CinematicFunction_Intro_Func47 +0x8bb9fd kCinematicFunction_Intro_Func47_Tab0 +0x8bba03 kCinematicFunction_Intro_Func47_Tab1 +0x8bba09 kCinematicFunction_Intro_Func47_Tab2 +0x8bba0f CinematicFunction_Intro_Func48 +0x8bba21 CinematicSprInstr_SpawnIntroRinkas01 +0x8bba36 CinematicSprInstr_SpawnIntroRinkas23 +0x8bba4b CinematicFunction_Intro_Func49 +0x8bba5e CinematicFunction_Intro_Func50 +0x8bba73 CinematicFunction_Intro_Func51 +0x8bbb0d CinematicFunction_Intro_Func52 +0x8bbb24 CinematicFunction_Intro_Func53 +0x8bbc08 ResetButtonAssignmentsToDefault +0x8bbc75 RevertButtonConfig +0x8bbca0 CinematicFunction_Intro_Func54 +0x8bbde4 CinematicFunction_Intro_Func55 +0x8bbdf9 CinematicFunction_Intro_Func56 +0x8bbe74 kCinematicFunction_Intro_Func56_M7 +0x8bbe7e CinematicFunction_Intro_Func57 +0x8bbeb5 CinematicFunction_Intro_Func58 +0x8bbf22 CinematicFunction_Intro_Func59 +0x8bbf35 CinematicFunction_Intro_Func60 +0x8bbf4c CinematicFunction_Intro_Func61 +0x8bbf5f CinematicFunction_Intro_Func62 +0x8bbf76 CinematicFunction_Intro_Func63 +0x8bbf89 CinematicFunction_Intro_Func64 +0x8bbfa0 CinematicFunction_Intro_Func65 +0x8bbfc6 CinematicFunction_Intro_Func66 +0x8bbfd9 CinematicSprPreInstr_nullsub_300 +0x8bbfda CinematicFunction_Intro_Func67 +0x8bc083 CinematicFunction_Intro_Func68 +0x8bc096 CinematicCommonInstr_Func69 +0x8bc0a2 CinematicCommonInstr_Func70 +0x8bc0b2 CinematicFunction_Intro_Func71 +0x8bc0c5 CinematicFunction_Intro_Func72 +0x8bc100 CinematicFunction_Intro_Func73 +0x8bc11b CinematicFunctionBlackoutFromCeres +0x8bc2e4 CinematicFunction_Intro_Func74 +0x8bc2f1 CinematicFunction_Intro_Func75 +0x8bc345 CinematicFunction_Intro_Func76 +0x8bc3e6 kCinematicFunction_Intro_Func76_M7_0 +0x8bc3f0 kCinematicFunction_Intro_Func76_M7_1 +0x8bc3fa kCinematicFunction_Intro_Func76_M7_2 +0x8bc404 CinematicSprInstr_SpawnCeresExplosions1 +0x8bc434 CinematicFunction_Intro_Func78 +0x8bc46b kCinematicFunction_Intro_Func78_Tab0 +0x8bc475 kCinematicFunction_Intro_Func78_Tab1 +0x8bc47f kCinematicFunction_Intro_Func78_Tab2 +0x8bc489 CinematicSprPreInstr_C489 +0x8bc4b9 CinematicFunction_Intro_Func80 +0x8bc50b nullsub_123 +0x8bc50c CinematicSprInstr_SpawnCeresExplosions3 +0x8bc533 CinematicFunction_Intro_Func81 +0x8bc56a kCinematicFunction_Intro_Func81_Tab0 +0x8bc572 kCinematicFunction_Intro_Func81_Tab1 +0x8bc57a kCinematicFunction_Intro_Func81_Tab2 +0x8bc582 CinematicFunction_Intro_Func82 +0x8bc5a9 CinematicFunction_Intro_Func83 +0x8bc5ca CinematicFunction_Intro_Func77 +0x8bc610 CinematicFunction_Intro_Func84 +0x8bc627 CinematicFunction_Intro_Func85 +0x8bc699 CinematicFunction_Intro_Func86 +0x8bc79c CinematicFunction_Intro_Func87 +0x8bc7ca CinematicFunction_Intro_Func88 +0x8bc83b CinematicFunction_Intro_Func89 +0x8bc84e CinematicFunction_Intro_Func90 +0x8bc85d CinematicFunction_Intro_Func91 +0x8bc897 CinematicFunction_Intro_Func92 +0x8bc8aa CinematicFunction_Intro_Func93 +0x8bc8b9 CinematicFunction_Intro_Func94 +0x8bc8f9 CinematicFunction_Intro_Func96 +0x8bc908 CinematicFunction_Intro_Func97 +0x8bc942 CinematicFunction_Intro_Func98 +0x8bc956 CinematicFunction_Intro_Func99 +0x8bc96a CinematicFunction_Intro_Func100 +0x8bc97e CinematicFunction_Intro_Func101 +0x8bc992 CinematicFunction_Intro_Func102 +0x8bc9a5 CinematicSprInstr_C9A5 +0x8bc9af CinematicSprInstr_C9AF +0x8bc9bd CinematicSprInstr_C9BD +0x8bc9c7 CinematicSprInstr_C9C7 +0x8bc9e6 CinematicFunction_Intro_Func104 +0x8bc9f9 CinematicFunction_Intro_Func105 +0x8bca36 CinematicFunction_Intro_Func106 +0x8bca85 CinematicFunction_Intro_Func107 +0x8bcad0 CinematicFunction_Intro_Func108 +0x8bcade nullsub_124 +0x8bcadf CinematicFunction_Intro_Func95 +0x8bd443 GameState_39_EndingAndCredits_ +0x8bd474 MaybeHandleCinematicBgObjects +0x8bd480 CinematicFunctionEscapeFromCebes +0x8bd6d7 CinematicFunction_Intro_Func109 +0x8bd6f2 CinematicFunction_Intro_Func110 +0x8bd701 CinematicFunction_Intro_Func111 +0x8bd731 CinematicFunction_Intro_Func112 +0x8bd7f8 CinematicFunction_Intro_Func113 +0x8bd807 CinematicFunction_Intro_Func114 +0x8bd837 CinematicFunction_Intro_Func115 +0x8bda02 CinematicFunction_Intro_Func116 +0x8bda1a CinematicFunction_Intro_Func117 +0x8bdad3 CinematicFunction_Intro_Func118 +0x8bdb5d kCinematicFunction_Intro_Func118_Tab0 +0x8bdb7d kCinematicFunction_Intro_Func118_Tab1 +0x8bdb9d nullsub_125 +0x8bdb9e CinematicFunction_Intro_Func119 +0x8bdbc4 CinematicFunction_Intro_Func120 +0x8bdc4c CinematicFunction_Intro_Func122 +0x8bdca5 CinematicFunction_Intro_Func121 +0x8bdd02 kCinematicFunction_Intro_Func121_Tab0 +0x8bdd42 CinematicFunction_Intro_Func123 +0x8bddad kCinematicFunction_Intro_Func123_Tab0 +0x8bddcd CinematicFunction_Intro_Func124 +0x8bde63 nullsub_126 +0x8bde64 CinematicFunction_Intro_Func125 +0x8bde80 CinematicFunction_Intro_Func126 +0x8be0f4 CinematicFunction_Intro_Func129 +0x8be110 CinematicFunction_Intro_Func130 +0x8be158 CinematicFunction_Intro_Func131 +0x8be190 CinematicFunction_Intro_Func132 +0x8be1d2 CinematicFunction_Intro_Func134 +0x8be265 CinematicFunction_Intro_Func136 +0x8be293 CinematicFunction_Intro_Func135 +0x8be2dd CinematicFunction_Intro_Func137 +0x8be314 CinematicFunction_Intro_Func138 +0x8be342 CinematicFunction_Intro_Func145 +0x8be3ae CinematicFunction_Intro_Func139 +0x8be409 CinematicFunction_Intro_Func140 +0x8be41f CinematicFunction_Intro_Func142 +0x8be45a kCinematicFunction_Intro_Func142_Tab0 +0x8be48a CinematicFunction_Intro_Func141 +0x8be504 CinematicFunction_Intro_Func143 +0x8be58a CinematicFunction_Intro_Func144 +0x8be5e7 kCinematicFunction_Intro_Func144_Tab0 +0x8be627 CalcItemPercentageCount +0x8be769 CinematicFunction_Intro_Func146 +0x8be780 CinematicFunction_Intro_Func147 +0x8be797 CinematicFunction_Intro_Func148 +0x8be7ba nullsub_127 +0x8be7bb CinematicFunction_Intro_Func127 +0x8be812 CinematicFunction_Intro_Func149 +0x8bef99 CinematicFunction_Intro_Func150 +0x8befb2 CinematicFunction_Intro_Func151 +0x8befea CinematicFunction_Intro_Func152 +0x8beffd CinematicFunction_Intro_Func153 +0x8bf005 CinematicFunction_Intro_Func154 +0x8bf018 CinematicFunction_Intro_Func155 +0x8bf02b CinematicFunction_Intro_Func156 +0x8bf03e CinematicFunction_Intro_Func157 +0x8bf051 CinematicFunction_Intro_Func158 +0x8bf05e CinematicFunction_Intro_Func159 +0x8bf06d CinematicFunction_Intro_Func161 +0x8bf07c CinematicFunction_Intro_Func162 +0x8bf085 CinematicFunction_Intro_Func163 +0x8bf094 CinematicFunction_Intro_Func164 +0x8bf0a3 CinematicFunction_Intro_Func160 +0x8bf0b2 CinematicFunction_Intro_Func165 +0x8bf0b8 CinematicFunction_F0B8 +0x8bf0e1 CinematicFunction_Intro_Func166 +0x8bf0e9 CinematicFunction_Intro_Func167 +0x8bf0f1 CinematicFunction_Intro_Func168 +0x8bf0f9 CinematicFunction_Intro_Func169 +0x8bf11e CinematicFunction_Intro_Func170 +0x8bf143 CinematicFunction_Intro_Func171 +0x8bf156 CinematicFunction_Intro_Func172 +0x8bf169 CinematicFunction_Intro_Func173 +0x8bf17c CinematicFunction_Intro_Func174 +0x8bf18f CinematicFunction_Intro_Func175 +0x8bf1a8 CinematicFunction_Intro_Func176 +0x8bf1c1 CinematicFunction_Intro_Func177 +0x8bf1d4 CinematicFunction_Intro_Func178 +0x8bf1e7 CinematicFunction_Intro_Func179 +0x8bf227 CinematicFunction_Intro_Func180 +0x8bf25e CinematicSprInstr_Func181 +0x8bf284 CinematicSprInstr_Func182 +0x8bf295 CinematicSprInstr_Func183 +0x8bf2a5 CinematicFunction_Intro_Func184 +0x8bf2b7 CinematicSprInstr_Func185 +0x8bf2fa CinematicSprInstr_Func186 +0x8bf32b CinematicSprInstr_Func187 +0x8bf35a CinematicSprPreInstr_F35A +0x8bf375 CinematicFunction_Intro_Func189 +0x8bf39b CinematicFunction_Intro_Func189b +0x8bf3b0 CinematicSprInstr_Func190 +0x8bf3b9 CinematicFunction_Intro_Func191 +0x8bf3ce CinematicSprInstr_Func192 +0x8bf41b CinematicSprInstr_Func193 +0x8bf424 CinematicSprInstr_Func194 +0x8bf42d CinematicSprInstr_Func195 +0x8bf436 CinematicSprInstr_Func196 +0x8bf43f CinematicSprInstr_Func197 +0x8bf448 CinematicSprInstr_Func198 +0x8bf455 CinematicFunction_Intro_Func199 +0x8bf464 CinematicFunction_Intro_Func200 +0x8bf478 CinematicFunction_Intro_Func201 +0x8bf487 CinematicFunction_Intro_Func202 +0x8bf49b CinematicFunction_Intro_Func203 +0x8bf4aa CinematicFunction_Intro_Func204 +0x8bf4d1 CinematicFunction_Intro_Func205 +0x8bf4e0 CinematicFunction_Intro_Func206 +0x8bf507 CinematicFunction_Intro_Func207 +0x8bf51c nullsub_128 +0x8bf51d CinematicSprInstr_Func208 +0x8bf528 CinematicSprPreInstr_F528 +0x8bf554 CinematicSprInstr_Func211 +0x8bf57f CinematicSprPreInstr_F57F +0x8bf597 CinematicSprInstr_Func213 +0x8bf5ba CinematicSprInstr_Func214 +0x8bf5dd CinematicFunction_Intro_Func215 +0x8bf604 CinematicSprInstr_Func217 +0x8bf651 CinematicSprInstr_Func218 +0x8bf65b CinematicFunction_Intro_Func210_EndingSamusFall +0x8bf682 CinematicFunction_Intro_Func216 +0x8bf6fe CinematicFunction_Intro_Func219 +0x8bf760 PatchClearMFlag_IGNORE +0x8c8000 kSpriteMap_BetaMetroidLogo +0x8c80bb kSpriteMap_NintendoLogo +0x8c8103 kSpriteMap_Copy1994Nintendo +0x8c8137 kSpriteMap_1993RD1Produce +0x8c81cf kSpriteMap_ProjectSamusFeaturedIn +0x8c82ad kSpriteMap_Metroid3 +0x8c82ff kSpriteMap_NintendoPresents +0x8c833d kSpriteMap_SuperMetroidTitleScreen +0x8cbec3 kLevelData_MotherBrainRoomFromCutscene +0x8cc083 kLevelData_RoomWithBabyMetroidHatching +0x8cdfdb kYourRateForCollectingIs +0x8ce0af kSeeYouNextMission +0x8ce3e9 kPalettes_Intro +0x8ce5e9 kPalettes_Intro2 +0x8ce7e9 kPalettes_Intro4 +0x8ce9e9 kPalettes_Intro5 +0x8cebe9 kPalettes_Intro6 +0x8cede9 kPalettes_Intro3 +0x8dc4c2 EnablePaletteFx +0x8dc4cd DisablePaletteFx +0x8dc4d8 ClearPaletteFXObjects +0x8dc4e9 SpawnPalfxObject +0x8dc526 PalPreInstr_nullsub_129 +0x8dc527 PaletteFxHandler +0x8dc54a PalFx_ProcessOne +0x8dc594 nullsub_296 +0x8dc595 PalInstr_Finish +0x8dc599 PalInstr_ColorPlus2 +0x8dc5a2 PalInstr_ColorPlus3 +0x8dc5ab PalInstr_ColorPlus4 +0x8dc5b4 PalInstr_ColorPlus8 +0x8dc5bd PalInstr_ColorPlus9 +0x8dc5c6 PalInstr_ColorPlus15 +0x8dc5cf PalInstr_Delete +0x8dc5d4 PalInstr_SetPreInstr +0x8dc5dd PalInstr_ClearPreInstr +0x8dc5e4 PalInstr_CallFunc +0x8dc5fb Trampoline_loc_8DC5FB +0x8dc5fe PalInstr_CallFuncWithArg +0x8dc61b Trampoline_loc_8DC61B +0x8dc61e PalInstr_Goto +0x8dc623 PalInstr_GotoRel +0x8dc639 PalInstr_DecTimerGoto +0x8dc641 PalInstr_DecTimerGotoRel +0x8dc648 PalInstr_SetTimer +0x8dc654 nullsub_130 +0x8dc655 PalInstr_SetColorIndex +0x8dc65e PalInstr_QueueMusic +0x8dc66a PalInstr_QueueSfx1 +0x8dc673 PalInstr_QueueSfx2 +0x8dc67c PalInstr_QueueSfx3 +0x8dc685 nullsub_131 +0x8dc696 kPalfxInstrList_C696 +0x8dc7ac kPalfxInstrList_C7AC +0x8dc7f2 kPalfxInstrList_C7F2 +0x8dc7fa kPalfxInstrList_C7FA +0x8dc862 kPalfxInstrList_C862 +0x8dc87a kPalfxInstrList_C87A +0x8dc88e kPalfxInstrList_C88E +0x8dc906 kPalfxInstrList_C906 +0x8dc90e kPalfxInstrList_C90E +0x8dc964 kPalfxInstrList_C964 +0x8dc9ba kPalfxInstrList_C9BA +0x8dca4e kPalfxInstrList_CA4E +0x8dcaaa kPalfxInstrList_CAAA +0x8dcb3c kPalfxInstrList_CB3C +0x8dcd62 kPalfxInstrList_CD62 +0x8dd362 kPalfxInstrList_D362 +0x8dd36a kPalfxInstrList_D36A +0x8dd3ca kPalfxInstrList_D3CA +0x8dd44a kPalfxInstrList_D44A +0x8dd48e kPalfxInstrList_D48E +0x8dd5a4 kPalfxInstrList_D5A4 +0x8dd6ba kPalfxInstrList_D6BA +0x8dd900 kPalfxInstrList_D900 +0x8dd9d0 kPalfxInstrList_D9D0 +0x8ddb62 kPalfxInstrList_DB62 +0x8ddcc8 kPalfxInstrList_DCC8 +0x8dde2e kPalfxInstrList_DE2E +0x8ddf94 kPalfxInstrList_DF94 +0x8de194 kPalfx_E194 +0x8de198 kPalfx_E198 +0x8de19c kPalfx_E19C +0x8de1a0 kPalfx_E1A0 +0x8de1a4 kPalfx_E1A4 +0x8de1a8 kPalfx_E1A8 +0x8de1ac kPalfx_E1AC +0x8de1b0 kPalfx_E1B0 +0x8de1b8 kPalfx_E1B8 +0x8de1bc kPalfx_E1BC +0x8de1c4 kPalfx_E1C4 +0x8de1c8 kPalfx_E1C8 +0x8de1cc kPalfx_E1CC +0x8de1d0 kPalfx_E1D0 +0x8de1d4 kPalfx_E1D4 +0x8de1d8 kPalfx_E1D8 +0x8de1dc kPalfx_E1DC +0x8de1e0 kPalfx_E1E0 +0x8de1e4 kPalfx_E1E4 +0x8de1e8 kPalfx_E1E8 +0x8de200 kPalfx_E200 +0x8de204 PalInit_E1BC +0x8de20b PalPreInstr_E1BC +0x8de220 kPalfxInstrList_E220 +0x8de222 kPalfxInstrList_E222 +0x8de22a kPalfxInstrList_E22A +0x8de232 kPalfxInstrList_E232 +0x8de23a kPalfxInstrList_E23A +0x8de2e0 PalPreInstr_CheckEnemy0Health +0x8de2e9 kPalfxInstrList_E2E9 +0x8de331 kPalfxInstrList_E331 +0x8de379 PalPreInstr_SamusInHeat +0x8de440 PalInit_F761_Norfair1 +0x8de45e kPalfxInstrList_E45E +0x8deae2 kPalfxInstrList_EAE2 +0x8deb2a PalInstr_SetTimerIfBossBit +0x8deb3b kPalfxInstrList_EB3B +0x8dec59 PalPreInstr_SwitchIfYpos +0x8dec6e kPalfxInstrList_EC6E +0x8ded84 PalPreInstr_SwitchIfYpos2 +0x8ded99 kPalfxInstrList_ED99 +0x8dee2d kPalfxInstrList_EE2D +0x8deec5 PalPreInstr_DeletePalfxIfMinibossDead +0x8deed7 kPalfxInstrList_EED7 +0x8deff7 kPalfxInstrList_EFF7 +0x8df08e kPalfxInstrList_F08E +0x8df1c6 PalInstr_SetPalfxIndex +0x8df1d1 kPalfxInstrList_F1D1 +0x8df2d9 kPalfxInstrList_F2D9 +0x8df3e1 kPalfxInstrList_F3E1 +0x8df4e9 kPalfxInstrList_F4E9 +0x8df541 kPalfxInstrList_F541 +0x8df579 kPalfxInstrList_F579 +0x8df621 PalPreInstr_F621 +0x8df62a kPalfxInstrList_F62A +0x8df632 kPalfxInstrList_F632 +0x8df730 PalInit_F779_Brinstar8 +0x8df745 kPalfx_F745 +0x8df749 kPalfx_F749 +0x8df74d kPalfx_F74D +0x8df751 kPalfx_F751 +0x8df755 kPalfx_F755 +0x8df761 kPalfx_F761 +0x8df765 kPalfx_F765 +0x8df76d kPalfx_F76D +0x8df775 kPalfx_F775 +0x8df779 kPalfx_F779 +0x8df77d kPalfx_F77D +0x8df781 kPalfx_F781 +0x8df785 kPalfx_F785 +0x8df789 kPalfx_F789 +0x8df78d kPalfx_F78D +0x8df791 kPalfx_F791 +0x8df795 kPalfx_F795 +0x8df799 kPalfx_F799 +0x8df79d kPalfx_F79D +0x8df7a1 kPalfx_F7A1 +0x8df7a5 kPalfx_F7A5 +0x8df7a9 kPalfxInstrList_F7A9 +0x8df891 kPalfxInstrList_F891 +0x8df941 kPalfxInstrList_F941 +0x8df949 kPalfxInstrList_F949 +0x8dfa69 kPalfxInstrList_FA69 +0x8dfbc1 kPalfxInstrList_FBC1 +0x8dfc5f kPalfxInstrList_FC5F +0x8dfcfd kPalfxInstrList_FCFD +0x8dfe01 kPalfxInstrList_FE01 +0x8dff27 kPalfxInstrList_FF27 +0x8dffc9 kPalfx_FFC9 +0x8dffcd kPalfx_FFCD +0x8dffd1 kPalfx_FFD1 +0x8dffd5 kPalfx_FFD5 +0x8dffd9 kPalfx_FFD9 +0x8dffdd kPalfx_FFDD +0x8dffe1 kPalfx_FFE1 +0x8dffe5 kPalfx_FFE5 +0x8dffe9 kPalfx_FFE9 +0x8dffed kPalfx_FFED +0x8e8000 kMenuBG12Tiles +0x8ed600 kAreaSelectMapBG3Tiles +0x8edc00 kZebesAndStarsTilemap +0x8ee400 kMenuPalettes +0x8f8000 kRoomPlms_91F8_3 +0x8f8026 kRoomPlms_91F8_0 +0x8f8058 kRoomPlms_92B3_1 +0x8f805a kRoomPlms_92FD_2 +0x8f8104 kRoomPlms_92FD_0 +0x8f81cc kRoomPlms_93AA +0x8f81d4 kRoomPlms_93D5 +0x8f81dc kRoomPlms_93FE +0x8f81fc kRoomPlms_9461 +0x8f81fe kRoomPlms_948C +0x8f8230 kRoomPlms_94CC +0x8f8238 kRoomPlms_94FD +0x8f823a kRoomPlms_9552 +0x8f823c kRoomPlms_957D +0x8f823e kRoomPlms_95A8 +0x8f8246 kRoomPlms_95D4 +0x8f8248 kRoomPlms_95FF +0x8f8250 kRoomPlms_962A +0x8f825e kRoomPlms_965B +0x8f826c kRoomPlms_968F +0x8f826e kRoomPlms_96BA_2 +0x8f830c kRoomPlms_96BA_0 +0x8f83b6 kRoomPlms_975C_1 +0x8f83d0 kRoomPlms_975C_0 +0x8f83f6 kRoomPlms_97B5_1 +0x8f83fe kRoomPlms_9804_2 +0x8f8412 kRoomPlms_9804_0 +0x8f8420 kRoomPlms_9879_2 +0x8f8428 kRoomPlms_9879_0 +0x8f8430 kRoomPlms_98E2 +0x8f8432 kRoomPlms_990D +0x8f843a kRoomPlms_9938 +0x8f8442 kRoomPlms_9969 +0x8f8444 kRoomPlms_9994 +0x8f844c kRoomPlms_99BD +0x8f8478 kRoomPlms_99F9 +0x8f8480 kRoomPlms_9A44_1 +0x8f8482 kRoomPlms_9A44_0 +0x8f8484 kRoomPlms_9A90_1 +0x8f8486 kRoomPlms_9A90_0 +0x8f848e kRoomPlms_9AD9 +0x8f84d8 kRoomPlms_9B5B +0x8f84ec kRoomPlms_9B9D +0x8f84f4 kRoomPlms_9BC8 +0x8f8526 kRoomPlms_9C07 +0x8f8540 kRoomPlms_9C35 +0x8f8548 kRoomPlms_9C5E +0x8f8550 kRoomPlms_9C89 +0x8f8558 kRoomPlms_9CB3 +0x8f85e4 kRoomPlms_9D19 +0x8f8634 kRoomPlms_9D9C +0x8f8642 kRoomPlms_9DC7_1 +0x8f864a kRoomPlms_9E11 +0x8f8664 kRoomPlms_9E52 +0x8f867e kRoomPlms_9E9F_1 +0x8f86e6 kRoomPlms_9E9F_0 +0x8f8754 kRoomPlms_9F11_1 +0x8f878c kRoomPlms_9F64_1 +0x8f87a6 kRoomPlms_9FBA +0x8f87ae kRoomPlms_9FE5 +0x8f87b0 kRoomPlms_A011 +0x8f87d0 kRoomPlms_A051 +0x8f87d8 kRoomPlms_A07B +0x8f87e0 kRoomPlms_A0A4 +0x8f87e8 kRoomPlms_A0D2 +0x8f8802 kRoomPlms_A107 +0x8f880a kRoomPlms_A130 +0x8f8824 kRoomPlms_A15B +0x8f882c kRoomPlms_A184 +0x8f8834 kRoomPlms_A1AD +0x8f8836 kRoomPlms_A1D8 +0x8f8844 kRoomPlms_A201 +0x8f884c kRoomPlms_A22A +0x8f8854 kRoomPlms_A253 +0x8f886e kRoomPlms_A293 +0x8f8876 kRoomPlms_A2CE +0x8f887e kRoomPlms_A2F7 +0x8f8880 kRoomPlms_A322 +0x8f88be kRoomPlms_A37C +0x8f88d8 kRoomPlms_A3AE +0x8f891c kRoomPlms_A3DD +0x8f891e kRoomPlms_A408 +0x8f896e kRoomPlms_A447 +0x8f8976 kRoomPlms_A471 +0x8f8996 kRoomPlms_A4B1 +0x8f89a4 kRoomPlms_A4DA +0x8f89f4 kRoomPlms_A521_1 +0x8f8a02 kRoomPlms_A56B +0x8f8a2e kRoomPlms_A59F_1 +0x8f8a3c kRoomPlms_A5ED +0x8f8a3e kRoomPlms_A618 +0x8f8a46 kRoomPlms_A641 +0x8f8a54 kRoomPlms_A66A +0x8f8a5c kRoomPlms_A6A1 +0x8f8aca kRoomPlms_A6E2 +0x8f8ad2 kRoomPlms_A70B +0x8f8ada kRoomPlms_A734 +0x8f8ae2 kRoomPlms_A75D +0x8f8ae4 kRoomPlms_A788 +0x8f8af2 kRoomPlms_A7B3 +0x8f8afa kRoomPlms_A7DE +0x8f8b14 kRoomPlms_A815 +0x8f8b22 kRoomPlms_A865 +0x8f8b24 kRoomPlms_A890 +0x8f8b2c kRoomPlms_A8B9 +0x8f8b46 kRoomPlms_A8F8 +0x8f8b4e kRoomPlms_A923 +0x8f8b9e kRoomPlms_A98D_1 +0x8f8bac kRoomPlms_A9E5 +0x8f8bb4 kRoomPlms_AA0E +0x8f8bc8 kRoomPlms_AA41 +0x8f8bf4 kRoomPlms_AA82 +0x8f8bfc kRoomPlms_AAB5 +0x8f8c04 kRoomPlms_AADE +0x8f8c0c kRoomPlms_AB07 +0x8f8c14 kRoomPlms_AB3B +0x8f8c1c kRoomPlms_AB64 +0x8f8c2a kRoomPlms_AB8F +0x8f8c32 kRoomPlms_ABD2 +0x8f8c34 kRoomPlms_AC00 +0x8f8c36 kRoomPlms_AC2B +0x8f8c3e kRoomPlms_AC5A +0x8f8c4c kRoomPlms_AC83 +0x8f8c5a kRoomPlms_ACB3 +0x8f8c6e kRoomPlms_ACF0 +0x8f8c82 kRoomPlms_AD1B +0x8f8c8a kRoomPlms_AD5E +0x8f8cb0 kRoomPlms_ADAD +0x8f8cca kRoomPlms_ADDE +0x8f8cd2 kRoomPlms_AE07 +0x8f8cd4 kRoomPlms_AE32 +0x8f8d1e kRoomPlms_AE74 +0x8f8d56 kRoomPlms_AEB4 +0x8f8d58 kRoomPlms_AEDF +0x8f8d7e kRoomPlms_AF14 +0x8f8d80 kRoomPlms_AF3F +0x8f8d88 kRoomPlms_AF72 +0x8f8d96 kRoomPlms_AFA3 +0x8f8d98 kRoomPlms_AFCE +0x8f8d9a kRoomPlms_AFFB +0x8f8d9c kRoomPlms_B026 +0x8f8da4 kRoomPlms_B051 +0x8f8da6 kRoomPlms_B07A +0x8f8dd8 kRoomPlms_B0B4 +0x8f8de0 kRoomPlms_B0DD +0x8f8de8 kRoomPlms_B106 +0x8f8dea kRoomPlms_B139 +0x8f8dec kRoomPlms_B167 +0x8f8df4 kRoomPlms_B192 +0x8f8dfc kRoomPlms_B1BB +0x8f8e04 kRoomPlms_B1E5 +0x8f8e12 kRoomPlms_B236 +0x8f8e3e kRoomPlms_B283_1 +0x8f8e82 kRoomPlms_B2DA +0x8f8e90 kRoomPlms_B305 +0x8f8e98 kRoomPlms_B32E_1 +0x8f8ea6 kRoomPlms_B37A +0x8f8eba kRoomPlms_B3A5 +0x8f8ed4 kRoomPlms_B3E1 +0x8f8ed6 kRoomPlms_B40A +0x8f8f38 kRoomPlms_B457 +0x8f8f3a kRoomPlms_B482 +0x8f8f3c kRoomPlms_B4AD +0x8f8f7a kRoomPlms_B4E5 +0x8f8f7c kRoomPlms_B510 +0x8f8fd2 kRoomPlms_B55A +0x8f8fda kRoomPlms_B585 +0x8f9036 kRoomPlms_B5D5 +0x8f90c8 kRoomPlms_B62B +0x8f90d0 kRoomPlms_B656 +0x8f9108 kRoomPlms_B698 +0x8f9110 kRoomPlms_B6C1 +0x8f9118 kRoomPlms_B6EE +0x8f918c kRoomPlms_B741 +0x8f9194 RoomSetup_AfterSavingAnimals +0x8f91a9 RoomSetup_AutoDestroyWallAfterEscape +0x8f91b2 RoomSetup_TurnWallIntoShotblocks +0x8f91bb nullsub_132 +0x8f91bc nullsub_133 +0x8f91bd RoomSetup_ShakeDuringEscape +0x8f91c9 RoomSetup_ScrollingSkyLand +0x8f91ce RoomSetup_ScrollingSkyOcean +0x8f91d3 nullsub_134 +0x8f91d4 nullsub_135 +0x8f91d5 nullsub_136 +0x8f91d6 nullsub_137 +0x8f91d7 RoomSetup_RunStatueUnlockAnims +0x8f91f4 nullsub_138 +0x8f91f5 nullsub_139 +0x8f91f6 nullsub_140 +0x8f91f7 nullsub_141 +0x8f91f8 kRoom_91f8 +0x8f9213 kRoomState_91f8_9213 +0x8f922d kRoomState_91f8_922d +0x8f9247 kRoomState_91f8_9247 +0x8f9261 kRoomState_91f8_9261 +0x8f927b kRoom_91f8_DoorOuts +0x8f9283 kRoomScrolls_91F8 +0x8f92b3 kRoom_92b3 +0x8f92c5 kRoomState_92b3_92c5 +0x8f92df kRoomState_92b3_92df +0x8f92f9 kRoom_92b3_DoorOuts +0x8f92fd kRoom_92fd +0x8f9314 kRoomState_92fd_9314 +0x8f932e kRoomState_92fd_932e +0x8f9348 kRoomState_92fd_9348 +0x8f9362 kRoom_92fd_DoorOuts +0x8f9370 kRoomScrolls_92FD +0x8f93aa kRoom_93aa +0x8f93b7 kRoomState_93aa_93b7 +0x8f93d1 kRoom_93aa_DoorOuts +0x8f93d3 kRoomScrolls_93AA +0x8f93d5 kRoom_93d5 +0x8f93e2 kRoomState_93d5_93e2 +0x8f93fc kRoom_93d5_DoorOuts +0x8f93fe kRoom_93fe +0x8f940b kRoomState_93fe_940b +0x8f9425 kRoom_93fe_DoorOuts +0x8f9431 kRoomScrolls_93FE +0x8f9461 kRoom_9461 +0x8f946e kRoomState_9461_946e +0x8f9488 kRoom_9461_DoorOuts +0x8f948c kRoom_948c +0x8f9499 kRoomState_948c_9499 +0x8f94b3 kRoom_948c_DoorOuts +0x8f94b9 kRoomScrolls_948C +0x8f94cc kRoom_94cc +0x8f94d9 kRoomState_94cc_94d9 +0x8f94f3 kRoom_94cc_DoorOuts +0x8f94f9 kRoomScrolls_94CC +0x8f94fd kRoom_94fd +0x8f950a kRoomState_94fd_950a +0x8f9524 kRoom_94fd_DoorOuts +0x8f9528 kRoomScrolls_94FD +0x8f9552 kRoom_9552 +0x8f955f kRoomState_9552_955f +0x8f9579 kRoom_9552_DoorOuts +0x8f957d kRoom_957d +0x8f958a kRoomState_957d_958a +0x8f95a4 kRoom_957d_DoorOuts +0x8f95a8 kRoom_95a8 +0x8f95b5 kRoomState_95a8_95b5 +0x8f95cf kRoom_95a8_DoorOuts +0x8f95d3 kRoomScrolls_95A8 +0x8f95d4 kRoom_95d4 +0x8f95e1 kRoomState_95d4_95e1 +0x8f95fb kRoom_95d4_DoorOuts +0x8f95ff kRoom_95ff +0x8f960c kRoomState_95ff_960c +0x8f9626 kRoom_95ff_DoorOuts +0x8f962a kRoom_962a +0x8f9637 kRoomState_962a_9637 +0x8f9651 kRoom_962a_DoorOuts +0x8f9657 kRoomScrolls_962A +0x8f965b kRoom_965b +0x8f9668 kRoomState_965b_9668 +0x8f9682 kRoom_965b_DoorOuts +0x8f9686 kRoomScrolls_965B +0x8f968f kRoom_968f +0x8f969c kRoomState_968f_969c +0x8f96b6 kRoom_968f_DoorOuts +0x8f96ba kRoom_96ba +0x8f96d1 kRoomState_96ba_96d1 +0x8f96eb kRoomState_96ba_96eb +0x8f9705 kRoomState_96ba_9705 +0x8f971f kRoom_96ba_DoorOuts +0x8f9729 kRoomScrolls_96BA +0x8f975c kRoom_975c +0x8f976d kRoomState_975c_976d +0x8f9787 kRoomState_975c_9787 +0x8f97a1 kRoom_975c_DoorOuts +0x8f97a5 kRoomScrolls_975C +0x8f97b5 kRoom_97b5 +0x8f97c6 kRoomState_97b5_97c6 +0x8f97e0 kRoomState_97b5_97e0 +0x8f97fa kRoom_97b5_DoorOuts +0x8f9800 kRoomScrolls_97B5 +0x8f9804 kRoom_9804 +0x8f981b kRoomState_9804_981b +0x8f9835 kRoomState_9804_9835 +0x8f984f kRoomState_9804_984f +0x8f9869 kRoom_9804_DoorOuts +0x8f986b kRoomXraySpecial_9804 +0x8f9879 kRoom_9879 +0x8f9890 kRoomState_9879_9890 +0x8f98aa kRoomState_9879_98aa +0x8f98c4 kRoomState_9879_98c4 +0x8f98de kRoom_9879_DoorOuts +0x8f98e2 kRoom_98e2 +0x8f98ef kRoomState_98e2_98ef +0x8f9909 kRoom_98e2_DoorOuts +0x8f990d kRoom_990d +0x8f991a kRoomState_990d_991a +0x8f9934 kRoom_990d_DoorOuts +0x8f9938 kRoom_9938 +0x8f9945 kRoomState_9938_9945 +0x8f995f kRoom_9938_DoorOuts +0x8f9965 kRoomScrolls_9938 +0x8f9969 kRoom_9969 +0x8f9976 kRoomState_9969_9976 +0x8f9990 kRoom_9969_DoorOuts +0x8f9994 kRoom_9994 +0x8f99a1 kRoomState_9994_99a1 +0x8f99bb kRoom_9994_DoorOuts +0x8f99bd kRoom_99bd +0x8f99ca kRoomState_99bd_99ca +0x8f99e4 kRoom_99bd_DoorOuts +0x8f99ec kRoomScrolls_99BD +0x8f99f9 kRoom_99f9 +0x8f9a06 kRoomState_99f9_9a06 +0x8f9a20 kRoom_99f9_DoorOuts +0x8f9a24 kRoomScrolls_99F9 +0x8f9a44 kRoom_9a44 +0x8f9a56 kRoomState_9a44_9a56 +0x8f9a70 kRoomState_9a44_9a70 +0x8f9a8a kRoom_9a44_DoorOuts +0x8f9a8e kRoomScrolls_9A44 +0x8f9a90 kRoom_9a90 +0x8f9aa2 kRoomState_9a90_9aa2 +0x8f9abc kRoomState_9a90_9abc +0x8f9ad6 kRoom_9a90_DoorOuts +0x8f9ad8 kRoomScrolls_9A90 +0x8f9ad9 kRoom_9ad9 +0x8f9ae6 kRoomState_9ad9_9ae6 +0x8f9b00 kRoom_9ad9_DoorOuts +0x8f9b16 kRoomScrolls_9AD9 +0x8f9b5b kRoom_9b5b +0x8f9b68 kRoomState_9b5b_9b68 +0x8f9b82 kRoom_9b5b_DoorOuts +0x8f9b86 kRoomScrolls_9B5B +0x8f9b9d kRoom_9b9d +0x8f9baa kRoomState_9b9d_9baa +0x8f9bc4 kRoom_9b9d_DoorOuts +0x8f9bc8 kRoom_9bc8 +0x8f9bd5 kRoomState_9bc8_9bd5 +0x8f9bef kRoom_9bc8_DoorOuts +0x8f9bf3 kRoomScrolls_9BC8 +0x8f9c07 kRoom_9c07 +0x8f9c14 kRoomState_9c07_9c14 +0x8f9c2e kRoom_9c07_DoorOuts +0x8f9c30 kRoomScrolls_9C07 +0x8f9c35 kRoom_9c35 +0x8f9c42 kRoomState_9c35_9c42 +0x8f9c5c kRoom_9c35_DoorOuts +0x8f9c5e kRoom_9c5e +0x8f9c6b kRoomState_9c5e_9c6b +0x8f9c85 kRoom_9c5e_DoorOuts +0x8f9c89 kRoom_9c89 +0x8f9c96 kRoomState_9c89_9c96 +0x8f9cb0 kRoom_9c89_DoorOuts +0x8f9cb2 kRoomScrolls_9C89 +0x8f9cb3 kRoom_9cb3 +0x8f9cc0 kRoomState_9cb3_9cc0 +0x8f9cda kRoom_9cb3_DoorOuts +0x8f9ce0 kRoomScrolls_9CB3 +0x8f9d19 kRoom_9d19 +0x8f9d26 kRoomState_9d19_9d26 +0x8f9d40 kRoom_9d19_DoorOuts +0x8f9d52 kRoomScrolls_9D19 +0x8f9d9c kRoom_9d9c +0x8f9da9 kRoomState_9d9c_9da9 +0x8f9dc3 kRoom_9d9c_DoorOuts +0x8f9dc7 kRoom_9dc7 +0x8f9dd9 kRoomState_9dc7_9dd9 +0x8f9df3 kRoomState_9dc7_9df3 +0x8f9e0d kRoom_9dc7_DoorOuts +0x8f9e11 kRoom_9e11 +0x8f9e1e kRoomState_9e11_9e1e +0x8f9e38 kRoom_9e11_DoorOuts +0x8f9e3c kRoomScrolls_9E11 +0x8f9e52 kRoom_9e52 +0x8f9e5f kRoomState_9e52_9e5f +0x8f9e79 kRoom_9e52_DoorOuts +0x8f9e7f kRoomScrolls_9E52 +0x8f9e9f kRoom_9e9f +0x8f9eb1 kRoomState_9e9f_9eb1 +0x8f9ecb kRoomState_9e9f_9ecb +0x8f9ee5 kRoom_9e9f_DoorOuts +0x8f9eed kRoomScrolls_9E9F +0x8f9f11 kRoom_9f11 +0x8f9f23 kRoomState_9f11_9f23 +0x8f9f3d kRoomState_9f11_9f3d +0x8f9f57 kRoom_9f11_DoorOuts +0x8f9f5d kRoomScrolls_9F11 +0x8f9f64 kRoom_9f64 +0x8f9f76 kRoomState_9f64_9f76 +0x8f9f90 kRoomState_9f64_9f90 +0x8f9faa kRoom_9f64_DoorOuts +0x8f9fae kRoomScrolls_9F64 +0x8f9fba kRoom_9fba +0x8f9fc7 kRoomState_9fba_9fc7 +0x8f9fe1 kRoom_9fba_DoorOuts +0x8f9fe5 kRoom_9fe5 +0x8f9ff2 kRoomState_9fe5_9ff2 +0x8fa00c kRoom_9fe5_DoorOuts +0x8fa010 kRoomScrolls_9FE5 +0x8fa011 kRoom_a011 +0x8fa01e kRoomState_a011_a01e +0x8fa038 kRoom_a011_DoorOuts +0x8fa040 kRoomScrolls_A011 +0x8fa051 kRoom_a051 +0x8fa05e kRoomState_a051_a05e +0x8fa078 kRoom_a051_DoorOuts +0x8fa07a kRoomScrolls_A051 +0x8fa07b kRoom_a07b +0x8fa088 kRoomState_a07b_a088 +0x8fa0a2 kRoom_a07b_DoorOuts +0x8fa0a4 kRoom_a0a4 +0x8fa0b1 kRoomState_a0a4_a0b1 +0x8fa0cb kRoom_a0a4_DoorOuts +0x8fa0cf kRoomScrolls_A0A4 +0x8fa0d2 kRoom_a0d2 +0x8fa0df kRoomState_a0d2_a0df +0x8fa0f9 kRoom_a0d2_DoorOuts +0x8fa0fd kRoomScrolls_A0D2 +0x8fa107 kRoom_a107 +0x8fa114 kRoomState_a107_a114 +0x8fa12e kRoom_a107_DoorOuts +0x8fa130 kRoom_a130 +0x8fa13d kRoomState_a130_a13d +0x8fa157 kRoom_a130_DoorOuts +0x8fa15b kRoom_a15b +0x8fa168 kRoomState_a15b_a168 +0x8fa182 kRoom_a15b_DoorOuts +0x8fa184 kRoom_a184 +0x8fa191 kRoomState_a184_a191 +0x8fa1ab kRoom_a184_DoorOuts +0x8fa1ad kRoom_a1ad +0x8fa1ba kRoomState_a1ad_a1ba +0x8fa1d4 kRoom_a1ad_DoorOuts +0x8fa1d8 kRoom_a1d8 +0x8fa1e5 kRoomState_a1d8_a1e5 +0x8fa1ff kRoom_a1d8_DoorOuts +0x8fa201 kRoom_a201 +0x8fa20e kRoomState_a201_a20e +0x8fa228 kRoom_a201_DoorOuts +0x8fa22a kRoom_a22a +0x8fa237 kRoomState_a22a_a237 +0x8fa251 kRoom_a22a_DoorOuts +0x8fa253 kRoom_a253 +0x8fa260 kRoomState_a253_a260 +0x8fa27a kRoom_a253_DoorOuts +0x8fa284 kRoomScrolls_A253 +0x8fa293 kRoom_a293 +0x8fa2a0 kRoomState_a293_a2a0 +0x8fa2ba kRoom_a293_DoorOuts +0x8fa2be kRoomScrolls_A293 +0x8fa2ce kRoom_a2ce +0x8fa2db kRoomState_a2ce_a2db +0x8fa2f5 kRoom_a2ce_DoorOuts +0x8fa2f7 kRoom_a2f7 +0x8fa304 kRoomState_a2f7_a304 +0x8fa31e kRoom_a2f7_DoorOuts +0x8fa322 kRoom_a322 +0x8fa32f kRoomState_a322_a32f +0x8fa349 kRoom_a322_DoorOuts +0x8fa357 kRoomScrolls_A322 +0x8fa37c kRoom_a37c +0x8fa389 kRoomState_a37c_a389 +0x8fa3a3 kRoom_a37c_DoorOuts +0x8fa3a5 kRoomScrolls_A37C +0x8fa3ae kRoom_a3ae +0x8fa3bb kRoomState_a3ae_a3bb +0x8fa3d5 kRoom_a3ae_DoorOuts +0x8fa3d7 kRoomScrolls_A3AE +0x8fa3dd kRoom_a3dd +0x8fa3ea kRoomState_a3dd_a3ea +0x8fa404 kRoom_a3dd_DoorOuts +0x8fa408 kRoom_a408 +0x8fa415 kRoomState_a408_a415 +0x8fa42f kRoom_a408_DoorOuts +0x8fa435 kRoomScrolls_A408 +0x8fa447 kRoom_a447 +0x8fa454 kRoomState_a447_a454 +0x8fa46e kRoom_a447_DoorOuts +0x8fa470 kRoomScrolls_A447 +0x8fa471 kRoom_a471 +0x8fa47e kRoomState_a471_a47e +0x8fa498 kRoom_a471_DoorOuts +0x8fa49e kRoomScrolls_A471 +0x8fa4b1 kRoom_a4b1 +0x8fa4be kRoomState_a4b1_a4be +0x8fa4d8 kRoom_a4b1_DoorOuts +0x8fa4da kRoom_a4da +0x8fa4e7 kRoomState_a4da_a4e7 +0x8fa501 kRoom_a4da_DoorOuts +0x8fa507 kRoomScrolls_A4DA +0x8fa521 kRoom_a521 +0x8fa533 kRoomState_a521_a533 +0x8fa54d kRoomState_a521_a54d +0x8fa567 kRoom_a521_DoorOuts +0x8fa56b kRoom_a56b +0x8fa578 kRoomState_a56b_a578 +0x8fa592 kRoom_a56b_DoorOuts +0x8fa598 kRoomScrolls_A56B +0x8fa59f kRoom_a59f +0x8fa5b1 kRoomState_a59f_a5b1 +0x8fa5cb kRoomState_a59f_a5cb +0x8fa5e5 kRoom_a59f_DoorOuts +0x8fa5e9 kRoomScrolls_A59F +0x8fa5ed kRoom_a5ed +0x8fa5fa kRoomState_a5ed_a5fa +0x8fa614 kRoom_a5ed_DoorOuts +0x8fa618 kRoom_a618 +0x8fa625 kRoomState_a618_a625 +0x8fa63f kRoom_a618_DoorOuts +0x8fa641 kRoom_a641 +0x8fa64e kRoomState_a641_a64e +0x8fa668 kRoom_a641_DoorOuts +0x8fa66a kRoom_a66a +0x8fa677 kRoomState_a66a_a677 +0x8fa691 kRoom_a66a_DoorOuts +0x8fa697 kRoomScrolls_A66A +0x8fa6a1 kRoom_a6a1 +0x8fa6ae kRoomState_a6a1_a6ae +0x8fa6c8 kRoom_a6a1_DoorOuts +0x8fa6d0 kRoomScrolls_A6A1 +0x8fa6e2 kRoom_a6e2 +0x8fa6ef kRoomState_a6e2_a6ef +0x8fa709 kRoom_a6e2_DoorOuts +0x8fa70b kRoom_a70b +0x8fa718 kRoomState_a70b_a718 +0x8fa732 kRoom_a70b_DoorOuts +0x8fa734 kRoom_a734 +0x8fa741 kRoomState_a734_a741 +0x8fa75b kRoom_a734_DoorOuts +0x8fa75d kRoom_a75d +0x8fa76a kRoomState_a75d_a76a +0x8fa784 kRoom_a75d_DoorOuts +0x8fa788 kRoom_a788 +0x8fa795 kRoomState_a788_a795 +0x8fa7af kRoom_a788_DoorOuts +0x8fa7b3 kRoom_a7b3 +0x8fa7c0 kRoomState_a7b3_a7c0 +0x8fa7da kRoom_a7b3_DoorOuts +0x8fa7de kRoom_a7de +0x8fa7eb kRoomState_a7de_a7eb +0x8fa805 kRoom_a7de_DoorOuts +0x8fa815 kRoom_a815 +0x8fa822 kRoomState_a815_a822 +0x8fa83c kRoom_a815_DoorOuts +0x8fa844 kRoomScrolls_A815 +0x8fa865 kRoom_a865 +0x8fa872 kRoomState_a865_a872 +0x8fa88c kRoom_a865_DoorOuts +0x8fa890 kRoom_a890 +0x8fa89d kRoomState_a890_a89d +0x8fa8b7 kRoom_a890_DoorOuts +0x8fa8b9 kRoom_a8b9 +0x8fa8c6 kRoomState_a8b9_a8c6 +0x8fa8e0 kRoom_a8b9_DoorOuts +0x8fa8e6 kRoomScrolls_A8B9 +0x8fa8f8 kRoom_a8f8 +0x8fa905 kRoomState_a8f8_a905 +0x8fa91f kRoom_a8f8_DoorOuts +0x8fa923 kRoom_a923 +0x8fa930 kRoomState_a923_a930 +0x8fa94a kRoom_a923_DoorOuts +0x8fa954 kRoomScrolls_A923 +0x8fa98d kRoom_a98d +0x8fa99f kRoomState_a98d_a99f +0x8fa9b9 kRoomState_a98d_a9b9 +0x8fa9d3 kRoom_a98d_DoorOuts +0x8fa9d7 kRoomScrolls_A98D +0x8fa9e5 kRoom_a9e5 +0x8fa9f2 kRoomState_a9e5_a9f2 +0x8faa0c kRoom_a9e5_DoorOuts +0x8faa0e kRoom_aa0e +0x8faa1b kRoomState_aa0e_aa1b +0x8faa35 kRoom_aa0e_DoorOuts +0x8faa39 kRoomScrolls_AA0E +0x8faa41 kRoom_aa41 +0x8faa4e kRoomState_aa41_aa4e +0x8faa68 kRoom_aa41_DoorOuts +0x8faa6c kRoomScrolls_AA41 +0x8faa82 kRoom_aa82 +0x8faa8f kRoomState_aa82_aa8f +0x8faaa9 kRoom_aa82_DoorOuts +0x8faab1 kRoomScrolls_AA82 +0x8faab5 kRoom_aab5 +0x8faac2 kRoomState_aab5_aac2 +0x8faadc kRoom_aab5_DoorOuts +0x8faade kRoom_aade +0x8faaeb kRoomState_aade_aaeb +0x8fab05 kRoom_aade_DoorOuts +0x8fab07 kRoom_ab07 +0x8fab14 kRoomState_ab07_ab14 +0x8fab2e kRoom_ab07_DoorOuts +0x8fab36 kRoomScrolls_AB07 +0x8fab3b kRoom_ab3b +0x8fab48 kRoomState_ab3b_ab48 +0x8fab62 kRoom_ab3b_DoorOuts +0x8fab64 kRoom_ab64 +0x8fab71 kRoomState_ab64_ab71 +0x8fab8b kRoom_ab64_DoorOuts +0x8fab8f kRoom_ab8f +0x8fab9c kRoomState_ab8f_ab9c +0x8fabb6 kRoom_ab8f_DoorOuts +0x8fabba kRoomScrolls_AB8F +0x8fabd2 kRoom_abd2 +0x8fabdf kRoomState_abd2_abdf +0x8fabf9 kRoom_abd2_DoorOuts +0x8fabfd kRoomScrolls_ABD2 +0x8fac00 kRoom_ac00 +0x8fac0d kRoomState_ac00_ac0d +0x8fac27 kRoom_ac00_DoorOuts +0x8fac2b kRoom_ac2b +0x8fac38 kRoomState_ac2b_ac38 +0x8fac52 kRoom_ac2b_DoorOuts +0x8fac56 kRoomScrolls_AC2B +0x8fac5a kRoom_ac5a +0x8fac67 kRoomState_ac5a_ac67 +0x8fac81 kRoom_ac5a_DoorOuts +0x8fac83 kRoom_ac83 +0x8fac90 kRoomState_ac83_ac90 +0x8facaa kRoom_ac83_DoorOuts +0x8facae kRoomScrolls_AC83 +0x8facb3 kRoom_acb3 +0x8facc0 kRoomState_acb3_acc0 +0x8facda kRoom_acb3_DoorOuts +0x8face8 kRoomScrolls_ACB3 +0x8facf0 kRoom_acf0 +0x8facfd kRoomState_acf0_acfd +0x8fad17 kRoom_acf0_DoorOuts +0x8fad1b kRoom_ad1b +0x8fad28 kRoomState_ad1b_ad28 +0x8fad5c kRoom_ad1b_DoorOuts +0x8fad5e kRoom_ad5e +0x8fad6b kRoomState_ad5e_ad6b +0x8fad85 kRoom_ad5e_DoorOuts +0x8fad8f kRoomScrolls_AD5E +0x8fadad kRoom_adad +0x8fadba kRoomState_adad_adba +0x8fadd4 kRoom_adad_DoorOuts +0x8fadda kRoomScrolls_ADAD +0x8fadde kRoom_adde +0x8fadeb kRoomState_adde_adeb +0x8fae05 kRoom_adde_DoorOuts +0x8fae07 kRoom_ae07 +0x8fae14 kRoomState_ae07_ae14 +0x8fae2e kRoom_ae07_DoorOuts +0x8fae32 kRoom_ae32 +0x8fae3f kRoomState_ae32_ae3f +0x8fae59 kRoom_ae32_DoorOuts +0x8fae5d kRoomScrolls_AE32 +0x8fae74 kRoom_ae74 +0x8fae81 kRoomState_ae74_ae81 +0x8fae9b kRoom_ae74_DoorOuts +0x8faea3 kRoomScrolls_AE74 +0x8faeb4 kRoom_aeb4 +0x8faec1 kRoomState_aeb4_aec1 +0x8faedb kRoom_aeb4_DoorOuts +0x8faedf kRoom_aedf +0x8faeec kRoomState_aedf_aeec +0x8faf06 kRoom_aedf_DoorOuts +0x8faf0c kRoomScrolls_AEDF +0x8faf14 kRoom_af14 +0x8faf21 kRoomState_af14_af21 +0x8faf3b kRoom_af14_DoorOuts +0x8faf3f kRoom_af3f +0x8faf4c kRoomState_af3f_af4c +0x8faf66 kRoom_af3f_DoorOuts +0x8faf6e kRoomScrolls_AF3F +0x8faf72 kRoom_af72 +0x8faf7f kRoomState_af72_af7f +0x8faf99 kRoom_af72_DoorOuts +0x8faf9f kRoomScrolls_AF72 +0x8fafa3 kRoom_afa3 +0x8fafb0 kRoomState_afa3_afb0 +0x8fafca kRoom_afa3_DoorOuts +0x8fafce kRoom_afce +0x8fafdb kRoomState_afce_afdb +0x8faff5 kRoom_afce_DoorOuts +0x8faffb kRoom_affb +0x8fb008 kRoomState_affb_b008 +0x8fb022 kRoom_affb_DoorOuts +0x8fb026 kRoom_b026 +0x8fb033 kRoomState_b026_b033 +0x8fb04d kRoom_b026_DoorOuts +0x8fb051 kRoom_b051 +0x8fb05e kRoomState_b051_b05e +0x8fb078 kRoom_b051_DoorOuts +0x8fb07a kRoom_b07a +0x8fb087 kRoomState_b07a_b087 +0x8fb0a1 kRoom_b07a_DoorOuts +0x8fb0a5 kRoomScrolls_B07A +0x8fb0b4 kRoom_b0b4 +0x8fb0c1 kRoomState_b0b4_b0c1 +0x8fb0db kRoom_b0b4_DoorOuts +0x8fb0dd kRoom_b0dd +0x8fb0ea kRoomState_b0dd_b0ea +0x8fb104 kRoom_b0dd_DoorOuts +0x8fb106 kRoom_b106 +0x8fb113 kRoomState_b106_b113 +0x8fb12d kRoom_b106_DoorOuts +0x8fb131 kRoomScrolls_B106 +0x8fb139 kRoom_b139 +0x8fb146 kRoomState_b139_b146 +0x8fb160 kRoom_b139_DoorOuts +0x8fb164 kRoomScrolls_B139 +0x8fb167 kRoom_b167 +0x8fb174 kRoomState_b167_b174 +0x8fb18e kRoom_b167_DoorOuts +0x8fb192 kRoom_b192 +0x8fb19f kRoomState_b192_b19f +0x8fb1b9 kRoom_b192_DoorOuts +0x8fb1bb kRoom_b1bb +0x8fb1c8 kRoomState_b1bb_b1c8 +0x8fb1e2 kRoom_b1bb_DoorOuts +0x8fb1e4 kRoomScrolls_B1BB +0x8fb1e5 kRoom_b1e5 +0x8fb1f2 kRoomState_b1e5_b1f2 +0x8fb20c kRoom_b1e5_DoorOuts +0x8fb210 kRoomScrolls_B1E5 +0x8fb236 kRoom_b236 +0x8fb243 kRoomState_b236_b243 +0x8fb25d kRoom_b236_DoorOuts +0x8fb265 kRoomScrolls_B236 +0x8fb283 kRoom_b283 +0x8fb295 kRoomState_b283_b295 +0x8fb2af kRoomState_b283_b2af +0x8fb2c9 kRoom_b283_DoorOuts +0x8fb2cd kRoomScrolls_B283 +0x8fb2da kRoom_b2da +0x8fb2e7 kRoomState_b2da_b2e7 +0x8fb301 kRoom_b2da_DoorOuts +0x8fb305 kRoom_b305 +0x8fb312 kRoomState_b305_b312 +0x8fb32c kRoom_b305_DoorOuts +0x8fb32e kRoom_b32e +0x8fb340 kRoomState_b32e_b340 +0x8fb35a kRoomState_b32e_b35a +0x8fb374 kRoom_b32e_DoorOuts +0x8fb378 kRoomScrolls_B32E +0x8fb37a kRoom_b37a +0x8fb387 kRoomState_b37a_b387 +0x8fb3a1 kRoom_b37a_DoorOuts +0x8fb3a5 kRoom_b3a5 +0x8fb3b2 kRoomState_b3a5_b3b2 +0x8fb3cc kRoom_b3a5_DoorOuts +0x8fb3d6 kRoomScrolls_B3A5 +0x8fb3e1 kRoom_b3e1 +0x8fb3ee kRoomState_b3e1_b3ee +0x8fb408 kRoom_b3e1_DoorOuts +0x8fb40a kRoom_b40a +0x8fb417 kRoomState_b40a_b417 +0x8fb431 kRoom_b40a_DoorOuts +0x8fb435 kRoomScrolls_B40A +0x8fb457 kRoom_b457 +0x8fb464 kRoomState_b457_b464 +0x8fb47e kRoom_b457_DoorOuts +0x8fb482 kRoom_b482 +0x8fb48f kRoomState_b482_b48f +0x8fb4a9 kRoom_b482_DoorOuts +0x8fb4ad kRoom_b4ad +0x8fb4ba kRoomState_b4ad_b4ba +0x8fb4d4 kRoom_b4ad_DoorOuts +0x8fb4da kRoomScrolls_B4AD +0x8fb4e5 kRoom_b4e5 +0x8fb4f2 kRoomState_b4e5_b4f2 +0x8fb50c kRoom_b4e5_DoorOuts +0x8fb510 kRoom_b510 +0x8fb51d kRoomState_b510_b51d +0x8fb537 kRoom_b510_DoorOuts +0x8fb53d kRoomScrolls_B510 +0x8fb55a kRoom_b55a +0x8fb567 kRoomState_b55a_b567 +0x8fb581 kRoom_b55a_DoorOuts +0x8fb585 kRoom_b585 +0x8fb592 kRoomState_b585_b592 +0x8fb5ac kRoom_b585_DoorOuts +0x8fb5b4 kRoomScrolls_B585 +0x8fb5d5 kRoom_b5d5 +0x8fb5e2 kRoomState_b5d5_b5e2 +0x8fb5fc kRoom_b5d5_DoorOuts +0x8fb600 kRoomScrolls_B5D5 +0x8fb62b kRoom_b62b +0x8fb638 kRoomState_b62b_b638 +0x8fb652 kRoom_b62b_DoorOuts +0x8fb656 kRoom_b656 +0x8fb663 kRoomState_b656_b663 +0x8fb67d kRoom_b656_DoorOuts +0x8fb681 kRoomScrolls_B656 +0x8fb698 kRoom_b698 +0x8fb6a5 kRoomState_b698_b6a5 +0x8fb6bf kRoom_b698_DoorOuts +0x8fb6c1 kRoom_b6c1 +0x8fb6ce kRoomState_b6c1_b6ce +0x8fb6e8 kRoom_b6c1_DoorOuts +0x8fb6ee kRoom_b6ee +0x8fb6fb kRoomState_b6ee_b6fb +0x8fb715 kRoom_b6ee_DoorOuts +0x8fb71b kRoomScrolls_B6EE +0x8fb741 kRoom_b741 +0x8fb74e kRoomState_b741_b74e +0x8fb768 kRoom_b741_DoorOuts +0x8fb76a kRoomBgData_91F8_3 +0x8fb7ae kRoomBgData_93FE +0x8fb7f2 kRoomBgData_94FD +0x8fb80a kRoomBgData_968F +0x8fb815 kRoomBgData_A59F_1 +0x8fb840 kRoomBgData_A59F_0 +0x8fb84d kRoomBgData_A98D_1 +0x8fb858 kRoomBgData_A98D_0 +0x8fb87e kRoomBgData_95A8 +0x8fb899 kRoomBgData_92B3_1 +0x8fb8b4 kRoomBgData_93AA +0x8fb8cf kRoomBgData_9969 +0x8fb8ea kRoomBgData_9879_2 +0x8fb905 kRoomBgData_9A90_1 +0x8fb920 kRoomBgData_98E2 +0x8fb93b kRoomBgData_94CC +0x8fb956 kRoomBgData_9A44_1 +0x8fb971 DoorCode_StartWreckedShipTreadmillWest +0x8fb981 DoorCode_Scroll6_Green +0x8fb98c DoorCode_Scroll0_Blue +0x8fb997 DoorCode_Scroll13_Blue +0x8fb9a2 DoorCode_Scroll_4Blue_8Green +0x8fb9b3 DoorCode_Scroll_8toB_Red +0x8fb9ca DoorCode_Scroll_LotsRed +0x8fb9f1 DoorCode_Scroll_1_4_Green +0x8fba00 DoorCode_Scroll_2_Blue +0x8fba0b DoorCode_Scroll_17_Blue +0x8fba16 DoorCode_Scroll_4_Blue +0x8fba21 DoorCode_Scroll_6_Green +0x8fba2c DoorCode_Scroll_3_Green +0x8fba37 kRoomBgData_9AD9 +0x8fba52 kRoomBgData_9FBA +0x8fba6d kRoomBgData_9C07 +0x8fba88 kRoomBgData_9B9D +0x8fbaa3 kRoomBgData_A130 +0x8fbabe kRoomBgData_A107 +0x8fbad9 kRoomBgData_9E52 +0x8fbaf4 kRoomBgData_A1D8 +0x8fbb45 kRoomBgData_9D19 +0x8fbb60 kRoomBgData_A66A +0x8fbb7b kRoomBgData_A253 +0x8fbbcc kRoomBgData_A2F7 +0x8fbbe7 kRoomBgData_A3DD +0x8fbc02 kRoomBgData_A408 +0x8fbc38 kRoomBgData_A2CE +0x8fbc53 kRoomBgData_A6A1 +0x8fbc6e kRoomBgData_A521_1 +0x8fbca4 kRoomBgData_A5ED +0x8fbcec kRoomBgData_A447 +0x8fbd07 DoorCode_SetScroll_0 +0x8fbd16 DoorCode_SetScroll_1 +0x8fbd25 DoorCode_SetScroll_2 +0x8fbd30 DoorCode_SetScroll_3 +0x8fbd3f DoorCode_SetScroll_4 +0x8fbd50 DoorCode_SetScroll_5 +0x8fbd5b DoorCode_SetScroll_6 +0x8fbd6c DoorCode_SetScroll_7 +0x8fbd77 DoorCode_SetScroll_8 +0x8fbd8a DoorCode_SetScroll_9 +0x8fbd95 DoorCode_SetScroll_10 +0x8fbda0 DoorCode_SetScroll_11 +0x8fbdaf DoorCode_SetScroll_12 +0x8fbdc0 DoorCode_SetScroll_13 +0x8fbdd1 DoorCode_SetScroll_14 +0x8fbde2 DoorCode_SetScroll_15 +0x8fbdf1 DoorCode_SetScroll_16 +0x8fbe00 DoorCode_SetScroll_17 +0x8fbe0b DoorCode_SetScroll_18 +0x8fbe1a DoorCode_SetScroll_19 +0x8fbe25 DoorCode_SetScroll_20 +0x8fbe36 DoorCode_SetScroll_21 +0x8fbe3f kRoomBgData_A9E5 +0x8fbe5a kRoomBgData_AB64 +0x8fbe90 kRoomBgData_B3E1 +0x8fbeab kRoomBgData_B3A5 +0x8fbec6 kRoomBgData_AB3B +0x8fbee1 kRoomBgData_AC2B +0x8fbefc kRoomBgData_B4AD +0x8fbf17 kRoomBgData_B457 +0x8fbf32 kRoomBgData_B6C1 +0x8fbf4d kRoomBgData_B37A +0x8fbf68 kRoomBgData_B051 +0x8fbf83 kRoomBgData_AC83 +0x8fbf9e DoorCode_SetScroll_22 +0x8fbfbb DoorCode_SetScroll_23 +0x8fbfda DoorCode_SetScroll_24 +0x8fbfe9 DoorCode_SetScroll_25 +0x8fbffa DoorCode_SetScroll_26 +0x8fc005 DoorCode_SetScroll_27 +0x8fc016 DoorCode_SetScroll_28 +0x8fc025 DoorCode_SetScroll_29 +0x8fc03a DoorCode_SetScroll_30 +0x8fc04b DoorCode_SetScroll_31 +0x8fc056 DoorCode_SetScroll_32 +0x8fc067 DoorCode_SetScroll_33 +0x8fc078 DoorCode_SetScroll_34 +0x8fc089 DoorCode_SetScroll_35 +0x8fc0a2 DoorCode_SetScroll_36 +0x8fc0ad DoorCode_SetScroll_37 +0x8fc0c2 DoorCode_SetScroll_38 +0x8fc0d3 DoorCode_SetScroll_39 +0x8fc0de DoorCode_SetScroll_40 +0x8fc0ef DoorCode_SetScroll_41 +0x8fc0fa DoorCode_SetScroll_42 +0x8fc10b DoorCode_SetScroll_43 +0x8fc116 RoomCode_ScrollingSkyLand_ +0x8fc11b RoomCode_ScrollingSkyOcean_ +0x8fc120 RoomCode_ScrollingSkyLand_Shakes +0x8fc124 RoomCode_ExplodeShakes +0x8fc131 RoomCode_GenRandomExplodes_Nonblank +0x8fc183 RoomCode_GenRandomExplodes_4th +0x8fc1a9 RoomCode_GenRandomExplodes +0x8fc1d5 nullsub_295 +0x8fc1d6 kRoomCode_GenRandomExplodes_Sprite +0x8fc1de kRoomCode_GenRandomExplodes_Sfx +0x8fc1e6 RoomCode_ScrollRightDachora +0x8fc215 kRoomPlms_C98E_1 +0x8fc22f kRoomPlms_CA08_1 +0x8fc231 kRoomPlms_CA52_1 +0x8fc245 kRoomPlms_CAAE_1 +0x8fc247 kRoomPlms_CAF6_1 +0x8fc27f kRoomPlms_CB8B_1 +0x8fc281 kRoomPlms_CBD5_1 +0x8fc28f kRoomPlms_CC27_1 +0x8fc291 kRoomPlms_CC6F_1 +0x8fc2b1 kRoomPlms_CCCB_1 +0x8fc2b3 kRoomPlms_CD13_1 +0x8fc2bb kRoomPlms_CD5C_1 +0x8fc2bd kRoomPlms_CDA8_1 +0x8fc2bf kRoomPlms_CDF1_1 +0x8fc2c7 kRoomPlms_CE40_1 +0x8fc2c9 kRoomPlms_CE8A_0 +0x8fc2d1 kRoomPlms_C98E_0 +0x8fc2fd kRoomPlms_CA08_0 +0x8fc2ff kRoomPlms_CA52_0 +0x8fc319 kRoomPlms_CAAE_0 +0x8fc321 kRoomPlms_CB8B_0 +0x8fc323 kRoomPlms_CBD5_0 +0x8fc337 kRoomPlms_CC27_0 +0x8fc33f kRoomPlms_CC6F_0 +0x8fc34d kRoomPlms_CCCB_0 +0x8fc355 kRoomPlms_CD5C_0 +0x8fc357 kRoomPlms_CDA8_0 +0x8fc35f kRoomPlms_CDF1_0 +0x8fc36d kRoomPlms_CE40_0 +0x8fc375 kRoomPlms_CED2 +0x8fc37d kRoomPlms_CEFB_1 +0x8fc3df kRoomPlms_CF54 +0x8fc3e1 kRoomPlms_CF80 +0x8fc42b kRoomPlms_CFC9 +0x8fc445 kRoomPlms_D017 +0x8fc47d kRoomPlms_D055 +0x8fc48b kRoomPlms_D08A +0x8fc499 kRoomPlms_D0B9 +0x8fc49b kRoomPlms_D104 +0x8fc4a9 kRoomPlms_D13B +0x8fc4bd kRoomPlms_D16D +0x8fc4ef kRoomPlms_D1A3 +0x8fc503 kRoomPlms_D1DD +0x8fc53b kRoomPlms_D21C +0x8fc54f kRoomPlms_D252 +0x8fc551 kRoomPlms_D27E +0x8fc553 kRoomPlms_D2AA +0x8fc561 kRoomPlms_D2D9 +0x8fc563 kRoomPlms_D30B +0x8fc571 kRoomPlms_D340 +0x8fc57f kRoomPlms_D387 +0x8fc581 kRoomPlms_D3B6 +0x8fc589 kRoomPlms_D3DF +0x8fc591 kRoomPlms_D408 +0x8fc593 kRoomPlms_D433 +0x8fc595 kRoomPlms_D461 +0x8fc597 kRoomPlms_D48E +0x8fc5db kRoomPlms_D4C2 +0x8fc5dd kRoomPlms_D4EF +0x8fc5eb kRoomPlms_D51E +0x8fc5f9 kRoomPlms_D54D +0x8fc5fb kRoomPlms_D57A +0x8fc5fd kRoomPlms_D5A7 +0x8fc611 kRoomPlms_D5EC +0x8fc619 kRoomPlms_D617 +0x8fc61b kRoomPlms_D646 +0x8fc6ad kRoomPlms_D69A +0x8fc6e5 kRoomPlms_D6D0 +0x8fc6ed kRoomPlms_D6FD +0x8fc6ef kRoomPlms_D72A +0x8fc703 kRoomPlms_D765 +0x8fc70b kRoomPlms_D78F_1 +0x8fc755 kRoomPlms_D7E4 +0x8fc75d kRoomPlms_D81A +0x8fc765 kRoomPlms_D845 +0x8fc76d kRoomPlms_D86E +0x8fc76f kRoomPlms_D898 +0x8fc771 kRoomPlms_D8C5_1 +0x8fc773 kRoomPlms_D913 +0x8fc79f kRoomPlms_D95E_1 +0x8fc7a7 kRoomPlms_D9AA +0x8fc7af kRoomPlms_D9D4 +0x8fc7b7 kRoomPlms_D9FE +0x8fc7b9 kRoomPlms_DA2B +0x8fc7bb kRoomPlms_DA60_1 +0x8fc7e1 kRoomPlms_DAAE +0x8fc7e9 kRoomPlms_DAE1_1 +0x8fc7f7 kRoomPlms_DB31_1 +0x8fc805 kRoomPlms_DB7D_1 +0x8fc813 kRoomPlms_DBCD_1 +0x8fc821 kRoomPlms_DC19_1 +0x8fc823 kRoomPlms_DC65_1 +0x8fc831 kRoomPlms_DCB1_1 +0x8fc839 kRoomPlms_DCFF +0x8fc841 kRoomPlms_DD2E +0x8fc84f kRoomPlms_DD58_2 +0x8fc857 kRoomPlms_DDC4 +0x8fc86b kRoomPlms_DDF3 +0x8fc873 kRoomPlms_DE23 +0x8fc87b kRoomPlms_DE4D +0x8fc889 kRoomPlms_DE7A +0x8fc897 kRoomPlms_DEA7 +0x8fc8a5 kRoomPlms_DEDE +0x8fc8b3 kRoomPlms_DF1B +0x8fc8bb kRoomPlms_DF45_1 +0x8fc8bd kRoomPlms_DF8D_1 +0x8fc8bf kRoomPlms_DFD7_1 +0x8fc8c1 kRoomPlms_E021_1 +0x8fc8c3 kRoomPlms_E06B_1 +0x8fc8c5 kRoomPlms_E0B5_1 +0x8fc8c7 nullsub_142 +0x8fc8c8 RoomCode_8FC8C8 +0x8fc8d0 nullsub_143 +0x8fc8d1 nullsub_144 +0x8fc8d2 nullsub_145 +0x8fc8d3 RoomCode_SetupShaktoolRoomPlm +0x8fc8dc nullsub_146 +0x8fc8dd RoomCode_SetPauseCodeForDraygon +0x8fc8f6 PauseHook_DraygonRoom +0x8fc8fc UnpauseHook_DraygonRoom +0x8fc90a RoomCode_SetCollectedMap +0x8fc91e nullsub_147 +0x8fc91f RoomCode_SetZebesTimebombEvent +0x8fc933 RoomCode_SetLightHorizRoomShake +0x8fc946 RoomCode_SetMediumHorizRoomShake +0x8fc953 RoomCode_Escape4_SetMediumHorizRoomShake +0x8fc96e RoomCode_SetCeresDoorSolid +0x8fc976 RoomCode_CeresColorMathHdma +0x8fc97b RoomCode_CeresColorMathHdma_BgBase +0x8fc98e kRoom_c98e +0x8fc9a0 kRoomState_c98e_c9a0 +0x8fc9ba kRoomState_c98e_c9ba +0x8fc9d4 kRoom_c98e_DoorOuts +0x8fc9da kRoomScrolls_C98E +0x8fca08 kRoom_ca08 +0x8fca1a kRoomState_ca08_ca1a +0x8fca34 kRoomState_ca08_ca34 +0x8fca4e kRoom_ca08_DoorOuts +0x8fca52 kRoom_ca52 +0x8fca64 kRoomState_ca52_ca64 +0x8fca7e kRoomState_ca52_ca7e +0x8fca98 kRoom_ca52_DoorOuts +0x8fca9e kRoomScrolls_CA52 +0x8fcaae kRoom_caae +0x8fcac0 kRoomState_caae_cac0 +0x8fcada kRoomState_caae_cada +0x8fcaf4 kRoom_caae_DoorOuts +0x8fcaf6 kRoom_caf6 +0x8fcb08 kRoomState_caf6_cb08 +0x8fcb22 kRoomState_caf6_cb22 +0x8fcb3c kRoom_caf6_DoorOuts +0x8fcb4a kRoomScrolls_CAF6 +0x8fcb8b kRoom_cb8b +0x8fcb9d kRoomState_cb8b_cb9d +0x8fcbb7 kRoomState_cb8b_cbb7 +0x8fcbd1 kRoom_cb8b_DoorOuts +0x8fcbd5 kRoom_cbd5 +0x8fcbe7 kRoomState_cbd5_cbe7 +0x8fcc01 kRoomState_cbd5_cc01 +0x8fcc1b kRoom_cbd5_DoorOuts +0x8fcc21 kRoomScrolls_CBD5 +0x8fcc27 kRoom_cc27 +0x8fcc39 kRoomState_cc27_cc39 +0x8fcc53 kRoomState_cc27_cc53 +0x8fcc6d kRoom_cc27_DoorOuts +0x8fcc6f kRoom_cc6f +0x8fcc81 kRoomState_cc6f_cc81 +0x8fcc9b kRoomState_cc6f_cc9b +0x8fccb5 kRoom_cc6f_DoorOuts +0x8fccbb kRoomScrolls_CC6F +0x8fcccb kRoom_cccb +0x8fccdd kRoomState_cccb_ccdd +0x8fccf7 kRoomState_cccb_ccf7 +0x8fcd11 kRoom_cccb_DoorOuts +0x8fcd13 kRoom_cd13 +0x8fcd25 kRoomState_cd13_cd25 +0x8fcd3f kRoomState_cd13_cd3f +0x8fcd59 kRoom_cd13_DoorOuts +0x8fcd5b kRoomScrolls_CD13 +0x8fcd5c kRoom_cd5c +0x8fcd6e kRoomState_cd5c_cd6e +0x8fcd88 kRoomState_cd5c_cd88 +0x8fcda2 kRoom_cd5c_DoorOuts +0x8fcda6 kRoomScrolls_CD5C +0x8fcda8 kRoom_cda8 +0x8fcdba kRoomState_cda8_cdba +0x8fcdd4 kRoomState_cda8_cdd4 +0x8fcdee kRoom_cda8_DoorOuts +0x8fcdf0 kRoomScrolls_CDA8 +0x8fcdf1 kRoom_cdf1 +0x8fce03 kRoomState_cdf1_ce03 +0x8fce1d kRoomState_cdf1_ce1d +0x8fce37 kRoom_cdf1_DoorOuts +0x8fce39 kRoomScrolls_CDF1 +0x8fce40 kRoom_ce40 +0x8fce52 kRoomState_ce40_ce52 +0x8fce6c kRoomState_ce40_ce6c +0x8fce86 kRoom_ce40_DoorOuts +0x8fce8a kRoom_ce8a +0x8fce9c kRoomState_ce8a_ce9c +0x8fceb6 kRoomState_ce8a_ceb6 +0x8fced0 kRoom_ce8a_DoorOuts +0x8fced2 kRoom_ced2 +0x8fcedf kRoomState_ced2_cedf +0x8fcef9 kRoom_ced2_DoorOuts +0x8fcefb kRoom_cefb +0x8fcf0d kRoomState_cefb_cf0d +0x8fcf27 kRoomState_cefb_cf27 +0x8fcf41 kRoom_cefb_DoorOuts +0x8fcf49 kRoomScrolls_CEFB +0x8fcf54 kRoom_cf54 +0x8fcf61 kRoomState_cf54_cf61 +0x8fcf7b kRoom_cf54_DoorOuts +0x8fcf7f kRoomScrolls_CF54 +0x8fcf80 kRoom_cf80 +0x8fcf8d kRoomState_cf80_cf8d +0x8fcfa7 kRoom_cf80_DoorOuts +0x8fcfad kRoomScrolls_CF80 +0x8fcfc9 kRoom_cfc9 +0x8fcfd6 kRoomState_cfc9_cfd6 +0x8fcff0 kRoom_cfc9_DoorOuts +0x8fcffa kRoomScrolls_CFC9 +0x8fd017 kRoom_d017 +0x8fd024 kRoomState_d017_d024 +0x8fd03e kRoom_d017_DoorOuts +0x8fd046 kRoomScrolls_D017 +0x8fd055 kRoom_d055 +0x8fd062 kRoomState_d055_d062 +0x8fd07c kRoom_d055_DoorOuts +0x8fd07e kRoomScrolls_D055 +0x8fd08a kRoom_d08a +0x8fd097 kRoomState_d08a_d097 +0x8fd0b1 kRoom_d08a_DoorOuts +0x8fd0b5 kRoomScrolls_D08A +0x8fd0b9 kRoom_d0b9 +0x8fd0c6 kRoomState_d0b9_d0c6 +0x8fd0e0 kRoom_d0b9_DoorOuts +0x8fd0ec kRoomScrolls_D0B9 +0x8fd104 kRoom_d104 +0x8fd111 kRoomState_d104_d111 +0x8fd12b kRoom_d104_DoorOuts +0x8fd12f kRoomScrolls_D104 +0x8fd13b kRoom_d13b +0x8fd148 kRoomState_d13b_d148 +0x8fd162 kRoom_d13b_DoorOuts +0x8fd164 kRoomScrolls_D13B +0x8fd16d kRoom_d16d +0x8fd17a kRoomState_d16d_d17a +0x8fd194 kRoom_d16d_DoorOuts +0x8fd198 kRoomScrolls_D16D +0x8fd1a3 kRoom_d1a3 +0x8fd1b0 kRoomState_d1a3_d1b0 +0x8fd1ca kRoom_d1a3_DoorOuts +0x8fd1d0 kRoomScrolls_D1A3 +0x8fd1dd kRoom_d1dd +0x8fd1ea kRoomState_d1dd_d1ea +0x8fd204 kRoom_d1dd_DoorOuts +0x8fd20a kRoomScrolls_D1DD +0x8fd21c kRoom_d21c +0x8fd229 kRoomState_d21c_d229 +0x8fd243 kRoom_d21c_DoorOuts +0x8fd24b kRoomScrolls_D21C +0x8fd252 kRoom_d252 +0x8fd25f kRoomState_d252_d25f +0x8fd279 kRoom_d252_DoorOuts +0x8fd27d kRoomScrolls_D252 +0x8fd27e kRoom_d27e +0x8fd28b kRoomState_d27e_d28b +0x8fd2a5 kRoom_d27e_DoorOuts +0x8fd2a9 kRoomScrolls_D27E +0x8fd2aa kRoom_d2aa +0x8fd2b7 kRoomState_d2aa_d2b7 +0x8fd2d1 kRoom_d2aa_DoorOuts +0x8fd2d3 kRoomScrolls_D2AA +0x8fd2d9 kRoom_d2d9 +0x8fd2e6 kRoomState_d2d9_d2e6 +0x8fd300 kRoom_d2d9_DoorOuts +0x8fd304 kRoomScrolls_D2D9 +0x8fd30b kRoom_d30b +0x8fd318 kRoomState_d30b_d318 +0x8fd332 kRoom_d30b_DoorOuts +0x8fd33a kRoomScrolls_D30B +0x8fd340 kRoom_d340 +0x8fd34d kRoomState_d340_d34d +0x8fd367 kRoom_d340_DoorOuts +0x8fd36f kRoomScrolls_D340 +0x8fd387 kRoom_d387 +0x8fd394 kRoomState_d387_d394 +0x8fd3ae kRoom_d387_DoorOuts +0x8fd3b2 kRoomScrolls_D387 +0x8fd3b6 kRoom_d3b6 +0x8fd3c3 kRoomState_d3b6_d3c3 +0x8fd3dd kRoom_d3b6_DoorOuts +0x8fd3df kRoom_d3df +0x8fd3ec kRoomState_d3df_d3ec +0x8fd406 kRoom_d3df_DoorOuts +0x8fd408 kRoom_d408 +0x8fd415 kRoomState_d408_d415 +0x8fd42f kRoom_d408_DoorOuts +0x8fd433 kRoom_d433 +0x8fd440 kRoomState_d433_d440 +0x8fd45a kRoom_d433_DoorOuts +0x8fd460 kRoomScrolls_D433 +0x8fd461 kRoom_d461 +0x8fd46e kRoomState_d461_d46e +0x8fd488 kRoom_d461_DoorOuts +0x8fd48e kRoom_d48e +0x8fd49b kRoomState_d48e_d49b +0x8fd4b5 kRoom_d48e_DoorOuts +0x8fd4bb kRoomScrolls_D48E +0x8fd4c2 kRoom_d4c2 +0x8fd4cf kRoomState_d4c2_d4cf +0x8fd4e9 kRoom_d4c2_DoorOuts +0x8fd4ef kRoom_d4ef +0x8fd4fc kRoomState_d4ef_d4fc +0x8fd516 kRoom_d4ef_DoorOuts +0x8fd51a kRoomScrolls_D4EF +0x8fd51e kRoom_d51e +0x8fd52b kRoomState_d51e_d52b +0x8fd545 kRoom_d51e_DoorOuts +0x8fd549 kRoomScrolls_D51E +0x8fd54d kRoom_d54d +0x8fd55a kRoomState_d54d_d55a +0x8fd574 kRoom_d54d_DoorOuts +0x8fd578 kRoomScrolls_D54D +0x8fd57a kRoom_d57a +0x8fd587 kRoomState_d57a_d587 +0x8fd5a1 kRoom_d57a_DoorOuts +0x8fd5a5 kRoomScrolls_D57A +0x8fd5a7 kRoom_d5a7 +0x8fd5b4 kRoomState_d5a7_d5b4 +0x8fd5ce kRoom_d5a7_DoorOuts +0x8fd5da kRoomScrolls_D5A7 +0x8fd5ec kRoom_d5ec +0x8fd5f9 kRoomState_d5ec_d5f9 +0x8fd613 kRoom_d5ec_DoorOuts +0x8fd617 kRoom_d617 +0x8fd624 kRoomState_d617_d624 +0x8fd63e kRoom_d617_DoorOuts +0x8fd642 kRoomScrolls_D617 +0x8fd646 kRoom_d646 +0x8fd653 kRoomState_d646_d653 +0x8fd66d kRoom_d646_DoorOuts +0x8fd675 kRoomScrolls_D646 +0x8fd69a kRoom_d69a +0x8fd6a7 kRoomState_d69a_d6a7 +0x8fd6c1 kRoom_d69a_DoorOuts +0x8fd6c5 kRoomScrolls_D69A +0x8fd6d0 kRoom_d6d0 +0x8fd6dd kRoomState_d6d0_d6dd +0x8fd6f7 kRoom_d6d0_DoorOuts +0x8fd6f9 kRoomScrolls_D6D0 +0x8fd6fd kRoom_d6fd +0x8fd70a kRoomState_d6fd_d70a +0x8fd724 kRoom_d6fd_DoorOuts +0x8fd726 kRoomScrolls_D6FD +0x8fd72a kRoom_d72a +0x8fd737 kRoomState_d72a_d737 +0x8fd751 kRoom_d72a_DoorOuts +0x8fd757 kRoomScrolls_D72A +0x8fd765 kRoom_d765 +0x8fd772 kRoomState_d765_d772 +0x8fd78c kRoom_d765_DoorOuts +0x8fd78e kRoomScrolls_D765 +0x8fd78f kRoom_d78f +0x8fd7a1 kRoomState_d78f_d7a1 +0x8fd7bb kRoomState_d78f_d7bb +0x8fd7d5 kRoom_d78f_DoorOuts +0x8fd7d9 kRoomScrolls_D78F +0x8fd7e4 kRoom_d7e4 +0x8fd7f1 kRoomState_d7e4_d7f1 +0x8fd80b kRoom_d7e4_DoorOuts +0x8fd813 kRoomScrolls_D7E4 +0x8fd81a kRoom_d81a +0x8fd827 kRoomState_d81a_d827 +0x8fd841 kRoom_d81a_DoorOuts +0x8fd845 kRoom_d845 +0x8fd852 kRoomState_d845_d852 +0x8fd86c kRoom_d845_DoorOuts +0x8fd86e kRoom_d86e +0x8fd87b kRoomState_d86e_d87b +0x8fd895 kRoom_d86e_DoorOuts +0x8fd897 kRoomScrolls_D86E +0x8fd898 kRoom_d898 +0x8fd8a5 kRoomState_d898_d8a5 +0x8fd8bf kRoom_d898_DoorOuts +0x8fd8c3 kRoomScrolls_D898 +0x8fd8c5 kRoom_d8c5 +0x8fd8d7 kRoomState_d8c5_d8d7 +0x8fd8f1 kRoomState_d8c5_d8f1 +0x8fd90b kRoom_d8c5_DoorOuts +0x8fd90f kRoomScrolls_D8C5 +0x8fd913 kRoom_d913 +0x8fd920 kRoomState_d913_d920 +0x8fd93a kRoom_d913_DoorOuts +0x8fd942 kRoomScrolls_D913 +0x8fd95e kRoom_d95e +0x8fd970 kRoomState_d95e_d970 +0x8fd98a kRoomState_d95e_d98a +0x8fd9a4 kRoom_d95e_DoorOuts +0x8fd9a8 kRoomScrolls_D95E +0x8fd9aa kRoom_d9aa +0x8fd9b7 kRoomState_d9aa_d9b7 +0x8fd9d1 kRoom_d9aa_DoorOuts +0x8fd9d3 kRoomScrolls_D9AA +0x8fd9d4 kRoom_d9d4 +0x8fd9e1 kRoomState_d9d4_d9e1 +0x8fd9fb kRoom_d9d4_DoorOuts +0x8fd9fd kRoomScrolls_D9D4 +0x8fd9fe kRoom_d9fe +0x8fda0b kRoomState_d9fe_da0b +0x8fda25 kRoom_d9fe_DoorOuts +0x8fda29 kRoomScrolls_D9FE +0x8fda2b kRoom_da2b +0x8fda38 kRoomState_da2b_da38 +0x8fda52 kRoom_da2b_DoorOuts +0x8fda56 kRoomScrolls_DA2B +0x8fda60 kRoom_da60 +0x8fda72 kRoomState_da60_da72 +0x8fda8c kRoomState_da60_da8c +0x8fdaa6 kRoom_da60_DoorOuts +0x8fdaaa kRoomScrolls_DA60 +0x8fdaae kRoom_daae +0x8fdabb kRoomState_daae_dabb +0x8fdad5 kRoom_daae_DoorOuts +0x8fdadd kRoomScrolls_DAAE +0x8fdae1 kRoom_dae1 +0x8fdaf3 kRoomState_dae1_daf3 +0x8fdb0d kRoomState_dae1_db0d +0x8fdb27 kRoom_dae1_DoorOuts +0x8fdb2b kRoomScrolls_DAE1 +0x8fdb31 kRoom_db31 +0x8fdb43 kRoomState_db31_db43 +0x8fdb5d kRoomState_db31_db5d +0x8fdb77 kRoom_db31_DoorOuts +0x8fdb7b kRoomScrolls_DB31 +0x8fdb7d kRoom_db7d +0x8fdb8f kRoomState_db7d_db8f +0x8fdba9 kRoomState_db7d_dba9 +0x8fdbc3 kRoom_db7d_DoorOuts +0x8fdbc7 kRoomScrolls_DB7D +0x8fdbcd kRoom_dbcd +0x8fdbdf kRoomState_dbcd_dbdf +0x8fdbf9 kRoomState_dbcd_dbf9 +0x8fdc13 kRoom_dbcd_DoorOuts +0x8fdc17 kRoomScrolls_DBCD +0x8fdc19 kRoom_dc19 +0x8fdc2b kRoomState_dc19_dc2b +0x8fdc45 kRoomState_dc19_dc45 +0x8fdc5f kRoom_dc19_DoorOuts +0x8fdc63 kRoomScrolls_DC19 +0x8fdc65 kRoom_dc65 +0x8fdc77 kRoomState_dc65_dc77 +0x8fdc91 kRoomState_dc65_dc91 +0x8fdcab kRoom_dc65_DoorOuts +0x8fdcaf kRoomScrolls_DC65 +0x8fdcb1 kRoom_dcb1 +0x8fdcc3 kRoomState_dcb1_dcc3 +0x8fdcdd kRoomState_dcb1_dcdd +0x8fdcf7 kRoom_dcb1_DoorOuts +0x8fdcfb kRoomScrolls_DCB1 +0x8fdcff kRoom_dcff +0x8fdd0c kRoomState_dcff_dd0c +0x8fdd26 kRoom_dcff_DoorOuts +0x8fdd2c kRoomScrolls_DCFF +0x8fdd2e kRoom_dd2e +0x8fdd3b kRoomState_dd2e_dd3b +0x8fdd55 kRoom_dd2e_DoorOuts +0x8fdd57 kRoomScrolls_DD2E +0x8fdd58 kRoom_dd58 +0x8fdd6e kRoomState_dd58_dd6e +0x8fdd88 kRoomState_dd58_dd88 +0x8fdda2 kRoomState_dd58_dda2 +0x8fddbc kRoom_dd58_DoorOuts +0x8fddc0 kRoomScrolls_DD58 +0x8fddc4 kRoom_ddc4 +0x8fddd1 kRoomState_ddc4_ddd1 +0x8fddeb kRoom_ddc4_DoorOuts +0x8fddef kRoomScrolls_DDC4 +0x8fddf3 kRoom_ddf3 +0x8fde00 kRoomState_ddf3_de00 +0x8fde1a kRoom_ddf3_DoorOuts +0x8fde20 kRoomScrolls_DDF3 +0x8fde23 kRoom_de23 +0x8fde30 kRoomState_de23_de30 +0x8fde4a kRoom_de23_DoorOuts +0x8fde4c kRoomScrolls_DE23 +0x8fde4d kRoom_de4d +0x8fde5a kRoomState_de4d_de5a +0x8fde74 kRoom_de4d_DoorOuts +0x8fde78 kRoomScrolls_DE4D +0x8fde7a kRoom_de7a +0x8fde87 kRoomState_de7a_de87 +0x8fdea1 kRoom_de7a_DoorOuts +0x8fdea5 kRoomScrolls_DE7A +0x8fdea7 kRoom_dea7 +0x8fdeb4 kRoomState_dea7_deb4 +0x8fdece kRoom_dea7_DoorOuts +0x8fded2 kRoomScrolls_DEA7 +0x8fdede kRoom_dede +0x8fdeeb kRoomState_dede_deeb +0x8fdf05 kRoom_dede_DoorOuts +0x8fdf09 kRoomScrolls_DEDE +0x8fdf1b kRoom_df1b +0x8fdf28 kRoomState_df1b_df28 +0x8fdf42 kRoom_df1b_DoorOuts +0x8fdf44 kRoomScrolls_DF1B +0x8fdf45 kRoom_df45 +0x8fdf57 kRoomState_df45_df57 +0x8fdf71 kRoomState_df45_df71 +0x8fdf8b kRoom_df45_DoorOuts +0x8fdf8d kRoom_df8d +0x8fdf9f kRoomState_df8d_df9f +0x8fdfb9 kRoomState_df8d_dfb9 +0x8fdfd3 kRoom_df8d_DoorOuts +0x8fdfd7 kRoom_dfd7 +0x8fdfe9 kRoomState_dfd7_dfe9 +0x8fe003 kRoomState_dfd7_e003 +0x8fe01d kRoom_dfd7_DoorOuts +0x8fe021 kRoom_e021 +0x8fe033 kRoomState_e021_e033 +0x8fe04d kRoomState_e021_e04d +0x8fe067 kRoom_e021_DoorOuts +0x8fe06b kRoom_e06b +0x8fe07d kRoomState_e06b_e07d +0x8fe097 kRoomState_e06b_e097 +0x8fe0b1 kRoom_e06b_DoorOuts +0x8fe0b5 kRoom_e0b5 +0x8fe0c7 kRoomState_e0b5_e0c7 +0x8fe0e1 kRoomState_e0b5_e0e1 +0x8fe0fb kRoom_e0b5_DoorOuts +0x8fe0fd kRoomBgData_CD13_1 +0x8fe108 kRoomBgData_DA60_1 +0x8fe113 kRoomBgData_CD13_0 +0x8fe117 kRoomBgData_E82C +0x8fe14d kRoomBgData_CC6F_1 +0x8fe168 kRoomBgData_CA52_1 +0x8fe183 kRoomBgData_CE40_1 +0x8fe19e kRoomBgData_CDF1_1 +0x8fe1b9 kRoomBgData_CAAE_1 +0x8fe1d4 kRoomBgData_DF45_1 +0x8fe1d8 DoorCode_StartWreckedSkipTreadmill_East +0x8fe1e8 DoorCode_SetScroll_44 +0x8fe1f3 DoorCode_SetScroll_45 +0x8fe1fe DoorCode_SetScroll_46 +0x8fe20f DoorCode_SetScroll_47 +0x8fe21a DoorCode_SetScroll_48 +0x8fe229 DoorCode_SetScroll_49 +0x8fe248 kRoomBgData_D08A +0x8fe25a kRoomBgData_D4C2 +0x8fe26c DoorCode_SetupElevatubeFromSouth +0x8fe291 DoorCode_SetupElevatubeFromNorth +0x8fe2b6 RoomCode_Elevatube +0x8fe301 DoorCode_ResetElevatubeNorthExit +0x8fe309 DoorCode_ResetElevatubeSouthExit +0x8fe318 DoorCode_SetScroll_50 +0x8fe329 UNUSED_DoorCode_SetScroll_51 +0x8fe33a UNUSED_DoorCode_SetScroll_52 +0x8fe345 DoorCode_SetScroll_53 +0x8fe356 DoorCode_SetScroll_54 +0x8fe367 DoorCode_SetScroll_55 +0x8fe378 DoorCode_SetScroll_56 +0x8fe38d DoorCode_SetScroll_57 +0x8fe398 DoorCode_SetScroll_58 +0x8fe3a3 DoorCode_SetScroll_59 +0x8fe3ae DoorCode_SetScroll_60 +0x8fe3b9 DoorCode_SetScroll_61 +0x8fe3c8 DoorCode_SetScroll_62 +0x8fe3d9 DoorCode_SetScroll_63 +0x8fe3e8 kRoomBgData_DAAE +0x8fe403 kRoomBgData_DAE1_1 +0x8fe41e kRoomBgData_DC19_1 +0x8fe439 kRoomBgData_DE4D +0x8fe454 kRoomBgData_DDF3 +0x8fe46f kRoomBgData_DEA7 +0x8fe48a kRoomBgData_DD58_2 +0x8fe4a5 kRoomBgData_E06B_1 +0x8fe4c0 DoorCode_SetScroll_64 +0x8fe4cf DoorCode_SetScroll_65 +0x8fe4e0 DoorCode_CeresElevatorShaft +0x8fe513 DoorCode_CeresElevatorShaft_2 +0x8fe51f RoomCode_CeresElevatorShaft_ +0x8fe524 nullsub_148 +0x8fe525 RoomCode_SpawnCeresFallingDebris +0x8fe551 kRoomCode_SpawnCeresFallingDebris_Tab +0x8fe571 RoomCode_HandleCeresRidleyGetaway +0x8fe57c RoomCode_ShakeScreenHorizDiag +0x8fe5a0 RoomCode_GenRandomExplodes_4th_ +0x8fe5a4 RoomCode_ShakeScreenHorizDiagStrong +0x8fe5d2 HandleRoomDefStateSelect +0x8fe5e6 RoomDefStateSelect_Finish +0x8fe5eb RoomDefStateSelect_Door +0x8fe5ff RoomDefStateSelect_TourianBoss01 +0x8fe612 RoomDefStateSelect_IsEventSet +0x8fe629 RoomDefStateSelect_IsBossDead +0x8fe640 UNUSED_sub_8FE640 +0x8fe652 RoomDefStateSelect_MorphBallMissiles +0x8fe669 RoomDefStateSelect_PowerBombs +0x8fe678 UNUSED_sub_8FE678 +0x8fe68a kDoorClosingPlmIds +0x8fe6a2 kStateHeaderGraphicsSet_0 +0x8fe6ab kStateHeaderGraphicsSet_1 +0x8fe6b4 kStateHeaderGraphicsSet_2 +0x8fe6bd kStateHeaderGraphicsSet_3 +0x8fe6c6 kStateHeaderGraphicsSet_4 +0x8fe6cf kStateHeaderGraphicsSet_5 +0x8fe6d8 kStateHeaderGraphicsSet_6 +0x8fe6e1 kStateHeaderGraphicsSet_7 +0x8fe6ea kStateHeaderGraphicsSet_8 +0x8fe6f3 kStateHeaderGraphicsSet_9 +0x8fe6fc kStateHeaderGraphicsSet_10 +0x8fe705 kStateHeaderGraphicsSet_11 +0x8fe70e kStateHeaderGraphicsSet_12 +0x8fe717 kStateHeaderGraphicsSet_13 +0x8fe720 kStateHeaderGraphicsSet_14 +0x8fe729 kStateHeaderGraphicsSet_15 +0x8fe732 kStateHeaderGraphicsSet_16 +0x8fe73b kStateHeaderGraphicsSet_17 +0x8fe744 kStateHeaderGraphicsSet_18 +0x8fe74d kStateHeaderGraphicsSet_19 +0x8fe756 kStateHeaderGraphicsSet_20 +0x8fe75f kStateHeaderGraphicsSet_21 +0x8fe768 kStateHeaderGraphicsSet_22 +0x8fe771 kStateHeaderGraphicsSet_23 +0x8fe77a kStateHeaderGraphicsSet_24 +0x8fe783 kStateHeaderGraphicsSet_25 +0x8fe78c kStateHeaderGraphicsSet_26 +0x8fe795 kStateHeaderGraphicsSet_27 +0x8fe79e kStateHeaderGraphicsSet_28 +0x8fe7a7 kStateHeaderGraphicsSets +0x8fe7e1 kMusicPointers +0x8fe82c kRoom_e82c +0x8fe839 kRoomState_e82c_e839 +0x8fe853 kRoom_e82c_DoorOuts +0x8fe87f kRoomPlms_E82C +0x8fe88f RunRoomSetupCode +0x8fe8a3 RunDoorSetupCode +0x8fe8bd RunRoomMainCode +0x8fe8cd RoomCode_CrocomireShaking +0x8fe950 RoomCode_RidleyRoomShaking +0x8fe97b kRoomCode_RidleyRoomShaking_X +0x8fe98b kRoomCode_RidleyRoomShaking_Y +0x908000 Samus_Animate +0x908067 kSamusFxHandlers +0x908077 nullsub_12 +0x908078 Samus_Animate_NoFx +0x9080b8 Samus_Animate_WaterFx +0x9080e6 Samus_SpawnWaterSplash +0x90813e Samus_SpawnAirBubbles +0x9081a4 kWaterSplashTypeTable +0x9081c0 Samus_Animate_LavaFx +0x908219 Samus_Animate_AcidFx +0x90824c Samus_Animate_SubmergedLavaAcid +0x9082dc Samus_HandleAnimDelay +0x908324 kAnimDelayFuncs +0x908344 Samus_AnimDelayFunc_0to5 +0x908346 Samus_AnimDelayFunc_6_GotoStartIfLittleHealth +0x908360 Samus_AnimDelayFunc_7 +0x908370 Samus_AnimDelayFunc_8_AutoJumpHack +0x90839a Samus_AnimDelayFunc_9_TransToPose +0x9083f6 UNUSED_Samus_AnimDelayFunc_10 +0x90841d Samus_AnimDelayFunc_11_SelectDelaySequenceWalljump +0x90848b Samus_AnimDelayFunc_12_TransToPose +0x9084b6 Samus_AnimDelayFunc_13_TransToPose +0x9084c7 Samus_AnimDelayFunc_14_Goto +0x9084db Samus_AnimDelayFunc_15_GotoStart +0x9084e3 Samus_HandleNormalAnimDelay +0x90852c Samus_HandleSpeedBoosterAnimDelay +0x9085e2 Samus_Draw +0x90864e kSamusIsBottomDrawnFuncs +0x908686 SamusBottomDrawn_1 +0x908688 SamusBottomDrawn_4 +0x90868d SamusBottomDrawn_0_Standing +0x9086c6 SamusBottomDrawn_3_SpinJump +0x9086ee SamusBottomDrawn_A_Knockback +0x90870c SamusBottomDrawn_F_Transitions +0x90874c UNUSED_SamusBottomDrawn_D +0x908768 SamusBottomDrawn_14_WallJump +0x90877c SamusBottomDrawn_19_DamageBoost +0x908790 SamusBottomDrawn_1B +0x9087bd Samus_DrawEchoes +0x908855 Samus_DrawEcho +0x9088ba Samus_DrawShinesparkCrashEchoes +0x908953 Samus_DrawShinesparkCrashEchoProjectiles +0x908976 Samus_DrawStartingDeathAnim +0x908998 Samus_DrawDuringDeathAnim +0x908a00 Samus_DrawWhenNotAnimatingOrDying +0x908a4c HandleAtmosphericEffects +0x908ab5 kAtmosphericTypeFuncs +0x908ac5 AtmosphericTypeFunc_1_FootstepSplash +0x908b16 AtmosphericTypeFunc_3_DivingSplash +0x908b2e AtmosphericTypeFunc_4_LavaSurfaceDmg +0x908b57 AtmosphericTypeFunc_67_Dust +0x908b64 AtmosphericTypeFunc_5_Bubbles +0x908b74 AtmosphericTypeFunc_Common +0x908b93 kAtmosphericGraphicAnimationTimers +0x908bef kAtmosphericTypeNumFrames +0x908c1f Samus_CalcSpritemapPos +0x908c5c kSamus_CalcSpritemapPos +0x908c94 Samus_CalcSpritemapPos_Default +0x908cc3 Samus_CalcSpritemapPos_Standing +0x908d38 Samus_CalcSpritemapPos_Default_ +0x908d3c Samus_CalcSpritemapPos_Crouch +0x908d98 Samus_CalcSpritemapPos_Special +0x908e0f SetLiquidPhysicsType +0x908e26 kLiquidPhysicsType +0x908e36 LiquidPhysicsType_0 +0x908e3a LiquidPhysicsType_24_LavaAcid +0x908e4a LiquidPhysicsType_6_Water +0x908e64 Samus_HandleMovement_X +0x908e75 UNUSED_sub_908E75 +0x908ea9 Samus_MoveX +0x908edf Samus_BombJumpRisingXMovement? +0x908f1b Samus_BombJumpRisingYMovement? +0x908f5f Samus_BombJumpFallingXMovement? +0x908f86 Samus_BombJumpFallingYMovement? +0x908fb3 Samus_JumpingMovement +0x909040 Samus_SpinJumpMovement +0x9090c4 Samus_CheckStartFalling +0x9090e2 Samus_MoveY_WithSpeedCalc +0x909168 Samus_FallingMovement +0x90919f Samus_MorphedFallingMovement +0x9091d1 Samus_MorphedBouncingMovement +0x90923f Samus_Move_NoSpeedCalc_Y +0x909288 Samus_MoveExtraY +0x9092b8 Samus_CheckAndMoveY +0x9092c7 Samus_MoveY_Simple_ +0x9092d6 UNUSED_sub_9092D6 +0x9092e9 nullsub_3 +0x9092ea UNUSED_sub_9092EA +0x909348 Samus_Move_NoBaseSpeed_X +0x909350 Samus_MoveLeft +0x9093b1 Samus_MoveRight +0x9093ec Samus_MoveUp +0x909440 Samus_MoveDown +0x90946e Samus_MoveHandler_ReleaseFromGrapple +0x9094cb Samus_HandleMovement_DrainedCrouching +0x9094ec MainScrollingRoutine +0x909589 Samus_ScrollFinishedHook_SporeSpawnFight +0x909595 UNUSED_sub_909595 +0x9095a0 Samus_HandleScroll_X +0x90963f kSamus_HandleScroll_X_FaceRight +0x909647 kSamus_HandleScroll_X_FaceLeft +0x90964f Samus_HandleScroll_Y +0x9096c0 Samus_CalcDistanceMoved_X +0x9096ff Samus_CalcDistanceMoved_Y +0x90973e Samus_HandleExtraRunspeedX +0x909826 Samus_MoveRight_NoColl +0x909842 Samus_MoveLeft_NoColl +0x909871 Samus_MoveDown_NoColl +0x90988d Samus_MoveUp_NoColl +0x9098bc Samus_InitJump +0x909949 Samus_InitWallJump +0x9099d6 Samus_SetSpeedForKnockback_Y +0x909a2c Samus_InitBombJump +0x909a7e Samus_CalcBaseSpeed_X +0x909b1f Samus_CalcBaseSpeed_NoDecel_X +0x909bd1 Samus_DetermineSpeedTableEntryPtr_X +0x909c21 Samus_DetermineGrappleSwingSpeed_X +0x909c5b Samus_DetermineAccel_Y +0x909cac Samus_GrappleWallJumpCheck +0x909d35 Samus_WallJumpCheck +0x909e8b kSamusPhys_LavaSubdamagePerFrame +0x909e8d kSamusPhys_LavaDamagePerFrame +0x909e8f kSamusPhys_AcidSubdamagePerFrame +0x909e91 kSamusPhys_AcidDamagePerFrame +0x909e93 kSamusPhys_AnimDelayInWater +0x909e95 kSamusPhys_AnimDelayInAcid +0x909e97 kSamusPhys_JumpMinYVelAir +0x909e99 kSamusPhys_JumpMaxYVelAir +0x909e9b kSamusPhys_JumpMinYVelWater +0x909e9d kSamusPhys_JumpMaxYVelWater +0x909eb9 kSamus_InitJump_Speed_Y +0x909ebf kSamus_InitJump_Subspeed_Y +0x909ec5 kSamus_InitJump_Tab2 +0x909ecb kSamus_InitJump_Tab3 +0x909ed1 kSamus_InitWallJump_0 +0x909ed7 kSamus_InitWallJump_1 +0x909edd kSamus_InitWallJump_2 +0x909ee3 kSamus_InitWallJump_3 +0x909ee9 kSamus_SetSpeedForKnockback_Y_Speed +0x909eef kSamus_SetSpeedForKnockback_Y_Subspeed +0x909ef5 kSamus_InitBombJump_Speed +0x909efb kSamus_InitBombJump_Subspeed +0x909f01 kSamus_HandleExtraRunspeedX_Tab0 +0x909f07 kSamus_HandleExtraRunspeedX_Tab1 +0x909f0d kSamus_HandleExtraRunspeedX_Tab2 +0x909f13 kSamus_HandleExtraRunspeedX_Tab3 +0x909f19 kSamus_HandleExtraRunspeedX_Tab4 +0x909f1f kSamus_HandleExtraRunspeedX_Tab5 +0x909f49 kSamusSpeedTable_Normal_X +0x90a08d kSamusSpeedTable_Water_X +0x90a1dd kSamusSpeedTable_LavaAcid_X +0x90a32d Samus_Movement_07_Unused +0x90a337 Samus_MovementHandler_Normal +0x90a34b kSamusMovementHandlers +0x90a383 Samus_Movement_00_Standing +0x90a3e5 Samus_Movement_01_Running +0x90a424 kSamusFootstepFrame +0x90a42e Samus_Movement_02_NormalJumping +0x90a436 Samus_Movement_03_SpinJumping +0x90a514 kSamusFramesForUnderwaterSfx +0x90a521 Samus_Movement_04_MorphBallOnGround +0x90a573 Samus_Movement_05_Crouching +0x90a58d Samus_Movement_06_Falling +0x90a5ca Samus_Movement_08_MorphBallFalling +0x90a5fb Samus_Movement_09_Unused +0x90a5fc Samus_Movement_0A_KnockbackOrCrystalFlashEnding +0x90a607 Samus_Movement_0B_Unused +0x90a60f Samus_Movement_0C_Unused +0x90a617 Samus_Movement_0D_Unused +0x90a61c Samus_Movement_0F_CrouchingEtcTransition +0x90a659 kSamusCrouchingEtcFuncs +0x90a671 nullsub_13 +0x90a672 SamusCrouchingEtcFunc +0x90a67c Samus_Movement_0E_TurningAroundOnGround +0x90a694 Samus_Movement_10_Moonwalking +0x90a69f Samus_Movement_11_SpringBallOnGround +0x90a6f1 Samus_Movement_12_SpringBallInAir +0x90a703 Samus_Movement_13_SpringBallFalling +0x90a734 Samus_Movement_14_WallJumping +0x90a75f Samus_Movement_15_RanIntoWall +0x90a780 Samus_Movement_16_Grappling +0x90a790 Samus_Movement_17_TurningAroundJumping +0x90a7ad Samus_Movement_18_TurningAroundFalling +0x90a7ca Samus_Movement_19_DamageBoost +0x90a7d2 Samus_Movement_1A_GrabbedByDraygon +0x90a7da Samus_Movement_1B_ShinesparkEtc +0x90a7e2 DisableMinimapAndMarkBossRoomAsExplored +0x90a8a6 MarkMapTileAsExplored +0x90a8ef InitializeMiniMapBroken +0x90a91b UpdateMinimap +0x90aa43 UpdateMinimapInside +0x90ab5f MarkMapTileAboveSamusAsExplored +0x90ab75 AdjustMapBitsForMapPageSpill +0x90ac04 kShr0x80 +0x90ac0c kShr0xFc00 +0x90ac1c Samus_HandleCooldown +0x90ac39 Samus_CanFireBeam +0x90ac5a Samus_CanFireSuperMissile +0x90ac8d UpdateBeamTilesAndPalette +0x90acc2 WriteBeamPalette_A +0x90accd WriteBeamPalette_Y +0x90acf0 LoadProjectilePalette +0x90acfc LoadProjectilePalette_ +0x90ad22 ResetProjectileData +0x90adb7 ClearProjectile +0x90ae06 KillProjectile +0x90ae3a kKillProjectileFuncs +0x90ae4e KillProjectileFunc_0 +0x90ae59 KillProjectileFunc_1 +0x90ae6e KillProjectileFunc_2 +0x90ae79 KillProjectileFunc_3 +0x90ae8e KillProjectileFunc_4 +0x90ae99 KillProjectileFunc_6 +0x90aeae KillProjectileFunc_7 +0x90aeb9 KillProjectileFunc_8 +0x90aece HandleProjectile +0x90aef3 ProjPreInstr_Beam_NoWaveBeam +0x90af36 kProjPreInstr_Beam_Funcs +0x90af4a ProjPreInstr_Dir0459 +0x90af52 ProjPreInstr_Dir1368 +0x90af60 ProjPreInstr_Dir27 +0x90af68 ProjPreInstr_Missile +0x90afb3 kProjPreInstr_Missile_Funcs +0x90afc7 ProjPreInstr_Missile_Func0459 +0x90afcf ProjPreInstr_Missile_Func1368 +0x90afdd ProjPreInstr_Missile_Func27 +0x90afe5 ProjPreInstr_SuperMissile +0x90b033 kProjPreInstr_SuperMissile_Funcs +0x90b047 ProjPreInstr_SuperMissile_Func0459 +0x90b052 ProjPreInstr_SuperMissile_Func1368 +0x90b06a ProjPreInstr_SuperMissile_Func27 +0x90b075 ProjPreInstr_Func1 +0x90b099 ProjPreInstr_Bomb +0x90b0ae ProjPreInstr_PowerBomb +0x90b0c3 ProjPreInstr_WavePlasmaEtc +0x90b0e4 ProjPreInstr_BeamOrIceWave +0x90b103 ProjPreInstr_Wave_Shared +0x90b127 kProjPreInstr_WavePlasmaEtcFuncs +0x90b13b ProjPreInstr_WavePlasmaEtc_0459 +0x90b143 ProjPreInstr_WavePlasmaEtc_1368 +0x90b151 ProjPreInstr_WavePlasmaEtc_27 +0x90b159 ProjPreInstr_HyperBeam +0x90b169 ProjPreInstr_Empty +0x90b16a DeleteProjectileIfFarOffScreen +0x90b197 SetInitialProjectileSpeed +0x90b1ba SetInitialProjectileSpeed_1368 +0x90b1bf SetInitialProjectileSpeed_Common +0x90b1c9 kSetInitialProjectileSpeedFuncs +0x90b1dd InitializeProjectileSpeedOfType +0x90b1f3 InitializeProjectileSpeed +0x90b204 kInitializeProjectileSpeed_Funcs +0x90b218 InitializeProjectileSpeed_Up +0x90b23d InitializeProjectileSpeed_UpRight +0x90b268 InitializeProjectileSpeed_Right +0x90b277 InitializeProjectileSpeed_DownRight +0x90b28c InitializeProjectileSpeed_Down +0x90b29b InitializeProjectileSpeed_DownLeft +0x90b2b4 InitializeProjectileSpeed_Left +0x90b2c7 InitializeProjectileSpeed_UpLeft +0x90b2f6 Missile_Func1 +0x90b366 SuperMissileBlockCollDetect_Y +0x90b406 SuperMissileBlockCollDetect_X +0x90b4a6 Projectile_Func4 +0x90b525 ProjInstr_MoveLeftProjectileTrailDown +0x90b587 ProjInstr_MoveRightProjectileTrailDown +0x90b5b3 ProjInstr_MoveLeftProjectileTrailUp +0x90b657 SpawnProjectileTrail +0x90b6a9 HandleProjectileTrails +0x90b80d HudSelectionHandler_NothingOrPowerBombs +0x90b887 FireUnchargedBeam +0x90b96e kProjectileBombPreInstr +0x90b986 FireChargedBeam +0x90ba3e kFireChargedBeam_Funcs +0x90ba56 InitProjectilePositionDirection +0x90bafc HandleChargingBeamGfxAudio +0x90bbe1 DrawFlareAnimationComponent +0x90bcbe ClearFlareAnimationState +0x90bcd1 FireHyperBeam +0x90bd64 CheckBeamCollByDir +0x90bd72 kCheckBeamCollByDir +0x90bd86 CheckBeamCollByDir_0459 +0x90bd8e CheckBeamCollByDir_1368 +0x90bd9c CheckBeamCollByDir_2 +0x90bda4 CheckBeamCollByDir_7 +0x90bdb2 WaveBeam_CheckColl +0x90bdc0 kWaveBeam_CheckColl_Funcs +0x90bdd4 WaveBeam_CheckColl_0459 +0x90bddc WaveBeam_CheckColl_1368 +0x90bdea WaveBeam_CheckColl_2 +0x90bdf2 WaveBeam_CheckColl_7 +0x90be00 ProjectileReflection +0x90be62 HudSelectionHandler_MissilesOrSuperMissiles +0x90bf46 Missile_Func2 +0x90bf9d HudSelectionHandler_MorphBall +0x90c0ab HudSelectionHandler_MorphBall_Helper +0x90c0e7 HudSelectionHandler_MorphBall_Helper2 +0x90c128 Bomb_Func2 +0x90c157 PowerBomb_Func3 +0x90c1a8 kProjectileOriginOffsets_X +0x90c1c2 kProjectileOriginOffsets_Y +0x90c1dc kProjectileOriginOffsets2_X +0x90c1f0 kProjectileOriginOffsets2_Y +0x90c204 kProjectileOriginOffsets3_X +0x90c218 kProjectileOriginOffsets3_Y +0x90c22c kProjectileOriginOffsets4_X +0x90c240 kProjectileOriginOffsets4_Y +0x90c254 kProjectileCooldown_Uncharged +0x90c27a kNonBeamProjectileCooldowns +0x90c283 kBeamAutoFireCooldowns +0x90c28f kUnchargedProjectile_Sfx +0x90c2a7 kChargedProjectile_Sfx +0x90c2bf kNonBeamProjectile_Sfx +0x90c2d1 kInitializeProjectileSpeed_XY_Diag +0x90c303 kSuperMissileAccelerations +0x90c32b kSuperMissileAccelerations2 +0x90c353 kDirToVelMult16_X +0x90c367 kDirToVelMult16_Y +0x90c37b kBlockFunc_9C73_Tab0 +0x90c39f kBlockFunc_9C73_Tab1 +0x90c3b1 kBeamTilePtrs +0x90c3c9 kBeamPalettePtrs +0x90c3e1 kBeamPalette_Power +0x90c401 kBeamPalette_Ice +0x90c421 kBeamPalette_Wave +0x90c441 kBeamPalette_Plasma +0x90c461 kBeamPalette_Spazer +0x90c481 kFlareAnimDelays +0x90c487 kFlareAnimDelays_Main +0x90c4a7 kFlareAnimDelays_SlowSparks +0x90c4ae kFlareAnimDelays_FastSparks +0x90c4b5 HandleSwitchingHudSelection +0x90c539 kRunSwitchedToHudHandler +0x90c545 SwitchToHudHandler_Nothing +0x90c551 SwitchToHudHandler_Missiles +0x90c564 SwitchToHudHandler_SuperMissiles +0x90c577 SwitchToHudHandler_PowerBombs +0x90c58a SwitchToHudHandler_Grapple +0x90c5ae SwitchToHudHandler_Xray +0x90c5c4 HandleArmCannonOpenState +0x90c5eb UpdateArmCannonIsOpenFlag +0x90c627 AdvanceArmCannonFrame +0x90c663 Samus_ArmCannon_Draw +0x90c791 kDrawArmCannon_Char +0x90c7a5 kDrawArmCannon_Tab2 +0x90c7d9 kFlagShouldArmCannonBeOpen +0x90c7df kPlayerPoseToPtr +0x90cc21 kCostOfSbaInPowerBombs +0x90cc39 Projectile_SinLookup +0x90cc8a Projectile_SinLookup_Inner +0x90ccc0 FireSba +0x90ccf0 kFireSbaFuncs +0x90cd08 kIcePlasmaSbaProjectileOriginAngles +0x90cd18 FireSba_ClearCarry +0x90cd1a FireSba_FireWave +0x90cd8b kFireSba_FireWave_X +0x90cd93 kFireSba_FireWave_Y +0x90cd9b FireSba_FireIce +0x90ce14 FireSba_FireSpazer +0x90ce88 kFireSpazer_Timer +0x90ce90 kFireSpazer_Yspeed +0x90ce98 FireSba_FirePlasma +0x90cf09 ProjPreInstr_IceSba +0x90cf7a ProjPreInstr_IceSba2 +0x90cffa Projectile_Func7_Shinespark +0x90d068 Samus_MoveHandlerShinesparkWindup +0x90d0ab Samus_MoveHandlerVerticalShinespark +0x90d0d7 Samus_MoveHandler_Shinespark_Diag +0x90d106 Samus_MoveHandler_Shinespark_Horiz +0x90d132 Samus_ShinesparkMove_X +0x90d1ff Samus_ShinesparkMove_Y +0x90d2ba Samus_EndSuperJump +0x90d346 Samus_MoveHandler_ShinesparkCrash +0x90d37d kSamus_MoveHandler_ShinesparkCrash +0x90d383 Samus_MoveHandler_ShinesparkCrash_0 +0x90d396 Samus_MoveHandler_ShinesparkCrash_1 +0x90d3cc Samus_MoveHandler_ShinesparkCrash_2 +0x90d3f3 Samus_MoveHandler_ShinesparkCrashEchoCircle +0x90d40d Samus_MoveHandler_ShinesparkCrashFinish +0x90d4c6 kShinesparkCrashFinish_Tab0 +0x90d4d2 ProjPreInstr_SpeedEcho +0x90d525 Grapple_Func1 +0x90d5a2 Hdmaobj_CrystalFlash +0x90d678 SamusMoveHandler_CrystalFlashStart +0x90d6ce SamusMoveHandler_CrystalFlashMain +0x90d6dd kSamusMoveHandler_CrystalFlashMainFuncs +0x90d6e3 SamusMoveHandler_CrystalFlashMain_0 +0x90d706 SamusMoveHandler_CrystalFlashMain_1 +0x90d729 SamusMoveHandler_CrystalFlashMain_2 +0x90d75b kSamusMoveHandler_CrystalFlashFinish +0x90d793 ProjPreInstr_PlasmaSba +0x90d7db kProjPreInstr_PlasmaSbaFuncs +0x90d7e1 ProjPreInstr_PlasmaSbaFunc_0 +0x90d7fa ProjPreInstr_PlasmaSbaFunc_1 +0x90d813 ProjPreInstr_PlasmaSbaFunc_2 +0x90d849 BombSpread +0x90d8cf kBombSpread_Tab0 +0x90d8d9 kBombSpread_Tab1 +0x90d8e3 kBombSpread_Tab2 +0x90d8ed kBombSpread_Tab3 +0x90d8f7 ProjPreInstr_SpreadBomb +0x90da08 ProjPreInstr_WaveSba +0x90db06 ProjPreInstr_SpazerSba +0x90db49 kProjPreInstr_SpazerSba_FuncsB +0x90db4f kProjPreInstr_SpazerSba_FuncsA +0x90db57 ProjPreInstr_SpazerSba_FuncA_0 +0x90db66 ProjPreInstr_SpazerSba_FuncA_1 +0x90db75 ProjPreInstr_SpazerSba_FuncA_2 +0x90db84 ProjPreInstr_SpazerSba_FuncA_3 +0x90db93 ProjPreInstr_SpazerSba_FuncB_0 +0x90dbc7 kProjPreInstr_SpazerSba_Yspeed +0x90dbcf ProjPreInstr_SpazerSba_FuncB_1 +0x90dc28 kSpazerProjectileYSpeed +0x90dc30 ProjPreInstr_SpazerSba_FuncB_2 +0x90dc67 FireEndOfSpazerSba +0x90dc94 kFireEndOfSpazerSba +0x90dc9c ProjPreInstr_EndOfSpazerSba +0x90dcdd Samus_HandleHudSpecificBehaviorAndProjs +0x90dd05 kHandleHudSpecificBehaviorAndProjs +0x90dd3d HudSelectionHandler_Normal +0x90dd61 kHudSelectionHandler_Normal +0x90dd6f HudSelectionHandler_Grappling +0x90dd74 HudSelectionHandler_TurningAround +0x90dd8c HudSelectionHandler_CrouchEtcTrans +0x90ddb6 HudSelectionHandler_JumpEtc +0x90ddc8 HudSelectionHandler_Xray +0x90ddd8 HudSelectionHandler_GrabbedByDraygon +0x90dde9 Samus_HitInterruption +0x90de82 kSamusHitInterrupts +0x90deba Samus_HitInterrupt_Shinespark +0x90dedd Samus_HitInterrupt_KnockbackGrapple +0x90dee2 Samus_HitInterrupt_Turning +0x90deea Samus_HitInterrupt_Falling +0x90defa Samus_HitInterrupt_Stand +0x90df15 Samus_HitInterrupt_Ball +0x90df1d Samus_HitInterrupt_Unused +0x90df38 Samus_MoveHandler_Knockback +0x90df44 kSamus_MoveHandler_Knockback +0x90df50 Samus_MoveHandler_Knockback_0 +0x90df53 Samus_MoveHandler_Knockback_Up +0x90df5d Samus_MoveHandler_Knockback_3 +0x90df64 Samus_MoveHandler_Knockback_Down +0x90df6e Samus_ClearMoveVars +0x90df99 SetupBombJump +0x90dfb5 kSetupBombJump +0x90dfed SetupBombJump_StandCrouch +0x90dff7 SetupBombJump_1 +0x90e012 SetupBombJump_4 +0x90e01a SetupBombJump_2 +0x90e020 SetupBombJump_1A +0x90e025 Samus_MoveHandler_BombJumpStart +0x90e032 Samus_MoveHandler_BombJumpMain +0x90e04c Samus_HorizontalBombJump +0x90e066 Samus_VerticalBombJump +0x90e07d Samus_MoveHandler_BombJumpFunc1 +0x90e095 kGrabbedByDraygonConst +0x90e097 RunFrameHandlerGamma +0x90e09a nullsub_150 +0x90e09b Samus_Func1 +0x90e0c5 Samus_Func2 +0x90e0e6 Samus_Func3 +0x90e114 DrawTimer_ +0x90e119 Samus_SetPushedOutOfCeresRidley +0x90e12e Samus_PushOutOfRidleysWay +0x90e1c8 Samus_Func4 +0x90e1fd Samus_Func5 +0x90e21c Samus_Func6 +0x90e23b Samus_SetGrabbedByDraygonPose +0x90e2a1 Samus_GrabbedByDraygonFrameHandler +0x90e2d4 Samus_ReleaseFromDraygon_ +0x90e2de Samus_ReleaseFromDraygon +0x90e35a UNUSED_sub_90E35A +0x90e37e nullsub_151 +0x90e37f UNUSED_sub_90E37F +0x90e3a3 Samus_Func7 +0x90e3cf UNUSED_sub_90E3CF +0x90e400 Samus_Func8 +0x90e41b Samus_Func9 +0x90e464 Samus_CalcDisplacementMoveLeft +0x90e4ad Samus_CalcDisplacementMoveRight +0x90e4e6 Samus_CalcSpeed_X +0x90e4f6 kSamus_CalcSpeed_XFuncs +0x90e500 Samus_CalcSpeed_X_Divisor0 +0x90e516 Samus_CalcSpeed_X_Divisor1 +0x90e541 Samus_CalcSpeed_X_Divisor2 +0x90e56e Samus_CalcSpeed_X_Divisor3 +0x90e59d Samus_CalcSpeed_X_Divisor4 +0x90e5ce Samus_ClearXSpeedIfColl +0x90e606 Samus_MoveUp_SetPoseCalcInput +0x90e61b Samus_MoveDown_SetPoseCalcInput +0x90e65a kSamus_MoveDown_SetPoseCalcInput_Tab0 +0x90e676 kSamus_MoveDown_SetPoseCalcInput_Tab1 +0x90e692 HandleControllerInputForGamePhysics +0x90e695 Samus_FrameHandlerAlfa_Func11 +0x90e6c9 Samus_FrameHandlerAlfa_Func12 +0x90e713 Samus_FrameHandlerAlfa_Func13 +0x90e722 HandleSamusMovementAndPause +0x90e725 Samus_FrameHandlerBeta_Func17 +0x90e759 UNUSED_HandleDemoRecorder +0x90e786 HandleDemoRecorder_1 +0x90e7d2 HandleDemoRecorder_3 +0x90e7f5 Samus_FrameHandlerBeta_Func14 +0x90e833 Samus_Func15 +0x90e86a Samus_Func16 +0x90e8aa Samus_Func18 +0x90e8cd EmptyFunction +0x90e8d6 j_HandleDemoRecorder_2 +0x90e8d9 j_HandleDemoRecorder_2_0 +0x90e8dc SetContactDamageIndexAndUpdateMinimap +0x90e8ec Samus_Func19 +0x90e902 Samus_LowHealthCheck +0x90e90e nullsub_152 +0x90e90f Samus_CallInputHandler +0x90e912 nullsub_153 +0x90e913 Samus_InputHandler_E913 +0x90e918 Samus_Func20_ +0x90e91d Samus_InputHandler_E91D +0x90e926 HandleAutoJumpHack +0x90e94b RunSamusMovementHandler +0x90e94e nullsub_154 +0x90e94f SamusMovementType_Xray +0x90e9ce Samus_HandlePeriodicDamage +0x90ea45 Samus_PauseCheck +0x90ea7f Samus_LowHealthCheck_ +0x90eaab Samus_LowHealthCheck_0 +0x90eab3 Samus_JumpCheck +0x90eb02 Samus_Func10 +0x90eb35 DrawSamusAndProjectiles +0x90eb4b SamusDrawSprites +0x90eb51 nullsub_155 +0x90eb52 SamusDrawHandler_Default +0x90ebf2 nullsub_156 +0x90ebf3 Samus_DrawHandler_EndOfShinespark +0x90ec03 Samus_DrawManyEchoes +0x90ec13 nullsub_157 +0x90ec14 SamusDisplayHandler_UsingElevator +0x90ec1d SamusDisplayHandler_SamusReceivedFatal +0x90ec22 Samus_SetRadius +0x90ec3e Samus_GetBottomBoundary +0x90ec58 Samus_GetTopBottomBoundary +0x90ec7e Samus_AlignBottomWithPrevPose +0x90ecb6 Samus_UpdateSuitPaletteIndex +0x90ecd5 MoveSamusWithControlPad +0x90ed1e nullsub_158 +0x90ed1f UNUSED_sub_90ED1F +0x90ed26 SwappedAmmoRoutine +0x90ed6c UNUSEDsub_90ED6C +0x90ed88 Samus_FootstepGraphics +0x90ed91 kSamus_FootstepGraphics +0x90eda1 Samus_FootstepGraphics_Crateria +0x90edec Samus_FootstepGraphics_Maridia +0x90ee64 Samus_FootstepGraphics_1 +0x90eee7 Samus_UpdateSpeedEchoPos +0x90ef22 Samus_PostGrappleCollisionDetect +0x90ef5e UNUSED_sub_90EF5E +0x90efd3 ProjPreInstr_UnknownProj8027 +0x90f02b kProjPreInstr_UnknownProj8027_X +0x90f033 kProjPreInstr_UnknownProj8027_Y +0x90f03b kProjPreInstr_UnknownProj8027_X2 +0x90f043 kProjPreInstr_UnknownProj8027_Y2 +0x90f04b Samus_Func25_ShineSpark +0x90f072 Samus_MoveHandler_F072 +0x90f084 CallSomeSamusCode +0x90f0ae kSamusCodeHandlers +0x90f0ee Samus_UpdatePreviousPose +0x90f107 ClearCarry +0x90f109 SamusCode_00_LockSamus +0x90f117 SamusCode_01_UnlockSamus +0x90f125 SamusCode_02_ReachCeresElevator +0x90f152 SamusCode_03 +0x90f19b SamusCode_04 +0x90f19e SamusCode_04_06_Common +0x90f1aa SamusCode_06_LockToStation +0x90f1c8 SamusCode_07_SetupForElevator +0x90f1e9 SamusCode_08_SetupForCeresStart +0x90f23c SamusCode_08_SetupForZebesStart +0x90f28d SamusCode_0A_ClearDrawHandler +0x90f295 SamusCode_0B_DrawHandlerDefault +0x90f29e SamusCode_0C_UnlockFromMapStation +0x90f2b8 SamusCode_0D_IsGrappleActive +0x90f2ca SamusCode_0E +0x90f2d8 SamusCode_0F_EnableTimerHandling +0x90f2e0 SamusCode_10 +0x90f2f8 SamusCode_11_SetupForDeath +0x90f2fc SamusCode_11_15_Common +0x90f310 SamusCode_15_CalledBySuitAcquision +0x90f320 SamusCode_12_SetSuperPaletteFlag1 +0x90f328 SamusCode_12_SetSuperPaletteFlag0 +0x90f331 SamusCode_14 +0x90f38e SamusCode_05_SetupDrained +0x90f394 Samus_SetupForBeingDrained +0x90f3c0 SamusCode_18 +0x90f3c9 SamusCode_16 +0x90f3dd SamusCode_17_DisableRainbowSamusAndStandUp +0x90f3fb SamusCode_17_FreezeDrainedSamus +0x90f409 SamusCode_1A +0x90f411 SamusCode_1B_CheckedLockSamus +0x90f41e SamusCode_1C +0x90f471 SamusCode_1D_ClearSoundInDoor +0x90f4a2 SamusCode_1E +0x90f4d0 SamusCode_1F +0x90f507 Samus_Func26 +0x90f52f nullsub_7 +0x90f530 UNUSED_sub_90F530 +0x90f533 nullsub_159 +0x90f534 nullsub_160 +0x90f535 UNUSED_sub_90F535 +0x90f54c UNUSED_sub_90F54C +0x90f561 UNUSED_sub_90F561 +0x90f576 Samus_ShootCheck +0x918000 Samus_InputHandler +0x918014 kSamusInputHandlers +0x91804c nullsub_161 +0x91804d Samus_Input_00_Standing +0x918066 Samus_Input_01_Running +0x91806e Samus_Input_02_NormalJumping +0x918076 Samus_Input_03_SpinJumping +0x91807e Samus_Input_04_MorphBallOnGround +0x918086 Samus_Input_07_Unused +0x918087 Samus_Input_05_Crouching +0x9180b6 Samus_Input_06_Falling +0x9180be UNUSED_sub_9180BE +0x91810a Samus_Input_08_MorphBallFalling +0x918112 Samus_Input_09_Unused +0x918113 Samus_Input_0A_KnockbackOrCrystalFlashEnding +0x91812d Samus_Input_0B_Unused +0x918132 Samus_Input_0C_Unused +0x91813a Samus_Input_0D_Unused +0x918142 Samus_Input_0E_TurningAroundOnGround +0x918146 Samus_Input_0F_CrouchingEtcTransition +0x918147 Samus_Input_10_Moonwalking +0x91814f Samus_Input_11_SpringBallOnGround +0x918157 Samus_Input_12_SpringBallInAir +0x91815f Samus_Input_13_SpringBallFalling +0x918167 Samus_Input_14_WallJumping +0x91816f Samus_Input_15_RanIntoWall +0x918181 Samus_Input_16_Grappling +0x918189 Samus_Input_17_TurningAroundJumping +0x91818d Samus_Input_18_TurningAroundFalling +0x918191 Samus_Input_19_DamageBoost +0x918199 Samus_Input_1A_GrabbedByDraygon +0x9181a1 Samus_Input_1B_ShinesparkEtc +0x9181a9 Samus_LookupTransitionTable +0x9181f4 TranslateCustomControllerBindingsToDefault +0x9182d9 Samus_Pose_CancelGrapple +0x918304 Samus_Pose_Func2 +0x918332 kSamus_Pose_Func2_Tab +0x91834e EnableDemoInput +0x91835f DisableDemoInput +0x918370 ResetDemoData +0x918395 LoadDemoInputObject +0x9183bf DemoPreInstr_nullsub_162 +0x9183c0 DemoObjectInputHandler +0x9183f2 ProcessDemoInputObject +0x918427 DemoInstr_Finish +0x918434 DemoInstr_SetPreInstr +0x91843f DemoInstr_ClearPreInstr +0x918448 DemoInstr_Goto +0x91844f DemoInstr_DecTimerAndGoto +0x918459 DemoInstr_SetTimer +0x918464 UNUSED_RecordDemoInputFrame +0x9184d5 PauseDemoRecorder +0x91852f DrawDemoRecorderFrameCounter +0x9185fc DemoInstr_Func2 +0x91864f DemoPreInstr_864F +0x91866a DemoPreInstr_866A +0x918682 DemoInstr_Disable +0x9186fe UNUSED_DemoInstr_Func4 +0x918739 DemoInstr_Func3 +0x918776 kDemoInstrs_LeaveDemo +0x918790 LoadDemoData +0x918885 kDemoSetDefPtrs +0x9189fd kDemoSetFuncPtrs +0x918a05 kDemoSetFuncPtrs_0 +0x918a11 kDemoSetFuncPtrs_1 +0x918a1d kDemoSetFuncPtrs_2 +0x918a29 kDemoSetFuncPtrs_3 +0x918a33 DemoSetFunc_0 +0x918a3e DemoSetFunc_3 +0x918a43 DemoSetFunc_7 +0x918a49 DemoSetFunc_2 +0x918a4e DemoSetFunc_4 +0x918a53 DemoSetFunc_1 +0x918a56 DemoSetFunc_Common +0x918a68 DemoSetFunc_5 +0x918a81 DemoSetFunc_6 +0x918a9a nullsub_163 +0x918a9b DemoPreInstr_CheckLeaveDemo +0x918ab0 DemoPreInstr_8AB0 +0x919ee2 kPoseTransitionTable +0x91a0dc kPoseTrans_NULL +0x91a0de kPoseTrans_9B +0x91a0ec kPoseTrans_E6 +0x91a172 kPoseTrans_E7 +0x91a1f8 kPoseTrans_11 +0x91a242 kPoseTrans_12 +0x91a28c kPoseTrans_59 +0x91a2be kPoseTrans_5A +0x91a2f6 kPoseTrans_6B +0x91a376 kPoseTrans_6C +0x91a3f6 kPoseTrans_4F +0x91a40a kPoseTrans_50 +0x91a41e kPoseTrans_19 +0x91a46e kPoseTrans_1A +0x91a4be kPoseTrans_1B +0x91a50e kPoseTrans_1C +0x91a55e kPoseTrans_81 +0x91a5ae kPoseTrans_82 +0x91a5fe kPoseTrans_1D +0x91a618 kPoseTrans_1E +0x91a632 kPoseTrans_1F +0x91a64c kPoseTrans_41 +0x91a666 kPoseTrans_24 +0x91a668 kPoseTrans_23 +0x91a66a kPoseTrans_42 +0x91a66c kPoseTrans_85 +0x91a6bc kPoseTrans_86 +0x91a70c kPoseTrans_6F +0x91a750 kPoseTrans_70 +0x91a794 kPoseTrans_31 +0x91a7ae kPoseTrans_32 +0x91a7c8 kPoseTrans_33 +0x91a7ca kPoseTrans_34 +0x91a7cc kPoseTrans_45 +0x91a7e0 kPoseTrans_46 +0x91a7f4 kPoseTrans_47 +0x91a834 kPoseTrans_48 +0x91a874 kPoseTrans_77 +0x91a8ac kPoseTrans_78 +0x91a8e4 kPoseTrans_53 +0x91a8ec kPoseTrans_54 +0x91a8fc kPoseTrans_5B +0x91a904 kPoseTrans_5C +0x91a90c kPoseTrans_7B +0x91a926 kPoseTrans_7C +0x91a940 kPoseTrans_7D +0x91a954 kPoseTrans_7E +0x91a968 kPoseTrans_7F +0x91a97c kPoseTrans_80 +0x91a990 kPoseTrans_63 +0x91a998 kPoseTrans_64 +0x91a9a0 kPoseTrans_65 +0x91a9c6 kPoseTrans_66 +0x91a9ec kPoseTrans_83 +0x91aa12 kPoseTrans_84 +0x91aa38 kPoseTrans_D1 +0x91aa7c kPoseTrans_D2 +0x91aac0 kPoseTrans_13 +0x91ab3a kPoseTrans_14 +0x91abb4 kPoseTrans_17 +0x91ac40 kPoseTrans_18 +0x91accc kPoseTrans_3D +0x91ace0 kPoseTrans_3E +0x91acf4 kPoseTrans_25 +0x91ad08 kPoseTrans_26 +0x91ad1c kPoseTrans_8B +0x91ad30 kPoseTrans_8C +0x91ad44 kPoseTrans_8D +0x91ad58 kPoseTrans_8E +0x91ad6c kPoseTrans_C7 +0x91ad80 kPoseTrans_C8 +0x91ad94 kPoseTrans_2D +0x91add2 kPoseTrans_2E +0x91ae10 kPoseTrans_DF +0x91ae18 kPoseTrans_BE +0x91ae56 kPoseTrans_F0 +0x91ae94 kPoseTrans_0B +0x91aede kPoseTrans_0C +0x91af28 kPoseTrans_67 +0x91af60 kPoseTrans_68 +0x91af98 kPoseTrans_BF +0x91afac kPoseTrans_C0 +0x91afc0 kPoseTrans_C1 +0x91afd4 kPoseTrans_C2 +0x91afe8 kPoseTrans_C3 +0x91affc kPoseTrans_C4 +0x91b010 kSamusAnimationDelayData +0x91b20a kPoseAnimDelay_46 +0x91b222 kPoseAnimDelay_86 +0x91b226 kPoseAnimDelay_78 +0x91b22d kPoseAnimDelay_E6 +0x91b231 kPoseAnimDelay_E7 +0x91b235 kPoseAnimDelay_A6 +0x91b23a kPoseAnimDelay_A7 +0x91b23f kPoseAnimDelay_E0 +0x91b243 kPoseAnimDelay_E1 +0x91b247 kPoseAnimDelay_E2 +0x91b24b kPoseAnimDelay_E3 +0x91b24f kPoseAnimDelay_E4 +0x91b253 kPoseAnimDelay_E5 +0x91b257 kPoseAnimDelay_E8 +0x91b268 kPoseAnimDelay_E9 +0x91b288 kPoseAnimDelay_EA +0x91b290 kPoseAnimDelay_EB +0x91b298 kPoseAnimDelay_02 +0x91b2a3 kPoseAnimDelay_28 +0x91b2ae kPoseAnimDelay_DA +0x91b2b4 kPoseAnimDelay_EF +0x91b2b6 kPoseAnimDelay_AB +0x91b2b8 kPoseAnimDelay_AD +0x91b2bc kPoseAnimDelay_AF +0x91b2c0 kPoseAnimDelay_B1 +0x91b2c4 kPoseAnimDelay_B3 +0x91b308 kPoseAnimDelay_4B +0x91b30b kPoseAnimDelay_4C +0x91b30e kPoseAnimDelay_55 +0x91b312 kPoseAnimDelay_56 +0x91b316 kPoseAnimDelay_57 +0x91b31a kPoseAnimDelay_58 +0x91b31e kPoseAnimDelay_59 +0x91b322 kPoseAnimDelay_5A +0x91b326 kPoseAnimDelay_C8 +0x91b32e kPoseAnimDelay_50 +0x91b33a kPoseAnimDelay_16 +0x91b33e kPoseAnimDelay_18 +0x91b342 kPoseAnimDelay_52 +0x91b346 kPoseAnimDelay_6C +0x91b34a kPoseAnimDelay_2A +0x91b353 kPoseAnimDelay_68 +0x91b35c kPoseAnimDelay_2C +0x91b361 kPoseAnimDelay_70 +0x91b366 kPoseAnimDelay_2E +0x91b36a kPoseAnimDelay_54 +0x91b378 kPoseAnimDelay_DF +0x91b384 kPoseAnimDelay_1A +0x91b391 kPoseAnimDelay_1C +0x91b39e kPoseAnimDelay_82 +0x91b3bb kPoseAnimDelay_25 +0x91b3c0 kPoseAnimDelay_26 +0x91b3c5 kPoseAnimDelay_2F +0x91b3ca kPoseAnimDelay_30 +0x91b3cf kPoseAnimDelay_43 +0x91b3d4 kPoseAnimDelay_44 +0x91b3d9 kPoseAnimDelay_87 +0x91b3de kPoseAnimDelay_88 +0x91b3e3 kPoseAnimDelay_8B +0x91b3e8 kPoseAnimDelay_8C +0x91b3ed kPoseAnimDelay_8D +0x91b3f2 kPoseAnimDelay_8E +0x91b3f7 kPoseAnimDelay_8F +0x91b3fc kPoseAnimDelay_90 +0x91b401 kPoseAnimDelay_91 +0x91b406 kPoseAnimDelay_92 +0x91b40b kPoseAnimDelay_93 +0x91b410 kPoseAnimDelay_94 +0x91b415 kPoseAnimDelay_95 +0x91b41a kPoseAnimDelay_96 +0x91b41f kPoseAnimDelay_97 +0x91b424 kPoseAnimDelay_98 +0x91b429 kPoseAnimDelay_99 +0x91b42e kPoseAnimDelay_9A +0x91b433 kPoseAnimDelay_9C +0x91b438 kPoseAnimDelay_9D +0x91b43d kPoseAnimDelay_9E +0x91b442 kPoseAnimDelay_9F +0x91b447 kPoseAnimDelay_A0 +0x91b44c kPoseAnimDelay_A1 +0x91b451 kPoseAnimDelay_A2 +0x91b456 kPoseAnimDelay_A3 +0x91b45b kPoseAnimDelay_BF +0x91b460 kPoseAnimDelay_C0 +0x91b465 kPoseAnimDelay_C1 +0x91b46a kPoseAnimDelay_C2 +0x91b46f kPoseAnimDelay_C3 +0x91b474 kPoseAnimDelay_C4 +0x91b479 kPoseAnimDelay_C6 +0x91b47e kPoseAnimDelay_63 +0x91b482 kPoseAnimDelay_64 +0x91b486 kPoseAnimDelay_66 +0x91b491 kPoseAnimDelay_84 +0x91b4c2 kPoseAnimDelay_35 +0x91b4c5 kPoseAnimDelay_36 +0x91b4c8 kPoseAnimDelay_37 +0x91b4d1 kPoseAnimDelay_38 +0x91b4da kPoseAnimDelay_39 +0x91b4dd kPoseAnimDelay_3A +0x91b4e0 kPoseAnimDelay_3B +0x91b4e3 kPoseAnimDelay_3C +0x91b4e6 kPoseAnimDelay_3D +0x91b4ea kPoseAnimDelay_3E +0x91b4ee kPoseAnimDelay_3F +0x91b4f4 kPoseAnimDelay_40 +0x91b4fa kPoseAnimDelay_DB +0x91b504 kPoseAnimDelay_DC +0x91b50e kPoseAnimDelay_DD +0x91b513 kPoseAnimDelay_DE +0x91b518 kPoseAnimDelay_F1 +0x91b51b kPoseAnimDelay_F2 +0x91b51e kPoseAnimDelay_F3 +0x91b521 kPoseAnimDelay_F4 +0x91b524 kPoseAnimDelay_F5 +0x91b527 kPoseAnimDelay_F6 +0x91b52a kPoseAnimDelay_F7 +0x91b52d kPoseAnimDelay_F8 +0x91b530 kPoseAnimDelay_F9 +0x91b533 kPoseAnimDelay_FA +0x91b536 kPoseAnimDelay_FB +0x91b539 kPoseAnimDelay_FC +0x91b53c kPoseAnimDelay_F0 +0x91b543 kPoseAnimDelay_CE +0x91b545 kPoseAnimDelay_D3 +0x91b556 kPoseAnimDelay_D4 +0x91b567 kPoseAnimDelay_D8 +0x91b56f kPoseAnimDelay_9B +0x91b5d1 kDefaultAnimFramePtr +0x91b5de kSpeedBoostToAnimFramePtr +0x91b61f kSpeedBoostToCtr +0x91b629 kPoseParams +0x91be11 CalculateXrayHdmaTable_OriginOffScreen +0x91beb8 kXrayHdmaFuncs +0x91bec2 XrayHdmaFunc_BeamAimedR +0x91bf72 XrayHdmaFunc_BeamAimedL +0x91c022 XrayHdmaFunc_BeamAimedU +0x91c069 XrayHdmaFunc_BeamAimedUUR +0x91c123 XrayHdmaFunc_BeamAimedUU +0x91c1ca XrayHdmaFunc_BeamAimedUUL +0x91c27f XrayHdmaFunc_BeamAimedD +0x91c2bd XrayHdmaFunc_BeamAimedDDR +0x91c381 XrayHdmaFunc_BeamAimedDD +0x91c446 XrayHdmaFunc_BeamAimedDDL +0x91c505 XrayHdmaFunc_BeamHoriz +0x91c54b CalculateXrayHdmaTable_OriginOnScreen +0x91c5f5 XrayHdmaOnScreen_Funcs +0x91c5ff XrayHdmaOnScreen_BeamAimedR +0x91c660 XrayHdmaOnScreen_BeamAimedL +0x91c6c1 XrayHdmaOnScreen_BeamAimedU +0x91c71c XrayHdmaOnScreen_BeamAimedUUR +0x91c77f XrayHdmaOnScreen_BeamAimedUU +0x91c7cb XrayHdmaOnScreen_BeamAimedUUL +0x91c822 XrayHdmaOnScreen_BeamAimedD +0x91c87a XrayHdmaOnScreen_BeamAimedDDR +0x91c8e8 XrayHdmaOnScreen_BeamAimedDD +0x91c939 XrayHdmaOnScreen_BeamAimedDDL +0x91c998 XrayHdmaOnScreen_BeamHoriz +0x91c9d4 kTanTable +0x91cad6 XrayRunHandler +0x91caf9 Xray_SetupStage1_FreezeTimeBackup +0x91cb1c Xray_SetupStage2_ReadBg1_2ndScreen +0x91cb57 Xray_SetupStage3_ReadBg1_1stScreen +0x91cb8e Xray_SetupStage4 +0x91ccf1 Xray_SetupStage4_Func1 +0x91cd42 Xray_SetupStage4_Func2 +0x91cdbe Xray_SetupStage4_Func3 +0x91cdcb Xray_IncrementPtrs +0x91cdd6 Xray_GetXrayedBlock +0x91ce2c Xray_SomeDivide +0x91ce51 Xray_Func5 +0x91ce79 Xray_CombinedMove_true +0x91ce8e Xray_Func6D +0x91cebb Xray_Func6B +0x91ced0 Xray_Func6C +0x91cefd Xray_Func20 +0x91cf36 Xray_Func7 +0x91cf3e Xray_Func8 +0x91cf4e Xray_Func9 +0x91cf62 Xray_Func10 +0x91cf6f Xray_Func11 +0x91cfbf Xray_Func12 +0x91cfc1 Xray_Func13 +0x91cfee Xray_Func14 +0x91d01d Xray_Func15 +0x91d04c LoadBlockToXrayTilemap +0x91d0a6 Xray_Func16 +0x91d0d3 Xray_SetupStage5 +0x91d141 CanXrayShowBlocks_ +0x91d143 CanXrayShowBlocks +0x91d173 Xray_SetupStage6 +0x91d1a0 Xray_SetupStage7 +0x91d223 kHdmaObjectList_Xray +0x91d27f HdmaobjPreInstr_XraySetup +0x91d2bc Xray_SetupStage8_SetBackdropColor +0x91d4da GameState_28_Unused_ +0x91d4e4 VariaSuitPickup +0x91d5ba GravitySuitPickup +0x91d692 InitializeSuitPickupHdma +0x91d6f7 Samus_HandlePalette +0x91d743 HandleBeamChargePalettes +0x91d7d5 kSamusPalette_NonPseudoScrew +0x91d7ff kSamusPalette_PseudoScrew +0x91d829 kSamusPalette_HyperBeam +0x91d83f HandleVisorPalette +0x91d8a5 HandleMiscSamusPalette +0x91d998 kSamus_SpeedBoostingPalettes +0x91d99e kSamus_HyperBeamPalettes +0x91d9b2 Samus_HandleScrewAttackSpeedBoostingPals +0x91da4a kSamusPal_ScrewAttack +0x91da50 kSamusPal_ScrewAttack_NoSuit +0x91daa9 kSamusPal_SpeedBoost +0x91daaf kSamusPal_SpeedBoost_NoSuit +0x91dab7 kSamusPal_SpeedBoost_VariaSuit +0x91dabf kSamusPal_SpeedBoost_GravitySuit +0x91dac7 Samus_SpeedBoosterShinePals +0x91db10 kSamusPal_SpeedBoostShine +0x91db16 kSamusPal_SpeedBoostShine_NoSuit +0x91db22 kSamusPal_SpeedBoostShine_VariaSuit +0x91db2e kSamusPal_SpeedBoostShine_GravitySuit +0x91db3a Samus_HandleShinesparkingPals +0x91db75 kSamusPal_Shinespark +0x91db7b kSamusPal_Shinespark_NoSuit +0x91db83 kSamusPal_Shinespark_VariaSuit +0x91db8b kSamusPal_Shinespark_GravitySuit +0x91db93 Samus_HandleCrystalFlashPals +0x91dc34 Samus_Copy10PalColors +0x91dc82 Samus_Copy6PalColors +0x91dcb4 Samus_HandleXrayPals +0x91dd31 nullsub_164 +0x91dd4c UNUSED_sub_91DD4C +0x91dd5b CopyToSamusSuitPalette +0x91ddd7 CopyToSamusSuitTargetPalette +0x91de53 Samus_CancelSpeedBoost +0x91deba Samus_LoadSuitPalette +0x91dee6 Samus_LoadSuitTargetPalette +0x91df12 Samus_RestoreHealth +0x91df51 Samus_DealDamage +0x91df80 Samus_RestoreMissiles +0x91dfd3 Samus_RestoreSuperMissiles +0x91dff0 Samus_RestorePowerBombs +0x91e00d Samus_Initialize +0x91e16d Xray_Initialize +0x91e2ad ResponsibleForXrayStandupGlitch +0x91e355 UNUSED_GiveItemsAllAmmoEtc +0x91e3f6 MakeSamusFaceForward +0x91e4ad SomeMotherBrainScripts +0x91e4ee kSomeMotherBrainScripts +0x91e4f8 SomeMotherBrainScripts_0 +0x91e571 SomeMotherBrainScripts_1 +0x91e59b SomeMotherBrainScripts_2 +0x91e5f0 SomeMotherBrainScripts_3_EnableHyperBeam +0x91e60c SomeMotherBrainScripts_4 +0x91e633 SamusFunc_E633 +0x91e719 Samus_UpdatePreviousPose_0 +0x91e732 nullsub_17 +0x91e733 SamusFunc_E633_0 +0x91e776 SamusFunc_E633_3 +0x91e83a SamusFunc_E633_4 +0x91e867 SamusFunc_E633_17 +0x91e894 SamusFunc_E633_20 +0x91e8b6 Samus_HandleTransFromBlockColl +0x91e8cc kSamus_HandleTransFromBlockColl +0x91e8d8 Samus_HandleTransFromBlockColl_3 +0x91e8e5 Samus_HandleTransFromBlockColl_4 +0x91e8f2 Samus_HandleTransFromBlockColl_2 +0x91e931 Samus_HandleTransFromBlockColl_1 +0x91e95d Samus_HandleTransFromBlockColl_1_0 +0x91ea07 Samus_HandleTransFromBlockColl_1_1 +0x91ea0f kSamus_HandleTransFromBlockColl_1_1 +0x91ea15 Samus_HandleTransFromBlockColl_1_1_0 +0x91ea25 Samus_HandleTransFromBlockColl_1_1_1 +0x91ea2d Samus_HandleTransFromBlockColl_1_1_2 +0x91ea48 Samus_HandleTransFromBlockColl_1_2 +0x91ea63 Samus_HandleTransFromBlockColl_1_3 +0x91ea83 Samus_HandleTransFromBlockColl_1_3_0 +0x91ea93 Samus_HandleTransFromBlockColl_1_3_1 +0x91ea9b Samus_HandleTransFromBlockColl_1_3_2 +0x91eab6 Samus_HandleTransFromBlockColl_1_5 +0x91eabe Samus_HandleTransFromBlockColl_5 +0x91eade Samus_CheckWalkedIntoSomething +0x91eb88 Samus_HandleTransitions +0x91ec16 kSamus_HandleTransitionsA +0x91ec28 kSamus_HandleTransitionsB +0x91ec3e kSamus_HandleTransitionsC +0x91ec50 Samus_HandleTransitionsA_1 +0x91ec85 Samus_HandleTransitionsA_6 +0x91ec8e Samus_HandleTransitionsA_8 +0x91ec9d UNUSED_sub_91EC9D +0x91ecd0 Samus_HandleTransitionsA_2 +0x91ecd8 nullsub_21 +0x91ecd9 nullsub_22 +0x91ecda Samus_HandleTransitionsA_7 +0x91ed4e Samus_HandleTransitionsB_1 +0x91ed6a kSamus_HandleTransitionsB_1 +0x91eda2 Samus_HandleTransitionsB_1_10 +0x91eda4 Samus_HandleTransitionsB_1_11 +0x91eda6 Samus_HandleTransitionsB_1_6 +0x91edb0 Samus_HandleTransitionsB_1_0 +0x91ee27 Samus_HandleTransitionsB_1_4 +0x91ee48 Samus_HandleTransitionsB_1_7 +0x91ee69 Samus_HandleTransitionsB_2 +0x91ee80 Samus_HandleTransitionsB_3 +0x91eea1 Samus_HandleTransitionsB_4 +0x91eea6 Samus_HandleTransitionsB_5 +0x91ef39 nullsub_19 +0x91ef3a nullsub_20 +0x91ef3b Samus_HandleTransitionsB_8 +0x91ef4f Samus_HandleTransitionsB_9 +0x91ef53 Samus_HandleTransitionsB_9B +0x91efbc Samus_HandleTransitionsB_10 +0x91efc4 Samus_HandleTransitionsA_5 +0x91efd0 kSamus_HandleTransitionsA_5 +0x91efde nullsub_23 +0x91efdf Samus_HandleTransitionsA_5_4 +0x91efef Samus_HandleTransitionsA_5_2 +0x91f010 Samus_HandleTransitionsA_5_1 +0x91f03a kSamus_HandleTransitionsA_5_1 +0x91f046 HandleLandingSoundEffectsAndGfx +0x91f0a5 HandleLandingGraphics +0x91f0be HandleLandingGraphics_Ceres +0x91f0c5 HandleLandingGraphics_Crateria +0x91f116 HandleLandingGraphics_Maridia +0x91f166 HandleLandingGraphics_Norfair +0x91f1b2 HandleLandingGraphics_Brinstar +0x91f1ba HandleLandingGraphics_Tourian +0x91f1d3 SamusFunc_F1D3 +0x91f1ec Samus_HandleTransitionsA_5_1_0 +0x91f1fc Samus_MorphBallBounceNoSpringballTrans +0x91f204 kSamus_MorphBallBounceTrans +0x91f20a Samus_MorphBallBounceTrans_0 +0x91f22b Samus_MorphBallBounceTrans_1 +0x91f245 Samus_MorphBallBounceTrans_2 +0x91f253 Samus_HandleTransitionsA_5_1_2 +0x91f25e Samus_MorphBallBounceSpringballTrans +0x91f2ce Samus_HandleTransitionsA_5_1_5 +0x91f2d3 Samus_HandleTransitionsA_5_5 +0x91f2f0 Samus_HandleTransitionsA_5_6 +0x91f31d Samus_HandleTransitionsC_1 +0x91f34e Samus_HandleTransitionsC_2 +0x91f36e Samus_HandleTransitionsC_3 +0x91f37c Samus_HandleTransitionsC_4 +0x91f397 Samus_HandleTransitionsC_5 +0x91f3a5 Samus_HandleTransitionsC_6 +0x91f3aa Samus_HandleTransitionsC_7 +0x91f3fd Samus_HandleTransitionsC_8 +0x91f404 SamusFunc_F404 +0x91f433 SamusFunc_F433 +0x91f468 SamusFunc_F468 +0x91f4da SamusFunc_F468_Unused +0x91f4dc SamusFunc_F468_Standing +0x91f50c SamusFunc_F468_Running +0x91f543 SamusFunc_F468_NormalJump +0x91f5eb SamusFunc_F468_Crouching +0x91f60d SamusFunc_F468_Falling +0x91f624 SamusFunc_F468_SpinJump +0x91f758 SamusFunc_F468_CrouchTransEtc +0x91f7b0 Samus_CrouchTrans +0x91f7cc Samus_StandOrUnmorphTrans +0x91f7ce Samus_MorphTrans +0x91f7f4 MaybeUnused_sub_91F7F4 +0x91f840 MaybeUnused_sub_91F840 +0x91f88c SamusFunc_F468_Moonwalking +0x91f8ae SamusFunc_F468_DamageBoost +0x91f8b0 MaybeUnused_sub_91F8B0 +0x91f8cb SamusFunc_F468_DamageBoost_ +0x91f8d3 SamusFunc_F468_TurningAroundOnGround +0x91f952 SamusFunc_F468_TurnAroundJumping +0x91f98a SamusFunc_F468_TurnAroundFalling +0x91f9c2 kSamusTurnPose_Standing +0x91f9cc kSamusTurnPose_Crouching +0x91f9d6 kSamusTurnPose_Jumping +0x91f9e0 kSamusTurnPose_Falling +0x91f9ea kSamusTurnPose_Moonwalk +0x91f9f4 SamusFunc_F468_MorphBall +0x91fa0f SamusFunc_FA0A +0x91fa56 SamusFunc_F468_Springball +0x91fa76 SamusFunc_F468_WallJumping +0x91faca SamusFunc_F468_Shinespark +0x91fafc kSamusFunc_F468_Shinespark +0x91fb08 Samus_SetAnimationFrameIfPoseChanged +0x91fb8e SamusFunc_EC80 +0x91fbbb HandleJumpTransition +0x91fbcf kHandleJumpTrans +0x91fc07 nullsub_24 +0x91fc08 HandleJumpTransition_WallJump +0x91fc18 HandleJumpTransition_SpringBallInAir +0x91fc42 UNUSED_sub_91FC42 +0x91fc66 HandleJumpTransition_NormalJump +0x91fc99 HandleJumpTransition_SpinJump +0x91fcae nullsub_25 +0x91fcaf Samus_Func20 +0x91fdae HandleCollDueToChangedPose +0x91fe9a HandleCollDueToChangedPose_Solid_NoColl +0x91fe9c HandleCollDueToChangedPose_Solid_CollBoth +0x91fe9e HandleCollDueToChangedPose_Solid_CollAbove +0x91fedf HandleCollDueToChangedPose_Solid_CollBelow +0x91ff20 HandleCollDueToChangedPose_Block_CollAbove +0x91ff49 HandleCollDueToChangedPose_Block_CollBelow +0x91ff76 HandleCollDueToChangedPose_Block_NoColl +0x91ffa7 HandleCollDueToChangedPose_Block_CollBoth +0x928000 SetSamusTilesDefsForCurAnim +0x92808d kSamusSpritemapTable +0x929263 kSamusPoseToBaseSpritemapIndexTop +0x92945d kSamusPoseToBaseSpritemapIndexBottom +0x92d91e kSamus_TileDefs_TopHalf +0x92d938 kSamus_TileDefs_BottomHalf +0x92d94e kSamus_AnimationDefinitionPtrs +0x92db48 kSamusTileAnim_A8 +0x92db6c kSamusTileAnim_A9 +0x92db90 kSamusTileAnim_A4 +0x92db98 kSamusTileAnim_A5 +0x92dba0 kSamusTileAnim_A6 +0x92dbac kSamusTileAnim_A7 +0x92dbb8 kSamusTileAnim_E0 +0x92dbc0 kSamusTileAnim_E1 +0x92dbc8 kSamusTileAnim_E2 +0x92dbd0 kSamusTileAnim_E3 +0x92dbd8 kSamusTileAnim_E4 +0x92dbe0 kSamusTileAnim_E5 +0x92dbe8 kSamusTileAnim_E6 +0x92dbf0 kSamusTileAnim_E7 +0x92dbf8 kSamusTileAnim_D5 +0x92dc0c kSamusTileAnim_D6 +0x92dc20 kSamusTileAnim_D9 +0x92dc34 kSamusTileAnim_DA +0x92dc48 kSamusTileAnim_09 +0x92dc70 kSamusTileAnim_0A +0x92dc98 kSamusTileAnim_0B +0x92dcc0 kSamusTileAnim_0C +0x92dce8 kSamusTileAnim_49 +0x92dd00 kSamusTileAnim_4A +0x92dd18 kSamusTileAnim_AE +0x92dd20 kSamusTileAnim_AF +0x92dd28 kSamusTileAnim_AC +0x92dd30 kSamusTileAnim_AD +0x92dd38 kSamusTileAnim_15 +0x92dd40 kSamusTileAnim_16 +0x92dd48 kSamusTileAnim_51 +0x92dd50 kSamusTileAnim_52 +0x92dd58 kSamusTileAnim_69 +0x92dd60 kSamusTileAnim_6A +0x92dd68 kSamusTileAnim_B0 +0x92dd70 kSamusTileAnim_B1 +0x92dd78 kSamusTileAnim_4B +0x92dd7c kSamusTileAnim_4C +0x92dd80 kSamusTileAnim_F7 +0x92dd84 kSamusTileAnim_F8 +0x92dd88 kSamusTileAnim_F9 +0x92dd8c kSamusTileAnim_FA +0x92dd90 kSamusTileAnim_FB +0x92dd94 kSamusTileAnim_FC +0x92dd98 kSamusTileAnim_C7 +0x92ddb0 kSamusTileAnim_C8 +0x92ddc8 kSamusTileAnim_4F +0x92ddf0 kSamusTileAnim_50 +0x92de18 kSamusTileAnim_B4 +0x92de3c kSamusTileAnim_B5 +0x92de60 kSamusTileAnim_29 +0x92de7c kSamusTileAnim_2A +0x92de98 kSamusTileAnim_2B +0x92dea4 kSamusTileAnim_2C +0x92deb0 kSamusTileAnim_2D +0x92deb8 kSamusTileAnim_2E +0x92dec0 kSamusTileAnim_67 +0x92dedc kSamusTileAnim_68 +0x92def8 kSamusTileAnim_6D +0x92df04 kSamusTileAnim_6E +0x92df10 kSamusTileAnim_6F +0x92df1c kSamusTileAnim_70 +0x92df28 kSamusTileAnim_0D +0x92df50 kSamusTileAnim_0E +0x92df78 kSamusTileAnim_0F +0x92dfa0 kSamusTileAnim_10 +0x92dfc8 kSamusTileAnim_11 +0x92dff0 kSamusTileAnim_12 +0x92e018 kSamusTileAnim_03 +0x92e020 kSamusTileAnim_04 +0x92e028 kSamusTileAnim_CF +0x92e02c kSamusTileAnim_D0 +0x92e030 kSamusTileAnim_D1 +0x92e034 kSamusTileAnim_D2 +0x92e038 kSamusTileAnim_53 +0x92e040 kSamusTileAnim_54 +0x92e048 kSamusTileAnim_B8 +0x92e04c kSamusTileAnim_B9 +0x92e050 kSamusTileAnim_B2 +0x92e158 kSamusTileAnim_B3 +0x92e260 kSamusTileAnim_63 +0x92e268 kSamusTileAnim_64 +0x92e270 kSamusTileAnim_65 +0x92e294 kSamusTileAnim_66 +0x92e2b8 kSamusTileAnim_83 +0x92e374 kSamusTileAnim_84 +0x92e430 kSamusTileAnim_71 +0x92e434 kSamusTileAnim_72 +0x92e438 kSamusTileAnim_B6 +0x92e43c kSamusTileAnim_B7 +0x92e440 kSamusTileAnim_85 +0x92e448 kSamusTileAnim_86 +0x92e450 kSamusTileAnim_75 +0x92e468 kSamusTileAnim_76 +0x92e480 kSamusTileAnim_77 +0x92e498 kSamusTileAnim_78 +0x92e4b0 kSamusTileAnim_3B +0x92e4b4 kSamusTileAnim_3C +0x92e4b8 kSamusTileAnim_37 +0x92e4c0 kSamusTileAnim_38 +0x92e4c8 kSamusTileAnim_3D +0x92e4d0 kSamusTileAnim_3E +0x92e4d8 kSamusTileAnim_DB +0x92e4e4 kSamusTileAnim_DC +0x92e4f0 kSamusTileAnim_DD +0x92e4fc kSamusTileAnim_DE +0x92e508 kSamusTileAnim_40 +0x92e530 kSamusTileAnim_DF +0x92e558 kSamusTileAnim_1E +0x92e580 kSamusTileAnim_1F +0x92e5a8 kSamusTileAnim_7F +0x92e5d0 kSamusTileAnim_80 +0x92e5f8 kSamusTileAnim_42 +0x92e628 kSamusTileAnim_1A +0x92e658 kSamusTileAnim_1B +0x92e688 kSamusTileAnim_1C +0x92e6b8 kSamusTileAnim_81 +0x92e728 kSamusTileAnim_82 +0x92e798 kSamusTileAnim_C6 +0x92e7a4 kSamusTileAnim_C0 +0x92e7b0 kSamusTileAnim_C1 +0x92e7bc kSamusTileAnim_C2 +0x92e7c8 kSamusTileAnim_C3 +0x92e7d4 kSamusTileAnim_C4 +0x92e7e0 kSamusTileAnim_87 +0x92e7ec kSamusTileAnim_88 +0x92e7f8 kSamusTileAnim_A2 +0x92e804 kSamusTileAnim_A3 +0x92e810 kSamusTileAnim_99 +0x92e81c kSamusTileAnim_9A +0x92e828 kSamusTileAnim_EC +0x92e82c kSamusTileAnim_ED +0x92e830 kSamusTileAnim_EE +0x92e834 kSamusTileAnim_EF +0x92e838 kSamusTileAnim_BA +0x92e83c kSamusTileAnim_BB +0x92e840 kSamusTileAnim_BC +0x92e844 kSamusTileAnim_BD +0x92e848 kSamusTileAnim_F0 +0x92e860 kSamusTileAnim_BE +0x92e878 kSamusTileAnim_CB +0x92e87c kSamusTileAnim_CC +0x92e880 kSamusTileAnim_C9 +0x92e884 kSamusTileAnim_CA +0x92e888 kSamusTileAnim_CD +0x92e88c kSamusTileAnim_CE +0x92e890 kSamusTileAnim_D3 +0x92e8cc kSamusTileAnim_D4 +0x92e908 kSamusTileAnim_D7 +0x92e920 kSamusTileAnim_D8 +0x92e938 kSamusTileAnim_E8 +0x92e974 kSamusTileAnim_E9 +0x92e9f4 kSamusTileAnim_EA +0x92ea0c kSamusTileAnim_EB +0x92ea24 kSamusTileAnim_00 +0x92eba4 kSamusTileAnim_9B +0x92ed24 PlaySamusFanfare +0x92ed7a Unused_SamusTileViewer +0x92edbe DrawSamusSuitExploding +0x938000 InitializeProjectile +0x938071 InitializeInstrForSuperMissile +0x9380a0 InitializeInstrForMissile +0x9380cf KillProjectileInner +0x93814e InitializeBombExplosion +0x938163 InitializeShinesparkEchoOrSpazerSba +0x9381a4 InitializeSbaProjectile +0x9381d1 ProjectileInsts_GetValue +0x9381e9 RunProjectileInstructions +0x93822f Proj93Instr_Delete +0x938239 Proj93Instr_Goto +0x938240 Proj93Instr_GotoIfLess +0x938254 DrawPlayerExplosions2 +0x93834d DrawBombAndProjectileExplosions +0x9383c1 kProjectileData_UnchargedBeams +0x9383d9 kProjectileData_ChargedBeams +0x9383f1 kProjectileData_NonBeams +0x938403 kShinesparkEchoSpazer_ProjectileData +0x93842b kRunInstrForSuperMissile +0x938681 kProjInstrList_Explosion +0x93f5e2 UNUSED_sub_93F5E2 +0x948000 PostGrappleColl_Horiz_Slope_NonSquare +0x9480e0 PostGrappleColl_Vert_Slope_NonSquare +0x9481b8 PostGrappleColl_Horiz_Slope_Square +0x948230 PostGrappleColl_Vertical_Slope_Square +0x9482a7 ClearCarry_0 +0x9482a9 PostGrappleColl_Horiz_Slope +0x9482be PostGrappleColl_Horiz_Solid +0x9482c5 PostGrappleColl_Vert_Slope +0x9482da PostGrappleColl_Vert_Solid +0x9482e1 kPostGrappleColl_Horiz +0x948301 kPostGrappleColl_Vert +0x948321 PostGrappleColl_Horiz +0x948338 PostGrappleColl_Vert +0x94834f PostGrappleCollisionDetect_Right +0x9483b1 PostGrappleCollisionDetect_Left +0x94840f PostGrappleCollisionDetect_Down +0x94846a PostGrappleCollisionDetect_Up +0x9484c4 PostGrappleCollisionDetect_X +0x9484cd PostGrappleCollisionDetect_Y +0x9484d6 BlockColl_Horiz_Slope_NonSquare +0x948586 kBlockColl_Horiz_Slope_NonSquare_Tab +0x948606 MaybeUnused_sub_948606 +0x948683 MaybeUnused_sub_948683 +0x9486fe BlockColl_Vert_Slope_NonSquare +0x9487f4 Samus_AlignYPosSlope +0x94892b kAlignPos_Tab1 +0x948b2b kAlignYPos_Tab0 +0x948d2b BlockColl_Horiz_Slope_Square +0x948dbd BlockColl_Vert_Slope_Square +0x948e54 kTab948E54 +0x948e68 GetSuitDivisor +0x948e7d ClearCarry_1 +0x948e7f ClearCarry_2 +0x948e81 ClearCarry_3 +0x948e83 BlockColl_SpikeBlock_BTS0 +0x948ecf BlockColl_SpikeBlock_BTS1 +0x948f0a BlockColl_SpikeBlock_BTS3 +0x948f45 SetCarry_Spikeblock +0x948f47 ClearCarry_4 +0x948f49 BlockColl_Horiz_SolidShootGrappleBlock +0x948f82 BlockColl_Vert_SolidShootGrappleBlock +0x948fbb BlockColl_Horiz_Slope +0x948fda BlockColl_Vert_Slope +0x948ff6 kBlockColl_Vert_SpikeAir +0x949018 ClearCarry_5 +0x94901a BlockColl_Vert_SpikeAir +0x94902b kBlockColl_SpikeBlock +0x94904b BlockColl_Horiz_SpikeBlock +0x94905d BlockColl_Vert_SpikeBlock +0x94906f BlockColl_Horiz_SpecialAir +0x94909d BlockColl_Vert_SpecialAir +0x9490cb BlockColl_Horiz_SpecialBlock +0x949102 BlockColl_Vert_SpecialBlock +0x949139 kPlmHeaderDefPtrs +0x9492f9 BlockColl_Horiz_BombableAir +0x949313 BlockColl_Vert_BombableAir +0x94932d BlockColl_Horiz_BombBlock +0x94934c BlockColl_Vert_BombBlock +0x94938b BlockColl_Horiz_Door +0x9493ce BlockColl_Vert_Door +0x949411 BlockReact_HorizExt +0x949447 BlockReact_VertExt +0x949495 Samus_GetYposSpan +0x9494b5 Samus_GetXposSpan +0x9494d5 kBlockColl_Horiz_CheckColl +0x9494f5 kBlockColl_Vert_CheckColl +0x949515 BlockColl_Horiz_CheckColl +0x94952c BlockColl_Vert_CheckColl +0x949543 BlockColl_Handle_Horiz +0x94959e BlockColl_Handle_Vert_LeftToRight +0x9495f5 BlockColl_Handle_Vert_RightToLeft +0x949653 AbsoluteValueOfInt32 +0x949669 AbsoluteValueOfInt32_0 +0x94967f WallJumpBlockCollDetect +0x9496ab Samus_CollDetectChangedPose +0x9496e3 CollDetectDueToPoseChange_SingleBlock +0x94971e Samus_MoveRight_NoSolidColl +0x949763 Samus_MoveDown_NoSolidColl +0x9497bf BlockInsideReact_Slope +0x9497d0 BlockInsideReact_ShootableAir +0x9497d7 nullsub_165 +0x9497d8 ClearCarry_8 +0x9497da MaybeUnused_sub_9497DA +0x9497f2 MaybeUnused_sub_9497F2 +0x949810 ClearCarry_6 +0x949812 ClearCarry_7 +0x949814 BlockInsideReact_SpikeAir_BTS1 +0x949865 nullsub_166 +0x949866 BlockInsideReact_SpikeAir_BTS2 +0x9498ac kBlockInsideReact_SpikeAir +0x9498cc BlockInsideReact_SpikeAir +0x9498dc BlockInsideReact_Special_ +0x9498e3 BlockInsideReact_SpecialAir_Default +0x9498ea BlockInsideReact_SpecialAir_8 +0x949910 BlockInsideReact_SpecialAir_9 +0x949936 BlockInsideReact_SpecialAir_10 +0x949946 BlockInsideReact_SpecialAir_11 +0x949956 BlockInsideReact_SpecialAir_70 +0x949b16 BlockInsideReact_SpecialAir +0x949b40 kSamus_BlockInsideDetection +0x949b60 BlockInsideDetection +0x949c1d CalculateBlockAt +0x949c73 BlockFunc_9C73 +0x949cac BombOrPowerBomb_Func1 +0x949cf4 BlockColl_BombExplosion +0x949d33 nullsub_167 +0x949d34 BlockColl_GetBlockIndexAbove +0x949d3e BlockColl_GetBlockIndexRight +0x949d49 BlockColl_GetBlockIndexLeft +0x949d4e BlockColl_GetBlockIndexBelow +0x949d59 ClearCarry_9 +0x949d5b SetCarry_0 +0x949d71 BlockBombedReact_Special +0x949da4 kBlockBombedReact_Special_Plm +0x949e44 kBlockBombedReact_Region_Plm +0x949e54 nullsub_168 +0x949e55 BlockReact_ShootableAir +0x949e73 BlockReact_Shootable +0x949ea6 kBlockShotBombedReactionShootablePlm +0x949fc6 kBlockShotBombGrappleReaction_ShootableBlock_RegionPlm +0x949fd6 BlockReact_BombableAir +0x949ff4 BlockReact_BombableBlock +0x94a012 kBlockShotBombGrappleReact_BombableBlockPlm +0x94a032 kBlockBombedReact +0x94a052 BlockBombedReact +0x94a06a BlockFunc_A06A +0x94a0f4 BlockFunc_A0F4 +0x94a11a BlockFunc_A11A +0x94a147 BlockShotReactHoriz_Slope +0x94a15c SetCarry_1 +0x94a15e BlockShotReactVert_Slope +0x94a173 SetCarry_2 +0x94a175 kBlockShotReactHoriz +0x94a195 kkBlockShotReactVert +0x94a1b5 BlockShotReactHoriz +0x94a1d6 BlockShotReactVert +0x94a1f7 BlockGetSomePos1 +0x94a219 BlockGetSomePos2 +0x94a23b BlockCollNoWaveBeamHoriz +0x94a2ca BlockCollNoWaveBeamVert +0x94a352 BlockCollWaveBeamHoriz +0x94a3e4 BlockCollWaveBeamVert +0x94a46f BlockCollMissileHoriz +0x94a4d9 BlockCollMissileVert +0x94a543 BlockShotReactVert_Slope_NonSquare +0x94a569 BlockShotReactHoriz_Slope_NonSquare +0x94a58f BlockShotReact_Slope_NonSquare +0x94a601 kBlockCollSpreadBomb +0x94a621 BlockCollSpreadBomb +0x94a66a BlockShotReactVert_Slope_Square +0x94a71a BlockShotReactHoriz_Slope_Square +0x94a7c9 ClearCarryZero +0x94a7cd SetCarryClearOvf +0x94a7d1 BlockReactGrapple_GrappleBlock +0x94a7f5 kBlockReactGrapple_GrappleBlockPlm +0x94a7fd BlockReactGrapple_SpikeBlock +0x94a81b kBlockReactGrapple_SpikeBlockPlm +0x94a83b kBlockReactGrapple +0x94a85b BlockCollGrappleBeam +0x94a91f BlockReactGrapple +0x94a957 BlockFunc_A957 +0x94aa64 BlockReact_AA64 +0x94aa9a ClearCarry_10 +0x94aa9c SetCarry_3 +0x94aa9e BlockReact_AA64_SpikeAir +0x94ab17 BlockReact_AA64_SpikeBlock +0x94ab90 kBlockReactLut_AB90 +0x94abb0 BlockFunc_ABB0 +0x94abe6 BlockFunc_ABE6 +0x94ac11 BlockFunc_AC11 +0x94ac31 BlockFunc_AC31 +0x94acfe HandleMovementAndCollForSamusGrapple +0x94aee3 BlockFunc_AEE3 +0x94af0b ClearCarry_11 +0x94af0d BlockFunc_AF0D +0x94af87 GrappleFunc_AF87 +0x94afba HandleGrappleBeamGfx +0x94b0aa DrawGrappleOams +0x94b0f4 GrappleInstr_Goto +0x94b0f9 DrawGrappleOams2 +0x94b14b DrawGrappleOams3 +0x94c800 kTilesGunshipLiftoffDustClouds +0x94e000 kTilesTitleBgMode7 +0x9580d8 kTitleSpriteTiles +0x95a5e1 kTiles_BabyMetroidMode7 +0x95a82f kTiles_GunshipCeresMode7 +0x95d089 kTiles_Font1 +0x95d713 kTiles_Font2 +0x95e4c2 kTiles_IntroSprites +0x95f90e kTiles_IntroBG1BG2 +0x968000 kTiles_IntroBG1BG2_Spill +0x96d10a kTiles_SpaceCeres +0x96ec76 kTiles_Zebes +0x96fc04 kTilemap_TitleMode7 +0x96fe69 kTilemap_GunshipCeresMode7 +0x978000 kTilemap_GunshipCeresMode7_Spill +0x9788cc kTilemap_IntroBG2SamusHead +0x978adb kTilemap_Zebes +0x978d12 kTilemap_IntroBG3 +0x978df4 kTilemap_GameOpts_Options +0x978fcd kTilemap_GameOpts_Controller_EN +0x9791c4 kTilemap_GameOpts_Controller_JP +0x97938d kTilemap_GameOpts_Special_EN +0x97953a kTilemap_GameOpts_Special_JP +0x9796f4 kTilemap_SamusWaitCreditsEnd +0x979803 kTiles_SamusWaitCreditsEnd +0x97b957 kTiles_PostCreditsSuitlessSamus +0x97d7fc kTiles_PostCreditsShootScreen +0x97e7de kTiles_Font3 +0x97eeff kTilemap_Credits +0x97f987 kInterleavedTilesTilemap_PostCreditsMode7 +0x988000 kInterleavedTilesTilemap_PostCreditsMode7_Spill +0x988304 kTiles_ZebesExplode +0x98b5c1 kTilemap_WidePartOfZebesExplode +0x98b857 kTilemap_ConcentricWidePartOfZebesExplode +0x98baed kTilemap_EclipseOfZebesExplode +0x98bccd kTilemap_Blank +0x98bcd6 kTiles_ZebesZoomedOutDuringZebesExplode_Mode7 +0x98ed4f kTiles_GrayCloudsDuringZebesExplode_Mode7 +0x998000 kTiles_GrayCloudsDuringZebesExplode_Mode7_Spill +0x999101 kTiles_BigZebesDuringZebesExplode_Mode7 +0x99a56f kTiles_YellowCloudsDuringZebesExplode +0x99d17e kCleansBgVramBeforeCinematic_1 +0x99d65b kCleansBgVramBeforeCinematic_2 +0x99d932 kCleansBgVramBeforeCinematic_3 +0x99da9f kTiles_PostCreditSamusTransformEffect +0x99dab1 kTilemap_PostCreditSamusTransformEffect +0x99e089 kTiles_PostCreditsSuperMetroidIcon +0x99ecc4 kTileMap_PostCreditsSuperMetroidIcon +0x9a8000 kInitialPalette +0x9a8200 kTiles_GrappleBeam_Horiz +0x9a8a00 kTiles_GrappleBeam_Diag +0x9a9200 kTiles_GrappleBeam_Vert +0x9a9a00 kUnknownTiles +0x9aa200 kUnknownTiles2 +0x9aa400 kUnknownTiles3 +0x9aa600 kUnknownTiles4 +0x9aa800 kUnknownTiles5 +0x9aaa00 kUnknownTiles6 +0x9aac00 kUnknownTiles7 +0x9aae00 kUnknownTiles8 +0x9ab000 kUnknownTiles9 +0x9ab200 kStandardBg3Tiles +0x9ac200 kClearBg2Tilemap +0x9ad200 kStandardSpriteTiles +0x9af200 kTiles_PowerBeam +0x9af400 kTiles_IceBeam +0x9af600 kTiles_WaveBeam +0x9af800 kTiles_PlazmaBeam +0x9afa00 kTiles_SpazerBeam +0x9afc00 kCommonSpritesPalette1 +0x9b8000 kTiles_SamusDeathSequence +0x9b9400 kSamusPalette_PowerSuit +0x9b9520 kSamusPalette_VariaSuit +0x9b9800 kSamusPalette_GravitySuit +0x9ba3cc ProjectileTrail_Func5 +0x9ba4f7 kUnchargedBeam_Wave +0x9ba50b kUnchargedBeam_Default +0x9ba51f kUnchargedBeam_IceSpazer +0x9ba533 kUnchargedBeam_WaveIceSpazer +0x9ba547 kUnchargedBeam_IcePlasma +0x9ba55b kUnchargedBeam_WaveIcePlasma +0x9ba98f kChargedBeams_Default +0x9ba9a3 kChargedBeams_Ice +0x9ba9b7 kChargedBeams_IceSpazer +0x9ba9cb kChargedBeams_WaveIceSpazer +0x9ba9df kChargedBeams_IcePlasma +0x9ba9f3 kChargedBeams_WaveIcePlasma +0x9bb3a7 StartSamusDeathAnimation +0x9bb420 kDeathAnimationFrames +0x9bb43c DrawSamusStartingDeathAnim_ +0x9bb441 HandleSamusDeathSequence +0x9bb4b6 HandleSamusDeathSequence_Helper2 +0x9bb5ce CopyPalettesForSamusDeath +0x9bb6d8 QueueTransferOfSamusDeathSequence +0x9bb701 GameState_24_SamusNoHealth_Explosion_Helper +0x9bb710 GameState_24_SamusNoHealth_Explosion_1 +0x9bb758 GameState_24_SamusNoHealth_Explosion_2 +0x9bb7d3 kDeathSequencePals_PowerSuit +0x9bb7e7 kDeathSequencePals_VariaSuit +0x9bb7fb kDeathSequencePals_GravitySuit +0x9bb80f kDeathSequencePals_Suitless +0x9bb835 kShadesOfWhite +0x9bb861 CancelGrappleBeamIfIncompatiblePose +0x9bb8b8 kIsGrappleBannedForMovementType +0x9bb8d4 nullsub_6 +0x9bb8d5 UNUSED_sub_9BB8D5 +0x9bb8f1 CheckIfGrappleIsConnectedToBlock +0x9bb907 ProcessEnemyGrappleBeamColl +0x9bb97c HandleConnectingGrapple +0x9bb9d9 GrappleNext_SwingClockwise +0x9bb9e2 GrappleNext_SwingAntiClockwise +0x9bb9ea GrappleNext_StandAimRight +0x9bb9f3 GrappleNext_StandAimDownRight +0x9bb9fc GrappleNext_StandAimDownLeft +0x9bba05 GrappleNext_StandAimLeft +0x9bba0e GrappleNext_CrouchAimRight +0x9bba17 GrappleNext_CrouchAimDownRight +0x9bba20 GrappleNext_CrouchAimDownLeft +0x9bba29 GrappleNext_CrouchAimLeft +0x9bba31 UNUSED_sub_9BBA31 +0x9bba61 HandleConnectingGrapple_Swinging +0x9bba9b HandleConnectingGrapple_StuckInPlace +0x9bbad5 HandleSpecialGrappleBeamAngles +0x9bbb64 GrappleBeamFunc_BB64 +0x9bbc1f GrappleBeamFunc_BC1F +0x9bbcff GrappleBeamFunc_BCFF +0x9bbd44 GrappleBeamFunc_BD44 +0x9bbd95 GrappleBeamFunc_BD95 +0x9bbe98 GrappleBeamFunc_BE98 +0x9bbeeb GrappleBeamFunc_BEEB +0x9bbf1b GrappleBeamFunc_BF1B +0x9bbfa5 UpdateGrappleBeamTilesAndIncrFlameCtr +0x9bbfbd UpdateGrappleBeamTiles +0x9bc036 HandleGrappleBeamFlare +0x9bc0db kGrappleBeam_Ext_Xvel +0x9bc0ef kGrappleBeam_Ext_Yvel +0x9bc104 kGrappleBeam_Init_EndAngle +0x9bc122 kGrappleBeam_OriginX_NoRun +0x9bc136 kGrappleBeam_OriginY_NoRun +0x9bc14a kGrappleBeam_0x0d1a_offs_NoRun +0x9bc15e kGrappleBeam_0x0d1c_offs_NoRun +0x9bc172 kGrappleBeam_OriginX_Run +0x9bc186 kGrappleBeam_OriginY_Run +0x9bc19a kGrappleBeam_0x0d1a_offs_Run +0x9bc1ae kGrappleBeam_0x0d1c_offs_Run +0x9bc1c2 kGrappleBeam_SwingingData +0x9bc2c2 kGrappleBeam_SwingingData2 +0x9bc302 kGrappleBeam_SwingingData3 +0x9bc43e grapple_beam_special_angles +0x9bc490 GrappleBeamHandler +0x9bc4f0 GrappleBeamFunc_Inactive +0x9bc51e GrappleBeamFunc_FireGoToCancel +0x9bc6b2 CheckBannedDraygonGrappleDirs +0x9bc701 ClearCarry_12 +0x9bc703 GrappleBeamFunc_Firing +0x9bc759 UNUSED_sub_9BC759 +0x9bc77e GrappleBeamFunc_ConnectedLockedInPlace +0x9bc79d GrappleBeamFunc_Connected_Swinging +0x9bc814 GrappleBeamFunc_Wallgrab +0x9bc832 GrappleBeamFunc_C832 +0x9bc856 GrappleBeamFunc_Cancel +0x9bc8c5 GrappleBeam_Func2 +0x9bc9ce GrappleBeamFunc_C9CE +0x9bca65 PropelSamusFromGrappleSwing +0x9bcb8b GrappleBeamFunc_ReleaseFromSwing +0x9be000 kSamusTiles_9BE000 +0x9be020 kSamusTiles_9BE020 +0x9be040 kSamusTiles_9BE040 +0x9be160 kSamusTiles_9BE160 +0x9be240 kSamusTiles_9BE240 +0x9be3a0 kSamusTiles_9BE3A0 +0x9be580 kSamusTiles_9BE580 +0x9be680 kSamusTiles_9BE680 +0x9be7c0 kSamusTiles_9BE7C0 +0x9be920 kSamusTiles_9BE920 +0x9bea00 kSamusTiles_9BEA00 +0x9bec00 kSamusTiles_9BEC00 +0x9bee00 kSamusTiles_9BEE00 +0x9bee20 kSamusTiles_9BEE20 +0x9beee0 kSamusTiles_9BEEE0 +0x9befa0 kSamusTiles_9BEFA0 +0x9bf080 kSamusTiles_9BF080 +0x9bf180 kSamusTiles_9BF180 +0x9bf240 kSamusTiles_9BF240 +0x9bf320 kSamusTiles_9BF320 +0x9bf420 kSamusTiles_9BF420 +0x9bf520 kSamusTiles_9BF520 +0x9bf640 kSamusTiles_9BF640 +0x9bf760 kSamusTiles_9BF760 +0x9bf860 kSamusTiles_9BF860 +0x9bf9a0 kSamusTiles_9BF9A0 +0x9bfaa0 kSamusTiles_9BFAA0 +0x9bfbe0 kSamusTiles_9BFBE0 +0x9bfca0 kSamusTiles_9BFCA0 +0x9c8000 kSamusTiles_9C8000 +0x9c80a0 kSamusTiles_9C80A0 +0x9c8140 kSamusTiles_9C8140 +0x9c81e0 kSamusTiles_9C81E0 +0x9c8280 kSamusTiles_9C8280 +0x9c8320 kSamusTiles_9C8320 +0x9c83c0 kSamusTiles_9C83C0 +0x9c8460 kSamusTiles_9C8460 +0x9c8500 kSamusTiles_9C8500 +0x9c8600 kSamusTiles_9C8600 +0x9c8800 kSamusTiles_9C8800 +0x9c8900 kSamusTiles_9C8900 +0x9c8b00 kSamusTiles_9C8B00 +0x9c8c00 kSamusTiles_9C8C00 +0x9c8e00 kSamusTiles_9C8E00 +0x9c8f00 kSamusTiles_9C8F00 +0x9c9100 kSamusTiles_9C9100 +0x9c9240 kSamusTiles_9C9240 +0x9c93a0 kSamusTiles_9C93A0 +0x9c9500 kSamusTiles_9C9500 +0x9c9600 kSamusTiles_9C9600 +0x9c9620 kSamusTiles_9C9620 +0x9c9640 kSamusTiles_9C9640 +0x9c96e0 kSamusTiles_9C96E0 +0x9c9780 kSamusTiles_9C9780 +0x9c9840 kSamusTiles_9C9840 +0x9c9940 kSamusTiles_9C9940 +0x9c9a00 kSamusTiles_9C9A00 +0x9c9b00 kSamusTiles_9C9B00 +0x9c9c40 kSamusTiles_9C9C40 +0x9c9d80 kSamusTiles_9C9D80 +0x9c9f00 kSamusTiles_9C9F00 +0x9ca080 kSamusTiles_9CA080 +0x9ca200 kSamusTiles_9CA200 +0x9ca380 kSamusTiles_9CA380 +0x9ca500 kSamusTiles_9CA500 +0x9ca640 kSamusTiles_9CA640 +0x9ca780 kSamusTiles_9CA780 +0x9ca8c0 kSamusTiles_9CA8C0 +0x9caa40 kSamusTiles_9CAA40 +0x9cabc0 kSamusTiles_9CABC0 +0x9cad40 kSamusTiles_9CAD40 +0x9caec0 kSamusTiles_9CAEC0 +0x9cb040 kSamusTiles_9CB040 +0x9cb180 kSamusTiles_9CB180 +0x9cb2c0 kSamusTiles_9CB2C0 +0x9cb480 kSamusTiles_9CB480 +0x9cb640 kSamusTiles_9CB640 +0x9cb840 kSamusTiles_9CB840 +0x9cba40 kSamusTiles_9CBA40 +0x9cbc20 kSamusTiles_9CBC20 +0x9cbe00 kSamusTiles_9CBE00 +0x9cbfe0 kSamusTiles_9CBFE0 +0x9cc1a0 kSamusTiles_9CC1A0 +0x9cc360 kSamusTiles_9CC360 +0x9cc520 kSamusTiles_9CC520 +0x9cc700 kSamusTiles_9CC700 +0x9cc900 kSamusTiles_9CC900 +0x9ccb00 kSamusTiles_9CCB00 +0x9ccd00 kSamusTiles_9CCD00 +0x9ccf00 kSamusTiles_9CCF00 +0x9cd0e0 kSamusTiles_9CD0E0 +0x9cd2c0 kSamusTiles_9CD2C0 +0x9cd3e0 kSamusTiles_9CD3E0 +0x9cd500 kSamusTiles_9CD500 +0x9cd620 kSamusTiles_9CD620 +0x9cd760 kSamusTiles_9CD760 +0x9cd8a0 kSamusTiles_9CD8A0 +0x9cd9e0 kSamusTiles_9CD9E0 +0x9cdb00 kSamusTiles_9CDB00 +0x9cdc20 kSamusTiles_9CDC20 +0x9cdd40 kSamusTiles_9CDD40 +0x9cde80 kSamusTiles_9CDE80 +0x9cdfc0 kSamusTiles_9CDFC0 +0x9ce100 kSamusTiles_9CE100 +0x9ce240 kSamusTiles_9CE240 +0x9ce380 kSamusTiles_9CE380 +0x9ce4c0 kSamusTiles_9CE4C0 +0x9ce600 kSamusTiles_9CE600 +0x9ce740 kSamusTiles_9CE740 +0x9ce880 kSamusTiles_9CE880 +0x9ce980 kSamusTiles_9CE980 +0x9cea80 kSamusTiles_9CEA80 +0x9cec80 kSamusTiles_9CEC80 +0x9cee80 kSamusTiles_9CEE80 +0x9cf080 kSamusTiles_9CF080 +0x9cf280 kSamusTiles_9CF280 +0x9cf480 kSamusTiles_9CF480 +0x9cf680 kSamusTiles_9CF680 +0x9cf880 kSamusTiles_9CF880 +0x9d8000 kSamusTiles_9D8000 +0x9d8100 kSamusTiles_9D8100 +0x9d8260 kSamusTiles_9D8260 +0x9d8400 kSamusTiles_9D8400 +0x9d8500 kSamusTiles_9D8500 +0x9d8680 kSamusTiles_9D8680 +0x9d8820 kSamusTiles_9D8820 +0x9d89a0 kSamusTiles_9D89A0 +0x9d8aa0 kSamusTiles_9D8AA0 +0x9d8be0 kSamusTiles_9D8BE0 +0x9d8d60 kSamusTiles_9D8D60 +0x9d8ea0 kSamusTiles_9D8EA0 +0x9d9020 kSamusTiles_9D9020 +0x9d91e0 kSamusTiles_9D91E0 +0x9d93a0 kSamusTiles_9D93A0 +0x9d9520 kSamusTiles_9D9520 +0x9d96a0 kSamusTiles_9D96A0 +0x9d9820 kSamusTiles_9D9820 +0x9d9900 kSamusTiles_9D9900 +0x9d99e0 kSamusTiles_9D99E0 +0x9d9b00 kSamusTiles_9D9B00 +0x9d9c20 kSamusTiles_9D9C20 +0x9d9d40 kSamusTiles_9D9D40 +0x9d9e60 kSamusTiles_9D9E60 +0x9d9f20 kSamusTiles_9D9F20 +0x9d9fe0 kSamusTiles_9D9FE0 +0x9da0e0 kSamusTiles_9DA0E0 +0x9da1e0 kSamusTiles_9DA1E0 +0x9da320 kSamusTiles_9DA320 +0x9da460 kSamusTiles_9DA460 +0x9da5e0 kSamusTiles_9DA5E0 +0x9da6e0 kSamusTiles_9DA6E0 +0x9da7e0 kSamusTiles_9DA7E0 +0x9da920 kSamusTiles_9DA920 +0x9daa20 kSamusTiles_9DAA20 +0x9daaa0 kSamusTiles_9DAAA0 +0x9dabe0 kSamusTiles_9DABE0 +0x9dace0 kSamusTiles_9DACE0 +0x9dade0 kSamusTiles_9DADE0 +0x9daf20 kSamusTiles_9DAF20 +0x9db060 kSamusTiles_9DB060 +0x9db180 kSamusTiles_9DB180 +0x9db2a0 kSamusTiles_9DB2A0 +0x9db3c0 kSamusTiles_9DB3C0 +0x9db4e0 kSamusTiles_9DB4E0 +0x9db5e0 kSamusTiles_9DB5E0 +0x9db6e0 kSamusTiles_9DB6E0 +0x9db7e0 kSamusTiles_9DB7E0 +0x9db8e0 kSamusTiles_9DB8E0 +0x9db900 kSamusTiles_9DB900 +0x9dba20 kSamusTiles_9DBA20 +0x9dbb40 kSamusTiles_9DBB40 +0x9dbc80 kSamusTiles_9DBC80 +0x9dbd80 kSamusTiles_9DBD80 +0x9dbea0 kSamusTiles_9DBEA0 +0x9dbfc0 kSamusTiles_9DBFC0 +0x9dc0e0 kSamusTiles_9DC0E0 +0x9dc200 kSamusTiles_9DC200 +0x9dc360 kSamusTiles_9DC360 +0x9dc4c0 kSamusTiles_9DC4C0 +0x9dc600 kSamusTiles_9DC600 +0x9dc740 kSamusTiles_9DC740 +0x9dc840 kSamusTiles_9DC840 +0x9dc8e0 kSamusTiles_9DC8E0 +0x9dc980 kSamusTiles_9DC980 +0x9dcac0 kSamusTiles_9DCAC0 +0x9dcc00 kSamusTiles_9DCC00 +0x9dcd80 kSamusTiles_9DCD80 +0x9dcf00 kSamusTiles_9DCF00 +0x9dd080 kSamusTiles_9DD080 +0x9dd200 kSamusTiles_9DD200 +0x9dd380 kSamusTiles_9DD380 +0x9dd4c0 kSamusTiles_9DD4C0 +0x9dd600 kSamusTiles_9DD600 +0x9dd740 kSamusTiles_9DD740 +0x9dd8c0 kSamusTiles_9DD8C0 +0x9dda40 kSamusTiles_9DDA40 +0x9ddbc0 kSamusTiles_9DDBC0 +0x9ddd40 kSamusTiles_9DDD40 +0x9ddec0 kSamusTiles_9DDEC0 +0x9de000 kSamusTiles_9DE000 +0x9de140 kSamusTiles_9DE140 +0x9de300 kSamusTiles_9DE300 +0x9de4c0 kSamusTiles_9DE4C0 +0x9de6c0 kSamusTiles_9DE6C0 +0x9de8c0 kSamusTiles_9DE8C0 +0x9deaa0 kSamusTiles_9DEAA0 +0x9dec80 kSamusTiles_9DEC80 +0x9dee60 kSamusTiles_9DEE60 +0x9df020 kSamusTiles_9DF020 +0x9df1e0 kSamusTiles_9DF1E0 +0x9df3a0 kSamusTiles_9DF3A0 +0x9df580 kSamusTiles_9DF580 +0x9e8000 kSamusTiles_9E8000 +0x9e8100 kSamusTiles_9E8100 +0x9e8200 kSamusTiles_9E8200 +0x9e8320 kSamusTiles_9E8320 +0x9e8440 kSamusTiles_9E8440 +0x9e8540 kSamusTiles_9E8540 +0x9e86c0 kSamusTiles_9E86C0 +0x9e87c0 kSamusTiles_9E87C0 +0x9e88c0 kSamusTiles_9E88C0 +0x9e8a40 kSamusTiles_9E8A40 +0x9e8bc0 kSamusTiles_9E8BC0 +0x9e8cc0 kSamusTiles_9E8CC0 +0x9e8de0 kSamusTiles_9E8DE0 +0x9e8f00 kSamusTiles_9E8F00 +0x9e9020 kSamusTiles_9E9020 +0x9e9180 kSamusTiles_9E9180 +0x9e92e0 kSamusTiles_9E92E0 +0x9e93e0 kSamusTiles_9E93E0 +0x9e94e0 kSamusTiles_9E94E0 +0x9e9620 kSamusTiles_9E9620 +0x9e9760 kSamusTiles_9E9760 +0x9e9880 kSamusTiles_9E9880 +0x9e9a00 kSamusTiles_9E9A00 +0x9e9b00 kSamusTiles_9E9B00 +0x9e9c00 kSamusTiles_9E9C00 +0x9e9d20 kSamusTiles_9E9D20 +0x9e9e40 kSamusTiles_9E9E40 +0x9e9f40 kSamusTiles_9E9F40 +0x9ea060 kSamusTiles_9EA060 +0x9ea220 kSamusTiles_9EA220 +0x9ea3e0 kSamusTiles_9EA3E0 +0x9ea520 kSamusTiles_9EA520 +0x9ea660 kSamusTiles_9EA660 +0x9ea7a0 kSamusTiles_9EA7A0 +0x9ea8e0 kSamusTiles_9EA8E0 +0x9eaa80 kSamusTiles_9EAA80 +0x9eac40 kSamusTiles_9EAC40 +0x9eac60 kSamusTiles_9EAC60 +0x9eace0 kSamusTiles_9EACE0 +0x9eae20 kSamusTiles_9EAE20 +0x9eaf60 kSamusTiles_9EAF60 +0x9eb080 kSamusTiles_9EB080 +0x9eb180 kSamusTiles_9EB180 +0x9eb320 kSamusTiles_9EB320 +0x9eb4a0 kSamusTiles_9EB4A0 +0x9eb620 kSamusTiles_9EB620 +0x9eb720 kSamusTiles_9EB720 +0x9eb820 kSamusTiles_9EB820 +0x9eb920 kSamusTiles_9EB920 +0x9eba20 kSamusTiles_9EBA20 +0x9ebb20 kSamusTiles_9EBB20 +0x9ebc20 kSamusTiles_9EBC20 +0x9ebd20 kSamusTiles_9EBD20 +0x9ebee0 kSamusTiles_9EBEE0 +0x9ec0a0 kSamusTiles_9EC0A0 +0x9ec0c0 kSamusTiles_9EC0C0 +0x9ec0e0 kSamusTiles_9EC0E0 +0x9ec200 kSamusTiles_9EC200 +0x9ec320 kSamusTiles_9EC320 +0x9ec460 kSamusTiles_9EC460 +0x9ec5a0 kSamusTiles_9EC5A0 +0x9ec6e0 kSamusTiles_9EC6E0 +0x9ec820 kSamusTiles_9EC820 +0x9ec8e0 kSamusTiles_9EC8E0 +0x9ec9e0 kSamusTiles_9EC9E0 +0x9ecb20 kSamusTiles_9ECB20 +0x9ecc20 kSamusTiles_9ECC20 +0x9ecce0 kSamusTiles_9ECCE0 +0x9ecde0 kSamusTiles_9ECDE0 +0x9ecf00 kSamusTiles_9ECF00 +0x9ed020 kSamusTiles_9ED020 +0x9ed120 kSamusTiles_9ED120 +0x9ed220 kSamusTiles_9ED220 +0x9ed320 kSamusTiles_9ED320 +0x9ed420 kSamusTiles_9ED420 +0x9ed520 kSamusTiles_9ED520 +0x9ed620 kSamusTiles_9ED620 +0x9ed720 kSamusTiles_9ED720 +0x9ed820 kSamusTiles_9ED820 +0x9ed920 kSamusTiles_9ED920 +0x9eda40 kSamusTiles_9EDA40 +0x9edb80 kSamusTiles_9EDB80 +0x9edcc0 kSamusTiles_9EDCC0 +0x9ede00 kSamusTiles_9EDE00 +0x9edf40 kSamusTiles_9EDF40 +0x9ee040 kSamusTiles_9EE040 +0x9ee160 kSamusTiles_9EE160 +0x9ee280 kSamusTiles_9EE280 +0x9ee3a0 kSamusTiles_9EE3A0 +0x9ee4a0 kSamusTiles_9EE4A0 +0x9ee5a0 kSamusTiles_9EE5A0 +0x9ee6c0 kSamusTiles_9EE6C0 +0x9ee7c0 kSamusTiles_9EE7C0 +0x9ee8c0 kSamusTiles_9EE8C0 +0x9ee9c0 kSamusTiles_9EE9C0 +0x9eea40 kSamusTiles_9EEA40 +0x9eeb40 kSamusTiles_9EEB40 +0x9eebc0 kSamusTiles_9EEBC0 +0x9eecc0 kSamusTiles_9EECC0 +0x9eed40 kSamusTiles_9EED40 +0x9eee40 kSamusTiles_9EEE40 +0x9eeec0 kSamusTiles_9EEEC0 +0x9eefc0 kSamusTiles_9EEFC0 +0x9ef040 kSamusTiles_9EF040 +0x9ef140 kSamusTiles_9EF140 +0x9ef1c0 kSamusTiles_9EF1C0 +0x9ef2c0 kSamusTiles_9EF2C0 +0x9ef340 kSamusTiles_9EF340 +0x9ef440 kSamusTiles_9EF440 +0x9ef4c0 kSamusTiles_9EF4C0 +0x9ef5c0 kSamusTiles_9EF5C0 +0x9f8000 kSamusTiles_9F8000 +0x9f80c0 kSamusTiles_9F80C0 +0x9f81e0 kSamusTiles_9F81E0 +0x9f8300 kSamusTiles_9F8300 +0x9f83e0 kSamusTiles_9F83E0 +0x9f84e0 kSamusTiles_9F84E0 +0x9f85e0 kSamusTiles_9F85E0 +0x9f86a0 kSamusTiles_9F86A0 +0x9f8780 kSamusTiles_9F8780 +0x9f8860 kSamusTiles_9F8860 +0x9f8960 kSamusTiles_9F8960 +0x9f8a80 kSamusTiles_9F8A80 +0x9f8b80 kSamusTiles_9F8B80 +0x9f8c80 kSamusTiles_9F8C80 +0x9f8d80 kSamusTiles_9F8D80 +0x9f8e60 kSamusTiles_9F8E60 +0x9f8f60 kSamusTiles_9F8F60 +0x9f9060 kSamusTiles_9F9060 +0x9f9140 kSamusTiles_9F9140 +0x9f9240 kSamusTiles_9F9240 +0x9f9340 kSamusTiles_9F9340 +0x9f9440 kSamusTiles_9F9440 +0x9f9580 kSamusTiles_9F9580 +0x9f9680 kSamusTiles_9F9680 +0x9f9780 kSamusTiles_9F9780 +0x9f9840 kSamusTiles_9F9840 +0x9f9960 kSamusTiles_9F9960 +0x9f9a80 kSamusTiles_9F9A80 +0x9f9b60 kSamusTiles_9F9B60 +0x9f9c60 kSamusTiles_9F9C60 +0x9f9d60 kSamusTiles_9F9D60 +0x9f9e20 kSamusTiles_9F9E20 +0x9f9f00 kSamusTiles_9F9F00 +0x9f9fe0 kSamusTiles_9F9FE0 +0x9fa0e0 kSamusTiles_9FA0E0 +0x9fa200 kSamusTiles_9FA200 +0x9fa300 kSamusTiles_9FA300 +0x9fa400 kSamusTiles_9FA400 +0x9fa500 kSamusTiles_9FA500 +0x9fa5e0 kSamusTiles_9FA5E0 +0x9fa6e0 kSamusTiles_9FA6E0 +0x9fa7e0 kSamusTiles_9FA7E0 +0x9fa8c0 kSamusTiles_9FA8C0 +0x9fa9c0 kSamusTiles_9FA9C0 +0x9faac0 kSamusTiles_9FAAC0 +0x9fabc0 kSamusTiles_9FABC0 +0x9facc0 kSamusTiles_9FACC0 +0x9fadc0 kSamusTiles_9FADC0 +0x9fae80 kSamusTiles_9FAE80 +0x9fafa0 kSamusTiles_9FAFA0 +0x9fb0c0 kSamusTiles_9FB0C0 +0x9fb1a0 kSamusTiles_9FB1A0 +0x9fb2a0 kSamusTiles_9FB2A0 +0x9fb3a0 kSamusTiles_9FB3A0 +0x9fb460 kSamusTiles_9FB460 +0x9fb540 kSamusTiles_9FB540 +0x9fb620 kSamusTiles_9FB620 +0x9fb720 kSamusTiles_9FB720 +0x9fb840 kSamusTiles_9FB840 +0x9fb940 kSamusTiles_9FB940 +0x9fba40 kSamusTiles_9FBA40 +0x9fbb40 kSamusTiles_9FBB40 +0x9fbc20 kSamusTiles_9FBC20 +0x9fbd20 kSamusTiles_9FBD20 +0x9fbe20 kSamusTiles_9FBE20 +0x9fbf00 kSamusTiles_9FBF00 +0x9fc000 kSamusTiles_9FC000 +0x9fc100 kSamusTiles_9FC100 +0x9fc200 kSamusTiles_9FC200 +0x9fc340 kSamusTiles_9FC340 +0x9fc440 kSamusTiles_9FC440 +0x9fc540 kSamusTiles_9FC540 +0x9fc600 kSamusTiles_9FC600 +0x9fc720 kSamusTiles_9FC720 +0x9fc840 kSamusTiles_9FC840 +0x9fc920 kSamusTiles_9FC920 +0x9fca20 kSamusTiles_9FCA20 +0x9fcb20 kSamusTiles_9FCB20 +0x9fcbe0 kSamusTiles_9FCBE0 +0x9fccc0 kSamusTiles_9FCCC0 +0x9fcda0 kSamusTiles_9FCDA0 +0x9fcea0 kSamusTiles_9FCEA0 +0x9fcfc0 kSamusTiles_9FCFC0 +0x9fd0c0 kSamusTiles_9FD0C0 +0x9fd1c0 kSamusTiles_9FD1C0 +0x9fd2c0 kSamusTiles_9FD2C0 +0x9fd3a0 kSamusTiles_9FD3A0 +0x9fd4a0 kSamusTiles_9FD4A0 +0x9fd5a0 kSamusTiles_9FD5A0 +0x9fd680 kSamusTiles_9FD680 +0x9fd780 kSamusTiles_9FD780 +0x9fd880 kSamusTiles_9FD880 +0x9fd980 kSamusTiles_9FD980 +0x9fda80 kSamusTiles_9FDA80 +0x9fdb80 kSamusTiles_9FDB80 +0x9fdd40 kSamusTiles_9FDD40 +0x9fdf00 kSamusTiles_9FDF00 +0x9fe040 kSamusTiles_9FE040 +0x9fe180 kSamusTiles_9FE180 +0x9fe2c0 kSamusTiles_9FE2C0 +0x9fe400 kSamusTiles_9FE400 +0x9fe540 kSamusTiles_9FE540 +0x9fe680 kSamusTiles_9FE680 +0x9fe700 kSamusTiles_9FE700 +0x9fe900 kSamusTiles_9FE900 +0x9feb00 kSamusTiles_9FEB00 +0x9fec40 kSamusTiles_9FEC40 +0x9fed80 kSamusTiles_9FED80 +0x9fef80 kSamusTiles_9FEF80 +0x9ff180 kSamusTiles_9FF180 +0x9ff380 kSamusTiles_9FF380 +0x9ff560 kSamusTiles_9FF560 +0xa08000 Enemy_GrappleReact_NoInteract_A0 +0xa08005 Enemy_GrappleReact_SamusLatchesOn_A0 +0xa0800a Enemy_GrappleReact_KillEnemy_A0 +0xa0800f Enemy_GrappleReact_CancelBeam_A0 +0xa08014 Enemy_GrappleReact_SamusLatchesNoInvinc_A0 +0xa08019 Enemy_GrappleReact_SamusLatchesParalyze_A0 +0xa0801e Enemy_GrappleReact_HurtSamus_A0 +0xa08023 Enemy_NormalTouchAI_A0 +0xa08028 Enemy_NormalTouchAI_SkipDeathAnim_A0 +0xa0802d Enemy_NormalShotAI_A0 +0xa08032 Enemy_NormalShotAI_SkipSomeParts_A0 +0xa08037 Enemy_NormalPowerBombAI_A0 +0xa0803c Enemy_NormalPowerBombAI_SkipDeathAnim_A0 +0xa08041 Enemy_NormalFrozenAI +0xa08046 CreateADudShot +0xa0804b nullsub_169 +0xa0804c nullsub_170 +0xa0804d kSpritemap_Nothing_A0 +0xa0804f kExtendedSpritemap_Nothing_A0 +0xa0806b EnemyInstr_SetAiPreInstr +0xa08074 EnemyInstr_ClearAiPreInstr +0xa0807b nullsub_171 +0xa0807c EnemyInstr_StopScript +0xa0808a EnemyInstr_Call +0xa0809c EnemyInstr_CallWithArg +0xa080b5 EnemyInstr_CallFar +0xa080cb Trampoline_sub_A080CB +0xa080ce EnemyInstr_CallFarWithArg +0xa080ea Trampoline_sub_A080EA +0xa080ed EnemyInstr_Goto +0xa080f2 EnemyInstr_GotoRel +0xa08108 EnemyInstr_DecTimerAndGoto +0xa08110 EnemyInstr_DecTimerAndGoto2 +0xa08118 EnemyInstr_DecTimerAndGotoRel +0xa08123 EnemyInstr_SetTimer +0xa0812c EnemyInstr_Skip2bytes +0xa0812f EnemyInstr_Sleep +0xa0813a EnemyInstr_WaitNframes +0xa0814b EnemyInstr_CopyToVram +0xa08173 EnemyInstr_EnableOffScreenProcessing +0xa0817d EnemyInstr_DisableOffScreenProcessing +0xa08187 kCommonEnemySpeeds_Linear +0xa0838f kCommonEnemySpeeds_Quadratic +0xa08687 HandleRoomShaking +0xa08712 SetAllEnemiesToShakeFor2Frames +0xa0872d kRoomShakes +0xa0884d DrawSamusEnemiesAndProjectiles +0xa088c4 CallFarPtr_enemy_gfx_drawn_hook +0xa088d0 RecordEnemySpawnData +0xa0896f DebugLoadEnemySetData +0xa08a1e LoadEnemies +0xa08a6d ClearEnemyDataAndProcessEnemySet +0xa08a9e InitializeEnemies +0xa08be9 CallEnemyAiPointer_0_IGNORE +0xa08bf3 LoadEnemyGfxIndexes +0xa08c6c LoadEnemyTileData +0xa08cd7 TransferEnemyTilesToVramAndInit +0xa08d3a UNUSED_sub_A08D3A +0xa08d64 ProcessEnemyTilesets +0xa08eb6 DetermineWhichEnemiesToProcess +0xa08fd4 EnemyMain +0xa09096 ExecuteEnemyAiPointerInOtherBank_IGNORE +0xa09169 DecrementSamusTimers +0xa0918b UNUSED_sub_A0918B +0xa0920e SpawnEnemyDrops +0xa0922b DeleteEnemyAndConnectedEnemies +0xa0924b Unused_Debug_SpawnEnemyToEnemyIndex +0xa09275 SpawnEnemy +0xa0941a CallEnemyCodeInBank +0xa09423 DrawOneEnemy +0xa0944a WriteEnemyOams +0xa0957e NormalEnemyFrozenAI +0xa095ad UNUSED_sub_A095AD +0xa095e1 Trampoline_sub_A095E1 +0xa095f1 UNUSED_sub_A095F1 +0xa096ba Trampoline_sub_A096BA +0xa096ca ProcessExtendedTilemap +0xa09726 QueueEnemyBG2TilemapTransfers +0xa09758 EnemyCollisionHandler +0xa09784 nullsub_4 +0xa09785 SamusProjectileInteractionHandler +0xa09894 EprojSamusCollDetect +0xa09923 HandleEprojCollWithSamus +0xa0996c EprojProjCollDet +0xa099f9 HandleEprojCollWithProj +0xa09a5a EnemySamusCollHandler_Multibox +0xa09b43 Trampoline_CallEnemyGfxPtr_IGNORE +0xa09b7f EprojCollHandler_Multibox +0xa09d17 CallHitboxShot +0xa09d23 EnemyBombCollHandler_Multibox +0xa09e9a GrappleBeam_CollDetect_Enemy +0xa09f6d SwitchEnemyAiToMainAi +0xa09f7d SamusLatchesOnWithGrapple +0xa09fc4 EnemyGrappleDeath +0xa09fdf Enemy_SwitchToFrozenAi +0xa09fe9 SamusLatchesOnWithGrappleNoInvinc +0xa0a018 Trampoline_sub_A0A018 +0xa0a03e SamusLatchesOnWithGrappleParalyze +0xa0a070 SamusHurtFromGrapple +0xa0a07a EnemySamusCollHandler +0xa0a126 Trampoline_sub_A0A126_IGNORE +0xa0a143 EprojCollHandler +0xa0a226 Trampoline_sub_A0A226_IGNORE +0xa0a236 EnemyBombCollHandler +0xa0a306 ProcessEnemyPowerBombInteraction +0xa0a3af EnemyDeathAnimation +0xa0a410 RinkasDeathAnimation +0xa0a45e SuitDamageDivision +0xa0a477 NormalEnemyTouchAi +0xa0a497 NormalEnemyTouchAiSkipDeathAnim_CurEnemy +0xa0a4a1 NormalEnemyTouchAiSkipDeathAnim +0xa0a597 NormalEnemyPowerBombAi +0xa0a5b7 NormalEnemyPowerBombAiSkipDeathAnim_CurEnemy +0xa0a5c1 NormalEnemyPowerBombAiSkipDeathAnim +0xa0a63d NormalEnemyShotAi +0xa0a6a7 NormalEnemyShotAiSkipDeathAnim_CurEnemy +0xa0a6b4 EnemyFunc_A6B4_UsedBySporeSpawn +0xa0a6de NormalEnemyShotAiSkipDeathAnim +0xa0a8bc CreateDudShot +0xa0a8f0 Samus_CheckSolidEnemyColl +0xa0ab84 UNUSED_sub_A0AB84 +0xa0abe1 UNUSED_sub_A0ABE1 +0xa0abe7 CheckIfEnemyTouchesSamus +0xa0ac29 UNUSED_sub_A0AC29 +0xa0ac67 EnemyFunc_AC67 +0xa0aca8 EnemyFunc_ACA8 +0xa0ad33 UNUSED_sub_A0AD33 +0xa0ad4f UNUSED_sub_A0AD4F +0xa0ad62 UNUSED_sub_A0AD62 +0xa0ad70 CheckIfEnemyIsOnScreen +0xa0ada3 EnemyFunc_ADA3 +0xa0ade7 EnemyWithNormalSpritesIsOffScreen +0xa0ae29 DetermineDirectionOfSamusFromEnemy +0xa0ae7c UNUSED_sub_A0AE7C +0xa0aedd GetSamusEnemyDelta_Y +0xa0aee5 GetSamusEnemyDelta_X +0xa0aeed IsSamusWithinEnemy_Y +0xa0af0b IsSamusWithinEnemy_X +0xa0af29 UNUSED_sub_A0AF29 +0xa0af3b UNUSED_sub_A0AF3B +0xa0af4d UNUSED_sub_A0AF4D +0xa0af5a Enemy_SubPos_X +0xa0af6c Enemy_AddPos_X +0xa0af7e Enemy_SubPos_Y +0xa0af90 Enemy_AddPos_Y +0xa0afa2 UNUSED_sub_A0AFA2 +0xa0afea SignExtend8 +0xa0affd UNUSED_sub_A0AFFD +0xa0b002 Mult32 +0xa0b008 UNUSED_sub_A0B008 +0xa0b018 UNUSED_sub_A0B018 +0xa0b01f UNUSED_sub_A0B01F +0xa0b040 UNUSED_sub_A0B040 +0xa0b061 UNUSED_sub_A0B061 +0xa0b067 Abs16 +0xa0b07d SubtractThenAbs16 +0xa0b0a0 UNUSED_sub_A0B0A0 +0xa0b0a5 UNUSED_sub_A0B0A5 +0xa0b0b2 CosineMult8bit +0xa0b0c6 SineMult8bitNegative +0xa0b0da SineMult8bit +0xa0b133 kEnemyLayerToQueuePtr +0xa0b143 kSine8bit +0xa0b1c3 kSine16bit +0xa0b3c3 kSinCosTable8bit_Sext +0xa0b643 ConvertAngleToXy +0xa0b691 EnemyFunc_B691 +0xa0b6ff Mult32bit +0xa0b761 EnemyFunc_Divide +0xa0b7a1 EnemyFunc_B7A1 +0xa0b7ee kEquationForQuarterCircle +0xa0b8ee Enemy_ItemDrop_MiniKraid +0xa0b92b Enemy_ItemDrop_LowerNorfairSpacePirate +0xa0b968 Enemy_ItemDrop_Metroid +0xa0b9a5 Enemy_ItemDrop_Ridley +0xa0b9d8 Enemy_ItemDrop_Crocomire +0xa0ba0b Enemy_ItemDrop_Phantoon +0xa0ba3e Enemy_ItemDrop_Botwoon +0xa0ba71 Enemy_ItemDrop_Kraid +0xa0baa4 Enemy_ItemDrop_BombTorizo +0xa0bad7 Enemy_ItemDrop_GoldenTorizo +0xa0bb0a Enemy_ItemDrop_SporeSpawn +0xa0bb3d Enemy_ItemDrop_Draygon +0xa0bb70 CalculateBlockContainingPixelPos_IGNORE +0xa0bb9b CompareDistToSamus_X +0xa0bbad CompareDistToSamus_Y +0xa0bbbf EnemyFunc_BBBF +0xa0bc76 EnemyFunc_BC76 +0xa0bd26 EnemyFunc_BD26 +0xa0bdf6 EnemyFunc_BDF6 +0xa0bebf EnemyFunc_BEBF +0xa0bf8a EnemyFunc_BF8A +0xa0c04e CalculateAngleOfSamusFromEproj +0xa0c066 CalculateAngleOfSamusFromEnemy +0xa0c07e UNUSED_sub_A0C07E +0xa0c096 CalculateAngleOfEnemyXfromEnemyY +0xa0c0ae CalculateAngleFromXY +0xa0c0b1 CalculateAngleFromXY_ +0xa0c112 CalculateAngleFromXY_0 +0xa0c120 CalculateAngleFromXY_1 +0xa0c132 CalculateAngleFromXY_2 +0xa0c13c CalculateAngleFromXY_3 +0xa0c14e CalculateAngleFromXY_4 +0xa0c15c CalculateAngleFromXY_5 +0xa0c16e CalculateAngleFromXY_6 +0xa0c17c CalculateAngleFromXY_7 +0xa0c18e IsEnemyLeavingScreen +0xa0c1b1 UNUSED_sub_A0C1B1 +0xa0c1d4 UNUSED_sub_A0C1D4 +0xa0c26a ProcessEnemyInstructions +0xa0c2bc ClearCarry_13 +0xa0c2be SetCarry_4 +0xa0c2c0 EnemyBlockCollReact_Spike +0xa0c2fa EnemyBlockCollHorizReact_Slope +0xa0c319 EnemyBlockCollVertReact_Slope +0xa0c32e EnemyBlockCollHorizReact_Slope_Square +0xa0c390 Enemy_SetXpos_Aligned +0xa0c3b2 EnemyBlockCollVertReact_Slope_Square +0xa0c413 Enemy_SetYpos_Aligned +0xa0c449 EnemyBlockCollHorizReact_Slope_NonSquare +0xa0c51f EnemyBlockCollVertReact_Slope_NonSquare +0xa0c619 EnemyBlockCollReact_HorizExt +0xa0c64f EnemyBlockCollReact_VertExt +0xa0c69d Enemy_MoveRight_SlopesAsWalls +0xa0c6a4 Enemy_MoveRight_ProcessSlopes +0xa0c6ab Enemy_MoveRight_IgnoreSlopes +0xa0c6ad Enemy_MoveRight_IgnoreSlopes_Inner +0xa0c778 UNUSED_sub_A0C778 +0xa0c77f UNUSED_sub_A0C77F +0xa0c786 Enemy_MoveDown +0xa0c788 Enemy_MoveDownInner +0xa0c845 EnemyBlockCollReact_Horiz +0xa0c879 EnemyBlockCollReact_Vert +0xa0c8ad EnemyFunc_C8AD +0xa0c9bf kCommonEnemySpeeds_Linear_Copy +0xa0cbc7 kCommonEnemySpeeds_Quadratic_Copy +0xa0cebf kEnemyDef_BouncingGoofball +0xa0ceff kEnemyDef_MiniCrocomire +0xa0cf3f kEnemyDef_CF3F_MaridiaBeybladeTurtle +0xa0cf7f kEnemyDef_CF7F_MiniMaridiaBeybladeTurtle +0xa0cfbf kEnemyDef_ThinHoppingBlobs +0xa0cfff kEnemyDef_SpikeShootingPlant +0xa0d03f kEnemyDef_MaridiaSpikeyShell +0xa0d07f kEnemyDef_D07F_Gunship +0xa0d0bf kEnemyDef_D0BF_Gunship +0xa0d0ff kEnemyDef_D0FF_Flies +0xa0d13f kEnemyDef_D13F_Flies +0xa0d17f kEnemyDef_D17F_PreSpringBallFly +0xa0d1bf kEnemyDef_D1BF_NorfairErraticFireball +0xa0d1ff kEnemyDef_D1FF_LavaquakeRocks +0xa0d23f kEnemyDef_D23F +0xa0d27f kEnemyDef_D27F +0xa0d2bf kEnemyDef_D2BF +0xa0d2ff kEnemyDef_D2FF +0xa0d33f kEnemyDef_D33F +0xa0d37f kEnemyDef_D37F +0xa0d3bf kEnemyDef_D3BF +0xa0d3ff kEnemyDef_D3FF +0xa0d43f kEnemyDef_D43F +0xa0d47f kEnemyDef_D47F +0xa0d4bf kEnemyDef_D4BF +0xa0d4ff kEnemyDef_D4FF +0xa0d53f kEnemyDef_D53F +0xa0d57f kEnemyDef_D57F +0xa0d5bf kEnemyDef_D5BF +0xa0d5ff kEnemyDef_D5FF +0xa0d63f kEnemyDef_D63F +0xa0d67f kEnemyDef_D67F +0xa0d6bf kEnemyDef_D6BF +0xa0d6ff kEnemyDef_D6FF +0xa0d73f kEnemyDef_D73F +0xa0d77f kEnemyDef_D77F +0xa0d7bf kEnemyDef_D7BF +0xa0d7ff kEnemyDef_D7FF +0xa0d83f kEnemyDef_D83F +0xa0d87f kEnemyDef_D87F +0xa0d8bf kEnemyDef_D8BF +0xa0d8ff kEnemyDef_D8FF +0xa0d93f kEnemyDef_D93F +0xa0d97f kEnemyDef_D97F +0xa0d9bf kEnemyDef_D9BF +0xa0d9ff kEnemyDef_D9FF +0xa0da3f kEnemyDef_DA3F +0xa0da7f kEnemyDef_DA7F +0xa0dabf kEnemyDef_DABF +0xa0daff kEnemyDef_DAFF +0xa0db3f kEnemyDef_DB3F +0xa0db7f kEnemyDef_DB7F +0xa0dbbf kEnemyDef_DBBF +0xa0dbff kEnemyDef_DBFF +0xa0dc3f kEnemyDef_DC3F +0xa0dc7f kEnemyDef_DC7F +0xa0dcbf kEnemyDef_DCBF +0xa0dcff kEnemyDef_DCFF +0xa0dd3f kEnemyDef_DD3F +0xa0dd7f kEnemyDef_DD7F +0xa0ddbf kEnemyDef_DDBF +0xa0ddff kEnemyDef_DDFF +0xa0de3f kEnemyDef_DE3F +0xa0de7f kEnemyDef_DE7F +0xa0debf kEnemyDef_DEBF +0xa0deff kEnemyDef_DEFF +0xa0df3f kEnemyDef_DF3F +0xa0df7f kEnemyDef_DF7F +0xa0dfbf kEnemyDef_DFBF +0xa0dfff kEnemyDef_DFFF +0xa0e03f kEnemyDef_E03F +0xa0e07f kEnemyDef_E07F +0xa0e0bf kEnemyDef_E0BF +0xa0e0ff kEnemyDef_E0FF +0xa0e13f kEnemyDef_E13F +0xa0e17f kEnemyDef_E17F +0xa0e1bf kEnemyDef_E1BF +0xa0e1ff kEnemyDef_E1FF +0xa0e23f kCeresSteam_TileData +0xa0e27f kEnemyDef_E27F +0xa0e2bf kEnemyDef_E2BF +0xa0e2ff kEnemyDef_E2FF +0xa0e33f kEnemyDef_E33F +0xa0e37f kEnemyDef_E37F +0xa0e3bf kEnemyDef_E3BF +0xa0e3ff kEnemyDef_E3FF +0xa0e43f kEnemyDef_E43F +0xa0e47f kEnemyDef_E47F +0xa0e4bf kEnemyDef_E4BF +0xa0e4ff kEnemyDef_E4FF +0xa0e53f kEnemyDef_E53F +0xa0e57f kEnemyDef_E57F +0xa0e5bf kEnemyDef_E5BF +0xa0e5ff kEnemyDef_E5FF +0xa0e63f kEnemyDef_E63F +0xa0e67f kEnemyDef_E67F +0xa0e6bf kEnemyDef_E6BF +0xa0e6ff kEnemyDef_E6FF +0xa0e73f kEnemyDef_E73F +0xa0e77f kEnemyDef_E77F +0xa0e7bf kEnemyDef_E7BF +0xa0e7ff kEnemyDef_E7FF +0xa0e83f kEnemyDef_E83F +0xa0e87f kEnemyDef_E87F +0xa0e8bf kEnemyDef_E8BF +0xa0e8ff kEnemyDef_E8FF +0xa0e93f kEnemyDef_E93F +0xa0e97f kEnemyDef_E97F +0xa0e9bf kEnemyDef_E9BF +0xa0e9ff kEnemyDef_E9FF +0xa0ea3f kEnemyDef_EA3F +0xa0ea7f kEnemyDef_EA7F +0xa0eabf kEnemyDef_EABF +0xa0eaff kEnemyDef_EAFF +0xa0eb3f kEnemyDef_EB3F +0xa0eb7f kEnemyDef_EB7F +0xa0ebbf kEnemyDef_EBBF +0xa0ebff kEnemyDef_EBFF +0xa0ec3f kEnemyDef_EC3F +0xa0ec7f kEnemyDef_EC7F +0xa0ecbf kEnemyDef_ECBF +0xa0ecff kEnemyDef_ECFF +0xa0ed3f kEnemyDef_ED3F +0xa0ed7f kEnemyDef_ED7F +0xa0edbf kEnemyDef_EDBF +0xa0edff kEnemyDef_EDFF +0xa0ee3f kEnemyDef_EE3F +0xa0ee7f kEnemyDef_EE7F +0xa0eebf kEnemyDef_EEBF +0xa0eeff kEnemyDef_EEFF +0xa0ef3f kEnemyDef_EF3F +0xa0ef7f kEnemyDef_EF7F +0xa0efbf kEnemyDef_EFBF +0xa0efff kEnemyDef_EFFF +0xa0f03f kEnemyDef_F03F +0xa0f07f kEnemyDef_F07F +0xa0f0bf kEnemyDef_F0BF +0xa0f0ff kEnemyDef_F0FF +0xa0f153 kEnemyDef_F153 +0xa0f193 kEnemyDef_F193 +0xa0f1d3 kEnemyDef_F1D3 +0xa0f213 kEnemyDef_F213 +0xa0f253 kEnemyDef_F253 +0xa0f293 kEnemyDef_F293 +0xa0f2d3 kEnemyDef_F2D3 +0xa0f313 kEnemyDef_F313 +0xa0f353 kEnemyDef_F353 +0xa0f393 kEnemyDef_F393 +0xa0f3d3 kEnemyDef_F3D3 +0xa0f413 kEnemyDef_F413 +0xa0f453 kEnemyDef_F453 +0xa0f493 kEnemyDef_F493 +0xa0f4d3 kEnemyDef_F4D3 +0xa0f513 kEnemyDef_F513 +0xa0f553 kEnemyDef_F553 +0xa0f593 kEnemyDef_F593 +0xa0f5d3 kEnemyDef_F5D3 +0xa0f613 kEnemyDef_F613 +0xa0f653 kEnemyDef_F653 +0xa0f693 kEnemyDef_F693 +0xa0f6d3 kEnemyDef_F6D3 +0xa0f713 kEnemyDef_F713 +0xa0f753 kEnemyDef_F753 +0xa0f793 kEnemyDef_F793 +0xa18000 kEnemyPopulation_8000 +0xa18586 kEnemyPopulation_8586 +0xa185a9 kEnemyPopulation_85A9 +0xa185ac kEnemyPopulation_85AC +0xa185af kEnemyPopulation_85AF +0xa185b2 kEnemyPopulation_85B2 +0xa185d5 kEnemyPopulation_85D5 +0xa185d8 kEnemyPopulation_85D8 +0xa185db kEnemyPopulation_85DB +0xa185de kEnemyPopulation_85DE +0xa185e1 kEnemyPopulation_85E1 +0xa18684 kEnemyPopulation_8684 +0xa186f7 kEnemyPopulation_86F7 +0xa186fa kEnemyPopulation_86FA +0xa1883d kEnemyPopulation_883D +0xa18870 kEnemyPopulation_8870 +0xa188b3 kEnemyPopulation_88B3 +0xa188b6 kEnemyPopulation_88B6 +0xa188c9 kEnemyPopulation_88C9 +0xa1897c kEnemyPopulation_897C +0xa189df kEnemyPopulation_89DF +0xa189f2 kEnemyPopulation_89F2 +0xa18a15 kEnemyPopulation_8A15 +0xa18ab8 kEnemyPopulation_8AB8 +0xa18b3b kEnemyPopulation_8B3B +0xa18b3e kEnemyPopulation_8B3E +0xa18b61 kEnemyPopulation_8B61 +0xa18b74 kEnemyPopulation_8B74 +0xa18b87 kEnemyPopulation_8B87 +0xa18bca kEnemyPopulation_8BCA +0xa18c0d kEnemyPopulation_8C0D +0xa18da0 kEnemyPopulation_8DA0 +0xa18ed3 kEnemyPopulation_8ED3 +0xa18f16 kEnemyPopulation_8F16 +0xa18f19 kEnemyPopulation_8F19 +0xa18f7c kEnemyPopulation_8F7C +0xa18fbf kEnemyPopulation_8FBF +0xa18fc2 kEnemyPopulation_8FC2 +0xa18fc5 kEnemyPopulation_8FC5 +0xa19028 kEnemyPopulation_9028 +0xa1902b kEnemyPopulation_902B +0xa1902e kEnemyPopulation_902E +0xa19081 kEnemyPopulation_9081 +0xa190c4 kEnemyPopulation_90C4 +0xa190c7 kEnemyPopulation_90C7 +0xa1911a kEnemyPopulation_911A +0xa1918d kEnemyPopulation_918D +0xa19200 kEnemyPopulation_9200 +0xa192a3 kEnemyPopulation_92A3 +0xa19326 kEnemyPopulation_9326 +0xa193a9 kEnemyPopulation_93A9 +0xa193ac kEnemyPopulation_93AC +0xa1941f kEnemyPopulation_941F +0xa19452 kEnemyPopulation_9452 +0xa19505 kEnemyPopulation_9505 +0xa19538 kEnemyPopulation_9538 +0xa1953b kEnemyPopulation_953B +0xa1953e kEnemyPopulation_953E +0xa195e1 kEnemyPopulation_95E1 +0xa195e4 kEnemyPopulation_95E4 +0xa19617 kEnemyPopulation_9617 +0xa1961a kEnemyPopulation_961A +0xa1961d kEnemyPopulation_961D +0xa19660 kEnemyPopulation_9660 +0xa19663 kEnemyPopulation_9663 +0xa19666 kEnemyPopulation_9666 +0xa19669 kEnemyPopulation_9669 +0xa1966c kEnemyPopulation_966C +0xa1966f kEnemyPopulation_966F +0xa196e2 kEnemyPopulation_96E2 +0xa19735 kEnemyPopulation_9735 +0xa19778 kEnemyPopulation_9778 +0xa197fb kEnemyPopulation_97FB +0xa1988e kEnemyPopulation_988E +0xa198d1 kEnemyPopulation_98D1 +0xa198e4 kEnemyPopulation_98E4 +0xa198f7 kEnemyPopulation_98F7 +0xa1997a kEnemyPopulation_997A +0xa19a2d kEnemyPopulation_9A2D +0xa19a40 kEnemyPopulation_9A40 +0xa19b13 kEnemyPopulation_9B13 +0xa19bc6 kEnemyPopulation_9BC6 +0xa19cb9 kEnemyPopulation_9CB9 +0xa19d5c kEnemyPopulation_9D5C +0xa19e2f kEnemyPopulation_9E2F +0xa19eb2 kEnemyPopulation_9EB2 +0xa19eb5 kEnemyPopulation_9EB5 +0xa19f38 kEnemyPopulation_9F38 +0xa19f3b kEnemyPopulation_9F3B +0xa19f5e kEnemyPopulation_9F5E +0xa19f61 kEnemyPopulation_9F61 +0xa19fa4 kEnemyPopulation_9FA4 +0xa1a057 kEnemyPopulation_A057 +0xa1a0ba kEnemyPopulation_A0BA +0xa1a0fd kEnemyPopulation_A0FD +0xa1a110 kEnemyPopulation_A110 +0xa1a133 kEnemyPopulation_A133 +0xa1a1d6 kEnemyPopulation_A1D6 +0xa1a219 kEnemyPopulation_A219 +0xa1a23c kEnemyPopulation_A23C +0xa1a2df kEnemyPopulation_A2DF +0xa1a332 kEnemyPopulation_A332 +0xa1a3f5 kEnemyPopulation_A3F5 +0xa1a428 kEnemyPopulation_A428 +0xa1a48b kEnemyPopulation_A48B +0xa1a4ee kEnemyPopulation_A4EE +0xa1a4f1 kEnemyPopulation_A4F1 +0xa1a544 kEnemyPopulation_A544 +0xa1a557 kEnemyPopulation_A557 +0xa1a55a kEnemyPopulation_A55A +0xa1a55d kEnemyPopulation_A55D +0xa1a560 kEnemyPopulation_A560 +0xa1a623 kEnemyPopulation_A623 +0xa1a626 kEnemyPopulation_A626 +0xa1a639 kEnemyPopulation_A639 +0xa1a63c kEnemyPopulation_A63C +0xa1a63f kEnemyPopulation_A63F +0xa1a642 kEnemyPopulation_A642 +0xa1a645 kEnemyPopulation_A645 +0xa1a6a8 kEnemyPopulation_A6A8 +0xa1a7bb kEnemyPopulation_A7BB +0xa1a82e kEnemyPopulation_A82E +0xa1a8e1 kEnemyPopulation_A8E1 +0xa1a964 kEnemyPopulation_A964 +0xa1a967 kEnemyPopulation_A967 +0xa1a9da kEnemyPopulation_A9DA +0xa1aa8d kEnemyPopulation_AA8D +0xa1ab80 kEnemyPopulation_AB80 +0xa1ac53 kEnemyPopulation_AC53 +0xa1ad06 kEnemyPopulation_AD06 +0xa1ad09 kEnemyPopulation_AD09 +0xa1ad6c kEnemyPopulation_AD6C +0xa1ad8f kEnemyPopulation_AD8F +0xa1ae52 kEnemyPopulation_AE52 +0xa1aea5 kEnemyPopulation_AEA5 +0xa1aea8 kEnemyPopulation_AEA8 +0xa1aeab kEnemyPopulation_AEAB +0xa1aeae kEnemyPopulation_AEAE +0xa1aeb1 kEnemyPopulation_AEB1 +0xa1aef4 kEnemyPopulation_AEF4 +0xa1af87 kEnemyPopulation_AF87 +0xa1afea kEnemyPopulation_AFEA +0xa1b11d kEnemyPopulation_B11D +0xa1b1f0 kEnemyPopulation_B1F0 +0xa1b1f3 kEnemyPopulation_B1F3 +0xa1b1f6 kEnemyPopulation_B1F6 +0xa1b259 kEnemyPopulation_B259 +0xa1b32c kEnemyPopulation_B32C +0xa1b3bf kEnemyPopulation_B3BF +0xa1b3c2 kEnemyPopulation_B3C2 +0xa1b3c5 kEnemyPopulation_B3C5 +0xa1b3d8 kEnemyPopulation_B3D8 +0xa1b45b kEnemyPopulation_B45B +0xa1b48e kEnemyPopulation_B48E +0xa1b4d1 kEnemyPopulation_B4D1 +0xa1b544 kEnemyPopulation_B544 +0xa1b5e7 kEnemyPopulation_B5E7 +0xa1b67a kEnemyPopulation_B67A +0xa1b6ad kEnemyPopulation_B6AD +0xa1b720 kEnemyPopulation_B720 +0xa1b733 kEnemyPopulation_B733 +0xa1b766 kEnemyPopulation_B766 +0xa1b769 kEnemyPopulation_B769 +0xa1b81c kEnemyPopulation_B81C +0xa1b88f kEnemyPopulation_B88F +0xa1b912 kEnemyPopulation_B912 +0xa1b995 kEnemyPopulation_B995 +0xa1b9d8 kEnemyPopulation_B9D8 +0xa1ba4b kEnemyPopulation_BA4B +0xa1bb0e kEnemyPopulation_BB0E +0xa1bb31 kEnemyPopulation_BB31 +0xa1bb34 kEnemyPopulation_BB34 +0xa1bbd7 kEnemyPopulation_BBD7 +0xa1bc3a kEnemyPopulation_BC3A +0xa1bc4d kEnemyPopulation_BC4D +0xa1bca0 kEnemyPopulation_BCA0 +0xa1be93 kEnemyPopulation_BE93 +0xa1bfe6 kEnemyPopulation_BFE6 +0xa1c139 kEnemyPopulation_C139 +0xa1c19c kEnemyPopulation_C19C +0xa1c19f kEnemyPopulation_C19F +0xa1c1a2 kEnemyPopulation_C1A2 +0xa1c1a5 kEnemyPopulation_C1A5 +0xa1c1a8 kEnemyPopulation_C1A8 +0xa1c1ab kEnemyPopulation_C1AB +0xa1c1ae kEnemyPopulation_C1AE +0xa1c1e1 kEnemyPopulation_C1E1 +0xa1c1e4 kEnemyPopulation_C1E4 +0xa1c1e7 kEnemyPopulation_C1E7 +0xa1c1ea kEnemyPopulation_C1EA +0xa1c1ed kEnemyPopulation_C1ED +0xa1c280 kEnemyPopulation_C280 +0xa1c283 kEnemyPopulation_C283 +0xa1c3e6 kEnemyPopulation_C3E6 +0xa1c5e9 kEnemyPopulation_C5E9 +0xa1c69c kEnemyPopulation_C69C +0xa1c69f kEnemyPopulation_C69F +0xa1c6f2 kEnemyPopulation_C6F2 +0xa1c8c5 kEnemyPopulation_C8C5 +0xa1ca78 kEnemyPopulation_CA78 +0xa1cb3b kEnemyPopulation_CB3B +0xa1cbae kEnemyPopulation_CBAE +0xa1cc51 kEnemyPopulation_CC51 +0xa1ccd4 kEnemyPopulation_CCD4 +0xa1cd17 kEnemyPopulation_CD17 +0xa1ce6a kEnemyPopulation_CE6A +0xa1cf2d kEnemyPopulation_CF2D +0xa1cf90 kEnemyPopulation_CF90 +0xa1cfc3 kEnemyPopulation_CFC3 +0xa1d006 kEnemyPopulation_D006 +0xa1d089 kEnemyPopulation_D089 +0xa1d10c kEnemyPopulation_D10C +0xa1d10f kEnemyPopulation_D10F +0xa1d112 kEnemyPopulation_D112 +0xa1d1b5 kEnemyPopulation_D1B5 +0xa1d1b8 kEnemyPopulation_D1B8 +0xa1d1bb kEnemyPopulation_D1BB +0xa1d1ee kEnemyPopulation_D1EE +0xa1d281 kEnemyPopulation_D281 +0xa1d314 kEnemyPopulation_D314 +0xa1d357 kEnemyPopulation_D357 +0xa1d3aa kEnemyPopulation_D3AA +0xa1d3ed kEnemyPopulation_D3ED +0xa1d450 kEnemyPopulation_D450 +0xa1d453 kEnemyPopulation_D453 +0xa1d526 kEnemyPopulation_D526 +0xa1d529 kEnemyPopulation_D529 +0xa1d53c kEnemyPopulation_D53C +0xa1d53f kEnemyPopulation_D53F +0xa1d5e2 kEnemyPopulation_D5E2 +0xa1d635 kEnemyPopulation_D635 +0xa1d698 kEnemyPopulation_D698 +0xa1d75b kEnemyPopulation_D75B +0xa1d7ee kEnemyPopulation_D7EE +0xa1d801 kEnemyPopulation_D801 +0xa1d864 kEnemyPopulation_D864 +0xa1d957 kEnemyPopulation_D957 +0xa1da0a kEnemyPopulation_DA0A +0xa1da3d kEnemyPopulation_DA3D +0xa1dad0 kEnemyPopulation_DAD0 +0xa1dad3 kEnemyPopulation_DAD3 +0xa1db66 kEnemyPopulation_DB66 +0xa1dbd9 kEnemyPopulation_DBD9 +0xa1dc3c kEnemyPopulation_DC3C +0xa1dc6f kEnemyPopulation_DC6F +0xa1dce2 kEnemyPopulation_DCE2 +0xa1dd35 kEnemyPopulation_DD35 +0xa1dd38 kEnemyPopulation_DD38 +0xa1dd9b kEnemyPopulation_DD9B +0xa1de0e kEnemyPopulation_DE0E +0xa1de11 kEnemyPopulation_DE11 +0xa1de14 kEnemyPopulation_DE14 +0xa1de17 kEnemyPopulation_DE17 +0xa1de5a kEnemyPopulation_DE5A +0xa1de6d kEnemyPopulation_DE6D +0xa1df30 kEnemyPopulation_DF30 +0xa1df63 kEnemyPopulation_DF63 +0xa1df96 kEnemyPopulation_DF96 +0xa1dfd9 kEnemyPopulation_DFD9 +0xa1e01c kEnemyPopulation_E01C +0xa1e07f kEnemyPopulation_E07F +0xa1e102 kEnemyPopulation_E102 +0xa1e1d5 kEnemyPopulation_E1D5 +0xa1e1d8 kEnemyPopulation_E1D8 +0xa1e25b kEnemyPopulation_E25B +0xa1e26e kEnemyPopulation_E26E +0xa1e321 kEnemyPopulation_E321 +0xa1e384 kEnemyPopulation_E384 +0xa1e387 kEnemyPopulation_E387 +0xa1e3aa kEnemyPopulation_E3AA +0xa1e42d kEnemyPopulation_E42D +0xa1e440 kEnemyPopulation_E440 +0xa1e4a3 kEnemyPopulation_E4A3 +0xa1e516 kEnemyPopulation_E516 +0xa1e559 kEnemyPopulation_E559 +0xa1e59c kEnemyPopulation_E59C +0xa1e5bf kEnemyPopulation_E5BF +0xa1e652 kEnemyPopulation_E652 +0xa1e695 kEnemyPopulation_E695 +0xa1e708 kEnemyPopulation_E708 +0xa1e70b kEnemyPopulation_E70B +0xa1e70e kEnemyPopulation_E70E +0xa1e791 kEnemyPopulation_E791 +0xa1e794 kEnemyPopulation_E794 +0xa1e857 kEnemyPopulation_E857 +0xa1e88a kEnemyPopulation_E88A +0xa1e8ad kEnemyPopulation_E8AD +0xa1e8d0 kEnemyPopulation_E8D0 +0xa1e8f3 kEnemyPopulation_E8F3 +0xa1e916 kEnemyPopulation_E916 +0xa1e939 kEnemyPopulation_E939 +0xa1e95c kEnemyPopulation_E95C +0xa1ea2f kEnemyPopulation_EA2F +0xa1eb02 kEnemyPopulation_EB02 +0xa1eb75 kEnemyPopulation_EB75 +0xa1eb98 kEnemyPopulation_EB98 +0xa1ebbb kEnemyPopulation_EBBB +0xa1ebce kEnemyPopulation_EBCE +0xa28000 Enemy_GrappleReact_NoInteract_A2 +0xa28005 Enemy_GrappleReact_SamusLatchesOn_A2 +0xa2800a Enemy_GrappleReact_KillEnemy_A2 +0xa2800f Enemy_GrappleReact_CancelBeam_A2 +0xa28014 Enemy_GrappleReact_SamusLatchesNoInvinc_A2 +0xa28019 Enemy_GrappleReact_SamusLatchesParalyze_A2 +0xa2801e Enemy_GrappleReact_HurtSamus_A2 +0xa28023 Enemy_NormalTouchAI_A2 +0xa28028 Enemy_NormalTouchAI_SkipDeathAnim_A2 +0xa2802d Enemy_NormalShotAI_A2 +0xa28032 Enemy_NormalShotAI_SkipSomeParts_A2 +0xa28037 Enemy_NormalPowerBombAI_A2 +0xa2803c Enemy_NormalPowerBombAI_SkipDeathAnim_A2 +0xa28041 Enemy_NormalFrozenAI_A2 +0xa28046 CreateADudShot_A2 +0xa2804b nullsub_169_A2 +0xa2804c nullsub_170_A2 +0xa2804d kSpritemap_Nothing_A2 +0xa2804f kExtendedSpritemap_Nothing_A2 +0xa28059 word8059_A2 +0xa28069 sub8069_A2 +0xa2806b Enemy_SetAiPreInstr_A2 +0xa28074 Enemy_ClearAiPreInstr_A2 +0xa2807b nullsub_171_A2 +0xa2807c EnemyInstr_StopScript_A2 +0xa2808a EnemyInstr_Call_A2 +0xa28097 loc8097_A2 +0xa2809c EnemyInstr_CallWithArg_A2 +0xa280b5 EnemyInstr_CallFar_A2 +0xa280cb Trampoline_loc_A280CB +0xa280ce EnemyInstr_CallFarWithArg_A2 +0xa280ea Trampoline_loc80EA_A2 +0xa280ed EnemyInstr_Goto_A2 +0xa280f2 EnemyInstr_GotoRel_A2 +0xa28100 loc8100_A2 +0xa28103 loc8103_A2 +0xa28108 EnemyInstr_DecTimerAndGoto_A2 +0xa28110 EnemyInstr_DecTimerAndGoto2_A2 +0xa28118 EnemyInstr_DecTimerAndGotoRel_A2 +0xa28123 EnemyInstr_SetTimer_A2 +0xa2812c EnemyInstr_Skip2bytes_A2 +0xa2812f EnemyInstr_Sleep_A2 +0xa2813a EnemyInstr_WaitNframes_A2 +0xa2814b EnemyInstr_CopyToVram_A2 +0xa28173 EnemyInstr_EnableOffScreenProcessing_A2 +0xa2817d EnemyInstr_DisableOffScreenProcessing_A2 +0xa28187 kCommonEnemySpeeds_Linear_A2 +0xa2838f kCommonEnemySpeeds_Quadratic_A2 +0xa28687 kBouncingGoofball_Palette +0xa286a7 kBouncingGoofball_Ilist_86A7 +0xa286ab kBouncingGoofball_Ilist_86AB +0xa286bf kBouncingGoofball_Ilist_86BF +0xa286c3 kBouncingGoofball_Ilist_86C3 +0xa286df kEnemyInit_BouncingGoofball_Tab0 +0xa286ef kEnemyInit_BouncingGoofball_Tab1 +0xa28701 kBouncingGoofball_Tab0 +0xa2871c BouncingGoofball_Init +0xa28755 BouncingGoofball_Func1 +0xa2879c BouncingGoofball_Main +0xa28801 BouncingGoofball_State0 +0xa28850 BouncingGoofball_State1 +0xa28894 BouncingGoofball_SamusCloseX +0xa2889f BouncingGoofball_Func2 +0xa288b2 BouncingGoofball_Func3 +0xa288c5 BouncingGoofball_Instr_88C5 +0xa288c6 BouncingGoofball_Instr_88C6 +0xa288d8 nullsub_173 +0xa288d9 nullsub_174 +0xa288da kBouncingGoofball_Sprmap_88DA +0xa288e1 kBouncingGoofball_Sprmap_88E1 +0xa288e8 kBouncingGoofball_Sprmap_88E8 +0xa288ef kBouncingGoofball_Sprmap_88EF +0xa288f6 kBouncingGoofball_Sprmap_88F6 +0xa288fd kBouncingGoofball_Sprmap_88FD +0xa28904 kBouncingGoofball_Sprmap_8904 +0xa28912 kMiniCrocomire_Palette +0xa28932 kMiniCrocomire_Ilist_8932 +0xa28934 kMiniCrocomire_Ilist_8934 +0xa28948 kMiniCrocomire_Ilist_8948 +0xa28958 kMiniCrocomire_Ilist_8958 +0xa2895a kMiniCrocomire_Ilist_895A +0xa2896e kMiniCrocomire_Ilist_896E +0xa2897e MiniCrocomire_Instr_897E +0xa28990 MiniCrocomire_Instr_8990 +0xa2899d MiniCrocomire_Instr_899D +0xa289ad MiniCrocomire_Init +0xa289f0 MiniCrocomire_Main +0xa289f7 MiniCrocomire_Func1 +0xa28a0a MiniCrocomire_Func2 +0xa28a1d MiniCrocomire_Func3 +0xa28a30 MiniCrocomire_Func4 +0xa28a43 MiniCrocomire_PreInstr5 +0xa28a5c MiniCrocomire_PreInstr6 +0xa28a75 nullsub_175 +0xa28a76 MiniCrocomire_Func7 +0xa28a95 MiniCrocomire_Func8 +0xa28aa7 MiniCrocomire_Func9 +0xa28ac7 nullsub_303 +0xa28ac8 nullsub_176 +0xa28ac9 nullsub_177 +0xa28aca kMiniCrocomire_Sprmap_8ACA +0xa28ad6 kMiniCrocomire_Sprmap_8AD6 +0xa28ae7 kMiniCrocomire_Sprmap_8AE7 +0xa28af3 kMiniCrocomire_Sprmap_8AF3 +0xa28aff kMiniCrocomire_Sprmap_8AFF +0xa28b15 kMiniCrocomire_Sprmap_8B15 +0xa28b21 kMiniCrocomire_Sprmap_8B21 +0xa28b32 kMiniCrocomire_Sprmap_8B32 +0xa28b3e kMiniCrocomire_Sprmap_8B3E +0xa28b4a kMiniCrocomire_Sprmap_8B4A +0xa28b60 kMaridiaBeybladeTurtle_Palette +0xa28b80 kMaridiaBeybladeTurtle_Ilist_8B80 +0xa28bd2 kMaridiaBeybladeTurtle_Ilist_8BD2 +0xa28bee kMaridiaBeybladeTurtle_Ilist_8BEE +0xa28c02 kMaridiaBeybladeTurtle_Ilist_8C02 +0xa28c1c kMaridiaBeybladeTurtle_Ilist_8C1C +0xa28c30 kMaridiaBeybladeTurtle_Ilist_8C30 +0xa28c44 kMaridiaBeybladeTurtle_Ilist_8C44 +0xa28c4a kMaridiaBeybladeTurtle_Ilist_8C4A +0xa28c62 kMaridiaBeybladeTurtle_Ilist_8C62 +0xa28c72 kMaridiaBeybladeTurtle_Ilist_8C72 +0xa28cc4 kMaridiaBeybladeTurtle_Ilist_8CC4 +0xa28cd8 kMaridiaBeybladeTurtle_Ilist_8CD8 +0xa28cec kMaridiaBeybladeTurtle_Ilist_8CEC +0xa28d00 kMaridiaBeybladeTurtle_Ilist_8D00 +0xa28d14 kMaridiaBeybladeTurtle_Ilist_8D14 +0xa28d28 kMaridiaBeybladeTurtle_Ilist_8D28 +0xa28d40 kMaridiaBeybladeTurtle_Ilist_8D40 +0xa28d6c MaridiaBeybladeTurtle_Init +0xa28d9d MiniMaridiaBeybladeTurtle_Init +0xa28dd2 MaridiaBeybladeTurtle_Main +0xa28dd8 MaridiaBeybladeTurtle_Func1 +0xa28e09 nullsub_360 +0xa28e0a MaridiaBeybladeTurtle_Func2 +0xa28ee0 MaridiaBeybladeTurtle_Func3 +0xa28f3f MaridiaBeybladeTurtle_Func5 +0xa28f5f MaridiaBeybladeTurtle_Func6 +0xa28f8d MaridiaBeybladeTurtle_Func7 +0xa28feb MaridiaBeybladeTurtle_Func8 +0xa29083 MaridiaBeybladeTurtle_Func9 +0xa290cc MaridiaBeybladeTurtle_Func10 +0xa290e1 MaridiaBeybladeTurtle_Func11 +0xa2912e MiniMaridiaBeybladeTurtle_Main +0xa29142 MiniMaridiaBeybladeTurtle_Func1 +0xa2916e MiniMaridiaBeybladeTurtle_Func2 +0xa29198 MiniMaridiaBeybladeTurtle_Func3 +0xa291f8 MiniMaridiaBeybladeTurtle_Func4 +0xa2921d MiniMaridiaBeybladeTurtle_Func5 +0xa29239 MiniMaridiaBeybladeTurtle_Func6 +0xa2925e MiniMaridiaBeybladeTurtle_Func7 +0xa29281 MaridiaBeybladeTurtle_Touch +0xa2929e nullsub_178 +0xa2929f MiniMaridiaBeybladeTurtle_Touch +0xa292ff MaridiaBeybladeTurtle_Func21 +0xa2930f MiniMaridiaBeybladeTurtle_Shot +0xa29315 MaridiaBeybladeTurtle_Func4 +0xa29381 MaridiaBeybladeTurtle_Instr_9381 +0xa29412 MaridiaBeybladeTurtle_Instr_9412 +0xa29447 MaridiaBeybladeTurtle_Instr_9447 +0xa29451 MaridiaBeybladeTurtle_Instr_9451 +0xa2946b MaridiaBeybladeTurtle_Instr_946B +0xa29485 MaridiaBeybladeTurtle_Instr_9485 +0xa294a1 MaridiaBeybladeTurtle_Instr_94A1 +0xa294c7 MaridiaBeybladeTurtle_Instr_94C7 +0xa294d1 MaridiaBeybladeTurtle_Instr_94D1 +0xa294d9 kMaridiaBeybladeTurtle_Sprmap_94D9 +0xa294e0 kMaridiaBeybladeTurtle_Sprmap_94E0 +0xa294e7 kMaridiaBeybladeTurtle_Sprmap_94E7 +0xa294ee kMaridiaBeybladeTurtle_Sprmap_94EE +0xa294f5 kMaridiaBeybladeTurtle_Sprmap_94F5 +0xa29501 kMaridiaBeybladeTurtle_Sprmap_9501 +0xa2950d kMaridiaBeybladeTurtle_Sprmap_950D +0xa29519 kMaridiaBeybladeTurtle_Sprmap_9519 +0xa29520 kMaridiaBeybladeTurtle_Sprmap_9520 +0xa29527 kMaridiaBeybladeTurtle_Sprmap_9527 +0xa2952e kMaridiaBeybladeTurtle_Sprmap_952E +0xa29535 kMaridiaBeybladeTurtle_Sprmap_9535 +0xa29555 kMaridiaBeybladeTurtle_Sprmap_9555 +0xa2959d kMaridiaBeybladeTurtle_Sprmap_959D +0xa295e5 kMaridiaBeybladeTurtle_Sprmap_95E5 +0xa2961e kMaridiaBeybladeTurtle_Sprmap_961E +0xa29657 kMaridiaBeybladeTurtle_Sprmap_9657 +0xa29690 kMaridiaBeybladeTurtle_Sprmap_9690 +0xa296c9 kMaridiaBeybladeTurtle_Sprmap_96C9 +0xa296e9 kMaridiaBeybladeTurtle_Sprmap_96E9 +0xa29733 kMaridiaBeybladeTurtle_Sprmap_9733 +0xa2973a kMaridiaBeybladeTurtle_Sprmap_973A +0xa29741 kMaridiaBeybladeTurtle_Sprmap_9741 +0xa29748 kMaridiaBeybladeTurtle_Sprmap_9748 +0xa2974f kMaridiaBeybladeTurtle_Sprmap_974F +0xa2975b kMaridiaBeybladeTurtle_Sprmap_975B +0xa29767 kMaridiaBeybladeTurtle_Sprmap_9767 +0xa29773 kMaridiaBeybladeTurtle_Sprmap_9773 +0xa2977a kMaridiaBeybladeTurtle_Sprmap_977A +0xa29781 kMaridiaBeybladeTurtle_Sprmap_9781 +0xa29788 kMaridiaBeybladeTurtle_Sprmap_9788 +0xa2978f kMaridiaBeybladeTurtle_Sprmap_978F +0xa297af kMaridiaBeybladeTurtle_Sprmap_97AF +0xa297f7 kMaridiaBeybladeTurtle_Sprmap_97F7 +0xa2983f kMaridiaBeybladeTurtle_Sprmap_983F +0xa29878 kMaridiaBeybladeTurtle_Sprmap_9878 +0xa298b1 kMaridiaBeybladeTurtle_Sprmap_98B1 +0xa298ea kMaridiaBeybladeTurtle_Sprmap_98EA +0xa29923 kMaridiaBeybladeTurtle_Sprmap_9923 +0xa29943 kMaridiaBeybladeTurtle_Sprmap_9943 +0xa2998d kThinHoppingBlobs_Palette +0xa299ad kThinHoppingBlobs_Ilist_99AD +0xa299c1 kThinHoppingBlobs_Ilist_99C1 +0xa299d5 kThinHoppingBlobs_Ilist_99D5 +0xa299e9 kThinHoppingBlobs_Ilist_99E9 +0xa299ef kThinHoppingBlobs_Ilist_99EF +0xa299f5 kThinHoppingBlobs_Ilist_99F5 +0xa299fb kThinHoppingBlobs_Ilist_99FB +0xa29a01 kThinHoppingBlobs_Ilist_9A01 +0xa29a3f ThinHoppingBlobs_Init +0xa29a7c nullsub_179 +0xa29a7d ThinHoppingBlobs_Main +0xa29a84 ThinHoppingBlobs_Func1 +0xa29a9b TwinHoppingBlobs_Func2 +0xa29aaa ThinHoppingBlobs_Func3 +0xa29b06 ThinHoppingBlobs_Func4 +0xa29b1a ThinHoppingBlobs_Func5 +0xa29b65 ThinHoppingBlobs_Func6 +0xa29b81 ThinHoppingBlobs_Func7 +0xa29b88 ThinHoppingBlobs_Func8 +0xa29c71 ThinHoppingBlobs_Func9 +0xa29cbe ThinHoppingBlobs_Func10 +0xa29d0b ThinHoppingBlobs_Func11 +0xa29d2b ThinHoppingBlobs_Func12 +0xa29d4b ThinHoppingBlobs_Func13 +0xa29d6b ThinHoppingBlobs_Func14 +0xa29d98 ThinHoppingBlobs_Func15 +0xa29dcd ThinHoppingBlobs_Func16 +0xa29df4 nullsub_180 +0xa29df5 nullsub_181 +0xa29df6 kThinHoppingBlobs_Sprmap_9DF6 +0xa29e02 kThinHoppingBlobs_Sprmap_9E02 +0xa29e0e kThinHoppingBlobs_Sprmap_9E0E +0xa29e1a kThinHoppingBlobs_Sprmap_9E1A +0xa29e26 kThinHoppingBlobs_Sprmap_9E26 +0xa29e37 kThinHoppingBlobs_Sprmap_9E37 +0xa29e4d kThinHoppingBlobs_Sprmap_9E4D +0xa29e5e kThinHoppingBlobs_Sprmap_9E5E +0xa29e6a kSpikeShootingPlant_Palette +0xa29e8a kSpikeShootingPlant_Ilist_9E8A +0xa29eb0 kSpikeShootingPlant_Ilist_9EB0 +0xa29eda kSpikeShootingPlant_Ilist_9EDA +0xa29edc kSpikeShootingPlant_Ilist_9EDC +0xa29f00 kSpikeShootingPlant_Ilist_9F00 +0xa29f2a SpikeShootingPlant_Instr_9F2A +0xa29f48 SpikeShootingPlant_Init +0xa29fb3 SpikeShootingPlant_Main +0xa29fba SpikeShootingPlant_2 +0xa29fec SpikeShootingPlant_3 +0xa2a01b nullsub_182 +0xa2a01c SpikeShootingPlant_4 +0xa2a049 SpikeShootingPlant_5 +0xa2a05c SpikeShootingPlant_6 +0xa2a06f SpikeShootingPlant_7 +0xa2a082 SpikeShootingPlant_8 +0xa2a095 SpikeShootingPlant_Instr_A095 +0xa2a0a7 SpikeShootingPlant_Instr_A0A7 +0xa2a0b9 nullsub_183 +0xa2a0ba nullsub_184 +0xa2a0bb kSpikeShootingPlant_Sprmap_A0BB +0xa2a0db kSpikeShootingPlant_Sprmap_A0DB +0xa2a0fb kSpikeShootingPlant_Sprmap_A0FB +0xa2a11b kSpikeShootingPlant_Sprmap_A11B +0xa2a13b kSpikeShootingPlant_Sprmap_A13B +0xa2a15b kSpikeShootingPlant_Sprmap_A15B +0xa2a17b kSpikeShootingPlant_Sprmap_A17B +0xa2a19b kSpikeShootingPlant_Sprmap_A19B +0xa2a1bb kSpikeShootingPlant_Sprmap_A1BB +0xa2a1ef kSpikeShootingPlant_Sprmap_A1EF +0xa2a223 kSpikeShootingPlant_Sprmap_A223 +0xa2a243 kSpikeShootingPlant_Sprmap_A243 +0xa2a263 kSpikeShootingPlant_Sprmap_A263 +0xa2a283 kSpikeShootingPlant_Sprmap_A283 +0xa2a2a3 kSpikeShootingPlant_Sprmap_A2A3 +0xa2a2c3 kSpikeShootingPlant_Sprmap_A2C3 +0xa2a2e3 kSpikeShootingPlant_Sprmap_A2E3 +0xa2a303 kSpikeShootingPlant_Sprmap_A303 +0xa2a323 kSpikeShootingPlant_Sprmap_A323 +0xa2a357 kSpikeShootingPlant_Sprmap_A357 +0xa2a38b kMaridiaSpikeyShell_Palette +0xa2a3ab kMaridiaSpikeyShell_Ilist_A3AB +0xa2a3ad kMaridiaSpikeyShell_Ilist_A3AD +0xa2a3bd kMaridiaSpikeyShell_Ilist_A3BD +0xa2a3bf kMaridiaSpikeyShell_Ilist_A3BF +0xa2a3f9 MaridiaSpikeyShell_Init +0xa2a47e MaridiaSpikeyShell_Main +0xa2a48a MaridiaSpikeyShell_1 +0xa2a49d MaridiaSpikeyShell_2 +0xa2a4b0 MaridiaSpikeyShell_3 +0xa2a4d9 MaridiaSpikeyShell_4 +0xa2a502 MaridiaSpikeyShell_5 +0xa2a517 MaridiaSpikeyShell_6 +0xa2a53e MaridiaSpikeyShell_7 +0xa2a553 MaridiaSpikeyShell_8 +0xa2a56d MaridiaSpikeyShell_Instr_A56D +0xa2a571 MaridiaSpikeyShell_Instr_A571 +0xa2a578 nullsub_185 +0xa2a579 MaridiaSpikeyShell_Shot +0xa2a589 kMaridiaSpikeyShell_Sprmap_A589 +0xa2a590 kMaridiaSpikeyShell_Sprmap_A590 +0xa2a597 kMaridiaSpikeyShell_Sprmap_A597 +0xa2a59e kGunshipTop_Palette +0xa2a5be kGunshipTop_Ilist_A5BE +0xa2a5e6 kGunshipTop_Ilist_A5E6 +0xa2a5ee kGunshipTop_Ilist_A5EE +0xa2a60e kGunshipTop_Ilist_A60E +0xa2a616 kGunshipTop_Ilist_A616 +0xa2a61c kGunshipTop_Ilist_A61C +0xa2a644 GunshipTop_Init +0xa2a6d2 GunshipBottom_Init +0xa2a759 GunshipTop_Main +0xa2a783 nullsub_186 +0xa2a784 GunshipTop_1 +0xa2a7d7 nullsub_187 +0xa2a7d8 GunshipTop_2 +0xa2a80c GunshipTop_3 +0xa2a8d0 GunshipTop_4 +0xa2a942 GunshipTop_5 +0xa2a950 GunshipTop_6 +0xa2a987 GunshipTop_7 +0xa2a9bd GunshipTop_8 +0xa2aa4f GunshipTop_9 +0xa2aa5d GunshipTop_10 +0xa2aa94 GunshipTop_11 +0xa2aaa2 GunshipTop_12 +0xa2ab1f GunshipTop_13 +0xa2ab26 DisplayMessageBox_DoubleRet_Return +0xa2ab5f DisplayMessageBox_DoubleRet_GetOut +0xa2ab60 GunshipTop_14 +0xa2ab6e GunshipTop_15 +0xa2aba5 GunshipTop_16 +0xa2abc7 GunshipTop_17 +0xa2ac1b GunshipTop_18 +0xa2acd7 GunshipTop_19 +0xa2ad0e GunshipTop_20 +0xa2ad2d GunshipTop_21 +0xa2ad7f nullsub_188 +0xa2ad80 nullsub_189 +0xa2ad81 kGunshipTop_Sprmap_AD81 +0xa2addd kGunshipTop_Sprmap_ADDD +0xa2ae89 kGunshipTop_Sprmap_AE89 +0xa2ae9f kGunshipTop_Sprmap_AE9F +0xa2aeb5 kGunshipTop_Sprmap_AEB5 +0xa2aecb kGunshipTop_Sprmap_AECB +0xa2aef5 kGunshipTop_Sprmap_AEF5 +0xa2af1f kGunshipTop_Sprmap_AF1F +0xa2af49 kGunshipTop_Sprmap_AF49 +0xa2af73 kGunshipTop_Sprmap_AF73 +0xa2af9d kGunshipTop_Sprmap_AF9D +0xa2afc7 kGunshipTop_Sprmap_AFC7 +0xa2afdd kGunshipTop_Sprmap_AFDD +0xa2aff3 kFlies_Palette_0 +0xa2b013 kFlies_Ilist_B013 +0xa2b06b Flies_Init +0xa2b090 Flies_1 +0xa2b0dc Flies_2 +0xa2b11f Flies_Main +0xa2b129 Flies_3 +0xa2b14e Flies_4 +0xa2b17c Flies_5 +0xa2b1aa Flies_6 +0xa2b1d2 Flies_7 +0xa2b1e8 kFlies_Sprmap_B1E8 +0xa2b1ef kFlies_Sprmap_B1EF +0xa2b1f6 kFlies_Sprmap_B1F6 +0xa2b1fd kFlies_Sprmap_B1FD +0xa2b20c kFlies_Palette_1 +0xa2b264 kPreSpringBallFly_Palette +0xa2b298 kPreSpringBallFly_Sprmap_B298 +0xa2b29f kPreSpringBallFly_Sprmap_B29F +0xa2b2a6 kPreSpringBallFly_Sprmap_B2A6 +0xa2b2ad kPreSpringBallFly_Sprmap_B2AD +0xa2b2bc kNorfairErraticFireball_Palette +0xa2b2dc kNorfairErraticFireball_Ilist_B2DC +0xa2b318 kNorfairErraticFireball_Ilist_B318 +0xa2b37c kNorfairErraticFireball_Ilist_B37C +0xa2b3e0 NorfairErraticFireball_Init +0xa2b40f NorfairErraticFireball_Main +0xa2b4aa kNorfairErraticFireball_Sprmap_B4AA +0xa2b4b1 kNorfairErraticFireball_Sprmap_B4B1 +0xa2b4b8 kNorfairErraticFireball_Sprmap_B4B8 +0xa2b4bf kNorfairErraticFireball_Sprmap_B4BF +0xa2b4c6 kNorfairErraticFireball_Sprmap_B4C6 +0xa2b4cd kNorfairErraticFireball_Sprmap_B4CD +0xa2b4d4 kNorfairErraticFireball_Sprmap_B4D4 +0xa2b4db kNorfairErraticFireball_Sprmap_B4DB +0xa2b4e2 kNorfairErraticFireball_Sprmap_B4E2 +0xa2b4e9 kNorfairErraticFireball_Sprmap_B4E9 +0xa2b4f0 kNorfairErraticFireball_Sprmap_B4F0 +0xa2b4f7 kNorfairErraticFireball_Sprmap_B4F7 +0xa2b4fe kNorfairErraticFireball_Sprmap_B4FE +0xa2b505 kNorfairErraticFireball_Sprmap_B505 +0xa2b50c kNorfairErraticFireball_Sprmap_B50C +0xa2b513 kNorfairErraticFireball_Sprmap_B513 +0xa2b51a kNorfairErraticFireball_Ilist_B51A +0xa2b570 LavaquakeRocks_Init +0xa2b58f LavaquakeRocks_Main +0xa2b596 LavaquakeRocks_1 +0xa2b5b2 LavaquakeRocks_2 +0xa2b5ea LavaquakeRocks_3 +0xa2b5f9 nullsub_190 +0xa2b5fa nullsub_191 +0xa2b5fb kLavaquakeRocks_Sprmap_B5FB +0xa2b602 Rinka_Init +0xa2b63e Rinka_Init2 +0xa2b654 Rinka_Init3 +0xa2b69b Rinka_1 +0xa2b79d Rinka_2 +0xa2b7c4 Rinka_Main +0xa2b7df Rinka_3 +0xa2b843 nullsub_308 +0xa2b844 Rinka_4 +0xa2b852 Rinka_5 +0xa2b85b Rinka_B85B +0xa2b865 Rinka_B865 +0xa2b880 Rinka_6 +0xa2b89c Rinka_7 +0xa2b8bb Rinka_8 +0xa2b8d3 Rinka_9 +0xa2b8ff Rinka_10 +0xa2b929 Rinka_Frozen +0xa2b947 Rinka_Touch +0xa2b94d Rinka_Shot +0xa2b953 Rinka_Powerbomb +0xa2b960 Rinka_B960 +0xa2b9a2 Rinka_Instr_B9A2 +0xa2b9b3 Rinka_Instr_B9B3 +0xa2b9bd Rinka_Instr_B9BD +0xa2b9c7 Rinka_Instr_B9C7 +0xa2b9e0 kRinka_Ilist_B9E0 +0xa2b9e8 kRinka_Ilist_B9E8 +0xa2ba0c kRinka_Ilist_BA0C +0xa2ba14 kRinka_Ilist_BA14 +0xa2ba38 kRinka_Sprmap_BA38 +0xa2ba3f kRinka_Sprmap_BA3F +0xa2ba46 kRinka_Sprmap_BA46 +0xa2ba4d kRinka_Sprmap_BA4D +0xa2ba54 kRinka_Sprmap_BA54 +0xa2ba5b kRinka_Palette +0xa2ba7b kRio_Palette +0xa2ba9b kRio_Ilist_BA9B +0xa2bacf kRio_Ilist_BACF +0xa2bb4b kRio_Ilist_BB4B +0xa2bb7f kRio_Ilist_BB7F +0xa2bb97 kRio_Ilist_BB97 +0xa2bba3 kRio_Ilist_BBA3 +0xa2bbc3 EnemyInstr_Rio_Instr_1 +0xa2bbcd Rio_Init +0xa2bbe3 Rio_Main +0xa2bbed Rio_1 +0xa2bc32 Rio_2 +0xa2bc48 Rio_3 +0xa2bcb7 Rio_4 +0xa2bcff Rio_5 +0xa2bd54 Rio_6 +0xa2bd6c kRio_Sprmap_BD6C +0xa2bd82 kRio_Sprmap_BD82 +0xa2bd98 kRio_Sprmap_BD98 +0xa2bdae kRio_Sprmap_BDAE +0xa2bdc4 kRio_Sprmap_BDC4 +0xa2bdda kRio_Sprmap_BDDA +0xa2bdf0 kRio_Sprmap_BDF0 +0xa2be06 kRio_Sprmap_BE06 +0xa2be1c kNorfairLavajumpingEnemy_Palette +0xa2be3c kNorfairLavajumpingEnemy_Ilist_BE3C +0xa2be42 kNorfairLavajumpingEnemy_Ilist_BE42 +0xa2be62 kNorfairLavajumpingEnemy_Ilist_BE62 +0xa2be6e kNorfairLavajumpingEnemy_Ilist_BE6E +0xa2be8e NorfairLavajumpingEnemy_Instr_BE8E +0xa2be99 NorfairLavajumpingEnemy_Init +0xa2bed2 NorfairLavajumpingEnemy_Main +0xa2bedc NorfairLavajumpingEnemy_Func_1 +0xa2bf1a NorfairLavajumpingEnemy_Func_2 +0xa2bf3e NorfairLavajumpingEnemy_Func_3 +0xa2bf7c NorfairLavajumpingEnemy_Func_4 +0xa2bfbc NorfairLavajumpingEnemy_Func_5 +0xa2c012 NorfairLavajumpingEnemy_Func_6 +0xa2c02c kNorfairLavajumpingEnemy_Sprmap_C02C +0xa2c042 kNorfairLavajumpingEnemy_Sprmap_C042 +0xa2c058 kNorfairLavajumpingEnemy_Sprmap_C058 +0xa2c064 kNorfairLavajumpingEnemy_Sprmap_C064 +0xa2c070 kNorfairLavajumpingEnemy_Sprmap_C070 +0xa2c086 kNorfairLavajumpingEnemy_Sprmap_C086 +0xa2c09c kNorfairLavajumpingEnemy_Sprmap_C09C +0xa2c0ad kNorfairLavajumpingEnemy_Sprmap_C0AD +0xa2c0b9 kNorfairLavajumpingEnemy_Sprmap_C0B9 +0xa2c0c5 kNorfairLavajumpingEnemy_Sprmap_C0C5 +0xa2c0d1 kNorfairRio_Palette +0xa2c0f1 kNorfairRio_Ilist_C0F1 +0xa2c107 kNorfairRio_Ilist_C107 +0xa2c12f kNorfairRio_Ilist_C12F +0xa2c145 kNorfairRio_Ilist_C145 +0xa2c179 kNorfairRio_Ilist_C179 +0xa2c18f kNorfairRio_Ilist_C18F +0xa2c1a3 kNorfairRio_Ilist_C1A3 +0xa2c1c9 NorfairRio_Instr_C1C9 +0xa2c1d4 NorfairRio_Instr_C1D4 +0xa2c1df NorfairRio_Instr_C1DF +0xa2c1ea NorfairRio_Instr_C1EA +0xa2c1f5 NorfairRio_Instr_C1F5 +0xa2c200 NorfairRio_Instr_C200 +0xa2c20b NorfairRio_Instr_C20B +0xa2c216 NorfairRio_Instr_C216 +0xa2c221 NorfairRio_Instr_C221 +0xa2c22c NorfairRio_Instr_C22C +0xa2c237 NorfairRio_Instr_C237 +0xa2c242 NorfairRio_Init +0xa2c277 NorfairRio_Main +0xa2c281 NorfairRio_Func_1 +0xa2c2e7 NorfairRio_Func_2 +0xa2c33f NorfairRio_Func_3 +0xa2c361 NorfairRio_Func_4 +0xa2c3b1 NorfairRio_Func_5 +0xa2c406 NorfairRio_Func_6 +0xa2c40d NorfairRio_Func_7 +0xa2c427 kNorfairRio_Sprmap_C427 +0xa2c442 kNorfairRio_Sprmap_C442 +0xa2c45d kNorfairRio_Sprmap_C45D +0xa2c478 kNorfairRio_Sprmap_C478 +0xa2c493 kNorfairRio_Sprmap_C493 +0xa2c49f kNorfairRio_Sprmap_C49F +0xa2c4ab kNorfairRio_Sprmap_C4AB +0xa2c4b7 kNorfairRio_Sprmap_C4B7 +0xa2c4d2 kNorfairRio_Sprmap_C4D2 +0xa2c4ed kNorfairRio_Sprmap_C4ED +0xa2c508 kNorfairRio_Sprmap_C508 +0xa2c523 kNorfairRio_Sprmap_C523 +0xa2c534 kNorfairRio_Sprmap_C534 +0xa2c54f kNorfairRio_Sprmap_C54F +0xa2c56a kNorfairRio_Sprmap_C56A +0xa2c585 kNorfairRio_Sprmap_C585 +0xa2c5a0 kNorfairRio_Sprmap_C5A0 +0xa2c5bb kNorfairRio_Sprmap_C5BB +0xa2c5d6 kNorfairRio_Sprmap_C5D6 +0xa2c5e2 kNorfairRio_Sprmap_C5E2 +0xa2c5ee kNorfairRio_Sprmap_C5EE +0xa2c5fa kLowerNorfairRio_Palette +0xa2c61a kLowerNorfairRio_Ilist_C61A +0xa2c630 kLowerNorfairRio_Ilist_C630 +0xa2c65a kLowerNorfairRio_Ilist_C65A +0xa2c662 kLowerNorfairRio_Ilist_C662 +0xa2c674 kLowerNorfairRio_Ilist_C674 +0xa2c686 kLowerNorfairRio_Ilist_C686 +0xa2c6b0 kLowerNorfairRio_Ilist_C6B0 +0xa2c6d2 LowerNorfairRio_Instr_C6D2 +0xa2c6dd LowerNorfairRio_Instr_C6DD +0xa2c6e8 LowerNorfairRio_Instr_C6E8 +0xa2c6f3 LowerNorfairRio_Init +0xa2c724 LowerNorfairRio_Main +0xa2c72e LowerNorfairRio_Func_1 +0xa2c771 LowerNorfairRio_Func_2 +0xa2c7bb LowerNorfairRio_Func_3 +0xa2c7d6 LowerNorfairRio_Func_4 +0xa2c82d LowerNorfairRio_Func_5 +0xa2c888 LowerNorfairRio_Func_6 +0xa2c8a3 LowerNorfairRio_Func_7 +0xa2c8bd kLowerNorfairRio_Sprmap_C8BD +0xa2c8d3 kLowerNorfairRio_Sprmap_C8D3 +0xa2c8e9 kLowerNorfairRio_Sprmap_C8E9 +0xa2c8ff kLowerNorfairRio_Sprmap_C8FF +0xa2c915 kLowerNorfairRio_Sprmap_C915 +0xa2c92b kLowerNorfairRio_Sprmap_C92B +0xa2c941 kLowerNorfairRio_Sprmap_C941 +0xa2c957 kLowerNorfairRio_Sprmap_C957 +0xa2c96d kLowerNorfairRio_Sprmap_C96D +0xa2c983 kLowerNorfairRio_Sprmap_C983 +0xa2c999 kLowerNorfairRio_Sprmap_C999 +0xa2c9af kLowerNorfairRio_Sprmap_C9AF +0xa2c9c5 kLowerNorfairRio_Sprmap_C9C5 +0xa2c9db kLowerNorfairRio_Sprmap_C9DB +0xa2c9f1 kLowerNorfairRio_Sprmap_C9F1 +0xa2ca07 kLowerNorfairRio_Sprmap_CA07 +0xa2ca13 kLowerNorfairRio_Sprmap_CA13 +0xa2ca1f kLowerNorfairRio_Sprmap_CA1F +0xa2ca2b kMaridiaLargeSnail_Palette +0xa2ca4b kMaridiaLargeSnail_Ilist_CA4B +0xa2ca51 kMaridiaLargeSnail_Ilist_CA51 +0xa2ca8b kMaridiaLargeSnail_Ilist_CA8B +0xa2cab3 kMaridiaLargeSnail_Ilist_CAB3 +0xa2cadb kMaridiaLargeSnail_Ilist_CADB +0xa2cae1 kMaridiaLargeSnail_Ilist_CAE1 +0xa2cb1b kMaridiaLargeSnail_Ilist_CB1B +0xa2cb43 kMaridiaLargeSnail_Ilist_CB43 +0xa2cb6b MaridiaLargeSnail_Instr_CB6B +0xa2cb87 kMaridiaLargeSnail_ExtSprmap_CB87 +0xa2cb91 kMaridiaLargeSnail_ExtSprmap_CB91 +0xa2cb9b kMaridiaLargeSnail_ExtSprmap_CB9B +0xa2cba5 kMaridiaLargeSnail_ExtSprmap_CBA5 +0xa2cbaf kMaridiaLargeSnail_ExtSprmap_CBAF +0xa2cbb9 kMaridiaLargeSnail_ExtSprmap_CBB9 +0xa2cbc3 kMaridiaLargeSnail_ExtSprmap_CBC3 +0xa2cbcd kMaridiaLargeSnail_ExtSprmap_CBCD +0xa2cbd7 kMaridiaLargeSnail_ExtSprmap_CBD7 +0xa2cbe1 kMaridiaLargeSnail_ExtSprmap_CBE1 +0xa2cbeb kMaridiaLargeSnail_ExtSprmap_CBEB +0xa2cbf5 kMaridiaLargeSnail_ExtSprmap_CBF5 +0xa2cbff kMaridiaLargeSnail_ExtSprmap_CBFF +0xa2cc09 kMaridiaLargeSnail_ExtSprmap_CC09 +0xa2cc13 kMaridiaLargeSnail_ExtSprmap_CC13 +0xa2cc1d kMaridiaLargeSnail_ExtSprmap_CC1D +0xa2cc27 kMaridiaLargeSnail_ExtSprmap_CC27 +0xa2cc31 kMaridiaLargeSnail_ExtSprmap_CC31 +0xa2cc3b kMaridiaLargeSnail_ExtSprmap_CC3B +0xa2cc45 kMaridiaLargeSnail_ExtSprmap_CC45 +0xa2cc4f kMaridiaLargeSnail_ExtSprmap_CC4F +0xa2cc59 kMaridiaLargeSnail_ExtSprmap_CC59 +0xa2cc63 kMaridiaLargeSnail_ExtSprmap_CC63 +0xa2cc6d kMaridiaLargeSnail_ExtSprmap_CC6D +0xa2cc77 kMaridiaLargeSnail_ExtSprmap_CC77 +0xa2cc81 kMaridiaLargeSnail_ExtSprmap_CC81 +0xa2cc8b kMaridiaLargeSnail_ExtSprmap_CC8B +0xa2cc95 kMaridiaLargeSnail_ExtSprmap_CC95 +0xa2cc9f kMaridiaLargeSnail_ExtSprmap_CC9F +0xa2cca9 kMaridiaLargeSnail_ExtSprmap_CCA9 +0xa2ccb3 MaridiaLargeSnail_Instr_CCB3 +0xa2ccbe MaridiaLargeSnail_Instr_CCBE +0xa2ccc9 MaridiaLargeSnail_Instr_CCC9 +0xa2ccd4 MaridiaLargeSnail_Init +0xa2cd13 MaridiaLargeSnail_Main +0xa2cd23 MaridiaLargeSnail_Func_1 +0xa2cd35 MaridiaLargeSnail_Func_2 +0xa2cd77 MaridiaLargeSnail_Func_3 +0xa2cde6 MaridiaLargeSnail_Func_4 +0xa2ce2b MaridiaLargeSnail_Func_5 +0xa2cf40 MaridiaLargeSnail_Func_6 +0xa2cf66 MaridiaLargeSnail_Func_7 +0xa2cfa9 MaridiaLargeSnail_Func_8 +0xa2cfd7 MaridiaLargeSnail_Func_9 +0xa2cfdf MaridiaLargeSnail_Func_10 +0xa2cfff MaridiaLargeSnail_Func_11 +0xa2d388 MaridiaLargeSnail_Func_12 +0xa2d38c MaridiaLargeSnail_Touch +0xa2d3b4 MaridiaLargeSnail_Shot +0xa2d3c0 kMaridiaLargeSnail_Sprmap_D3C0 +0xa2d3e0 kMaridiaLargeSnail_Sprmap_D3E0 +0xa2d400 kMaridiaLargeSnail_Sprmap_D400 +0xa2d425 kMaridiaLargeSnail_Sprmap_D425 +0xa2d454 kMaridiaLargeSnail_Sprmap_D454 +0xa2d483 kMaridiaLargeSnail_Sprmap_D483 +0xa2d4b7 kMaridiaLargeSnail_Sprmap_D4B7 +0xa2d4eb kMaridiaLargeSnail_Sprmap_D4EB +0xa2d51f kMaridiaLargeSnail_Sprmap_D51F +0xa2d535 kMaridiaLargeSnail_Sprmap_D535 +0xa2d55a kMaridiaLargeSnail_Sprmap_D55A +0xa2d570 kMaridiaLargeSnail_Sprmap_D570 +0xa2d595 kMaridiaLargeSnail_Sprmap_D595 +0xa2d5ab kMaridiaLargeSnail_Sprmap_D5AB +0xa2d5d0 kMaridiaLargeSnail_Sprmap_D5D0 +0xa2d5e6 kMaridiaLargeSnail_Sprmap_D5E6 +0xa2d606 kMaridiaLargeSnail_Sprmap_D606 +0xa2d626 kMaridiaLargeSnail_Sprmap_D626 +0xa2d64b kMaridiaLargeSnail_Sprmap_D64B +0xa2d67a kMaridiaLargeSnail_Sprmap_D67A +0xa2d6a9 kMaridiaLargeSnail_Sprmap_D6A9 +0xa2d6dd kMaridiaLargeSnail_Sprmap_D6DD +0xa2d711 kMaridiaLargeSnail_Sprmap_D711 +0xa2d745 kMaridiaLargeSnail_Sprmap_D745 +0xa2d75b kMaridiaLargeSnail_Sprmap_D75B +0xa2d780 kMaridiaLargeSnail_Sprmap_D780 +0xa2d796 kMaridiaLargeSnail_Sprmap_D796 +0xa2d7bb kMaridiaLargeSnail_Sprmap_D7BB +0xa2d7d1 kMaridiaLargeSnail_Sprmap_D7D1 +0xa2d7f6 kMaridiaLargeSnail_Sprmap_D7F6 +0xa2d80c kHirisingSlowfalling_Palette +0xa2d82c kHirisingSlowfalling_Ilist_D82C +0xa2d834 kHirisingSlowfalling_Ilist_D834 +0xa2d840 kHirisingSlowfalling_Ilist_D840 +0xa2df76 HirisingSlowfalling_Init +0xa2dfce HirisingSlowfalling_Func_1 +0xa2dfe9 HirisingSlowfalling_Func_2 +0xa2e01e HirisingSlowfalling_Func_3 +0xa2e02e HirisingSlowfalling_Main +0xa2e035 HirisingSlowfalling_Func_4 +0xa2e04f HirisingSlowfalling_Func_5 +0xa2e06a HirisingSlowfalling_Func_6 +0xa2e0cd HirisingSlowfalling_Func_7 +0xa2e144 nullsub_192 +0xa2e145 nullsub_193 +0xa2e146 kHirisingSlowfalling_Sprmap_E146 +0xa2e15c kHirisingSlowfalling_Sprmap_E15C +0xa2e168 kHirisingSlowfalling_Sprmap_E168 +0xa2e16f kHirisingSlowfalling_Sprmap_E16F +0xa2e17b kGripper_Palette +0xa2e19b kGripper_Ilist_E19B +0xa2e1af kGripper_Ilist_E1AF +0xa2e1c3 kGripper_Ilist_E1C3 +0xa2e1cb kGripper_Ilist_E1CB +0xa2e1d3 Gripper_Init +0xa2e221 Gripper_Main +0xa2e279 Gripper_Func_1 +0xa2e28a Gripper_Func_2 +0xa2e29b Gripper_Func_3 +0xa2e2a3 nullsub_194 +0xa2e2a4 Gripper_Func_4 +0xa2e2c0 kJetPowerRipper_Palette +0xa2e2e0 kRipper_Ilist_E2E0 +0xa2e2f4 kRipper_Ilist_E2F4 +0xa2e308 kRipper_Ilist_E308 +0xa2e310 kRipper_Ilist_E310 +0xa2e318 JetPowerRipper_Init +0xa2e353 JetPowerRipper_Main +0xa2e3a0 Ripper_Func_1 +0xa2e3a8 nullsub_195 +0xa2e3a9 JetPowerRipper_Shot +0xa2e3c5 kGripper_Sprmap_E3C5 +0xa2e3db kGripper_Sprmap_E3DB +0xa2e3ec kGripper_Sprmap_E3EC +0xa2e402 kGripper_Sprmap_E402 +0xa2e418 kGripper_Sprmap_E418 +0xa2e429 kGripper_Sprmap_E429 +0xa2e43f kGripper_Sprmap_E43F +0xa2e44b kGripper_Sprmap_E44B +0xa2e457 kRipper_Palette +0xa2e477 kRipper_Ilist_E477 +0xa2e48b kRipper_Ilist_E48B +0xa2e49f Ripper_Init +0xa2e4da Ripper_Main +0xa2e527 kRipper_Sprmap_E527 +0xa2e533 kRipper_Sprmap_E533 +0xa2e53f kRipper_Sprmap_E53F +0xa2e54b kRipper_Sprmap_E54B +0xa2e557 kRipper_Sprmap_E557 +0xa2e563 kRipper_Sprmap_E563 +0xa2e57b kLavaSeahorse_Palette +0xa2e59b kLavaSeahorse_Ilist_E59B +0xa2e5a1 kLavaSeahorse_Ilist_E5A1 +0xa2e5ad kLavaSeahorse_Ilist_E5AD +0xa2e5b3 kLavaSeahorse_Ilist_E5B3 +0xa2e5bf kLavaSeahorse_Ilist_E5BF +0xa2e5d3 kLavaSeahorse_Ilist_E5D3 +0xa2e5d7 kLavaSeahorse_Ilist_E5D7 +0xa2e5fb LavaSeahorse_Instr_E5FB +0xa2e606 LavaSeahorse_Init +0xa2e64e LavaSeahorse_Main +0xa2e654 LavaSeahorse_Func_1 +0xa2e6ad LavaSeahorse_Func_2 +0xa2e6f1 LavaSeahorse_Func_3 +0xa2e734 LavaSeahorse_Func_4 +0xa2e749 LavaSeahorse_Func_5 +0xa2e781 nullsub_196 +0xa2e782 LavaSeahorse_Func_6 +0xa2e7a5 LavaSeahorse_Func_7 +0xa2e7c8 LavaSeahorse_Touch +0xa2e7ce LavaSeahorse_Shot +0xa2e7d4 LavaSeahorse_Powerbomb +0xa2e7da LavaSeahorse_E7DA +0xa2e80c kLavaSeahorse_Sprmap_E80C +0xa2e836 kLavaSeahorse_Sprmap_E836 +0xa2e860 kLavaSeahorse_Sprmap_E860 +0xa2e88a kLavaSeahorse_Sprmap_E88A +0xa2e8b4 kLavaSeahorse_Sprmap_E8B4 +0xa2e8bb kLavaSeahorse_Sprmap_E8BB +0xa2e8c2 kLavaSeahorse_Sprmap_E8C2 +0xa2e8ec kLavaSeahorse_Sprmap_E8EC +0xa2e916 kLavaSeahorse_Sprmap_E916 +0xa2e940 kLavaSeahorse_Sprmap_E940 +0xa2e96a kLavaSeahorse_Sprmap_E96A +0xa2e971 kLavaSeahorse_Sprmap_E971 +0xa2e978 kTimedShutter_Palette +0xa2e998 kTimedShutter_Ilist_E998 +0xa2e99e kTimedShutter_Ilist_E99E +0xa2e9a4 kTimedShutter_Ilist_E9A4 +0xa2e9aa kTimedShutter_Ilist_E9AA +0xa2e9b0 kTimedShutter_Ilist_E9B0 +0xa2e9d4 kTimedShutter_Ilist_E9D4 +0xa2e9da TimedShutter_Init +0xa2eab6 TimedShutter_Main +0xa2eabd TimedShutter_Func_1 +0xa2ead1 TimedShutter_Func_2 +0xa2eae7 TimedShutter_Func_3 +0xa2eafd TimedShutter_Func_4 +0xa2eb11 TimedShutter_Func_5 +0xa2eb24 nullsub_197 +0xa2eb25 TimedShutter_Func_6 +0xa2eb66 TimedShutter_Func_7 +0xa2eba7 TimedShutter_Func_8 +0xa2ebe8 TimedShutter_Func_9 +0xa2ec13 TimedShutter_Func_10 +0xa2ec44 nullsub_198 +0xa2ec45 TimedShutter_Func_11 +0xa2ec86 TimedShutter_Func_12 +0xa2ecc7 TimedShutter_Func_13 +0xa2ed08 TimedShutter_Func_14 +0xa2ed33 TimedShutter_Func_15 +0xa2ed37 nullsub_199 +0xa2ed38 kTimedShutter_Sprmap_ED38 +0xa2ed44 kTimedShutter_Sprmap_ED44 +0xa2ed4b kTimedShutter_Sprmap_ED4B +0xa2ed57 kTimedShutter_Sprmap_ED57 +0xa2ed63 kTimedShutter_Sprmap_ED63 +0xa2ed74 kTimedShutter_Sprmap_ED74 +0xa2ed85 kTimedShutter_Sprmap_ED85 +0xa2ed9b kTimedShutter_Sprmap_ED9B +0xa2edb1 kTimedShutter_Sprmap_EDB1 +0xa2edc7 kRisingFallingPlatform_Palette +0xa2ede7 kRisingFallingPlatform_Ilist_EDE7 +0xa2ee05 RisingFallingPlatform_Init +0xa2ee12 ShootableShutter_Init +0xa2ee1f RisingFallingPlatform_Func_1 +0xa2eed1 RisingFallingPlatform_Main +0xa2ef09 RisingFallingPlatform_Func_2 +0xa2ef15 RisingFallingPlatform_Func_3 +0xa2ef28 RisingFallingPlatform_Func_4 +0xa2ef39 RisingFallingPlatform_Func_5 +0xa2ef40 RisingFallingPlatform_Func_6 +0xa2ef44 RisingFallingPlatform_Func_7 +0xa2ef5a RisingFallingPlatform_Func_8 +0xa2ef68 RisingFallingPlatform_Func_9 +0xa2efd4 RisingFallingPlatform_Func_10 +0xa2f040 RisingFallingPlatform_Func_11 +0xa2f072 RisingFallingPlatform_Func_12 +0xa2f099 RisingFallingPlatform_Func_13 +0xa2f09d RisingFallingPlatform_Touch +0xa2f0a2 RisingFallingPlatform_Shot +0xa2f0aa ShootableShutter_Shot +0xa2f0b6 RisingFallingPlatform_Powerbomb +0xa2f111 HorizontalShootableShutter_Init +0xa2f11e HorizontalShootableShutter_Func_1 +0xa2f1de HorizontalShootableShutter_Main +0xa2f224 HorizontalShootableShutter_Func_2 +0xa2f230 HorizontalShootableShutter_Func_3 +0xa2f243 HorizontalShootableShutter_Func_4 +0xa2f254 HorizontalShootableShutter_Func_5 +0xa2f25b HorizontalShootableShutter_Func_6 +0xa2f25f HorizontalShootableShutter_Func_7 +0xa2f272 HorizontalShootableShutter_Func_8 +0xa2f2e4 HorizontalShootableShutter_Func_9 +0xa2f356 HorizontalShootableShutter_Func_10 +0xa2f371 HorizontalShootableShutter_Func_11 +0xa2f38c HorizontalShootableShutter_Func_12 +0xa2f3b0 HorizontalShootableShutter_Func_13 +0xa2f3d4 HorizontalShootableShutter_Func_14 +0xa2f3d8 HorizontalShootableShutter_Touch +0xa2f40e HorizontalShootableShutter_Shot +0xa2f41a HorizontalShootableShutter_Powerbomb +0xa2f468 kRisingFallingPlatform_Sprmap_F468 +0xa2f474 kRisingFallingPlatform_Sprmap_F474 +0xa2f480 kRisingFallingPlatform_Sprmap_F480 +0xa2f48c kRisingFallingPlatform_Sprmap_F48C +0xa38000 Enemy_GrappleReact_NoInteract_A3 +0xa38005 Enemy_GrappleReact_SamusLatchesOn_A3 +0xa3800a Enemy_GrappleReact_KillEnemy_A3 +0xa3800f Enemy_GrappleReact_CancelBeam_A3 +0xa38014 Enemy_GrappleReact_SamusLatchesNoInvinc_A3 +0xa38019 Enemy_GrappleReact_SamusLatchesParalyze_A3 +0xa3801e Enemy_GrappleReact_HurtSamus_A3 +0xa38023 Enemy_NormalTouchAI_A3 +0xa38028 Enemy_NormalTouchAI_SkipDeathAnim_A3 +0xa3802d Enemy_NormalShotAI_A3 +0xa38032 Enemy_NormalShotAI_SkipSomeParts_A3 +0xa38037 Enemy_NormalPowerBombAI_A3 +0xa3803c Enemy_NormalPowerBombAI_SkipDeathAnim_A3 +0xa38041 Enemy_NormalFrozenAI_A3 +0xa38046 CreateADudShot_A3 +0xa3804b nullsub_169_A3 +0xa3804c nullsub_170_A3 +0xa3804d kSpritemap_Nothing_A3 +0xa3804f kExtendedSpritemap_Nothing_A3 +0xa38059 word8059_A3 +0xa38069 sub8069_A3 +0xa3806b Enemy_SetAiPreInstr_A3 +0xa38074 Enemy_ClearAiPreInstr_A3 +0xa3807b nullsub_171_A3 +0xa3807c EnemyInstr_StopScript_A3 +0xa3808a EnemyInstr_Call_A3 +0xa38097 loc8097_A3 +0xa3809c EnemyInstr_CallWithArg_A3 +0xa380ac loc80AC_A3 +0xa380b5 EnemyInstr_CallFar_A3 +0xa380cb loc80CB_A3 +0xa380ce EnemyInstr_CallFarWithArg_A3 +0xa380ea loc80EA_A3 +0xa380ed EnemyInstr_Goto_A3 +0xa380f2 EnemyInstr_GotoRel_A3 +0xa38100 loc8100_A3 +0xa38103 loc8103_A3 +0xa38108 EnemyInstr_DecTimerAndGoto_A3 +0xa38110 EnemyInstr_DecTimerAndGoto2_A3 +0xa38118 EnemyInstr_DecTimerAndGotoRel_A3 +0xa38123 EnemyInstr_SetTimer_A3 +0xa3812c EnemyInstr_Skip2bytes_A3 +0xa3812f EnemyInstr_Sleep_A3 +0xa3813a EnemyInstr_WaitNframes_A3 +0xa3814b EnemyInstr_CopyToVram_A3 +0xa38173 EnemyInstr_EnableOffScreenProcessing_A3 +0xa3817d EnemyInstr_DisableOffScreenProcessing_A3 +0xa38187 kCommonEnemySpeeds_Linear_A3 +0xa3838f kCommonEnemySpeeds_Quadratic_A3 +0xa38687 kWaver_Palette +0xa386a7 kWaver_Ilist_86A7 +0xa386ad kWaver_Ilist_86AD +0xa386b3 kWaver_Ilist_86B3 +0xa386c3 kWaver_Ilist_86C3 +0xa386c7 kWaver_Ilist_86C7 +0xa386e3 Waver_Instr_1 +0xa386ed Waver_Init +0xa3874c Waver_Main +0xa387fe Waver_Func_1 +0xa3881e kWaver_Sprmap_881E +0xa38834 kWaver_Sprmap_8834 +0xa3884a kWaver_Sprmap_884A +0xa3885b kWaver_Sprmap_885B +0xa38871 kWaver_Sprmap_8871 +0xa38887 kWaver_Sprmap_8887 +0xa3889d kWaver_Sprmap_889D +0xa388b3 kWaver_Sprmap_88B3 +0xa388c4 kWaver_Sprmap_88C4 +0xa388da kWaver_Sprmap_88DA +0xa388f0 kMetalee_Palette +0xa38910 kMetalee_Ilist_8910 +0xa38924 kMetalee_Ilist_8924 +0xa38930 kMetalee_Ilist_8930 +0xa38946 kMetalee_Ilist_8946 +0xa38956 Metalee_Instr_1 +0xa38960 Metalee_Init +0xa38979 Metalee_Main +0xa38987 Metalee_Func_1 +0xa389ac Metalee_Func_2 +0xa389d4 Metalee_Func_3 +0xa389f3 Metalee_Func_4 +0xa38a5c Metalee_Func_5 +0xa38ab2 Metalee_Func_6 +0xa38b0e nullsub_200 +0xa38b0f Metalee_Shot +0xa38b65 kMetalee_Sprmap_8B65 +0xa38b94 kMetalee_Sprmap_8B94 +0xa38bb9 kMetalee_Sprmap_8BB9 +0xa38bde kMetalee_Sprmap_8BDE +0xa38bea kMetalee_Sprmap_8BEA +0xa38c0f kFireflea_Palette +0xa38c2f kFireflea_Ilist_8C2F +0xa38d2d Fireflea_Init +0xa38d5d Fireflea_Func_1 +0xa38d6a Fireflea_Func_2 +0xa38d75 Fireflea_Func_3 +0xa38d9c Fireflea_Func_4 +0xa38dae Fireflea_Func_5 +0xa38dd7 Fireflea_Func_6 +0xa38dee Fireflea_Main +0xa38e6b Fireflea_Touch +0xa38e83 Fireflea_Powerbomb +0xa38e89 Fireflea_Shot +0xa38e8d Fireflea_Common +0xa38ea5 kFireflea_Sprmap_8EA5 +0xa38eb6 kFireflea_Sprmap_8EB6 +0xa38ec7 kFireflea_Sprmap_8EC7 +0xa38ed8 kFireflea_Sprmap_8ED8 +0xa38ee9 kFireflea_Sprmap_8EE9 +0xa38efa kFireflea_Sprmap_8EFA +0xa38f0b kFireflea_Sprmap_8F0B +0xa38f1c kFireflea_Sprmap_8F1C +0xa38f2d kFireflea_Sprmap_8F2D +0xa38f3e kFireflea_Sprmap_8F3E +0xa38f4f kFireflea_Sprmap_8F4F +0xa38f60 kFireflea_Sprmap_8F60 +0xa38f71 kFireflea_Sprmap_8F71 +0xa38f82 kFireflea_Sprmap_8F82 +0xa38f93 kFireflea_Sprmap_8F93 +0xa38fa4 kFireflea_Sprmap_8FA4 +0xa38fb5 kFireflea_Sprmap_8FB5 +0xa38fc6 kFireflea_Sprmap_8FC6 +0xa38fd7 kFireflea_Sprmap_8FD7 +0xa38fe8 kFireflea_Sprmap_8FE8 +0xa38ff9 kFireflea_Sprmap_8FF9 +0xa3900a kMaridiaFish_Palette +0xa3902a kMaridiaFish_Ilist_902A +0xa3903c kMaridiaFish_Ilist_903C +0xa39060 kMaridiaFish_Ilist_9060 +0xa39072 kMaridiaFish_Ilist_9072 +0xa39096 MaridiaFish_Instr_3 +0xa390a0 MaridiaFish_Instr_1 +0xa390aa MaridiaFish_Instr_2 +0xa390b5 MaridiaFish_Init +0xa3912b MaridiaFish_Main +0xa39132 MaridiaFish_Func_1 +0xa391ab MaridiaFish_Func_2 +0xa39224 MaridiaFish_Func_3 +0xa39256 MaridiaFish_Func_4 +0xa39288 nullsub_201 +0xa39289 nullsub_202 +0xa3928a kMaridiaFish_Sprmap_928A +0xa392a5 kMaridiaFish_Sprmap_92A5 +0xa392c0 kMaridiaFish_Sprmap_92C0 +0xa392db kMaridiaFish_Sprmap_92DB +0xa392f6 kMaridiaFish_Sprmap_92F6 +0xa39311 kMaridiaFish_Sprmap_9311 +0xa39327 kMaridiaFish_Sprmap_9327 +0xa3933d kMaridiaFish_Sprmap_933D +0xa3934e kMaridiaFish_Sprmap_934E +0xa39364 kMaridiaFish_Sprmap_9364 +0xa3937f kMaridiaFish_Sprmap_937F +0xa3939a kMaridiaFish_Sprmap_939A +0xa393b5 kMaridiaFish_Sprmap_93B5 +0xa393d0 kMaridiaFish_Sprmap_93D0 +0xa393eb kMaridiaFish_Sprmap_93EB +0xa39406 kMaridiaFish_Sprmap_9406 +0xa39421 kMaridiaFish_Sprmap_9421 +0xa39437 kMaridiaFish_Sprmap_9437 +0xa3944d kMaridiaFish_Sprmap_944D +0xa3945e kMaridiaFish_Sprmap_945E +0xa39474 kMaridiaFish_Sprmap_9474 +0xa3948f kMaridiaFish_Sprmap_948F +0xa394d6 kElevator_Ilist_94D6 +0xa394e6 Elevator_Init +0xa3952a Elevator_Frozen +0xa39548 Elevator_Func_1 +0xa39579 Elevator_Func_2 +0xa395b9 Elevator_Func_3 +0xa395bc Elevator_Func3b +0xa39612 Elevator_Func_4 +0xa3962f kElevator_Sprmap_962F +0xa39645 kElevator_Sprmap_9645 +0xa3965b kCrab_Palette +0xa3967b kCrab_Ilist_967B +0xa39693 kCrab_Ilist_9693 +0xa39697 kCrab_Ilist_9697 +0xa396ab kCrab_Ilist_96AB +0xa396af kCrab_Ilist_96AF +0xa396c3 kCrab_Ilist_96C3 +0xa396c7 kCrab_Ilist_96C7 +0xa396e3 Crab_Init +0xa396fd Crab_Func_1 +0xa39701 nullsub_203 +0xa39702 nullsub_204 +0xa39703 kCrab_Sprmap_9703 +0xa39719 kCrab_Sprmap_9719 +0xa3972f kCrab_Sprmap_972F +0xa39745 kCrab_Sprmap_9745 +0xa3975b kCrab_Sprmap_975B +0xa39771 kCrab_Sprmap_9771 +0xa39787 kCrab_Sprmap_9787 +0xa3979d kCrab_Sprmap_979D +0xa397b3 kCrab_Sprmap_97B3 +0xa397c9 kCrab_Sprmap_97C9 +0xa397df kCrab_Sprmap_97DF +0xa397f5 kCrab_Sprmap_97F5 +0xa3980b kSlug_Palette +0xa3982b kSlug_Ilist_982B +0xa3982f kSlug_Ilist_982F +0xa3984b kSlug_Ilist_984B +0xa3984f kSlug_Ilist_984F +0xa3986b kSlug_Ilist_986B +0xa3986f kSlug_Ilist_986F +0xa3988b kSlug_Ilist_988B +0xa3988f kSlug_Ilist_988F +0xa398ab kSlug_Ilist_98AB +0xa398af kSlug_Ilist_98AF +0xa398cb kSlug_Ilist_98CB +0xa398cf kSlug_Ilist_98CF +0xa398eb kSlug_Ilist_98EB +0xa398ef kSlug_Ilist_98EF +0xa3990b kSlug_Ilist_990B +0xa3990f kSlug_Ilist_990F +0xa3993b Slug_Init +0xa39955 Slug_Func_1 +0xa39959 nullsub_205 +0xa3995a nullsub_206 +0xa3995b kSlug_Sprmap_995B +0xa3996c kSlug_Sprmap_996C +0xa3997d kSlug_Sprmap_997D +0xa3998e kSlug_Sprmap_998E +0xa3999f kSlug_Sprmap_999F +0xa399b0 kSlug_Sprmap_99B0 +0xa399c1 kSlug_Sprmap_99C1 +0xa399d2 kSlug_Sprmap_99D2 +0xa399e3 kSlug_Sprmap_99E3 +0xa399f4 kSlug_Sprmap_99F4 +0xa39a05 kSlug_Sprmap_9A05 +0xa39a16 kSlug_Sprmap_9A16 +0xa39a27 kSlug_Sprmap_9A27 +0xa39a38 kSlug_Sprmap_9A38 +0xa39a49 kSlug_Sprmap_9A49 +0xa39a5a kSlug_Sprmap_9A5A +0xa39a6b kSlug_Sprmap_9A6B +0xa39a7c kSlug_Sprmap_9A7C +0xa39a8d kSlug_Sprmap_9A8D +0xa39a9e kSlug_Sprmap_9A9E +0xa39aaf kSlug_Sprmap_9AAF +0xa39ac0 kSlug_Sprmap_9AC0 +0xa39ad1 kSlug_Sprmap_9AD1 +0xa39ae2 kSlug_Sprmap_9AE2 +0xa39af3 kSlug_Sprmap_9AF3 +0xa39b04 kSlug_Sprmap_9B04 +0xa39b15 kSlug_Sprmap_9B15 +0xa39b26 kSlug_Sprmap_9B26 +0xa39b37 kSlug_Sprmap_9B37 +0xa39b48 kSlug_Sprmap_9B48 +0xa39b59 kSlug_Sprmap_9B59 +0xa39b6a kSlug_Sprmap_9B6A +0xa39b7b kFastMovingSlowSinkingPlatform_Palette +0xa39b9b kPlatformThatFallsWithSamus_Palette +0xa39bbb kPlatformThatFallsWithSamus_Ilist_9BBB +0xa39bbd kPlatformThatFallsWithSamus_Ilist_9BBD +0xa39bd1 kPlatformThatFallsWithSamus_Ilist_9BD1 +0xa39bd3 kPlatformThatFallsWithSamus_Ilist_9BD3 +0xa39be7 kPlatformThatFallsWithSamus_Ilist_9BE7 +0xa39be9 kPlatformThatFallsWithSamus_Ilist_9BE9 +0xa39bfd kPlatformThatFallsWithSamus_Ilist_9BFD +0xa39bff kPlatformThatFallsWithSamus_Ilist_9BFF +0xa39c13 kPlatformThatFallsWithSamus_Ilist_9C13 +0xa39c15 kPlatformThatFallsWithSamus_Ilist_9C15 +0xa39c29 kPlatformThatFallsWithSamus_Ilist_9C29 +0xa39c2b kPlatformThatFallsWithSamus_Ilist_9C2B +0xa39c3f kPlatformThatFallsWithSamus_Ilist_9C3F +0xa39c41 kPlatformThatFallsWithSamus_Ilist_9C41 +0xa39c55 kPlatformThatFallsWithSamus_Ilist_9C55 +0xa39c57 kPlatformThatFallsWithSamus_Ilist_9C57 +0xa39c6b PlatformThatFallsWithSamus_Instr_3 +0xa39c76 PlatformThatFallsWithSamus_Instr_4 +0xa39c81 PlatformThatFallsWithSamus_Instr_1 +0xa39c8c PlatformThatFallsWithSamus_Instr_2 +0xa39c9f PlatformThatFallsWithSamus_Init +0xa39cba FastMovingSlowSinkingPlatform_Init +0xa39ccc PlatformThatFalls_Init +0xa39d16 PlatformThatFallsWithSamus_Main +0xa39d5e PlatformThatFallsWithSamus_Func_1 +0xa39d83 PlatformThatFallsWithSamus_Func_2 +0xa39da8 PlatformThatFallsWithSamus_Func_3 +0xa39de4 PlatformThatFallsWithSamus_Func_4 +0xa39e46 nullsub_207 +0xa39e47 PlatformThatFallsWithSamus_Func_5 +0xa39e64 PlatformThatFallsWithSamus_Func_6 +0xa39e81 PlatformThatFallsWithSamus_Func_7 +0xa39e9e PlatformThatFallsWithSamus_Func_8 +0xa39ebb PlatformThatFallsWithSamus_Func_9 +0xa39ee1 PlatformThatFallsWithSamus_Func_10 +0xa39f07 nullsub_32 +0xa39f08 FastMovingSlowSinkingPlatform_Shot +0xa39f29 kPlatformThatFallsWithSamus_Sprmap_9F29 +0xa39f3a kPlatformThatFallsWithSamus_Sprmap_9F3A +0xa39f4b kPlatformThatFallsWithSamus_Sprmap_9F4B +0xa39f5c kPlatformThatFallsWithSamus_Sprmap_9F5C +0xa39f6d kPlatformThatFallsWithSamus_Sprmap_9F6D +0xa39f7e kPlatformThatFallsWithSamus_Sprmap_9F7E +0xa39f8f kPlatformThatFallsWithSamus_Sprmap_9F8F +0xa39fa5 kPlatformThatFallsWithSamus_Sprmap_9FA5 +0xa39fb6 kPlatformThatFallsWithSamus_Sprmap_9FB6 +0xa39fcc kPlatformThatFallsWithSamus_Sprmap_9FCC +0xa39fe2 kPlatformThatFallsWithSamus_Sprmap_9FE2 +0xa39ff3 kPlatformThatFallsWithSamus_Sprmap_9FF3 +0xa3a009 kPlatformThatFallsWithSamus_Sprmap_A009 +0xa3a015 kPlatformThatFallsWithSamus_Sprmap_A015 +0xa3a021 kPlatformThatFallsWithSamus_Sprmap_A021 +0xa3a02d kPlatformThatFallsWithSamus_Sprmap_A02D +0xa3a039 kPlatformThatFallsWithSamus_Sprmap_A039 +0xa3a045 kPlatformThatFallsWithSamus_Sprmap_A045 +0xa3a051 kRoach_Palette +0xa3a071 kRoach_Ilist_A071 +0xa3a085 kRoach_Ilist_A085 +0xa3a099 kRoach_Ilist_A099 +0xa3a0ad kRoach_Ilist_A0AD +0xa3a0c1 kRoach_Ilist_A0C1 +0xa3a0d5 kRoach_Ilist_A0D5 +0xa3a0e9 kRoach_Ilist_A0E9 +0xa3a0fd kRoach_Ilist_A0FD +0xa3a12f Roach_Func_1 +0xa3a14d Roach_Init +0xa3a183 Roach_Func_2 +0xa3a1b0 Roach_Func_3 +0xa3a1f3 Roach_Func_4 +0xa3a23e Roach_Func_5 +0xa3a289 Roach_Func_6 +0xa3a29e Roach_Func_7 +0xa3a2b7 Roach_Func_8 +0xa3a2d0 Roach_Main +0xa3a2d7 Roach_Func_9 +0xa3a301 Roach_Func_10 +0xa3a30b Roach_Func_11 +0xa3a315 Roach_Func_12 +0xa3a325 Roach_Func_13 +0xa3a33b Roach_Func_14 +0xa3a34b Roach_Func_15 +0xa3a380 Roach_Func_16 +0xa3a3b5 Roach_Func_17 +0xa3a3ca Roach_Func_18 +0xa3a407 Roach_Func_19 +0xa3a40e Roach_Func_20 +0xa3a440 Roach_Func_21 +0xa3a447 Roach_Func_22 +0xa3a44e Roach_Func_23 +0xa3a462 Roach_Func_24 +0xa3a476 Roach_Func_25 +0xa3a4b6 Roach_Func_26 +0xa3a4f0 Roach_Func_27 +0xa3a52a Roach_Func_28 +0xa3a578 Roach_Func_29 +0xa3a5a2 nullsub_208 +0xa3a5a3 Roach_Func_30 +0xa3a5da Roach_Func_31 +0xa3a611 Roach_Func_32 +0xa3a648 Roach_Func_33 +0xa3a67b nullsub_209 +0xa3a67c nullsub_210 +0xa3a67d kRoach_Sprmap_A67D +0xa3a684 kRoach_Sprmap_A684 +0xa3a68b kRoach_Sprmap_A68B +0xa3a692 kRoach_Sprmap_A692 +0xa3a699 kRoach_Sprmap_A699 +0xa3a6a0 kRoach_Sprmap_A6A0 +0xa3a6a7 kRoach_Sprmap_A6A7 +0xa3a6ae kRoach_Sprmap_A6AE +0xa3a6b5 kRoach_Sprmap_A6B5 +0xa3a6bc kRoach_Sprmap_A6BC +0xa3a6c3 kRoach_Sprmap_A6C3 +0xa3a6ca kRoach_Sprmap_A6CA +0xa3a6d1 kRoach_Sprmap_A6D1 +0xa3a6d8 kRoach_Sprmap_A6D8 +0xa3a6df kRoach_Sprmap_A6DF +0xa3a6e6 kRoach_Sprmap_A6E6 +0xa3a6ed kRoach_Sprmap_A6ED +0xa3a6f4 kRoach_Sprmap_A6F4 +0xa3a6fb kRoach_Sprmap_A6FB +0xa3a702 kRoach_Sprmap_A702 +0xa3a709 kRoach_Sprmap_A709 +0xa3a710 kRoach_Sprmap_A710 +0xa3a717 kRoach_Sprmap_A717 +0xa3a71e kRoach_Sprmap_A71E +0xa3a725 kMochtroid_Palette +0xa3a745 kMochtroid_Ilist_A745 +0xa3a759 kMochtroid_Ilist_A759 +0xa3a77d Mochtroid_Init +0xa3a790 Mochtroid_Main +0xa3a7aa Mochtroid_Func_1 +0xa3a88f Mochtroid_Func_2 +0xa3a8c8 Mochtroid_Func_3 +0xa3a93c Mochtroid_Func_4 +0xa3a953 Mochtroid_Touch +0xa3a9a8 Mochtroid_Shot +0xa3a9b0 kMochtroid_Sprmap_A9B0 +0xa3a9d0 kMochtroid_Sprmap_A9D0 +0xa3a9f0 kMochtroid_Sprmap_A9F0 +0xa3aa06 kMochtroid_Sprmap_AA06 +0xa3aa1c kMochtroid_Sprmap_AA1C +0xa3aa32 kMochtroid_Sprmap_AA32 +0xa3aa48 kSidehopper_Palette_0 +0xa3aa68 Sidehopper_Func_1 +0xa3aa76 kSidehopper_Ilist_AA76 +0xa3aa82 kSidehopper_Ilist_AA82 +0xa3aa98 kSidehopper_Ilist_AA98 +0xa3aa9c kSidehopper_Ilist_AA9C +0xa3aaa8 kSidehopper_Ilist_AAA8 +0xa3aac0 kSidehopper_Ilist_AAC0 +0xa3aafe Sidehopper_Instr_1 +0xa3ab09 Sidehopper_Init +0xa3ab9d Sidehopper_Func_2 +0xa3abbb Sidehopper_Func_3 +0xa3abcf Sidehopper_Main +0xa3abd6 Sidehopper_Func_4 +0xa3abe6 Sidehopper_Func_5 +0xa3ac13 Sidehopper_Func_6 +0xa3ac40 Sidehopper_Func_7 +0xa3ac56 Sidehopper_Func_8 +0xa3ac6c Sidehopper_Func_9 +0xa3ac8f Sidehopper_Func_10 +0xa3aca8 Sidehopper_Func_11 +0xa3accb Sidehopper_Func_12 +0xa3ace4 Sidehopper_Func_13 +0xa3ad0e Sidehopper_Func_14 +0xa3ad20 Sidehopper_Func_15 +0xa3ad32 Sidehopper_Func_16 +0xa3ad44 Sidehopper_Func_17 +0xa3ad56 Sidehopper_Func_18 +0xa3ad6d Sidehopper_Func_19 +0xa3add4 Sidehopper_Func_20 +0xa3ae27 Sidehopper_Func_21 +0xa3ae8e Sidehopper_Func_22 +0xa3aee1 nullsub_211 +0xa3aee2 nullsub_212 +0xa3aee3 kSidehopper_Sprmap_AEE3 +0xa3aefe kSidehopper_Sprmap_AEFE +0xa3af19 kSidehopper_Sprmap_AF19 +0xa3af34 kSidehopper_Sprmap_AF34 +0xa3af4f kSidehopper_Sprmap_AF4F +0xa3af6a kSidehopper_Sprmap_AF6A +0xa3af85 kSidehopper_Palette_1 +0xa3afa5 kSidehopper_Ilist_AFA5 +0xa3afad kSidehopper_Ilist_AFAD +0xa3afc3 kSidehopper_Ilist_AFC3 +0xa3afcb kSidehopper_Ilist_AFCB +0xa3afe1 nullsub_213 +0xa3afe2 nullsub_214 +0xa3afe3 kSidehopper_Sprmap_AFE3 +0xa3affe kSidehopper_Sprmap_AFFE +0xa3b019 kSidehopper_Sprmap_B019 +0xa3b034 kSidehopper_Sprmap_B034 +0xa3b04f kSidehopper_Sprmap_B04F +0xa3b06a kSidehopper_Sprmap_B06A +0xa3b085 kSidehopper_Palette_2 +0xa3b0a5 kSidehopper_Palette_3 +0xa3b0c5 kSidehopper_Ilist_B0C5 +0xa3b0d1 kSidehopper_Ilist_B0D1 +0xa3b0eb kSidehopper_Ilist_B0EB +0xa3b0f7 kSidehopper_Ilist_B0F7 +0xa3b111 kSidehopper_Sprmap_B111 +0xa3b136 kSidehopper_Sprmap_B136 +0xa3b15b kSidehopper_Sprmap_B15B +0xa3b194 kSidehopper_Sprmap_B194 +0xa3b1b9 kSidehopper_Sprmap_B1B9 +0xa3b1de kSidehopper_Sprmap_B1DE +0xa3b217 kDessgeega_Palette +0xa3b237 kDessgeega_Ilist_B237 +0xa3b23f kDessgeega_Ilist_B23F +0xa3b255 kDessgeega_Ilist_B255 +0xa3b25d kDessgeega_Ilist_B25D +0xa3b273 kDessgeega_Sprmap_B273 +0xa3b2a2 kDessgeega_Sprmap_B2A2 +0xa3b2d1 kDessgeega_Sprmap_B2D1 +0xa3b30a kDessgeega_Sprmap_B30A +0xa3b339 kDessgeega_Sprmap_B339 +0xa3b368 kDessgeega_Sprmap_B368 +0xa3b3a1 kMaridiaRefillCandy_Palette +0xa3b3c1 kMaridiaRefillCandy_Ilist_B3C1 +0xa3b3d7 kMaridiaRefillCandy_Ilist_B3D7 +0xa3b3e7 kMaridiaRefillCandy_Ilist_B3E7 +0xa3b3fd kMaridiaRefillCandy_Ilist_B3FD +0xa3b429 MaridiaRefillCandy_Instr_1 +0xa3b434 MaridiaRefillCandy_Instr_2 +0xa3b43f MaridiaRefillCandy_Instr_3 +0xa3b44a MaridiaRefillCandy_Init +0xa3b47c MaridiaRefillCandy_Main +0xa3b482 MaridiaRefillCandy_Func_1 +0xa3b4a8 MaridiaRefillCandy_Func_2 +0xa3b4d6 MaridiaRefillCandy_Func_3 +0xa3b537 MaridiaRefillCandy_Func_4 +0xa3b557 MaridiaRefillCandy_Func_5 +0xa3b55b MaridiaRefillCandy_Func_6 +0xa3b55f kMaridiaRefillCandy_Sprmap_B55F +0xa3b566 kMaridiaRefillCandy_Sprmap_B566 +0xa3b56d kMaridiaRefillCandy_Sprmap_B56D +0xa3b574 kMaridiaRefillCandy_Sprmap_B574 +0xa3b57b kMaridiaRefillCandy_Sprmap_B57B +0xa3b582 kMaridiaRefillCandy_Sprmap_B582 +0xa3b589 kMaridiaRefillCandy_Sprmap_B589 +0xa3b590 kMaridiaRefillCandy_Sprmap_B590 +0xa3b597 kMaridiaRefillCandy_Sprmap_B597 +0xa3b59e kMaridiaRefillCandy_Sprmap_B59E +0xa3b5a5 kMaridiaRefillCandy_Sprmap_B5A5 +0xa3b5ac kMaridiaRefillCandy_Sprmap_B5AC +0xa3b5b3 kNorfairSlowFireball_Palette +0xa3b5d3 kNorfairSlowFireball_Ilist_B5D3 +0xa3b5db kNorfairSlowFireball_Ilist_B5DB +0xa3b5e3 kNorfairSlowFireball_Ilist_B5E3 +0xa3b5eb kNorfairSlowFireball_Ilist_B5EB +0xa3b62b kNorfairSlowFireball_Ilist_B62B +0xa3b66f NorfairSlowFireball_Init +0xa3b689 kNorfairSlowFireball_Sprmap_B689 +0xa3b690 kNorfairSlowFireball_Sprmap_B690 +0xa3b697 kNorfairSlowFireball_Sprmap_B697 +0xa3b69e kNorfairSlowFireball_Sprmap_B69E +0xa3b6a5 kNorfairSlowFireball_Sprmap_B6A5 +0xa3b6ac kNorfairSlowFireball_Sprmap_B6AC +0xa3b6b3 kNorfairSlowFireball_Sprmap_B6B3 +0xa3b6ba kNorfairSlowFireball_Sprmap_B6BA +0xa3b6c1 kNorfairSlowFireball_Sprmap_B6C1 +0xa3b6c8 kNorfairSlowFireball_Sprmap_B6C8 +0xa3b6cf kNorfairSlowFireball_Sprmap_B6CF +0xa3b6d6 kNorfairSlowFireball_Sprmap_B6D6 +0xa3b6dd kNorfairSlowFireball_Sprmap_B6DD +0xa3b6e4 kNorfairSlowFireball_Sprmap_B6E4 +0xa3b6eb kNorfairSlowFireball_Sprmap_B6EB +0xa3b6f2 kNorfairSlowFireball_Sprmap_B6F2 +0xa3b6f9 NorfairSlowFireball_Func_1 +0xa3b702 kBang_Palette +0xa3b75e kBang_Ilist_B75E +0xa3b772 kBang_Ilist_B772 +0xa3b790 kBang_Ilist_B790 +0xa3b7a4 kBang_Ilist_B7A4 +0xa3b7c2 kBang_Ilist_B7C2 +0xa3b7d6 kBang_Ilist_B7D6 +0xa3b7f4 kBang_Ilist_B7F4 +0xa3b838 kBang_Ilist_B838 +0xa3b85a kBang_Ilist_B85A +0xa3b88a kBang_Ilist_B88A +0xa3b8ac kBang_Ilist_B8AC +0xa3b8c0 kBang_Ilist_B8C0 +0xa3b8de kBang_Ilist_B8DE +0xa3b8f2 kBang_Ilist_B8F2 +0xa3b910 kBang_Ilist_B910 +0xa3b924 kBang_Ilist_B924 +0xa3b942 kBang_Ilist_B942 +0xa3b986 kBang_Ilist_B986 +0xa3b9a8 kBang_Ilist_B9A8 +0xa3b9d8 kBang_Ilist_B9D8 +0xa3b9fa kBang_Ilist_B9FA +0xa3ba00 kBang_Ilist_BA00 +0xa3ba3c kBang_Ilist_BA3C +0xa3ba78 Bang_Instr_1 +0xa3baa8 Bang_Instr_2 +0xa3bab3 Bang_Init +0xa3bb25 Bang_Main +0xa3bb2b Bang_Func_1 +0xa3bb4a Bang_Func_2 +0xa3bb66 Bang_Func_3 +0xa3bbeb Bang_Func_4 +0xa3bc9e Bang_Func_5 +0xa3bca5 Bang_Func_6 +0xa3bcc1 Bang_Func_7 +0xa3bcc5 Bang_Func_8 +0xa3bcf1 Bang_Func_9 +0xa3bd1c Bang_Func_10 +0xa3bd2c Bang_Func_11 +0xa3bd4f Bang_Func_12 +0xa3bd89 Bang_Func_13 +0xa3bdb9 Bang_Func_14 +0xa3be1c Bang_Func_15 +0xa3be7b Bang_Func_16 +0xa3bebe Bang_Func_17 +0xa3beda Bang_Func_18 +0xa3befd Bang_Shot +0xa3bf7d kBang_Sprmap_BF7D +0xa3bf84 kBang_Sprmap_BF84 +0xa3bf8b kBang_Sprmap_BF8B +0xa3bf92 kBang_Sprmap_BF92 +0xa3bf99 kBang_Sprmap_BF99 +0xa3bfa0 kBang_Sprmap_BFA0 +0xa3bfa7 kBang_Sprmap_BFA7 +0xa3bfae kBang_Sprmap_BFAE +0xa3bfb5 kBang_Sprmap_BFB5 +0xa3bfbc kBang_Sprmap_BFBC +0xa3bfd2 kBang_Sprmap_BFD2 +0xa3bfd9 kBang_Sprmap_BFD9 +0xa3bfef kBang_Sprmap_BFEF +0xa3bff6 kBang_Sprmap_BFF6 +0xa3c00c kBang_Sprmap_C00C +0xa3c013 kBang_Sprmap_C013 +0xa3c029 kBang_Sprmap_C029 +0xa3c030 kBang_Sprmap_C030 +0xa3c046 kBang_Sprmap_C046 +0xa3c04d kBang_Sprmap_C04D +0xa3c063 kBang_Sprmap_C063 +0xa3c079 kBang_Sprmap_C079 +0xa3c08f kBang_Sprmap_C08F +0xa3c096 kBang_Sprmap_C096 +0xa3c0ac kBang_Sprmap_C0AC +0xa3c0b3 kBang_Sprmap_C0B3 +0xa3c0c9 kBang_Sprmap_C0C9 +0xa3c0d0 kBang_Sprmap_C0D0 +0xa3c0e6 kBang_Sprmap_C0E6 +0xa3c0ed kBang_Sprmap_C0ED +0xa3c103 kBang_Sprmap_C103 +0xa3c10a kBang_Sprmap_C10A +0xa3c120 kBang_Sprmap_C120 +0xa3c127 kBang_Sprmap_C127 +0xa3c13d kBang_Sprmap_C13D +0xa3c144 kBang_Sprmap_C144 +0xa3c15a kBang_Sprmap_C15A +0xa3c161 kBang_Sprmap_C161 +0xa3c177 kBang_Sprmap_C177 +0xa3c17e kBang_Sprmap_C17E +0xa3c194 kBang_Sprmap_C194 +0xa3c19b kBang_Sprmap_C19B +0xa3c1b1 kBang_Sprmap_C1B1 +0xa3c1b8 kBang_Sprmap_C1B8 +0xa3c1ce kBang_Sprmap_C1CE +0xa3c1d5 kBang_Sprmap_C1D5 +0xa3c1eb kBang_Sprmap_C1EB +0xa3c1f2 kBang_Sprmap_C1F2 +0xa3c208 kBang_Sprmap_C208 +0xa3c20f kBang_Sprmap_C20F +0xa3c225 kBang_Sprmap_C225 +0xa3c22c kBang_Sprmap_C22C +0xa3c242 kBang_Sprmap_C242 +0xa3c249 kBang_Sprmap_C249 +0xa3c25f kBang_Sprmap_C25F +0xa3c266 kBang_Sprmap_C266 +0xa3c27c kBang_Sprmap_C27C +0xa3c283 kBang_Sprmap_C283 +0xa3c299 kBang_Sprmap_C299 +0xa3c2a0 kBang_Sprmap_C2A0 +0xa3c2b6 kBang_Sprmap_C2B6 +0xa3c2bd kBang_Sprmap_C2BD +0xa3c2d3 kBang_Sprmap_C2D3 +0xa3c2da kBang_Sprmap_C2DA +0xa3c2f0 kBang_Sprmap_C2F0 +0xa3c2f7 kBang_Sprmap_C2F7 +0xa3c30d kBang_Sprmap_C30D +0xa3c314 kBang_Sprmap_C314 +0xa3c32a kBang_Sprmap_C32A +0xa3c331 kBang_Sprmap_C331 +0xa3c347 kBang_Sprmap_C347 +0xa3c34e kBang_Sprmap_C34E +0xa3c364 kBang_Sprmap_C364 +0xa3c36b kBang_Sprmap_C36B +0xa3c381 kBang_Sprmap_C381 +0xa3c38d kBang_Sprmap_C38D +0xa3c399 kBang_Sprmap_C399 +0xa3c3a5 kBang_Sprmap_C3A5 +0xa3c3b1 kBang_Sprmap_C3B1 +0xa3c3bd kBang_Sprmap_C3BD +0xa3c3c9 kBang_Sprmap_C3C9 +0xa3c3d5 kBang_Sprmap_C3D5 +0xa3c3e1 kBang_Sprmap_C3E1 +0xa3c3ed kBang_Sprmap_C3ED +0xa3c3f9 kBang_Sprmap_C3F9 +0xa3c405 kBang_Sprmap_C405 +0xa3c411 kBang_Sprmap_C411 +0xa3c418 kBang_Sprmap_C418 +0xa3c42e kBang_Sprmap_C42E +0xa3c435 kBang_Sprmap_C435 +0xa3c44b kBang_Sprmap_C44B +0xa3c452 kBang_Sprmap_C452 +0xa3c468 kBang_Sprmap_C468 +0xa3c46f kBang_Sprmap_C46F +0xa3c485 kBang_Sprmap_C485 +0xa3c48c kBang_Sprmap_C48C +0xa3c4a2 kBang_Sprmap_C4A2 +0xa3c4a9 kBang_Sprmap_C4A9 +0xa3c4bf kBang_Sprmap_C4BF +0xa3c4c6 kBang_Sprmap_C4C6 +0xa3c4dc kBang_Sprmap_C4DC +0xa3c4e3 kBang_Sprmap_C4E3 +0xa3c4f9 kBang_Sprmap_C4F9 +0xa3c500 kBang_Sprmap_C500 +0xa3c516 kBang_Sprmap_C516 +0xa3c51d kBang_Sprmap_C51D +0xa3c533 kBang_Sprmap_C533 +0xa3c53a kBang_Sprmap_C53A +0xa3c550 kBang_Sprmap_C550 +0xa3c557 kBang_Sprmap_C557 +0xa3c56d kBang_Sprmap_C56D +0xa3c574 kBang_Sprmap_C574 +0xa3c58a kBang_Sprmap_C58A +0xa3c591 kBang_Sprmap_C591 +0xa3c5a7 kBang_Sprmap_C5A7 +0xa3c5ae kBang_Sprmap_C5AE +0xa3c5ba kBang_Sprmap_C5BA +0xa3c5c6 kBang_Sprmap_C5C6 +0xa3c5d2 kBang_Sprmap_C5D2 +0xa3c5de kBang_Sprmap_C5DE +0xa3c5ea kBang_Sprmap_C5EA +0xa3c5f6 kBang_Sprmap_C5F6 +0xa3c602 kBang_Sprmap_C602 +0xa3c60e kBang_Sprmap_C60E +0xa3c61a kBang_Sprmap_C61A +0xa3c626 kBang_Sprmap_C626 +0xa3c632 kBang_Sprmap_C632 +0xa3c63e kSkree_Palette +0xa3c65e kSkree_Ilist_C65E +0xa3c672 kSkree_Ilist_C672 +0xa3c67a kSkree_Ilist_C67A +0xa3c67e kSkree_Ilist_C67E +0xa3c694 kSkree_Ilist_C694 +0xa3c6a4 Skree_Instr_1 +0xa3c6ae Skree_Init +0xa3c6c7 Skree_Main +0xa3c6d5 Skree_Func_1 +0xa3c6f7 Skree_Func_2 +0xa3c716 Skree_Func_3 +0xa3c77f Skree_Func_4 +0xa3c7d5 Skree_Func_5 +0xa3c7f5 Skree_Shot +0xa3c842 kSkree_Sprmap_C842 +0xa3c862 kSkree_Sprmap_C862 +0xa3c878 kSkree_Sprmap_C878 +0xa3c884 kSkree_Sprmap_C884 +0xa3c89a kSkree_Sprmap_C89A +0xa3c8a6 kMaridiaSnail_Palette +0xa3c8c6 kMaridiaSnail_Ilist_C8C6 +0xa3c8e0 kMaridiaSnail_Ilist_C8E0 +0xa3c8fc kMaridiaSnail_Ilist_C8FC +0xa3c916 kMaridiaSnail_Ilist_C916 +0xa3c932 kMaridiaSnail_Ilist_C932 +0xa3c94c kMaridiaSnail_Ilist_C94C +0xa3c968 kMaridiaSnail_Ilist_C968 +0xa3c982 kMaridiaSnail_Ilist_C982 +0xa3c99e kMaridiaSnail_Ilist_C99E +0xa3c9b8 kMaridiaSnail_Ilist_C9B8 +0xa3c9d4 kMaridiaSnail_Ilist_C9D4 +0xa3c9ee kMaridiaSnail_Ilist_C9EE +0xa3ca0a kMaridiaSnail_Ilist_CA0A +0xa3ca24 kMaridiaSnail_Ilist_CA24 +0xa3ca40 kMaridiaSnail_Ilist_CA40 +0xa3ca5a kMaridiaSnail_Ilist_CA5A +0xa3ca76 kMaridiaSnail_Ilist_CA76 +0xa3ca8e kMaridiaSnail_Ilist_CA8E +0xa3caa6 kMaridiaSnail_Ilist_CAA6 +0xa3cabe kMaridiaSnail_Ilist_CABE +0xa3cad6 kMaridiaSnail_Ilist_CAD6 +0xa3caee kMaridiaSnail_Ilist_CAEE +0xa3cb06 kMaridiaSnail_Ilist_CB06 +0xa3cb1e kMaridiaSnail_Ilist_CB1E +0xa3cb36 kMaridiaSnail_Ilist_CB36 +0xa3cb44 kMaridiaSnail_Ilist_CB44 +0xa3cb50 kMaridiaSnail_Ilist_CB50 +0xa3cb6a kMaridiaSnail_Ilist_CB6A +0xa3cb84 kMaridiaSnail_Ilist_CB84 +0xa3cb92 kMaridiaSnail_Ilist_CB92 +0xa3cb9e kMaridiaSnail_Ilist_CB9E +0xa3cbb8 kMaridiaSnail_Ilist_CBB8 +0xa3cbd2 kMaridiaSnail_Ilist_CBD2 +0xa3cbec kMaridiaSnail_Ilist_CBEC +0xa3cc06 kMaridiaSnail_Ilist_CC06 +0xa3cc0e kMaridiaSnail_Ilist_CC0E +0xa3cc1e kMaridiaSnail_Ilist_CC1E +0xa3cc26 kMaridiaSnail_Ilist_CC26 +0xa3cc36 MaridiaSnail_Instr_1 +0xa3cc3f MaridiaSnail_Instr_2 +0xa3cc48 MaridiaSnail_Instr_4 +0xa3cc5f MaridiaSnail_Instr_3 +0xa3cc78 MaridiaSnail_Instr_5 +0xa3cc92 MaridiaSnail_Func_1 +0xa3cde2 MaridiaSnail_Init +0xa3ce27 MaridiaSnail_Func_2 +0xa3ce57 MaridiaSnail_Func_3 +0xa3ce64 MaridiaSnail_Main +0xa3ce73 MaridiaSnail_Func_4 +0xa3ce9a MaridiaSnail_Func_5 +0xa3cf11 MaridiaSnail_Func_6 +0xa3cf5f nullsub_215 +0xa3cf60 MaridiaSnail_Func_7 +0xa3cf8f MaridiaSnail_Func_8 +0xa3cfa6 MaridiaSnail_Func_9 +0xa3cfb7 MaridiaSnail_CFB7 +0xa3cfbd MaridiaSnail_CFBD +0xa3cfce MaridiaSnail_CFCE +0xa3cfd4 MaridiaSnail_CFD4 +0xa3cfe5 MaridiaSnail_CFE5 +0xa3cfeb MaridiaSnail_CFEB +0xa3cffc MaridiaSnail_CFFC +0xa3d002 MaridiaSnail_D002 +0xa3d07e MaridiaSnail_D07E +0xa3d0f8 MaridiaSnail_Func_10 +0xa3d10d MaridiaSnail_Func_11 +0xa3d124 MaridiaSnail_Func_12 +0xa3d14c MaridiaSnail_Func_13 +0xa3d164 MaridiaSnail_Func_14 +0xa3d1b3 MaridiaSnail_Func_15 +0xa3d2fa MaridiaSnail_Func_16 +0xa3d315 MaridiaSnail_Func_17 +0xa3d33e MaridiaSnail_Func_18 +0xa3d356 MaridiaSnail_Func_19 +0xa3d3b0 MaridiaSnail_Touch +0xa3d421 MaridiaSnail_Func_20 +0xa3d446 MaridiaSnail_Func_21 +0xa3d469 MaridiaSnail_Shot +0xa3d49f MaridiaSnail_Func_22 +0xa3d557 MaridiaSnail_Func_23 +0xa3d5ac kMaridiaSnail_Sprmap_D5AC +0xa3d5b8 kMaridiaSnail_Sprmap_D5B8 +0xa3d5c4 kMaridiaSnail_Sprmap_D5C4 +0xa3d5d0 kMaridiaSnail_Sprmap_D5D0 +0xa3d5dc kMaridiaSnail_Sprmap_D5DC +0xa3d5e8 kMaridiaSnail_Sprmap_D5E8 +0xa3d5f4 kMaridiaSnail_Sprmap_D5F4 +0xa3d600 kMaridiaSnail_Sprmap_D600 +0xa3d60c kMaridiaSnail_Sprmap_D60C +0xa3d618 kMaridiaSnail_Sprmap_D618 +0xa3d624 kMaridiaSnail_Sprmap_D624 +0xa3d630 kMaridiaSnail_Sprmap_D630 +0xa3d63c kMaridiaSnail_Sprmap_D63C +0xa3d648 kMaridiaSnail_Sprmap_D648 +0xa3d654 kMaridiaSnail_Sprmap_D654 +0xa3d660 kMaridiaSnail_Sprmap_D660 +0xa3d66c kMaridiaSnail_Sprmap_D66C +0xa3d678 kMaridiaSnail_Sprmap_D678 +0xa3d684 kMaridiaSnail_Sprmap_D684 +0xa3d690 kMaridiaSnail_Sprmap_D690 +0xa3d69c kMaridiaSnail_Sprmap_D69C +0xa3d6a8 kMaridiaSnail_Sprmap_D6A8 +0xa3d6b4 kMaridiaSnail_Sprmap_D6B4 +0xa3d6c0 kMaridiaSnail_Sprmap_D6C0 +0xa3d6cc kMaridiaSnail_Sprmap_D6CC +0xa3d6d8 kMaridiaSnail_Sprmap_D6D8 +0xa3d6df kMaridiaSnail_Sprmap_D6DF +0xa3d6eb kMaridiaSnail_Sprmap_D6EB +0xa3d6f2 kMaridiaSnail_Sprmap_D6F2 +0xa3d6fe kMaridiaSnail_Sprmap_D6FE +0xa3d705 kMaridiaSnail_Sprmap_D705 +0xa3d711 kMaridiaSnail_Sprmap_D711 +0xa3d718 kMaridiaSnail_Sprmap_D718 +0xa3d724 kMaridiaSnail_Sprmap_D724 +0xa3d730 kMaridiaSnail_Sprmap_D730 +0xa3d73c kMaridiaSnail_Sprmap_D73C +0xa3d748 kMaridiaSnail_Sprmap_D748 +0xa3d754 kMaridiaSnail_Sprmap_D754 +0xa3d760 kMaridiaSnail_Sprmap_D760 +0xa3d76c kMaridiaSnail_Sprmap_D76C +0xa3d778 kMaridiaSnail_Sprmap_D778 +0xa3d784 kMaridiaSnail_Sprmap_D784 +0xa3d790 kMaridiaSnail_Sprmap_D790 +0xa3d79c kMaridiaSnail_Sprmap_D79C +0xa3d7a8 kMaridiaSnail_Sprmap_D7A8 +0xa3d7b4 kMaridiaSnail_Sprmap_D7B4 +0xa3d7c0 kMaridiaSnail_Sprmap_D7C0 +0xa3d7cc kMaridiaSnail_Sprmap_D7CC +0xa3d7d8 kMaridiaSnail_Sprmap_D7D8 +0xa3d7e4 kMaridiaSnail_Sprmap_D7E4 +0xa3d7f0 kMaridiaSnail_Sprmap_D7F0 +0xa3d7fc kMaridiaSnail_Sprmap_D7FC +0xa3d808 kMaridiaSnail_Sprmap_D808 +0xa3d814 kMaridiaSnail_Sprmap_D814 +0xa3d820 kMaridiaSnail_Sprmap_D820 +0xa3d82c kMaridiaSnail_Sprmap_D82C +0xa3d838 kMaridiaSnail_Sprmap_D838 +0xa3d844 kMaridiaSnail_Sprmap_D844 +0xa3d84b kMaridiaSnail_Sprmap_D84B +0xa3d857 kMaridiaSnail_Sprmap_D857 +0xa3d85e kMaridiaSnail_Sprmap_D85E +0xa3d86a kMaridiaSnail_Sprmap_D86A +0xa3d871 kMaridiaSnail_Sprmap_D871 +0xa3d87d kMaridiaSnail_Sprmap_D87D +0xa3d884 kMaridiaSnail_Sprmap_D884 +0xa3d890 kMaridiaSnail_Sprmap_D890 +0xa3d89c kMaridiaSnail_Sprmap_D89C +0xa3d8a8 kMaridiaSnail_Sprmap_D8A8 +0xa3d8b4 kMaridiaSnail_Sprmap_D8B4 +0xa3d8c0 kMaridiaSnail_Sprmap_D8C0 +0xa3d8cc kMaridiaSnail_Sprmap_D8CC +0xa3d8d8 kMaridiaSnail_Sprmap_D8D8 +0xa3d8e4 kMaridiaSnail_Sprmap_D8E4 +0xa3d8f0 kMaridiaSnail_Sprmap_D8F0 +0xa3d8fc kMaridiaSnail_Sprmap_D8FC +0xa3d908 kMaridiaSnail_Sprmap_D908 +0xa3d914 kMaridiaSnail_Sprmap_D914 +0xa3d920 kMaridiaSnail_Sprmap_D920 +0xa3d92c kMaridiaSnail_Sprmap_D92C +0xa3d938 kMaridiaSnail_Sprmap_D938 +0xa3d944 kMaridiaSnail_Sprmap_D944 +0xa3d94b kMaridiaSnail_Sprmap_D94B +0xa3d957 kMaridiaSnail_Sprmap_D957 +0xa3d95e kMaridiaSnail_Sprmap_D95E +0xa3d96a kMaridiaSnail_Sprmap_D96A +0xa3d971 kMaridiaSnail_Sprmap_D971 +0xa3d97d kMaridiaSnail_Sprmap_D97D +0xa3d984 kMaridiaSnail_Sprmap_D984 +0xa3d990 kMaridiaSnail_Sprmap_D990 +0xa3d99c kMaridiaSnail_Sprmap_D99C +0xa3d9a8 kMaridiaSnail_Sprmap_D9A8 +0xa3d9b4 kMaridiaSnail_Sprmap_D9B4 +0xa3d9c0 kMaridiaSnail_Sprmap_D9C0 +0xa3d9cc kMaridiaSnail_Sprmap_D9CC +0xa3d9d8 kMaridiaSnail_Sprmap_D9D8 +0xa3d9e4 kMaridiaSnail_Sprmap_D9E4 +0xa3d9f0 kMaridiaSnail_Sprmap_D9F0 +0xa3d9fc kMaridiaSnail_Sprmap_D9FC +0xa3da08 kMaridiaSnail_Sprmap_DA08 +0xa3da14 kMaridiaSnail_Sprmap_DA14 +0xa3da20 kMaridiaSnail_Sprmap_DA20 +0xa3da2c kMaridiaSnail_Sprmap_DA2C +0xa3da38 kMaridiaSnail_Sprmap_DA38 +0xa3da44 kMaridiaSnail_Sprmap_DA44 +0xa3da50 kMaridiaSnail_Sprmap_DA50 +0xa3da57 kMaridiaSnail_Sprmap_DA57 +0xa3da63 kMaridiaSnail_Sprmap_DA63 +0xa3da6a kMaridiaSnail_Sprmap_DA6A +0xa3da76 kMaridiaSnail_Sprmap_DA76 +0xa3da7d kMaridiaSnail_Sprmap_DA7D +0xa3da89 kMaridiaSnail_Sprmap_DA89 +0xa3da90 kMaridiaSnail_Sprmap_DA90 +0xa3da9c kReflec_Palette +0xa3db0c Reflec_Func_1 +0xa3db4c kReflec_Ilist_DB4C +0xa3db58 kReflec_Ilist_DB58 +0xa3db64 kReflec_Ilist_DB64 +0xa3db6e kReflec_Ilist_DB6E +0xa3db78 kReflec_Ilist_DB78 +0xa3db82 kReflec_Ilist_DB82 +0xa3db8c kReflec_Ilist_DB8C +0xa3db96 kReflec_Ilist_DB96 +0xa3dba0 kReflec_Ilist_DBA0 +0xa3dbaa kReflec_Ilist_DBAA +0xa3dbb4 kReflec_Ilist_DBB4 +0xa3dbbe kReflec_Ilist_DBBE +0xa3dbc8 Reflec_Instr_1 +0xa3dbd3 Reflec_Init +0xa3dc1b nullsub_33 +0xa3dc1c Reflec_Shot +0xa3ddae Reflec_Func_2 +0xa3ddcf Reflec_Func_3 +0xa3ddf0 Reflec_Func_4 +0xa3de0d Reflec_Func_5 +0xa3de2a Reflec_Func_6 +0xa3de47 Reflec_Func_7 +0xa3de64 Reflec_Func_8 +0xa3de85 Reflec_Func_9 +0xa3dea6 Reflec_Func_10 +0xa3dec3 Reflec_Func_11 +0xa3dee0 Reflec_Func_12 +0xa3defd Reflec_Func_13 +0xa3df1a kReflec_Sprmap_DF1A +0xa3df2b kReflec_Sprmap_DF2B +0xa3df3c kReflec_Sprmap_DF3C +0xa3df4d kReflec_Sprmap_DF4D +0xa3df5e kReflec_Sprmap_DF5E +0xa3df6f kReflec_Sprmap_DF6F +0xa3df80 kReflec_Sprmap_DF80 +0xa3df91 kReflec_Sprmap_DF91 +0xa3dfa2 kWreckedShipOrangeZoomer_Palette +0xa3dfc2 WreckedShipOrangeZoomer_Func_1 +0xa3dfcb kWreckedShipOrangeZoomer_Ilist_DFCB +0xa3dfcf kWreckedShipOrangeZoomer_Ilist_DFCF +0xa3dfe7 kWreckedShipOrangeZoomer_Ilist_DFE7 +0xa3dfeb kWreckedShipOrangeZoomer_Ilist_DFEB +0xa3e003 kWreckedShipOrangeZoomer_Ilist_E003 +0xa3e007 kWreckedShipOrangeZoomer_Ilist_E007 +0xa3e01f kWreckedShipOrangeZoomer_Ilist_E01F +0xa3e023 kWreckedShipOrangeZoomer_Ilist_E023 +0xa3e043 WreckedShipOrangeZoomer_Init +0xa3e08a nullsub_343 +0xa3e08b WreckedShipOrangeZoomer_Main +0xa3e091 WreckedShipOrangeZoomer_Func_2 +0xa3e23c kBigEyeBugs_Palette +0xa3e25c kBigEyeBugs_Ilist_E25C +0xa3e260 kBigEyeBugs_Ilist_E260 +0xa3e278 kBigEyeBugs_Ilist_E278 +0xa3e27c kBigEyeBugs_Ilist_E27C +0xa3e294 kBigEyeBugs_Ilist_E294 +0xa3e298 kBigEyeBugs_Ilist_E298 +0xa3e2b0 kBigEyeBugs_Ilist_E2B0 +0xa3e2b4 kBigEyeBugs_Ilist_E2B4 +0xa3e2d4 BigEyeBugs_Init +0xa3e2e8 kWreckedShipOrangeZoomer_Sprmap_E2E8 +0xa3e2fe kWreckedShipOrangeZoomer_Sprmap_E2FE +0xa3e314 kWreckedShipOrangeZoomer_Sprmap_E314 +0xa3e32a kWreckedShipOrangeZoomer_Sprmap_E32A +0xa3e340 kWreckedShipOrangeZoomer_Sprmap_E340 +0xa3e356 kBigEyeBugs_Sprmap_E356 +0xa3e36c kBigEyeBugs_Sprmap_E36C +0xa3e382 kBigEyeBugs_Sprmap_E382 +0xa3e398 kBigEyeBugs_Sprmap_E398 +0xa3e3ae kBigEyeBugs_Sprmap_E3AE +0xa3e3c4 kWreckedShipOrangeZoomer_Sprmap_E3C4 +0xa3e3da kWreckedShipOrangeZoomer_Sprmap_E3DA +0xa3e3f0 kWreckedShipOrangeZoomer_Sprmap_E3F0 +0xa3e406 kWreckedShipOrangeZoomer_Sprmap_E406 +0xa3e41c kWreckedShipOrangeZoomer_Sprmap_E41C +0xa3e432 kWreckedShipOrangeZoomer_Sprmap_E432 +0xa3e448 kWreckedShipOrangeZoomer_Sprmap_E448 +0xa3e45e kWreckedShipOrangeZoomer_Sprmap_E45E +0xa3e474 kWreckedShipOrangeZoomer_Sprmap_E474 +0xa3e48a kWreckedShipOrangeZoomer_Sprmap_E48A +0xa3e4a0 kBigEyeBugs_Sprmap_E4A0 +0xa3e4b6 kBigEyeBugs_Sprmap_E4B6 +0xa3e4cc kBigEyeBugs_Sprmap_E4CC +0xa3e4e2 kBigEyeBugs_Sprmap_E4E2 +0xa3e4f8 kBigEyeBugs_Sprmap_E4F8 +0xa3e50e kWreckedShipOrangeZoomer_Sprmap_E50E +0xa3e524 kWreckedShipOrangeZoomer_Sprmap_E524 +0xa3e53a kWreckedShipOrangeZoomer_Sprmap_E53A +0xa3e550 kWreckedShipOrangeZoomer_Sprmap_E550 +0xa3e566 kWreckedShipOrangeZoomer_Sprmap_E566 +0xa3e57c kFireZoomer_Palette +0xa3e59c FireZoomer_Init +0xa3e5b0 kStoneZoomer_Palette_0 +0xa3e5d0 kStoneZoomer_Palette_1 +0xa3e660 Zoomer_Instr_SetPreinstr +0xa3e669 StoneZoomer_Init +0xa3e67a StoneZoomer_E67A +0xa3e6c1 nullsub_304 +0xa3e6c2 StoneZoomer_Main +0xa3e6c8 FireZoomer_Func_1 +0xa3e785 FireZoomer_Func_2 +0xa3e7f2 FireZoomer_Func_3 +0xa3e8a5 FireZoomer_E8A5 +0xa3e9af kMetroid_Palette +0xa3e9cf kMetroid_Ilist_E9CF +0xa3ea25 kMetroid_Ilist_EA25 +0xa3ea4f Metroid_Init +0xa3eaa5 Metroid_Instr_2 +0xa3eab1 Metroid_Instr_1 +0xa3eae6 Metroid_Frozen +0xa3eb33 Metroid_Hurt +0xa3eb98 Metroid_Main +0xa3ec11 Metroid_Func_1 +0xa3ecdc Metroid_Func_2 +0xa3ed8f Metroid_Func_3 +0xa3edab Metroid_Func_4 +0xa3edeb Metroid_Touch +0xa3eece Metroid_Func_5 +0xa3ef07 Metroid_Shot +0xa3f042 Metroid_Powerbomb +0xa3f071 kMetroid_Sprmap_F071 +0xa3f0a5 kMetroid_Sprmap_F0A5 +0xa3f0d9 kMetroid_Sprmap_F0D9 +0xa3f10d kMetroid_Sprmap_F10D +0xa3f137 kMetroid_Sprmap_F137 +0xa3f157 kMetroid_Sprmap_F157 +0xa3f181 kMetroid_Sprmap_F181 +0xa3f1ab kMetroid_Sprmap_F1AB +0xa3f1bc kMetroid_Sprmap_F1BC +0xa3f1cd kMetroid_Sprmap_F1CD +0xa3f1de kMetroid_Sprmap_F1DE +0xa3f1f4 kMetroid_Sprmap_F1F4 +0xa3f20a kMetroid_Sprmap_F20A +0xa3f220 kMetroid_Sprmap_F220 +0xa3f231 kMetroid_Sprmap_F231 +0xa3f242 kMetroid_Sprmap_F242 +0xa3f253 kMetroid_Sprmap_F253 +0xa3f269 kMetroid_Sprmap_F269 +0xa3f27f kMetroid_Sprmap_F27F +0xa3f295 kMetroid_Sprmap_F295 +0xa3f2a1 kMetroid_Sprmap_F2A1 +0xa3f2a8 kMetroid_Sprmap_F2A8 +0xa3f2b4 kMetroid_Sprmap_F2B4 +0xa3f2c0 kMetroid_Sprmap_F2C0 +0xa3f2cc kMetroid_Sprmap_F2CC +0xa3f2d8 kMetroid_Sprmap_F2D8 +0xa3f2e4 kMetroid_Sprmap_F2E4 +0xa3f2f0 kMetroid_Sprmap_F2F0 +0xa3f2fc kMetroid_Sprmap_F2FC +0xa3f303 kMetroid_Sprmap_F303 +0xa3f30a kMetroid_Sprmap_F30A +0xa48000 Enemy_GrappleReact_NoInteract_A4 +0xa48005 Enemy_GrappleReact_SamusLatchesOn_A4 +0xa4800a Enemy_GrappleReact_KillEnemy_A4 +0xa4800f Enemy_GrappleReact_CancelBeam_A4 +0xa48014 Enemy_GrappleReact_SamusLatchesNoInvinc_A4 +0xa48019 Enemy_GrappleReact_SamusLatchesParalyze_A4 +0xa4801e Enemy_GrappleReact_HurtSamus_A4 +0xa48023 Enemy_NormalTouchAI_A4 +0xa48028 Enemy_NormalTouchAI_SkipDeathAnim_A4 +0xa4802d Enemy_NormalShotAI_A4 +0xa48032 Enemy_NormalShotAI_SkipSomeParts_A4 +0xa48037 Enemy_NormalPowerBombAI_A4 +0xa4803c Enemy_NormalPowerBombAI_SkipDeathAnim_A4 +0xa48041 Enemy_NormalFrozenAI_A4 +0xa48046 CreateADudShot_A4 +0xa4804b nullsub_169_A4 +0xa4804c nullsub_170_A4 +0xa4804d kSpritemap_Nothing_A4 +0xa4804f kExtendedSpritemap_Nothing_A4 +0xa48059 word8059_A4 +0xa48069 sub8069_A4 +0xa4806b Enemy_SetAiPreInstr_A4 +0xa48074 Enemy_ClearAiPreInstr_A4 +0xa4807b nullsub_171_A4 +0xa4807c EnemyInstr_StopScript_A4 +0xa4808a EnemyInstr_Call_A4 +0xa48097 loc8097_A4 +0xa4809c EnemyInstr_CallWithArg_A4 +0xa480ac loc80AC_A4 +0xa480b5 EnemyInstr_CallFar_A4 +0xa480cb loc80CB_A4 +0xa480ce EnemyInstr_CallFarWithArg_A4 +0xa480ea loc80EA_A4 +0xa480ed EnemyInstr_Goto_A4 +0xa480f2 EnemyInstr_GotoRel_A4 +0xa48100 loc8100_A4 +0xa48103 loc8103_A4 +0xa48108 EnemyInstr_DecTimerAndGoto_A4 +0xa48110 EnemyInstr_DecTimerAndGoto2_A4 +0xa48118 EnemyInstr_DecTimerAndGotoRel_A4 +0xa48123 EnemyInstr_SetTimer_A4 +0xa4812c EnemyInstr_Skip2bytes_A4 +0xa4812f EnemyInstr_Sleep_A4 +0xa4813a EnemyInstr_WaitNframes_A4 +0xa4814b EnemyInstr_CopyToVram_A4 +0xa48173 EnemyInstr_EnableOffScreenProcessing_A4 +0xa4817d EnemyInstr_DisableOffScreenProcessing_A4 +0xa48187 kCommonEnemySpeeds_Linear_A4 +0xa4838f kCommonEnemySpeeds_Quadratic_A4 +0xa48687 Crocomire_Hurt +0xa486a6 Crocomire_Instr_1 +0xa486dd nullsub_216 +0xa486de Crocomire_Func_2 +0xa486e8 Crocomire_Func_3 +0xa486f2 Crocomire_Func_4 +0xa48717 Crocomire_Func_5 +0xa48752 Crocomire_Instr_14 +0xa4876c Crocomire_Func_7 +0xa487b2 Crocomire_Func_8 +0xa487ca Crocomire_Func_9 +0xa487e9 Crocomire_Func_10 +0xa487fb Crocomire_Func_11 +0xa48805 Crocomire_Func_12 +0xa48812 Crocomire_Func_13 +0xa48836 Crocomire_Func_14 +0xa4885a Crocomire_Func_15 +0xa4887e Crocomire_Func_16 +0xa4889a Crocomire_Func_17 +0xa488d2 Crocomire_Func_18 +0xa488ee Crocomire_Func_19 +0xa4890b Crocomire_Func_20 +0xa4891b Crocomire_Func_21 +0xa48940 Crocomire_Func_22 +0xa4895e Crocomire_Func_23 +0xa489a8 Crocomire_Func_24 +0xa489de Crocomire_Func_25 +0xa489f9 Crocomire_Func_26 +0xa48a5a Crocomire_Init +0xa48b5b Crocomire_Func_27 +0xa48ba4 Crocomire_8BA4 +0xa48c04 Crocomire_Main +0xa48c6e Crocomire_Func_28 +0xa48c8f nullsub_305 +0xa48c90 Crocomire_Func_29 +0xa48c95 Crocomire_Func_30 +0xa48ccb Crocomire_Func_31 +0xa48cfb Crocomire_Instr_11 +0xa48d07 Crocomire_Instr_7 +0xa48d13 Crocomire_Instr_19 +0xa48d1f Crocomire_Func_35 +0xa48d3f Crocomire_Func_36 +0xa48d47 Crocomire_8D47 +0xa48d5e Crocomire_Func_37 +0xa48ee5 Crocomire_8EE5 +0xa48fc2 Crocomire_Func_38 +0xa48fc7 Crocomire_Instr_2 +0xa48fdf Crocomire_Instr_4 +0xa48ffa Crocomire_Instr_3 +0xa48fff Crocomire_Instr_15 +0xa49004 Crocomire_Func_43 +0xa4901d Crocomire_Instr_16 +0xa4905b Crocomire_Instr_13 +0xa4907f Crocomire_Instr_18 +0xa4908f Crocomire_Instr_12 +0xa49094 Crocomire_Instr_17 +0xa49099 Crocomire_Func_49 +0xa490df Crocomire_Func_50 +0xa49108 Crocomire_Func_51 +0xa49136 Crocomire_Func_52 +0xa4916c Crocomire_Func_53 +0xa491ba Crocomire_Func_54 +0xa491c1 Crocomire_Func_55 +0xa4926e Crocomire_Func_56 +0xa4929e Crocomire_929E +0xa492ce Crocomire_92CE +0xa492d8 Crocomire_92D8 +0xa49341 Crocomire_Func_57 +0xa493be Crocomire_93BE +0xa493df Crocomire_Func_58 +0xa493ed Crocomire_Func_59 +0xa4943c nullsub_309 +0xa4943d Crocomire_Func_60 +0xa494b2 Crocomire_Func_61 +0xa494b6 Crocomire_Func_62 +0xa494fb Crocomire_Func_64 +0xa49506 Crocomire_9506 +0xa4950f Crocomire_950F +0xa49576 Crocomire_Func_63 +0xa49580 Crocomire_Func_65 +0xa49653 Crocomire_Func_66 +0xa49697 kCrocoVlineRandomPos +0xa496c8 Crocomire_Func_67 +0xa497d3 Crocomire_Func_68 +0xa49830 Crocomire_Func_69 +0xa49859 Crocomire_Func_70 +0xa4990a Crocomire_Func_71 +0xa499e5 Crocomire_Func_72 +0xa49a38 Crocomire_Func_73 +0xa49a9b Crocomire_Instr_8 +0xa49aa0 Crocomire_Instr_6 +0xa49aa5 Crocomire_Instr_9 +0xa49aaa Crocomire_Instr_5 +0xa49aaf Crocomire_Instr_20 +0xa49ab4 Crocomire_Instr_21 +0xa49ab9 Crocomire_Instr_22 +0xa49abe Crocomire_Instr_23 +0xa49ac3 Crocomire_Instr_24 +0xa49ac8 Crocomire_Instr_10 +0xa49acd Crocomire_Instr_25 +0xa49ad2 Crocomire_Instr_26 +0xa49ad7 Crocomire_Instr_27 +0xa49ada Crocomire_Func_87 +0xa49b06 Crocomire_Func_88 +0xa49b65 Crocomire_9B65 +0xa49b7b Crocomire_Func_89 +0xa49b7d Crocomire_Func_90 +0xa49b86 Crocomire_9B86 +0xa49bb3 Crocomire_9BB3 +0xa49bba Crocomire_Func_91 +0xa4a07d kCrocomireMeltingTiles +0xa4b87d kCrocomire_Palette +0xa4b93d Crocomire_Func_92 +0xa4b950 nullsub_34 +0xa4b951 Crocomire_Func_93 +0xa4b968 Crocomire_Func_94 +0xa4b992 Crocomire_Powerbomb +0xa4ba05 Crocomire_Func_95 +0xa4bab4 Crocomire_Func_1 +0xa4bade kCrocomire_Ilist_BADE +0xa4bae8 kCrocomire_Ilist_BAE8 +0xa4baea kCrocomire_Ilist_BAEA +0xa4baf0 kCrocomire_Ilist_BAF0 +0xa4bb36 kCrocomire_Ilist_BB36 +0xa4bb94 kCrocomire_Ilist_BB94 +0xa4bbae kCrocomire_Ilist_BBAE +0xa4bbca kCrocomire_Ilist_BBCA +0xa4bbce kCrocomire_Ilist_BBCE +0xa4bc30 kCrocomire_Ilist_BC30 +0xa4bc34 kCrocomire_Ilist_BC34 +0xa4bc56 kCrocomire_Ilist_BC56 +0xa4bcd8 kCrocomire_Ilist_BCD8 +0xa4bd2a kCrocomire_Ilist_BD2A +0xa4bd8e kCrocomire_Ilist_BD8E +0xa4bda2 kCrocomire_Ilist_BDA2 +0xa4bdae kCrocomire_Ilist_BDAE +0xa4bdb2 kCrocomire_Ilist_BDB2 +0xa4bdb6 kCrocomire_Ilist_BDB6 +0xa4be56 kCrocomire_Ilist_BE56 +0xa4be6a kCrocomire_Ilist_BE6A +0xa4be7e kCrocomire_Ilist_BE7E +0xa4beec kCrocomire_Ilist_BEEC +0xa4bf3c kCrocomire_Ilist_BF3C +0xa4bf62 kCrocomire_Ilist_BF62 +0xa4bf64 kCrocomire_Ilist_BF64 +0xa4bf6c kCrocomire_Ilist_BF6C +0xa4bf72 kCrocomire_Ilist_BF72 +0xa4bf78 kCrocomire_Ilist_BF78 +0xa4bf7e kCrocomire_Ilist_BF7E +0xa4bf86 kCrocomire_Ilist_BF86 +0xa4bf8c kCrocomire_Ilist_BF8C +0xa4bf92 kCrocomire_Ilist_BF92 +0xa4bf98 kCrocomire_Ilist_BF98 +0xa4bfb0 kCrocomire_Ilist_BFB0 +0xa4bfc4 kCrocomire_ExtSprmap_BFC4 +0xa4bff6 kCrocomire_ExtSprmap_BFF6 +0xa4c028 kCrocomire_ExtSprmap_C028 +0xa4c05a kCrocomire_ExtSprmap_C05A +0xa4c08c kCrocomire_ExtSprmap_C08C +0xa4c0be kCrocomire_ExtSprmap_C0BE +0xa4c0f0 kCrocomire_ExtSprmap_C0F0 +0xa4c122 kCrocomire_ExtSprmap_C122 +0xa4c154 kCrocomire_ExtSprmap_C154 +0xa4c186 kCrocomire_ExtSprmap_C186 +0xa4c1b8 kCrocomire_ExtSprmap_C1B8 +0xa4c1ea kCrocomire_ExtSprmap_C1EA +0xa4c2ec kCrocomire_ExtSprmap_C2EC +0xa4c326 kCrocomire_ExtSprmap_C326 +0xa4c360 kCrocomire_ExtSprmap_C360 +0xa4c39a kCrocomire_ExtSprmap_C39A +0xa4c3d4 kCrocomire_ExtSprmap_C3D4 +0xa4c40e kCrocomire_ExtSprmap_C40E +0xa4c448 kCrocomire_ExtSprmap_C448 +0xa4c47a kCrocomire_ExtSprmap_C47A +0xa4c4ac kCrocomire_ExtSprmap_C4AC +0xa4c4de kCrocomire_ExtSprmap_C4DE +0xa4c510 kCrocomire_ExtSprmap_C510 +0xa4c542 kCrocomire_ExtSprmap_C542 +0xa4c574 kCrocomire_ExtSprmap_C574 +0xa4c5ae kCrocomire_ExtSprmap_C5AE +0xa4c5e8 kCrocomire_ExtSprmap_C5E8 +0xa4c65e kCrocomire_ExtSprmap_C65E +0xa4c668 kCrocomire_ExtSprmap_C668 +0xa4c672 kCrocomire_ExtSprmap_C672 +0xa4c67c kCrocomire_ExtSprmap_C67C +0xa4c6a4 kCrocomire_ExtSprmap_C6A4 +0xa4c6de kCrocomire_ExtSprmap_C6DE +0xa4c718 kCrocomire_ExtSprmap_C718 +0xa4c752 kCrocomire_ExtSprmap_C752 +0xa4c78c kCrocomire_ExtSprmap_C78C +0xa4c7c6 kCrocomire_ExtSprmap_C7C6 +0xa4c800 kCrocomire_ExtSprmap_C800 +0xa4c83a kCrocomire_ExtSprmap_C83A +0xa4c874 kCrocomire_ExtSprmap_C874 +0xa4c8ae kCrocomire_ExtSprmap_C8AE +0xa4c8e8 kCrocomire_ExtSprmap_C8E8 +0xa4c922 kCrocomire_ExtSprmap_C922 +0xa4c95c kCrocomire_ExtSprmap_C95C +0xa4c996 kCrocomire_ExtSprmap_C996 +0xa4c9d0 kCrocomire_ExtSprmap_C9D0 +0xa4ca0a kCrocomire_ExtSprmap_CA0A +0xa4ca44 kCrocomire_ExtSprmap_CA44 +0xa4ca7e kCrocomire_ExtSprmap_CA7E +0xa4ca88 kCrocomire_ExtSprmap_CA88 +0xa4ca92 kCrocomire_ExtSprmap_CA92 +0xa4ca9c kCrocomire_ExtSprmap_CA9C +0xa4caa6 kCrocomire_ExtSprmap_CAA6 +0xa4cab0 kCrocomire_ExtSprmap_CAB0 +0xa4caba kCrocomire_ExtSprmap_CABA +0xa4cac4 kCrocomire_ExtSprmap_CAC4 +0xa4cace kCrocomire_ExtSprmap_CACE +0xa4cad8 kCrocomire_ExtSprmap_CAD8 +0xa4cae2 kCrocomire_ExtSprmap_CAE2 +0xa4caec kCrocomire_ExtSprmap_CAEC +0xa4caf6 kCrocomire_ExtSprmap_CAF6 +0xa4cb00 nullsub_217 +0xa4cb01 GetCurEnemyIndex +0xa4cc3d kCrocomire_Sprmap_CC3D +0xa4cc94 kCrocomire_Sprmap_CC94 +0xa4cceb kCrocomire_Sprmap_CCEB +0xa4cd1f kCrocomire_Sprmap_CD1F +0xa4cd53 kCrocomire_Sprmap_CD53 +0xa4cda0 kCrocomire_Sprmap_CDA0 +0xa4cded kCrocomire_Sprmap_CDED +0xa4cdf9 kCrocomire_Sprmap_CDF9 +0xa4ce05 kCrocomire_Sprmap_CE05 +0xa4ce0c kCrocomire_Sprmap_CE0C +0xa4ce13 kCrocomire_Sprmap_CE13 +0xa4ce1a kCrocomire_Sprmap_CE1A +0xa4ce21 kCrocomire_Sprmap_CE21 +0xa4ce28 kCrocomire_Sprmap_CE28 +0xa4ce2f kCrocomire_Sprmap_CE2F +0xa4ce3b kCrocomire_Sprmap_CE3B +0xa4ce4c kCrocomire_Sprmap_CE4C +0xa4ce67 kCrocomire_Sprmap_CE67 +0xa4ce7d kCrocomire_Sprmap_CE7D +0xa4ce84 kCrocomire_Sprmap_CE84 +0xa4ce8b kCrocomire_Sprmap_CE8B +0xa4ce92 kCrocomire_Sprmap_CE92 +0xa4cec1 kCrocomire_Sprmap_CEC1 +0xa4cef0 kCrocomire_Sprmap_CEF0 +0xa4cf15 kCrocomire_Sprmap_CF15 +0xa4cf44 kCrocomire_Sprmap_CF44 +0xa4cf69 kCrocomire_Sprmap_CF69 +0xa4cf93 kCrocomire_Sprmap_CF93 +0xa4cfbd kCrocomire_Sprmap_CFBD +0xa4cfe7 kCrocomire_Sprmap_CFE7 +0xa4d011 kCrocomire_Sprmap_D011 +0xa4d03b kCrocomire_Sprmap_D03B +0xa4d065 kCrocomire_Sprmap_D065 +0xa4d08f kCrocomire_Sprmap_D08F +0xa4d0b9 kCrocomire_Sprmap_D0B9 +0xa4d0e3 kCrocomire_Sprmap_D0E3 +0xa4d10d kCrocomire_Sprmap_D10D +0xa4d137 kCrocomire_Sprmap_D137 +0xa4d161 kCrocomire_Sprmap_D161 +0xa4d18b kCrocomire_Sprmap_D18B +0xa4d1b5 kCrocomire_Sprmap_D1B5 +0xa4d1df kCrocomire_Sprmap_D1DF +0xa4d209 kCrocomire_Sprmap_D209 +0xa4d238 kCrocomire_Sprmap_D238 +0xa4d267 kCrocomire_Sprmap_D267 +0xa4d28c kCrocomire_Sprmap_D28C +0xa4d2bb kCrocomire_Sprmap_D2BB +0xa4d2e0 kCrocomire_Sprmap_D2E0 +0xa4d30f kCrocomire_Sprmap_D30F +0xa4d334 kCrocomire_Sprmap_D334 +0xa4d363 kCrocomire_Sprmap_D363 +0xa4d388 kCrocomire_Sprmap_D388 +0xa4d3b7 kCrocomire_Sprmap_D3B7 +0xa4d3e6 kCrocomire_Sprmap_D3E6 +0xa4d3fc kCrocomire_Sprmap_D3FC +0xa4d412 kCrocomire_Sprmap_D412 +0xa4d428 kCrocomire_Sprmap_D428 +0xa4d43e kCrocomire_Sprmap_D43E +0xa4d454 kCrocomire_Sprmap_D454 +0xa4d465 kCrocomire_Sprmap_D465 +0xa4d47b kCrocomire_Sprmap_D47B +0xa4d48c kCrocomire_Sprmap_D48C +0xa4d493 kCrocomire_Sprmap_D493 +0xa4d4b3 kCrocomire_Sprmap_D4B3 +0xa4d4d3 kCrocomire_Sprmap_D4D3 +0xa4d4f3 kCrocomire_Sprmap_D4F3 +0xa4d509 kCrocomire_Sprmap_D509 +0xa4d515 kCrocomire_Sprmap_D515 +0xa4d51c kCrocomire_BigSprmap_D51C +0xa4d600 kCrocomire_BigSprmap_D600 +0xa4d6da kCrocomire_BigSprmap_D6DA +0xa4d7b6 kCrocomire_BigSprmap_D7B6 +0xa4d7ea kCrocomire_BigSprmap_D7EA +0xa4d81e kCrocomire_BigSprmap_D81E +0xa4d852 kCrocomire_BigSprmap_D852 +0xa4d876 kCrocomire_BigSprmap_D876 +0xa4d89a kCrocomire_BigSprmap_D89A +0xa4d8be kCrocomire_BigSprmap_D8BE +0xa4da4a kCrocomire_BigSprmap_DA4A +0xa4db04 kCrocomire_Sprmap_DB04 +0xa4db79 kCrocomire_Sprmap_DB79 +0xa4dc25 kCrocomire_Sprmap_DC25 +0xa4dd08 kCrocomire_Sprmap_DD08 +0xa4de1d kCrocomire_Sprmap_DE1D +0xa4de97 kCrocomire_Sprmap_DE97 +0xa4df48 kCrocomire_Sprmap_DF48 +0xa4e030 kCrocomire_Sprmap_E030 +0xa4e14a kCrocomire_Ilist_E14A +0xa4e158 kCrocomire_Ilist_E158 +0xa4e1cc kCrocomire_Ilist_E1CC +0xa4e1d2 kCrocomire_Ilist_E1D2 +0xa4e1fe kCrocomire_ExtSprmap_E1FE +0xa4e228 kCrocomire_ExtSprmap_E228 +0xa4e252 kCrocomire_ExtSprmap_E252 +0xa4e27c kCrocomire_ExtSprmap_E27C +0xa4e2a6 kCrocomire_ExtSprmap_E2A6 +0xa4e2d0 kCrocomire_ExtSprmap_E2D0 +0xa4e2fa kCrocomire_ExtSprmap_E2FA +0xa4e324 kCrocomire_ExtSprmap_E324 +0xa4e34e kCrocomire_ExtSprmap_E34E +0xa4e378 kCrocomire_ExtSprmap_E378 +0xa4e3a2 kCrocomire_ExtSprmap_E3A2 +0xa4e3cc kCrocomire_ExtSprmap_E3CC +0xa4e3f6 kCrocomire_ExtSprmap_E3F6 +0xa4e420 kCrocomire_ExtSprmap_E420 +0xa4e46a kCrocomire_ExtSprmap_E46A +0xa4e4d4 kCrocomire_ExtSprmap_E4D4 +0xa4e53e kCrocomire_ExtSprmap_E53E +0xa4e5a8 kCrocomire_ExtSprmap_E5A8 +0xa4e60a kCrocomire_ExtSprmap_E60A +0xa4e65c kCrocomire_ExtSprmap_E65C +0xa4e68e kCrocomire_ExtSprmap_E68E +0xa4e6a8 kCrocomire_ExtSprmap_E6A8 +0xa4e6b2 kCrocomire_ExtSprmap_E6B2 +0xa4e6bc kCrocomire_ExtSprmap_E6BC +0xa4e6c6 kCrocomire_ExtSprmap_E6C6 +0xa4e6d0 kCrocomire_ExtSprmap_E6D0 +0xa4e6da kCrocomire_ExtSprmap_E6DA +0xa4e6e4 kCrocomire_ExtSprmap_E6E4 +0xa4e6ee kCrocomire_ExtSprmap_E6EE +0xa4e6f8 kCrocomire_ExtSprmap_E6F8 +0xa4e702 kCrocomire_ExtSprmap_E702 +0xa4e70c kCrocomire_ExtSprmap_E70C +0xa4e716 kCrocomire_ExtSprmap_E716 +0xa4e74a kCrocomire_Sprmap_E74A +0xa4e7a1 kCrocomire_Sprmap_E7A1 +0xa4e7f8 kCrocomire_Sprmap_E7F8 +0xa4e82c kCrocomire_Sprmap_E82C +0xa4e860 kCrocomire_Sprmap_E860 +0xa4e8ad kCrocomire_Sprmap_E8AD +0xa4e8fa kCrocomire_Sprmap_E8FA +0xa4e906 kCrocomire_Sprmap_E906 +0xa4e912 kCrocomire_Sprmap_E912 +0xa4e919 kCrocomire_Sprmap_E919 +0xa4e920 kCrocomire_Sprmap_E920 +0xa4e927 kCrocomire_Sprmap_E927 +0xa4e92e kCrocomire_Sprmap_E92E +0xa4e935 kCrocomire_Sprmap_E935 +0xa4e93c kCrocomire_Sprmap_E93C +0xa4e948 kCrocomire_Sprmap_E948 +0xa4e959 kCrocomire_Sprmap_E959 +0xa4e974 kCrocomire_Sprmap_E974 +0xa4e98a kCrocomire_Sprmap_E98A +0xa4e991 kCrocomire_Sprmap_E991 +0xa4e998 kCrocomire_Sprmap_E998 +0xa4e99f kCrocomire_Sprmap_E99F +0xa4e9ce kCrocomire_Sprmap_E9CE +0xa4e9fd kCrocomire_Sprmap_E9FD +0xa4ea22 kCrocomire_Sprmap_EA22 +0xa4ea51 kCrocomire_Sprmap_EA51 +0xa4ea76 kCrocomire_Sprmap_EA76 +0xa4eaa0 kCrocomire_Sprmap_EAA0 +0xa4eaca kCrocomire_Sprmap_EACA +0xa4eaf4 kCrocomire_Sprmap_EAF4 +0xa4eb1e kCrocomire_Sprmap_EB1E +0xa4eb48 kCrocomire_Sprmap_EB48 +0xa4eb72 kCrocomire_Sprmap_EB72 +0xa4eb9c kCrocomire_Sprmap_EB9C +0xa4ebc6 kCrocomire_Sprmap_EBC6 +0xa4ebf0 kCrocomire_Sprmap_EBF0 +0xa4ec1a kCrocomire_Sprmap_EC1A +0xa4ec44 kCrocomire_Sprmap_EC44 +0xa4ec6e kCrocomire_Sprmap_EC6E +0xa4ec98 kCrocomire_Sprmap_EC98 +0xa4ecc2 kCrocomire_Sprmap_ECC2 +0xa4ecec kCrocomire_Sprmap_ECEC +0xa4ed16 kCrocomire_Sprmap_ED16 +0xa4ed45 kCrocomire_Sprmap_ED45 +0xa4ed74 kCrocomire_Sprmap_ED74 +0xa4ed99 kCrocomire_Sprmap_ED99 +0xa4edc8 kCrocomire_Sprmap_EDC8 +0xa4eded kCrocomire_Sprmap_EDED +0xa4ee1c kCrocomire_Sprmap_EE1C +0xa4ee41 kCrocomire_Sprmap_EE41 +0xa4ee70 kCrocomire_Sprmap_EE70 +0xa4ee95 kCrocomire_Sprmap_EE95 +0xa4eec4 kCrocomire_Sprmap_EEC4 +0xa4eef3 kCrocomire_Sprmap_EEF3 +0xa4ef09 kCrocomire_Sprmap_EF09 +0xa4ef1f kCrocomire_Sprmap_EF1F +0xa4ef35 kCrocomire_Sprmap_EF35 +0xa4ef4b kCrocomire_Sprmap_EF4B +0xa4ef61 kCrocomire_Sprmap_EF61 +0xa4ef72 kCrocomire_Sprmap_EF72 +0xa4ef88 kCrocomire_Sprmap_EF88 +0xa4ef99 kCrocomire_Sprmap_EF99 +0xa4efa0 kCrocomire_Sprmap_EFA0 +0xa4efc0 kCrocomire_Sprmap_EFC0 +0xa4efe0 kCrocomire_Sprmap_EFE0 +0xa4f000 kCrocomire_Sprmap_F000 +0xa4f016 kCrocomire_Sprmap_F016 +0xa4f022 kCrocomire_Sprmap_F022 +0xa4f029 kCrocomire_BigSprmap_F029 +0xa4f10d kCrocomire_BigSprmap_F10D +0xa4f1d3 kCrocomire_BigSprmap_F1D3 +0xa4f2a5 kCrocomire_BigSprmap_F2A5 +0xa4f2d9 kCrocomire_BigSprmap_F2D9 +0xa4f30d kCrocomire_BigSprmap_F30D +0xa4f341 kCrocomire_BigSprmap_F341 +0xa4f365 kCrocomire_BigSprmap_F365 +0xa4f389 kCrocomire_BigSprmap_F389 +0xa4f3ad kCrocomire_BigSprmap_F3AD +0xa4f539 kCrocomire_BigSprmap_F539 +0xa4f5f3 kCrocomire_Sprmap_F5F3 +0xa4f5fa kCrocomire_Sprmap_F5FA +0xa4f60b kCrocomire_Sprmap_F60B +0xa4f61c kCrocomire_Sprmap_F61C +0xa4f62d kCrocomire_Sprmap_F62D +0xa4f63e kCrocomire_Sprmap_F63E +0xa4f64f kCrocomire_Sprmap_F64F +0xa4f660 kCrocomire_Sprmap_F660 +0xa4f66c kCrocomire_Sprmap_F66C +0xa4f673 kCrocomire_Sprmap_F673 +0xa4f67a CrocomireTongue_Init +0xa4f6bb CrocomireTongue_Main +0xa4f6bf nullsub_218 +0xa58000 Enemy_GrappleReact_NoInteract_A5 +0xa58005 Enemy_GrappleReact_SamusLatchesOn_A5 +0xa5800a Enemy_GrappleReact_KillEnemy_A5 +0xa5800f Enemy_GrappleReact_CancelBeam_A5 +0xa58014 Enemy_GrappleReact_SamusLatchesNoInvinc_A5 +0xa58019 Enemy_GrappleReact_SamusLatchesParalyze_A5 +0xa5801e Enemy_GrappleReact_HurtSamus_A5 +0xa58023 Enemy_NormalTouchAI_A5 +0xa58028 Enemy_NormalTouchAI_SkipDeathAnim_A5 +0xa5802d Enemy_NormalShotAI_A5 +0xa58032 Enemy_NormalShotAI_SkipSomeParts_A5 +0xa58037 Enemy_NormalPowerBombAI_A5 +0xa5803c Enemy_NormalPowerBombAI_SkipDeathAnim_A5 +0xa58041 Enemy_NormalFrozenAI_A5 +0xa58046 CreateADudShot_A5 +0xa5804b nullsub_169_A5 +0xa5804c nullsub_170_A5 +0xa5804d kSpritemap_Nothing_A5 +0xa5804f kExtendedSpritemap_Nothing_A5 +0xa58059 word8059_A5 +0xa58069 kDraygonsEye_Palette +0xa5806b Enemy_SetAiPreInstr_A5 +0xa58074 Enemy_ClearAiPreInstr_A5 +0xa5807b nullsub_171_A5 +0xa5807c EnemyInstr_StopScript_A5 +0xa5808a EnemyInstr_Call_A5 +0xa58097 loc8097_A5 +0xa5809c EnemyInstr_CallWithArg_A5 +0xa580ac loc80AC_A5 +0xa580b5 EnemyInstr_CallFar_A5 +0xa580cb loc80CB_A5 +0xa580ce EnemyInstr_CallFarWithArg_A5 +0xa580ea loc80EA_A5 +0xa580ed EnemyInstr_Goto_A5 +0xa580f2 EnemyInstr_GotoRel_A5 +0xa58100 loc8100_A5 +0xa58103 loc8103_A5 +0xa58108 EnemyInstr_DecTimerAndGoto_A5 +0xa58110 EnemyInstr_DecTimerAndGoto2_A5 +0xa58118 EnemyInstr_DecTimerAndGotoRel_A5 +0xa58123 EnemyInstr_SetTimer_A5 +0xa5812c EnemyInstr_Skip2bytes_A5 +0xa5812f EnemyInstr_Sleep_A5 +0xa5813a EnemyInstr_WaitNframes_A5 +0xa5814b EnemyInstr_CopyToVram_A5 +0xa58173 EnemyInstr_EnableOffScreenProcessing_A5 +0xa5817d EnemyInstr_DisableOffScreenProcessing_A5 +0xa58187 kCommonEnemySpeeds_Linear_A5 +0xa5838f kCommonEnemySpeeds_Quadratic_A5 +0xa58687 Draygon_Init +0xa586fc Draygon_Main +0xa5871b Draygon_Func_1 +0xa5878b Draygon_Func_2 +0xa587aa Draygon_Func_3 +0xa587f4 Draygon_Func_4 +0xa58817 Draygon_Func_5 +0xa588b1 Draygon_Func_6 +0xa58901 Draygon_Func_7 +0xa58922 Draygon_Func_8 +0xa58951 Draygon_Func_9 +0xa589b3 Draygon_Func_10 +0xa58a00 Draygon_Func_11 +0xa58a50 Draygon_Func_12 +0xa58a90 Draygon_Func_13 +0xa58b0a Draygon_Func_14 +0xa58b52 Draygon_Func_15 +0xa58bae Draygon_Func_16 +0xa58c33 Draygon_Func_17 +0xa58c8e Draygon_Func_18 +0xa58cd4 Draygon_Func_19 +0xa58d30 Draygon_Func_20 +0xa58db2 Draygon_Func_21 +0xa58e19 Draygon_Func_22 +0xa58f10 Draygon_Func_23 +0xa58f1e Draygon_Func_24 +0xa58fd6 Draygon_Func_25 +0xa590d4 Draygon_Func_26 +0xa59105 Draygon_Func_27 +0xa59124 Draygon_Func_28 +0xa59128 Draygon_Func_29 +0xa59154 Draygon_Func_30 +0xa59185 Draygon_Func_31 +0xa59294 Draygon_Func_32 +0xa592ab Draygon_Func_33 +0xa592ea Draygon_Func_34 +0xa5931c Draygon_Func_35 +0xa59342 Draygon_Func_36 +0xa59367 Draygon_Func_37 +0xa593da Draygon_Func_38 +0xa59430 Draygon_Func_39 +0xa594a9 Draygon_Func_40 +0xa594dd Draygon_Instr_1 +0xa5954d Draygon_Hurt +0xa595ea Draygon_Touch +0xa595f0 Draygon_Shot +0xa59607 Draygon_Powerbomb +0xa59701 Draygon_Func_41 +0xa59736 Draygon_Instr_13 +0xa5973f Draygon_Instr_8 +0xa59752 Draygon_Instr_7 +0xa59765 Draygon_Instr_6 +0xa59778 Draygon_Instr_9 +0xa5978b Draygon_Func_47 +0xa597b9 kDraygon_Ilist_97B9 +0xa597bb kDraygon_Ilist_97BB +0xa597d1 kDraygon_Ilist_97D1 +0xa597e7 kDraygon_Ilist_97E7 +0xa59803 kDraygon_Ilist_9803 +0xa59805 kDraygon_Ilist_9805 +0xa59813 kDraygon_Ilist_9813 +0xa59825 kDraygon_Ilist_9825 +0xa59845 kDraygon_Ilist_9845 +0xa59867 kDraygon_Ilist_9867 +0xa5987b kDraygon_Ilist_987B +0xa59889 kDraygon_Ilist_9889 +0xa59895 Draygon_Instr_2 +0xa5989b kDraygon_Ilist_989B +0xa598a5 kDraygon_Ilist_98A5 +0xa598bf kDraygon_Ilist_98BF +0xa598d3 Draygon_Instr_11 +0xa598ed kDraygon_Ilist_98ED +0xa598ef Draygon_Instr_5 +0xa598fe kDraygon_Ilist_98FE +0xa59922 kDraygon_Ilist_9922 +0xa59944 kDraygon_Ilist_9944 +0xa5997a kDraygon_Ilist_997A +0xa5999c kDraygon_Ilist_999C +0xa599ae kDraygon_Ilist_99AE +0xa599b4 kDraygon_Ilist_99B4 +0xa599ba kDraygon_Ilist_99BA +0xa599c0 kDraygon_Ilist_99C0 +0xa599c6 kDraygon_Ilist_99C6 +0xa599fa kDraygon_Ilist_99FA +0xa599fc kDraygon_Ilist_99FC +0xa59a68 kDraygon_Ilist_9A68 +0xa59ae6 kDraygon_Ilist_9AE6 +0xa59ae8 kDraygon_Ilist_9AE8 +0xa59b5a kDraygon_Ilist_9B5A +0xa59b9a Draygon_Instr_15 +0xa59bda kDraygon_Ilist_9BDA +0xa59bf6 kDraygon_Ilist_9BF6 +0xa59bf8 kDraygon_Ilist_9BF8 +0xa59c06 kDraygon_Ilist_9C06 +0xa59c18 kDraygon_Ilist_9C18 +0xa59c38 kDraygon_Ilist_9C38 +0xa59c5a kDraygon_Ilist_9C5A +0xa59c6e kDraygon_Ilist_9C6E +0xa59c70 kDraygon_Ilist_9C70 +0xa59c7e kDraygon_Ilist_9C7E +0xa59c8a Draygon_Instr_17 +0xa59c90 kDraygon_Ilist_9C90 +0xa59cb4 kDraygon_Ilist_9CB4 +0xa59cd6 kDraygon_Ilist_9CD6 +0xa59d0c kDraygon_Ilist_9D0C +0xa59d1c kDraygon_Ilist_9D1C +0xa59d20 kDraygon_Ilist_9D20 +0xa59d3e kDraygon_Ilist_9D3E +0xa59d50 kDraygon_Ilist_9D50 +0xa59d56 kDraygon_Ilist_9D56 +0xa59d5c kDraygon_Ilist_9D5C +0xa59d62 kDraygon_Ilist_9D62 +0xa59d68 kDraygon_Ilist_9D68 +0xa59d9c kDraygon_Ilist_9D9C +0xa59d9e kDraygon_Ilist_9D9E +0xa59e0a Draygon_Instr_14 +0xa59e21 kDraygon_Ilist_9E21 +0xa59e9f kDraygon_Ilist_9E9F +0xa59ea1 kDraygon_Ilist_9EA1 +0xa59f13 kDraygon_Ilist_9F13 +0xa59f15 kDraygon_Ilist_9F15 +0xa59f55 kDraygon_Ilist_9F55 +0xa59f57 Draygon_Instr_16 +0xa59f60 Draygon_Instr_10 +0xa59f6e Draygon_Instr_4 +0xa59f7c Draygon_Instr_12 +0xa59fae Draygon_Instr_18 +0xa59fe0 Draygon_Func_42 +0xa5a06c Draygon_Func_43 +0xa5a0c6 Draygon_Func_44 +0xa5a0d9 Draygon_Func_45 +0xa5a13e Draygon_Func_46 +0xa5a1f7 kDraygon_Palette +0xa5a217 kDraygon_MorePalettes +0xa5a277 kDraygon_MorePalettes2 +0xa5a2b7 kDraygon_ExtSprmap_A2B7 +0xa5a2c1 kDraygon_ExtSprmap_A2C1 +0xa5a2cb kDraygon_ExtSprmap_A2CB +0xa5a2d5 kDraygon_ExtSprmap_A2D5 +0xa5a2df kDraygon_ExtSprmap_A2DF +0xa5a2e9 kDraygon_ExtSprmap_A2E9 +0xa5a2f3 kDraygon_ExtSprmap_A2F3 +0xa5a2fd kDraygon_ExtSprmap_A2FD +0xa5a307 kDraygon_ExtSprmap_A307 +0xa5a311 kDraygon_ExtSprmap_A311 +0xa5a31b kDraygon_ExtSprmap_A31B +0xa5a325 kDraygon_ExtSprmap_A325 +0xa5a32f kDraygon_ExtSprmap_A32F +0xa5a339 kDraygon_ExtSprmap_A339 +0xa5a343 kDraygon_ExtSprmap_A343 +0xa5a34d kDraygon_ExtSprmap_A34D +0xa5a357 kDraygon_ExtSprmap_A357 +0xa5a361 kDraygon_ExtSprmap_A361 +0xa5a36b kDraygon_ExtSprmap_A36B +0xa5a375 kDraygon_ExtSprmap_A375 +0xa5a37f kDraygon_ExtSprmap_A37F +0xa5a389 kDraygon_ExtSprmap_A389 +0xa5a393 kDraygon_ExtSprmap_A393 +0xa5a39d kDraygon_ExtSprmap_A39D +0xa5a3a7 kDraygon_ExtSprmap_A3A7 +0xa5a3b1 kDraygon_ExtSprmap_A3B1 +0xa5a3bb kDraygon_ExtSprmap_A3BB +0xa5a3c5 kDraygon_ExtSprmap_A3C5 +0xa5a3cf kDraygon_ExtSprmap_A3CF +0xa5a3d9 kDraygon_ExtSprmap_A3D9 +0xa5a3e3 kDraygon_ExtSprmap_A3E3 +0xa5a3ed kDraygon_ExtSprmap_A3ED +0xa5a3f7 kDraygon_ExtSprmap_A3F7 +0xa5a401 kDraygon_ExtSprmap_A401 +0xa5a40b kDraygon_ExtSprmap_A40B +0xa5a41d kDraygon_ExtSprmap_A41D +0xa5a42f kDraygon_ExtSprmap_A42F +0xa5a441 kDraygon_ExtSprmap_A441 +0xa5a453 kDraygon_ExtSprmap_A453 +0xa5a465 kDraygon_ExtSprmap_A465 +0xa5a477 kDraygon_ExtSprmap_A477 +0xa5a489 kDraygon_ExtSprmap_A489 +0xa5a4a3 kDraygon_ExtSprmap_A4A3 +0xa5a4c5 kDraygon_ExtSprmap_A4C5 +0xa5a4ef kDraygon_ExtSprmap_A4EF +0xa5a521 kDraygon_ExtSprmap_A521 +0xa5a55b kDraygon_ExtSprmap_A55B +0xa5a59d kDraygon_ExtSprmap_A59D +0xa5a5df kDraygon_ExtSprmap_A5DF +0xa5a5e9 kDraygon_ExtSprmap_A5E9 +0xa5a5f3 kDraygon_ExtSprmap_A5F3 +0xa5a5fd kDraygon_ExtSprmap_A5FD +0xa5a607 kDraygon_ExtSprmap_A607 +0xa5a611 kDraygon_ExtSprmap_A611 +0xa5a61b kDraygon_ExtSprmap_A61B +0xa5a625 kDraygon_ExtSprmap_A625 +0xa5a62f kDraygon_ExtSprmap_A62F +0xa5a639 kDraygon_ExtSprmap_A639 +0xa5a643 kDraygon_ExtSprmap_A643 +0xa5a64d kDraygon_ExtSprmap_A64D +0xa5a657 kDraygon_ExtSprmap_A657 +0xa5a661 kDraygon_ExtSprmap_A661 +0xa5a66b kDraygon_ExtSprmap_A66B +0xa5a675 kDraygon_ExtSprmap_A675 +0xa5a67f kDraygon_ExtSprmap_A67F +0xa5a689 kDraygon_ExtSprmap_A689 +0xa5a693 kDraygon_ExtSprmap_A693 +0xa5a69d kDraygon_ExtSprmap_A69D +0xa5a6a7 kDraygon_ExtSprmap_A6A7 +0xa5a6b1 kDraygon_ExtSprmap_A6B1 +0xa5a6bb kDraygon_ExtSprmap_A6BB +0xa5a6c5 kDraygon_ExtSprmap_A6C5 +0xa5a6cf kDraygon_ExtSprmap_A6CF +0xa5a6d9 kDraygon_ExtSprmap_A6D9 +0xa5a6e3 kDraygon_ExtSprmap_A6E3 +0xa5a6ed kDraygon_ExtSprmap_A6ED +0xa5a6f7 kDraygon_ExtSprmap_A6F7 +0xa5a701 kDraygon_ExtSprmap_A701 +0xa5a70b kDraygon_ExtSprmap_A70B +0xa5a715 kDraygon_ExtSprmap_A715 +0xa5a71f kDraygon_ExtSprmap_A71F +0xa5a729 kDraygon_ExtSprmap_A729 +0xa5a733 kDraygon_ExtSprmap_A733 +0xa5a73d kDraygon_ExtSprmap_A73D +0xa5a747 kDraygon_ExtSprmap_A747 +0xa5a751 kDraygon_ExtSprmap_A751 +0xa5a75b kDraygon_ExtSprmap_A75B +0xa5a765 kDraygon_ExtSprmap_A765 +0xa5a76f kDraygon_ExtSprmap_A76F +0xa5a779 kDraygon_ExtSprmap_A779 +0xa5a78b kDraygon_ExtSprmap_A78B +0xa5a79d kDraygon_ExtSprmap_A79D +0xa5a7af kDraygon_ExtSprmap_A7AF +0xa5a7c1 kDraygon_ExtSprmap_A7C1 +0xa5a7d3 kDraygon_ExtSprmap_A7D3 +0xa5a7e5 kDraygon_ExtSprmap_A7E5 +0xa5a7f7 kDraygon_ExtSprmap_A7F7 +0xa5a811 kDraygon_ExtSprmap_A811 +0xa5a833 kDraygon_ExtSprmap_A833 +0xa5a85d kDraygon_ExtSprmap_A85D +0xa5a88f kDraygon_ExtSprmap_A88F +0xa5a8c9 kDraygon_ExtSprmap_A8C9 +0xa5a90b kDraygon_ExtSprmap_A90B +0xa5abdf kDraygon_Sprmap_ABDF +0xa5abf5 kDraygon_Sprmap_ABF5 +0xa5ac0b kDraygon_Sprmap_AC0B +0xa5ac17 kDraygon_Sprmap_AC17 +0xa5ac91 kDraygon_Sprmap_AC91 +0xa5acf7 kDraygon_Sprmap_ACF7 +0xa5ad49 kDraygon_Sprmap_AD49 +0xa5ad9b kDraygon_Sprmap_AD9B +0xa5adcf kDraygon_Sprmap_ADCF +0xa5ae03 kDraygon_Sprmap_AE03 +0xa5ae37 kDraygon_Sprmap_AE37 +0xa5ae6b kDraygon_Sprmap_AE6B +0xa5aecc kDraygon_Sprmap_AECC +0xa5af23 kDraygon_Sprmap_AF23 +0xa5af7a kDraygon_Sprmap_AF7A +0xa5afdb kDraygon_Sprmap_AFDB +0xa5b041 kDraygon_Sprmap_B041 +0xa5b0a7 kDraygon_Sprmap_B0A7 +0xa5b108 kDraygon_BigSprmap_B108 +0xa5b14c kDraygon_BigSprmap_B14C +0xa5b196 kDraygon_BigSprmap_B196 +0xa5b1e2 kDraygon_BigSprmap_B1E2 +0xa5b23e kDraygon_BigSprmap_B23E +0xa5b29a kDraygon_BigSprmap_B29A +0xa5b2e6 kDraygon_BigSprmap_B2E6 +0xa5b330 kDraygon_BigSprmap_B330 +0xa5b344 kDraygon_BigSprmap_B344 +0xa5b358 kDraygon_BigSprmap_B358 +0xa5b36c kDraygon_BigSprmap_B36C +0xa5b380 kDraygon_BigSprmap_B380 +0xa5b3a2 kDraygon_BigSprmap_B3A2 +0xa5b3c0 kDraygon_BigSprmap_B3C0 +0xa5b3e2 kDraygon_BigSprmap_B3E2 +0xa5b404 kDraygon_BigSprmap_B404 +0xa5b418 kDraygon_BigSprmap_B418 +0xa5b42c kDraygon_BigSprmap_B42C +0xa5b440 kDraygon_BigSprmap_B440 +0xa5b454 kDraygon_BigSprmap_B454 +0xa5b468 kDraygon_BigSprmap_B468 +0xa5b47c kDraygon_BigSprmap_B47C +0xa5b490 kDraygon_BigSprmap_B490 +0xa5b4a4 kDraygon_BigSprmap_B4A4 +0xa5b6c4 kDraygon_Sprmap_B6C4 +0xa5b6d5 kDraygon_Sprmap_B6D5 +0xa5b6e6 kDraygon_Sprmap_B6E6 +0xa5b6fc kDraygon_Sprmap_B6FC +0xa5b708 kDraygon_Sprmap_B708 +0xa5b719 kDraygon_Sprmap_B719 +0xa5b72a kDraygon_Sprmap_B72A +0xa5b73b kDraygon_Sprmap_B73B +0xa5b747 kDraygon_Sprmap_B747 +0xa5b758 kDraygon_Sprmap_B758 +0xa5b769 kDraygon_Sprmap_B769 +0xa5b77f kDraygon_Sprmap_B77F +0xa5b78b kDraygon_Sprmap_B78B +0xa5b79c kDraygon_Sprmap_B79C +0xa5b7ad kDraygon_Sprmap_B7AD +0xa5b7be kDraygon_Sprmap_B7BE +0xa5b7ca kDraygon_Sprmap_B7CA +0xa5b7d1 kDraygon_Sprmap_B7D1 +0xa5b7d8 kDraygon_Sprmap_B7D8 +0xa5b7df kDraygon_Sprmap_B7DF +0xa5b7e6 kDraygon_Sprmap_B7E6 +0xa5b7ed kDraygon_Sprmap_B7ED +0xa5b7f4 kDraygon_Sprmap_B7F4 +0xa5b80a kDraygon_Sprmap_B80A +0xa5b820 kDraygon_Sprmap_B820 +0xa5b82c kDraygon_Sprmap_B82C +0xa5b8a6 kDraygon_Sprmap_B8A6 +0xa5b90c kDraygon_Sprmap_B90C +0xa5b95e kDraygon_Sprmap_B95E +0xa5b9b0 kDraygon_Sprmap_B9B0 +0xa5b9b7 kDraygon_Sprmap_B9B7 +0xa5b9be kDraygon_Sprmap_B9BE +0xa5b9c5 kDraygon_Sprmap_B9C5 +0xa5b9cc kDraygon_Sprmap_B9CC +0xa5b9d3 kDraygon_Sprmap_B9D3 +0xa5ba07 kDraygon_Sprmap_BA07 +0xa5ba3b kDraygon_Sprmap_BA3B +0xa5ba42 kDraygon_Sprmap_BA42 +0xa5ba49 kDraygon_Sprmap_BA49 +0xa5ba50 kDraygon_Sprmap_BA50 +0xa5ba57 kDraygon_Sprmap_BA57 +0xa5ba5e kDraygon_Sprmap_BA5E +0xa5ba65 kDraygon_Sprmap_BA65 +0xa5ba6c kDraygon_Sprmap_BA6C +0xa5ba73 kDraygon_Sprmap_BA73 +0xa5ba7a kDraygon_Sprmap_BA7A +0xa5baae kDraygon_Sprmap_BAAE +0xa5bae2 kDraygon_Sprmap_BAE2 +0xa5bb43 kDraygon_Sprmap_BB43 +0xa5bb9a kDraygon_Sprmap_BB9A +0xa5bbf1 kDraygon_Sprmap_BBF1 +0xa5bc52 kDraygon_Sprmap_BC52 +0xa5bcb8 kDraygon_Sprmap_BCB8 +0xa5bd1e kDraygon_Sprmap_BD1E +0xa5bd7f kDraygon_BigSprmap_BD7F +0xa5bdc3 kDraygon_BigSprmap_BDC3 +0xa5be0d kDraygon_BigSprmap_BE0D +0xa5be59 kDraygon_BigSprmap_BE59 +0xa5beb5 kDraygon_BigSprmap_BEB5 +0xa5bf11 kDraygon_BigSprmap_BF11 +0xa5bf5d kDraygon_BigSprmap_BF5D +0xa5bfa7 kDraygon_BigSprmap_BFA7 +0xa5bfbb kDraygon_BigSprmap_BFBB +0xa5bfcf kDraygon_BigSprmap_BFCF +0xa5bfe3 kDraygon_BigSprmap_BFE3 +0xa5bff7 kDraygon_BigSprmap_BFF7 +0xa5c019 kDraygon_BigSprmap_C019 +0xa5c037 kDraygon_BigSprmap_C037 +0xa5c059 kDraygon_BigSprmap_C059 +0xa5c07b kDraygon_BigSprmap_C07B +0xa5c08f kDraygon_BigSprmap_C08F +0xa5c0a3 kDraygon_BigSprmap_C0A3 +0xa5c0b7 kDraygon_BigSprmap_C0B7 +0xa5c0cb kDraygon_BigSprmap_C0CB +0xa5c0df kDraygon_BigSprmap_C0DF +0xa5c0f3 kDraygon_BigSprmap_C0F3 +0xa5c107 kDraygon_BigSprmap_C107 +0xa5c11b kDraygon_BigSprmap_C11B +0xa5c33b kDraygon_Sprmap_C33B +0xa5c34c kDraygon_Sprmap_C34C +0xa5c35d kDraygon_Sprmap_C35D +0xa5c373 kDraygon_Sprmap_C373 +0xa5c37f kDraygon_Sprmap_C37F +0xa5c390 kDraygon_Sprmap_C390 +0xa5c3a1 kDraygon_Sprmap_C3A1 +0xa5c3b2 kDraygon_Sprmap_C3B2 +0xa5c3be kDraygon_Sprmap_C3BE +0xa5c3cf kDraygon_Sprmap_C3CF +0xa5c3e0 kDraygon_Sprmap_C3E0 +0xa5c3f6 kDraygon_Sprmap_C3F6 +0xa5c402 kDraygon_Sprmap_C402 +0xa5c413 kDraygon_Sprmap_C413 +0xa5c424 kDraygon_Sprmap_C424 +0xa5c435 kDraygon_Sprmap_C435 +0xa5c441 kDraygon_Sprmap_C441 +0xa5c448 kDraygon_Sprmap_C448 +0xa5c44f kDraygon_Sprmap_C44F +0xa5c456 kDraygon_Sprmap_C456 +0xa5c45d kDraygon_Sprmap_C45D +0xa5c464 kDraygon_Sprmap_C464 +0xa5c46b DraygonsEye_Init +0xa5c47b Draygon_Instr_3 +0xa5c486 DraygonsEye_Main +0xa5c48d Draygon_Func_48 +0xa5c513 Draygon_Func_49 +0xa5c599 DraygonsTail_Init +0xa5c5aa nullsub_37 +0xa5c5ab nullsub_219 +0xa5c5ac nullsub_220 +0xa5c5ad DraygonsArms_Init +0xa5c5c4 nullsub_38 +0xa5c5c5 nullsub_221 +0xa5c5c6 nullsub_222 +0xa5e359 kSporeSpawn_Palette +0xa5e6b9 kDraygon_Ilist_E6B9 +0xa5e6c7 kDraygon_Ilist_E6C7 +0xa5e6d5 kDraygon_Ilist_E6D5 +0xa5e6e3 kDraygon_Ilist_E6E3 +0xa5e715 kDraygon_Ilist_E715 +0xa5e75f Draygon_Instr_25 +0xa5e771 Draygon_Instr_24 +0xa5e77d kDraygon_Ilist_E77D +0xa5e791 kDraygon_Ilist_E791 +0xa5e811 Draygon_Func_50 +0xa5e82d Draygon_Instr_21 +0xa5e840 Draygon_Func_51 +0xa5e84a Draygon_Func_52 +0xa5e854 Draygon_Instr_53 +0xa5e863 Draygon_Instr_54 +0xa5e872 Draygon_Instr_22 +0xa5e87c Draygon_Instr_27 +0xa5e895 Draygon_Instr_23 +0xa5e8a3 Draygon_Instr_55 +0xa5e8b1 Draygon_Instr_30 +0xa5e8ba Draygon_Instr_20 +0xa5e8ca Draygon_Instr_29 +0xa5e91c Draygon_Instr_19 +0xa5e96e Draygon_Instr_28 +0xa5e9b1 Draygon_Instr_26 +0xa5ea2a SporeSpawn_Init +0xa5eb13 SporeSpawn_Main +0xa5eb1a nullsub_223 +0xa5eb1b SporeSpawn_Func_1 +0xa5eb52 SporeSpawn_Func_2 +0xa5eb9b SporeSpawn_Func_3 +0xa5ebee SporeSpawn_Func_4 +0xa5ec49 SporeSpawn_Func_5 +0xa5ed5a SporeSpawn_Shot +0xa5edec SporeSpawn_Touch +0xa5edf2 nullsub_39 +0xa5edf3 SporeSpawn_Func_6 +0xa5ee4a SporeSpawn_Func_7 +0xa5ee65 kDraygon_ExtSprmap_EE65 +0xa5ee6f kDraygon_ExtSprmap_EE6F +0xa5ee79 kDraygon_ExtSprmap_EE79 +0xa5ee8b kDraygon_ExtSprmap_EE8B +0xa5ee9d kDraygon_ExtSprmap_EE9D +0xa5eeaf kDraygon_ExtSprmap_EEAF +0xa5eec1 kDraygon_ExtSprmap_EEC1 +0xa5eed3 kDraygon_ExtSprmap_EED3 +0xa5eee5 kDraygon_ExtSprmap_EEE5 +0xa5eef7 kSporeSpawn_ExtSprmap_EEF7 +0xa5ef01 kSporeSpawn_ExtSprmap_EF01 +0xa5ef0b kSporeSpawn_ExtSprmap_EF0B +0xa5ef15 kSporeSpawn_ExtSprmap_EF15 +0xa5ef1f kSporeSpawn_ExtSprmap_EF1F +0xa5ef29 kSporeSpawn_ExtSprmap_EF29 +0xa5ef33 kSporeSpawn_ExtSprmap_EF33 +0xa5ef3d kDraygon_ExtSprmap_EF3D +0xa5ef4f kDraygon_ExtSprmap_EF4F +0xa5ef61 kDraygon_ExtSprmap_EF61 +0xa5f20d kDraygon_Sprmap_F20D +0xa5f291 kDraygon_Sprmap_F291 +0xa5f329 kDraygon_Sprmap_F329 +0xa5f3d5 kDraygon_Sprmap_F3D5 +0xa5f481 kDraygon_Sprmap_F481 +0xa5f52d kDraygon_Sprmap_F52D +0xa5f5b1 kSporeSpawn_Sprmap_F5B1 +0xa5f635 kSporeSpawn_Sprmap_F635 +0xa5f6b9 kSporeSpawn_Sprmap_F6B9 +0xa5f73d kSporeSpawn_Sprmap_F73D +0xa5f7c1 kDraygon_Sprmap_F7C1 +0xa5f7e1 kDraygon_Sprmap_F7E1 +0xa5f801 kDraygon_Sprmap_F801 +0xa5f821 kSporeSpawn_Sprmap_F821 +0xa5f828 kSporeSpawn_Sprmap_F828 +0xa5f82f kSporeSpawn_Sprmap_F82F +0xa5f836 kSporeSpawn_Sprmap_F836 +0xa5f83d kSporeSpawn_Sprmap_F83D +0xa5f844 kSporeSpawn_Sprmap_F844 +0xa5f84b kSporeSpawn_Sprmap_F84B +0xa5f852 kDraygon_Sprmap_F852 +0xa5f8d6 kDraygon_Sprmap_F8D6 +0xa68000 Enemy_GrappleReact_NoInteract_A6 +0xa68005 Enemy_GrappleReact_SamusLatchesOn_A6 +0xa6800a Enemy_GrappleReact_KillEnemy_A6 +0xa6800f Enemy_GrappleReact_CancelBeam_A6 +0xa68014 Enemy_GrappleReact_SamusLatchesNoInvinc_A6 +0xa68019 Enemy_GrappleReact_SamusLatchesParalyze_A6 +0xa6801e Enemy_GrappleReact_HurtSamus_A6 +0xa68023 Enemy_NormalTouchAI_A6 +0xa68028 Enemy_NormalTouchAI_SkipDeathAnim_A6 +0xa6802d Enemy_NormalShotAI_A6 +0xa68032 Enemy_NormalShotAI_SkipSomeParts_A6 +0xa68037 Enemy_NormalPowerBombAI_A6 +0xa6803c Enemy_NormalPowerBombAI_SkipDeathAnim_A6 +0xa68041 Enemy_NormalFrozenAI_A6 +0xa68046 CreateADudShot_A6 +0xa6804b nullsub_169_A6 +0xa6804c nullsub_170_A6 +0xa6804d kSpritemap_Nothing_A6 +0xa6804f kExtendedSpritemap_Nothing_A6 +0xa68059 word8059_A6 +0xa68069 sub8069_A6 +0xa6806b Enemy_SetAiPreInstr_A6 +0xa68074 Enemy_ClearAiPreInstr_A6 +0xa6807b nullsub_171_A6 +0xa6807c EnemyInstr_StopScript_A6 +0xa6808a EnemyInstr_Call_A6 +0xa68097 loc8097_A6 +0xa6809c EnemyInstr_CallWithArg_A6 +0xa680ac loc80AC_A6 +0xa680b5 EnemyInstr_CallFar_A6 +0xa680cb loc80CB_A6 +0xa680ce EnemyInstr_CallFarWithArg_A6 +0xa680ea loc80EA_A6 +0xa680ed EnemyInstr_Goto_A6 +0xa680f2 EnemyInstr_GotoRel_A6 +0xa68100 loc8100_A6 +0xa68103 loc8103_A6 +0xa68108 EnemyInstr_DecTimerAndGoto_A6 +0xa68110 EnemyInstr_DecTimerAndGoto2_A6 +0xa68118 EnemyInstr_DecTimerAndGotoRel_A6 +0xa68123 EnemyInstr_SetTimer_A6 +0xa6812c EnemyInstr_Skip2bytes_A6 +0xa6812f EnemyInstr_Sleep_A6 +0xa6813a EnemyInstr_WaitNframes_A6 +0xa6814b EnemyInstr_CopyToVram_A6 +0xa68173 EnemyInstr_EnableOffScreenProcessing_A6 +0xa6817d EnemyInstr_DisableOffScreenProcessing_A6 +0xa68187 kCommonEnemySpeeds_Linear_A6 +0xa6838f kCommonEnemySpeeds_Quadratic_A6 +0xa68687 kBoulder_Palette +0xa686a7 kBoulder_Ilist_86A7 +0xa686cb kBoulder_Ilist_86CB +0xa686f5 Boulder_Init +0xa68793 Boulder_Main +0xa6879a Boulder_Func_1 +0xa687ed Boulder_Func_2 +0xa68832 Boulder_Func_3 +0xa6888b Boulder_Func_4 +0xa68942 Boulder_Func_5 +0xa689fc Boulder_Func_6 +0xa68a00 Boulder_Func_7 +0xa68a1d Boulder_Func_8 +0xa68a3a Boulder_Func_9 +0xa68a57 nullsub_224 +0xa68a58 nullsub_225 +0xa68a59 kBoulder_Sprmap_8A59 +0xa68a6f kBoulder_Sprmap_8A6F +0xa68a85 kBoulder_Sprmap_8A85 +0xa68a9b kBoulder_Sprmap_8A9B +0xa68ab1 kBoulder_Sprmap_8AB1 +0xa68ac7 kBoulder_Sprmap_8AC7 +0xa68add kBoulder_Sprmap_8ADD +0xa68af3 kBoulder_Sprmap_8AF3 +0xa68b09 kSpikeyPlatform_Palette +0xa68b29 kSpikeyPlatform_Ilist_8B29 +0xa68b2f SpikeyPlatform_Init +0xa68b85 SpikeyPlatform2ndEnemy_Init +0xa68b99 SpikeyPlatform2ndEnemy_Main +0xa68bad SpikeyPlatform_Main +0xa68bb4 SpikeyPlatform_Func_1 +0xa68bdc SpikeyPlatform_Func_2 +0xa68c4a SpikeyPlatform_Func_3 +0xa68c5d SpikeyPlatform_Func_4 +0xa68ca1 SpikeyPlatform_Func_5 +0xa68ce3 nullsub_226 +0xa68ce4 nullsub_227 +0xa68ce5 kSpikeyPlatform_Sprmap_8CE5 +0xa68cfb kFireGeyser_Palette +0xa68d1b kFireGeyser_Ilist_8D1B +0xa68da9 kFireGeyser_Ilist_8DA9 +0xa68daf FireGeyser_Instr_1 +0xa68e13 FireGeyser_Instr_2 +0xa68e2d FireGeyser_Instr_3 +0xa68e41 FireGeyser_Instr_4 +0xa68e55 FireGeyser_Instr_5 +0xa68e69 FireGeyser_Instr_6 +0xa68e7d FireGeyser_Instr_7 +0xa68e91 FireGeyser_Instr_8 +0xa68ea5 FireGeyser_Instr_9 +0xa68eb9 FireGeyser_Instr_10 +0xa68ecd FireGeyser_Instr_11 +0xa68ee1 FireGeyser_Instr_12 +0xa68ef5 FireGeyser_Instr_13 +0xa68f09 FireGeyser_Instr_14 +0xa68f1d FireGeyser_Instr_15 +0xa68f31 FireGeyser_Instr_16 +0xa68f45 FireGeyser_Instr_17 +0xa68f59 FireGeyser_Instr_18 +0xa68f6d FireGeyser_Instr_19 +0xa68f81 FireGeyser_Instr_20 +0xa68f95 FireGeyser_Instr_21 +0xa68fa9 FireGeyser_Instr_22 +0xa68fbd FireGeyser_Instr_23 +0xa68fd1 FireGeyser_Instr_24 +0xa68ffc FireGeyser_Init +0xa69023 FireGeyser_Main +0xa6902f FireGeyser_Func_1 +0xa69062 FireGeyser_Func_2 +0xa69080 nullsub_228 +0xa69081 nullsub_229 +0xa69082 kFireGeyser_Sprmap_9082 +0xa69089 kFireGeyser_Sprmap_9089 +0xa6909f kFireGeyser_Sprmap_909F +0xa690ba kFireGeyser_Sprmap_90BA +0xa690da kFireGeyser_Sprmap_90DA +0xa690ff kFireGeyser_Sprmap_90FF +0xa69124 kFireGeyser_Sprmap_9124 +0xa69149 kFireGeyser_Sprmap_9149 +0xa6916e kFireGeyser_Sprmap_916E +0xa69198 kFireGeyser_Sprmap_9198 +0xa691c2 kFireGeyser_Sprmap_91C2 +0xa691f1 kFireGeyser_Sprmap_91F1 +0xa69234 kFireGeyser_Sprmap_9234 +0xa6927c kFireGeyser_Sprmap_927C +0xa692c4 kFireGeyser_Sprmap_92C4 +0xa69302 kFireGeyser_Sprmap_9302 +0xa6934a kFireGeyser_Sprmap_934A +0xa6938d kFireGeyser_Sprmap_938D +0xa693cb kFireGeyser_Sprmap_93CB +0xa69404 kFireGeyser_Sprmap_9404 +0xa6942e kFireGeyser_Sprmap_942E +0xa6944e kFireGeyser_Sprmap_944E +0xa69469 kFireGeyser_Sprmap_9469 +0xa69470 kNuclearWaffle_Palette +0xa69490 kNuclearWaffle_Ilist_9490 +0xa694c4 NuclearWaffle_Init +0xa6960e NuclearWaffle_Main +0xa69615 NuclearWaffle_Func_1 +0xa69682 NuclearWaffle_Func_2 +0xa69721 NuclearWaffle_Func_3 +0xa697e9 NuclearWaffle_Func_4 +0xa698ad NuclearWaffle_Func_5 +0xa698e7 NuclearWaffle_Func_6 +0xa6993f NuclearWaffle_Func_7 +0xa69952 nullsub_230 +0xa69953 nullsub_231 +0xa69954 kNuclearWaffle_Sprmap_9954 +0xa6995b kNuclearWaffle_Sprmap_995B +0xa69962 kNuclearWaffle_Sprmap_9962 +0xa69969 kNuclearWaffle_Sprmap_9969 +0xa69970 kNuclearWaffle_Sprmap_9970 +0xa69977 kNuclearWaffle_Sprmap_9977 +0xa6997e kNuclearWaffle_Sprmap_997E +0xa69985 kNuclearWaffle_Sprmap_9985 +0xa6998c kFakeKraid_Palette +0xa699ac kFakeKraid_Ilist_99AC +0xa699c4 kFakeKraid_Ilist_99C4 +0xa699dc kFakeKraid_Ilist_99DC +0xa699f4 kFakeKraid_Ilist_99F4 +0xa699fa kFakeKraid_Ilist_99FA +0xa69a12 kFakeKraid_Ilist_9A12 +0xa69a2a kFakeKraid_Ilist_9A2A +0xa69a42 kFakeKraid_Ilist_9A42 +0xa69a58 FakeKraid_Init +0xa69ac2 FakeKraid_Main +0xa69adc FakeKraid_Func_1 +0xa69b26 FakeKraid_Instr_2 +0xa69b74 FakeKraid_Instr_1 +0xa69bb2 FakeKraid_Instr_3 +0xa69bc4 FakeKraid_Instr_4 +0xa69bcb FakeKraid_InstrHelper_45 +0xa69c02 FakeKraid_Instr_5 +0xa69c22 FakeKraid_Touch +0xa69c39 FakeKraid_Shot +0xa69c50 FakeKraid_9C50 +0xa69c64 kFakeKraid_Sprmap_9C64 +0xa69cb6 kFakeKraid_Sprmap_9CB6 +0xa69d08 kFakeKraid_Sprmap_9D08 +0xa69d5a kFakeKraid_Sprmap_9D5A +0xa69dac kFakeKraid_Sprmap_9DAC +0xa69dfe kFakeKraid_Sprmap_9DFE +0xa69e50 kFakeKraid_Sprmap_9E50 +0xa69ea2 kFakeKraid_Sprmap_9EA2 +0xa69ef4 kFakeKraid_Sprmap_9EF4 +0xa69f46 kFakeKraid_Sprmap_9F46 +0xa69f98 kFakeKraid_Sprmap_9F98 +0xa69fea kFakeKraid_Sprmap_9FEA +0xa6a03c kFakeKraid_Sprmap_A03C +0xa6a08e kFakeKraid_Sprmap_A08E +0xa6a0e0 kFakeKraid_Sprmap_A0E0 +0xa6a0e7 kFakeKraid_Sprmap_A0E7 +0xa6a0ee kFakeKraid_Sprmap_A0EE +0xa6a0f5 CeresRidley_Init +0xa6a288 CeresRidley_Main +0xa6a2bd CeresRidley_Func_1 +0xa6a2d3 CeresRidley_Hurt +0xa6a2dc Ridley_A2DC +0xa6a2f2 Ridley_A2F2 +0xa6a329 kCeresRidley_Sprmap_A329 +0xa6a353 nullsub_232 +0xa6a354 CeresRidley_Func_2 +0xa6a35b CeresRidley_Func_3 +0xa6a377 CeresRidley_A377 +0xa6a388 nullsub_310 +0xa6a389 CeresRidley_Func_4 +0xa6a3df CeresRidley_Func_5 +0xa6a455 CeresRidley_Func_6 +0xa6a477 nullsub_311 +0xa6a478 CeresRidley_Func_7 +0xa6a4d6 CeresRidley_Func_8 +0xa6a6af CeresRidley_Func_9 +0xa6a6c8 CeresRidley_Func_10 +0xa6a6e8 CeresRidley_Func_11 +0xa6a763 CeresRidley_Func_12 +0xa6a782 CeresRidley_Func_13 +0xa6a7f9 CeresRidley_A7F9 +0xa6a83c CeresRidley_Func_14 +0xa6a84e CeresRidley_Func_15 +0xa6a88d CeresRidley_Func_16 +0xa6a8a4 CeresRidley_Func_17 +0xa6a8d4 CeresRidley_Func_18 +0xa6a8f8 CeresRidley_Func_19 +0xa6a923 CeresRidley_Func_20 +0xa6a947 CeresRidley_Func_21 +0xa6a971 CeresRidley_Func_22 +0xa6a993 nullsub_312 +0xa6a994 CeresRidley_A994 +0xa6a9a0 CeresRidley_Func_23 +0xa6aa11 CeresRidley_Func_24 +0xa6aa20 CeresRidley_Func_25 +0xa6aa4f nullsub_233 +0xa6aa50 CeresRidley_Func_26 +0xa6aa54 CeresRidley_Func_27 +0xa6aaaf HandleCeresRidleyGetawayCutscene +0xa6aabd CeresRidley_Func_28 +0xa6ab5f CeresRidley_Func_29 +0xa6ac0e CeresRidley_Func_30 +0xa6ac1e CeresRidley_Func_31 +0xa6ac30 CeresRidley_AC30 +0xa6ac58 CeresRidley_Func_32 +0xa6acbc CeresRidley_Func_33 +0xa6ad27 CeresRidley_Func_34 +0xa6b0ef CeresRidley_Func_35 +0xa6b227 Ridley_Main +0xa6b26f Ridley_Func_1 +0xa6b28a Ridley_Func_2 +0xa6b297 Ridley_Hurt +0xa6b2f3 Ridley_Func_3 +0xa6b321 Ridley_Func_3b +0xa6b335 Ridley_Func_4 +0xa6b3ec Ridley_Func_5 +0xa6b3f8 Ridley_Func_6 +0xa6b42e Ridley_Func_7 +0xa6b441 Ridley_Func_8 +0xa6b455 Ridley_B455 +0xa6b493 Ridley_Func_9 +0xa6b4d1 Ridley_Func_10 +0xa6b516 Ridley_Func_11 +0xa6b554 Ridley_Func_12 +0xa6b594 Ridley_Func_13 +0xa6b5c4 Ridley_Func_14 +0xa6b5e5 Ridley_Func_15 +0xa6b613 Ridley_Func_16 +0xa6b641 Ridley_Func_17 +0xa6b68b Ridley_Func_18 +0xa6b6a7 Ridley_Func_19 +0xa6b6dd Ridley_Func_20 +0xa6b70e Ridley_Func_21 +0xa6b7b9 Ridley_Func_22 +0xa6b7e7 Ridley_Func_23 +0xa6b84d Ridley_Func_24 +0xa6b859 Ridley_Func_25 +0xa6b865 Ridley_Func_26 +0xa6b889 Ridley_Func_27 +0xa6b8a9 Ridley_Func_28 +0xa6b90f Ridley_Func_29 +0xa6b9e1 Ridley_Func_30 +0xa6ba54 Ridley_Func_31 +0xa6ba85 Ridley_Func_32 +0xa6bab7 Ridley_Func_33 +0xa6bb8f Ridley_Func_33b +0xa6bbc4 Ridley_Func_34 +0xa6bbf1 Ridley_Func_35 +0xa6bc2e Ridley_Func_36 +0xa6bc68 Ridley_Func_37 +0xa6bc84 Ridley_Func_38 +0xa6bcb4 Ridley_Func_39 +0xa6bcf1 Ridley_Func_40 +0xa6bd20 Ridley_Func_41 +0xa6bd2c Ridley_Func_42 +0xa6bd4e Ridley_Func_43 +0xa6bd9a Ridley_Func_44 +0xa6bdbc Ridley_Func_45 +0xa6bdf2 Ridley_Func_46 +0xa6be03 Ridley_Func_47 +0xa6be41 nullsub_353 +0xa6be61 Ridley_Func_48 +0xa6be93 Ridley_Func_49 +0xa6be9c Ridley_Func_50 +0xa6beb3 Ridley_Func_51 +0xa6beca Ridley_Func_52 +0xa6bedc Ridley_Func_53 +0xa6bf19 nullsub_348 +0xa6bf1a DrawBabyMetroid_0 +0xa6bf31 kBabyMetroid_Ilist_BF31 +0xa6bfc9 BabyMetroid_Instr_2 +0xa6bfde BabyMetroid_Incr2 +0xa6bfe1 BabyMetroid_Instr_3 +0xa6bff2 BabyMetroid_Instr_1 +0xa6bff8 BabyMetroid_Instr_4 +0xa6bffd kBabyMetroid_Sprmap_BFFD +0xa6c018 kBabyMetroid_Sprmap_C018 +0xa6c033 kBabyMetroid_Sprmap_C033 +0xa6c04e Ridley_Func_54 +0xa6c062 Ridley_Func_55 +0xa6c08e Ridley_C08E +0xa6c09f Ridley_C09F +0xa6c0ba nullsub_313 +0xa6c0bb Ridley_Func_56 +0xa6c0f5 Ridley_Func_57 +0xa6c104 Ridley_C104 +0xa6c117 Ridley_Func_58 +0xa6c136 Ridley_Func_59 +0xa6c176 Ridley_Func_60 +0xa6c19c Ridley_Func_61 +0xa6c23f SetupZebesEscapeTypewriter +0xa6c26e ProcessEscapeTimerTileTransfers +0xa6c2a7 HandleTypewriterText_Ext +0xa6c2b1 HandleTypewriterText +0xa6c383 Ridley_Func_62 +0xa6c538 Ridley_Func_63 +0xa6c53e Ridley_C53E +0xa6c550 nullsub_314 +0xa6c551 Ridley_C551 +0xa6c588 Ridley_Func_64 +0xa6c5a8 Ridley_Func_65 +0xa6c5c8 Ridley_Func_66 +0xa6c5da Ridley_Func_67 +0xa6c600 nullsub_349 +0xa6c601 Ridley_Func_68 +0xa6c623 Ridley_Func_69 +0xa6c696 RidleysExplosion_Init +0xa6c8d4 RidleysExplosion_Main +0xa6c913 RidleysExplosion_Func_1 +0xa6c932 RidleysExplosion_Func_2 +0xa6ca47 kRidleysExplosion_Ilist_CA47 +0xa6ca4d kRidleysExplosion_Ilist_CA4D +0xa6ca53 kRidleysExplosion_Ilist_CA53 +0xa6ca59 kRidleysExplosion_Ilist_CA59 +0xa6ca5f kRidleysExplosion_Ilist_CA5F +0xa6ca65 kRidleysExplosion_Ilist_CA65 +0xa6ca6b kRidleysExplosion_Ilist_CA6B +0xa6ca71 kRidleysExplosion_Ilist_CA71 +0xa6ca77 kRidleysExplosion_Ilist_CA77 +0xa6ca7d kRidleysExplosion_Ilist_CA7D +0xa6ca83 kRidleysExplosion_Ilist_CA83 +0xa6ca89 kRidleysExplosion_Ilist_CA89 +0xa6ca8f kRidleysExplosion_Ilist_CA8F +0xa6ca95 kRidleysExplosion_Ilist_CA95 +0xa6ca9b kRidleysExplosion_Ilist_CA9B +0xa6caa1 kRidleysExplosion_Ilist_CAA1 +0xa6caa7 kRidleysExplosion_Ilist_CAA7 +0xa6caad kRidleysExplosion_Ilist_CAAD +0xa6cab3 kRidleysExplosion_Ilist_CAB3 +0xa6cab9 kRidleysExplosion_Ilist_CAB9 +0xa6cabf kRidleysExplosion_Ilist_CABF +0xa6cac5 kRidleysExplosion_Ilist_CAC5 +0xa6cacb kRidleysExplosion_Ilist_CACB +0xa6cad1 kRidleysExplosion_Ilist_CAD1 +0xa6cad7 kRidleysExplosion_Ilist_CAD7 +0xa6cadd kRidleysExplosion_Ilist_CADD +0xa6cae3 kRidleysExplosion_Ilist_CAE3 +0xa6cae9 kRidleysExplosion_Ilist_CAE9 +0xa6caef kRidleysExplosion_Ilist_CAEF +0xa6caf5 Ridley_Func_70 +0xa6cb33 Ridley_Func_71 +0xa6cb45 Ridley_Func_72 +0xa6cb4e Ridley_Func_73 +0xa6cb60 Ridley_Func_74 +0xa6cb72 Ridley_Func_75 +0xa6cbc0 Ridley_CBC0 +0xa6cbc7 Ridley_CBC7 +0xa6cbce Ridley_CBCE +0xa6cbd5 Ridley_CBD5 +0xa6cbdc Ridley_CBDC +0xa6cbfe Ridley_Func_77 +0xa6cc1e Ridley_Func_78 +0xa6cc39 Ridley_Func_79 +0xa6cc7d Ridley_Func_80_DoubleRet +0xa6ccbd Ridley_Func_81 +0xa6cd0c Ridley_Func_82 +0xa6cd24 Ridley_Func_83 +0xa6cdaa Ridley_Func_84 +0xa6ce65 Ridley_Func_85 +0xa6ceba Ridley_Func_86 +0xa6cf5a Ridley_Func_87 +0xa6d09f Ridley_Func_88 +0xa6d19d Ridley_Func_89 +0xa6d242 Ridley_Func_90 +0xa6d2aa Ridley_Func_91 +0xa6d2d6 Ridley_Func_92 +0xa6d3b4 Ridley_Func_93 +0xa6d3d4 Ridley_Func_94 +0xa6d3d9 Ridley_Func_95 +0xa6d3dc Ridley_Func_D3DC +0xa6d3f9 Ridley_Func_96 +0xa6d431 Ridley_Func_97 +0xa6d453 Ridley_Func_98 +0xa6d467 Ridley_Func_99 +0xa6d474 Ridley_Func_100 +0xa6d495 Ridley_D495 +0xa6d4b4 nullsub_315 +0xa6d4b5 Ridley_Func_101 +0xa6d4da Ridley_Func_102 +0xa6d4f9 Ridley_Func_103 +0xa6d523 Ridley_Func_104_0 +0xa6d526 Ridley_Func_104 +0xa6d5a9 Ridley_Func_105 +0xa6d62f Ridley_Func_106 +0xa6d6a6 Ridley_Func_107 +0xa6d722 Ridley_Func_108 +0xa6d734 Ridley_Func_109 +0xa6d798 Ridley_Func_110 +0xa6d800 Ridley_Func_111 +0xa6d86b Ridley_Func_112 +0xa6d914 Ridley_Func_113 +0xa6d955 Ridley_Func_114 +0xa6d97d Ridley_Func_115 +0xa6d9a8 Ridley_Func_116 +0xa6d9fd Ridley_Func_117 +0xa6da0b nullsub_316 +0xa6da0c Ridley_Func_118 +0xa6da8b Ridley_Func_119 +0xa6dad8 Ridley_Func_120 +0xa6dbcb BabyMetroid_DBCB_DoubleRet +0xa6dc90 kRidleysExplosion_Sprmap_DC90 +0xa6dc97 kRidleysExplosion_Sprmap_DC97 +0xa6dc9e kRidleysExplosion_Sprmap_DC9E +0xa6dca5 kRidley_Sprmap_DCA5 +0xa6dcac kRidley_Sprmap_DCAC +0xa6dcb3 kRidley_Sprmap_DCB3 +0xa6dcba kRidley_Ilist_DCBA +0xa6dcda kRidleysExplosion_Sprmap_DCDA +0xa6dce1 kRidleysExplosion_Sprmap_DCE1 +0xa6dce8 kRidleysExplosion_Sprmap_DCE8 +0xa6dcef kRidleysExplosion_Sprmap_DCEF +0xa6dcf6 kRidleysExplosion_Sprmap_DCF6 +0xa6dcfd kRidleysExplosion_Sprmap_DCFD +0xa6dd04 kRidleysExplosion_Sprmap_DD04 +0xa6dd0b kRidleysExplosion_Sprmap_DD0B +0xa6dd12 kRidleysExplosion_Sprmap_DD12 +0xa6dd19 kRidleysExplosion_Sprmap_DD19 +0xa6dd20 kRidleysExplosion_Sprmap_DD20 +0xa6dd27 kRidleysExplosion_Sprmap_DD27 +0xa6dd2e kRidleysExplosion_Sprmap_DD2E +0xa6dd35 kRidleysExplosion_Sprmap_DD35 +0xa6dd3c kRidleysExplosion_Sprmap_DD3C +0xa6dd43 kRidleysExplosion_Sprmap_DD43 +0xa6dd4a kRidleysExplosion_Sprmap_DD4A +0xa6dd6a kRidley_Sprmap_DD6A +0xa6dd85 kRidley_Sprmap_DD85 +0xa6dd96 kRidley_Sprmap_DD96 +0xa6dda7 kRidley_Sprmap_DDA7 +0xa6ddc2 kRidley_Sprmap_DDC2 +0xa6dde2 kRidleysExplosion_Sprmap_DDE2 +0xa6de02 kRidley_Sprmap_DE02 +0xa6de1d kRidley_Sprmap_DE1D +0xa6de2e kRidley_Sprmap_DE2E +0xa6de3f kRidley_Sprmap_DE3F +0xa6de5a kRidley_Sprmap_DE5A +0xa6de7a Ridley_Func_121 +0xa6dea6 Ridley_Func_122 +0xa6df08 Ridley_Func_123 +0xa6df29 Ridley_Func_124 +0xa6df66 Ridley_Func_125 +0xa6df8a Ridley_Shot +0xa6dfb2 Ridley_Powerbomb +0xa6dfb6 nullsub_317 +0xa6dfb7 Ridley_Func_126 +0xa6dfd9 Ridley_Func_127 +0xa6e01b Ridley_Func_128 +0xa6e088 Ridley_Func_129 +0xa6e14f kCeresRidley_Palette +0xa6e1af kRidleysExplosion_Palette +0xa6e4be Ridley_Instr_5 +0xa6e4ca Ridley_Instr_6 +0xa6e4d2 Ridley_Instr_10 +0xa6e4ee Ridley_Instr_4 +0xa6e4f8 Ridley_Instr_3 +0xa6e501 Ridley_Instr_2 +0xa6e517 Ridley_Instr_1 +0xa6e51f Ridley_Instr_14 +0xa6e538 kRidley_Ilist_E538 +0xa6e542 kRidley_Ilist_E542 +0xa6e548 kRidley_Ilist_E548 +0xa6e576 kRidley_Ilist_E576 +0xa6e5a0 kRidley_Ilist_E5A0 +0xa6e5b2 kRidley_Ilist_E5B2 +0xa6e5be kRidley_Ilist_E5BE +0xa6e5c8 kRidley_Ilist_E5C8 +0xa6e5d4 kRidley_Ilist_E5D4 +0xa6e5de kRidley_Ilist_E5DE +0xa6e5ea kRidley_Ilist_E5EA +0xa6e5f4 kRidley_Ilist_E5F4 +0xa6e5fe kRidley_Ilist_E5FE +0xa6e60c kRidley_Ilist_E60C +0xa6e618 kRidley_Ilist_E618 +0xa6e622 kRidley_Ilist_E622 +0xa6e62e kRidley_Ilist_E62E +0xa6e638 kRidley_Ilist_E638 +0xa6e644 kRidley_Ilist_E644 +0xa6e64e kRidley_Ilist_E64E +0xa6e658 kRidley_Ilist_E658 +0xa6e676 kRidley_Ilist_E676 +0xa6e690 kRidley_Ilist_E690 +0xa6e6ae kRidley_Ilist_E6AE +0xa6e6c8 kRidley_Ilist_E6C8 +0xa6e6de kRidley_Ilist_E6DE +0xa6e6f0 kRidley_Ilist_E6F0 +0xa6e706 kRidley_Ilist_E706 +0xa6e71c Ridley_Instr_9 +0xa6e727 Ridley_Instr_7 +0xa6e72f Ridley_Instr_8 +0xa6e73a kRidley_Ilist_E73A +0xa6e7b4 kRidley_Ilist_E7B4 +0xa6e828 Ridley_Func_131 +0xa6e840 Ridley_Func_132 +0xa6e84d Ridley_Instr_11 +0xa6e904 Ridley_Instr_12 +0xa6e909 Ridley_Instr_13 +0xa6e90c Ridley_E90C +0xa6e91d kRidley_Ilist_E91D +0xa6e945 kRidley_Ilist_E945 +0xa6e969 Ridley_Instr_15 +0xa6e976 Ridley_Instr_16 +0xa6e983 kRidley_ExtSprmap_E983 +0xa6e9a5 kRidley_ExtSprmap_E9A5 +0xa6e9c7 kRidley_ExtSprmap_E9C7 +0xa6e9e9 kRidley_ExtSprmap_E9E9 +0xa6ea0b kRidley_ExtSprmap_EA0B +0xa6ea2d kRidley_ExtSprmap_EA2D +0xa6ea4f kRidley_ExtSprmap_EA4F +0xa6ea71 kRidley_ExtSprmap_EA71 +0xa6ea93 kRidley_ExtSprmap_EA93 +0xa6eab5 kRidley_ExtSprmap_EAB5 +0xa6ead7 kRidley_ExtSprmap_EAD7 +0xa6eae1 kRidley_Hitbox_EAE1 +0xa6eafb kRidley_Hitbox_EAFB +0xa6eb15 kRidley_Hitbox_EB15 +0xa6eb2f kRidley_Hitbox_EB2F +0xa6eb3d kRidley_Hitbox_EB3D +0xa6eb4b kRidley_Hitbox_EB4B +0xa6eb59 kRidley_Hitbox_EB59 +0xa6eb67 kRidley_Hitbox_EB67 +0xa6eb75 kRidley_Hitbox_EB75 +0xa6eb83 kRidley_Hitbox_EB83 +0xa6eb91 kRidley_Hitbox_EB91 +0xa6ebab kRidley_Hitbox_EBAB +0xa6ebc5 kRidley_Hitbox_EBC5 +0xa6ebdf kRidley_Hitbox_EBDF +0xa6ebf9 kRidley_Hitbox_EBF9 +0xa6ec07 kRidley_Hitbox_EC07 +0xa6ec15 kRidley_Hitbox_EC15 +0xa6ec23 kRidley_Hitbox_EC23 +0xa6ec31 kRidley_Hitbox_EC31 +0xa6ec3f kRidley_Hitbox_EC3F +0xa6ec4d kRidley_Hitbox_EC4D +0xa6ec5b kRidley_Sprmap_EC5B +0xa6ec99 kRidley_Sprmap_EC99 +0xa6ecdc kRidley_Sprmap_ECDC +0xa6ed29 kRidley_Sprmap_ED29 +0xa6ed4e kRidley_Sprmap_ED4E +0xa6ed6e kRidley_Sprmap_ED6E +0xa6ed8e kRidley_Sprmap_ED8E +0xa6ed95 kRidley_Sprmap_ED95 +0xa6edb5 kRidley_Sprmap_EDB5 +0xa6ee57 kRidley_Sprmap_EE57 +0xa6ee95 kRidley_Sprmap_EE95 +0xa6eed8 kRidley_Sprmap_EED8 +0xa6ef25 kRidley_Sprmap_EF25 +0xa6ef4a kRidley_Sprmap_EF4A +0xa6ef6a kRidley_Sprmap_EF6A +0xa6ef8a kRidley_Sprmap_EF8A +0xa6ef91 kRidley_Sprmap_EF91 +0xa6efb1 CeresSteam_Init +0xa6eff4 nullsub_350 +0xa6f00d CeresSteam_Main +0xa6f019 CeresSteam_Func_1 +0xa6f03f CeresSteam_Touch +0xa6f04d kCeresSteam_Ilist_F04D +0xa6f059 kCeresSteam_Ilist_F059 +0xa6f05f kCeresSteam_Ilist_F05F +0xa6f061 kCeresSteam_Ilist_F061 +0xa6f081 kCeresSteam_Ilist_F081 +0xa6f08d kCeresSteam_Ilist_F08D +0xa6f095 kCeresSteam_Ilist_F095 +0xa6f0b5 kCeresSteam_Ilist_F0B5 +0xa6f0c1 kCeresSteam_Ilist_F0C1 +0xa6f0c9 kCeresSteam_Ilist_F0C9 +0xa6f0e9 kCeresSteam_Ilist_F0E9 +0xa6f0f5 kCeresSteam_Ilist_F0F5 +0xa6f0fd kCeresSteam_Ilist_F0FD +0xa6f11d CeresSteam_Instr_1 +0xa6f127 CeresSteam_Instr_2 +0xa6f135 CeresSteam_Instr_3 +0xa6f142 kCeresSteam_ExtSprmap_F142 +0xa6f14c kCeresSteam_ExtSprmap_F14C +0xa6f156 kCeresSteam_ExtSprmap_F156 +0xa6f160 kCeresSteam_ExtSprmap_F160 +0xa6f16a kCeresSteam_ExtSprmap_F16A +0xa6f174 kCeresSteam_ExtSprmap_F174 +0xa6f17e kCeresSteam_ExtSprmap_F17E +0xa6f188 kCeresSteam_ExtSprmap_F188 +0xa6f192 kCeresSteam_ExtSprmap_F192 +0xa6f19c kCeresSteam_ExtSprmap_F19C +0xa6f1a6 kCeresSteam_ExtSprmap_F1A6 +0xa6f1b0 kCeresSteam_ExtSprmap_F1B0 +0xa6f1ba kCeresSteam_ExtSprmap_F1BA +0xa6f1c4 kCeresSteam_ExtSprmap_F1C4 +0xa6f1ce kCeresSteam_ExtSprmap_F1CE +0xa6f1d8 kCeresSteam_ExtSprmap_F1D8 +0xa6f1e2 kCeresSteam_ExtSprmap_F1E2 +0xa6f1ec kCeresSteam_ExtSprmap_F1EC +0xa6f1f6 kCeresSteam_ExtSprmap_F1F6 +0xa6f200 kCeresSteam_ExtSprmap_F200 +0xa6f20a kCeresSteam_ExtSprmap_F20A +0xa6f214 kCeresSteam_ExtSprmap_F214 +0xa6f21e kCeresSteam_ExtSprmap_F21E +0xa6f228 kCeresSteam_ExtSprmap_F228 +0xa6f232 kCeresSteam_ExtSprmap_F232 +0xa6f23c kCeresSteam_ExtSprmap_F23C +0xa6f246 kCeresSteam_ExtSprmap_F246 +0xa6f250 kCeresSteam_ExtSprmap_F250 +0xa6f25a kCeresSteam_Hitbox_F25A +0xa6f25c kCeresSteam_Hitbox_F25C +0xa6f26a kCeresSteam_Hitbox_F26A +0xa6f278 kCeresSteam_Hitbox_F278 +0xa6f286 kCeresSteam_Hitbox_F286 +0xa6f294 kCeresSteam_Hitbox_F294 +0xa6f2a2 kCeresSteam_Hitbox_F2A2 +0xa6f2b0 kCeresSteam_Hitbox_F2B0 +0xa6f2be kCeresSteam_Hitbox_F2BE +0xa6f2cc kCeresSteam_Hitbox_F2CC +0xa6f2da kCeresSteam_Hitbox_F2DA +0xa6f2e8 kCeresSteam_Hitbox_F2E8 +0xa6f2f6 kCeresSteam_Hitbox_F2F6 +0xa6f304 kCeresSteam_Hitbox_F304 +0xa6f312 kCeresSteam_Hitbox_F312 +0xa6f320 kCeresSteam_Hitbox_F320 +0xa6f32e kCeresSteam_Hitbox_F32E +0xa6f33c kCeresSteam_Hitbox_F33C +0xa6f34a kCeresSteam_Hitbox_F34A +0xa6f358 kCeresSteam_Hitbox_F358 +0xa6f366 kCeresSteam_Hitbox_F366 +0xa6f374 kCeresSteam_Sprmap_F374 +0xa6f37b kCeresSteam_Sprmap_F37B +0xa6f387 kCeresSteam_Sprmap_F387 +0xa6f398 kCeresSteam_Sprmap_F398 +0xa6f3ae kCeresSteam_Sprmap_F3AE +0xa6f3bf kCeresSteam_Sprmap_F3BF +0xa6f3cb kCeresSteam_Sprmap_F3CB +0xa6f3d2 kCeresSteam_Sprmap_F3D2 +0xa6f3d9 kCeresSteam_Sprmap_F3D9 +0xa6f3e5 kCeresSteam_Sprmap_F3E5 +0xa6f3f6 kCeresSteam_Sprmap_F3F6 +0xa6f40c kCeresSteam_Sprmap_F40C +0xa6f41d kCeresSteam_Sprmap_F41D +0xa6f429 kCeresSteam_Sprmap_F429 +0xa6f430 kCeresSteam_Sprmap_F430 +0xa6f437 kCeresSteam_Sprmap_F437 +0xa6f443 kCeresSteam_Sprmap_F443 +0xa6f454 kCeresSteam_Sprmap_F454 +0xa6f46a kCeresSteam_Sprmap_F46A +0xa6f47b kCeresSteam_Sprmap_F47B +0xa6f487 kCeresSteam_Sprmap_F487 +0xa6f48e kCeresSteam_Sprmap_F48E +0xa6f495 kCeresSteam_Sprmap_F495 +0xa6f4a1 kCeresSteam_Sprmap_F4A1 +0xa6f4b2 kCeresSteam_Sprmap_F4B2 +0xa6f4c8 kCeresSteam_Sprmap_F4C8 +0xa6f4d9 kCeresSteam_Sprmap_F4D9 +0xa6f4e5 kCeresSteam_Sprmap_F4E5 +0xa6f4ec kCeresDoor_Palette +0xa6f53a kCeresDoor_Ilist_F53A +0xa6f55e kCeresDoor_Ilist_F55E +0xa6f562 kCeresDoor_Ilist_F562 +0xa6f56c kCeresDoor_Ilist_F56C +0xa6f578 kCeresDoor_Ilist_F578 +0xa6f584 kCeresDoor_Ilist_F584 +0xa6f598 kCeresDoor_Ilist_F598 +0xa6f59c kCeresDoor_Ilist_F59C +0xa6f5be kCeresDoor_Ilist_F5BE +0xa6f5ca kCeresDoor_Ilist_F5CA +0xa6f5d6 kCeresDoor_Ilist_F5D6 +0xa6f5ea kCeresDoor_Ilist_F5EA +0xa6f5ee kCeresDoor_Ilist_F5EE +0xa6f610 kCeresDoor_Ilist_F610 +0xa6f612 kCeresDoor_Ilist_F612 +0xa6f61a kCeresDoor_Ilist_F61A +0xa6f62a kCeresDoor_Ilist_F62A +0xa6f634 kCeresDoor_Ilist_F634 +0xa6f636 kCeresDoor_Ilist_F636 +0xa6f63e CeresDoor_Instr_6 +0xa6f662 CeresDoor_Incr +0xa6f665 CeresDoor_Goto +0xa6f66a CeresDoor_Instr_4 +0xa6f678 CeresDoor_Instr_8 +0xa6f67f CeresDoor_Func_6b +0xa6f68b CeresSteam_Instr_4 +0xa6f695 CeresDoor_Instr_1 +0xa6f69f CeresDoor_Instr_3 +0xa6f6a6 CeresSteam_Instr_5 +0xa6f6b0 CeresDoor_Instr_5 +0xa6f6b3 CeresDoor_Instr_2 +0xa6f6bd CeresDoor_Instr_7 +0xa6f6c5 CeresDoor_Init +0xa6f739 CeresDoor_Func_1 +0xa6f765 CeresDoor_Main +0xa6f76b CeresDoor_Func_2 +0xa6f770 CeresDoor_Func_3 +0xa6f773 CeresDoor_F773 +0xa6f7a5 CeresDoor_Func_4 +0xa6f7bd CeresDoor_Func_5 +0xa6f7dc CeresDoor_Func_6 +0xa6f850 CeresDoor_Func_7 +0xa6f8f1 CeresDoor_Func_8 +0xa6f920 nullsub_41 +0xa6f921 kCeresDoor_Sprmap_F921 +0xa6f95f kCeresDoor_Sprmap_F95F +0xa6f989 kCeresDoor_Sprmap_F989 +0xa6f9b3 kCeresDoor_Sprmap_F9B3 +0xa6f9d3 kCeresDoor_Sprmap_F9D3 +0xa6f9f3 kCeresDoor_Sprmap_F9F3 +0xa6fa13 kCeresDoor_Sprmap_FA13 +0xa6fa3d kCeresDoor_Sprmap_FA3D +0xa6fa67 kCeresDoor_Sprmap_FA67 +0xa6fa87 kCeresDoor_Sprmap_FA87 +0xa6faa7 kCeresDoor_Sprmap_FAA7 +0xa6fac7 kCeresDoor_Sprmap_FAC7 +0xa6face kCeresDoor_Sprmap_FACE +0xa6fb2f kCeresDoor_Sprmap_FB2F +0xa6fb72 Zebetites_Init +0xa6fc33 Zebetites_Main +0xa6fc41 Zebetites_Func_1 +0xa6fc5b Zebetites_Func_2 +0xa6fc67 Zebetites_Func_3 +0xa6fcaa Zebetites_Func_6 +0xa6fccb Zebetites_Func_7 +0xa6fcd9 Zebetites_Func_8 +0xa6fcf1 Zebetites_Func_9 +0xa6fd09 Zebetites_Func_5 +0xa6fd5e Zebetites_Func_4 +0xa6fda7 Zebetites_Touch +0xa6fdac Zebetites_Shot +0xa6fdcc kZebetites_Ilist_FDCC +0xa6fdd2 kZebetites_Ilist_FDD2 +0xa6fdd8 kZebetites_Ilist_FDD8 +0xa6fdde kZebetites_Ilist_FDDE +0xa6fde4 kZebetites_Ilist_FDE4 +0xa6fdea kZebetites_Ilist_FDEA +0xa6fdf0 kZebetites_Ilist_FDF0 +0xa6fdf6 kZebetites_Ilist_FDF6 +0xa6fdfc kZebetites_Ilist_FDFC +0xa6fe02 kZebetites_Ilist_FE02 +0xa6fe08 kZebetites_Sprmap_FE08 +0xa6fe19 kZebetites_Sprmap_FE19 +0xa6fe2a kZebetites_Sprmap_FE2A +0xa6fe4a kZebetites_Sprmap_FE4A +0xa6fe6a kZebetites_Sprmap_FE6A +0xa6fe8a kZebetites_Sprmap_FE8A +0xa6fe91 kZebetites_Sprmap_FE91 +0xa6fe98 kZebetites_Sprmap_FE98 +0xa6fea4 kZebetites_Sprmap_FEA4 +0xa6feb0 kZebetites_Sprmap_FEB0 +0xa78000 Enemy_GrappleReact_NoInteract_A7 +0xa78005 Enemy_GrappleReact_SamusLatchesOn_A7 +0xa7800a Enemy_GrappleReact_KillEnemy_A7 +0xa7800f Enemy_GrappleReact_CancelBeam_A7 +0xa78014 Enemy_GrappleReact_SamusLatchesNoInvinc_A7 +0xa78019 Enemy_GrappleReact_SamusLatchesParalyze_A7 +0xa7801e Enemy_GrappleReact_HurtSamus_A7 +0xa78023 Enemy_NormalTouchAI_A7 +0xa78028 Enemy_NormalTouchAI_SkipDeathAnim_A7 +0xa7802d Enemy_NormalShotAI_A7 +0xa78032 Enemy_NormalShotAI_SkipSomeParts_A7 +0xa78037 Enemy_NormalPowerBombAI_A7 +0xa7803c Enemy_NormalPowerBombAI_SkipDeathAnim_A7 +0xa78041 Enemy_NormalFrozenAI_A7 +0xa78046 CreateADudShot_A7 +0xa7804b nullsub_169_A7 +0xa7804c nullsub_170_A7 +0xa7804d kSpritemap_Nothing_A7 +0xa7804f kExtendedSpritemap_Nothing_A7 +0xa78059 word8059_A7 +0xa78069 sub8069_A7 +0xa7806b Enemy_SetAiPreInstr_A7 +0xa78074 Enemy_ClearAiPreInstr_A7 +0xa7807b nullsub_171_A7 +0xa7807c EnemyInstr_StopScript_A7 +0xa7808a EnemyInstr_Call_A7 +0xa78097 loc8097_A7 +0xa7809c EnemyInstr_CallWithArg_A7 +0xa780ac loc80AC_A7 +0xa780b5 EnemyInstr_CallFar_A7 +0xa780cb loc80CB_A7 +0xa780ce EnemyInstr_CallFarWithArg_A7 +0xa780ea loc80EA_A7 +0xa780ed EnemyInstr_Goto_A7 +0xa780f2 EnemyInstr_GotoRel_A7 +0xa78100 loc8100_A7 +0xa78103 loc8103_A7 +0xa78108 EnemyInstr_DecTimerAndGoto_A7 +0xa78110 EnemyInstr_DecTimerAndGoto2_A7 +0xa78118 EnemyInstr_DecTimerAndGotoRel_A7 +0xa78123 EnemyInstr_SetTimer_A7 +0xa7812c EnemyInstr_Skip2bytes_A7 +0xa7812f EnemyInstr_Sleep_A7 +0xa7813a EnemyInstr_WaitNframes_A7 +0xa7814b EnemyInstr_CopyToVram_A7 +0xa78173 EnemyInstr_EnableOffScreenProcessing_A7 +0xa7817d EnemyInstr_DisableOffScreenProcessing_A7 +0xa78187 kCommonEnemySpeeds_Linear_A7 +0xa7838f kCommonEnemySpeeds_Quadratic_A7 +0xa78687 kKraid_Palette +0xa786c7 kKraid_Palette2 +0xa786e7 kKraid_Ilist_86E7 +0xa786ed kKraid_Ilist_86ED +0xa786f3 kKraid_Ilist_86F3 +0xa787bd kKraid_Ilist_87BD +0xa78887 kKraid_Ilist_8887 +0xa7893d kKraid_Ilist_893D +0xa789f3 kKraid_Ilist_89F3 +0xa78a41 kKraid_Ilist_8A41 +0xa78a8f Kraid_Instr_9 +0xa78aa4 kKraid_Ilist_8AA4 +0xa78af0 kKraid_Ilist_8AF0 +0xa78afe kKraid_Ilist_8AFE +0xa78b04 kKraid_Ilist_8B04 +0xa78b0a kKraid_Ilist_8B0A +0xa78b2e kKraid_ExtSprmap_8B2E +0xa78b40 kKraid_ExtSprmap_8B40 +0xa78b52 kKraid_ExtSprmap_8B52 +0xa78b64 kKraid_ExtSprmap_8B64 +0xa78b76 kKraid_ExtSprmap_8B76 +0xa78b88 kKraid_ExtSprmap_8B88 +0xa78b9a kKraid_ExtSprmap_8B9A +0xa78bac kKraid_ExtSprmap_8BAC +0xa78bbe kKraid_ExtSprmap_8BBE +0xa78bd0 kKraid_ExtSprmap_8BD0 +0xa78be2 kKraid_ExtSprmap_8BE2 +0xa78bf4 kKraid_ExtSprmap_8BF4 +0xa78c06 kKraid_ExtSprmap_8C06 +0xa78c18 kKraid_ExtSprmap_8C18 +0xa78c2a kKraid_ExtSprmap_8C2A +0xa78c3c kKraid_ExtSprmap_8C3C +0xa78c4e kKraid_ExtSprmap_8C4E +0xa78c58 kKraid_ExtSprmap_8C58 +0xa78c62 kKraid_ExtSprmap_8C62 +0xa78c6c kKraid_Sprmap_8C6C +0xa78c87 kKraid_ExtSprmap_8C87 +0xa78c91 kKraid_ExtSprmap_8C91 +0xa78ca3 kKraid_ExtSprmap_8CA3 +0xa78cb5 kKraid_ExtSprmap_8CB5 +0xa78cc7 kKraid_ExtSprmap_8CC7 +0xa78cd9 kKraid_ExtSprmap_8CD9 +0xa78ce3 kKraid_ExtSprmap_8CE3 +0xa78cf5 kKraid_ExtSprmap_8CF5 +0xa78d07 kKraid_ExtSprmap_8D07 +0xa78d19 kKraid_ExtSprmap_8D19 +0xa78d2b kKraid_ExtSprmap_8D2B +0xa78d3d kKraid_ExtSprmap_8D3D +0xa78d4f kKraid_ExtSprmap_8D4F +0xa78d61 kKraid_ExtSprmap_8D61 +0xa78d73 kKraid_ExtSprmap_8D73 +0xa78d85 kKraid_ExtSprmap_8D85 +0xa78d97 kKraid_ExtSprmap_8D97 +0xa78da9 kKraid_ExtSprmap_8DA9 +0xa78dbb kKraid_ExtSprmap_8DBB +0xa78dcd kKraid_ExtSprmap_8DCD +0xa78ddf kKraid_ExtSprmap_8DDF +0xa78df1 kKraid_ExtSprmap_8DF1 +0xa78e03 kKraid_ExtSprmap_8E03 +0xa78e15 kKraid_ExtSprmap_8E15 +0xa78e27 kKraid_ExtSprmap_8E27 +0xa78e39 kKraid_ExtSprmap_8E39 +0xa78e4b kKraid_ExtSprmap_8E4B +0xa78e5d kKraid_ExtSprmap_8E5D +0xa78e6f kKraid_ExtSprmap_8E6F +0xa78e81 kKraid_ExtSprmap_8E81 +0xa78e93 kKraid_ExtSprmap_8E93 +0xa78ea5 kKraid_ExtSprmap_8EA5 +0xa78eb7 kKraid_ExtSprmap_8EB7 +0xa78ec9 kKraid_ExtSprmap_8EC9 +0xa78edb kKraid_ExtSprmap_8EDB +0xa78eed kKraid_ExtSprmap_8EED +0xa78eff kKraid_ExtSprmap_8EFF +0xa78f11 kKraid_ExtSprmap_8F11 +0xa78f23 kKraid_ExtSprmap_8F23 +0xa78f35 kKraid_ExtSprmap_8F35 +0xa78f47 kKraid_ExtSprmap_8F47 +0xa78f59 kKraid_ExtSprmap_8F59 +0xa78f83 kKraid_ExtSprmap_8F83 +0xa78fad kKraid_ExtSprmap_8FAD +0xa78fd7 kKraid_ExtSprmap_8FD7 +0xa79001 kKraid_ExtSprmap_9001 +0xa7902b kKraid_ExtSprmap_902B +0xa79055 kKraid_ExtSprmap_9055 +0xa7907f kKraid_ExtSprmap_907F +0xa790a9 kKraid_ExtSprmap_90A9 +0xa790d3 kKraid_ExtSprmap_90D3 +0xa790fd kKraid_ExtSprmap_90FD +0xa79127 kKraid_ExtSprmap_9127 +0xa79151 kKraid_ExtSprmap_9151 +0xa7917b kKraid_ExtSprmap_917B +0xa791a5 kKraid_ExtSprmap_91A5 +0xa791cf kKraid_ExtSprmap_91CF +0xa791f9 kKraid_ExtSprmap_91F9 +0xa79223 kKraid_ExtSprmap_9223 +0xa7924d kKraid_ExtSprmap_924D +0xa79277 kKraid_ExtSprmap_9277 +0xa792a1 kKraid_ExtSprmap_92A1 +0xa792ab kKraid_ExtSprmap_92AB +0xa792b5 kKraid_Hitbox_92B5 +0xa792c3 kKraid_Hitbox_92C3 +0xa792d1 kKraid_Hitbox_92D1 +0xa792eb kKraid_Hitbox_92EB +0xa792f9 kKraid_Hitbox_92F9 +0xa79313 kKraid_Hitbox_9313 +0xa79321 kKraid_Hitbox_9321 +0xa7933b kKraid_Hitbox_933B +0xa79349 kKraid_Hitbox_9349 +0xa79363 kKraid_Hitbox_9363 +0xa79371 kKraid_Hitbox_9371 +0xa7937f kKraid_Hitbox_937F +0xa79399 kKraid_Hitbox_9399 +0xa793a7 kKraid_Hitbox_93A7 +0xa793c1 kKraid_Hitbox_93C1 +0xa793cf kKraid_Hitbox_93CF +0xa793e9 kKraid_Hitbox_93E9 +0xa793f7 kKraid_Hitbox_93F7 +0xa79411 kKraid_Hitbox_9411 +0xa7941f kKraid_Hitbox_941F +0xa79439 kKraid_Hitbox_9439 +0xa79453 kKraid_Hitbox_9453 +0xa79461 kKraid_Hitbox_9461 +0xa7946f kKraid_Hitbox_946F +0xa7947d kKraid_Hitbox_947D +0xa7948b Kraid_Touch_ArmFoot +0xa7948f nullsub_44 +0xa79490 KraidsArm_Touch +0xa7949f Kraid_Touch +0xa794a4 Kraid_Func_1 +0xa794b1 Kraid_Shot +0xa794b5 nullsub_43 +0xa794b6 Kraid_Arm_Shot +0xa794c4 kKraid_Sprmap_94C4 +0xa794da kKraid_Sprmap_94DA +0xa794e1 kKraid_Sprmap_94E1 +0xa794e8 kKraid_Sprmap_94E8 +0xa794f4 kKraid_Sprmap_94F4 +0xa794fb kKraid_Sprmap_94FB +0xa79507 kKraid_Sprmap_9507 +0xa7950e kKraid_Sprmap_950E +0xa7951a kKraid_Sprmap_951A +0xa79521 kKraid_Sprmap_9521 +0xa7952d kKraid_Sprmap_952D +0xa79539 kKraid_Sprmap_9539 +0xa79540 kKraid_Sprmap_9540 +0xa7954c kKraid_Sprmap_954C +0xa79553 kKraid_Sprmap_9553 +0xa7955f kKraid_Sprmap_955F +0xa79566 kKraid_Sprmap_9566 +0xa79572 kKraid_Sprmap_9572 +0xa79579 kKraid_Sprmap_9579 +0xa7958a kKraid_Sprmap_958A +0xa795b4 kKraid_Sprmap_95B4 +0xa795de kKraid_Sprmap_95DE +0xa79608 kKraid_Sprmap_9608 +0xa79632 kKraid_Sprmap_9632 +0xa7965c kKraid_Sprmap_965C +0xa79686 kKraid_Sprmap_9686 +0xa796c4 kKraid_Sprmap_96C4 +0xa796cb kKraid_Sprmap_96CB +0xa797c8 kKraidTilemaps_0 +0xa79ac8 kKraidTilemaps_1 +0xa79dc8 kKraidTilemaps_2 +0xa7a0c8 kKraidTilemaps_3 +0xa7a3c8 kKraid_ExtSprmap_A3C8 +0xa7a3da kKraid_ExtSprmap_A3DA +0xa7a3ec kKraid_ExtSprmap_A3EC +0xa7a3fe kKraid_ExtSprmap_A3FE +0xa7a410 kKraid_ExtSprmap_A410 +0xa7a422 kKraid_ExtSprmap_A422 +0xa7a434 kKraid_ExtSprmap_A434 +0xa7a446 kKraid_ExtSprmap_A446 +0xa7a458 kKraid_ExtSprmap_A458 +0xa7a46a kKraid_ExtSprmap_A46A +0xa7a47c kKraid_Sprmap_A47C +0xa7a483 kKraid_Sprmap_A483 +0xa7a48f kKraid_Sprmap_A48F +0xa7a496 kKraid_Sprmap_A496 +0xa7a4a2 kKraid_Sprmap_A4A2 +0xa7a4a9 kKraid_Sprmap_A4A9 +0xa7a4b5 kKraid_Sprmap_A4B5 +0xa7a4bc kKraid_Sprmap_A4BC +0xa7a4c8 kKraid_Sprmap_A4C8 +0xa7a4cf kKraid_Sprmap_A4CF +0xa7a4db kKraid_Sprmap_A4DB +0xa7a4e2 kKraid_ExtSprmap_A4E2 +0xa7a4ec kKraid_ExtSprmap_A4EC +0xa7a4f6 kKraid_ExtSprmap_A4F6 +0xa7a500 kKraid_Sprmap_A500 +0xa7a511 kKraid_Sprmap_A511 +0xa7a53b kKraid_Sprmap_A53B +0xa7a565 kKraid_ExtSprmap_A565 +0xa7a577 kKraid_Sprmap_A577 +0xa7a5a1 kKraid_Sprmap_A5A1 +0xa7a5df kKraid_Sprmap_A5DF +0xa7a5fa kKraid_Sprmap_A5FA +0xa7a610 kKraid_Sprmap_A610 +0xa7a617 kKraid_Sprmap_A617 +0xa7a623 kKraid_Sprmap_A623 +0xa7a639 kKraid_Sprmap_A639 +0xa7a645 kKraid_Sprmap_A645 +0xa7a65b kKraid_Sprmap_A65B +0xa7a667 kKraid_Sprmap_A667 +0xa7a67d kKraid_Sprmap_A67D +0xa7a689 kKraid_Sprmap_A689 +0xa7a69f kKraid_Sprmap_A69F +0xa7a6dd kKraid_Sprmap_A6DD +0xa7a716 kKraidsRoomBg +0xa7a92c Kraid_CheckIfDead +0xa7a943 Kraid_SetEnemyPropsToDead +0xa7a959 Kraid_Init +0xa7aaa6 kKraid_BgTargetPalette3 +0xa7aac6 Kraid_SetupGfxWithTilePrioClear +0xa7ab43 KraidsArm_Init +0xa7ab68 KraidsTopLint_Init +0xa7ab9c KraidsMiddleLint_Init +0xa7abca KraidsBottomLint_Init +0xa7abf8 KraidsFoot_Init +0xa7ac21 Kraid_Main +0xa7ac4d Kraid_GetsBig_BreakCeilingPlatforms +0xa7ad3a Kraid_GetsBig_SetBG2TilemapPrioBits +0xa7ad61 Kraid_GetsBig_FinishUpdateBg2Tilemap +0xa7ad8e Kraid_GetsBig_DrawRoomBg +0xa7ad9a Kraid_DrawRoomBg +0xa7ade1 Kraid_GetsBig_Thinking_Setup +0xa7ade9 Kraid_Mainloop_Thinking_Setup +0xa7adef Kraid_SetLintYAndRandomThinkTimer +0xa7ae23 Kraid_GetsBig_FadeInRoomBg +0xa7ae90 Kraid_Lints_Enable +0xa7aea4 Kraid_Mainloop_Thinking +0xa7aec4 Kraid_GetsBig_Thinking +0xa7aee4 Kraid_Shot_MouthIsOpen +0xa7af32 Kraid_ProcessKraidInstr +0xa7af3d Kraid_ExecuteInstr +0xa7af88 Kraid_ExecuteNextInstr +0xa7af94 KraidInstr_PlayRoarSfx +0xa7af9f KraidInstr_PlayDyingSfx +0xa7afaa Kraid_Shot_Mouth +0xa7b0cb Kraid_SpawnExplosionEproj +0xa7b0f3 Kraid_Enemy_Touch +0xa7b181 Kraid_Shot_Body +0xa7b269 UNUSED_sub_A7B269 +0xa7b337 Kraid_Palette_Handling +0xa7b371 Kraid_HurtFlash_Handling +0xa7b394 Kraid_HealthBasedPaletteHandling +0xa7b3d3 kKraid_BgPalette7 +0xa7b4f3 kKraid_BgPalette7_KraidDeath +0xa7b513 kKraid_SprPalette7_KraidDeath +0xa7b633 Kraid_Instr_1 +0xa7b636 Kraid_Instr_DecYpos +0xa7b63c Kraid_Instr_IncrYpos_Shake +0xa7b64e Kraid_Instr_PlaySound_0x76 +0xa7b65a Kraid_Instr_XposMinus3 +0xa7b667 Kraid_Instr_XposMinus3b +0xa7b674 Kraid_Instr_XposPlus3 +0xa7b683 Kraid_Instr_MoveHimRight +0xa7b6bf Kraid_InitEyeGlowing +0xa7b6d7 Kraid_Shot_GlowHisEye +0xa7b73d Kraid_Shot_UnglowEye +0xa7b7bd KraidsArm_Main +0xa7b801 KraidsTopLint_Main +0xa7b80d KraidsMiddleLint_Main +0xa7b819 KraidsBottomLint_Main +0xa7b822 KraidLintCommon_Main +0xa7b831 nullsub_347 +0xa7b832 KraidLint_ProduceLint +0xa7b868 KraidLint_ChargeLint +0xa7b89b KraidLint_FireLint +0xa7b907 KraidFingernail_WaitForLintXpos +0xa7b923 Kraid_AlignEnemyToKraid +0xa7b92d KraidEnemy_HandleFunctionTimer +0xa7b93f KraidEnemy_DecrementEnemyFunctionTimer +0xa7b960 KraidFoot_FirstPhase_Thinking +0xa7b965 KraidEnemy_ProcessInstrEnemyTimer +0xa7b96a Kraid_EnemyTouch_Lint +0xa7b9f6 KraidsFoot_Main +0xa7ba2d nullsub_234 +0xa7ba2e KraidsFoot_SecondPhase_Thinking +0xa7bb0d Kraid_SetWalkingBackwards +0xa7bb29 Kraid_SetWalkingForwards +0xa7bb45 KraidsFoot_SecondPhase_WalkingBackwards +0xa7bb6e KraidsFoot_SecondPhaseSetup_WalkToStartPt +0xa7bba4 KraidsFoot_SecondPhase_Init +0xa7bbae KraidsFoot_SecondPhase_WalkForward +0xa7bbea Kraid_Main_AttackWithMouthOpen +0xa7bc75 UNUSED_sub_A7BC75 +0xa7bcb5 UNUSED_sub_A7BCB5 +0xa7bccf KraidsGoodFingernail_Touch +0xa7bcde KraidsBadFingernail_Touch +0xa7bced nullsub_235 +0xa7bcee nullsub_236 +0xa7bcef KraidsGoodFingernail_Init +0xa7bcf2 KraidFingernailInit +0xa7bd2d KraidsBadFingernail_Init +0xa7bd32 KraidsGoodFingernail_Main +0xa7bd49 KraidsBadFingernail_Main +0xa7bd60 KraidsFingernail_Init +0xa7be8e KraidsFingernail_Fire +0xa7bf2d KraidsFoot_PrepareToLungeForward +0xa7bf5d KraidsFoot_FirstPhase_LungeForward +0xa7bfab KraidsFoot_FirstPhase_RetreatFromLunge +0xa7c005 Kraid_HandleFirstPhase +0xa7c0a1 Kraid_GetsBig_ReleaseCamera +0xa7c0bd UNUSED_sub_A7C0BD +0xa7c168 Kraid_SpawnPlmToClearCeiling +0xa7c171 Kraid_ClearSomeSpikes +0xa7c1fb UnpauseHook_Kraid_IsDead +0xa7c24e UnpauseHook_Kraid_IsAlive +0xa7c278 Kraid_TransferTopHalfToVram +0xa7c2a0 Kraid_UnpauseHook_IsSinking +0xa7c325 PauseHook_Kraid +0xa7c360 Kraid_Death_Init +0xa7c3f9 Kraid_Death_Fadeout +0xa7c457 UNUSED_sub_A7C457 +0xa7c4a4 Kraid_Death_UpdateBG2TilemapTopHalf +0xa7c4c8 Kraid_Death_UpdateBG2TilemapBottomHalf +0xa7c51d Kraid_PlaySoundEveryHalfSecond +0xa7c537 Kraid_Death_SinkThroughFloor +0xa7c59f Kraid_HandleSinking +0xa7c5e7 kKraidSinkEntry +0xa7c691 Kraid_CrumbleLeftPlatform_Left +0xa7c6a6 nullsub_356 +0xa7c6a7 Kraid_CrumbleRightPlatform_Middle +0xa7c6bd Kraid_CrumbleRightPlatform_Left +0xa7c6d3 Kraid_CrumbleLeftPlatform_Right +0xa7c6e9 Kraid_CrumbleLeftPlatform_Middle +0xa7c6ff Kraid_CrumbleRightPlatform_Right +0xa7c715 Kraid_FadeInBg_ClearBg2TilemapTopHalf +0xa7c751 Kraid_FadeInBg_ClearBg2TilemapBottomHalf +0xa7c777 Kraid_FadeInBg_LoadBg3Tiles1of4 +0xa7c7a3 Kraid_FadeInBg_LoadBg3Tiles2of4 +0xa7c7c9 Kraid_FadeInBg_LoadBg3Tiles3of4 +0xa7c7ef Kraid_FadeInBg_LoadBg3Tiles4of4 +0xa7c815 Kraid_FadeInBg_FadeInBp6 +0xa7c843 Kraid_FadeInBg_SetEnemyDead_KraidWasAlive +0xa7c851 Kraid_FadeInBg_SetEnemyDead_KraidWasDead +0xa7c865 Kraid_RestrictSamusXtoFirstScreen +0xa7c86b Kraid_RaiseKraidThroughFloor +0xa7c874 Kraid_UpdateBg2TilemapTopHalf +0xa7c89a Kraid_Raise_LoadTilemapBottomAndShake +0xa7c8b6 Kraid_UpdateBG2TilemapBottomHalf +0xa7c8e0 Kraid_Raise_SpawnRandomEarthquakeProjs16 +0xa7c902 Kraid_Raise_SpawnRandomEarthquakeProjs8 +0xa7c924 Kraid_Raise_Handler +0xa7c995 Kraid_SpawnRandomQuakeProjs +0xa7c9ee Kraid_RestrictSamusXtoFirstScreen_2 +0xa7ca01 kPhantoon_Palette +0xa7cc41 kKraid_Ilist_CC41 +0xa7cc47 kKraid_Ilist_CC47 +0xa7cc4d kKraid_Ilist_CC4D +0xa7cc53 kKraid_Ilist_CC53 +0xa7cc69 kKraid_Ilist_CC69 +0xa7cc7b kKraid_Ilist_CC7B +0xa7cc81 kKraid_Ilist_CC81 +0xa7cc91 kKraid_Ilist_CC91 +0xa7cc9d kKraid_Ilist_CC9D +0xa7cca7 kKraid_Ilist_CCA7 +0xa7ccad kKraid_Ilist_CCAD +0xa7ccb3 kKraid_Ilist_CCB3 +0xa7ccb9 kKraid_Ilist_CCB9 +0xa7ccbf kKraid_Ilist_CCBF +0xa7ccc5 kKraid_Ilist_CCC5 +0xa7cccb kKraid_Ilist_CCCB +0xa7ccd1 kKraid_Ilist_CCD1 +0xa7ccd7 kKraid_Ilist_CCD7 +0xa7cceb kKraid_Ilist_CCEB +0xa7cdf3 Phantoon_Init +0xa7ce55 Phantoon2_Init +0xa7cea6 Phantoon_Main +0xa7ceed Phantoon_Func_1 +0xa7cf0c Phantoon_Func_2 +0xa7cf27 Phantoon_Func_3 +0xa7cf5e Phantoon_Func_4 +0xa7cf70 Phantoon_Func_5 +0xa7cf8b Phantoon_Func_6 +0xa7cfca Phantoon_Func_7 +0xa7d03f Phantoon_StartTrackingSamusAndInitEyeTimer +0xa7d076 Phantoon_PickPatternForRound2 +0xa7d0f1 Phantoon_AdjustSpeedAndMoveInFigure8 +0xa7d114 Phantoon_AdjustSpeedLeftSideClockwise +0xa7d193 Phantoon_AdjustSpeedRightSideClockwise +0xa7d215 Phantoon_MoveInFigure8_LeftSideClockwise +0xa7d271 Phantoon_MoveInFigure8_RightSideClockwise +0xa7d2d1 Phantoon_MoveInSwoopingPattern +0xa7d3e1 Phantoon_BeginSwoopingPattern +0xa7d3fa Phantoon_ChangeEyeSpriteBasedOnSamusDist +0xa7d421 Phantoon_StartDeathSequence +0xa7d464 Phantoon_FadeOut +0xa7d486 Phantoon_FadeIn +0xa7d4a8 nullsub_237 +0xa7d4a9 Phantoon_Spawn8FireballsInCircleAtStart +0xa7d4ee Phantoon_WaitBetweenSpawningAndSpinningFireballs +0xa7d508 Phantoon_SpawnFireballsBeforeFight +0xa7d54a Phantoon_WavyFadeIn +0xa7d581 UNUSED_sub_A7D581 +0xa7d596 Phantoon_PickPatternForRound1 +0xa7d5e7 Phantoon_MovePhantoonInFigure8ThenOpenEye +0xa7d60d Phantoon_EyeFollowsSamusUntilTimerRunsOut +0xa7d65c Phantoon_BecomesSolidAndBodyVuln +0xa7d678 Phantoon_IsSwooping +0xa7d6b9 Phantoon_FadeoutWithSwoop +0xa7d6d4 Phantoon_WaitAfterFadeOut +0xa7d6e2 Phantoon_MoveLeftOrRightAndPickEyeOpenPatt +0xa7d72d Phantoon_FadeInBeforeFigure8 +0xa7d73f Phantoon_BecomeSolidAfterRainingFireballs +0xa7d767 Phantoon_FadeInDuringFireballRain +0xa7d788 Phantoon_FollowSamusWithEyeDuringFireballRain +0xa7d7d5 Phantoon_FadeOutDuringFireballRain +0xa7d7f7 Phantoon_SpawnRainingFireballs +0xa7d82a Phantoon_FadeOutBeforeFirstFireballRain +0xa7d85c Phantoon_FadeOutBeforeEnrage +0xa7d874 Phantoon_MoveEnragedPhantoonToTopCenter +0xa7d891 Phantoon_FadeInEnragedPhantoon +0xa7d8ac Phantoon_Enraged +0xa7d916 Phantoon_FadeoutAfterEnrage +0xa7d92e Phantoon_CompleteSwoopAfterFatalShot +0xa7d948 Phantoon_DyingPhantoonFadeInOut +0xa7d98b Phantoon_DyingPhantoonExplosions +0xa7da51 Phantoon_WavyDyingPhantoonAndCry +0xa7da86 Phantoon_DyingFadeOut +0xa7dad7 Phantoon_AlmostDead +0xa7db3d Phantoon_Dead +0xa7db9a Phantoon_Func_8 +0xa7dbd5 Phantoon_SetColorBasedOnHp +0xa7dc0f Phantoon_SetColorBasedOnHp_FindEntry +0xa7dc5a Phantoon_Func_9 +0xa7dc95 Phantoon_Func_10_CalculateNthTransitionColorFromXtoY +0xa7dcf1 Phantoon_CalculateNthTransitionColorComponentFromXtoY +0xa7dd3f Phantoon_Hurt +0xa7dd95 Phantoon_Touch +0xa7dd9a nullsub_358 +0xa7dd9b Phantoon_Shot +0xa7dedd kKraid_ExtSprmap_DEDD +0xa7dee7 kKraid_ExtSprmap_DEE7 +0xa7def1 kKraid_ExtSprmap_DEF1 +0xa7defb kKraid_ExtSprmap_DEFB +0xa7df05 kKraid_ExtSprmap_DF05 +0xa7df0f kKraid_ExtSprmap_DF0F +0xa7df19 kKraid_ExtSprmap_DF19 +0xa7df23 kKraid_ExtSprmap_DF23 +0xa7df2d kKraid_ExtSprmap_DF2D +0xa7df37 kKraid_ExtSprmap_DF37 +0xa7df41 kKraid_ExtSprmap_DF41 +0xa7df4b kKraid_ExtSprmap_DF4B +0xa7df55 kKraid_ExtSprmap_DF55 +0xa7df5f kKraid_ExtSprmap_DF5F +0xa7df69 kKraid_ExtSprmap_DF69 +0xa7df73 kKraid_ExtSprmap_DF73 +0xa7df7d kPhantoon_ExtSprmap_DF7D +0xa7df8f kPhantoon_ExtSprmap_DF8F +0xa7dfa1 kPhantoon_ExtSprmap_DFA1 +0xa7dfb3 kKraid_ExtSprmap_DFB3 +0xa7dfc5 kKraid_ExtSprmap_DFC5 +0xa7dfd7 kKraid_ExtSprmap_DFD7 +0xa7dfe9 kKraid_ExtSprmap_DFE9 +0xa7dff3 kKraid_ExtSprmap_DFF3 +0xa7dffd kKraid_ExtSprmap_DFFD +0xa7e007 kPhantoon_ExtSprmap_E007 +0xa7e011 nullsub_45 +0xa7e012 kPhantoon_Hitbox_E012 +0xa7e020 kPhantoon_Hitbox_E020 +0xa7e02e kKraid_Hitbox_E02E +0xa7e06c kKraid_Hitbox_E06C +0xa7e07a kPhantoon_Sprmap_E07A +0xa7e086 kPhantoon_Sprmap_E086 +0xa7e092 kPhantoon_Sprmap_E092 +0xa7e09e kPhantoon_Sprmap_E09E +0xa7e0aa kKraid_BigSprmap_E0AA +0xa7e1ce kKraid_BigSprmap_E1CE +0xa7e202 kKraid_BigSprmap_E202 +0xa7e236 kKraid_BigSprmap_E236 +0xa7e26a kKraid_BigSprmap_E26A +0xa7e27e kKraid_BigSprmap_E27E +0xa7e292 kKraid_BigSprmap_E292 +0xa7e2a6 kKraid_BigSprmap_E2A6 +0xa7e2ba kKraid_BigSprmap_E2BA +0xa7e2ce kKraid_BigSprmap_E2CE +0xa7e2e2 kKraid_BigSprmap_E2E2 +0xa7e2f6 kKraid_BigSprmap_E2F6 +0xa7e30a kKraid_BigSprmap_E30A +0xa7e31e kPhantoon_BigSprmap_E31E +0xa7e32e kPhantoon_BigSprmap_E32E +0xa7e33e kPhantoon_BigSprmap_E33E +0xa7e34e kPhantoon_BigSprmap_E34E +0xa7e35e kPhantoon_BigSprmap_E35E +0xa7e36e kPhantoon_BigSprmap_E36E +0xa7e37e kPhantoon_BigSprmap_E37E +0xa7e39a kKraid_BigSprmap_E39A +0xa7e3b6 kKraid_BigSprmap_E3B6 +0xa7e3d2 kPhantoonMoveData +0xa7e7fe kEtecoon_Palette +0xa7e81e kEtecoon_Ilist_E81E +0xa7e824 kEtecoon_Ilist_E824 +0xa7e83c kEtecoon_Ilist_E83C +0xa7e854 kEtecoon_Ilist_E854 +0xa7e85a kEtecoon_Ilist_E85A +0xa7e870 kEtecoon_Ilist_E870 +0xa7e876 kEtecoon_Ilist_E876 +0xa7e87c kEtecoon_Ilist_E87C +0xa7e894 kEtecoon_Ilist_E894 +0xa7e8ac kEtecoon_Ilist_E8AC +0xa7e8b2 kEtecoon_Ilist_E8B2 +0xa7e8c8 kEtecoon_Ilist_E8C8 +0xa7e8ce kEtecoon_Ilist_E8CE +0xa7e8d6 kEtecoon_Ilist_E8D6 +0xa7e912 Etecoon_Init +0xa7e940 Etecoon_Main +0xa7e958 Etecoon_Func_1 +0xa7e974 Etecoon_Func_2 +0xa7e983 Etecoon_Func_3 +0xa7e9af Etecoon_Func_4 +0xa7ea00 Etecoon_Func_5 +0xa7ea37 Etecoon_Func_6 +0xa7eab5 Etecoon_Func_7 +0xa7eb02 Etecoon_Func_8 +0xa7eb2c Etecoon_Func_9 +0xa7eb50 Etecoon_Func_10 +0xa7ebcd Etecoon_Func_11 +0xa7ec1b Etecoon_Func_12 +0xa7ec47 Etecoon_Func_13 +0xa7ec61 Etecoon_Func_14 +0xa7ec7b Etecoon_Func_15 +0xa7ec97 Etecoon_Func_16 +0xa7ecbb Etecoon_Func_17 +0xa7ecdf Etecoon_Func_18 +0xa7ed09 Etecoon_Func_19 +0xa7ed2a Etecoon_Func_20 +0xa7ed54 Etecoon_Func_21 +0xa7ed75 Etecoon_Func_22 +0xa7edc7 Etecoon_Func_23 +0xa7ee3e Etecoon_Func_24 +0xa7ee9a Etecoon_Func_25 +0xa7eeb8 Etecoon_Func_26 +0xa7eeeb nullsub_238 +0xa7eeec nullsub_239 +0xa7eeed kEtecoon_Sprmap_EEED +0xa7eefe kEtecoon_Sprmap_EEFE +0xa7ef0a kEtecoon_Sprmap_EF0A +0xa7ef16 kEtecoon_Sprmap_EF16 +0xa7ef27 kEtecoon_Sprmap_EF27 +0xa7ef38 kEtecoon_Sprmap_EF38 +0xa7ef49 kEtecoon_Sprmap_EF49 +0xa7ef5a kEtecoon_Sprmap_EF5A +0xa7ef6b kEtecoon_Sprmap_EF6B +0xa7ef90 kEtecoon_Sprmap_EF90 +0xa7efb5 kEtecoon_Sprmap_EFB5 +0xa7efda kEtecoon_Sprmap_EFDA +0xa7efff kEtecoon_Sprmap_EFFF +0xa7f024 kEtecoon_Sprmap_F024 +0xa7f049 kEtecoon_Sprmap_F049 +0xa7f06e kEtecoon_Sprmap_F06E +0xa7f089 kEtecoon_Sprmap_F089 +0xa7f09a kEtecoon_Sprmap_F09A +0xa7f0a6 kEtecoon_Sprmap_F0A6 +0xa7f0b2 kEtecoon_Sprmap_F0B2 +0xa7f0c3 kEtecoon_Sprmap_F0C3 +0xa7f0d4 kEtecoon_Sprmap_F0D4 +0xa7f0e5 kEtecoon_Sprmap_F0E5 +0xa7f0f6 kEtecoon_Sprmap_F0F6 +0xa7f107 kEtecoon_Sprmap_F107 +0xa7f12c kEtecoon_Sprmap_F12C +0xa7f151 kEtecoon_Sprmap_F151 +0xa7f176 kEtecoon_Sprmap_F176 +0xa7f19b kEtecoon_Sprmap_F19B +0xa7f1c0 kEtecoon_Sprmap_F1C0 +0xa7f1e5 kEtecoon_Sprmap_F1E5 +0xa7f20a kEtecoon_Sprmap_F20A +0xa7f225 kDachora_Palette +0xa7f345 kDachora_Ilist_F345 +0xa7f361 kDachora_Ilist_F361 +0xa7f37d kDachora_Ilist_F37D +0xa7f399 kDachora_Ilist_F399 +0xa7f3c9 kDachora_Ilist_F3C9 +0xa7f3f1 kDachora_Ilist_F3F1 +0xa7f3f7 kDachora_Ilist_F3F7 +0xa7f3ff kDachora_Ilist_F3FF +0xa7f407 kDachora_Ilist_F407 +0xa7f423 kDachora_Ilist_F423 +0xa7f43f kDachora_Ilist_F43F +0xa7f45b kDachora_Ilist_F45B +0xa7f48b kDachora_Ilist_F48B +0xa7f4b3 kDachora_Ilist_F4B3 +0xa7f4b9 kDachora_Ilist_F4B9 +0xa7f4c1 kDachora_Ilist_F4C1 +0xa7f4dd Dachora_Init +0xa7f52e Dachora_Main +0xa7f534 nullsub_240 +0xa7f535 Dachora_Func_1 +0xa7f56f nullsub_241 +0xa7f570 Dachora_Func_2 +0xa7f5bc Dachora_Func_3 +0xa7f5ed Dachora_Func_4 +0xa7f643 UNUSED_sub_A7F643 +0xa7f65e Dachora_Func_5 +0xa7f6c7 UNUSED_sub_A7F6C7 +0xa7f6d5 Dachora_Func_6 +0xa7f78f Dachora_Func_7 +0xa7f806 Dachora_Func_8 +0xa7f89a Dachora_Func_9 +0xa7f90a Dachora_Func_10 +0xa7f935 Dachora_Func_11 +0xa7f98c Dachora_Func_12 +0xa7f9c2 nullsub_242 +0xa7f9c3 nullsub_243 +0xa7f9c4 kDachora_Sprmap_F9C4 +0xa7f9f3 kDachora_Sprmap_F9F3 +0xa7fa22 kDachora_Sprmap_FA22 +0xa7fa5b kDachora_Sprmap_FA5B +0xa7fa8a kDachora_Sprmap_FA8A +0xa7fab9 kDachora_Sprmap_FAB9 +0xa7faf2 kDachora_Sprmap_FAF2 +0xa7fb1c kDachora_Sprmap_FB1C +0xa7fb50 kDachora_Sprmap_FB50 +0xa7fb7f kDachora_Sprmap_FB7F +0xa7fbb3 kDachora_Sprmap_FBB3 +0xa7fbe7 kDachora_Sprmap_FBE7 +0xa7fc16 kDachora_Sprmap_FC16 +0xa7fc45 kDachora_Sprmap_FC45 +0xa7fc74 kDachora_Sprmap_FC74 +0xa7fca3 kDachora_Sprmap_FCA3 +0xa7fcd2 kDachora_Sprmap_FCD2 +0xa7fd01 kDachora_Sprmap_FD01 +0xa7fd3a kDachora_Sprmap_FD3A +0xa7fd69 kDachora_Sprmap_FD69 +0xa7fd98 kDachora_Sprmap_FD98 +0xa7fdd1 kDachora_Sprmap_FDD1 +0xa7fdfb kDachora_Sprmap_FDFB +0xa7fe2f kDachora_Sprmap_FE2F +0xa7fe5e kDachora_Sprmap_FE5E +0xa7fe92 kDachora_Sprmap_FE92 +0xa7fec6 kDachora_Sprmap_FEC6 +0xa7fef5 kDachora_Sprmap_FEF5 +0xa7ff24 kDachora_Sprmap_FF24 +0xa7ff53 kDachora_Sprmap_FF53 +0xa7ff82 NormalEnemyShotAiSkipDeathAnim_CurEnemy_PUSH +0xa88000 Enemy_GrappleReact_NoInteract_A8 +0xa88005 Enemy_GrappleReact_SamusLatchesOn_A8 +0xa8800a Enemy_GrappleReact_KillEnemy_A8 +0xa8800f Enemy_GrappleReact_CancelBeam_A8 +0xa88014 Enemy_GrappleReact_SamusLatchesNoInvinc_A8 +0xa88019 Enemy_GrappleReact_SamusLatchesParalyze_A8 +0xa8801e Enemy_GrappleReact_HurtSamus_A8 +0xa88023 Enemy_NormalTouchAI_A8 +0xa88028 Enemy_NormalTouchAI_SkipDeathAnim_A8 +0xa8802d Enemy_NormalShotAI_A8 +0xa88032 Enemy_NormalShotAI_SkipSomeParts_A8 +0xa88037 Enemy_NormalPowerBombAI_A8 +0xa8803c Enemy_NormalPowerBombAI_SkipDeathAnim_A8 +0xa88041 Enemy_NormalFrozenAI_A8 +0xa88046 CreateADudShot_A8 +0xa8804b nullsub_169_A8 +0xa8804c nullsub_170_A8 +0xa8804d kSpritemap_Nothing_A8 +0xa8804f kExtendedSpritemap_Nothing_A8 +0xa88059 word8059_A8 +0xa88069 sub8069_A8 +0xa8806b Enemy_SetAiPreInstr_A8 +0xa88074 Enemy_ClearAiPreInstr_A8 +0xa8807b nullsub_171_A8 +0xa8807c EnemyInstr_StopScript_A8 +0xa8808a EnemyInstr_Call_A8 +0xa88097 loc8097_A8 +0xa8809c EnemyInstr_CallWithArg_A8 +0xa880ac loc80AC_A8 +0xa880b5 EnemyInstr_CallFar_A8 +0xa880cb loc80CB_A8 +0xa880ce EnemyInstr_CallFarWithArg_A8 +0xa880ea loc80EA_A8 +0xa880ed EnemyInstr_Goto_A8 +0xa880f2 EnemyInstr_GotoRel_A8 +0xa88100 loc8100_A8 +0xa88103 loc8103_A8 +0xa88108 EnemyInstr_DecTimerAndGoto_A8 +0xa88110 EnemyInstr_DecTimerAndGoto2_A8 +0xa88118 EnemyInstr_DecTimerAndGotoRel_A8 +0xa88123 EnemyInstr_SetTimer_A8 +0xa8812c EnemyInstr_Skip2bytes_A8 +0xa8812f EnemyInstr_Sleep_A8 +0xa8813a EnemyInstr_WaitNframes_A8 +0xa8814b EnemyInstr_CopyToVram_A8 +0xa88173 EnemyInstr_EnableOffScreenProcessing_A8 +0xa8817d EnemyInstr_DisableOffScreenProcessing_A8 +0xa88187 kCommonEnemySpeeds_Linear_A8 +0xa8838f kCommonEnemySpeeds_Quadratic_A8 +0xa88687 kMiniDraygon_Palette +0xa886a7 kMiniDraygon_Ilist_86A7 +0xa886c3 kMiniDraygon_Ilist_86C3 +0xa8870b kMiniDraygon_Ilist_870B +0xa88727 kMiniDraygon_Ilist_8727 +0xa8876f kMiniDraygon_Ilist_876F +0xa88775 kMiniDraygon_Ilist_8775 +0xa8878f MiniDraygon_Instr_2 +0xa8879b MiniDraygon_Instr_1 +0xa887b6 MiniDraygon_Instr_3 +0xa887cb MiniDraygon_Instr_4 +0xa887e0 MiniDraygon_Init +0xa88838 MiniDraygon_Func_1 +0xa88866 MiniDraygon_Func_2 +0xa888b0 EvirProjectile_Init +0xa888e5 MiniDraygon_Func_3 +0xa8891b MiniDraygon_Main +0xa88922 MiniDraygon_Func_4 +0xa88933 MiniDraygon_Func_5 +0xa88997 MiniDraygon_Func_6 +0xa8899e EvirProjectile_Main +0xa889d4 MiniDraygon_Func_7 +0xa88a34 MiniDraygon_Func_8 +0xa88a3b MiniDraygon_Func_9 +0xa88a78 MiniDraygon_Func_10 +0xa88ab1 MiniDraygon_Func_11 +0xa88ae8 MiniDraygon_Func_12 +0xa88b06 MiniDraygon_Touch +0xa88b0c MiniDraygon_Powerbomb +0xa88b12 MiniDraygon_Shot +0xa88b16 MiniDraygon_Func_13 +0xa88b59 kMiniDraygon_Sprmap_8B59 +0xa88b88 kMiniDraygon_Sprmap_8B88 +0xa88bb7 kMiniDraygon_Sprmap_8BB7 +0xa88be6 kMiniDraygon_Sprmap_8BE6 +0xa88c15 kMiniDraygon_Sprmap_8C15 +0xa88c44 kMiniDraygon_Sprmap_8C44 +0xa88c73 kMiniDraygon_Sprmap_8C73 +0xa88ca2 kMiniDraygon_Sprmap_8CA2 +0xa88cbd kMiniDraygon_Sprmap_8CBD +0xa88cd8 kMiniDraygon_Sprmap_8CD8 +0xa88cf3 kMiniDraygon_Sprmap_8CF3 +0xa88d13 kMiniDraygon_Sprmap_8D13 +0xa88d24 kMiniDraygon_Sprmap_8D24 +0xa88d44 kMiniDraygon_Sprmap_8D44 +0xa88d64 kMiniDraygon_Sprmap_8D64 +0xa88d7a kMiniDraygon_Sprmap_8D7A +0xa88d81 kMiniDraygon_Sprmap_8D81 +0xa88db0 kMiniDraygon_Sprmap_8DB0 +0xa88ddf kMiniDraygon_Sprmap_8DDF +0xa88e0e kMiniDraygon_Sprmap_8E0E +0xa88e3d kMiniDraygon_Sprmap_8E3D +0xa88e6c kMiniDraygon_Sprmap_8E6C +0xa88e9b kMiniDraygon_Sprmap_8E9B +0xa88eca kMiniDraygon_Sprmap_8ECA +0xa88ee5 kMiniDraygon_Sprmap_8EE5 +0xa88f00 kMiniDraygon_Sprmap_8F00 +0xa88f1b kMiniDraygon_Sprmap_8F1B +0xa88f3b kMiniDraygon_Sprmap_8F3B +0xa88f4c kMiniDraygon_Sprmap_8F4C +0xa88f6c kMiniDraygon_Sprmap_8F6C +0xa88f8c kMorphBallEye_Palette +0xa88fac kMorphBallEye_Ilist_8FAC +0xa88ff0 kMorphBallEye_Ilist_8FF0 +0xa89002 kMorphBallEye_Ilist_9002 +0xa89014 kMorphBallEye_Ilist_9014 +0xa89026 kMorphBallEye_Ilist_9026 +0xa89038 kMorphBallEye_Ilist_9038 +0xa8903e kMorphBallEye_Ilist_903E +0xa89044 kMorphBallEye_Ilist_9044 +0xa8904a kMorphBallEye_Ilist_904A +0xa89058 MorphBallEye_Init +0xa890e2 MorphBallEye_Main +0xa890f1 MorphBallEye_Func_1 +0xa8912e MorphBallEye_Func_2 +0xa89160 MorphBallEye_Func_3 +0xa891ce MorphBallEye_Func_4 +0xa891dc nullsub_244 +0xa891dd nullsub_245 +0xa891de nullsub_246 +0xa891df kMorphBallEye_Sprmap_91DF +0xa891e6 kMorphBallEye_Sprmap_91E6 +0xa891ed kMorphBallEye_Sprmap_91ED +0xa891f4 kMorphBallEye_Sprmap_91F4 +0xa891fb kMorphBallEye_Sprmap_91FB +0xa89202 kMorphBallEye_Sprmap_9202 +0xa89209 kMorphBallEye_Sprmap_9209 +0xa89210 kMorphBallEye_Sprmap_9210 +0xa89217 kMorphBallEye_Sprmap_9217 +0xa8921e kMorphBallEye_Sprmap_921E +0xa89225 kMorphBallEye_Sprmap_9225 +0xa8922c kMorphBallEye_Sprmap_922C +0xa89233 kMorphBallEye_Sprmap_9233 +0xa8923a kMorphBallEye_Sprmap_923A +0xa89241 kMorphBallEye_Sprmap_9241 +0xa89257 kMorphBallEye_Sprmap_9257 +0xa8926d kMorphBallEye_Sprmap_926D +0xa89283 kMorphBallEye_Sprmap_9283 +0xa89299 kMorphBallEye_Sprmap_9299 +0xa892a5 kMorphBallEye_Sprmap_92A5 +0xa892b1 kMorphBallEye_Sprmap_92B1 +0xa892bd kMorphBallEye_Sprmap_92BD +0xa892c9 kMorphBallEye_Sprmap_92C9 +0xa892df kMorphBallEye_Sprmap_92DF +0xa892f5 kMorphBallEye_Sprmap_92F5 +0xa8930b kMorphBallEye_Sprmap_930B +0xa89321 kMorphBallEye_Sprmap_9321 +0xa89337 kMorphBallEye_Sprmap_9337 +0xa8934d kMorphBallEye_Sprmap_934D +0xa89363 kMorphBallEye_Sprmap_9363 +0xa89379 kFune_Palette_0 +0xa89399 kFune_Ilist_9399 +0xa8939f kFune_Ilist_939F +0xa893af kFune_Ilist_93AF +0xa893c9 kFune_Ilist_93C9 +0xa893cf kFune_Ilist_93CF +0xa893f9 kFune_Sprmap_93F9 +0xa89423 kFune_Sprmap_9423 +0xa8944d kFune_Sprmap_944D +0xa89477 kFune_Sprmap_9477 +0xa894a1 kFune_Sprmap_94A1 +0xa894cb kFune_Sprmap_94CB +0xa894f5 kFune_Sprmap_94F5 +0xa8951f kFune_Sprmap_951F +0xa89549 kFune_Sprmap_9549 +0xa89573 kFune_Sprmap_9573 +0xa8959d kFune_Palette_1 +0xa895bd kFune_Ilist_95BD +0xa895c3 kFune_Ilist_95C3 +0xa895f1 kFune_Ilist_95F1 +0xa895f7 kFune_Ilist_95F7 +0xa89625 Fune_Instr_2 +0xa89631 Fune_Instr_6 +0xa8964a Fune_Instr_7 +0xa89663 Fune_Instr_1 +0xa8967c Fune_Instr_4 +0xa89695 Fune_Instr_3 +0xa896b4 Fune_Instr_5 +0xa896e3 Fune_Init +0xa89730 Fune_Main +0xa89737 Fune_Func_1 +0xa8975c Fune_Func_2 +0xa8978e nullsub_247 +0xa8978f nullsub_248 +0xa89790 Fune_Func_3 +0xa8979b Fune_Func_4 +0xa897b2 nullsub_249 +0xa897b3 nullsub_250 +0xa897b4 kFune_Sprmap_97B4 +0xa897de kFune_Sprmap_97DE +0xa89808 kFune_Sprmap_9808 +0xa89832 kFune_Sprmap_9832 +0xa8985c kFune_Sprmap_985C +0xa89886 kFune_Sprmap_9886 +0xa898b0 kFune_Sprmap_98B0 +0xa898da kFune_Sprmap_98DA +0xa89904 kFune_Sprmap_9904 +0xa8992e kFune_Sprmap_992E +0xa89958 kFune_Sprmap_9958 +0xa89982 kFune_Sprmap_9982 +0xa899ac kWreckedShipGhost_Palette +0xa89a8c kWreckedShipGhost_Ilist_9A8C +0xa89aee WreckedShipGhost_Init +0xa89b3c WreckedShipGhost_Main +0xa89b42 WreckedShipGhost_Func_1 +0xa89bad WreckedShipGhost_Func_2 +0xa89c31 WreckedShipGhost_Func_3 +0xa89c69 WreckedShipGhost_Func_4 +0xa89c8a WreckedShipGhost_Func_5 +0xa89d13 WreckedShipGhost_Func_6 +0xa89d31 nullsub_251 +0xa89d36 WreckedShipGhost_Func_7 +0xa89e44 nullsub_252 +0xa89e45 nullsub_253 +0xa89e46 kWreckedShipGhost_Sprmap_9E46 +0xa89e5c kWreckedShipGhost_Sprmap_9E5C +0xa89e72 kWreckedShipGhost_Sprmap_9E72 +0xa89e88 WreckedShipGhost_Func_8 +0xa89f4f kYappingMaw_Palette +0xa89f6f kYappingMaw_Ilist_9F6F +0xa89f85 kYappingMaw_Ilist_9F85 +0xa89f9b kYappingMaw_Ilist_9F9B +0xa89fb1 kYappingMaw_Ilist_9FB1 +0xa89fc7 kYappingMaw_Ilist_9FC7 +0xa89fdd kYappingMaw_Ilist_9FDD +0xa89ff3 kYappingMaw_Ilist_9FF3 +0xa8a009 kYappingMaw_Ilist_A009 +0xa8a01f kYappingMaw_Ilist_A01F +0xa8a03d kYappingMaw_Ilist_A03D +0xa8a05b kYappingMaw_Ilist_A05B +0xa8a079 kYappingMaw_Ilist_A079 +0xa8a0c7 YappingMaw_Instr_2 +0xa8a0d9 YappingMaw_Instr_4 +0xa8a0eb YappingMaw_Instr_5 +0xa8a0fd YappingMaw_Instr_7 +0xa8a10f YappingMaw_Instr_3 +0xa8a121 YappingMaw_Instr_6 +0xa8a133 YappingMaw_Instr_1 +0xa8a148 YappingMaw_Init +0xa8a211 YappingMaw_Main +0xa8a235 YappingMaw_Func_1 +0xa8a28c YappingMaw_Func_2 +0xa8a310 YappingMaw_Func_3 +0xa8a339 YappingMaw_Func_4 +0xa8a37c YappingMaw_Func_5 +0xa8a3bf YappingMaw_Func_6 +0xa8a402 YappingMaw_Func_7 +0xa8a445 YappingMaw_Func_8 +0xa8a63e YappingMaw_Func_9 +0xa8a665 YappingMaw_Func_10 +0xa8a68a YappingMaw_Func_11 +0xa8a6c4 YappingMaw_Func_12 +0xa8a6db YappingMaw_Func_13 +0xa8a6fc YappingMaw_Func_14 +0xa8a71d YappingMaw_Func_15 +0xa8a73e YappingMaw_Func_16 +0xa8a742 YappingMaw_Func_17 +0xa8a799 YappingMaw_Touch +0xa8a7bd YappingMaw_Shot +0xa8a835 YappingMaw_Frozen +0xa8a85d YappingMaw_Func_18 +0xa8a899 YappingMaw_Func_19 +0xa8a8ee kYappingMaw_Sprmap_A8EE +0xa8a909 kYappingMaw_Sprmap_A909 +0xa8a91a kYappingMaw_Sprmap_A91A +0xa8a935 kYappingMaw_Sprmap_A935 +0xa8a946 kYappingMaw_Sprmap_A946 +0xa8a961 kYappingMaw_Sprmap_A961 +0xa8a972 kYappingMaw_Sprmap_A972 +0xa8a98d kYappingMaw_Sprmap_A98D +0xa8a99e kYappingMaw_Sprmap_A99E +0xa8a9b9 kYappingMaw_Sprmap_A9B9 +0xa8a9ca kYappingMaw_Sprmap_A9CA +0xa8a9e5 kYappingMaw_Sprmap_A9E5 +0xa8a9f6 kYappingMaw_Sprmap_A9F6 +0xa8aa11 kYappingMaw_Sprmap_AA11 +0xa8aa22 kYappingMaw_Sprmap_AA22 +0xa8aa3d kYappingMaw_Sprmap_AA3D +0xa8aa4e kYappingMaw_Sprmap_AA4E +0xa8aa69 kYappingMaw_Sprmap_AA69 +0xa8aa7a kYappingMaw_Sprmap_AA7A +0xa8aa95 kYappingMaw_Sprmap_AA95 +0xa8aaa6 kYappingMaw_Sprmap_AAA6 +0xa8aac1 kYappingMaw_Sprmap_AAC1 +0xa8aad2 kYappingMaw_Sprmap_AAD2 +0xa8aaed kYappingMaw_Sprmap_AAED +0xa8aafe kKago_Palette +0xa8ab1e kKago_Ilist_AB1E +0xa8ab32 kKago_Ilist_AB32 +0xa8ab46 Kago_Init +0xa8ab75 Kago_Main +0xa8ab7b Kago_Func_1 +0xa8ab81 nullsub_306 +0xa8ab82 nullsub_254 +0xa8ab83 Kago_Shot +0xa8abda kKago_Sprmap_ABDA +0xa8abf0 kKago_Sprmap_ABF0 +0xa8ac06 kKago_Sprmap_AC06 +0xa8ac1c kNorfairLavaMan_Palette +0xa8ac9c kNorfairLavaMan_Ilist_AC9C +0xa8acb0 kNorfairLavaMan_Ilist_ACB0 +0xa8acde kNorfairLavaMan_Ilist_ACDE +0xa8acfe kNorfairLavaMan_Ilist_ACFE +0xa8ad0c kNorfairLavaMan_Ilist_AD0C +0xa8ad14 kNorfairLavaMan_Ilist_AD14 +0xa8ad3c kNorfairLavaMan_Ilist_AD3C +0xa8ad50 kNorfairLavaMan_Ilist_AD50 +0xa8ad7e kNorfairLavaMan_Ilist_AD7E +0xa8adac kNorfairLavaMan_Ilist_ADAC +0xa8addc kNorfairLavaMan_Ilist_ADDC +0xa8ade2 kNorfairLavaMan_Ilist_ADE2 +0xa8ade8 kNorfairLavaMan_Ilist_ADE8 +0xa8adee kNorfairLavaMan_Ilist_ADEE +0xa8adf4 kNorfairLavaMan_Ilist_ADF4 +0xa8adfa kNorfairLavaMan_Ilist_ADFA +0xa8ae00 kNorfairLavaMan_Ilist_AE00 +0xa8ae06 kNorfairLavaMan_Ilist_AE06 +0xa8ae0c kNorfairLavaMan_Ilist_AE0C +0xa8ae12 NorfairLavaMan_Instr_1 +0xa8ae26 NorfairLavaMan_Instr_8 +0xa8ae30 NorfairLavaMan_Instr_14 +0xa8ae3a NorfairLavaMan_Instr_2 +0xa8ae45 NorfairLavaMan_Instr_7 +0xa8ae50 NorfairLavaMan_Instr_10 +0xa8ae5a NorfairLavaMan_Instr_12 +0xa8ae64 NorfairLavaMan_Instr_9 +0xa8ae88 NorfairLavaMan_Instr_11 +0xa8ae96 NorfairLavaMan_Instr_13 +0xa8aeba NorfairLavaMan_Instr_5 +0xa8aeca NorfairLavaMan_Instr_15 +0xa8aee4 NorfairLavaMan_Instr_4 +0xa8aefe NorfairLavaMan_Instr_16 +0xa8af18 NorfairLavaMan_Instr_6 +0xa8af44 NorfairLavaMan_Instr_3 +0xa8af8b NorfairLavaMan_Init +0xa8af9d NorfairLavaMan_Func_1 +0xa8afe2 NorfairLavaMan_Func_2 +0xa8b020 NorfairLavaMan_Func_3 +0xa8b05e NorfairLavaMan_Func_4 +0xa8b088 NorfairLavaMan_Func_5 +0xa8b0b2 NorfairLavaMan_Func_6 +0xa8b10a NorfairLavaMan_Main +0xa8b11a NorfairLavaMan_Func_7 +0xa8b175 NorfairLavaMan_Func_8 +0xa8b1b8 NorfairLavaMan_Func_9 +0xa8b1dd NorfairLavaMan_Func_10 +0xa8b204 NorfairLavaMan_Func_11 +0xa8b230 NorfairLavaMan_Func_12 +0xa8b295 NorfairLavaMan_Func_13 +0xa8b2c5 NorfairLavaMan_Func_14 +0xa8b30d NorfairLavaMan_Func_15 +0xa8b31f NorfairLavaMan_Func_16 +0xa8b356 NorfairLavaMan_Func_17 +0xa8b3a7 NorfairLavaMan_Func_18 +0xa8b3cb NorfairLavaMan_Func_19 +0xa8b3e5 NorfairLavaMan_Func_20 +0xa8b400 NorfairLavaMan_Powerbomb +0xa8b406 NorfairLavaMan_Touch +0xa8b40c NorfairLavaMan_Shot +0xa8b410 NorfairLavaMan_Common +0xa8b448 kNorfairLavaMan_Sprmap_B448 +0xa8b459 kNorfairLavaMan_Sprmap_B459 +0xa8b46a kNorfairLavaMan_Sprmap_B46A +0xa8b47b kNorfairLavaMan_Sprmap_B47B +0xa8b48c kNorfairLavaMan_Sprmap_B48C +0xa8b49d kNorfairLavaMan_Sprmap_B49D +0xa8b4a9 kNorfairLavaMan_Sprmap_B4A9 +0xa8b4b5 kNorfairLavaMan_Sprmap_B4B5 +0xa8b4c1 kNorfairLavaMan_Sprmap_B4C1 +0xa8b4c8 kNorfairLavaMan_Sprmap_B4C8 +0xa8b4cf kNorfairLavaMan_Sprmap_B4CF +0xa8b4e0 kNorfairLavaMan_Sprmap_B4E0 +0xa8b4f1 kNorfairLavaMan_Sprmap_B4F1 +0xa8b502 kNorfairLavaMan_Sprmap_B502 +0xa8b513 kNorfairLavaMan_Sprmap_B513 +0xa8b524 kNorfairLavaMan_Sprmap_B524 +0xa8b535 kNorfairLavaMan_Sprmap_B535 +0xa8b546 kNorfairLavaMan_Sprmap_B546 +0xa8b552 kNorfairLavaMan_Sprmap_B552 +0xa8b55e kNorfairLavaMan_Sprmap_B55E +0xa8b56a kNorfairLavaMan_Sprmap_B56A +0xa8b571 kNorfairLavaMan_Sprmap_B571 +0xa8b578 kNorfairLavaMan_Sprmap_B578 +0xa8b589 kNorfairLavaMan_Sprmap_B589 +0xa8b59a kNorfairLavaMan_Sprmap_B59A +0xa8b5a1 kNorfairLavaMan_Sprmap_B5A1 +0xa8b5ad kNorfairLavaMan_Sprmap_B5AD +0xa8b5be kNorfairLavaMan_Sprmap_B5BE +0xa8b5d4 kNorfairLavaMan_Sprmap_B5D4 +0xa8b5ef kNorfairLavaMan_Sprmap_B5EF +0xa8b60f kNorfairLavaMan_Sprmap_B60F +0xa8b634 kNorfairLavaMan_Sprmap_B634 +0xa8b65e kBeetom_Palette +0xa8b696 kBeetom_Ilist_B696 +0xa8b6ac kBeetom_Ilist_B6AC +0xa8b6c0 kBeetom_Ilist_B6C0 +0xa8b6cc kBeetom_Ilist_B6CC +0xa8b6f2 kBeetom_Ilist_B6F2 +0xa8b708 kBeetom_Ilist_B708 +0xa8b71c kBeetom_Ilist_B71C +0xa8b728 kBeetom_Ilist_B728 +0xa8b74e kBeetom_Ilistp_B74E +0xa8b75e Beetom_Instr_1 +0xa8b762 Beetom_Func_1 +0xa8b776 Beetom_Init +0xa8b7ef Beetom_Func_2 +0xa8b80d Beetom_Main +0xa8b814 Beetom_Func_3 +0xa8b82f Beetom_Func_4 +0xa8b84f Beetom_Func_5 +0xa8b85f Beetom_Func_6 +0xa8b873 Beetom_Func_7 +0xa8b887 Beetom_Func_8 +0xa8b8a9 Beetom_Func_9 +0xa8b8cb Beetom_Func_10 +0xa8b8ed Beetom_Func_11 +0xa8b90f Beetom_Func_12 +0xa8b952 Beetom_Func_13 +0xa8b966 Beetom_Func_14 +0xa8b97a Beetom_Func_15 +0xa8b9a2 Beetom_Func_16 +0xa8b9b2 Beetom_Func_17 +0xa8b9c1 Beetom_Func_18 +0xa8ba24 Beetom_Func_19 +0xa8ba84 Beetom_Func_20 +0xa8bab7 Beetom_Func_21 +0xa8bae7 Beetom_Func_22 +0xa8bb20 Beetom_Func_23 +0xa8bb55 Beetom_Func_24 +0xa8bb88 Beetom_Func_25 +0xa8bbb8 Beetom_Func_26 +0xa8bbf1 Beetom_Func_27 +0xa8bc26 Beetom_Func_28 +0xa8bc5a Beetom_Func_29 +0xa8bc8a Beetom_Func_30 +0xa8bcc3 Beetom_Func_31 +0xa8bcf8 Beetom_Func_32 +0xa8bd42 Beetom_Func_33 +0xa8bd8c Beetom_Func_34 +0xa8bd9d Beetom_Func_35 +0xa8bdc5 Beetom_Func_36 +0xa8bdcc Beetom_Func_37 +0xa8be2e Beetom_Touch +0xa8beac Beetom_Shot +0xa8bed3 kBeetom_Sprmap_BED3 +0xa8beee kBeetom_Sprmap_BEEE +0xa8bf09 kBeetom_Sprmap_BF09 +0xa8bf24 kBeetom_Sprmap_BF24 +0xa8bf3f kBeetom_Sprmap_BF3F +0xa8bf5a kBeetom_Sprmap_BF5A +0xa8bf75 kBeetom_Sprmap_BF75 +0xa8bf90 kBeetom_Sprmap_BF90 +0xa8bfab kBeetom_Sprmap_BFAB +0xa8bfcb kBeetom_Sprmap_BFCB +0xa8bfeb kBeetom_Sprmap_BFEB +0xa8c00b kBeetom_Sprmap_C00B +0xa8c026 kBeetom_Sprmap_C026 +0xa8c041 kBeetom_Sprmap_C041 +0xa8c05c kBeetom_Sprmap_C05C +0xa8c077 kBeetom_Sprmap_C077 +0xa8c092 kBeetom_Sprmap_C092 +0xa8c0ad kBeetom_Sprmap_C0AD +0xa8c0c8 kBeetom_Sprmap_C0C8 +0xa8c0e3 kBeetom_Sprmap_C0E3 +0xa8c103 kBeetom_Sprmap_C103 +0xa8c123 kBeetom_Sprmap_C123 +0xa8c143 kMaridiaFloater_Palette +0xa8c163 kMaridiaFloater_Ilist_C163 +0xa8c173 kMaridiaFloater_Ilist_C173 +0xa8c183 kMaridiaFloater_Ilist_C183 +0xa8c191 kMaridiaFloater_Ilist_C191 +0xa8c1c9 MaridiaFloater_Init +0xa8c21c MaridiaFloater_Main +0xa8c222 nullsub_255 +0xa8c223 MaridiaFloater_Func_1 +0xa8c234 MaridiaFloater_Func_2 +0xa8c283 MaridiaFloater_Func_3 +0xa8c2a6 MaridiaFloater_Func_4 +0xa8c2cf MaridiaFloater_Func_5 +0xa8c36b MaridiaFloater_Func_6 +0xa8c3e1 MaridiaFloater_Func_7 +0xa8c469 MaridiaFloater_Func_8 +0xa8c4dc MaridiaFloater_Func_9 +0xa8c500 MaridiaFloater_Func_10 +0xa8c51d MaridiaFloater_Func_11 +0xa8c568 nullsub_256 +0xa8c569 MaridiaFloater_Func_12 +0xa8c59f MaridiaFloater_Func_13 +0xa8c5be MaridiaFloater_Touch +0xa8c5ef MaridiaFloater_Shot +0xa8c63f MaridiaFloater_Powerbomb +0xa8c675 kMaridiaFloater_Sprmap_C675 +0xa8c67c kMaridiaFloater_Sprmap_C67C +0xa8c683 kMaridiaFloater_Sprmap_C683 +0xa8c68a kMaridiaFloater_Sprmap_C68A +0xa8c691 kMaridiaFloater_Sprmap_C691 +0xa8c698 kMaridiaFloater_Sprmap_C698 +0xa8c6b3 kWreckedShipRobot_Palette +0xa8c6d3 kWreckedShipRobot_Ilist_C6D3 +0xa8c6d9 kWreckedShipRobot_Ilist_C6D9 +0xa8c6df kWreckedShipRobot_Ilist_C6DF +0xa8c6e5 kWreckedShipRobot_Ilist_C6E5 +0xa8c73f kWreckedShipRobot_Ilist_C73F +0xa8c7bb kWreckedShipRobot_Ilist_C7BB +0xa8c833 kWreckedShipRobot_Ilist_C833 +0xa8c8b1 kWreckedShipRobot_Ilist_C8B1 +0xa8c8bd kWreckedShipRobot_Ilist_C8BD +0xa8c8d1 kWreckedShipRobot_Ilist_C8D1 +0xa8c91b kWreckedShipRobot_Ilist_C91B +0xa8c92d kWreckedShipRobot_Ilist_C92D +0xa8c985 kWreckedShipRobot_Ilist_C985 +0xa8ca01 kWreckedShipRobot_Ilist_CA01 +0xa8ca7d kWreckedShipRobot_Ilist_CA7D +0xa8cafd kWreckedShipRobot_Ilist_CAFD +0xa8cb09 kWreckedShipRobot_Ilist_CB09 +0xa8cb1d kWreckedShipRobot_Ilist_CB1D +0xa8cb65 kWreckedShipRobot_Ilist_CB65 +0xa8cb77 WreckedShipRobot_Init +0xa8cbcc WreckedShipRobotDeactivated_Init +0xa8cc36 WreckedShipRobot_Main +0xa8cc66 nullsub_342 +0xa8cc67 WreckedShipRobot_Func_1 +0xa8ccff WreckedShipRobot_Func_2 +0xa8cd09 WreckedShipRobot_Instr_4 +0xa8cda4 WreckedShipRobot_Instr_9 +0xa8cdea WreckedShipRobot_Instr_6 +0xa8ce85 WreckedShipRobot_Instr_8 +0xa8cecb WreckedShipRobot_Instr_7 +0xa8cecf WreckedShipRobot_Instr_15 +0xa8cf6a WreckedShipRobot_Instr_18 +0xa8cfb0 WreckedShipRobot_Instr_16 +0xa8d04b WreckedShipRobot_Instr_17 +0xa8d091 WreckedShipRobot_Instr_3 +0xa8d0c2 WreckedShipRobot_Instr_10 +0xa8d0c6 WreckedShipRobot_Instr_14 +0xa8d0d2 WreckedShipRobot_Instr_2 +0xa8d0dc WreckedShipRobot_CommonInstr +0xa8d100 WreckedShipRobot_Instr_13 +0xa8d107 WreckedShipRobot_Instr_1 +0xa8d10c WreckedShipRobot_D10C +0xa8d131 WreckedShipRobot_Instr_12 +0xa8d13d WreckedShipRobot_Instr_5 +0xa8d147 WreckedShipRobot_D147 +0xa8d16b WreckedShipRobot_Instr_11 +0xa8d174 WreckedShipRobotDeactivated_Touch +0xa8d18d WreckedShipRobotDeactivated_Shot +0xa8d192 WreckedShipRobot_Shot +0xa8d1f1 kWreckedShipRobot_Sprmap_D1F1 +0xa8d22f kWreckedShipRobot_Sprmap_D22F +0xa8d26d kWreckedShipRobot_Sprmap_D26D +0xa8d2ab kWreckedShipRobot_Sprmap_D2AB +0xa8d2e9 kWreckedShipRobot_Sprmap_D2E9 +0xa8d327 kWreckedShipRobot_Sprmap_D327 +0xa8d365 kWreckedShipRobot_Sprmap_D365 +0xa8d3a3 kWreckedShipRobot_Sprmap_D3A3 +0xa8d3e1 kWreckedShipRobot_Sprmap_D3E1 +0xa8d41f kWreckedShipRobot_Sprmap_D41F +0xa8d45d kWreckedShipRobot_Sprmap_D45D +0xa8d49b kWreckedShipRobot_Sprmap_D49B +0xa8d4d9 kWreckedShipRobot_Sprmap_D4D9 +0xa8d517 kWreckedShipRobot_Sprmap_D517 +0xa8d555 kWreckedShipRobot_Sprmap_D555 +0xa8d593 kWreckedShipRobot_Sprmap_D593 +0xa8d5d1 kWreckedShipRobot_Sprmap_D5D1 +0xa8d60f kWreckedShipRobot_Sprmap_D60F +0xa8d64d kWreckedShipRobot_Sprmap_D64D +0xa8d68b kWreckedShipRobot_Sprmap_D68B +0xa8d6c9 kWreckedShipRobot_Sprmap_D6C9 +0xa8d707 kWreckedShipRobot_Sprmap_D707 +0xa8d745 kWreckedShipRobot_Sprmap_D745 +0xa8d783 kWreckedShipRobot_Sprmap_D783 +0xa8d7c1 kWreckedShipRobot_Sprmap_D7C1 +0xa8d7e1 kWreckedShipRobot_Sprmap_D7E1 +0xa8d801 kWreckedShipRobot_Sprmap_D801 +0xa8d821 kMaridiaPuffer_Palette +0xa8d841 kMaridiaPuffer_Ilist_D841 +0xa8d855 kMaridiaPuffer_Ilist_D855 +0xa8d8c9 MaridiaPuffer_Init +0xa8d90b MaridiaPuffer_Main +0xa8d92b MaridiaPuffer_Func_1 +0xa8d940 MaridiaPuffer_Func_2 +0xa8d963 MaridiaPuffer_Func_3 +0xa8d97c MaridiaPuffer_Func_4 +0xa8d9aa MaridiaPuffer_Func_5 +0xa8d9db MaridiaPuffer_Func_6 +0xa8da28 MaridiaPuffer_Func_7 +0xa8da71 MaridiaPuffer_Func_8 +0xa8da92 MaridiaPuffer_Func_9 +0xa8dab3 MaridiaPuffer_Func_10 +0xa8daf6 MaridiaPuffer_Func_11 +0xa8db14 MaridiaPuffer_Shot +0xa8db76 kMaridiaPuffer_Sprmap_DB76 +0xa8db8c kMaridiaPuffer_Sprmap_DB8C +0xa8dba2 kMaridiaPuffer_Sprmap_DBA2 +0xa8dbc7 kWalkingLavaSeahorse_Palette +0xa8dbe7 kWalkingLavaSeahorse_Ilist_DBE7 +0xa8dc03 kWalkingLavaSeahorse_Ilist_DC03 +0xa8dc13 kWalkingLavaSeahorse_Ilist_DC13 +0xa8dc45 kWalkingLavaSeahorse_Ilist_DC45 +0xa8dc51 kWalkingLavaSeahorse_Ilist_DC51 +0xa8dc57 kWalkingLavaSeahorse_Ilist_DC57 +0xa8dc73 kWalkingLavaSeahorse_Ilist_DC73 +0xa8dcc1 kWalkingLavaSeahorse_Ilist_DCC1 +0xa8dccd WalkingLavaSeahorse_Init +0xa8dd37 WalkingLavaSeahorse_Func_1 +0xa8dd55 WalkingLavaSeahorse_Func_2 +0xa8dd6b WalkingLavaSeahorse_Main +0xa8dd71 WalkingLavaSeahorse_Func_3 +0xa8ddc6 WalkingLavaSeahorse_Func_4 +0xa8ddf9 nullsub_318 +0xa8ddfa WalkingLavaSeahorse_Func_5 +0xa8de05 WalkingLavaSeahorse_Func_6 +0xa8de4b WalkingLavaSeahorse_Func_7 +0xa8decc nullsub_257 +0xa8decd WalkingLavaSeahorse_Func_8 +0xa8deec WalkingLavaSeahorse_Func_9 +0xa8df1c WalkingLavaSeahorse_Instr_4 +0xa8df20 WalkingLavaSeahorse_DF20 +0xa8df33 WalkingLavaSeahorse_Instr_3 +0xa8df39 WalkingLavaSeahorse_Instr_5 +0xa8df3f WalkingLavaSeahorse_Instr_6 +0xa8df63 WalkingLavaSeahorse_Instr_2 +0xa8df71 WalkingLavaSeahorse_Instr_1 +0xa8df9c nullsub_258 +0xa8df9d WalkingLavaSeahorse_Func_10 +0xa8dfa2 kWalkingLavaSeahorse_Sprmap_DFA2 +0xa8dfc2 kWalkingLavaSeahorse_Sprmap_DFC2 +0xa8dfe2 kWalkingLavaSeahorse_Sprmap_DFE2 +0xa8e007 kWalkingLavaSeahorse_Sprmap_E007 +0xa8e027 kWalkingLavaSeahorse_Sprmap_E027 +0xa8e047 kWalkingLavaSeahorse_Sprmap_E047 +0xa8e06c kWalkingLavaSeahorse_Sprmap_E06C +0xa8e09b kWalkingLavaSeahorse_Sprmap_E09B +0xa8e0bb kWalkingLavaSeahorse_Sprmap_E0BB +0xa8e0db kWalkingLavaSeahorse_Sprmap_E0DB +0xa8e0fb kWalkingLavaSeahorse_Sprmap_E0FB +0xa8e11b kWalkingLavaSeahorse_Sprmap_E11B +0xa8e140 kWalkingLavaSeahorse_Sprmap_E140 +0xa8e160 kWalkingLavaSeahorse_Sprmap_E160 +0xa8e180 kWalkingLavaSeahorse_Sprmap_E180 +0xa8e1a5 kWalkingLavaSeahorse_Sprmap_E1A5 +0xa8e1d4 kWalkingLavaSeahorse_Sprmap_E1D4 +0xa8e1f4 kWalkingLavaSeahorse_Sprmap_E1F4 +0xa8e214 kWalkingLavaSeahorse_Sprmap_E214 +0xa8e21b kWalkingLavaSeahorse_Sprmap_E21B +0xa8e222 kWalkingLavaSeahorse_Sprmap_E222 +0xa8e229 kWalkingLavaSeahorse_Sprmap_E229 +0xa8e230 kWreckedShipOrbs_Palette +0xa8e310 kWreckedShipOrbs_Ilist_E310 +0xa8e32c kWreckedShipOrbs_Ilist_E32C +0xa8e348 kWreckedShipOrbs_Ilist_E348 +0xa8e364 kWreckedShipOrbs_Ilist_E364 +0xa8e388 WreckedShipOrbs_Init +0xa8e3c3 WreckedShipOrbs_Main +0xa8e3d9 WreckedShipOrbs_Func_1 +0xa8e3ef WreckedShipOrbs_Func_2 +0xa8e405 WreckedShipOrbs_Func_3 +0xa8e424 WreckedShipOrbs_Func_4 +0xa8e443 WreckedShipOrbs_Func_5 +0xa8e462 WreckedShipOrbs_Func_6 +0xa8e481 WreckedShipOrbs_Func_7 +0xa8e485 WreckedShipOrbs_Func_8 +0xa8e489 kWreckedShipOrbs_Sprmap_E489 +0xa8e49f kWreckedShipOrbs_Sprmap_E49F +0xa8e4b5 kWreckedShipOrbs_Sprmap_E4B5 +0xa8e4cb kWreckedShipOrbs_Sprmap_E4CB +0xa8e4e1 kWreckedShipOrbs_Sprmap_E4E1 +0xa8e4f2 kWreckedShipOrbs_Sprmap_E4F2 +0xa8e508 kWreckedShipOrbs_Sprmap_E508 +0xa8e51e kWreckedShipOrbs_Sprmap_E51E +0xa8e534 kWreckedShipOrbs_Sprmap_E534 +0xa8e54a kWreckedShipOrbs_Sprmap_E54A +0xa8e560 kWreckedShipOrbs_Sprmap_E560 +0xa8e571 kWreckedShipOrbs_Sprmap_E571 +0xa8e587 kWreckedShipSpark_Palette +0xa8e5a7 kWreckedShipSpark_Ilist_E5A7 +0xa8e5e5 kWreckedShipSpark_Ilist_E5E5 +0xa8e609 kWreckedShipSpark_Ilist_E609 +0xa8e61d WreckedShipSpark_Instr_2 +0xa8e62a WreckedShipSpark_Instr_1 +0xa8e637 WreckedShipSpark_Init +0xa8e68e WreckedShipSpark_Main +0xa8e694 nullsub_259 +0xa8e695 WreckedShipSpark_Func_1 +0xa8e6b7 WreckedShipSpark_Func_2 +0xa8e6dc WreckedShipSpark_Func_3 +0xa8e6f6 WreckedShipSpark_Func_4 +0xa8e70d nullsub_260 +0xa8e70e WreckedShipSpark_Shot +0xa8e71f kWreckedShipSpark_Sprmap_E71F +0xa8e72b kWreckedShipSpark_Sprmap_E72B +0xa8e737 kWreckedShipSpark_Sprmap_E737 +0xa8e743 kWreckedShipSpark_Sprmap_E743 +0xa8e74f kWreckedShipSpark_Sprmap_E74F +0xa8e76a kWreckedShipSpark_Sprmap_E76A +0xa8e785 kWreckedShipSpark_Sprmap_E785 +0xa8e79b kWreckedShipSpark_Sprmap_E79B +0xa8e7ac kBlueBrinstarFaceBlock_Palette +0xa8e80c kBlueBrinstarFaceBlock_Ilist_E80C +0xa8e81a kBlueBrinstarFaceBlock_Ilist_E81A +0xa8e828 kBlueBrinstarFaceBlock_Ilist_E828 +0xa8e82e BlueBrinstarFaceBlock_Init +0xa8e86e BlueBrinstarFaceBlock_Func_1 +0xa8e8ae BlueBrinstarFaceBlock_Main +0xa8e91c nullsub_261 +0xa8e91d BlueBrinstarFaceBlock_Shot +0xa8e92c kBlueBrinstarFaceBlock_Sprmap_E92C +0xa8e942 kBlueBrinstarFaceBlock_Sprmap_E942 +0xa8e958 kBlueBrinstarFaceBlock_Sprmap_E958 +0xa8e96e kBlueBrinstarFaceBlock_Sprmap_E96E +0xa8e984 kBlueBrinstarFaceBlock_Sprmap_E984 +0xa8e99a kKiHunter_Palette_0 +0xa8e9ba kKiHunter_Palette_1 +0xa8e9da kKiHunter_Palette_2 +0xa8e9fa kKiHunter_Ilist_E9FA +0xa8ea08 kKiHunter_Ilist_EA08 +0xa8ea24 kKiHunter_Ilist_EA24 +0xa8ea32 kKiHunter_Ilist_EA32 +0xa8ea4e kKiHunter_Ilist_EA4E +0xa8ea5e kKiHunter_Ilist_EA5E +0xa8ea6e kKiHunter_Ilist_EA6E +0xa8ea76 kKiHunter_Ilist_EA76 +0xa8ea7e kKiHunter_Ilist_EA7E +0xa8ea84 kKiHunter_Ilist_EA84 +0xa8ea8a kKiHunter_Ilist_EA8A +0xa8eaa6 kKiHunter_Ilist_EAA6 +0xa8eac2 kKiHunter_Ilist_EAC2 +0xa8eada kKiHunter_Ilist_EADA +0xa8eaf2 kKiHunter_Ilist_EAF2 +0xa8eb02 kKiHunter_Ilist_EB02 +0xa8eb10 kKiHunter_Ilist_EB10 +0xa8eb20 kKiHunter_Ilist_EB20 +0xa8eb2e kKiHunter_Sprmap_EB2E +0xa8eb58 kKiHunter_Sprmap_EB58 +0xa8eb82 kKiHunter_Sprmap_EB82 +0xa8ebac kKiHunter_Sprmap_EBAC +0xa8ebc2 kKiHunter_Sprmap_EBC2 +0xa8ebce kKiHunter_Sprmap_EBCE +0xa8ebdf kKiHunter_Sprmap_EBDF +0xa8ebeb kKiHunter_Sprmap_EBEB +0xa8ebf7 kKiHunter_Sprmap_EBF7 +0xa8ec21 kKiHunter_Sprmap_EC21 +0xa8ec4b kKiHunter_Sprmap_EC4B +0xa8ec75 kKiHunter_Sprmap_EC75 +0xa8ec8b kKiHunter_Sprmap_EC8B +0xa8ec97 kKiHunter_Sprmap_EC97 +0xa8eca8 kKiHunter_Sprmap_ECA8 +0xa8ecb4 kKiHunter_Sprmap_ECB4 +0xa8ecc0 kKiHunter_Sprmap_ECC0 +0xa8ecea kKiHunter_Sprmap_ECEA +0xa8ed14 kKiHunter_Sprmap_ED14 +0xa8ed3e kKiHunter_Sprmap_ED3E +0xa8ed68 kKiHunter_Sprmap_ED68 +0xa8ed92 kKiHunter_Sprmap_ED92 +0xa8edbc kKiHunter_Sprmap_EDBC +0xa8ede6 kKiHunter_Sprmap_EDE6 +0xa8ee10 kKiHunter_Sprmap_EE10 +0xa8ee3a kKiHunter_Sprmap_EE3A +0xa8ee64 kKiHunter_Sprmap_EE64 +0xa8ee8e kKiHunter_Sprmap_EE8E +0xa8eeb8 kKiHunter_Sprmap_EEB8 +0xa8eee2 kKiHunter_Sprmap_EEE2 +0xa8ef0c kKiHunter_Sprmap_EF0C +0xa8ef36 kKiHunter_Sprmap_EF36 +0xa8ef60 kKiHunter_Sprmap_EF60 +0xa8ef8a kKiHunter_Sprmap_EF8A +0xa8efb4 kKiHunter_Sprmap_EFB4 +0xa8efde kKiHunter_Sprmap_EFDE +0xa8f00d kKiHunter_Sprmap_F00D +0xa8f03c kKiHunter_Sprmap_F03C +0xa8f06b kKiHunter_Sprmap_F06B +0xa8f09a kKiHunter_Sprmap_F09A +0xa8f0c4 kKiHunter_Sprmap_F0C4 +0xa8f0f3 kKiHunter_Sprmap_F0F3 +0xa8f122 kKiHunter_Sprmap_F122 +0xa8f151 kKiHunter_Sprmap_F151 +0xa8f188 KiHunter_Init +0xa8f214 KiHunterWings_Init +0xa8f25c KiHunter_Main +0xa8f262 KiHunterWings_Main +0xa8f268 KiHunter_Func_1 +0xa8f3b8 KiHunter_Func_2 +0xa8f4ed KiHunter_Func_3 +0xa8f526 KiHunter_Instr_1 +0xa8f55a KiHunter_Func_4 +0xa8f58b KiHunter_Func_5 +0xa8f5e3 nullsub_346 +0xa8f5e4 KiHunter_Instr_2 +0xa8f5f0 KiHunter_Func_6 +0xa8f67f KiHunter_Instr_3 +0xa8f68b KiHunter_Func_7 +0xa8f6b3 KiHunter_Func_8 +0xa8f6d2 KiHunter_Instr_4 +0xa8f6d8 KiHunter_Instr_5 +0xa8f6f3 KiHunter_Func_9 +0xa8f700 nullsub_262 +0xa8f701 KiHunter_Shot +0xa8f7cf KiHunter_Func_10 +0xa8f7db KiHunter_Func_11 +0xa8f851 KiHunter_Func_12 +0xa8f87f KiHunter_Func_13 +0xa8f8ad KiHunter_Func_14 +0xa8f947 KiHunter_Func_15 +0xa8f96a KiHunter_Func_16 +0xa8f98d KiHunter_Func_17 +0xa98000 Enemy_GrappleReact_NoInteract_A9 +0xa98005 Enemy_GrappleReact_SamusLatchesOn_A9 +0xa9800a Enemy_GrappleReact_KillEnemy_A9 +0xa9800f Enemy_GrappleReact_CancelBeam_A9 +0xa98014 Enemy_GrappleReact_SamusLatchesNoInvinc_A9 +0xa98019 Enemy_GrappleReact_SamusLatchesParalyze_A9 +0xa9801e Enemy_GrappleReact_HurtSamus_A9 +0xa98023 Enemy_NormalTouchAI_A9 +0xa98028 Enemy_NormalTouchAI_SkipDeathAnim_A9 +0xa9802d Enemy_NormalShotAI_A9 +0xa98032 Enemy_NormalShotAI_SkipSomeParts_A9 +0xa98037 Enemy_NormalPowerBombAI_A9 +0xa9803c Enemy_NormalPowerBombAI_SkipDeathAnim_A9 +0xa98041 Enemy_NormalFrozenAI_A9 +0xa98046 CreateADudShot_A9 +0xa9804b nullsub_169_A9 +0xa9804c nullsub_170_A9 +0xa9804d kSpritemap_Nothing_A9 +0xa9804f kExtendedSpritemap_Nothing_A9 +0xa98059 word8059_A9 +0xa98069 sub8069_A9 +0xa9806b Enemy_SetAiPreInstr_A9 +0xa98074 Enemy_ClearAiPreInstr_A9 +0xa9807b nullsub_171_A9 +0xa9807c EnemyInstr_StopScript_A9 +0xa9808a EnemyInstr_Call_A9 +0xa98097 loc8097_A9 +0xa9809c EnemyInstr_CallWithArg_A9 +0xa980ac loc80AC_A9 +0xa980b5 EnemyInstr_CallFar_A9 +0xa980cb loc80CB_A9 +0xa980ce EnemyInstr_CallFarWithArg_A9 +0xa980ea loc80EA_A9 +0xa980ed EnemyInstr_Goto_A9 +0xa980f2 EnemyInstr_GotoRel_A9 +0xa98100 loc8100_A9 +0xa98103 loc8103_A9 +0xa98108 EnemyInstr_DecTimerAndGoto_A9 +0xa98110 EnemyInstr_DecTimerAndGoto2_A9 +0xa98118 EnemyInstr_DecTimerAndGotoRel_A9 +0xa98123 EnemyInstr_SetTimer_A9 +0xa9812c EnemyInstr_Skip2bytes_A9 +0xa9812f EnemyInstr_Sleep_A9 +0xa9813a EnemyInstr_WaitNframes_A9 +0xa9814b EnemyInstr_CopyToVram_A9 +0xa98173 EnemyInstr_EnableOffScreenProcessing_A9 +0xa9817d EnemyInstr_DisableOffScreenProcessing_A9 +0xa98187 kCommonEnemySpeeds_Linear_A9 +0xa9838f kCommonEnemySpeeds_Quadratic_A9 +0xa98687 MotherBrainsBody_Init +0xa98705 MotherBrainsBrain_Init +0xa9873e MotherBrainsBody_Hurt +0xa98763 MotherBrainsBody_UnpauseHook +0xa98785 nullsub_263 +0xa98786 nullsub_264 +0xa98787 MotherBrainsBody_Powerbomb +0xa9878b MotherBrainsBrain_Hurt +0xa987a2 MotherBrainsBrain_SetupBrainAndNeckToDraw +0xa987c9 MotherBrain_DrawBrainNeck_EnemyGfxDrawHook +0xa987d0 MotherBrainsBrain_SetupBrainToDraw +0xa987dd MotherBrainsBrain_GfxDrawHook +0xa987e1 MotherBrainsBody_FirstPhase_DoubleRet +0xa9881d MotherBrainBody_FakeDeath_Descent_0_Pause +0xa98829 MotherBrainBody_FakeDeath_Descent_1 +0xa9884d MotherBrainBody_FakeDeath_Descent_2 +0xa9886c MotherBrainBody_FakeDeath_Descent_3 +0xa98884 MotherBrainBody_FakeDeath_Descent_4 +0xa988b1 nullsub_319 +0xa988b2 MotherBrainBody_FakeDeath_Descent_5 +0xa988d3 MotherBrainBody_FakeDeath_Descent_6 +0xa988dd MotherBrain_HandleFakeDeathExplosions +0xa98949 MotherBrainBody_0_Wait +0xa9896e MotherBrainBody_1_ClearBottomLeftTube +0xa98983 MotherBrainBody_2_SpawnTopRightTubeFalling +0xa989a0 MotherBrainBody_3_ClearCeilingBlock9 +0xa989b5 MotherBrainBody_4_SpawnTopLeftTubeFalling +0xa989d2 MotherBrainBody_4_ClearCeilingBlock6 +0xa989e7 MotherBrainBody_5_SpawnTubeFallingEnemy1 +0xa989fa MotherBrainBody_6_ClearBottomRightTube +0xa98a0f MotherBrainBody_7_SpawnTubeFallingEnemy2 +0xa98a22 MotherBrainBody_8_ClearBottomMiddleLeftTube +0xa98a37 MotherBrainBody_9_SpawnTopMiddleLeftFalling +0xa98a54 MotherBrainBody_10_ClearCeilingTubeColumn7 +0xa98a69 MotherBrainBody_11_SpawnTopMiddleRightFalling +0xa98a86 MotherBrainBody_12_ClearCeilingTubeColumn8 +0xa98a9b MotherBrainBody_13_SpawnTubeFallingEnemy3 +0xa98aae MotherBrainBody_14_ClearBottomMiddleRightTube +0xa98ac3 MotherBrainBody_15_SpawnTubeFallingEnemy4 +0xa98ad6 MotherBrainBody_16_ClearBottomMiddleTubes +0xa98ae4 nullsub_365 +0xa98b35 MotherBrainsTubesFalling_Init +0xa98b85 MotherBrainsTubesFalling_Main +0xa98b88 MotherBrainsTubesFalling_Main_NonMain +0xa98b9d MotherBrainsTubesFalling_HandleSmoke +0xa98ba5 nullsub_320 +0xa98ba6 MotherBrainsTubesFalling_Explode +0xa98bcb MotherBrainsTubesFalling_WaitToFall +0xa98bd6 MotherBrainsTubesFalling_Falling +0xa98c36 MotherBrainsTubesFalling_SpawnSmoke +0xa98c69 kKiHunter_Ilist_8C69 +0xa98c6f kKiHunter_Ilist_8C6F +0xa98c75 kKiHunter_Ilist_8C75 +0xa98c7b kKiHunter_Ilist_8C7B +0xa98c81 kKiHunter_Ilist_8C81 +0xa98c87 MotherBrainBody_FakeDeath_Ascent_0_DrawBG1Row23 +0xa98c9e MotherBrainBody_FakeDeath_Ascent_1_DrawBG1Row45 +0xa98cb5 MotherBrainBody_FakeDeath_Ascent_2_DrawBG1Row67 +0xa98ccc MotherBrainBody_FakeDeath_Ascent_3_DrawBG1Row89 +0xa98ce3 MotherBrainBody_FakeDeath_Ascent_4_DrawBG1RowAB +0xa98cfa MotherBrainBody_FakeDeath_Ascent_5_DrawBG1RowCD +0xa98d11 MotherBrainBody_FakeDeath_Ascent_6_SetupPhase2Gfx +0xa98d49 MotherBrainBody_FakeDeath_Ascent_7_SetupPhase2Brain +0xa98d79 MotherBrainBody_FakeDeath_Ascent_8_Pause +0xa98d8b MotherBrainBody_FakeDeath_Ascent_9_PrepareRise +0xa98db4 MotherBrainBody_FakeDeath_Ascent_10_LoadLegTiles +0xa98dc3 MotherBrainBody_FakeDeath_Ascent_11_ContinuePause +0xa98dec MotherBrainBody_FakeDeath_Ascent_12_StartMusic +0xa98e4d MotherBrainBody_FakeDeath_Ascent_13_Raise +0xa98e95 MotherBrainBody_FakeDeath_Ascent_14_WaitForUncouching +0xa98e9b nullsub_354 +0xa98eaa MotherBrainBody_FakeDeath_Ascent_15_TransitionFromGrey +0xa98ef5 MotherBrainBody_2ndphase_16_ShakeHeadMenacingly +0xa98f14 MotherBrainBody_2ndphase_17_BringHeadBackUp +0xa98f33 MotherBrainBody_2ndphase_18_FinishStretching +0xa98f45 nullsub_321 +0xa98f46 MotherBrain_SpawnDustCloudsForAscent +0xa9903f MotherBrain_SetupNeckForFakeAscent +0xa99072 MotherBrain_HandleNeckLower +0xa99084 MotherBrain_HandleNeckLower_0 +0xa99085 MotherBrain_HandleNeckLower_2_BobDown +0xa990a2 MotherBrain_HandleNeckLower_4_BobUp +0xa990cf MotherBrain_HandleNeckLower_6_Lower +0xa990ec MotherBrain_HandleNeckLower_8_Raise +0xa99109 MotherBrain_HandleNeckUpper +0xa9911b MotherBrain_HandleNeckUpper_0 +0xa9911c MotherBrain_HandleNeckUpper_2_BobDown +0xa99151 MotherBrain_HandleNeckUpper_4_BobUp +0xa99176 MotherBrain_HandleNeckUpper_6_Lower +0xa99193 MotherBrain_HandleNeckUpper_8_Raise +0xa991b8 MotherBrain_HandleNeck +0xa992af MotherBrain_Func_1_DoubleRetTmp +0xa99303 MotherBrain_DrawNeck +0xa99357 MotherBrain_DrawBrain +0xa993cb MotherBrain_DrawNeckSegment +0xa993ee MotherBrain_AddSpritemapToOam +0xa99466 MotherBrain_CalculateRainbowBeamHdma +0xa99472 kMotherBrainsBrain_Palette +0xa99492 kMotherBrainPalette_0 +0xa994b2 kMotherBrainPalette_1 +0xa994d2 kMotherBrainPalette_2 +0xa994f2 kMotherBrainPalette_3 +0xa99512 kMotherBrainPalette_4 +0xa99532 kMotherBrainPalette_5 +0xa99552 MotherBrain_MoveBodyDownScrollLeft +0xa99579 MotherBrain_MoveBodyDown +0xa99599 MotherBrain_FootstepEffect +0xa995b6 MotherBrain_Instr_MoveBodyUp10Left4 +0xa995c0 MotherBrain_Instr_MoveBodyUp16Left4 +0xa995ca MotherBrain_Instr_MoveBodyUp12Right2 +0xa995d4 UNUSED_sub_A995D4 +0xa995de MotherBrain_Instr_MoveDown12Left4 +0xa995e8 MotherBrain_Instr_MoveDown16Right2 +0xa995f2 MotherBrain_Instr_MoveDown10Right2 +0xa995fc MotherBrain_Instr_MoveUp2Right1 +0xa9960c MotherBrain_Instr_MoveRight2 +0xa9961c MotherBrain_Instr_MoveUp1 +0xa99622 MotherBrain_Instr_MoveUp1Right3_Sfx +0xa99638 MotherBrain_Instr_Down2Right15 +0xa99648 MotherBrain_Instr_Down4Right6 +0xa99658 MotherBrain_Instr_Up4Left2 +0xa99668 MotherBrain_Instr_Up2Left1_Sfx +0xa9967e MotherBrain_Instr_Up2Left1_Sfx2 +0xa99694 MotherBrain_Instr_MoveLeft2 +0xa996a4 MotherBrain_Instr_MoveDown1 +0xa996aa MotherBrain_Instr_MoveDown1Left3 +0xa996ba MotherBrain_Instr_MoveUp2Left15_Sfx +0xa996d0 MotherBrain_Instr_MoveUp4Left6 +0xa996e0 MotherBrain_Instr_MoveDown4Right2 +0xa996f0 MotherBrain_Instr_MoveDown2Right1 +0xa99700 MotherBrain_Instr_SetPose_Standing +0xa99708 MotherBrain_Instr_SetPose_Walking +0xa99710 MotherBrain_Instr_SetPose_Crouched +0xa99718 MotherBrain_Instr_SetPose_CrouchedTrans +0xa99720 MotherBrain_Instr_SetPose_DeathBeamMode +0xa99728 MotherBrain_Instr_SetPose_LeaningDown +0xa99730 kMotherBrain_Ilist_9730 +0xa9976a kMotherBrain_Ilist_976A +0xa997a4 kMotherBrain_Ilist_97A4 +0xa997de kMotherBrain_Ilist_97DE +0xa99818 kMotherBrain_Ilist_9818 +0xa99852 kMotherBrain_Ilist_9852 +0xa9988c kMotherBrain_Ilist_988C +0xa998c6 kMotherBrain_Ilist_98C6 +0xa99900 kMotherBrain_Ilist_9900 +0xa9993a kMotherBrain_Ilist_993A +0xa99974 kMotherBrain_Ilist_9974 +0xa999aa kMotherBrain_Ilist_99AA +0xa999c6 kMotherBrain_Ilist_99C6 +0xa999e2 kMotherBrain_Ilist_99E2 +0xa999f2 kMotherBrain_Ilist_99F2 +0xa99a02 kMotherBrain_Ilist_9A02 +0xa99a0a kMotherBrain_Ilist_9A0A +0xa99a26 kMotherBrain_Ilist_9A26 +0xa99a42 kMotherBrain_Ilist_9A42 +0xa99ac8 MotherBrain_Instr_SpawnEprojToOffset +0xa99aef MotherBrain_Instr_SpawnDeathBeamEproj +0xa99b05 MotherBrain_Instr_IncrBeamAttackPhase +0xa99b0f MotherBrain_Instr_Goto +0xa99b14 MotherBrain_Instr_EnableNeckMovementGoto +0xa99b20 MotherBrain_Instr_DisableNeckMovement +0xa99b28 MotherBrain_Instr_QueueSfx2 +0xa99b32 MotherBrain_Instr_QueueSfx3 +0xa99b3c MotherBrain_Instr_SpawnDroolEproj +0xa99b6d MotherBrain_Instr_SpawnPurpleBreath +0xa99b77 MotherBrain_Instr_SetMainShakeTimer50 +0xa99b7f kMotherBrain_Ilist_9B7F +0xa99bb3 kMotherBrain_Ilist_9BB3 +0xa99be7 kMotherBrain_Ilist_9BE7 +0xa99c13 kMotherBrain_Ilist_9C13 +0xa99c19 kMotherBrain_Ilist_9C19 +0xa99c29 kMotherBrain_Ilist_9C29 +0xa99c39 kMotherBrain_Ilist_9C39 +0xa99c65 MotherBrain_Instr_GotoEitherOr +0xa99c77 kMotherBrain_Ilist_9C77 +0xa99c7f kMotherBrain_Ilist_9C7F +0xa99c87 kMotherBrain_Ilist_9C87 +0xa99cad MotherBrain_Instr_MaybeGoto +0xa99cb9 kMotherBrain_Ilist_9CB9 +0xa99ce3 kMotherBrain_Ilist_9CE3 +0xa99d0d MotherBrain_Instr_MaybeGoto2 +0xa99d21 MotherBrain_Instr_Goto2 +0xa99d24 nullsub_345 +0xa99d25 kMotherBrain_Ilist_9D25 +0xa99d3d kMotherBrain_Ilist_9D3D +0xa99d7f kMotherBrain_Ilist_9D7F +0xa99db1 kMotherBrain_Ilist_9DB1 +0xa99dbb kMotherBrain_Ilist_9DBB +0xa99df7 MotherBrain_Instr_QueueShitroidAttackSfx +0xa99e29 MotherBrain_Instr_SpawnBlueRingEproj +0xa99e37 MotherBrain_Instr_AimRingsAtShitroid +0xa99e5b MotherBrain_Instr_AimRingsAtSamus +0xa99e77 MotherBrain_Instr_AimRings +0xa99ea3 MotherBrain_Instr_IncrShitroidAttackCtr +0xa99eb5 MotherBrain_Instr_SetShitroidAttackCtr0 +0xa99ebd MotherBrain_Instr_SpawnBombEproj +0xa99ecc kMotherBrain_Ilist_9ECC +0xa99f00 kMotherBrain_Ilist_9F00 +0xa99f34 kMotherBrain_Ilist_9F34 +0xa99f46 MotherBrain_Instr_SpawnLaserEproj +0xa99f6c kMotherBrain_Ilist_9F6C +0xa99f84 MotherBrain_Instr_SpawnRainbowEproj +0xa99f8e MotherBrain_Instr_SetupFxForRainbowBeam +0xa99fa0 kMotherBrain_ExtSprmap_9FA0 +0xa99fea kMotherBrain_ExtSprmap_9FEA +0xa9a03c kMotherBrain_ExtSprmap_A03C +0xa9a08e kMotherBrain_ExtSprmap_A08E +0xa9a0e0 kMotherBrain_ExtSprmap_A0E0 +0xa9a12a kMotherBrain_ExtSprmap_A12A +0xa9a174 kMotherBrain_ExtSprmap_A174 +0xa9a1be kMotherBrain_ExtSprmap_A1BE +0xa9a208 kMotherBrain_ExtSprmap_A208 +0xa9a252 kMotherBrain_ExtSprmap_A252 +0xa9a28c kMotherBrain_ExtSprmap_A28C +0xa9a2d6 kMotherBrain_ExtSprmap_A2D6 +0xa9a320 kMotherBrain_ExtSprmap_A320 +0xa9a32a kMotherBrain_ExtSprmap_A32A +0xa9a334 kMotherBrain_ExtSprmap_A334 +0xa9a33e kMotherBrain_ExtSprmap_A33E +0xa9a348 kMotherBrain_ExtSprmap_A348 +0xa9a352 kMotherBrain_ExtSprmap_A352 +0xa9a35c kMotherBrain_ExtSprmap_A35C +0xa9a366 kMotherBrain_ExtSprmap_A366 +0xa9a370 kMotherBrain_ExtSprmap_A370 +0xa9a37a kMotherBrain_ExtSprmap_A37A +0xa9a384 kMotherBrain_ExtSprmap_A384 +0xa9a3ce kMotherBrain_ExtSprmap_A3CE +0xa9a418 kMotherBrain_ExtSprmap_A418 +0xa9a462 kMotherBrain_ExtSprmap_A462 +0xa9a4ac kMotherBrain_Hitbox_A4AC +0xa9a4ba kMotherBrain_Hitbox_A4BA +0xa9a4c8 kMotherBrain_Hitbox_A4C8 +0xa9a4ca kMotherBrain_Hitbox_A4CA +0xa9a4d8 kMotherBrain_Hitbox_A4D8 +0xa9a4da kMotherBrain_Hitbox_A4DA +0xa9a4e8 kMotherBrain_Hitbox_A4E8 +0xa9a504 kMotherBrain_Hitbox_A504 +0xa9a51e kMotherBrain_Hitbox_A51E +0xa9a538 kMotherBrain_Hitbox_A538 +0xa9a552 kMotherBrain_Hitbox_A552 +0xa9a56c kMotherBrain_Hitbox_A56C +0xa9a586 kMotherBrain_Sprmap_A586 +0xa9a5bf kMotherBrain_Sprmap_A5BF +0xa9a5f8 kMotherBrain_Sprmap_A5F8 +0xa9a62c kMotherBrain_Sprmap_A62C +0xa9a660 kMotherBrain_Sprmap_A660 +0xa9a694 kMotherBrain_Sprmap_A694 +0xa9a69b kMotherBrain_Sprmap_A69B +0xa9a6d9 kMotherBrain_Sprmap_A6D9 +0xa9a717 kMotherBrain_Sprmap_A717 +0xa9a750 kMotherBrain_Sprmap_A750 +0xa9a789 kMotherBrain_Sprmap_A789 +0xa9a7c2 kMotherBrain_Sprmap_A7C2 +0xa9a7f1 kMotherBrain_Sprmap_A7F1 +0xa9a811 kMotherBrain_Sprmap_A811 +0xa9a83b kMotherBrain_Sprmap_A83B +0xa9a85b kMotherBrain_Sprmap_A85B +0xa9a862 kMotherBrain_Sprmap_A862 +0xa9a86e kMotherBrain_Sprmap_A86E +0xa9a87a kMotherBrain_Sprmap_A87A +0xa9a890 kMotherBrain_Sprmap_A890 +0xa9a8a6 kMotherBrain_Sprmap_A8A6 +0xa9a8d5 kMotherBrain_Sprmap_A8D5 +0xa9a8f5 kMotherBrain_Sprmap_A8F5 +0xa9a91f kMotherBrain_Sprmap_A91F +0xa9a93f kMotherBrain_Sprmap_A93F +0xa9a946 kMotherBrain_Sprmap_A946 +0xa9a952 kMotherBrain_Sprmap_A952 +0xa9a95e kMotherBrain_Sprmap_A95E +0xa9a974 kMotherBrain_Sprmap_A974 +0xa9a98a kMotherBrain_BigSprmap_A98A +0xa9aa4e kMotherBrain_BigSprmap_AA4E +0xa9aaea kMotherBrain_BigSprmap_AAEA +0xa9ab70 kMotherBrain_BigSprmap_AB70 +0xa9abf6 kMotherBrain_BigSprmap_ABF6 +0xa9ac76 kMotherBrain_BigSprmap_AC76 +0xa9ace4 kMotherBrain_BigSprmap_ACE4 +0xa9ad3e kMotherBrain_Sprmap_AD3E +0xa9ad6d kMotherBrain_Sprmap_AD6D +0xa9ada1 kKiHunter_Sprmap_ADA1 +0xa9add5 kKiHunter_Sprmap_ADD5 +0xa9ae09 kKiHunter_Sprmap_AE09 +0xa9ae33 kKiHunter_Sprmap_AE33 +0xa9ae5d kKiHunter_Sprmap_AE5D +0xa9aee1 MotherBrain_Phase3_Death_0 +0xa9af12 MotherBrain_Phase3_Death_1 +0xa9af20 nullsub_322 +0xa9af21 MotherBrain_Phase3_Death_2 +0xa9af54 MotherBrain_Phase3_Death_3 +0xa9af9d MotherBrain_Phase3_Death_4 +0xa9afb6 MotherBrain_Phase3_Death_5 +0xa9b012 nullsub_323 +0xa9b013 MotherBrain_Phase3_Death_6 +0xa9b022 MotherBrain_GenerateSmokyExplosions +0xa9b031 MotherBrain_GenerateMixedExplosions +0xa9b03e MotherBrain_GenerateExplosions +0xa9b115 MotherBrain_Phase3_Death_7 +0xa9b12d MotherBrain_Phase3_Death_8 +0xa9b15e MotherBrain_Phase3_Death_9 +0xa9b172 nullsub_324 +0xa9b173 MotherBrain_Phase3_Death_10 +0xa9b189 MotherBrain_Phase3_Death_11 +0xa9b1b8 MotherBrain_Phase3_Death_12 +0xa9b1d5 MotherBrain_Phase3_Death_13 +0xa9b211 MotherBrain_Phase3_Death_14_20framedelay +0xa9b223 MotherBrain_CorpseRottingFinished +0xa9b258 MotherBrain_Phase3_Death_15_LoadEscapeTimerTiles +0xa9b26d MotherBrain_Phase3_Death_16_StartEscape +0xa9b2d0 nullsub_325 +0xa9b2d1 MotherBrain_Phase3_Death_17_SpawnTimeBomb +0xa9b2e3 MotherBrain_Phase3_Death_18_TypesZebesText +0xa9b2f9 MotherBrain_Phase3_Death_19_EscapeDoorExploding +0xa9b32a MotherBrain_Phase3_Death_20_BlowUpEscapeDoor +0xa9b33c MotherBrain_Phase3_Death_21_KeepEarthquakeGoing +0xa9b346 MotherBrain_GenerateEscapeDoorExploding +0xa9b3a3 MotherBrain_ExplodeEscapeDoor +0xa9b3b6 MotherBrain_SamusCollDetect +0xa9b455 MotherBrain_SamusCollDetectPart +0xa9b503 MotherBrainsBody_Shot +0xa9b507 MotherBrainsBrain_Shot +0xa9b562 MotherBrain_Phase23_ShotReaction +0xa9b58e MotherBrain_DetermineShotReactionType +0xa9b5a9 MotherBrain_Phase3_BeamShotReaction +0xa9b5c5 nullsub_47 +0xa9b5c6 MotherBrainsBrain_Touch +0xa9b5e1 MotherBrain_HurtSamus +0xa9b605 MotherBrain_Body_Phase2_Thinking +0xa9b64b MotherBrain_Body_Phase2_TryAttack +0xa9b6e2 MotherBrain_Phase2_DecideAttackStrategy_DoubleRet +0xa9b764 MotherBrain_Phase2_Attack_Cooldown +0xa9b773 MotherBrain_Phase2_Attack_End +0xa9b781 MotherBrain_FiringBomb_DecideOnWalking +0xa9b7ab nullsub_326 +0xa9b7ac MotherBrain_FiringBomb_WalkingBackwards +0xa9b7b7 MotherBrain_FiringBomb_DecideOnCrouching +0xa9b7c6 MotherBrain_FiringBomb_Crouch +0xa9b7cb MotherBrain_B7CB +0xa9b7e8 MotherBrain_FiringBomb_Fired +0xa9b7f8 MotherBrain_FiringBomb_Standup +0xa9b7fd MotherBrain_FiringBomb_Finish +0xa9b80d nullsub_327 +0xa9b80e MotherBomb_FiringLaser_PositionHead +0xa9b839 MotherBomb_FiringLaser_PositionHeadSlowlyFire +0xa9b863 MotherBomb_FiringLaser_FinishAttack +0xa9b87d MotherBomb_FiringDeathBeam +0xa9b88f MotherBomb_FiringDeathBeam_0 +0xa9b8b2 MotherBomb_FiringDeathBeam_1 +0xa9b8c8 MotherBomb_FiringDeathBeam_2 +0xa9b8c9 MotherBomb_FiringDeathBeam_3 +0xa9b8eb MotherBomb_FiringRainbowBeam_0 +0xa9b919 nullsub_328 +0xa9b91a MotherBomb_FiringRainbowBeam_1_StartCharge +0xa9b92b MotherBomb_FiringRainbowBeam_2_RetractNeck +0xa9b93f MotherBomb_FiringRainbowBeam_3_Wait +0xa9b951 MotherBomb_FiringRainbowBeam_4_ExtendNeckDown +0xa9b975 MotherBomb_FiringRainbowBeam_5_StartFiring +0xa9b9e5 MotherBomb_FiringRainbowBeam_6_MoveSamusToWall +0xa9ba00 MotherBomb_FiringRainbowBeam_7_DelayFrame +0xa9ba27 MotherBomb_FiringRainbowBeam_8_StartDrainSamus +0xa9ba3c MotherBomb_FiringRainbowBeam_9_DrainingSamus +0xa9ba5e MotherBomb_FiringRainbowBeam_10_FinishFiringRainbow +0xa9bac3 nullsub_329 +0xa9bac4 MotherBomb_FiringRainbowBeam_11_LetSamusFall +0xa9bad1 MotherBomb_FiringRainbowBeam_12_WaitForSamusHitGround +0xa9badd MotherBomb_FiringRainbowBeam_13_LowerHead +0xa9bb05 nullsub_330 +0xa9bb06 MotherBomb_FiringRainbowBeam_14_DecideNextAction +0xa9bb2e MotherBrain_PlayRainbowBeamSfx +0xa9bb48 MotherBrain_WalkBackwardsSlowlyAndRetractHead +0xa9bb51 MotherBrain_RetractHead +0xa9bb6e MotherBrain_AimBeamAndIncrWidth +0xa9bb82 MotherBrain_AimBeam +0xa9bbb0 MotherBrain_CalculateRainbowBeamHdma_ +0xa9bbb5 MotherBrain_MoveSamusTowardsWallDueToBeam +0xa9bbcf MotherBrain_MoveSamusTowardsMiddleOfWall +0xa9bbe1 MotherBrain_MoveSamusForFallingAfterBeam +0xa9bbfd MotherBrain_MoveSamusVerticallyTowardsCeilingFloor +0xa9bc3f MotherBrain_MoveSamusHorizTowardsWall +0xa9bc76 MotherBrain_HandleRainbowBeamExplosions +0xa9bcc6 MotherBrain_BodyRainbowBeamPalAnimIndex0 +0xa9bcce MotherBrain_WriteDefaultPalette +0xa9bcf6 MotherBrain_WritePhase2DeathPalette +0xa9bcfd MotherBrain_HandleRainbowBeamPalette +0xa9bd1d MotherBrain_WritePalette +0xa9bd45 MotherBrain_Phase2Cut_0 +0xa9bd98 MotherBrain_Phase2Cut_1 +0xa9bda9 MotherBrain_Phase2Cut_2 +0xa9bdc1 MotherBrain_Phase2Cut_3 +0xa9bdd2 MotherBrain_Phase2Cut_4 +0xa9bdec nullsub_331 +0xa9bded MotherBrain_Phase2Cut_5 +0xa9be1a nullsub_364 +0xa9be1b MotherBrain_SpawnShitroidInCutscene +0xa9be38 MotherBrain_DrainedByShitroid_0 +0xa9be5d MotherBrain_DrainedByShitroid_1 +0xa9be96 MotherBrain_DrainedByShitroid_2 +0xa9bf0e MotherBrain_DrainedByShitroid_3 +0xa9bf41 MotherBrain_DrainedByShitroid_4 +0xa9bf56 MotherBrain_DrainedByShitroid_5 +0xa9bf7c nullsub_332 +0xa9bf7d MotherBrain_DrainedByShitroid_6 +0xa9bf95 MotherBrain_DrainedByShitroid_7 +0xa9bfd0 MotherBrain_PainfulWalkForwards +0xa9bfe8 MotherBrain_PainfulWalkingForwards +0xa9c004 MotherBrain_PainfulWalkBackwards +0xa9c01c MotherBrain_PainfulWalkingBackwards +0xa9c038 MotherBrain_SetPainfulWalkingTimer +0xa9c059 MotherBrain_Phase2_Revive_0 +0xa9c065 nullsub_333 +0xa9c066 MotherBrain_Phase2_Revive_1 +0xa9c082 MotherBrain_Phase2_Revive_2 +0xa9c08f MotherBrain_Phase2_Revive_3 +0xa9c0ba MotherBrain_Phase2_Revive_4 +0xa9c0e4 MotherBrain_Phase2_Revive_5 +0xa9c0fb MotherBrain_Phase2_Revive_6 +0xa9c11d nullsub_334 +0xa9c11e MotherBrain_Phase2_Revive_7 +0xa9c147 MotherBrain_Phase2_Revive_8 +0xa9c15c MotherBrain_Phase2_MurderShitroid_1 +0xa9c181 nullsub_335 +0xa9c182 MotherBrain_Phase2_MurderShitroid_2 +0xa9c18d nullsub_367 +0xa9c18e MotherBrain_Phase2_PrepareForFinalShitroid +0xa9c19a MotherBrain_Phase2_ExecuteFinalkShitroid +0xa9c1a6 nullsub_363 +0xa9c1a7 MotherBrain_MaybeStandupOrLeanDown +0xa9c1cf MotherBrain_Phase3_Recover_MakeDistance +0xa9c1ef nullsub_336 +0xa9c1f0 MotherBrain_Phase3_Recover_SetupForFight +0xa9c209 MotherBrain_Phase3_Fighting_Main +0xa9c214 nullsub_355 +0xa9c24e MotherBrain_Phase3_Fighting_Cooldown +0xa9c25a MotherBrain_Phase3_WalkHandler +0xa9c26a MotherBrain_Phase3_Walk_TryToInchForward +0xa9c2b3 MotherBrain_Phase3_Walk_RetreatQuickly +0xa9c2d2 MotherBrain_Phase3_Walk_RetreatSlowly +0xa9c2e5 UNUSED_sub_A9C2E5 +0xa9c2f8 nullsub_337 +0xa9c2f9 UNUSED_sub_A9C2F9 +0xa9c313 MotherBrain_SetToTryToInchForward +0xa9c327 MotherBrain_Phase3_NeckHandler +0xa9c330 MotherBrain_Phase3_Neck_Normal +0xa9c353 nullsub_369 +0xa9c354 MotherBrain_Phase3_Neck_SetupRecoilRecovery +0xa9c37b MotherBrain_Phase3_Neck_RecoilRecovery +0xa9c395 MotherBrain_Phase3_Neck_SetupHyperBeamRecoil +0xa9c3cd MotherBrain_Phase3_Neck_HyperBeamRecoil +0xa9c3ef MoveEnemyWithVelocity +0xa9c42d MotherBrain_SetBodyInstrs +0xa9c43a MotherBrain_SetBrainUnusedInstrs +0xa9c447 MotherBrain_SetBrainInstrs +0xa9c453 Enemy_SetInstrList +0xa9c460 ComputeSinMult +0xa9c465 ComputeCosMult +0xa9c48e UNUSED_sub_A9C48E +0xa9c4a9 Enemy_IncreaseYpos +0xa9c4c4 Samus_DecrementAmmoDueToRainbowBeam +0xa9c546 Samus_PlayGainingLosingHealthSfx +0xa9c560 Samus_DamageDueToShitroid +0xa9c57d Samus_DamageDueToRainbowBeam +0xa9c59f Samus_HealDueToShitroid +0xa9c5be ProcessSpriteTilesTransfers +0xa9c601 MotherBrain_MakeWalkForwards +0xa9c62a UNUSED_sub_A9C62A +0xa9c647 MotherBrain_MakeWalkBackwards +0xa9c670 MotherBrain_MakeHerStandUp +0xa9c68e MotherBrain_MakeHerCrouch +0xa9c6a3 MotherBrain_MakeHerLeanDown +0xa9c6b8 MotherBrain_HandleWalking +0xa9c710 ShitroidInCutscene_Init +0xa9c779 ShitroidInCutscene_Main +0xa9c79c ShitroidInCutscene_Flashing +0xa9c7b7 ShitroidInCutscene_HandleCry +0xa9c7cc ShitroidInCutscene_DashOntoScreen +0xa9c7ec ShitroidInCutscene_CurveTowardsBrain +0xa9c811 ShitroidInCutscene_GetIntoFace +0xa9c851 ShitroidInCutscene_LatchOntoBrain +0xa9c879 ShitroidInCutscene_SetMotherBrainToStumbleBack +0xa9c889 ShitroidInCutscene_ActivateRainbowBeam +0xa9c8e2 ShitroidInCutscene_BrainTurnsToCorpse +0xa9c915 ShitroidInCutscene_StopDraining +0xa9c94b ShitroidInCutscene_LetGoAndSpawnDust +0xa9c959 ShitroidInCutscene_MoveUpToCeiling +0xa9c98c ShitroidInCutscene_SpawnThreeDustClouds +0xa9c9aa ShitroidInCutscene_SpawnOneDustCloudAt +0xa9c9c3 ShitroidInCutscene_MoveToSamus +0xa9ca66 ShitroidInCutscene_LatchOntoSamus +0xa9ca7a ShitroidInCutscene_HealSamusToFullHealth +0xa9cabc nullsub_368 +0xa9cabd ShitroidInCutscene_IdleUntilToNoHealth +0xa9cb13 ShitroidInCutscene_ReleaseSamus +0xa9cb2d ShitroidInCutscene_StareDownMotherBrain +0xa9cb56 ShitroidInCutscene_FlyOffScreen +0xa9cb7b ShitroidInCutscene_MoveToFinalChargeStart +0xa9cbb3 ShitroidInCutscene_InitiateFinalCharge +0xa9cbd8 ShitroidInCutscene_FinalCharge +0xa9cc3e ShitroidInCutscene_ShitroidFinalBelow +0xa9cc60 ShitroidInCutscene_PlaySamusTheme +0xa9cc7f ShitroidInCutscene_PrepareSamusHyperbeam +0xa9cc98 nullsub_338 +0xa9cc99 ShitroidInCutscene_DeathSequence +0xa9ccbf nullsub_307 +0xa9ccc0 ShitroidInCutscene_UnloadShitroid +0xa9ccde ShitroidInCutscene_LetSamusRainbowMore +0xa9ccf0 ShitroidInCutscene_FinishCutscene +0xa9cd27 HandleSamusRainbowPaletteAnimation +0xa9cd30 SamusRainbowPaletteFunc_ActivateWhenEnemyLow +0xa9cd4b SamusRainbowPaletteFunc_GraduallySlowDown +0xa9cd69 ShitroidInCutscene_FadeShitroidToBlack +0xa9cdb1 ShitroidInCutscene_HandleShitroidDeathExplosions +0xa9ce24 ShitroidInCutscene_HandleEnemyBlinking +0xa9ce40 ShitroidInCutscene_AccelerateDownwards +0xa9ce69 ShitroidInCutscene_HandleHealthBasedPalette +0xa9cedb ShitroidInCutscene_Shake +0xa9cf03 ShitroidInCutscene_Touch +0xa9cf31 ShitroidInCutscene_UpdateSpeedAndAngle +0xa9cfa2 kShitroid_Ilist_CFA2 +0xa9cfb4 Shitroid_Instr_1 +0xa9cfb8 kShitroid_Ilist_CFB8 +0xa9cfca Shitroid_Instr_2 +0xa9cfce kShitroid_Ilist_CFCE +0xa9cfd4 MotherBrain_Pal_ProcessInvincibility +0xa9cffd MotherBrain_Pal_BeginScreenFlash +0xa9d00c MotherBrain_Pal_EndScreenFlash +0xa9d01c MotherBrain_Pal_HandleRoomPal +0xa9d025 MotherBrain_Pal_WriteRoomPal +0xa9d142 UNUSED_sub_A9D142 +0xa9d151 UNUSED_sub_A9D151 +0xa9d160 UNUSED_sub_A9D160 +0xa9d192 HandleMotherBrainInstructionList +0xa9d1e4 MotherBrain_HandlePalette +0xa9d1f8 MotherBrain_SetupBrainNormalPal +0xa9d1ff MotherBrain_SetupBrainPalForLaser +0xa9d206 MotherBrain_HandleBrainPal +0xa9d2e4 WriteColorsToPalette +0xa9d2f6 WriteColorsToTargetPalette +0xa9d308 DeadTorizo_Init +0xa9d368 DeadTorizo_Main +0xa9d39a DeadTorizo_MainGfxHook +0xa9d3ad DeadTorizo_WaitForSamusColl +0xa9d3c7 nullsub_361 +0xa9d3c8 DeadTorizo_PreRotDelay +0xa9d3e6 DeadTorizo_Rotting +0xa9d42a DeadTorizo_Powerbomb +0xa9d433 DeadTorizo_Shot +0xa9d443 DeadTorizo_Func_0 +0xa9d4cf DeadTorizo_Func_1 +0xa9d5bd DeadTorizo_CorpseRottingFinished +0xa9d5ea DeadTorizo_CopyLineOfSandHeapTileData +0xa9d6bc kDeadTorizo_Palette +0xa9d6dc kDeadTorizo_Ilist_D6DC +0xa9d6e2 kDeadTorizo_Sprmap_D6E2 +0xa9d761 kDeadTorizo_Sprmap_D761 +0xa9d77c kDeadTorizo_Hitbox_D77C +0xa9d7b6 DeadSidehopper_Init +0xa9d7c4 DeadSidehopper_Init_0 +0xa9d825 DeadSidehopper_Init_1 +0xa9d849 DeadZoomer_Init +0xa9d876 DeadRipper_Init +0xa9d89f DeadSkree_Init +0xa9d8cc DeadSidehopper_Powerbomb +0xa9d8db DeadSidehopper_Main +0xa9d8e2 DeadSidehopper_Alive_WaitForActivate +0xa9d8f1 DeadSidehopper_Activated +0xa9d90f nullsub_362 +0xa9d910 DeadMonsters_Func_1 +0xa9d91d DeadMonsters_Func_2 +0xa9d961 DeadMonsters_Func_3 +0xa9d9c7 DeadMonsters_Func_4 +0xa9da08 DeadMonsters_Func_5 +0xa9da63 nullsub_268 +0xa9da64 DeadSidehopper_WaitForSamusColl +0xa9da69 DeadZoomer_WaitForSamusColl +0xa9da6e DeadSkree_WaitForSamusColl +0xa9da73 DeadRipper_WaitForSamusColl +0xa9da76 DeadMonsters_WaitForSamusColl +0xa9da8f DeadSidehopper_PreRotDelay +0xa9da94 DeadZoomer_PreRotDelay +0xa9da99 DeadRipper_PreRotDelay +0xa9da9e DeadSkree_PreRotDelay +0xa9daa1 DeadMonsters_PreRotDelay_Common +0xa9daba DeadSidehopper_Rotting +0xa9dad0 DeadZoomer_Rotting +0xa9dae6 DeadRipper_Rotting +0xa9dafc DeadSkree_Rotting +0xa9db12 ProcessCorpseRotting +0xa9dbe0 CopyMoveCorpseRottingRotEntry +0xa9dc08 CorpseRottingRotEntryFinishedHook +0xa9dc40 InitializeCorpseRottingDataTable +0xa9dc5f InitializeEnemyCorpseRotting +0xa9dcb9 ProcessCorpseRottingVramTransfers +0xa9dced DeadZoomer_Powerbomb +0xa9dcf8 DeadZoomer_Shot +0xa9dcfd DeadRipper_Powerbomb +0xa9dd08 DeadRipper_Shot +0xa9dd0d DeadSkree_Powerbomb +0xa9dd18 DeadSkree_Shot +0xa9dd1d DeadSidehopper_Shot +0xa9dd31 DeadSidehopper_DD31 +0xa9dd34 DeadSidehopper_DD34 +0xa9dd43 nullsub_339 +0xa9dd44 DeadSidehopper_Touch +0xa9de18 Torizo_CorpseRottingInitFunc +0xa9dec1 Sidehopper_CorpseRottingInitFunc_0 +0xa9df08 Sidehopper_CorpseRottingInitFunc_2 +0xa9df4f Zoomer_CorpseRottingInitFunc_0 +0xa9df6c Zoomer_CorpseRottingInitFunc_2 +0xa9df89 Zoomer_CorpseRottingInitFunc_4 +0xa9dfa6 Ripper_CorpseRottingInitFunc_0 +0xa9dfc3 Ripper_CorpseRottingInitFunc_2 +0xa9dfe0 Skree_CorpseRottingInitFunc_0 +0xa9e019 Skree_CorpseRottingInitFunc_2 +0xa9e052 Skree_CorpseRottingInitFunc_4 +0xa9e08b MotherBrain_CorpseRottingInitFunc +0xa9e272 Torizo_CorpseRottingMoveFunc +0xa9e38b Torizo_CorpseRottingCopyFunc +0xa9e468 Sidehopper_CorpseRottingMoveFunc_0 +0xa9e4f5 Sidehopper_CorpseRottingCopyFunc_0 +0xa9e564 Sidehopper_CorpseRottingMoveFunc_2 +0xa9e5f6 Sidehopper_CorpseRottingCopyFunc_2 +0xa9e66a Zoomer_CorpseRottingMoveFunc_0 +0xa9e6b9 Zoomer_CorpseRottingCopyFunc_0 +0xa9e6f6 Zoomer_CorpseRottingMoveFunc_2 +0xa9e745 Zoomer_CorpseRottingCopyFunc_2 +0xa9e782 Zoomer_CorpseRottingMoveFunc_4 +0xa9e7d1 Zoomer_CorpseRottingCopyFunc_4 +0xa9e80e Ripper_CorpseRottingMoveFunc_0 +0xa9e85d Ripper_CorpseRottingCopyFunc_0 +0xa9e89a Ripper_CorpseRottingMoveFunc_2 +0xa9e8e9 Ripper_CorpseRottingCopyFunc_2 +0xa9e926 Skree_CorpseRottingMoveFunc_0 +0xa9e95b Skree_CorpseRottingCopyFunc_0 +0xa9e984 Skree_CorpseRottingMoveFunc_2 +0xa9e9b9 Skree_CorpseRottingCopyFunc_2 +0xa9e9e2 Skree_CorpseRottingMoveFunc_4 +0xa9ea17 Skree_CorpseRottingCopyFunc_4 +0xa9ea40 MotherBrain_CorpseRottingMoveFunc +0xa9eb0b MotherBrain_CorpseRottingCopyFunc +0xa9ebac kDeadSidehopper_Palette_1 +0xa9ecac kDeadMonsters_Ilist_ECAC +0xa9ece3 kDeadMonsters_Ilist_ECE3 +0xa9ece9 kDeadMonsters_Ilist_ECE9 +0xa9ecef kDeadMonsters_Ilist_ECEF +0xa9ecf5 kDeadMonsters_Ilist_ECF5 +0xa9ecfb kDeadMonsters_Ilist_ECFB +0xa9ed01 kDeadMonsters_Ilist_ED01 +0xa9ed07 kDeadMonsters_Ilist_ED07 +0xa9ed0d kDeadMonsters_Ilist_ED0D +0xa9ed13 kDeadMonsters_Ilist_ED13 +0xa9ed19 kDeadMonsters_Ilist_ED19 +0xa9ed1f kDeadMonsters_Ilist_ED1F +0xa9ed25 kDeadMonsters_Sprmap_ED25 +0xa9ed4f kDeadMonsters_Sprmap_ED4F +0xa9ed79 kDeadMonsters_Sprmap_ED79 +0xa9ed85 kDeadMonsters_Sprmap_ED85 +0xa9ed91 kDeadMonsters_Sprmap_ED91 +0xa9ed9d kDeadMonsters_Sprmap_ED9D +0xa9eda9 kDeadMonsters_Sprmap_EDA9 +0xa9edb5 kDeadMonsters_Sprmap_EDB5 +0xa9edcb kDeadMonsters_Sprmap_EDCB +0xa9ede1 kDeadMonsters_Sprmap_EDE1 +0xa9ee3c kDeadMonsters_Sprmap_EE3C +0xa9ee61 kDeadMonsters_Sprmap_EE61 +0xa9ee86 kDeadMonsters_Sprmap_EE86 +0xa9eebf UNUSED_sub_A9EEBF +0xa9eed1 Shitroid_Func_1 +0xa9ef06 Shitroid_Func_2 +0xa9ef37 Shitroid_Init +0xa9efba Shitroid_Powerbomb +0xa9efc5 Shitroid_Main +0xa9efdf Shitroid_Func_3 +0xa9efe6 Shitroid_Func_4 +0xa9f02b Shitroid_Func_5 +0xa9f037 Shitroid_Func_6 +0xa9f049 Shitroid_Func_7 +0xa9f06c nullsub_340 +0xa9f06d Shitroid_Func_8 +0xa9f094 Shitroid_Func_9 +0xa9f0e6 Shitroid_Func_10 +0xa9f125 Shitroid_Func_11 +0xa9f138 Shitroid_Func_12 +0xa9f180 Shitroid_Func_13 +0xa9f1fa Shitroid_Func_14 +0xa9f20e Shitroid_Func_15 +0xa9f21b Shitroid_Func_16 +0xa9f2a2 Shitroid_Func_17 +0xa9f2ae Shitroid_Func_18 +0xa9f2c0 Shitroid_Func_19 +0xa9f2fb Shitroid_Func_20 +0xa9f324 Shitroid_Func_21 +0xa9f360 Shitroid_Func_22 +0xa9f36d Shitroid_Func_23 +0xa9f3a3 Shitroid_Func_24 +0xa9f3be Shitroid_Func_25 +0xa9f3c4 Shitroid_F3C4 +0xa9f3cb Shitroid_Func_26 +0xa9f3d4 Shitroid_Func_27 +0xa9f451 Shitroid_Func_GraduallyAccelerateTowards0x400 +0xa9f458 Shitroid_GraduallyAccelerateTowards0x4 +0xa9f45f Shitroid_GraduallyAccelerateTowards0x8 +0xa9f466 Shitroid_GraduallyAccelerateTowards0x10 +0xa9f46b Shitroid_GraduallyAccelerateTowardsPt +0xa9f4e6 Shitroid_GraduallyAccelerateHoriz +0xa9f57a Shitroid_CheckIfOnScreen +0xa9f5a6 Shitroid_AccelerateTowardsPoint +0xa9f5b5 Shitroid_AccelerateTowardsY +0xa9f615 Shitroid_AccelerateTowardsX +0xa9f677 Shitroid_HandleNormalPalette +0xa9f683 Shitroid_HandleCutscenePalette +0xa9f68f Shitroid_HandleCutscenePalette_LowHealth +0xa9f699 Shitroid_HandleCutscenePalette_Common +0xa9f751 Shitroid_HandleCrySoundEffect +0xa9f789 Shitroid_Touch +0xa9f842 Shitroid_Shot +0xa9f8a6 kDeadSidehopper_Palette_0 +0xa9f8e6 kShitroidInCutscene_Palette +0xa9f906 kShitroid_Ilist_F906 +0xa9f90e kShitroid_Ilist_F90E +0xa9f920 Shitroid_Instr_3 +0xa9f924 kShitroid_Ilist_F924 +0xa9f936 Shitroid_Instr_4 +0xa9f93a kShitroid_Ilist_F93A +0xa9f990 Shitroid_Instr_6 +0xa9f994 Shitroid_Instr_5 +0xa9f9a8 kShitroid_Sprmap_F9A8 +0xa9fa40 kShitroid_Sprmap_FA40 +0xa9fad8 kShitroid_Sprmap_FAD8 +0xaa8000 Enemy_GrappleReact_NoInteract_AA +0xaa8005 Enemy_GrappleReact_SamusLatchesOn_AA +0xaa800a Enemy_GrappleReact_KillEnemy_AA +0xaa800f Enemy_GrappleReact_CancelBeam_AA +0xaa8014 Enemy_GrappleReact_SamusLatchesNoInvinc_AA +0xaa8019 Enemy_GrappleReact_SamusLatchesParalyze_AA +0xaa801e Enemy_GrappleReact_HurtSamus_AA +0xaa8023 Enemy_NormalTouchAI_AA +0xaa8028 Enemy_NormalTouchAI_SkipDeathAnim_AA +0xaa802d Enemy_NormalShotAI_AA +0xaa8032 Enemy_NormalShotAI_SkipSomeParts_AA +0xaa8037 Enemy_NormalPowerBombAI_AA +0xaa803c Enemy_NormalPowerBombAI_SkipDeathAnim_AA +0xaa8041 Enemy_NormalFrozenAI_AA +0xaa8046 CreateADudShot_AA +0xaa804b nullsub_169_AA +0xaa804c nullsub_170_AA +0xaa804d kSpritemap_Nothing_AA +0xaa804f kExtendedSpritemap_Nothing_AA +0xaa8059 word8059_AA +0xaa8069 sub8069_AA +0xaa806b Enemy_SetAiPreInstr_AA +0xaa8074 Enemy_ClearAiPreInstr_AA +0xaa807b nullsub_171_AA +0xaa807c EnemyInstr_StopScript_AA +0xaa808a EnemyInstr_Call_AA +0xaa8097 loc8097_AA +0xaa809c EnemyInstr_CallWithArg_AA +0xaa80ac loc80AC_AA +0xaa80b5 EnemyInstr_CallFar_AA +0xaa80cb loc80CB_AA +0xaa80ce EnemyInstr_CallFarWithArg_AA +0xaa80ea loc80EA_AA +0xaa80ed EnemyInstr_Goto_AA +0xaa80f2 EnemyInstr_GotoRel_AA +0xaa8100 loc8100_AA +0xaa8103 loc8103_AA +0xaa8108 EnemyInstr_DecTimerAndGoto_AA +0xaa8110 EnemyInstr_DecTimerAndGoto2_AA +0xaa8118 EnemyInstr_DecTimerAndGotoRel_AA +0xaa8123 EnemyInstr_SetTimer_AA +0xaa812c EnemyInstr_Skip2bytes_AA +0xaa812f EnemyInstr_Sleep_AA +0xaa813a EnemyInstr_WaitNframes_AA +0xaa814b EnemyInstr_CopyToVram_AA +0xaa8173 EnemyInstr_EnableOffScreenProcessing_AA +0xaa817d EnemyInstr_DisableOffScreenProcessing_AA +0xaa8187 kCommonEnemySpeeds_Linear_AA +0xaa838f kCommonEnemySpeeds_Quadratic_AA +0xaa8687 kTorizo_Palette +0xaa86a7 kTorizo_Palettes_1 +0xaa86c7 kTorizo_Palettes_2 +0xaa86e7 kTorizo_Palettes_3 +0xaa8707 kTorizo_Palettes_4 +0xaa8727 kTorizo_Palettes_5 +0xaa8747 kTorizo_Palettes_6 +0xaa8767 kTorizo_Palettes_7 +0xaa8787 kTorizo_Palettes_8 +0xaa87a7 kTorizo_Palettes_10 +0xaa87c7 kTorizo_Hitbox_87C7 +0xaa87c9 kTorizo_Sprmap_87C9 +0xaa87d0 kTorizo_ExtSprmap_87D0 +0xaa87da kShitroid_Hitbox_87DA +0xaa87e8 kTorizo_Hitbox_87E8 +0xaa87f6 kTorizo_Hitbox_87F6 +0xaa8804 kTorizo_Hitbox_8804 +0xaa8812 kTorizo_Hitbox_8812 +0xaa8820 kTorizo_Hitbox_8820 +0xaa882e kTorizo_Hitbox_882E +0xaa883c kTorizo_Hitbox_883C +0xaa884a kTorizo_Hitbox_884A +0xaa8858 kTorizo_Hitbox_8858 +0xaa885a kTorizo_Hitbox_885A +0xaa885c kShitroid_Hitbox_885C +0xaa886a kTorizo_Hitbox_886A +0xaa886c kShitroid_Hitbox_886C +0xaa887a kTorizo_Hitbox_887A +0xaa887c kShitroid_Hitbox_887C +0xaa888a kTorizo_Hitbox_888A +0xaa888c kShitroid_Hitbox_888C +0xaa889a kTorizo_Hitbox_889A +0xaa889c kShitroid_Hitbox_889C +0xaa88aa kTorizo_Hitbox_88AA +0xaa88ac kShitroid_Hitbox_88AC +0xaa88ba kTorizo_Hitbox_88BA +0xaa88bc kTorizo_Hitbox_88BC +0xaa88be kShitroid_Hitbox_88BE +0xaa88cc kTorizo_Hitbox_88CC +0xaa88ce kShitroid_Hitbox_88CE +0xaa88dc kTorizo_Hitbox_88DC +0xaa88de kShitroid_Hitbox_88DE +0xaa88ec kTorizo_Hitbox_88EC +0xaa88ee kShitroid_Hitbox_88EE +0xaa88fc kTorizo_Hitbox_88FC +0xaa88fe kShitroid_Hitbox_88FE +0xaa890c kTorizo_Hitbox_890C +0xaa890e kShitroid_Hitbox_890E +0xaa891c kTorizo_Hitbox_891C +0xaa892a kTorizo_Hitbox_892A +0xaa8938 kShitroid_Hitbox_8938 +0xaa8946 kTorizo_Hitbox_8946 +0xaa8954 kTorizo_Hitbox_8954 +0xaa8962 kTorizo_Hitbox_8962 +0xaa8970 kTorizo_Hitbox_8970 +0xaa897e kTorizo_Hitbox_897E +0xaa898c kTorizo_Hitbox_898C +0xaa899a kTorizo_Hitbox_899A +0xaa89a8 kTorizo_Hitbox_89A8 +0xaa89b6 kTorizo_Hitbox_89B6 +0xaa89b8 kTorizo_Hitbox_89B8 +0xaa89ba kShitroid_Hitbox_89BA +0xaa89c8 kTorizo_Hitbox_89C8 +0xaa89ca kShitroid_Hitbox_89CA +0xaa89d8 kTorizo_Hitbox_89D8 +0xaa89da kShitroid_Hitbox_89DA +0xaa89e8 kTorizo_Hitbox_89E8 +0xaa89ea kShitroid_Hitbox_89EA +0xaa89f8 kTorizo_Hitbox_89F8 +0xaa89fa kShitroid_Hitbox_89FA +0xaa8a08 kTorizo_Hitbox_8A08 +0xaa8a0a kShitroid_Hitbox_8A0A +0xaa8a18 kTorizo_Hitbox_8A18 +0xaa8a1a kTorizo_Hitbox_8A1A +0xaa8a1c kShitroid_Hitbox_8A1C +0xaa8a2a kTorizo_Hitbox_8A2A +0xaa8a2c kShitroid_Hitbox_8A2C +0xaa8a3a kTorizo_Hitbox_8A3A +0xaa8a3c kShitroid_Hitbox_8A3C +0xaa8a4a kTorizo_Hitbox_8A4A +0xaa8a4c kShitroid_Hitbox_8A4C +0xaa8a5a kTorizo_Hitbox_8A5A +0xaa8a5c kShitroid_Hitbox_8A5C +0xaa8a6a kTorizo_Hitbox_8A6A +0xaa8a6c kShitroid_Hitbox_8A6C +0xaa8a7a kTorizo_Hitbox_8A7A +0xaa8a88 kTorizo_Hitbox_8A88 +0xaa8a96 kTorizo_Sprmap_8A96 +0xaa8aac kTorizo_Sprmap_8AAC +0xaa8ac2 kTorizo_Sprmap_8AC2 +0xaa8ad3 kTorizo_Sprmap_8AD3 +0xaa8ae4 kTorizo_Sprmap_8AE4 +0xaa8af5 kTorizo_Sprmap_8AF5 +0xaa8b1f kTorizo_Sprmap_8B1F +0xaa8b80 kShitroid_Sprmap_8B80 +0xaa8c09 kShitroid_Sprmap_8C09 +0xaa8c10 kShitroid_Sprmap_8C10 +0xaa8c17 kShitroid_Sprmap_8C17 +0xaa8c1e kShitroid_Sprmap_8C1E +0xaa8c25 kTorizo_Sprmap_8C25 +0xaa8c2c kTorizo_Sprmap_8C2C +0xaa8c33 kTorizo_Sprmap_8C33 +0xaa8cb7 kTorizo_Sprmap_8CB7 +0xaa8d3b kTorizo_Sprmap_8D3B +0xaa8dc4 kTorizo_Sprmap_8DC4 +0xaa8e43 kTorizo_Sprmap_8E43 +0xaa8ec2 kTorizo_Sprmap_8EC2 +0xaa8f46 kTorizo_Sprmap_8F46 +0xaa8fd4 kTorizo_Sprmap_8FD4 +0xaa9044 kTorizo_Sprmap_9044 +0xaa90af kTorizo_Sprmap_90AF +0xaa911a kTorizo_Sprmap_911A +0xaa918a kTorizo_Sprmap_918A +0xaa91fa kTorizo_Sprmap_91FA +0xaa9265 kTorizo_Sprmap_9265 +0xaa92d0 kTorizo_Sprmap_92D0 +0xaa9340 kTorizo_Sprmap_9340 +0xaa9365 kTorizo_Sprmap_9365 +0xaa9380 kTorizo_Sprmap_9380 +0xaa939b kTorizo_Sprmap_939B +0xaa93b6 kTorizo_Sprmap_93B6 +0xaa93d1 kTorizo_Sprmap_93D1 +0xaa93f6 kTorizo_Sprmap_93F6 +0xaa9411 kTorizo_Sprmap_9411 +0xaa9436 kTorizo_Sprmap_9436 +0xaa945b kTorizo_Sprmap_945B +0xaa9476 kTorizo_Sprmap_9476 +0xaa9491 kTorizo_Sprmap_9491 +0xaa94ac kTorizo_Sprmap_94AC +0xaa94c7 kTorizo_Sprmap_94C7 +0xaa94ec kTorizo_Sprmap_94EC +0xaa9507 kTorizo_Sprmap_9507 +0xaa952c kTorizo_Sprmap_952C +0xaa95a6 kTorizo_Sprmap_95A6 +0xaa9607 kTorizo_Sprmap_9607 +0xaa9672 kTorizo_Sprmap_9672 +0xaa96ec kTorizo_Sprmap_96EC +0xaa9766 kTorizo_Sprmap_9766 +0xaa9786 kTorizo_Sprmap_9786 +0xaa979c kTorizo_Sprmap_979C +0xaa97b2 kTorizo_Sprmap_97B2 +0xaa97c3 kTorizo_Sprmap_97C3 +0xaa97d4 kTorizo_Sprmap_97D4 +0xaa97e5 kTorizo_Sprmap_97E5 +0xaa980f kTorizo_Sprmap_980F +0xaa9870 kTorizo_Sprmap_9870 +0xaa98f9 kTorizo_Sprmap_98F9 +0xaa9900 kTorizo_Sprmap_9900 +0xaa9907 kTorizo_Sprmap_9907 +0xaa990e kTorizo_Sprmap_990E +0xaa9915 kTorizo_Sprmap_9915 +0xaa991c kTorizo_Sprmap_991C +0xaa9923 kTorizo_Sprmap_9923 +0xaa992a kTorizo_Sprmap_992A +0xaa994a kTorizo_Sprmap_994A +0xaa99d3 kTorizo_Sprmap_99D3 +0xaa9a57 kTorizo_Sprmap_9A57 +0xaa9ae0 kTorizo_Sprmap_9AE0 +0xaa9b5f kTorizo_Sprmap_9B5F +0xaa9bde kTorizo_Sprmap_9BDE +0xaa9c62 kTorizo_Sprmap_9C62 +0xaa9cf0 kTorizo_Sprmap_9CF0 +0xaa9cfc kTorizo_Sprmap_9CFC +0xaa9d12 kTorizo_Sprmap_9D12 +0xaa9d23 kTorizo_Sprmap_9D23 +0xaa9d34 kTorizo_Sprmap_9D34 +0xaa9da4 kTorizo_Sprmap_9DA4 +0xaa9e0f kTorizo_Sprmap_9E0F +0xaa9e7a kTorizo_Sprmap_9E7A +0xaa9eea kTorizo_Sprmap_9EEA +0xaa9f5a kTorizo_Sprmap_9F5A +0xaa9fc5 kTorizo_Sprmap_9FC5 +0xaaa030 kTorizo_Sprmap_A030 +0xaaa0a0 kTorizo_Sprmap_A0A0 +0xaaa0c5 kTorizo_Sprmap_A0C5 +0xaaa0e0 kTorizo_Sprmap_A0E0 +0xaaa0fb kTorizo_Sprmap_A0FB +0xaaa116 kTorizo_Sprmap_A116 +0xaaa131 kTorizo_Sprmap_A131 +0xaaa156 kTorizo_Sprmap_A156 +0xaaa171 kTorizo_Sprmap_A171 +0xaaa196 kTorizo_Sprmap_A196 +0xaaa1bb kTorizo_Sprmap_A1BB +0xaaa1d6 kTorizo_Sprmap_A1D6 +0xaaa1f1 kTorizo_Sprmap_A1F1 +0xaaa20c kTorizo_Sprmap_A20C +0xaaa227 kTorizo_Sprmap_A227 +0xaaa24c kTorizo_Sprmap_A24C +0xaaa267 kTorizo_Sprmap_A267 +0xaaa28c kTorizo_Sprmap_A28C +0xaaa306 kTorizo_Sprmap_A306 +0xaaa367 kTorizo_Sprmap_A367 +0xaaa3d2 kTorizo_Sprmap_A3D2 +0xaaa44c kTorizo_Sprmap_A44C +0xaaa4c6 kTorizo_Sprmap_A4C6 +0xaaa4e6 kShitroid_ExtSprmap_A4E6 +0xaaa4f0 kTorizo_ExtSprmap_A4F0 +0xaaa4fa kTorizo_ExtSprmap_A4FA +0xaaa51c kTorizo_ExtSprmap_A51C +0xaaa53e kTorizo_ExtSprmap_A53E +0xaaa560 kTorizo_ExtSprmap_A560 +0xaaa582 kTorizo_ExtSprmap_A582 +0xaaa5a4 kTorizo_ExtSprmap_A5A4 +0xaaa5c6 kTorizo_ExtSprmap_A5C6 +0xaaa5e8 kTorizo_ExtSprmap_A5E8 +0xaaa60a kTorizo_ExtSprmap_A60A +0xaaa62c kTorizo_ExtSprmap_A62C +0xaaa64e kTorizo_ExtSprmap_A64E +0xaaa668 kTorizo_ExtSprmap_A668 +0xaaa682 kTorizo_ExtSprmap_A682 +0xaaa69c kTorizo_ExtSprmap_A69C +0xaaa6b6 kTorizo_ExtSprmap_A6B6 +0xaaa6d0 kTorizo_ExtSprmap_A6D0 +0xaaa6ea kTorizo_ExtSprmap_A6EA +0xaaa704 kTorizo_ExtSprmap_A704 +0xaaa71e kTorizo_ExtSprmap_A71E +0xaaa738 kTorizo_ExtSprmap_A738 +0xaaa752 kTorizo_ExtSprmap_A752 +0xaaa76c kTorizo_ExtSprmap_A76C +0xaaa786 kTorizo_ExtSprmap_A786 +0xaaa7a0 kTorizo_ExtSprmap_A7A0 +0xaaa7c2 kTorizo_ExtSprmap_A7C2 +0xaaa7e4 kTorizo_ExtSprmap_A7E4 +0xaaa806 kTorizo_ExtSprmap_A806 +0xaaa828 kTorizo_ExtSprmap_A828 +0xaaa84a kTorizo_ExtSprmap_A84A +0xaaa86c kTorizo_ExtSprmap_A86C +0xaaa88e kTorizo_ExtSprmap_A88E +0xaaa8b0 kTorizo_ExtSprmap_A8B0 +0xaaa8d2 kTorizo_ExtSprmap_A8D2 +0xaaa8ec kTorizo_ExtSprmap_A8EC +0xaaa906 kTorizo_ExtSprmap_A906 +0xaaa920 kTorizo_ExtSprmap_A920 +0xaaa93a kTorizo_ExtSprmap_A93A +0xaaa954 kTorizo_ExtSprmap_A954 +0xaaa976 kTorizo_ExtSprmap_A976 +0xaaa998 kTorizo_ExtSprmap_A998 +0xaaa9ba kTorizo_ExtSprmap_A9BA +0xaaa9dc kTorizo_ExtSprmap_A9DC +0xaaa9fe kShitroid_ExtSprmap_A9FE +0xaaaa08 kShitroid_ExtSprmap_AA08 +0xaaaa12 kTorizo_ExtSprmap_AA12 +0xaaaa1c kTorizo_ExtSprmap_AA1C +0xaaaa26 kTorizo_ExtSprmap_AA26 +0xaaaa30 kTorizo_ExtSprmap_AA30 +0xaaaa3a kTorizo_ExtSprmap_AA3A +0xaaaa4c kTorizo_ExtSprmap_AA4C +0xaaaa5e kTorizo_ExtSprmap_AA5E +0xaaaa70 kShitroid_ExtSprmap_AA70 +0xaaaa7a kShitroid_ExtSprmap_AA7A +0xaaaa84 kShitroid_ExtSprmap_AA84 +0xaaaa8e kShitroid_ExtSprmap_AA8E +0xaaaa98 kTorizo_ExtSprmap_AA98 +0xaaaaba kTorizo_ExtSprmap_AABA +0xaaaadc kTorizo_ExtSprmap_AADC +0xaaaafe kTorizo_ExtSprmap_AAFE +0xaaab20 kTorizo_ExtSprmap_AB20 +0xaaab42 kTorizo_ExtSprmap_AB42 +0xaaab64 kTorizo_ExtSprmap_AB64 +0xaaab86 kTorizo_ExtSprmap_AB86 +0xaaaba8 kTorizo_ExtSprmap_ABA8 +0xaaabca kTorizo_ExtSprmap_ABCA +0xaaabec kTorizo_ExtSprmap_ABEC +0xaaac06 kTorizo_ExtSprmap_AC06 +0xaaac20 kTorizo_ExtSprmap_AC20 +0xaaac3a kTorizo_ExtSprmap_AC3A +0xaaac54 kTorizo_ExtSprmap_AC54 +0xaaac6e kTorizo_ExtSprmap_AC6E +0xaaac88 kTorizo_ExtSprmap_AC88 +0xaaaca2 kTorizo_ExtSprmap_ACA2 +0xaaacbc kTorizo_ExtSprmap_ACBC +0xaaacd6 kTorizo_ExtSprmap_ACD6 +0xaaacf0 kTorizo_ExtSprmap_ACF0 +0xaaad0a kTorizo_ExtSprmap_AD0A +0xaaad24 kTorizo_ExtSprmap_AD24 +0xaaad3e kTorizo_ExtSprmap_AD3E +0xaaad60 kTorizo_ExtSprmap_AD60 +0xaaad82 kTorizo_ExtSprmap_AD82 +0xaaada4 kTorizo_ExtSprmap_ADA4 +0xaaadc6 kTorizo_ExtSprmap_ADC6 +0xaaade8 kTorizo_ExtSprmap_ADE8 +0xaaae0a kTorizo_ExtSprmap_AE0A +0xaaae2c kTorizo_ExtSprmap_AE2C +0xaaae4e kTorizo_ExtSprmap_AE4E +0xaaae70 kTorizo_ExtSprmap_AE70 +0xaaae8a kTorizo_ExtSprmap_AE8A +0xaaaea4 kTorizo_ExtSprmap_AEA4 +0xaaaebe kTorizo_ExtSprmap_AEBE +0xaaaed8 kTorizo_ExtSprmap_AED8 +0xaaaef2 kTorizo_ExtSprmap_AEF2 +0xaaaf14 kTorizo_ExtSprmap_AF14 +0xaaaf36 kTorizo_ExtSprmap_AF36 +0xaaaf58 kTorizo_ExtSprmap_AF58 +0xaaaf7a kTorizo_ExtSprmap_AF7A +0xaaaf9c kTorizo_ExtSprmap_AF9C +0xaaafa6 kTorizo_ExtSprmap_AFA6 +0xaaafb0 kTorizo_ExtSprmap_AFB0 +0xaaafba kTorizo_ExtSprmap_AFBA +0xaaafc4 kTorizo_ExtSprmap_AFC4 +0xaaafd6 kTorizo_ExtSprmap_AFD6 +0xaaafe8 kTorizo_ExtSprmap_AFE8 +0xaaaffa kTorizo_ExtSprmap_AFFA +0xaab014 kTorizo_ExtSprmap_B014 +0xaab02e kTorizo_ExtSprmap_B02E +0xaab048 kTorizo_ExtSprmap_B048 +0xaab062 kTorizo_ExtSprmap_B062 +0xaab07c kTorizo_ExtSprmap_B07C +0xaab09c Torizo_Instr_3 +0xaab0e5 kTorizo_Ilist_B0E5 +0xaab11d Torizo_Instr_31 +0xaab155 kTorizo_Ilist_B155 +0xaab1be Torizo_Instr_33 +0xaab1c8 kTorizo_Ilist_B1C8 +0xaab224 Torizo_Instr_36 +0xaab22e Torizo_Instr_37 +0xaab238 Torizo_Instr_35 +0xaab24d Torizo_Instr_38 +0xaab271 Torizo_Instr_6 +0xaab879 kTorizo_Ilist_B879 +0xaab887 kTorizo_Ilist_B887 +0xaab94d Torizo_Instr_5 +0xaab951 Torizo_Instr_9 +0xaab962 kTorizo_Ilist_B962 +0xaab9b6 kTorizo_Ilist_B9B6 +0xaaba04 kTorizo_Ilist_BA04 +0xaaba46 kTorizo_Ilist_BA46 +0xaaba88 kTorizo_Ilist_BA88 +0xaaba90 kTorizo_Ilist_BA90 +0xaabaf2 kTorizo_Ilist_BAF2 +0xaabafa kTorizo_Ilist_BAFA +0xaabb5c kTorizo_Ilist_BB5C +0xaabbde kTorizo_Ilist_BBDE +0xaabc60 kTorizo_Ilist_BC60 +0xaabc88 kTorizo_Ilist_BC88 +0xaabc96 kTorizo_Ilist_BC96 +0xaabcbe kTorizo_Ilist_BCBE +0xaabcd2 kTorizo_Ilist_BCD2 +0xaabcfa kTorizo_Ilist_BCFA +0xaabd0e kTorizo_Ilist_BD0E +0xaabd90 kTorizo_Ilist_BD90 +0xaabd9c kTorizo_Ilist_BD9C +0xaabdd8 kTorizo_Ilist_BDD8 +0xaabdf0 kTorizo_Ilist_BDF0 +0xaabe7e kTorizo_Ilist_BE7E +0xaabec0 kTorizo_Ilist_BEC0 +0xaabf02 kTorizo_Ilist_BF02 +0xaabf0a kTorizo_Ilist_BF0A +0xaabf6c kTorizo_Ilist_BF6C +0xaabf74 kTorizo_Ilist_BF74 +0xaabfd6 kTorizo_Ilist_BFD6 +0xaac058 kTorizo_Ilist_C058 +0xaac0da kTorizo_Ilist_C0DA +0xaac102 kTorizo_Ilist_C102 +0xaac110 kTorizo_Ilist_C110 +0xaac138 kTorizo_Ilist_C138 +0xaac14c kTorizo_Ilist_C14C +0xaac174 kTorizo_Ilist_C174 +0xaac188 kTorizo_Ilist_C188 +0xaac20a Torizo_C20A +0xaac22d Torizo_C22D +0xaac250 Torizo_C250 +0xaac268 Torizo_C268 +0xaac280 Torizo_C280 +0xaac298 Torizo_C298 +0xaac2b0 Torizo_C2B0 +0xaac2c8 Torizo_Instr_7 +0xaac2c9 Torizo_Instr_2 +0xaac2d1 Torizo_Instr_8 +0xaac2d9 Torizo_Instr_25 +0xaac2ed Torizo_Instr_22 +0xaac2f7 Torizo_Instr_19 +0xaac2fd Torizo_Instr_32 +0xaac303 Torizo_Instr_30 +0xaac32f Torizo_Instr_34 +0xaac34a Torizo_Instr_24 +0xaac35b Torizo_Instr_12 +0xaac36d Torizo_Instr_10 +0xaac377 Torizo_Instr_11 +0xaac38a Torizo_Instr_29 +0xaac3a0 Torizo_Instr_1 +0xaac3b6 Torizo_Instr_28 +0xaac3cc Torizo_Instr_4 +0xaac41e Torizo_Instr_40 +0xaac470 Torizo_Instr_16 +0xaac4e5 Torizo_Instr_27 +0xaac55a Torizo_Instr_23 +0xaac567 Torizo_Instr_14 +0xaac58b Torizo_Instr_15 +0xaac5a4 Torizo_Instr_26 +0xaac5cb Torizo_Instr_18 +0xaac5e3 Torizo_Instr_20 +0xaac5f2 Torizo_Instr_44 +0xaac601 Torizo_Instr_21 +0xaac610 Torizo_Instr_17 +0xaac618 Torizo_Instr_13 +0xaac620 Torizo_C620 +0xaac643 Torizo_C643 +0xaac67e Torizo_Hurt +0xaac6a4 Torizo_Main +0xaac6ab nullsub_270 +0xaac6ac Torizo_Func_2 +0xaac6bf Torizo_Func_3 +0xaac6c6 Torizo_Func_4 +0xaac6ff Torizo_Func_1 +0xaac752 Torizo_Func_5 +0xaac828 Torizo_Func_6 +0xaac82c Torizo_Func_7 +0xaac87f Torizo_Init +0xaac95e nullsub_344 +0xaac977 GoldTorizo_Touch +0xaac97c Torizo_Shot +0xaac9c1 nullsub_271 +0xaac9c2 Torizo_Func_8 +0xaac9cb kTorizo_Ilist_C9CB +0xaac9e2 kTorizo_Ilist_C9E2 +0xaacace Torizo_Instr_39 +0xaacade Torizo_Instr_41 +0xaacae2 Torizo_Instr_42 +0xaacaff kTorizo_Ilist_CAFF +0xaacb1f kTorizo_Ilist_CB1F +0xaacb41 kTorizo_Ilist_CB41 +0xaacb61 kTorizo_Ilist_CB61 +0xaacb83 kTorizo_Ilist_CB83 +0xaacbed kTorizo_Ilist_CBED +0xaacc57 kTorizo_Ilist_CC57 +0xaacc99 kTorizo_Ilist_CC99 +0xaaccdb kTorizo_Ilist_CCDB +0xaacd45 kTorizo_Ilist_CD45 +0xaacdaf kTorizo_Ilist_CDAF +0xaacdb9 kTorizo_Ilist_CDB9 +0xaacdc3 kTorizo_Ilist_CDC3 +0xaacdcd kTorizo_Ilist_CDCD +0xaacdd7 Torizo_Instr_48 +0xaacde1 kTorizo_Ilist_CDE1 +0xaace43 kTorizo_Ilist_CE43 +0xaacea5 kTorizo_Ilist_CEA5 +0xaaceff kTorizo_Ilist_CEFF +0xaacf59 kTorizo_Ilist_CF59 +0xaacfc5 kTorizo_Ilist_CFC5 +0xaad031 kTorizo_Ilist_D031 +0xaad0e9 Torizo_Instr_57 +0xaad0f3 Torizo_Instr_58 +0xaad10d kTorizo_Ilist_D10D +0xaad11f kTorizo_Ilist_D11F +0xaad133 kTorizo_Ilist_D133 +0xaad17b Torizo_Instr_59 +0xaad187 Torizo_Instr_62 +0xaad193 kTorizo_Ilist_D193 +0xaad1e7 Torizo_Instr_63 +0xaad1f1 kTorizo_Ilist_D1F1 +0xaad203 kTorizo_Ilist_D203 +0xaad2ad kTorizo_Ilist_D2AD +0xaad2bf kTorizo_Ilist_D2BF +0xaad315 kTorizo_Ilist_D315 +0xaad369 GoldTorizo_Main +0xaad38f Torizo_Instr_56 +0xaad397 Torizo_Instr_60 +0xaad39f Torizo_Instr_46 +0xaad3a7 Torizo_Func_12 +0xaad3b2 Torizo_Func_11 +0xaad3ba GoldTorizo_Hurt +0xaad3e0 Torizo_Instr_47 +0xaad3ea Torizo_Instr_49 +0xaad436 Torizo_Instr_61 +0xaad445 Torizo_Instr_53 +0xaad474 Torizo_Instr_55 +0xaad49b Torizo_Instr_52 +0xaad4ba Torizo_Instr_50 +0xaad4f3 Torizo_Instr_43 +0xaad4fd Torizo_Instr_51 +0xaad526 Torizo_Instr_45 +0xaad54d Torizo_Instr_54 +0xaad5c2 Torizo_Func_9 +0xaad5df Torizo_Func_10 +0xaad5e6 Torizo_D5E6 +0xaad5ed Torizo_D5ED +0xaad5f1 Torizo_D5F1 +0xaad658 Torizo_D658 +0xaad667 GoldTorizo_Shot +0xaad6a6 Torizo_D6A6 +0xaad6d1 Torizo_D6D1 +0xaad6f7 Torizo_D6F7 +0xaad745 kTourianEntranceStatue_Palette +0xaad7a5 kTourianEntranceStatue_Ilist_D7A5 +0xaad7a7 kTourianEntranceStatue_Ilist_D7A7 +0xaad7af kTourianEntranceStatue_Ilist_D7AF +0xaad7b1 kTourianEntranceStatue_Ilist_D7B1 +0xaad7b9 kTourianEntranceStatue_Ilist_D7B9 +0xaad7bb kTourianEntranceStatue_Ilist_D7BB +0xaad7c7 nullsub_49 +0xaad7c8 TourianEntranceStatue_Init +0xaad816 kTourianEntranceStatue_Sprmap_D816 +0xaad83b kTourianEntranceStatue_Sprmap_D83B +0xaad8b0 kTourianEntranceStatue_Sprmap_D8B0 +0xaad911 kShaktool_Palette +0xaad931 Shaktool_Instr_2 +0xaad93f Shaktool_Instr_3 +0xaad94a Shaktool_Instr_4 +0xaad953 Shaktool_Instr_5 +0xaad956 Shaktool_D956 +0xaad99f Shaktool_Instr_6 +0xaad9a0 Shaktool_Func_2 +0xaad9ba Shaktool_Instr_1 +0xaad9ea kShaktool_Ilist_D9EA +0xaad9f2 kShaktool_Ilist_D9F2 +0xaad9fc kShaktool_Ilist_D9FC +0xaada04 kShaktool_Ilist_DA04 +0xaada0e kShaktool_Ilist_DA0E +0xaada1e kShaktool_Ilist_DA1E +0xaada2e kShaktool_Ilist_DA2E +0xaada32 kShaktool_Ilist_DA32 +0xaada42 kShaktool_Ilist_DA42 +0xaada56 kShaktool_Ilist_DA56 +0xaada5c kShaktool_Ilist_DA5C +0xaada62 kShaktool_Ilist_DA62 +0xaada7a kShaktool_Ilist_DA7A +0xaada80 kShaktool_Ilist_DA80 +0xaadaac kShaktool_Ilist_DAAC +0xaadab4 kShaktool_Ilist_DAB4 +0xaadabc kShaktool_Ilist_DABC +0xaadac4 kShaktool_Ilist_DAC4 +0xaadacc kShaktool_Ilist_DACC +0xaadad4 kShaktool_Ilist_DAD4 +0xaadadc kShaktool_Ilist_DADC +0xaadae4 nullsub_273 +0xaadae5 Shaktool_DAE5 +0xaadb0e Shaktool_DB0E +0xaadb27 Shaktool_DB27 +0xaadb40 Shaktool_DB40 +0xaadb59 Shaktool_DB59 +0xaadc07 Shaktool_DC07 +0xaadc2a Shaktool_DC2A +0xaadc6f Shaktool_DC6F +0xaadca3 Shaktool_Hurt +0xaadcaa nullsub_274 +0xaadcab nullsub_275 +0xaadcac Shaktool_DCAC +0xaadcd7 Shaktool_DCD7 +0xaadd25 Shaktool_DD25 +0xaade43 Shaktool_Init +0xaadf2f Shaktool_Touch +0xaadf34 Shaktool_Shot +0xaadf5c kShaktool_Sprmap_DF5C +0xaadf63 kShaktool_Sprmap_DF63 +0xaadf6a kShaktool_Sprmap_DF6A +0xaadf71 kShaktool_Sprmap_DF71 +0xaadf78 kShaktool_Sprmap_DF78 +0xaadf8e kShaktool_Sprmap_DF8E +0xaadfa4 kShaktool_Sprmap_DFA4 +0xaadfba kShaktool_Sprmap_DFBA +0xaadfd0 kShaktool_Sprmap_DFD0 +0xaadfe6 kShaktool_Sprmap_DFE6 +0xaadffc kShaktool_Sprmap_DFFC +0xaae012 kShaktool_Sprmap_E012 +0xaae028 kShaktool_Sprmap_E028 +0xaae02f kShaktool_Sprmap_E02F +0xaae036 kShaktool_Sprmap_E036 +0xaae03d kNegativeCosine +0xaae0bd kSine +0xaae13d kCosine +0xaae1bd kNegativeSine +0xaae23d kNegativeCosine_0 +0xaae2bd kN00bTubeCracks_Palette +0xaae2dd kN00bTubeCracks_Palette2 +0xaae31d kChozoStatue_Palette +0xaae33d kChozoStatue_Palettes +0xaae35d kChozoStatue_Palettes2 +0xaae37d kChozoStatue_Palettes3 +0xaae39d kShaktool_Ilist_E39D +0xaae3a7 kShaktool_Ilist_E3A7 +0xaae429 Shaktool_Instr_9 +0xaae436 Shaktool_Instr_11 +0xaae43d Shaktool_Instr_10 +0xaae457 kShaktool_Ilist_E457 +0xaae461 kShaktool_Ilist_E461 +0xaae57f Shaktool_Instr_8 +0xaae587 Shaktool_Instr_13 +0xaae58f Shaktool_Instr_12 +0xaae5d8 Shaktool_Instr_7 +0xaae6f0 Shaktool_Instr_14 +0xaae716 N00bTubeCracks_Init +0xaae725 ChozoStatue_Init +0xaae7a6 nullsub_276 +0xaae7a7 ChozoStatue_Main +0xaae7ae Shaktool_PreInstr_0 +0xaae7da nullsub_277 +0xaae7db nullsub_51 +0xaae7dc nullsub_52 +0xaae7dd kShaktool_Sprmap_E7DD +0xaae839 kShaktool_Sprmap_E839 +0xaae890 kShaktool_Sprmap_E890 +0xaae8e7 kShaktool_Sprmap_E8E7 +0xaae943 kShaktool_Sprmap_E943 +0xaae9ae kShaktool_Sprmap_E9AE +0xaaea1e kShaktool_Sprmap_EA1E +0xaaea8e kShaktool_Sprmap_EA8E +0xaaeafe kShaktool_Sprmap_EAFE +0xaaeb69 kShaktool_Sprmap_EB69 +0xaaebd9 kShaktool_Sprmap_EBD9 +0xaaec49 kShaktool_Sprmap_EC49 +0xaaecb9 kShaktool_Sprmap_ECB9 +0xaaed15 kShaktool_Sprmap_ED15 +0xaaed71 kShaktool_Sprmap_ED71 +0xaaedcd kShaktool_Sprmap_EDCD +0xaaee29 kShaktool_Sprmap_EE29 +0xaaee85 kShaktool_Sprmap_EE85 +0xaaef59 kShaktool_Sprmap_EF59 +0xaaefd8 kShaktool_Sprmap_EFD8 +0xaaf034 kShaktool_Sprmap_F034 +0xaaf08b kShaktool_Sprmap_F08B +0xaaf0e2 kShaktool_Sprmap_F0E2 +0xaaf13e kShaktool_Sprmap_F13E +0xaaf1a9 kShaktool_Sprmap_F1A9 +0xaaf219 kShaktool_Sprmap_F219 +0xaaf289 kShaktool_Sprmap_F289 +0xaaf2f9 kShaktool_Sprmap_F2F9 +0xaaf364 kShaktool_Sprmap_F364 +0xaaf3d4 kShaktool_Sprmap_F3D4 +0xaaf444 kShaktool_Sprmap_F444 +0xaaf4b4 kShaktool_Sprmap_F4B4 +0xaaf510 kShaktool_Sprmap_F510 +0xaaf56c kShaktool_Sprmap_F56C +0xaaf5c8 kShaktool_Sprmap_F5C8 +0xaaf624 kShaktool_Sprmap_F624 +0xaaf680 kShaktool_Sprmap_F680 +0xaaf754 kShaktool_Sprmap_F754 +0xab8000 kFakeKraid_TileData +0xab9000 kFireGeyser_TileData +0xab9800 kSpikeyPlatform_TileData +0xab9c00 kBoulder_TileData +0xabac00 kSidehopper_TileData_0 +0xabb000 kSidehopper_TileData_1 +0xabb400 kN00bTubeCracks_TileData +0xabcc00 kKraid_TileData +0xac8000 kRoach_TileData +0xac8200 kEtecoon_TileData +0xac8800 kDachora_TileData +0xac9400 kMochtroid_TileData +0xac9800 kFastMovingSlowSinkingPlatform_TileData +0xac9c00 kSporeSpawn_TileData +0xacaa00 kPhantoon_TileData +0xacb600 kBouncingGoofball_TileData +0xacba00 kTimedShutter_TileData +0xacbe00 kChozoStatue_TileData +0xacd000 kMiniCrocomire_TileData +0xacd400 kMaridiaBeybladeTurtle_TileData +0xace000 kHirisingSlowfalling_TileData +0xace400 kThinHoppingBlobs_TileData +0xace600 kSpikeShootingPlant_TileData +0xacea00 kMaridiaSpikeyShell_TileData +0xad8000 kCrocomire_TileData +0xadb200 kBombTorizoCrumblingChozo_TileData +0xadb600 kGunshipTop_TileData +0xadc600 kWallSpacePirates_TileData +0xadde00 MotherBrain_CalcHdma +0xadde5e nullsub_341 +0xadde7f MotherBrain_CalcHdma_BeamAimedRight2 +0xaddece MotherBrain_CalcHdma_BeamAimedRight +0xaddf6e MotherBrain_CalcHdma_BeamAimedUp +0xade02c MotherBrain_CalcHdma_Up_UpRight +0xade0a6 MotherBrain_CalcHdma_Up_Up +0xade124 MotherBrain_CalcHdma_Up_UpLeft +0xade1a6 MotherBrain_CalcHdma_Down +0xade216 MotherBrain_CalcHdma_Down_DownRight +0xade293 MotherBrain_CalcHdma_Down_Down +0xade314 MotherBrain_CalcHdma_Down_DownLeft +0xade396 MotherBrain_SealWall +0xade3d5 MotherBrain_HealthBasedPaletteHandling +0xade434 MotherBrain_RainbowBeamPalettes +0xade6a2 kMotherBrain_HealthBasedPalettes_Brain +0xade742 kMotherBrain_HealthBasedPalettes_BackLeg +0xade7e2 kShitroid_HealthBasedPalettes_Shell +0xade882 kShitroid_HealthBasedPalettes_Innards +0xade8e2 kShitroid_FadingToBlack +0xade9b4 MotherBrain_FadePalToBlack +0xade9e8 kMotherBrain_FadePalToBlack +0xaded8a kMotherBrain_TransitionToFromGrey_Incr +0xaded9c kMotherBrain_TransitionToFromGrey_Decr +0xadeede MotherBrain_FadeToGray_FakeDeath +0xadeeea MotherBrain_FadeFromGray_FakeDeath +0xadeef6 MotherBrain_EEF6 +0xadef0d MotherBrain_FadeFromGray_Drained +0xadef4a MotherBrain_FadeToGray_Drained +0xadef87 kMotherBrain_FadeToGray_Drained +0xadf0e9 MotherBrain_FadeToGray_RealDeath +0xadf107 kMotherBrain_FadeToGray_RealDeath +0xadf209 TurnOffLightsForShitroidDeath +0xadf22f kTurnOffLightsForShitroidDeath +0xadf24b MotherBrain_Phase3_TurnLightsBackOn +0xadf273 kMotherBrain_Phase3_TurnLightsBackOn +0xadf40b EnableEarthquakeAframes +0xadf41c HandleMotherBrainBodyFlickering +0xae8000 kWreckedShipOrangeZoomer_TileData +0xae8600 kWaver_TileData +0xae8c00 kSkree_TileData +0xae9000 kMetroid_TileData +0xaea000 kLavaSeahorse_TileData +0xaea600 kFlies_TileData_0 +0xaeaa00 kSidehopper_TileData_2 +0xaeb000 kRio_TileData +0xaeb400 kNorfairErraticFireball_TileData +0xaeb800 kLavaquakeRocks_TileData +0xaebd20 kNorfairLavajumpingEnemy_TileData +0xaec120 kBrinstarPipeBug_TileData_0 +0xaec520 kGripper_TileData +0xaec920 kFlies_TileData_1 +0xaecd20 kFlies_TileData_2 +0xaed120 kSidehopper_TileData_3 +0xaed520 kNorfairRio_TileData +0xaed920 kLowerNorfairRio_TileData +0xaee120 kBrinstarYellowPipeBug_TileData +0xaee520 kBrinstarPipeBug_TileData_1 +0xaee920 kNorfairPipeBug_TileData +0xaeed20 kBigEyeBugs_TileData +0xaef320 kFireZoomer_TileData +0xaef920 kNorfairSlowFireball_TileData +0xaf8000 kMaridiaLargeSnail_TileData +0xaf8800 kUnused_Tiledata +0xaf9200 kMetalee_TileData +0xaf9800 kBang_TileData +0xafa800 kFireflea_TileData +0xafae00 kReflec_TileData +0xafb400 kMaridiaSnail_TileData +0xafbc00 kMaridiaFish_TileData +0xafc200 kTorizo_TileData +0xafe200 kGoldenTorizoEgg_Tiledata +0xafe800 kMaridiaRefillCandy_TileData +0xb08000 kDebugtilesPaletteViewer +0xb09000 kUnusedTilesSolidColor +0xb09400 kCeresRidley_TileData +0xb0b400 kRidleysExplosion_TileData +0xb0b800 kRidleysRibsAndClaws_TileData +0xb0ba00 kCeresDoor_TileData +0xb0c000 kEscapeTimerNumbers_TileData +0xb0c400 kCeresDoorElevatorRoom_TileData +0xb0c800 kDraygon_TileData +0xb0e800 kMotherBrainsBody_TileData +0xb18000 kRisingFallingPlatform_TileData +0xb18400 kShitroidInCutscene_TileData +0xb19000 kShaktool_TileData +0xb19400 kMiniDraygon_TileData +0xb19a00 kMorphBallEye_TileData +0xb19e00 kFune_TileData +0xb1a600 kWreckedShipGhost_TileData +0xb1aa00 kYappingMaw_TileData +0xb1ae00 kKago_TileData +0xb1b600 kCrab_TileData +0xb1ba00 kBlueBrinstarFaceBlock_TileData +0xb1bc00 kNorfairLavaMan_TileData +0xb1c200 kBeetom_TileData +0xb1c800 kSlug_TileData +0xb1cc00 kMaridiaFloater_TileData +0xb1d000 kWreckedShipRobot_TileData +0xb1dc00 kMaridiaPuffer_TileData +0xb1e200 kWalkingLavaSeahorse_TileData +0xb1ea00 kWreckedShipSpark_TileData +0xb1ec00 kKiHunter_TileData +0xb1fc00 kWreckedShipOrbs_TileData +0xb28000 Enemy_GrappleReact_NoInteract_B2 +0xb28005 Enemy_GrappleReact_SamusLatchesOn_B2 +0xb2800a Enemy_GrappleReact_KillEnemy_B2 +0xb2800f Enemy_GrappleReact_CancelBeam_B2 +0xb28014 Enemy_GrappleReact_SamusLatchesNoInvinc_B2 +0xb28019 Enemy_GrappleReact_SamusLatchesParalyze_B2 +0xb2801e Enemy_GrappleReact_HurtSamus_B2 +0xb28023 Enemy_NormalTouchAI_B2 +0xb28028 Enemy_NormalTouchAI_SkipDeathAnim_B2 +0xb2802d Enemy_NormalShotAI_B2 +0xb28032 Enemy_NormalShotAI_SkipSomeParts_B2 +0xb28037 Enemy_NormalPowerBombAI_B2 +0xb2803c Enemy_NormalPowerBombAI_SkipDeathAnim_B2 +0xb28041 Enemy_NormalFrozenAI_B2 +0xb28046 CreateADudShot_B2 +0xb2804b nullsub_169_B2 +0xb2804c nullsub_170_B2 +0xb2804d kSpritemap_Nothing_B2 +0xb2804f kExtendedSpritemap_Nothing_B2 +0xb28059 word8059_B2 +0xb28069 sub8069_B2 +0xb2806b Enemy_SetAiPreInstr_B2 +0xb28074 Enemy_ClearAiPreInstr_B2 +0xb2807b nullsub_171_B2 +0xb2807c EnemyInstr_StopScript_B2 +0xb2808a EnemyInstr_Call_B2 +0xb28097 loc8097_B2 +0xb2809c EnemyInstr_CallWithArg_B2 +0xb280ac loc80AC_B2 +0xb280b5 EnemyInstr_CallFar_B2 +0xb280cb loc80CB_B2 +0xb280ce EnemyInstr_CallFarWithArg_B2 +0xb280ea loc80EA_B2 +0xb280ed EnemyInstr_Goto_B2 +0xb280f2 EnemyInstr_GotoRel_B2 +0xb28100 loc8100_B2 +0xb28103 loc8103_B2 +0xb28108 EnemyInstr_DecTimerAndGoto_B2 +0xb28110 EnemyInstr_DecTimerAndGoto2_B2 +0xb28118 EnemyInstr_DecTimerAndGotoRel_B2 +0xb28123 EnemyInstr_SetTimer_B2 +0xb2812c EnemyInstr_Skip2bytes_B2 +0xb2812f EnemyInstr_Sleep_B2 +0xb2813a EnemyInstr_WaitNframes_B2 +0xb2814b EnemyInstr_CopyToVram_B2 +0xb28173 EnemyInstr_EnableOffScreenProcessing_B2 +0xb2817d EnemyInstr_DisableOffScreenProcessing_B2 +0xb28187 kCommonEnemySpeeds_Linear_B2 +0xb2838f kCommonEnemySpeeds_Quadratic_B2 +0xb28687 kWallSpacePirates_Palette_0 +0xb286a7 kWallSpacePirates_Palette_1 +0xb286c7 kWallSpacePirates_Palette_4 +0xb286e7 kWallSpacePirates_Palette_2 +0xb28707 kWallSpacePirates_Palette_5 +0xb28727 kWallSpacePirates_Palette_3 +0xb28767 WalkingSpacePirates_Powerbomb +0xb2876c WalkingSpacePirates_Touch +0xb28779 WalkingSpacePirates_Shot +0xb28789 WalkingSpacePirates_8789 +0xb287c8 WalkingSpacePirates_87C8 +0xb2883e WalkingSpacePirates_883E +0xb288a0 kSpacePirates_ExtSprmap_88A0 +0xb288b2 kSpacePirates_ExtSprmap_88B2 +0xb288c4 kSpacePirates_ExtSprmap_88C4 +0xb288d6 kSpacePirates_ExtSprmap_88D6 +0xb288e8 kSpacePirates_ExtSprmap_88E8 +0xb288fa kSpacePirates_ExtSprmap_88FA +0xb2890c kSpacePirates_ExtSprmap_890C +0xb2891e kSpacePirates_ExtSprmap_891E +0xb28928 kSpacePirates_ExtSprmap_8928 +0xb28932 kSpacePirates_ExtSprmap_8932 +0xb28944 kSpacePirates_ExtSprmap_8944 +0xb28956 kSpacePirates_ExtSprmap_8956 +0xb28968 kSpacePirates_ExtSprmap_8968 +0xb2897a kSpacePirates_ExtSprmap_897A +0xb2898c kSpacePirates_ExtSprmap_898C +0xb2899e kSpacePirates_ExtSprmap_899E +0xb289b0 kSpacePirates_ExtSprmap_89B0 +0xb289ba kSpacePirates_ExtSprmap_89BA +0xb289c4 kSpacePirates_ExtSprmap_89C4 +0xb289d6 kSpacePirates_ExtSprmap_89D6 +0xb289e8 kSpacePirates_ExtSprmap_89E8 +0xb289fa kSpacePirates_ExtSprmap_89FA +0xb28a0c kSpacePirates_ExtSprmap_8A0C +0xb28a1e kSpacePirates_ExtSprmap_8A1E +0xb28a30 kSpacePirates_ExtSprmap_8A30 +0xb28a42 kSpacePirates_ExtSprmap_8A42 +0xb28a54 kSpacePirates_ExtSprmap_8A54 +0xb28a66 kSpacePirates_ExtSprmap_8A66 +0xb28a78 kSpacePirates_ExtSprmap_8A78 +0xb28a8a kSpacePirates_ExtSprmap_8A8A +0xb28a9c kSpacePirates_ExtSprmap_8A9C +0xb28aae kSpacePirates_ExtSprmap_8AAE +0xb28ac0 kSpacePirates_ExtSprmap_8AC0 +0xb28ad2 kSpacePirates_ExtSprmap_8AD2 +0xb28ae4 kSpacePirates_ExtSprmap_8AE4 +0xb28af6 kSpacePirates_ExtSprmap_8AF6 +0xb28b08 kSpacePirates_ExtSprmap_8B08 +0xb28b1a kSpacePirates_ExtSprmap_8B1A +0xb28b2c kSpacePirates_ExtSprmap_8B2C +0xb28b3e kSpacePirates_ExtSprmap_8B3E +0xb28b50 kSpacePirates_ExtSprmap_8B50 +0xb28b62 kSpacePirates_ExtSprmap_8B62 +0xb28b74 kSpacePirates_ExtSprmap_8B74 +0xb28b86 kSpacePirates_ExtSprmap_8B86 +0xb28b98 kSpacePirates_ExtSprmap_8B98 +0xb28baa kSpacePirates_ExtSprmap_8BAA +0xb28bbc kSpacePirates_ExtSprmap_8BBC +0xb28bce kSpacePirates_ExtSprmap_8BCE +0xb28be0 kSpacePirates_ExtSprmap_8BE0 +0xb28bf2 kSpacePirates_ExtSprmap_8BF2 +0xb28c16 kSpacePirates_ExtSprmap_8C16 +0xb28c28 kSpacePirates_ExtSprmap_8C28 +0xb28c3a kSpacePirates_ExtSprmap_8C3A +0xb28c4c kSpacePirates_ExtSprmap_8C4C +0xb28c5e kSpacePirates_ExtSprmap_8C5E +0xb28c70 kSpacePirates_ExtSprmap_8C70 +0xb28c82 kSpacePirates_ExtSprmap_8C82 +0xb28c94 kSpacePirates_ExtSprmap_8C94 +0xb28ca6 kSpacePirates_ExtSprmap_8CA6 +0xb28cb8 kSpacePirates_ExtSprmap_8CB8 +0xb28cca kSpacePirates_ExtSprmap_8CCA +0xb28cdc kSpacePirates_ExtSprmap_8CDC +0xb28cee kSpacePirates_ExtSprmap_8CEE +0xb28d00 kSpacePirates_ExtSprmap_8D00 +0xb28d1a kSpacePirates_ExtSprmap_8D1A +0xb28d2c kSpacePirates_ExtSprmap_8D2C +0xb28d46 kSpacePirates_ExtSprmap_8D46 +0xb28d60 kSpacePirates_ExtSprmap_8D60 +0xb28d72 kSpacePirates_ExtSprmap_8D72 +0xb28d8c kSpacePirates_ExtSprmap_8D8C +0xb28d96 kSpacePirates_ExtSprmap_8D96 +0xb28da0 kSpacePirates_ExtSprmap_8DA0 +0xb28daa kSpacePirates_ExtSprmap_8DAA +0xb28db4 kSpacePirates_ExtSprmap_8DB4 +0xb28dbe kSpacePirates_ExtSprmap_8DBE +0xb28dc8 kSpacePirates_ExtSprmap_8DC8 +0xb28dd2 kSpacePirates_ExtSprmap_8DD2 +0xb28ddc kSpacePirates_ExtSprmap_8DDC +0xb28de6 kSpacePirates_ExtSprmap_8DE6 +0xb28df0 kSpacePirates_ExtSprmap_8DF0 +0xb28dfa kSpacePirates_ExtSprmap_8DFA +0xb28e04 kSpacePirates_ExtSprmap_8E04 +0xb28e0e kSpacePirates_ExtSprmap_8E0E +0xb28e18 kSpacePirates_ExtSprmap_8E18 +0xb28e22 kSpacePirates_ExtSprmap_8E22 +0xb28e2c kSpacePirates_ExtSprmap_8E2C +0xb28e36 kSpacePirates_ExtSprmap_8E36 +0xb28e48 kSpacePirates_ExtSprmap_8E48 +0xb28e5a kSpacePirates_ExtSprmap_8E5A +0xb28e6c kSpacePirates_ExtSprmap_8E6C +0xb28e7e kSpacePirates_ExtSprmap_8E7E +0xb28e90 kSpacePirates_ExtSprmap_8E90 +0xb28ea2 kSpacePirates_ExtSprmap_8EA2 +0xb28eb4 kSpacePirates_ExtSprmap_8EB4 +0xb28ec6 kSpacePirates_ExtSprmap_8EC6 +0xb28ed8 kSpacePirates_ExtSprmap_8ED8 +0xb28eea kSpacePirates_ExtSprmap_8EEA +0xb28efc kSpacePirates_ExtSprmap_8EFC +0xb28f0e kSpacePirates_ExtSprmap_8F0E +0xb28f20 kSpacePirates_ExtSprmap_8F20 +0xb28f32 kSpacePirates_ExtSprmap_8F32 +0xb28f44 kSpacePirates_ExtSprmap_8F44 +0xb28f56 kSpacePirates_ExtSprmap_8F56 +0xb28f60 kSpacePirates_ExtSprmap_8F60 +0xb28f6a kSpacePirates_ExtSprmap_8F6A +0xb28f74 kSpacePirates_ExtSprmap_8F74 +0xb28f7e kSpacePirates_ExtSprmap_8F7E +0xb28f88 kSpacePirates_ExtSprmap_8F88 +0xb28f92 kSpacePirates_ExtSprmap_8F92 +0xb28f9c kSpacePirates_ExtSprmap_8F9C +0xb28fa6 kSpacePirates_ExtSprmap_8FA6 +0xb28fb0 kSpacePirates_ExtSprmap_8FB0 +0xb28fba kSpacePirates_ExtSprmap_8FBA +0xb28fc4 kSpacePirates_ExtSprmap_8FC4 +0xb28fce kSpacePirates_ExtSprmap_8FCE +0xb28fd8 kSpacePirates_ExtSprmap_8FD8 +0xb28fe2 kSpacePirates_ExtSprmap_8FE2 +0xb28fec kSpacePirates_ExtSprmap_8FEC +0xb28ff6 kSpacePirates_ExtSprmap_8FF6 +0xb29000 kSpacePirates_ExtSprmap_9000 +0xb2900a kSpacePirates_ExtSprmap_900A +0xb29014 kSpacePirates_ExtSprmap_9014 +0xb2901e kSpacePirates_ExtSprmap_901E +0xb29028 kSpacePirates_ExtSprmap_9028 +0xb29032 kSpacePirates_ExtSprmap_9032 +0xb2903c kSpacePirates_ExtSprmap_903C +0xb29046 kSpacePirates_ExtSprmap_9046 +0xb29050 kSpacePirates_ExtSprmap_9050 +0xb2905a kSpacePirates_ExtSprmap_905A +0xb29064 kSpacePirates_ExtSprmap_9064 +0xb2906e kSpacePirates_ExtSprmap_906E +0xb29080 kSpacePirates_ExtSprmap_9080 +0xb29092 kSpacePirates_ExtSprmap_9092 +0xb290a4 kSpacePirates_ExtSprmap_90A4 +0xb290b6 kSpacePirates_ExtSprmap_90B6 +0xb290c8 kSpacePirates_ExtSprmap_90C8 +0xb290da kSpacePirates_ExtSprmap_90DA +0xb290ec kSpacePirates_ExtSprmap_90EC +0xb290fe kSpacePirates_ExtSprmap_90FE +0xb29110 kSpacePirates_ExtSprmap_9110 +0xb29122 kSpacePirates_ExtSprmap_9122 +0xb29134 kSpacePirates_ExtSprmap_9134 +0xb29146 kSpacePirates_ExtSprmap_9146 +0xb29158 kSpacePirates_ExtSprmap_9158 +0xb2916a kSpacePirates_ExtSprmap_916A +0xb2917c kSpacePirates_ExtSprmap_917C +0xb2918e kSpacePirates_ExtSprmap_918E +0xb291a0 kSpacePirates_ExtSprmap_91A0 +0xb291aa kSpacePirates_ExtSprmap_91AA +0xb291b4 kSpacePirates_ExtSprmap_91B4 +0xb291be kSpacePirates_ExtSprmap_91BE +0xb291c8 kSpacePirates_ExtSprmap_91C8 +0xb291d2 kSpacePirates_ExtSprmap_91D2 +0xb291dc kSpacePirates_ExtSprmap_91DC +0xb291e6 kSpacePirates_ExtSprmap_91E6 +0xb291f0 kSpacePirates_ExtSprmap_91F0 +0xb29202 kSpacePirates_ExtSprmap_9202 +0xb29214 kSpacePirates_ExtSprmap_9214 +0xb29226 kSpacePirates_ExtSprmap_9226 +0xb29238 kSpacePirates_ExtSprmap_9238 +0xb2924a kSpacePirates_ExtSprmap_924A +0xb2925c kSpacePirates_ExtSprmap_925C +0xb2926e kSpacePirates_ExtSprmap_926E +0xb29280 kSpacePirates_ExtSprmap_9280 +0xb29292 kSpacePirates_ExtSprmap_9292 +0xb292a4 kSpacePirates_ExtSprmap_92A4 +0xb292b6 kSpacePirates_ExtSprmap_92B6 +0xb292c8 kSpacePirates_ExtSprmap_92C8 +0xb292da kSpacePirates_ExtSprmap_92DA +0xb292ec kSpacePirates_ExtSprmap_92EC +0xb292fe kSpacePirates_ExtSprmap_92FE +0xb29310 kSpacePirates_ExtSprmap_9310 +0xb29322 kSpacePirates_ExtSprmap_9322 +0xb2932c kSpacePirates_ExtSprmap_932C +0xb29336 kSpacePirates_ExtSprmap_9336 +0xb29340 kSpacePirates_ExtSprmap_9340 +0xb2934a kSpacePirates_ExtSprmap_934A +0xb29354 kSpacePirates_ExtSprmap_9354 +0xb2935e kSpacePirates_ExtSprmap_935E +0xb29368 kSpacePirates_ExtSprmap_9368 +0xb29372 kSpacePirates_ExtSprmap_9372 +0xb2937c kSpacePirates_ExtSprmap_937C +0xb29386 kSpacePirates_ExtSprmap_9386 +0xb29390 kSpacePirates_ExtSprmap_9390 +0xb2939a kSpacePirates_ExtSprmap_939A +0xb293a4 kSpacePirates_ExtSprmap_93A4 +0xb293ae kSpacePirates_ExtSprmap_93AE +0xb293b8 kSpacePirates_ExtSprmap_93B8 +0xb293c2 kSpacePirates_ExtSprmap_93C2 +0xb293cc kSpacePirates_ExtSprmap_93CC +0xb293d6 kSpacePirates_ExtSprmap_93D6 +0xb293e0 kSpacePirates_ExtSprmap_93E0 +0xb293ea kSpacePirates_ExtSprmap_93EA +0xb29404 kSpacePirates_ExtSprmap_9404 +0xb29416 kSpacePirates_ExtSprmap_9416 +0xb29430 kSpacePirates_ExtSprmap_9430 +0xb2944a kSpacePirates_ExtSprmap_944A +0xb2945c kSpacePirates_ExtSprmap_945C +0xb29476 kSpacePirates_ExtSprmap_9476 +0xb29480 kSpacePirates_ExtSprmap_9480 +0xb2948a kSpacePirates_ExtSprmap_948A +0xb29494 kSpacePirates_ExtSprmap_9494 +0xb2949e kSpacePirates_ExtSprmap_949E +0xb294a8 kSpacePirates_ExtSprmap_94A8 +0xb294b2 kSpacePirates_ExtSprmap_94B2 +0xb294bc kSpacePirates_ExtSprmap_94BC +0xb294c6 kSpacePirates_ExtSprmap_94C6 +0xb294d0 kSpacePirates_ExtSprmap_94D0 +0xb294da kSpacePirates_ExtSprmap_94DA +0xb294e4 kSpacePirates_ExtSprmap_94E4 +0xb294ee kSpacePirates_ExtSprmap_94EE +0xb294f8 kSpacePirates_ExtSprmap_94F8 +0xb29502 kSpacePirates_ExtSprmap_9502 +0xb2950c kSpacePirates_ExtSprmap_950C +0xb29516 kSpacePirates_ExtSprmap_9516 +0xb29520 kSpacePirates_ExtSprmap_9520 +0xb29532 kSpacePirates_ExtSprmap_9532 +0xb29544 kSpacePirates_ExtSprmap_9544 +0xb29556 kSpacePirates_ExtSprmap_9556 +0xb29568 kSpacePirates_ExtSprmap_9568 +0xb2957a kSpacePirates_ExtSprmap_957A +0xb2958c kSpacePirates_ExtSprmap_958C +0xb2959e kSpacePirates_ExtSprmap_959E +0xb295b0 kSpacePirates_ExtSprmap_95B0 +0xb295c2 kSpacePirates_ExtSprmap_95C2 +0xb295d4 kSpacePirates_ExtSprmap_95D4 +0xb295e6 kSpacePirates_ExtSprmap_95E6 +0xb295f8 kSpacePirates_ExtSprmap_95F8 +0xb2960a kSpacePirates_ExtSprmap_960A +0xb2961c kSpacePirates_ExtSprmap_961C +0xb2962e kSpacePirates_ExtSprmap_962E +0xb29640 kSpacePirates_ExtSprmap_9640 +0xb2964a kSpacePirates_ExtSprmap_964A +0xb29654 kSpacePirates_ExtSprmap_9654 +0xb2965e kSpacePirates_ExtSprmap_965E +0xb29668 kSpacePirates_ExtSprmap_9668 +0xb29672 kSpacePirates_ExtSprmap_9672 +0xb2967c kSpacePirates_ExtSprmap_967C +0xb29686 kSpacePirates_ExtSprmap_9686 +0xb29690 kSpacePirates_Hitbox_9690 +0xb2969e kSpacePirates_Hitbox_969E +0xb296ac kSpacePirates_Hitbox_96AC +0xb296ba kSpacePirates_Hitbox_96BA +0xb296c8 kSpacePirates_Hitbox_96C8 +0xb296d6 kSpacePirates_Hitbox_96D6 +0xb296e4 kSpacePirates_Hitbox_96E4 +0xb296f2 kSpacePirates_Hitbox_96F2 +0xb29700 kSpacePirates_Hitbox_9700 +0xb2970e kSpacePirates_Hitbox_970E +0xb2971c kSpacePirates_Hitbox_971C +0xb2972a kSpacePirates_Hitbox_972A +0xb29738 kSpacePirates_Hitbox_9738 +0xb29746 kSpacePirates_Hitbox_9746 +0xb29754 kSpacePirates_Hitbox_9754 +0xb29762 kSpacePirates_Hitbox_9762 +0xb29770 kSpacePirates_Hitbox_9770 +0xb2977e kSpacePirates_Hitbox_977E +0xb2978c kSpacePirates_Hitbox_978C +0xb2979a kSpacePirates_Hitbox_979A +0xb297a8 kSpacePirates_Hitbox_97A8 +0xb297b6 kSpacePirates_Hitbox_97B6 +0xb297c4 kSpacePirates_Hitbox_97C4 +0xb297d2 kSpacePirates_Hitbox_97D2 +0xb297e0 kSpacePirates_Hitbox_97E0 +0xb297ee kSpacePirates_Hitbox_97EE +0xb297fc kSpacePirates_Hitbox_97FC +0xb2980a kSpacePirates_Hitbox_980A +0xb29818 kSpacePirates_Hitbox_9818 +0xb29826 kSpacePirates_Hitbox_9826 +0xb29834 kSpacePirates_Hitbox_9834 +0xb29842 kSpacePirates_Hitbox_9842 +0xb29850 kSpacePirates_Hitbox_9850 +0xb2985e kSpacePirates_Hitbox_985E +0xb2986c kSpacePirates_Hitbox_986C +0xb2987a kSpacePirates_Hitbox_987A +0xb29888 kSpacePirates_Hitbox_9888 +0xb29896 kSpacePirates_Hitbox_9896 +0xb298a4 kSpacePirates_Hitbox_98A4 +0xb298b2 kSpacePirates_Hitbox_98B2 +0xb298c0 kSpacePirates_Hitbox_98C0 +0xb298ce kSpacePirates_Hitbox_98CE +0xb298dc kSpacePirates_Hitbox_98DC +0xb298ea kSpacePirates_Hitbox_98EA +0xb298f8 kSpacePirates_Hitbox_98F8 +0xb29906 kSpacePirates_Hitbox_9906 +0xb29914 kSpacePirates_Hitbox_9914 +0xb29922 kSpacePirates_Hitbox_9922 +0xb29930 kSpacePirates_Hitbox_9930 +0xb2993e kSpacePirates_Hitbox_993E +0xb2994c kSpacePirates_Hitbox_994C +0xb2995a kSpacePirates_Hitbox_995A +0xb29968 kSpacePirates_Hitbox_9968 +0xb29976 kSpacePirates_Hitbox_9976 +0xb29984 kSpacePirates_Hitbox_9984 +0xb29992 kSpacePirates_Hitbox_9992 +0xb299a0 kSpacePirates_Hitbox_99A0 +0xb299ae kSpacePirates_Hitbox_99AE +0xb299bc kSpacePirates_Hitbox_99BC +0xb299ca kSpacePirates_Hitbox_99CA +0xb299d8 kSpacePirates_Hitbox_99D8 +0xb299e6 kSpacePirates_Hitbox_99E6 +0xb299f4 kSpacePirates_Hitbox_99F4 +0xb29a02 kSpacePirates_Hitbox_9A02 +0xb29a10 kSpacePirates_Hitbox_9A10 +0xb29a1e kSpacePirates_Hitbox_9A1E +0xb29a2c kSpacePirates_Hitbox_9A2C +0xb29a3a kSpacePirates_Hitbox_9A3A +0xb29a48 kSpacePirates_Hitbox_9A48 +0xb29a56 kSpacePirates_Hitbox_9A56 +0xb29a64 kSpacePirates_Hitbox_9A64 +0xb29a72 kSpacePirates_Hitbox_9A72 +0xb29a80 kSpacePirates_Hitbox_9A80 +0xb29a8e kSpacePirates_Hitbox_9A8E +0xb29a9c kSpacePirates_Hitbox_9A9C +0xb29aaa kSpacePirates_Hitbox_9AAA +0xb29ab8 kSpacePirates_Hitbox_9AB8 +0xb29ac6 kSpacePirates_Hitbox_9AC6 +0xb29ad4 kSpacePirates_Hitbox_9AD4 +0xb29ae2 kSpacePirates_Hitbox_9AE2 +0xb29af0 kSpacePirates_Hitbox_9AF0 +0xb29afe kSpacePirates_Hitbox_9AFE +0xb29b0c kSpacePirates_Hitbox_9B0C +0xb29b1a kSpacePirates_Hitbox_9B1A +0xb29b28 kSpacePirates_Hitbox_9B28 +0xb29b36 kSpacePirates_Hitbox_9B36 +0xb29b44 kSpacePirates_Hitbox_9B44 +0xb29b52 kSpacePirates_Hitbox_9B52 +0xb29b60 kSpacePirates_Hitbox_9B60 +0xb29b6e kSpacePirates_Hitbox_9B6E +0xb29b7c kSpacePirates_Hitbox_9B7C +0xb29b8a kSpacePirates_Hitbox_9B8A +0xb29b98 kSpacePirates_Hitbox_9B98 +0xb29ba6 kSpacePirates_Hitbox_9BA6 +0xb29bb4 kSpacePirates_Hitbox_9BB4 +0xb29bc2 kSpacePirates_Hitbox_9BC2 +0xb29bd0 kSpacePirates_Hitbox_9BD0 +0xb29bde kSpacePirates_Hitbox_9BDE +0xb29bec kSpacePirates_Hitbox_9BEC +0xb29bfa kSpacePirates_Hitbox_9BFA +0xb29c08 kSpacePirates_Hitbox_9C08 +0xb29c16 kSpacePirates_Hitbox_9C16 +0xb29c24 kSpacePirates_Hitbox_9C24 +0xb29c32 kSpacePirates_Hitbox_9C32 +0xb29c40 kSpacePirates_Hitbox_9C40 +0xb29c4e kSpacePirates_Hitbox_9C4E +0xb29c5c kSpacePirates_Hitbox_9C5C +0xb29c6a kSpacePirates_Hitbox_9C6A +0xb29c78 kSpacePirates_Hitbox_9C78 +0xb29c92 kSpacePirates_Hitbox_9C92 +0xb29cac kSpacePirates_Hitbox_9CAC +0xb29cba kSpacePirates_Hitbox_9CBA +0xb29cd4 kSpacePirates_Hitbox_9CD4 +0xb29cee kSpacePirates_Hitbox_9CEE +0xb29cfc kSpacePirates_Hitbox_9CFC +0xb29d0a kSpacePirates_Hitbox_9D0A +0xb29d18 kSpacePirates_Hitbox_9D18 +0xb29d26 kSpacePirates_Hitbox_9D26 +0xb29d34 kSpacePirates_Hitbox_9D34 +0xb29d42 kSpacePirates_Hitbox_9D42 +0xb29d50 kSpacePirates_Hitbox_9D50 +0xb29d5e kSpacePirates_Hitbox_9D5E +0xb29d6c kSpacePirates_Hitbox_9D6C +0xb29d7a kSpacePirates_Hitbox_9D7A +0xb29d88 kSpacePirates_Hitbox_9D88 +0xb29d96 kSpacePirates_Hitbox_9D96 +0xb29da4 kSpacePirates_Hitbox_9DA4 +0xb29db2 kSpacePirates_Hitbox_9DB2 +0xb29dc0 kSpacePirates_Hitbox_9DC0 +0xb29dce kSpacePirates_Hitbox_9DCE +0xb29ddc kSpacePirates_Hitbox_9DDC +0xb29dea kSpacePirates_Hitbox_9DEA +0xb29df8 kSpacePirates_Hitbox_9DF8 +0xb29e06 kSpacePirates_Hitbox_9E06 +0xb29e14 kSpacePirates_Hitbox_9E14 +0xb29e22 kSpacePirates_Hitbox_9E22 +0xb29e30 kSpacePirates_Hitbox_9E30 +0xb29e3e kSpacePirates_Hitbox_9E3E +0xb29e4c kSpacePirates_Hitbox_9E4C +0xb29e5a kSpacePirates_Hitbox_9E5A +0xb29e68 kSpacePirates_Hitbox_9E68 +0xb29e82 kSpacePirates_Hitbox_9E82 +0xb29e9c kSpacePirates_Hitbox_9E9C +0xb29eaa kSpacePirates_Hitbox_9EAA +0xb29ec4 kSpacePirates_Hitbox_9EC4 +0xb29ede kSpacePirates_Hitbox_9EDE +0xb29eec kSpacePirates_Hitbox_9EEC +0xb29efa kSpacePirates_Hitbox_9EFA +0xb29f08 kSpacePirates_Hitbox_9F08 +0xb29f16 kSpacePirates_Hitbox_9F16 +0xb29f24 kSpacePirates_Hitbox_9F24 +0xb29f32 kSpacePirates_Hitbox_9F32 +0xb29f40 kSpacePirates_Hitbox_9F40 +0xb29f4e kSpacePirates_Hitbox_9F4E +0xb29f5c kSpacePirates_Hitbox_9F5C +0xb29f6a kSpacePirates_Hitbox_9F6A +0xb29f78 kSpacePirates_Hitbox_9F78 +0xb29f86 kSpacePirates_Hitbox_9F86 +0xb29f94 kSpacePirates_Hitbox_9F94 +0xb29fa2 kSpacePirates_Hitbox_9FA2 +0xb29fb0 kSpacePirates_Hitbox_9FB0 +0xb29fbe kSpacePirates_Hitbox_9FBE +0xb29fcc kSpacePirates_Hitbox_9FCC +0xb29fda kSpacePirates_Hitbox_9FDA +0xb29fe8 kSpacePirates_Hitbox_9FE8 +0xb29ff6 kSpacePirates_Hitbox_9FF6 +0xb2a004 kSpacePirates_Hitbox_A004 +0xb2a012 kSpacePirates_Hitbox_A012 +0xb2a020 kSpacePirates_Hitbox_A020 +0xb2a02e kSpacePirates_Hitbox_A02E +0xb2a03c kSpacePirates_Hitbox_A03C +0xb2a04a kSpacePirates_Hitbox_A04A +0xb2a058 kSpacePirates_Hitbox_A058 +0xb2a066 kSpacePirates_Hitbox_A066 +0xb2a074 kSpacePirates_Hitbox_A074 +0xb2a082 kSpacePirates_Hitbox_A082 +0xb2a090 kSpacePirates_Hitbox_A090 +0xb2a09e kSpacePirates_Hitbox_A09E +0xb2a0ac kSpacePirates_Hitbox_A0AC +0xb2a0ba kSpacePirates_Hitbox_A0BA +0xb2a0c8 kSpacePirates_Hitbox_A0C8 +0xb2a0d6 kSpacePirates_Hitbox_A0D6 +0xb2a0e4 kSpacePirates_Hitbox_A0E4 +0xb2a0f2 kSpacePirates_Hitbox_A0F2 +0xb2a100 kSpacePirates_Hitbox_A100 +0xb2a10e kSpacePirates_Hitbox_A10E +0xb2a11c kSpacePirates_Hitbox_A11C +0xb2a12a kSpacePirates_Hitbox_A12A +0xb2a138 kSpacePirates_Hitbox_A138 +0xb2a146 kSpacePirates_Hitbox_A146 +0xb2a154 kSpacePirates_Hitbox_A154 +0xb2a162 kSpacePirates_Hitbox_A162 +0xb2a170 kSpacePirates_Hitbox_A170 +0xb2a17e kSpacePirates_Hitbox_A17E +0xb2a18c kSpacePirates_Hitbox_A18C +0xb2a19a kSpacePirates_Hitbox_A19A +0xb2a1a8 kSpacePirates_Hitbox_A1A8 +0xb2a1b6 kSpacePirates_Hitbox_A1B6 +0xb2a1c4 kSpacePirates_Hitbox_A1C4 +0xb2a1d2 kSpacePirates_Hitbox_A1D2 +0xb2a1e0 kSpacePirates_Hitbox_A1E0 +0xb2a1ee kSpacePirates_Hitbox_A1EE +0xb2a1fc kSpacePirates_Hitbox_A1FC +0xb2a20a kSpacePirates_Hitbox_A20A +0xb2a218 kSpacePirates_Hitbox_A218 +0xb2a226 kSpacePirates_Hitbox_A226 +0xb2a234 kSpacePirates_Hitbox_A234 +0xb2a242 kSpacePirates_Hitbox_A242 +0xb2a250 kSpacePirates_Hitbox_A250 +0xb2a25e kSpacePirates_Hitbox_A25E +0xb2a26c kSpacePirates_Hitbox_A26C +0xb2a27a kSpacePirates_Hitbox_A27A +0xb2a288 kSpacePirates_Hitbox_A288 +0xb2a296 kSpacePirates_Hitbox_A296 +0xb2a2a4 kSpacePirates_Hitbox_A2A4 +0xb2a2b2 kSpacePirates_Hitbox_A2B2 +0xb2a2c0 kSpacePirates_Hitbox_A2C0 +0xb2a2ce kSpacePirates_Hitbox_A2CE +0xb2a2dc kSpacePirates_Hitbox_A2DC +0xb2a2ea kSpacePirates_Hitbox_A2EA +0xb2a2f8 kSpacePirates_Hitbox_A2F8 +0xb2a306 kSpacePirates_Hitbox_A306 +0xb2a314 kSpacePirates_Hitbox_A314 +0xb2a322 kSpacePirates_Hitbox_A322 +0xb2a330 kSpacePirates_Hitbox_A330 +0xb2a33e kSpacePirates_Hitbox_A33E +0xb2a34c kSpacePirates_Hitbox_A34C +0xb2a35a kSpacePirates_Hitbox_A35A +0xb2a368 kSpacePirates_Hitbox_A368 +0xb2a376 kSpacePirates_Hitbox_A376 +0xb2a384 kSpacePirates_Hitbox_A384 +0xb2a392 kSpacePirates_Hitbox_A392 +0xb2a3a0 kSpacePirates_Hitbox_A3A0 +0xb2a3ae kSpacePirates_Hitbox_A3AE +0xb2a3bc kSpacePirates_Hitbox_A3BC +0xb2a3ca kSpacePirates_Hitbox_A3CA +0xb2a3d8 kSpacePirates_Hitbox_A3D8 +0xb2a3e6 kSpacePirates_Hitbox_A3E6 +0xb2a3f4 kSpacePirates_Hitbox_A3F4 +0xb2a402 kSpacePirates_Hitbox_A402 +0xb2a410 kSpacePirates_Hitbox_A410 +0xb2a41e kSpacePirates_Hitbox_A41E +0xb2a42c kSpacePirates_Hitbox_A42C +0xb2a43a kSpacePirates_Hitbox_A43A +0xb2a448 kSpacePirates_Hitbox_A448 +0xb2a456 kSpacePirates_Hitbox_A456 +0xb2a464 kSpacePirates_Hitbox_A464 +0xb2a472 kSpacePirates_Hitbox_A472 +0xb2a480 kSpacePirates_Hitbox_A480 +0xb2a48e kSpacePirates_Hitbox_A48E +0xb2a49c kSpacePirates_Hitbox_A49C +0xb2a4aa kSpacePirates_Hitbox_A4AA +0xb2a4b8 kSpacePirates_Hitbox_A4B8 +0xb2a4c6 kSpacePirates_Hitbox_A4C6 +0xb2a4d4 kSpacePirates_Hitbox_A4D4 +0xb2a4e2 kSpacePirates_Hitbox_A4E2 +0xb2a4f0 kSpacePirates_Hitbox_A4F0 +0xb2a4fe kSpacePirates_Hitbox_A4FE +0xb2a50c kSpacePirates_Hitbox_A50C +0xb2a51a kSpacePirates_Hitbox_A51A +0xb2a528 kSpacePirates_Hitbox_A528 +0xb2a536 kSpacePirates_Hitbox_A536 +0xb2a544 kSpacePirates_Hitbox_A544 +0xb2a552 kSpacePirates_Hitbox_A552 +0xb2a560 kSpacePirates_Hitbox_A560 +0xb2a56e kSpacePirates_Hitbox_A56E +0xb2a57c kSpacePirates_Hitbox_A57C +0xb2a58a kSpacePirates_Hitbox_A58A +0xb2a598 kSpacePirates_Hitbox_A598 +0xb2a5a6 kSpacePirates_Hitbox_A5A6 +0xb2a5b4 kSpacePirates_Hitbox_A5B4 +0xb2a5c2 kSpacePirates_Hitbox_A5C2 +0xb2a5d0 kSpacePirates_Hitbox_A5D0 +0xb2a5ea kSpacePirates_Hitbox_A5EA +0xb2a5f8 kSpacePirates_Hitbox_A5F8 +0xb2a612 kSpacePirates_Hitbox_A612 +0xb2a62c kSpacePirates_Hitbox_A62C +0xb2a63a kSpacePirates_Hitbox_A63A +0xb2a648 kSpacePirates_Hitbox_A648 +0xb2a656 kSpacePirates_Hitbox_A656 +0xb2a664 kSpacePirates_Hitbox_A664 +0xb2a672 kSpacePirates_Hitbox_A672 +0xb2a680 kSpacePirates_Hitbox_A680 +0xb2a68e kSpacePirates_Hitbox_A68E +0xb2a69c kSpacePirates_Hitbox_A69C +0xb2a6aa kSpacePirates_Hitbox_A6AA +0xb2a6b8 kSpacePirates_Hitbox_A6B8 +0xb2a6c6 kSpacePirates_Hitbox_A6C6 +0xb2a6d4 kSpacePirates_Hitbox_A6D4 +0xb2a6e2 kSpacePirates_Hitbox_A6E2 +0xb2a6f0 kSpacePirates_Hitbox_A6F0 +0xb2a6fe kSpacePirates_Hitbox_A6FE +0xb2a70c kSpacePirates_Hitbox_A70C +0xb2a71a kSpacePirates_Hitbox_A71A +0xb2a728 kSpacePirates_Hitbox_A728 +0xb2a736 kSpacePirates_Hitbox_A736 +0xb2a744 kSpacePirates_Hitbox_A744 +0xb2a752 kSpacePirates_Hitbox_A752 +0xb2a760 kSpacePirates_Hitbox_A760 +0xb2a76e kSpacePirates_Hitbox_A76E +0xb2a77c kSpacePirates_Hitbox_A77C +0xb2a78a kSpacePirates_Hitbox_A78A +0xb2a798 kSpacePirates_Hitbox_A798 +0xb2a7a6 kSpacePirates_Hitbox_A7A6 +0xb2a7c0 kSpacePirates_Hitbox_A7C0 +0xb2a7ce kSpacePirates_Hitbox_A7CE +0xb2a7e8 kSpacePirates_Hitbox_A7E8 +0xb2a802 kSpacePirates_Hitbox_A802 +0xb2a810 kSpacePirates_Hitbox_A810 +0xb2a81e kSpacePirates_Hitbox_A81E +0xb2a82c kSpacePirates_Hitbox_A82C +0xb2a83a kSpacePirates_Hitbox_A83A +0xb2a848 kSpacePirates_Hitbox_A848 +0xb2a856 kSpacePirates_Hitbox_A856 +0xb2a864 kSpacePirates_Hitbox_A864 +0xb2a872 kSpacePirates_Hitbox_A872 +0xb2a880 kSpacePirates_Hitbox_A880 +0xb2a88e kSpacePirates_Hitbox_A88E +0xb2a89c kSpacePirates_Hitbox_A89C +0xb2a8aa kSpacePirates_Hitbox_A8AA +0xb2a8b8 kSpacePirates_Hitbox_A8B8 +0xb2a8c6 kSpacePirates_Hitbox_A8C6 +0xb2a8d4 kSpacePirates_Hitbox_A8D4 +0xb2a8e2 kSpacePirates_Sprmap_A8E2 +0xb2a90c kSpacePirates_Sprmap_A90C +0xb2a93b kSpacePirates_Sprmap_A93B +0xb2a965 kSpacePirates_Sprmap_A965 +0xb2a999 kSpacePirates_Sprmap_A999 +0xb2a9c8 kSpacePirates_Sprmap_A9C8 +0xb2a9fc kSpacePirates_Sprmap_A9FC +0xb2aa3a kSpacePirates_Sprmap_AA3A +0xb2aa78 kSpacePirates_Sprmap_AA78 +0xb2aab6 kSpacePirates_Sprmap_AAB6 +0xb2aaea kSpacePirates_Sprmap_AAEA +0xb2ab50 kSpacePirates_Sprmap_AB50 +0xb2ab93 kSpacePirates_Sprmap_AB93 +0xb2abdb kSpacePirates_Sprmap_ABDB +0xb2ac41 kSpacePirates_Sprmap_AC41 +0xb2ac93 kSpacePirates_Sprmap_AC93 +0xb2acbd kSpacePirates_Sprmap_ACBD +0xb2acec kSpacePirates_Sprmap_ACEC +0xb2ad16 kSpacePirates_Sprmap_AD16 +0xb2ad4a kSpacePirates_Sprmap_AD4A +0xb2ad79 kSpacePirates_Sprmap_AD79 +0xb2adad kSpacePirates_Sprmap_ADAD +0xb2adeb kSpacePirates_Sprmap_ADEB +0xb2ae29 kSpacePirates_Sprmap_AE29 +0xb2ae67 kSpacePirates_Sprmap_AE67 +0xb2ae9b kSpacePirates_Sprmap_AE9B +0xb2aede kSpacePirates_Sprmap_AEDE +0xb2af26 kSpacePirates_Sprmap_AF26 +0xb2af8c kSpacePirates_Sprmap_AF8C +0xb2afde kSpacePirates_Sprmap_AFDE +0xb2b012 kSpacePirates_Sprmap_B012 +0xb2b04b kSpacePirates_Sprmap_B04B +0xb2b089 kSpacePirates_Sprmap_B089 +0xb2b0c2 kSpacePirates_Sprmap_B0C2 +0xb2b0f6 kSpacePirates_Sprmap_B0F6 +0xb2b12f kSpacePirates_Sprmap_B12F +0xb2b16d kSpacePirates_Sprmap_B16D +0xb2b1a6 kSpacePirates_Sprmap_B1A6 +0xb2b1da kSpacePirates_Sprmap_B1DA +0xb2b20e kSpacePirates_Sprmap_B20E +0xb2b242 kSpacePirates_Sprmap_B242 +0xb2b25d kSpacePirates_Sprmap_B25D +0xb2b278 kSpacePirates_Sprmap_B278 +0xb2b2ac kSpacePirates_Sprmap_B2AC +0xb2b2e5 kSpacePirates_Sprmap_B2E5 +0xb2b323 kSpacePirates_Sprmap_B323 +0xb2b35c kSpacePirates_Sprmap_B35C +0xb2b390 kSpacePirates_Sprmap_B390 +0xb2b3c9 kSpacePirates_Sprmap_B3C9 +0xb2b407 kSpacePirates_Sprmap_B407 +0xb2b440 kSpacePirates_Sprmap_B440 +0xb2b474 kSpacePirates_Sprmap_B474 +0xb2b4a8 kSpacePirates_Sprmap_B4A8 +0xb2b4dc kSpacePirates_Sprmap_B4DC +0xb2b4f2 kSpacePirates_Sprmap_B4F2 +0xb2b508 kSpacePirates_Sprmap_B508 +0xb2b537 kSpacePirates_Sprmap_B537 +0xb2b566 kSpacePirates_Sprmap_B566 +0xb2b59a kSpacePirates_Sprmap_B59A +0xb2b5c9 kSpacePirates_Sprmap_B5C9 +0xb2b5f8 kSpacePirates_Sprmap_B5F8 +0xb2b627 kSpacePirates_Sprmap_B627 +0xb2b656 kSpacePirates_Sprmap_B656 +0xb2b685 kSpacePirates_Sprmap_B685 +0xb2b6b9 kSpacePirates_Sprmap_B6B9 +0xb2b6e8 kSpacePirates_Sprmap_B6E8 +0xb2b717 kSpacePirates_Sprmap_B717 +0xb2b746 kSpacePirates_Sprmap_B746 +0xb2b77a kSpacePirates_Sprmap_B77A +0xb2b7b8 kSpacePirates_Sprmap_B7B8 +0xb2b7f6 kSpacePirates_Sprmap_B7F6 +0xb2b82f kSpacePirates_Sprmap_B82F +0xb2b863 kSpacePirates_Sprmap_B863 +0xb2b8a1 kSpacePirates_Sprmap_B8A1 +0xb2b8df kSpacePirates_Sprmap_B8DF +0xb2b918 kSpacePirates_Sprmap_B918 +0xb2b947 kSpacePirates_Sprmap_B947 +0xb2b976 kSpacePirates_Sprmap_B976 +0xb2b9a0 kSpacePirates_Sprmap_B9A0 +0xb2b9ca kSpacePirates_Sprmap_B9CA +0xb2b9ef kSpacePirates_Sprmap_B9EF +0xb2ba14 kSpacePirates_Sprmap_BA14 +0xb2ba43 kSpacePirates_Sprmap_BA43 +0xb2ba77 kSpacePirates_Sprmap_BA77 +0xb2badd kSpacePirates_Sprmap_BADD +0xb2bb3e kSpacePirates_Sprmap_BB3E +0xb2bba4 kSpacePirates_Sprmap_BBA4 +0xb2bbec kSpacePirates_Sprmap_BBEC +0xb2bc48 kSpacePirates_Sprmap_BC48 +0xb2bcae kSpacePirates_Sprmap_BCAE +0xb2bcfb kSpacePirates_Sprmap_BCFB +0xb2bd43 kSpacePirates_Sprmap_BD43 +0xb2bd8b kSpacePirates_Sprmap_BD8B +0xb2bdba kSpacePirates_Sprmap_BDBA +0xb2bdcb kSpacePirates_Sprmap_BDCB +0xb2be1d kSpacePirates_Sprmap_BE1D +0xb2be74 kSpacePirates_Sprmap_BE74 +0xb2bed5 kSpacePirates_Sprmap_BED5 +0xb2bf45 kSpacePirates_Sprmap_BF45 +0xb2bf79 kSpacePirates_Sprmap_BF79 +0xb2bfb7 kSpacePirates_Sprmap_BFB7 +0xb2bff5 kSpacePirates_Sprmap_BFF5 +0xb2c02e kSpacePirates_Sprmap_C02E +0xb2c062 kSpacePirates_Sprmap_C062 +0xb2c0a0 kSpacePirates_Sprmap_C0A0 +0xb2c0de kSpacePirates_Sprmap_C0DE +0xb2c117 kSpacePirates_Sprmap_C117 +0xb2c146 kSpacePirates_Sprmap_C146 +0xb2c175 kSpacePirates_Sprmap_C175 +0xb2c19f kSpacePirates_Sprmap_C19F +0xb2c1c9 kSpacePirates_Sprmap_C1C9 +0xb2c1ee kSpacePirates_Sprmap_C1EE +0xb2c213 kSpacePirates_Sprmap_C213 +0xb2c242 kSpacePirates_Sprmap_C242 +0xb2c276 kSpacePirates_Sprmap_C276 +0xb2c2dc kSpacePirates_Sprmap_C2DC +0xb2c33d kSpacePirates_Sprmap_C33D +0xb2c3a3 kSpacePirates_Sprmap_C3A3 +0xb2c3eb kSpacePirates_Sprmap_C3EB +0xb2c447 kSpacePirates_Sprmap_C447 +0xb2c4ad kSpacePirates_Sprmap_C4AD +0xb2c4fa kSpacePirates_Sprmap_C4FA +0xb2c542 kSpacePirates_Sprmap_C542 +0xb2c58a kSpacePirates_Sprmap_C58A +0xb2c5b9 kSpacePirates_Sprmap_C5B9 +0xb2c60b kSpacePirates_Sprmap_C60B +0xb2c662 kSpacePirates_Sprmap_C662 +0xb2c6c3 kSpacePirates_Sprmap_C6C3 +0xb2c733 kSpacePirates_Sprmap_C733 +0xb2c749 kSpacePirates_Sprmap_C749 +0xb2c769 kSpacePirates_Sprmap_C769 +0xb2c784 kSpacePirates_Sprmap_C784 +0xb2c7a9 kSpacePirates_Sprmap_C7A9 +0xb2c7bf kSpacePirates_Sprmap_C7BF +0xb2c7df kSpacePirates_Sprmap_C7DF +0xb2c7fa kSpacePirates_Sprmap_C7FA +0xb2c81f kSpacePirates_Sprmap_C81F +0xb2c862 kSpacePirates_Sprmap_C862 +0xb2c8aa kSpacePirates_Sprmap_C8AA +0xb2c910 kSpacePirates_Sprmap_C910 +0xb2c926 kSpacePirates_Sprmap_C926 +0xb2c946 kSpacePirates_Sprmap_C946 +0xb2c961 kSpacePirates_Sprmap_C961 +0xb2c986 kSpacePirates_Sprmap_C986 +0xb2c99c kSpacePirates_Sprmap_C99C +0xb2c9bc kSpacePirates_Sprmap_C9BC +0xb2c9d7 kSpacePirates_Sprmap_C9D7 +0xb2c9fc kSpacePirates_Sprmap_C9FC +0xb2ca26 kSpacePirates_Sprmap_CA26 +0xb2ca55 kSpacePirates_Sprmap_CA55 +0xb2ca7f kSpacePirates_Sprmap_CA7F +0xb2cab3 kSpacePirates_Sprmap_CAB3 +0xb2cae2 kSpacePirates_Sprmap_CAE2 +0xb2cb16 kSpacePirates_Sprmap_CB16 +0xb2cb54 kSpacePirates_Sprmap_CB54 +0xb2cb92 kSpacePirates_Sprmap_CB92 +0xb2cbd0 kSpacePirates_Sprmap_CBD0 +0xb2cc04 kSpacePirates_Sprmap_CC04 +0xb2cc6a kSpacePirates_Sprmap_CC6A +0xb2ccad kSpacePirates_Sprmap_CCAD +0xb2ccf5 kSpacePirates_Sprmap_CCF5 +0xb2cd5b kSpacePirates_Sprmap_CD5B +0xb2cdad kSpacePirates_Sprmap_CDAD +0xb2cdd7 kSpacePirates_Sprmap_CDD7 +0xb2ce06 kSpacePirates_Sprmap_CE06 +0xb2ce30 kSpacePirates_Sprmap_CE30 +0xb2ce64 kSpacePirates_Sprmap_CE64 +0xb2ce93 kSpacePirates_Sprmap_CE93 +0xb2cec7 kSpacePirates_Sprmap_CEC7 +0xb2cf05 kSpacePirates_Sprmap_CF05 +0xb2cf43 kSpacePirates_Sprmap_CF43 +0xb2cf81 kSpacePirates_Sprmap_CF81 +0xb2cfb5 kSpacePirates_Sprmap_CFB5 +0xb2cff8 kSpacePirates_Sprmap_CFF8 +0xb2d040 kSpacePirates_Sprmap_D040 +0xb2d0a6 kSpacePirates_Sprmap_D0A6 +0xb2d0f8 kSpacePirates_Sprmap_D0F8 +0xb2d12c kSpacePirates_Sprmap_D12C +0xb2d165 kSpacePirates_Sprmap_D165 +0xb2d1a3 kSpacePirates_Sprmap_D1A3 +0xb2d1dc kSpacePirates_Sprmap_D1DC +0xb2d210 kSpacePirates_Sprmap_D210 +0xb2d249 kSpacePirates_Sprmap_D249 +0xb2d287 kSpacePirates_Sprmap_D287 +0xb2d2c0 kSpacePirates_Sprmap_D2C0 +0xb2d2f4 kSpacePirates_Sprmap_D2F4 +0xb2d328 kSpacePirates_Sprmap_D328 +0xb2d339 kSpacePirates_Sprmap_D339 +0xb2d345 kSpacePirates_Sprmap_D345 +0xb2d356 kSpacePirates_Sprmap_D356 +0xb2d362 kSpacePirates_Sprmap_D362 +0xb2d373 kSpacePirates_Sprmap_D373 +0xb2d37f kSpacePirates_Sprmap_D37F +0xb2d390 kSpacePirates_Sprmap_D390 +0xb2d39c kSpacePirates_Sprmap_D39C +0xb2d3d0 kSpacePirates_Sprmap_D3D0 +0xb2d3eb kSpacePirates_Sprmap_D3EB +0xb2d406 kSpacePirates_Sprmap_D406 +0xb2d43a kSpacePirates_Sprmap_D43A +0xb2d473 kSpacePirates_Sprmap_D473 +0xb2d4b1 kSpacePirates_Sprmap_D4B1 +0xb2d4ea kSpacePirates_Sprmap_D4EA +0xb2d51e kSpacePirates_Sprmap_D51E +0xb2d557 kSpacePirates_Sprmap_D557 +0xb2d595 kSpacePirates_Sprmap_D595 +0xb2d5ce kSpacePirates_Sprmap_D5CE +0xb2d602 kSpacePirates_Sprmap_D602 +0xb2d636 kSpacePirates_Sprmap_D636 +0xb2d647 kSpacePirates_Sprmap_D647 +0xb2d653 kSpacePirates_Sprmap_D653 +0xb2d664 kSpacePirates_Sprmap_D664 +0xb2d670 kSpacePirates_Sprmap_D670 +0xb2d681 kSpacePirates_Sprmap_D681 +0xb2d68d kSpacePirates_Sprmap_D68D +0xb2d69e kSpacePirates_Sprmap_D69E +0xb2d6aa kSpacePirates_Sprmap_D6AA +0xb2d6de kSpacePirates_Sprmap_D6DE +0xb2d6f4 kSpacePirates_Sprmap_D6F4 +0xb2d70a kSpacePirates_Sprmap_D70A +0xb2d739 kSpacePirates_Sprmap_D739 +0xb2d768 kSpacePirates_Sprmap_D768 +0xb2d79c kSpacePirates_Sprmap_D79C +0xb2d7cb kSpacePirates_Sprmap_D7CB +0xb2d7fa kSpacePirates_Sprmap_D7FA +0xb2d829 kSpacePirates_Sprmap_D829 +0xb2d858 kSpacePirates_Sprmap_D858 +0xb2d887 kSpacePirates_Sprmap_D887 +0xb2d8bb kSpacePirates_Sprmap_D8BB +0xb2d8ea kSpacePirates_Sprmap_D8EA +0xb2d919 kSpacePirates_Sprmap_D919 +0xb2d948 kSpacePirates_Sprmap_D948 +0xb2d97c kSpacePirates_Sprmap_D97C +0xb2d9ba kSpacePirates_Sprmap_D9BA +0xb2d9f8 kSpacePirates_Sprmap_D9F8 +0xb2da31 kSpacePirates_Sprmap_DA31 +0xb2da65 kSpacePirates_Sprmap_DA65 +0xb2daa3 kSpacePirates_Sprmap_DAA3 +0xb2dae1 kSpacePirates_Sprmap_DAE1 +0xb2db1a kSpacePirates_Sprmap_DB1A +0xb2db49 kSpacePirates_Sprmap_DB49 +0xb2db78 kSpacePirates_Sprmap_DB78 +0xb2dba2 kSpacePirates_Sprmap_DBA2 +0xb2dbcc kSpacePirates_Sprmap_DBCC +0xb2dbf1 kSpacePirates_Sprmap_DBF1 +0xb2dc16 kSpacePirates_Sprmap_DC16 +0xb2dc45 kSpacePirates_Sprmap_DC45 +0xb2dc79 kSpacePirates_Sprmap_DC79 +0xb2dcdf kSpacePirates_Sprmap_DCDF +0xb2dd40 kSpacePirates_Sprmap_DD40 +0xb2dda6 kSpacePirates_Sprmap_DDA6 +0xb2ddee kSpacePirates_Sprmap_DDEE +0xb2de4a kSpacePirates_Sprmap_DE4A +0xb2deba kSpacePirates_Sprmap_DEBA +0xb2df20 kSpacePirates_Sprmap_DF20 +0xb2df6d kSpacePirates_Sprmap_DF6D +0xb2dfb5 kSpacePirates_Sprmap_DFB5 +0xb2dffd kSpacePirates_Sprmap_DFFD +0xb2e02c kSpacePirates_Sprmap_E02C +0xb2e03d kSpacePirates_Sprmap_E03D +0xb2e08f kSpacePirates_Sprmap_E08F +0xb2e0e6 kSpacePirates_Sprmap_E0E6 +0xb2e147 kSpacePirates_Sprmap_E147 +0xb2e1a8 kSpacePirates_Sprmap_E1A8 +0xb2e1dc kSpacePirates_Sprmap_E1DC +0xb2e21a kSpacePirates_Sprmap_E21A +0xb2e258 kSpacePirates_Sprmap_E258 +0xb2e291 kSpacePirates_Sprmap_E291 +0xb2e2c5 kSpacePirates_Sprmap_E2C5 +0xb2e303 kSpacePirates_Sprmap_E303 +0xb2e341 kSpacePirates_Sprmap_E341 +0xb2e37a kSpacePirates_Sprmap_E37A +0xb2e3a9 kSpacePirates_Sprmap_E3A9 +0xb2e3d8 kSpacePirates_Sprmap_E3D8 +0xb2e402 kSpacePirates_Sprmap_E402 +0xb2e42c kSpacePirates_Sprmap_E42C +0xb2e451 kSpacePirates_Sprmap_E451 +0xb2e476 kSpacePirates_Sprmap_E476 +0xb2e4a5 kSpacePirates_Sprmap_E4A5 +0xb2e4d9 kSpacePirates_Sprmap_E4D9 +0xb2e53f kSpacePirates_Sprmap_E53F +0xb2e5a0 kSpacePirates_Sprmap_E5A0 +0xb2e606 kSpacePirates_Sprmap_E606 +0xb2e64e kSpacePirates_Sprmap_E64E +0xb2e6aa kSpacePirates_Sprmap_E6AA +0xb2e71a kSpacePirates_Sprmap_E71A +0xb2e780 kSpacePirates_Sprmap_E780 +0xb2e7cd kSpacePirates_Sprmap_E7CD +0xb2e815 kSpacePirates_Sprmap_E815 +0xb2e85d kSpacePirates_Sprmap_E85D +0xb2e88c kSpacePirates_Sprmap_E88C +0xb2e8de kSpacePirates_Sprmap_E8DE +0xb2e935 kSpacePirates_Sprmap_E935 +0xb2e996 kSpacePirates_Sprmap_E996 +0xb2e9f7 kSpacePirates_Sprmap_E9F7 +0xb2ea0d kSpacePirates_Sprmap_EA0D +0xb2ea2d kSpacePirates_Sprmap_EA2D +0xb2ea48 kSpacePirates_Sprmap_EA48 +0xb2ea6d kSpacePirates_Sprmap_EA6D +0xb2ea83 kSpacePirates_Sprmap_EA83 +0xb2eaa3 kSpacePirates_Sprmap_EAA3 +0xb2eabe kSpacePirates_Sprmap_EABE +0xb2eae3 kSpacePirates_Sprmap_EAE3 +0xb2eb26 kSpacePirates_Sprmap_EB26 +0xb2eb6e kSpacePirates_Sprmap_EB6E +0xb2ebd4 kSpacePirates_Sprmap_EBD4 +0xb2ebea kSpacePirates_Sprmap_EBEA +0xb2ec0a kSpacePirates_Sprmap_EC0A +0xb2ec25 kSpacePirates_Sprmap_EC25 +0xb2ec4a kSpacePirates_Sprmap_EC4A +0xb2ec60 kSpacePirates_Sprmap_EC60 +0xb2ec80 kSpacePirates_Sprmap_EC80 +0xb2ec9b kSpacePirates_Sprmap_EC9B +0xb2ecc0 kSpacePirates_Ilist_ECC0 +0xb2ece4 kSpacePirates_Ilist_ECE4 +0xb2ed36 kSpacePirates_Ilist_ED36 +0xb2ed80 kSpacePirates_Ilist_ED80 +0xb2eda4 kSpacePirates_Ilist_EDA4 +0xb2edf6 kSpacePirates_Ilist_EDF6 +0xb2ee40 SpacePirates_Instr_MovePixelsDownAndChangeDirFaceRight +0xb2ee72 SpacePirates_Instr_MovePixelsDownAndChangeDirFaceLeft +0xb2eea4 SpacePirates_Instr_RandomNewDirFaceR +0xb2eebc SpacePirates_Instr_RandomNewDirFaceL +0xb2eed4 SpacePirates_Instr_PrepareWallJumpR +0xb2eefd SpacePirates_Instr_PrepareWallJumpL +0xb2ef2a SpacePirates_Instr_FireLaserL +0xb2ef5d SpacePirates_Instr_FireLaserR +0xb2ef83 SpacePirates_Instr_SetEnemyFunc +0xb2ef93 SpacePirates_Instr_PlaySfx +0xb2ef9f WallSpacePirates_Init +0xb2f02d WallSpacePirates_Main +0xb2f034 SpacePirates_Func_1 +0xb2f04e nullsub_278 +0xb2f04f nullsub_279 +0xb2f050 SpacePirates_Func_2 +0xb2f0c8 SpacePirates_Func_3 +0xb2f0e2 nullsub_280 +0xb2f0e3 nullsub_281 +0xb2f0e4 SpacePirates_Func_4 +0xb2f15c kSpacePirates_Ilist_F15C +0xb2f1c4 kSpacePirates_Ilist_F1C4 +0xb2f22e kSpacePirates_Ilist_F22E +0xb2f246 kSpacePirates_Ilist_F246 +0xb2f24c kSpacePirates_Ilist_F24C +0xb2f270 kSpacePirates_Ilist_F270 +0xb2f27c kSpacePirates_Ilist_F27C +0xb2f284 kSpacePirates_Ilist_F284 +0xb2f29e kSpacePirates_Ilist_F29E +0xb2f2a0 kSpacePirates_Ilist_F2A0 +0xb2f2b2 kSpacePirates_Ilist_F2B2 +0xb2f2da kSpacePirates_Ilist_F2DA +0xb2f2f6 kSpacePirates_Ilist_F2F6 +0xb2f2f8 kSpacePirates_Ilist_F2F8 +0xb2f328 kSpacePirates_Ilist_F328 +0xb2f32e kSpacePirates_Ilist_F32E +0xb2f34a kSpacePirates_Ilist_F34A +0xb2f3b2 kSpacePirates_Ilist_F3B2 +0xb2f41c kSpacePirates_Ilist_F41C +0xb2f420 kSpacePirates_Ilist_F420 +0xb2f43e kSpacePirates_Ilist_F43E +0xb2f462 kSpacePirates_Ilist_F462 +0xb2f46e kSpacePirates_Ilist_F46E +0xb2f476 kSpacePirates_Ilist_F476 +0xb2f490 kSpacePirates_Ilist_F490 +0xb2f492 kSpacePirates_Ilist_F492 +0xb2f4a4 kSpacePirates_Ilist_F4A4 +0xb2f4cc kSpacePirates_Ilist_F4CC +0xb2f4e8 kSpacePirates_Ilist_F4E8 +0xb2f4ea kSpacePirates_Ilist_F4EA +0xb2f51a kSpacePirates_Ilist_F51A +0xb2f536 SpacePirates_Instr_20 +0xb2f546 SpacePirates_Instr_16 +0xb2f564 SpacePirates_Instr_15 +0xb2f590 SpacePirates_Instr_18 +0xb2f5d6 SpacePirates_Instr_17 +0xb2f5de NinjaSpacePirates_Init +0xb2f6a2 NinjaSpacePirates_Main +0xb2f6a9 SpacePirates_Func_5 +0xb2f6e4 SpacePirates_Func_6 +0xb2f6f7 SpacePirates_Func_7 +0xb2f72e SpacePirates_Func_8 +0xb2f78d SpacePirates_Func_9 +0xb2f7c6 SpacePirates_Func_10 +0xb2f817 SpacePirates_Func_11 +0xb2f84c SpacePirates_Func_12 +0xb2f890 SpacePirates_Func_13 +0xb2f8c5 SpacePirates_Func_14 +0xb2f909 SpacePirates_Func_15 +0xb2f917 SpacePirates_Func_16 +0xb2f969 SpacePirates_Instr_19 +0xb2f985 SpacePirates_F985 +0xb2f9c1 SpacePirates_F9C1 +0xb2fa15 SpacePirates_FA15 +0xb2fa3d SpacePirates_Instr_21 +0xb2fa59 SpacePirates_FA59 +0xb2fa95 SpacePirates_FA95 +0xb2fae9 SpacePirates_FAE9 +0xb2fb11 SpacePirates_FB11 +0xb2fb4c kSpacePirates_Ilist_FB4C +0xb2fb58 kSpacePirates_Ilist_FB58 +0xb2fb64 kSpacePirates_Ilist_FB64 +0xb2fb8c kSpacePirates_Ilist_FB8C +0xb2fbc6 kSpacePirates_Ilist_FBC6 +0xb2fbe6 kSpacePirates_Ilist_FBE6 +0xb2fc0e kSpacePirates_Ilist_FC0E +0xb2fc48 kSpacePirates_Ilist_FC48 +0xb2fc68 SpacePirates_Instr_12 +0xb2fc90 SpacePirates_Instr_14 +0xb2fcb8 SpacePirates_Instr_11 +0xb2fcc8 SpacePirates_Instr_13 +0xb2fd02 WalkingSpacePirates_Init +0xb2fd32 WalkingSpacePirates_Main +0xb2fd44 WalkingSpacePirates_FD44 +0xb2fdce WalkingSpacePirates_FDCE +0xb2fe4a nullsub_282 +0xb2fe4b WalkingSpacePirates_FE4B +0xb38000 Enemy_GrappleReact_NoInteract_B3 +0xb38005 Enemy_GrappleReact_SamusLatchesOn_B3 +0xb3800a Enemy_GrappleReact_KillEnemy_B3 +0xb3800f Enemy_GrappleReact_CancelBeam_B3 +0xb38014 Enemy_GrappleReact_SamusLatchesNoInvinc_B3 +0xb38019 Enemy_GrappleReact_SamusLatchesParalyze_B3 +0xb3801e Enemy_GrappleReact_HurtSamus_B3 +0xb38023 Enemy_NormalTouchAI_B3 +0xb38028 Enemy_NormalTouchAI_SkipDeathAnim_B3 +0xb3802d Enemy_NormalShotAI_B3 +0xb38032 Enemy_NormalShotAI_SkipSomeParts_B3 +0xb38037 Enemy_NormalPowerBombAI_B3 +0xb3803c Enemy_NormalPowerBombAI_SkipDeathAnim_B3 +0xb38041 Enemy_NormalFrozenAI_B3 +0xb38046 CreateADudShot_B3 +0xb3804b nullsub_169_B3 +0xb3804c nullsub_170_B3 +0xb3804d kSpritemap_Nothing_B3 +0xb3804f kExtendedSpritemap_Nothing_B3 +0xb38059 word8059_B3 +0xb38069 sub8069_B3 +0xb3806b Enemy_SetAiPreInstr_B3 +0xb38074 Enemy_ClearAiPreInstr_B3 +0xb3807b nullsub_171_B3 +0xb3807c EnemyInstr_StopScript_B3 +0xb3808a EnemyInstr_Call_B3 +0xb38097 loc8097_B3 +0xb3809c EnemyInstr_CallWithArg_B3 +0xb380ac loc80AC_B3 +0xb380b5 EnemyInstr_CallFar_B3 +0xb380cb loc80CB_B3 +0xb380ce EnemyInstr_CallFarWithArg_B3 +0xb380ea loc80EA_B3 +0xb380ed EnemyInstr_Goto_B3 +0xb380f2 EnemyInstr_GotoRel_B3 +0xb38100 loc8100_B3 +0xb38103 loc8103_B3 +0xb38108 EnemyInstr_DecTimerAndGoto_B3 +0xb38110 EnemyInstr_DecTimerAndGoto2_B3 +0xb38118 EnemyInstr_DecTimerAndGotoRel_B3 +0xb38123 EnemyInstr_SetTimer_B3 +0xb3812c EnemyInstr_Skip2bytes_B3 +0xb3812f EnemyInstr_Sleep_B3 +0xb3813a EnemyInstr_WaitNframes_B3 +0xb3814b EnemyInstr_CopyToVram_B3 +0xb38173 EnemyInstr_EnableOffScreenProcessing_B3 +0xb3817d EnemyInstr_DisableOffScreenProcessing_B3 +0xb38187 kCommonEnemySpeeds_Linear_B3 +0xb3838f kCommonEnemySpeeds_Quadratic_B3 +0xb38687 kUnusedSpinningTurtleEye_Palette +0xb386a7 kUnusedSpinningTurtleEye_Ilist_86A7 +0xb386cb kUnusedSpinningTurtleEye_Ilist_86CB +0xb386db kUnusedSpinningTurtleEye_Ilist_86DB +0xb386eb kUnusedSpinningTurtleEye_Ilist_86EB +0xb386fb UnusedSpinningTurtleEye_Init +0xb3870e UnusedSpinningTurtleEye_Main +0xb38712 nullsub_283 +0xb38713 nullsub_284 +0xb38714 kUnusedSpinningTurtleEye_Sprmap_8714 +0xb3871b kUnusedSpinningTurtleEye_Sprmap_871B +0xb38722 kUnusedSpinningTurtleEye_Sprmap_8722 +0xb38729 kUnusedSpinningTurtleEye_Sprmap_8729 +0xb38730 kUnusedSpinningTurtleEye_Sprmap_8730 +0xb38737 kUnusedSpinningTurtleEye_Sprmap_8737 +0xb3873e kUnusedSpinningTurtleEye_Sprmap_873E +0xb38745 kUnusedSpinningTurtleEye_Sprmap_8745 +0xb3874c kUnusedSpinningTurtleEye_Sprmap_874C +0xb38753 kUnusedSpinningTurtleEye_Sprmap_8753 +0xb3875a kUnusedSpinningTurtleEye_Sprmap_875A +0xb38761 kUnusedSpinningTurtleEye_Sprmap_8761 +0xb38768 kUnusedSpinningTurtleEye_Sprmap_8768 +0xb3876f kUnusedSpinningTurtleEye_Sprmap_876F +0xb38776 kUnusedSpinningTurtleEye_Sprmap_8776 +0xb3877d kUnusedSpinningTurtleEye_Sprmap_877D +0xb38784 kUnusedSpinningTurtleEye_Sprmap_8784 +0xb3878b kBrinstarPipeBug_Palette_0 +0xb387ab kBrinstarPipeBug_Ilist_87AB +0xb387cf kBrinstarPipeBug_Ilist_87CF +0xb387eb kBrinstarPipeBug_Ilist_87EB +0xb3880f kBrinstarPipeBug_Ilist_880F +0xb3883b BrinstarPipeBug_Init +0xb3887a BrinstarPipeBug_Main +0xb38880 BrinstarPipeBug_PreInstr_1 +0xb38890 BrinstarPipeBug_PreInstr_2 +0xb388e3 BrinstarPipeBug_PreInstr_3 +0xb3891c BrinstarPipeBug_PreInstr_4 +0xb3897e BrinstarPipeBug_PreInstr_5 +0xb3898b BrinstarPipeBug_Func_1 +0xb389b7 kBrinstarPipeBug_Sprmap_89B7 +0xb389be kBrinstarPipeBug_Sprmap_89BE +0xb389c5 kBrinstarPipeBug_Sprmap_89C5 +0xb389cc kBrinstarPipeBug_Sprmap_89CC +0xb389d3 kBrinstarPipeBug_Sprmap_89D3 +0xb389da kBrinstarPipeBug_Sprmap_89DA +0xb389e1 kBrinstarPipeBug_Sprmap_89E1 +0xb389e8 kBrinstarPipeBug_Sprmap_89E8 +0xb389ef kBrinstarPipeBug_Sprmap_89EF +0xb389f6 kBrinstarPipeBug_Sprmap_89F6 +0xb389fd kBrinstarPipeBug_Palette_1 +0xb38a1d kBrinstarPipeBug_Ilist_8A1D +0xb38a31 kBrinstarPipeBug_Ilist_8A31 +0xb38a45 kBrinstarPipeBug_Ilist_8A45 +0xb38a59 kBrinstarPipeBug_Ilist_8A59 +0xb38a6d kBrinstarPipeBug_Sprmap_8A6D +0xb38a74 kBrinstarPipeBug_Sprmap_8A74 +0xb38a7b kBrinstarPipeBug_Sprmap_8A7B +0xb38a82 kBrinstarPipeBug_Sprmap_8A82 +0xb38a89 kBrinstarPipeBug_Sprmap_8A89 +0xb38a90 kBrinstarPipeBug_Sprmap_8A90 +0xb38a97 kBrinstarPipeBug_Sprmap_8A97 +0xb38a9e kBrinstarPipeBug_Sprmap_8A9E +0xb38aa5 kBrinstarPipeBug_Sprmap_8AA5 +0xb38aac kBrinstarPipeBug_Sprmap_8AAC +0xb38ab3 kBrinstarPipeBug_Sprmap_8AB3 +0xb38aba kBrinstarPipeBug_Sprmap_8ABA +0xb38ac1 kNorfairPipeBug_Palette +0xb38ae1 kNorfairPipeBug_Ilist_8AE1 +0xb38b05 kNorfairPipeBug_Ilist_8B05 +0xb38b21 kNorfairPipeBug_Ilist_8B21 +0xb38b45 kNorfairPipeBug_Ilist_8B45 +0xb38b61 NorfairPipeBug_Init +0xb38b9e NorfairPipeBug_Main +0xb38ba8 NorfairPipeBug_8BA8 +0xb38bcd NorfairPipeBug_Func_1 +0xb38bff NorfairPipeBug_Func_2 +0xb38c52 NorfairPipeBug_Func_3 +0xb38ca6 NorfairPipeBug_Func_4 +0xb38cff NorfairPipeBug_Func_5 +0xb38d0c NorfairPipeBug_Func_6 +0xb38d4e NorfairPipeBug_Func_7 +0xb38d90 NorfairPipeBug_Func_8 +0xb38dd2 NorfairPipeBug_Func_9 +0xb38e14 NorfairPipeBug_Func_10 +0xb38e35 NorfairPipeBug_Func_11 +0xb38e5a NorfairPipeBug_Func_12 +0xb38e94 nullsub_285 +0xb38e95 nullsub_286 +0xb38e96 kNorfairPipeBug_Sprmap_8E96 +0xb38e9d kNorfairPipeBug_Sprmap_8E9D +0xb38ea4 kNorfairPipeBug_Sprmap_8EA4 +0xb38eab kNorfairPipeBug_Sprmap_8EAB +0xb38eb2 kNorfairPipeBug_Sprmap_8EB2 +0xb38eb9 kNorfairPipeBug_Sprmap_8EB9 +0xb38ec0 kNorfairPipeBug_Sprmap_8EC0 +0xb38ec7 kNorfairPipeBug_Sprmap_8EC7 +0xb38ece kNorfairPipeBug_Sprmap_8ECE +0xb38ed5 kNorfairPipeBug_Sprmap_8ED5 +0xb38edc kBrinstarYellowPipeBug_Palette +0xb38efc kBrinstarYellowPipeBug_Ilist_8EFC +0xb38f10 kBrinstarYellowPipeBug_Ilist_8F10 +0xb38f24 kBrinstarYellowPipeBug_Ilist_8F24 +0xb38f38 kBrinstarYellowPipeBug_Ilist_8F38 +0xb38f4c BrinstarYellowPipeBug_Init +0xb38fae BrinstarYellowPipeBug_Main +0xb38fb5 BrinstarYellowPipeBug_Func_1 +0xb38ff5 BrinstarYellowPipeBug_Func_2 +0xb39028 BrinstarYellowPipeBug_Func_3 +0xb390a1 BrinstarYellowPipeBug_Func_4 +0xb390bd BrinstarYellowPipeBug_Func_5 +0xb3913a BrinstarYellowPipeBug_Func_6 +0xb3915a BrinstarYellowPipeBug_Func_7 +0xb391d8 BrinstarYellowPipeBug_Func_8 +0xb39256 BrinstarYellowPipeBug_Func_9 +0xb3927a BrinstarYellowPipeBug_Func_10 +0xb392ab nullsub_287 +0xb392ac nullsub_288 +0xb392ad kBrinstarYellowPipeBug_Sprmap_92AD +0xb392b4 kBrinstarYellowPipeBug_Sprmap_92B4 +0xb392bb kBrinstarYellowPipeBug_Sprmap_92BB +0xb392c2 kBrinstarYellowPipeBug_Sprmap_92C2 +0xb392c9 kBrinstarYellowPipeBug_Sprmap_92C9 +0xb392d0 kBrinstarYellowPipeBug_Sprmap_92D0 +0xb392d7 kBrinstarYellowPipeBug_Sprmap_92D7 +0xb392de kBrinstarYellowPipeBug_Sprmap_92DE +0xb392e5 kBrinstarYellowPipeBug_Sprmap_92E5 +0xb392ec kBrinstarYellowPipeBug_Sprmap_92EC +0xb392f3 kBrinstarYellowPipeBug_Sprmap_92F3 +0xb392fa kBrinstarYellowPipeBug_Sprmap_92FA +0xb39319 kBotwoon_Palette +0xb39339 kBotwoon_Ilist_9339 +0xb39341 kBotwoon_Ilist_9341 +0xb39349 kBotwoon_Ilist_9349 +0xb39351 kBotwoon_Ilist_9351 +0xb39359 kBotwoon_Ilist_9359 +0xb39361 kBotwoon_Ilist_9361 +0xb39369 kBotwoon_Ilist_9369 +0xb39371 kBotwoon_Ilist_9371 +0xb39379 kBotwoon_Ilist_9379 +0xb39381 kBotwoon_Ilist_9381 +0xb39389 kBotwoon_Ilist_9389 +0xb3938f kBotwoon_Ilist_938F +0xb3939f kBotwoon_Ilist_939F +0xb393af kBotwoon_Ilist_93AF +0xb393bf kBotwoon_Ilist_93BF +0xb393cf kBotwoon_Ilist_93CF +0xb393df kBotwoon_Ilist_93DF +0xb393ef kBotwoon_Ilist_93EF +0xb393ff kBotwoon_Ilist_93FF +0xb3940f kBotwoon_Ilist_940F +0xb3941f kBotwoon_Ilist_941F +0xb3942f kBotwoon_Ilist_942F +0xb39435 kBotwoon_Ilist_9435 +0xb3943b kBotwoon_Ilist_943B +0xb39441 kBotwoon_Ilist_9441 +0xb39447 kBotwoon_Ilist_9447 +0xb3944d kBotwoon_Ilist_944D +0xb39453 kBotwoon_Ilist_9453 +0xb39459 kBotwoon_Ilist_9459 +0xb3945f kBotwoon_Ilist_945F +0xb39465 kBotwoon_Ilist_9465 +0xb394c7 Botwoon_Instr_1 +0xb394d7 Botwoon_Instr_2 +0xb394e7 Botwoon_Instr_3 +0xb394f7 Botwoon_Instr_4 +0xb39507 Botwoon_Instr_5 +0xb39517 Botwoon_Instr_6 +0xb39527 Botwoon_Instr_7 +0xb39537 Botwoon_Instr_8 +0xb39547 Botwoon_Instr_9 +0xb39557 Botwoon_Instr_10 +0xb39567 Botwoon_Instr_SetSpitting +0xb39572 Botwoon_Instr_QueueSpitSfx +0xb3957a nullsub_30 +0xb3957b Botwoon_QueueExplosionSfx +0xb39583 Botwoon_Init +0xb39668 Botwoon_Main +0xb3967b Botwoon_Func_1 +0xb39696 Botwoon_Func_2 +0xb396c6 Botwoon_Func_3 +0xb396f5 Botwoon_Func_4 +0xb396ff Botwoon_Func_5 +0xb3971b kBotwoonHealthBasedPalette +0xb3981b kBotwoonHealthThresForPalChange +0xb3982b Botwoon_HealthBasedPalHandling +0xb39878 Botwoon_Func_6 +0xb3989d Botwoon_Func_7 +0xb398ec Botwoon_Func_8 +0xb39913 Botwoon_Func_9 +0xb39933 Botwoon_Func_10 +0xb3995d Botwoon_Func_11 +0xb399a4 Botwoon_Func_12 +0xb399e4 Botwoon_Func_13 +0xb39a46 Botwoon_Func_14 +0xb39a5e Botwoon_Func_15 +0xb39aca Botwoon_Func_16 +0xb39add Botwoon_Func_17 +0xb39af9 Botwoon_Func_18 +0xb39bb7 Botwoon_Func_19 +0xb39bf8 Botwoon_Func_20 +0xb39c48 Botwoon_Func_21 +0xb39c7b Botwoon_Func_22 +0xb39c90 Botwoon_Func_23 +0xb39d3c Botwoon_Func_24 +0xb39d4d Botwoon_Func_25 +0xb39dc0 Botwoon_Func_26 +0xb39e7d Botwoon_Func_27 +0xb39ee0 Botwoon_Func_28 +0xb39f34 Botwoon_Func_29 +0xb39f7a Botwoon_Func_30 +0xb39f93 Botwoon_Func_31 +0xb39fff Botwoon_Touch +0xb3a016 Botwoon_Shot +0xb3a041 Botwoon_Powerbomb +0xb3e250 Botwoon_Func_32 +0xb3e28c Botwoon_Func_33 +0xb3e31d kBotwoon_Sprmap_E31D +0xb3e329 kBotwoon_Sprmap_E329 +0xb3e335 kBotwoon_Sprmap_E335 +0xb3e341 kBotwoon_Sprmap_E341 +0xb3e34d kBotwoon_Sprmap_E34D +0xb3e359 kBotwoon_Sprmap_E359 +0xb3e365 kBotwoon_Sprmap_E365 +0xb3e371 kBotwoon_Sprmap_E371 +0xb3e37d kBotwoon_Sprmap_E37D +0xb3e389 kBotwoon_Sprmap_E389 +0xb3e395 kBotwoon_Sprmap_E395 +0xb3e3a1 kBotwoon_Sprmap_E3A1 +0xb3e3b2 kBotwoon_Sprmap_E3B2 +0xb3e3be kBotwoon_Sprmap_E3BE +0xb3e3cf kBotwoon_Sprmap_E3CF +0xb3e3db kBotwoon_Sprmap_E3DB +0xb3e3e7 kBotwoon_Sprmap_E3E7 +0xb3e3f8 kBotwoon_Sprmap_E3F8 +0xb3e404 kBotwoon_Sprmap_E404 +0xb3e415 kBotwoon_Sprmap_E415 +0xb3e421 kBotwoon_Sprmap_E421 +0xb3e42d kBotwoon_Sprmap_E42D +0xb3e439 kBotwoon_Sprmap_E439 +0xb3e445 kBotwoon_Sprmap_E445 +0xb3e451 kBotwoon_Sprmap_E451 +0xb3e45d kBotwoon_Sprmap_E45D +0xb3e469 kBotwoon_Sprmap_E469 +0xb3e475 kBotwoon_Sprmap_E475 +0xb3e481 kBotwoon_Sprmap_E481 +0xb3e48d kBotwoon_Sprmap_E48D +0xb3e499 kBotwoon_Sprmap_E499 +0xb3e4a5 kBotwoon_Sprmap_E4A5 +0xb3e4b6 kBotwoon_Sprmap_E4B6 +0xb3e4c2 kBotwoon_Sprmap_E4C2 +0xb3e4d3 kBotwoon_Sprmap_E4D3 +0xb3e4df kBotwoon_Sprmap_E4DF +0xb3e4eb kBotwoon_Sprmap_E4EB +0xb3e4fc kBotwoon_Sprmap_E4FC +0xb3e508 kBotwoon_Sprmap_E508 +0xb3e519 kBotwoon_Sprmap_E519 +0xb3e525 kEscapeEtecoon_Palette +0xb3e545 EscapeEtecoon_Instr_1 +0xb3e555 nullsub_289 +0xb3e556 kEscapeEtecoon_Ilist_E556 +0xb3e56e kEscapeEtecoon_Ilist_E56E +0xb3e582 kEscapeEtecoon_Ilist_E582 +0xb3e59a kEscapeEtecoon_Ilist_E59A +0xb3e5ae kEscapeEtecoon_Ilist_E5AE +0xb3e5c6 kEscapeEtecoon_Ilist_E5C6 +0xb3e5da kEscapeEtecoon_Ilist_E5DA +0xb3e600 kEscapeEtecoon_Ilist_E600 +0xb3e610 EscapeEtecoon_Instr_2 +0xb3e61d kEscapeEtecoon_Ilist_E61D +0xb3e623 kEscapeEtecoon_Ilist_E623 +0xb3e639 kEscapeEtecoon_Ilist_E639 +0xb3e63f kEscapeEtecoon_Ilist_E63F +0xb3e655 EscapeEtecoon_Main +0xb3e65c EscapeEtecoon_E65C +0xb3e670 EscapeEtecoon_E670 +0xb3e680 EscapeEtecoon_E680 +0xb3e6cb EscapeEtecoon_Init +0xb3e736 kEscapeEtecoon_Sprmap_E736 +0xb3e747 kEscapeEtecoon_Sprmap_E747 +0xb3e753 kEscapeEtecoon_Sprmap_E753 +0xb3e75f kEscapeEtecoon_Sprmap_E75F +0xb3e770 kEscapeEtecoon_Sprmap_E770 +0xb3e77c kEscapeEtecoon_Sprmap_E77C +0xb3e788 kEscapeEtecoon_Sprmap_E788 +0xb3e7ad kEscapeEtecoon_Sprmap_E7AD +0xb3e7d2 kEscapeEtecoon_Sprmap_E7D2 +0xb3e7f7 kEscapeEtecoon_Sprmap_E7F7 +0xb3e81c kEscapeEtecoon_Sprmap_E81C +0xb3e841 kEscapeEtecoon_Sprmap_E841 +0xb3e866 kEscapeEtecoon_Sprmap_E866 +0xb3e88b kEscapeEtecoon_Sprmap_E88B +0xb3e8b0 kEscapeEtecoon_Sprmap_E8B0 +0xb3e8d5 kEscapeEtecoon_Sprmap_E8D5 +0xb3e8fa kEscapeEtecoon_Sprmap_E8FA +0xb3e91f kEscapeEtecoon_Sprmap_E91F +0xb3e944 kEscapeDachora_Palette +0xb3e964 kEscapeDachora_Ilist_E964 +0xb3e9d0 kEscapeDachora_Ilist_E9D0 +0xb3ea34 kEscapeDachora_Ilist_EA34 +0xb3eaa8 EscapeDachora_Instr_2 +0xb3eab8 EscapeDachora_Instr_3 +0xb3eac9 EscapeDachora_Instr_1 +0xb3ead7 EscapeDachora_Instr_4 +0xb3eae5 EscapeDachora_Init +0xb3eb1a nullsub_54 +0xb3eb1b kEscapeDachora_Sprmap_EB1B +0xb3eb4a kEscapeDachora_Sprmap_EB4A +0xb3eb79 kEscapeDachora_Sprmap_EB79 +0xb3ebb2 kEscapeDachora_Sprmap_EBB2 +0xb3ebe1 kEscapeDachora_Sprmap_EBE1 +0xb3ec10 kEscapeDachora_Sprmap_EC10 +0xb3ec49 kEscapeDachora_Sprmap_EC49 +0xb3ec78 kEscapeDachora_Sprmap_EC78 +0xb3eca7 kEscapeDachora_Sprmap_ECA7 +0xb3ece0 kEscapeDachora_Sprmap_ECE0 +0xb3ed0f kEscapeDachora_Sprmap_ED0F +0xb3ed3e kEscapeDachora_Sprmap_ED3E +0xb48009 kEnemyTileset_8009 +0xb4801f kEnemyTileset_801F +0xb48031 kEnemyTileset_8031 +0xb48043 kEnemyTileset_8043 +0xb48055 kEnemyTileset_8055 +0xb48067 kEnemyTileset_8067 +0xb4807d kEnemyTileset_807D +0xb4808f kEnemyTileset_808F +0xb480a1 kEnemyTileset_80A1 +0xb480b3 kEnemyTileset_80B3 +0xb480c1 kEnemyTileset_80C1 +0xb480d3 kEnemyTileset_80D3 +0xb480dd kEnemyTileset_80DD +0xb480eb kEnemyTileset_80EB +0xb480f9 kEnemyTileset_80F9 +0xb48107 kEnemyTileset_8107 +0xb48111 kEnemyTileset_8111 +0xb4811f kEnemyTileset_811F +0xb48129 kEnemyTileset_8129 +0xb48133 kEnemyTileset_8133 +0xb48141 kEnemyTileset_8141 +0xb4814f kEnemyTileset_814F +0xb48161 kEnemyTileset_8161 +0xb4817b kEnemyTileset_817B +0xb48185 kEnemyTileset_8185 +0xb48193 kEnemyTileset_8193 +0xb481a5 kEnemyTileset_81A5 +0xb481b7 kEnemyTileset_81B7 +0xb481c1 kEnemyTileset_81C1 +0xb481d3 kEnemyTileset_81D3 +0xb481e1 kEnemyTileset_81E1 +0xb481f3 kEnemyTileset_81F3 +0xb481fd kEnemyTileset_81FD +0xb4820f kEnemyTileset_820F +0xb48221 kEnemyTileset_8221 +0xb48233 kEnemyTileset_8233 +0xb4823d kEnemyTileset_823D +0xb4824b kEnemyTileset_824B +0xb48255 kEnemyTileset_8255 +0xb4825f kEnemyTileset_825F +0xb48271 kEnemyTileset_8271 +0xb48283 kEnemyTileset_8283 +0xb48295 kEnemyTileset_8295 +0xb482a3 kEnemyTileset_82A3 +0xb482b5 kEnemyTileset_82B5 +0xb482bf kEnemyTileset_82BF +0xb482d5 kEnemyTileset_82D5 +0xb482e7 kEnemyTileset_82E7 +0xb482f1 kEnemyTileset_82F1 +0xb482fb kEnemyTileset_82FB +0xb48309 kEnemyTileset_8309 +0xb48313 kEnemyTileset_8313 +0xb48321 kEnemyTileset_8321 +0xb48333 kEnemyTileset_8333 +0xb48345 kEnemyTileset_8345 +0xb4834f kEnemyTileset_834F +0xb48361 kEnemyTileset_8361 +0xb48377 kEnemyTileset_8377 +0xb48389 kEnemyTileset_8389 +0xb483a3 kEnemyTileset_83A3 +0xb483b5 kEnemyTileset_83B5 +0xb483c7 kEnemyTileset_83C7 +0xb483d1 kEnemyTileset_83D1 +0xb483e3 kEnemyTileset_83E3 +0xb483f1 kEnemyTileset_83F1 +0xb48407 kEnemyTileset_8407 +0xb48415 kEnemyTileset_8415 +0xb4841f kEnemyTileset_841F +0xb48429 kEnemyTileset_8429 +0xb4843f kEnemyTileset_843F +0xb48449 kEnemyTileset_8449 +0xb4845b kEnemyTileset_845B +0xb48465 kEnemyTileset_8465 +0xb4846f kEnemyTileset_846F +0xb48485 kEnemyTileset_8485 +0xb4848f kEnemyTileset_848F +0xb48499 kEnemyTileset_8499 +0xb484a3 kEnemyTileset_84A3 +0xb484ad kEnemyTileset_84AD +0xb484b7 kEnemyTileset_84B7 +0xb484c9 kEnemyTileset_84C9 +0xb484d7 kEnemyTileset_84D7 +0xb484e5 kEnemyTileset_84E5 +0xb484f7 kEnemyTileset_84F7 +0xb4850d kEnemyTileset_850D +0xb4851f kEnemyTileset_851F +0xb48529 kEnemyTileset_8529 +0xb48533 kEnemyTileset_8533 +0xb48541 kEnemyTileset_8541 +0xb48557 kEnemyTileset_8557 +0xb48565 kEnemyTileset_8565 +0xb4857f kEnemyTileset_857F +0xb48595 kEnemyTileset_8595 +0xb485a7 kEnemyTileset_85A7 +0xb485b9 kEnemyTileset_85B9 +0xb485d3 kEnemyTileset_85D3 +0xb485e5 kEnemyTileset_85E5 +0xb485ef kEnemyTileset_85EF +0xb485fd kEnemyTileset_85FD +0xb48607 kEnemyTileset_8607 +0xb48615 kEnemyTileset_8615 +0xb4861f kEnemyTileset_861F +0xb4862d kEnemyTileset_862D +0xb4863f kEnemyTileset_863F +0xb48651 kEnemyTileset_8651 +0xb48663 kEnemyTileset_8663 +0xb48671 kEnemyTileset_8671 +0xb48683 kEnemyTileset_8683 +0xb48695 kEnemyTileset_8695 +0xb486a3 kEnemyTileset_86A3 +0xb486b1 kEnemyTileset_86B1 +0xb486c7 kEnemyTileset_86C7 +0xb486d5 kEnemyTileset_86D5 +0xb486ef kEnemyTileset_86EF +0xb486fd kEnemyTileset_86FD +0xb4870f kEnemyTileset_870F +0xb4871d kEnemyTileset_871D +0xb48727 kEnemyTileset_8727 +0xb4873d kEnemyTileset_873D +0xb48747 kEnemyTileset_8747 +0xb48751 kEnemyTileset_8751 +0xb4875b kEnemyTileset_875B +0xb48765 kEnemyTileset_8765 +0xb48777 kEnemyTileset_8777 +0xb48781 kEnemyTileset_8781 +0xb48793 kEnemyTileset_8793 +0xb4879d kEnemyTileset_879D +0xb487a7 kEnemyTileset_87A7 +0xb487b1 kEnemyTileset_87B1 +0xb487bb kEnemyTileset_87BB +0xb487c9 kEnemyTileset_87C9 +0xb487df kEnemyTileset_87DF +0xb487f5 kEnemyTileset_87F5 +0xb4880b kEnemyTileset_880B +0xb48825 kEnemyTileset_8825 +0xb48833 kEnemyTileset_8833 +0xb48845 kEnemyTileset_8845 +0xb4885f kEnemyTileset_885F +0xb48871 kEnemyTileset_8871 +0xb48887 kEnemyTileset_8887 +0xb48899 kEnemyTileset_8899 +0xb488a3 kEnemyTileset_88A3 +0xb488b1 kEnemyTileset_88B1 +0xb488bf kEnemyTileset_88BF +0xb488d1 kEnemyTileset_88D1 +0xb488df kEnemyTileset_88DF +0xb488e9 kEnemyTileset_88E9 +0xb488f3 kEnemyTileset_88F3 +0xb488fd kEnemyTileset_88FD +0xb48907 kEnemyTileset_8907 +0xb4891d kEnemyTileset_891D +0xb4892b kEnemyTileset_892B +0xb4893d kEnemyTileset_893D +0xb48953 kEnemyTileset_8953 +0xb48969 kEnemyTileset_8969 +0xb48973 kEnemyTileset_8973 +0xb4897d kEnemyTileset_897D +0xb4898b kEnemyTileset_898B +0xb489a5 kEnemyTileset_89A5 +0xb489b7 kEnemyTileset_89B7 +0xb489c1 kEnemyTileset_89C1 +0xb489cb kEnemyTileset_89CB +0xb489d9 kEnemyTileset_89D9 +0xb489f3 kEnemyTileset_89F3 +0xb48a01 kEnemyTileset_8A01 +0xb48a13 kEnemyTileset_8A13 +0xb48a25 kEnemyTileset_8A25 +0xb48a37 kEnemyTileset_8A37 +0xb48a49 kEnemyTileset_8A49 +0xb48a5b kEnemyTileset_8A5B +0xb48a6d kEnemyTileset_8A6D +0xb48a7b kEnemyTileset_8A7B +0xb48a8d kEnemyTileset_8A8D +0xb48a97 kEnemyTileset_8A97 +0xb48aa9 kEnemyTileset_8AA9 +0xb48abb kEnemyTileset_8ABB +0xb48acd kEnemyTileset_8ACD +0xb48adf kEnemyTileset_8ADF +0xb48aed kEnemyTileset_8AED +0xb48afb kEnemyTileset_8AFB +0xb48b11 kEnemyTileset_8B11 +0xb48b1f kEnemyTileset_8B1F +0xb48b29 kEnemyTileset_8B29 +0xb48b3b kEnemyTileset_8B3B +0xb48b4d kEnemyTileset_8B4D +0xb48b5b kEnemyTileset_8B5B +0xb48b6d kEnemyTileset_8B6D +0xb48b87 kEnemyTileset_8B87 +0xb48b99 kEnemyTileset_8B99 +0xb48baf kEnemyTileset_8BAF +0xb48bc5 kEnemyTileset_8BC5 +0xb48bcf kEnemyTileset_8BCF +0xb48bd9 kEnemyTileset_8BD9 +0xb48be3 kEnemyTileset_8BE3 +0xb48bed kEnemyTileset_8BED +0xb48bf7 kEnemyTileset_8BF7 +0xb48c01 kEnemyTileset_8C01 +0xb48c13 kEnemyTileset_8C13 +0xb48c1d kEnemyTileset_8C1D +0xb48c27 kEnemyTileset_8C27 +0xb48c31 kEnemyTileset_8C31 +0xb48c3b kEnemyTileset_8C3B +0xb48c51 kEnemyTileset_8C51 +0xb48c5b kEnemyTileset_8C5B +0xb48c6d kEnemyTileset_8C6D +0xb48c7b kEnemyTileset_8C7B +0xb48c91 kEnemyTileset_8C91 +0xb48c9b kEnemyTileset_8C9B +0xb48ca9 kEnemyTileset_8CA9 +0xb48cbf kEnemyTileset_8CBF +0xb48cd9 kEnemyTileset_8CD9 +0xb48ceb kEnemyTileset_8CEB +0xb48cf9 kEnemyTileset_8CF9 +0xb48d07 kEnemyTileset_8D07 +0xb48d1d kEnemyTileset_8D1D +0xb48d2b kEnemyTileset_8D2B +0xb48d41 kEnemyTileset_8D41 +0xb48d53 kEnemyTileset_8D53 +0xb48d65 kEnemyTileset_8D65 +0xb48d77 kEnemyTileset_8D77 +0xb48d85 kEnemyTileset_8D85 +0xb48d97 kEnemyTileset_8D97 +0xb48da5 kEnemyTileset_8DA5 +0xb48daf kEnemyTileset_8DAF +0xb48db9 kEnemyTileset_8DB9 +0xb48dcf kEnemyTileset_8DCF +0xb48dd9 kEnemyTileset_8DD9 +0xb48de3 kEnemyTileset_8DE3 +0xb48df1 kEnemyTileset_8DF1 +0xb48dff kEnemyTileset_8DFF +0xb48e1e kEnemyTilesets_8E1E +0xb48e2c kEnemyTilesets_8E2C +0xb48e42 kEnemyTilesets_8E42 +0xb48e54 kEnemyTilesets_8E54 +0xb48e5e kEnemyTilesets_8E5E +0xb48e74 kEnemyTilesets_8E74 +0xb48e7e kEnemyTilesets_8E7E +0xb48e8c kEnemyTilesets_8E8C +0xb48e96 kEnemyTilesets_8E96 +0xb48ea8 kEnemyTilesets_8EA8 +0xb48eb6 kEnemyTilesets_8EB6 +0xb48ec4 kEnemyTilesets_8EC4 +0xb48ed6 kEnemyTilesets_8ED6 +0xb48eec kEnemyTilesets_8EEC +0xb48efa kEnemyTilesets_8EFA +0xb48f0c kEnemyTilesets_8F0C +0xb48f22 kEnemyTilesets_8F22 +0xb48f38 kEnemyTilesets_8F38 +0xb48f52 kEnemyTilesets_8F52 +0xb48f60 kEnemyTilesets_8F60 +0xb48f6a kEnemyTilesets_8F6A +0xb48f78 kEnemyTilesets_8F78 +0xb48f86 kEnemyTilesets_8F86 +0xb48f94 kEnemyTilesets_8F94 +0xb48fa2 kEnemyTilesets_8FA2 +0xb48fb8 kEnemyTilesets_8FB8 +0xb48fca kEnemyTilesets_8FCA +0xb48fd4 kEnemyTilesets_8FD4 +0xb48fe6 kEnemyTilesets_8FE6 +0xb48ffc kEnemyTilesets_8FFC +0xb49006 kEnemyTilesets_9006 +0xb49010 kEnemyTilesets_9010 +0xb4901a kEnemyTilesets_901A +0xb49028 kEnemyTilesets_9028 +0xb4903a kEnemyTilesets_903A +0xb4904c kEnemyTilesets_904C +0xb4905e kEnemyTilesets_905E +0xb4906c kEnemyTilesets_906C +0xb4907a kEnemyTilesets_907A +0xb4908c kEnemyTilesets_908C +0xb4909e kEnemyTilesets_909E +0xb490b0 kEnemyTilesets_90B0 +0xb490c2 kEnemyTilesets_90C2 +0xb490cc kEnemyTilesets_90CC +0xb490de kEnemyTilesets_90DE +0xb490ec kEnemyTilesets_90EC +0xb49102 kEnemyTilesets_9102 +0xb49118 kEnemyTilesets_9118 +0xb49122 kEnemyTilesets_9122 +0xb49130 kEnemyTilesets_9130 +0xb4913e kEnemyTilesets_913E +0xb49148 kEnemyTilesets_9148 +0xb4915a kEnemyTilesets_915A +0xb4916c kEnemyTilesets_916C +0xb4917a kEnemyTilesets_917A +0xb49188 kEnemyTilesets_9188 +0xb49196 kEnemyTilesets_9196 +0xb491a4 kEnemyTilesets_91A4 +0xb491b2 kEnemyTilesets_91B2 +0xb491c4 kEnemyTilesets_91C4 +0xb491ce kEnemyTilesets_91CE +0xb491d8 kEnemyTilesets_91D8 +0xb491ee kEnemyTilesets_91EE +0xb491f8 kEnemyTilesets_91F8 +0xb4920a kEnemyTilesets_920A +0xb49218 kEnemyTilesets_9218 +0xb49226 kEnemyTilesets_9226 +0xb49234 kEnemyTilesets_9234 +0xb49242 kEnemyTilesets_9242 +0xb49250 kEnemyTilesets_9250 +0xb4925e kEnemyTilesets_925E +0xb49270 kEnemyTilesets_9270 +0xb4927e kEnemyTilesets_927E +0xb4928c kEnemyTilesets_928C +0xb4929a kEnemyTilesets_929A +0xb492a8 kEnemyTilesets_92A8 +0xb492b6 kEnemyTilesets_92B6 +0xb492c6 DebugHandler_7 +0xb494b8 DebugHandler_8 +0xb494d5 DebugHandler_9 +0xb49758 DebugHandler_16 +0xb49809 DebugHandler_IGNORE +0xb49841 DebugHandler_4 +0xb4986a DebugHandler_3 +0xb498da DebugHandler_1 +0xb49925 DebugHandler_2 +0xb49961 DebugHandler_0 +0xb49a1d DebugHandler_5 +0xb49a59 DebugHandler_6 +0xb49bd5 DebugHandler_10 +0xb49c5d DebugHandler_11 +0xb49ce5 DebugHandler_12 +0xb49d6d DebugHandler_13 +0xb49df5 DebugHandler_14 +0xb49e7d DebugHandler_15 +0xb49f05 DebugHandler_6_Helper +0xb49f36 DebugHandler_6_Helper2 +0xb49f7e Draww4DigitHexValue +0xb4a01d Debug_AddSpritemapToOam +0xb4bc26 CreateSpriteAtPos +0xb4bc82 HandleSpriteObjects +0xb4bcf0 SpriteObject_Instr_RepeatLast +0xb4bd07 SpriteObject_Instr_Terminate +0xb4bd12 SpriteObject_Instr_Goto +0xb4bd32 DrawSpriteObjects +0xb4bd97 ClearSpriteObjects +0xb4bda8 kCreateSprite_Ilists +0xb4be24 kSpriteObject_Ilist_BE24 +0xb4be46 kSpriteObject_Ilist_BE46 +0xb4be54 kSpriteObject_Ilist_BE54 +0xb4be5a kSpriteObject_Ilist_BE5A +0xb4be6c kSpriteObject_Ilist_BE6C +0xb4be86 kSpriteObject_Ilist_BE86 +0xb4bea4 kSpriteObject_Ilist_BEA4 +0xb4bebe kSpriteObject_Ilist_BEBE +0xb4bed4 kSpriteObject_Ilist_BED4 +0xb4beea kSpriteObject_Ilist_BEEA +0xb4bf04 kSpriteObject_Ilist_BF04 +0xb4bf12 kSpriteObject_Ilist_BF12 +0xb4bf1c kSpriteObject_Ilist_BF1C +0xb4bf32 kSpriteObject_Ilist_BF32 +0xb4bf44 kSpriteObject_Ilist_BF44 +0xb4bf56 kSpriteObject_Ilist_BF56 +0xb4bf68 kSpriteObject_Ilist_BF68 +0xb4bf74 kSpriteObject_Ilist_BF74 +0xb4bf8e kSpriteObject_Ilist_BF8E +0xb4bfa0 kSpriteObject_Ilist_BFA0 +0xb4bfb2 kSpriteObject_Ilist_BFB2 +0xb4bfc4 kSpriteObject_Ilist_BFC4 +0xb4bfd2 kSpriteObject_Ilist_BFD2 +0xb4c014 kSpriteObject_Ilist_C014 +0xb4c026 kSpriteObject_Ilist_C026 +0xb4c040 kSpriteObject_Ilist_C040 +0xb4c05e kSpriteObject_Ilist_C05E +0xb4c080 kSpriteObject_Ilist_C080 +0xb4c0fe kSpriteObject_Ilist_C0FE +0xb4c10c kSpriteObject_Ilist_C10C +0xb4c132 kSpriteObject_Ilist_C132 +0xb4c154 kSpriteObject_Ilist_C154 +0xb4c176 kSpriteObject_Ilist_C176 +0xb4c198 kSpriteObject_Ilist_C198 +0xb4c1ac kSpriteObject_Ilist_C1AC +0xb4c1c0 kSpriteObject_Ilist_C1C0 +0xb4c1d4 kSpriteObject_Ilist_C1D4 +0xb4c1e8 kSpriteObject_Ilist_C1E8 +0xb4c1fc kSpriteObject_Ilist_C1FC +0xb4c210 kSpriteObject_Ilist_C210 +0xb4c224 kSpriteObject_Ilist_C224 +0xb4c238 kSpriteObject_Ilist_C238 +0xb4c258 kSpriteObject_Ilist_C258 +0xb4c2a0 kSpriteObject_Ilist_C2A0 +0xb4c2bc kSpriteObject_Ilist_C2BC +0xb4c304 kSpriteObject_Ilist_C304 +0xb4c30a kSpriteObject_Ilist_C30A +0xb4c33e kSpriteObject_Ilist_C33E +0xb4c35c kSpriteObject_Ilist_C35C +0xb4c37a kSpriteObject_Ilist_C37A +0xb4c390 kSpriteObject_Ilist_C390 +0xb4c3a2 kSpriteObject_Ilist_C3A2 +0xb4c3ba kSpriteObject_Ilist_C3BA +0xb4c436 kSpriteObject_Ilist_C436 +0xb4c4b6 kSpriteObject_Ilist_C4B6 +0xb4c536 kSpriteObject_Ilist_C536 +0xb4c5b2 kSpriteObject_Ilist_C5B2 +0xb4c5c6 kSpriteObject_Ilist_C5C6 +0xb4c5d8 kSpriteObject_Ilist_C5D8 +0xb4c5de kSpriteObject_Ilist_C5DE +0xb4c5e4 kSpriteObject_Ilist_C5E4 +0xb4c608 kSpriteObject_Ilist_C608 +0xb4c61c kSpriteObject_Ilist_C61C +0xb4c630 kSpriteObject_Sprmap_C630 +0xb4c637 kSpriteObject_Sprmap_C637 +0xb4c63e kSpriteObject_Sprmap_C63E +0xb4c645 kSpriteObject_Sprmap_C645 +0xb4c64c kSpriteObject_Sprmap_C64C +0xb4c653 kSpriteObject_Sprmap_C653 +0xb4c65a kSpriteObject_Sprmap_C65A +0xb4c661 kSpriteObject_Sprmap_C661 +0xb4c668 kSpriteObject_Sprmap_C668 +0xb4c66f kSpriteObject_Sprmap_C66F +0xb4c676 kSpriteObject_Sprmap_C676 +0xb4c67d kSpriteObject_Sprmap_C67D +0xb4c684 kSpriteObject_Sprmap_C684 +0xb4c68b kSpriteObject_Sprmap_C68B +0xb4c692 kSpriteObject_Sprmap_C692 +0xb4c699 kSpriteObject_Sprmap_C699 +0xb4c6a0 kSpriteObject_Sprmap_C6A0 +0xb4c6a7 kSpriteObject_Sprmap_C6A7 +0xb4c6ae kSpriteObject_Sprmap_C6AE +0xb4c6b5 kSpriteObject_Sprmap_C6B5 +0xb4c6bc kSpriteObject_Sprmap_C6BC +0xb4c6c3 kSpriteObject_Sprmap_C6C3 +0xb4c6ca kSpriteObject_Sprmap_C6CA +0xb4c6d1 kSpriteObject_Sprmap_C6D1 +0xb4c6d8 kSpriteObject_Sprmap_C6D8 +0xb4c6ee kSpriteObject_Sprmap_C6EE +0xb4c704 kSpriteObject_Sprmap_C704 +0xb4c71a kSpriteObject_Sprmap_C71A +0xb4c730 kSpriteObject_Sprmap_C730 +0xb4c746 kSpriteObject_Sprmap_C746 +0xb4c75c kSpriteObject_Sprmap_C75C +0xb4c772 kSpriteObject_Sprmap_C772 +0xb4c788 kSpriteObject_Sprmap_C788 +0xb4c79e kSpriteObject_Sprmap_C79E +0xb4c7b4 kSpriteObject_Sprmap_C7B4 +0xb4c7ca kSpriteObject_Sprmap_C7CA +0xb4c7e0 kSpriteObject_Sprmap_C7E0 +0xb4c7f6 kSpriteObject_Sprmap_C7F6 +0xb4c80c kSpriteObject_Sprmap_C80C +0xb4c822 kSpriteObject_Sprmap_C822 +0xb4c838 kSpriteObject_Sprmap_C838 +0xb4c83f kSpriteObject_Sprmap_C83F +0xb4c84b kSpriteObject_Sprmap_C84B +0xb4c85c kSpriteObject_Sprmap_C85C +0xb4c872 kSpriteObject_Sprmap_C872 +0xb4c888 kSpriteObject_Sprmap_C888 +0xb4c899 kSpriteObject_Sprmap_C899 +0xb4c8a5 kSpriteObject_Sprmap_C8A5 +0xb4c8ac kSpriteObject_Sprmap_C8AC +0xb4c8b3 kSpriteObject_Sprmap_C8B3 +0xb4c8ba kSpriteObject_Sprmap_C8BA +0xb4c8c6 kSpriteObject_Sprmap_C8C6 +0xb4c8d2 kSpriteObject_Sprmap_C8D2 +0xb4c8e3 kSpriteObject_Sprmap_C8E3 +0xb4c8f4 kSpriteObject_Sprmap_C8F4 +0xb4c90a kSpriteObject_Sprmap_C90A +0xb4c920 kSpriteObject_Sprmap_C920 +0xb4c927 kSpriteObject_Sprmap_C927 +0xb4c938 kSpriteObject_Sprmap_C938 +0xb4c949 kSpriteObject_Sprmap_C949 +0xb4c95a kSpriteObject_Sprmap_C95A +0xb4c96b kSpriteObject_Sprmap_C96B +0xb4c97c kSpriteObject_Sprmap_C97C +0xb4c98d kSpriteObject_Sprmap_C98D +0xb4c999 kSpriteObject_Sprmap_C999 +0xb4c9a0 kSpriteObject_Sprmap_C9A0 +0xb4c9b6 kSpriteObject_Sprmap_C9B6 +0xb4c9cc kSpriteObject_Sprmap_C9CC +0xb4c9e2 kSpriteObject_Sprmap_C9E2 +0xb4c9f8 kSpriteObject_Sprmap_C9F8 +0xb4ca0e kSpriteObject_Sprmap_CA0E +0xb4ca24 kSpriteObject_Sprmap_CA24 +0xb4ca3a kSpriteObject_Sprmap_CA3A +0xb4ca50 kSpriteObject_Sprmap_CA50 +0xb4ca5c kSpriteObject_Sprmap_CA5C +0xb4ca63 kSpriteObject_Sprmap_CA63 +0xb4ca6f kSpriteObject_Sprmap_CA6F +0xb4ca7b kSpriteObject_Sprmap_CA7B +0xb4ca8c kSpriteObject_Sprmap_CA8C +0xb4ca9d kSpriteObject_Sprmap_CA9D +0xb4cab3 kSpriteObject_Sprmap_CAB3 +0xb4cac9 kSpriteObject_Sprmap_CAC9 +0xb4cad0 kSpriteObject_Sprmap_CAD0 +0xb4cad7 kSpriteObject_Sprmap_CAD7 +0xb4cade kSpriteObject_Sprmap_CADE +0xb4caf4 kSpriteObject_Sprmap_CAF4 +0xb4cb05 kSpriteObject_Sprmap_CB05 +0xb4cb16 kSpriteObject_Sprmap_CB16 +0xb4cb27 kSpriteObject_Sprmap_CB27 +0xb4cb38 kSpriteObject_Sprmap_CB38 +0xb4cb49 kSpriteObject_Sprmap_CB49 +0xb4cb5a kSpriteObject_Sprmap_CB5A +0xb4cb6b kSpriteObject_Sprmap_CB6B +0xb4cb7c kSpriteObject_Sprmap_CB7C +0xb4cb8d kSpriteObject_Sprmap_CB8D +0xb4cb9e kSpriteObject_Sprmap_CB9E +0xb4cbaf kSpriteObject_Sprmap_CBAF +0xb4cbc0 kSpriteObject_Sprmap_CBC0 +0xb4cbc7 kSpriteObject_Sprmap_CBC7 +0xb4cbdd kSpriteObject_Sprmap_CBDD +0xb4cbf3 kSpriteObject_Sprmap_CBF3 +0xb4cc09 kSpriteObject_Sprmap_CC09 +0xb4cc1f kSpriteObject_Sprmap_CC1F +0xb4cc35 kSpriteObject_Sprmap_CC35 +0xb4cc4b kSpriteObject_Sprmap_CC4B +0xb4cc61 kSpriteObject_Sprmap_CC61 +0xb4cc77 kSpriteObject_Sprmap_CC77 +0xb4cc8d kSpriteObject_Sprmap_CC8D +0xb4cca3 kSpriteObject_Sprmap_CCA3 +0xb4ccb9 kSpriteObject_Sprmap_CCB9 +0xb4ccc0 kSpriteObject_Sprmap_CCC0 +0xb4ccc7 kSpriteObject_Sprmap_CCC7 +0xb4ccce kSpriteObject_Sprmap_CCCE +0xb4ccd5 kSpriteObject_Sprmap_CCD5 +0xb4ccdc kSpriteObject_Sprmap_CCDC +0xb4cce3 kSpriteObject_Sprmap_CCE3 +0xb4ccea kSpriteObject_Sprmap_CCEA +0xb4ccf1 kSpriteObject_Sprmap_CCF1 +0xb4ccf8 kSpriteObject_Sprmap_CCF8 +0xb4ccff kSpriteObject_Sprmap_CCFF +0xb4cd15 kSpriteObject_Sprmap_CD15 +0xb4cd2b kSpriteObject_Sprmap_CD2B +0xb4cd41 kSpriteObject_Sprmap_CD41 +0xb4cd57 kSpriteObject_Sprmap_CD57 +0xb4cd6d kSpriteObject_Sprmap_CD6D +0xb4cd83 kSpriteObject_Sprmap_CD83 +0xb4cd99 kSpriteObject_Sprmap_CD99 +0xb4cda0 kSpriteObject_Sprmap_CDA0 +0xb4cda7 kSpriteObject_Sprmap_CDA7 +0xb4cdae kSpriteObject_Sprmap_CDAE +0xb4cdb5 kSpriteObject_Sprmap_CDB5 +0xb4cdbc kSpriteObject_Sprmap_CDBC +0xb4cdc3 kSpriteObject_Sprmap_CDC3 +0xb4cdca kSpriteObject_Sprmap_CDCA +0xb4cdd1 kSpriteObject_Sprmap_CDD1 +0xb4cdd8 kSpriteObject_Sprmap_CDD8 +0xb4cddf kSpriteObject_Sprmap_CDDF +0xb4cde6 kSpriteObject_Sprmap_CDE6 +0xb4cded kSpriteObject_Sprmap_CDED +0xb4cdf4 kSpriteObject_Sprmap_CDF4 +0xb4cdfb kSpriteObject_Sprmap_CDFB +0xb4ce02 kSpriteObject_Sprmap_CE02 +0xb4ce09 kSpriteObject_Sprmap_CE09 +0xb4ce10 kSpriteObject_Sprmap_CE10 +0xb4ce17 kSpriteObject_Sprmap_CE17 +0xb4ce1e kSpriteObject_Sprmap_CE1E +0xb4ce25 kSpriteObject_Sprmap_CE25 +0xb4ce2c kSpriteObject_Sprmap_CE2C +0xb4ce33 kSpriteObject_Sprmap_CE33 +0xb4ce3a kSpriteObject_Sprmap_CE3A +0xb4ce50 kSpriteObject_Sprmap_CE50 +0xb4ce66 kSpriteObject_Sprmap_CE66 +0xb4ce7c kSpriteObject_Sprmap_CE7C +0xb4ce83 kSpriteObject_Sprmap_CE83 +0xb4ce8a kSpriteObject_Sprmap_CE8A +0xb4ce91 kSpriteObject_Sprmap_CE91 +0xb4ce98 kSpriteObject_Sprmap_CE98 +0xb4ce9f kSpriteObject_Sprmap_CE9F +0xb4ceab kSpriteObject_Sprmap_CEAB +0xb4cebc kSpriteObject_Sprmap_CEBC +0xb4cec8 kSpriteObject_Sprmap_CEC8 +0xb4ced9 kSpriteObject_Sprmap_CED9 +0xb4cee5 kSpriteObject_Sprmap_CEE5 +0xb4cef6 kSpriteObject_Sprmap_CEF6 +0xb4cf02 kSpriteObject_Sprmap_CF02 +0xb4cf13 kSpriteObject_Sprmap_CF13 +0xb4cf1f kSpriteObject_Sprmap_CF1F +0xb4cf30 kSpriteObject_Sprmap_CF30 +0xb4cf3c kSpriteObject_Sprmap_CF3C +0xb4cf4d kSpriteObject_Sprmap_CF4D +0xb4cf59 kSpriteObject_Sprmap_CF59 +0xb4cf6a kSpriteObject_Sprmap_CF6A +0xb4cf76 kSpriteObject_Sprmap_CF76 +0xb4cf87 kSpriteObject_Sprmap_CF87 +0xb4cf8e kSpriteObject_Sprmap_CF8E +0xb4cf95 kSpriteObject_Sprmap_CF95 +0xb4cf9c kSpriteObject_Sprmap_CF9C +0xb4cfa3 kSpriteObject_Sprmap_CFA3 +0xb4cfb9 kSpriteObject_Sprmap_CFB9 +0xb4cfcf kSpriteObject_Sprmap_CFCF +0xb4cfe5 kSpriteObject_Sprmap_CFE5 +0xb4d023 kSpriteObject_Sprmap_D023 +0xb4d04d kSpriteObject_Sprmap_D04D +0xb4d08b kSpriteObject_Sprmap_D08B +0xb4d0ba kSpriteObject_Sprmap_D0BA +0xb4d0e9 kSpriteObject_Sprmap_D0E9 +0xb4d118 kSpriteObject_Sprmap_D118 +0xb4d147 kSpriteObject_Sprmap_D147 +0xb4d176 kSpriteObject_Sprmap_D176 +0xb4d1a5 kSpriteObject_Sprmap_D1A5 +0xb4d1d4 kSpriteObject_Sprmap_D1D4 +0xb4d1ef kSpriteObject_Sprmap_D1EF +0xb4d20a kSpriteObject_Sprmap_D20A +0xb4d225 kSpriteObject_Sprmap_D225 +0xb4d245 kSpriteObject_Sprmap_D245 +0xb4d256 kSpriteObject_Sprmap_D256 +0xb4d276 kSpriteObject_Sprmap_D276 +0xb4d296 kSpriteObject_Sprmap_D296 +0xb4d2ac kSpriteObject_Sprmap_D2AC +0xb4d2b3 kSpriteObject_Sprmap_D2B3 +0xb4d2e2 kSpriteObject_Sprmap_D2E2 +0xb4d311 kSpriteObject_Sprmap_D311 +0xb4d340 kSpriteObject_Sprmap_D340 +0xb4d36f kSpriteObject_Sprmap_D36F +0xb4d39e kSpriteObject_Sprmap_D39E +0xb4d3cd kSpriteObject_Sprmap_D3CD +0xb4d3fc kSpriteObject_Sprmap_D3FC +0xb4d417 kSpriteObject_Sprmap_D417 +0xb4d432 kSpriteObject_Sprmap_D432 +0xb4d44d kSpriteObject_Sprmap_D44D +0xb4d46d kSpriteObject_Sprmap_D46D +0xb4d47e kSpriteObject_Sprmap_D47E +0xb4d49e kSpriteObject_Sprmap_D49E +0xb4d4be kSpriteObject_Sprmap_D4BE +0xb4d4c5 kSpriteObject_Sprmap_D4C5 +0xb4d4cc kSpriteObject_Sprmap_D4CC +0xb4d4d3 kSpriteObject_Sprmap_D4D3 +0xb4d4da kSpriteObject_Sprmap_D4DA +0xb4d4e1 kSpriteObject_Sprmap_D4E1 +0xb4d4e8 kSpriteObject_Sprmap_D4E8 +0xb4d4ef kSpriteObject_Sprmap_D4EF +0xb4d4f6 kSpriteObject_Sprmap_D4F6 +0xb4d4fd kSpriteObject_Sprmap_D4FD +0xb4d504 kSpriteObject_Sprmap_D504 +0xb4d50b kSpriteObject_Sprmap_D50B +0xb4d512 kSpriteObject_Sprmap_D512 +0xb4d519 kSpriteObject_Sprmap_D519 +0xb4d520 kSpriteObject_Sprmap_D520 +0xb4d527 kSpriteObject_Sprmap_D527 +0xb4d52e kSpriteObject_Sprmap_D52E +0xb4d535 kSpriteObject_Sprmap_D535 +0xb4d53c kSpriteObject_Sprmap_D53C +0xb4d543 kSpriteObject_Sprmap_D543 +0xb4d54a kSpriteObject_Sprmap_D54A +0xb4d551 kSpriteObject_Sprmap_D551 +0xb4d558 kSpriteObject_Sprmap_D558 +0xb4d564 kSpriteObject_Sprmap_D564 +0xb4d570 kSpriteObject_Sprmap_D570 +0xb4d57c kSpriteObject_Sprmap_D57C +0xb4d588 kSpriteObject_Sprmap_D588 +0xb4d594 kSpriteObject_Sprmap_D594 +0xb4d59b kSpriteObject_Sprmap_D59B +0xb4d5a2 kSpriteObject_Sprmap_D5A2 +0xb4d5a9 kSpriteObject_Sprmap_D5A9 +0xb4d5b0 kSpriteObject_Sprmap_D5B0 +0xb4d5b7 kSpriteObject_Sprmap_D5B7 +0xb4d5eb kSpriteObject_Sprmap_D5EB +0xb4d61f kSpriteObject_Sprmap_D61F +0xb4d653 kSpriteObject_Sprmap_D653 +0xb4d67d kSpriteObject_Sprmap_D67D +0xb4d69d kSpriteObject_Sprmap_D69D +0xb4d6c7 kSpriteObject_Sprmap_D6C7 +0xb4d6f1 kSpriteObject_Sprmap_D6F1 +0xb4d702 kSpriteObject_Sprmap_D702 +0xb4d713 kSpriteObject_Sprmap_D713 +0xb4d724 kSpriteObject_Sprmap_D724 +0xb4d73a kSpriteObject_Sprmap_D73A +0xb4d750 kSpriteObject_Sprmap_D750 +0xb4d766 kSpriteObject_Sprmap_D766 +0xb4d777 kSpriteObject_Sprmap_D777 +0xb4d788 kSpriteObject_Sprmap_D788 +0xb4d799 kSpriteObject_Sprmap_D799 +0xb4d7af kSpriteObject_Sprmap_D7AF +0xb4d7c5 kSpriteObject_Sprmap_D7C5 +0xb4d7db kSpriteObject_Sprmap_D7DB +0xb4d7e7 kSpriteObject_Sprmap_D7E7 +0xb4d7ee kSpriteObject_Sprmap_D7EE +0xb4d7fa kSpriteObject_Sprmap_D7FA +0xb4d806 kSpriteObject_Sprmap_D806 +0xb4d812 kSpriteObject_Sprmap_D812 +0xb4d81e kSpriteObject_Sprmap_D81E +0xb4d82a kSpriteObject_Sprmap_D82A +0xb4d836 kSpriteObject_Sprmap_D836 +0xb4d842 kSpriteObject_Sprmap_D842 +0xb4d849 kSpriteObject_Sprmap_D849 +0xb4d850 kSpriteObject_Sprmap_D850 +0xb4d857 kSpriteObject_Sprmap_D857 +0xb4d86d kSpriteObject_Sprmap_D86D +0xb4d883 kSpriteObject_Sprmap_D883 +0xb4d899 kSpriteObject_Sprmap_D899 +0xb4d8af kSpriteObject_Sprmap_D8AF +0xb4d8b6 kSpriteObject_Sprmap_D8B6 +0xb4d8bd kSpriteObject_Sprmap_D8BD +0xb4d905 kSpriteObject_Sprmap_D905 +0xb4d957 kSpriteObject_Sprmap_D957 +0xb4d9a9 kSpriteObject_Sprmap_D9A9 +0xb4d9fb kSpriteObject_Sprmap_D9FB +0xb4da48 kSpriteObject_Sprmap_DA48 +0xb4da90 kSpriteObject_Sprmap_DA90 +0xb4dad8 kSpriteObject_Sprmap_DAD8 +0xb4db25 kSpriteObject_Sprmap_DB25 +0xb4db3b kSpriteObject_Sprmap_DB3B +0xb4db42 kSpriteObject_Sprmap_DB42 +0xb4db80 kSpriteObject_Sprmap_DB80 +0xb4dbbe kSpriteObject_Sprmap_DBBE +0xb4dbfc kSpriteObject_Sprmap_DBFC +0xb4dc3f kSpriteObject_Sprmap_DC3F +0xb4dc7d kSpriteObject_Sprmap_DC7D +0xb4dcbb kSpriteObject_Sprmap_DCBB +0xb4dcf9 kSpriteObject_Sprmap_DCF9 +0xb4dd3c kSpriteObject_Sprmap_DD3C +0xb4dd43 kSpriteObject_Sprmap_DD43 +0xb4dd4a kSpriteObject_Sprmap_DD4A +0xb4dd51 kSpriteObject_Sprmap_DD51 +0xb4dd58 kSpriteObject_Sprmap_DD58 +0xb4dd5f kSpriteObject_Sprmap_DD5F +0xb4dd66 kSpriteObject_Sprmap_DD66 +0xb4dd6d kSpriteObject_Sprmap_DD6D +0xb4dd74 kSpriteObject_Sprmap_DD74 +0xb4dd7b kSpriteObject_Sprmap_DD7B +0xb4dd82 kSpriteObject_Sprmap_DD82 +0xb4dd97 kEnemyName_ATOMIC +0xb4dda5 kEnemyName_BANG +0xb4ddb3 kEnemyName_BATTA1 +0xb4ddc1 kEnemyName_BATTA2 +0xb4ddcf kEnemyName_BATTA3 +0xb4dddd kEnemyName_BOTOON +0xb4ddeb kEnemyName_BOYON +0xb4ddf9 kEnemyName_DESSGEEGA +0xb4de07 kEnemyName_DORI +0xb4de15 kEnemyName_DRAGON +0xb4de23 kEnemyName_EBI +0xb4de31 kEnemyName_EYE +0xb4de3f kEnemyName_NAMI +0xb4de4d kEnemyName_FISH +0xb4de5b kEnemyName_GAI +0xb4de69 kEnemyName_GAMET +0xb4de77 kEnemyName_GEEGA +0xb4de85 kEnemyName_GERUDA +0xb4dea1 kEnemyName_HACHI1 +0xb4deaf kEnemyName_HAND +0xb4debd kEnemyName_HIBASHI +0xb4decb kEnemyName_HIRU +0xb4ded9 kEnemyName_HOLTZ +0xb4dee7 kEnemyName_HOTARY +0xb4def5 kEnemyName_HZOOMER +0xb4df03 kEnemyName_KAGO +0xb4df11 kEnemyName_KAME +0xb4df1f kEnemyName_KAMER +0xb4df2d kEnemyName_KANI +0xb4df3b kEnemyName_KOMA +0xb4df49 kEnemyName_KZAN +0xb4df57 kEnemyName_LAVAMAN +0xb4df65 kEnemyName_MELLA +0xb4df73 kEnemyName_MEMU +0xb4df81 kEnemyName_MERO +0xb4df8f kEnemyName_METALEE +0xb4df9d kEnemyName_METMOD +0xb4dfab kEnemyName_METROID +0xb4dfb9 kEnemyName_MULTI +0xb4dfc7 kEnemyName_MZOOMER +0xb4dfd5 kEnemyName_NDRA +0xb4dfe3 kEnemyName_NOMI +0xb4dff1 kEnemyName_NOVA +0xb4dfff kEnemyName_OUM +0xb4e00d kEnemyName_OUMU +0xb4e01b kEnemyName_PIPE +0xb4e029 kEnemyName_POLYP +0xb4e037 kEnemyName_PUROMI +0xb4e045 kEnemyName_PUU +0xb4e053 kEnemyName_PUYO +0xb4e061 kEnemyName_REFLEC +0xb4e06f kEnemyName_RINKA +0xb4e07d kEnemyName_RIO +0xb4e08b kEnemyName_RIPPER +0xb4e099 kEnemyName_RIPPER2 +0xb4e0a7 kEnemyName_ROBO +0xb4e0b5 kEnemyName_RSTONE +0xb4e0c3 kEnemyName_SABOTEN +0xb4e0d1 kEnemyName_SBUG +0xb4e0df kEnemyName_SCLAYD +0xb4e0ed kEnemyName_SDEATH +0xb4e0fb kEnemyName_SHUTTER +0xb4e109 kEnemyName_SHUTTER2 +0xb4e117 kEnemyName_SIDE +0xb4e125 kEnemyName_SKREE +0xb4e133 kEnemyName_SPA +0xb4e141 kEnemyName_SQUEEWPT +0xb4e14f kEnemyName_SSIDE +0xb4e15d kEnemyName_STOKE +0xb4e16b kEnemyName_TOGE +0xb4e179 kEnemyName_VIOLA +0xb4e187 kEnemyName_WAVER +0xb4e195 kEnemyName_YARD +0xb4e1a3 kEnemyName_ZEB +0xb4e1b1 kEnemyName_ZEBBO +0xb4e1bf kEnemyName_ZEELA +0xb4e1cd kEnemyName_ZOA +0xb4e1db kEnemyName_ZOOMER +0xb4e1e9 kEnemyName_BATTA1Br +0xb4e1f7 kEnemyName_BATTA1No +0xb4e205 kEnemyName_BATTA1Na +0xb4e213 kEnemyName_BATTA1Ma +0xb4e221 kEnemyName_BATTA1Tu +0xb4e22f kEnemyName_BATTA2Br +0xb4e23d kEnemyName_BATTA2No +0xb4e24b kEnemyName_BATTA2Na +0xb4e259 kEnemyName_BATTA2Ma +0xb4e267 kEnemyName_BATTA2Tu +0xb4e275 kEnemyName_BATTA3Br +0xb4e283 kEnemyName_BATTA3No +0xb4e291 kEnemyName_BATTA3Na +0xb4e29f kEnemyName_BATTA3Ma +0xb4e2ad kEnemyName_BATTA3Tu +0xb4e2bb kEnemyName_FUNE +0xb4e2c9 kEnemyName_HACHI2 +0xb4e2d7 kEnemyName_HACHI3 +0xb4e2e5 kEnemyName_ROBO2 +0xb58000 kPauseMenuMap_Brinstar +0xb59000 kPauseMenuMap_Crateria +0xb5a000 kPauseMenuMap_Norfair +0xb5b000 kPauseMenuMap_WreckedShip +0xb5c000 kPauseMenuMap_Maridia +0xb5d000 kPauseMenuMap_Tourian +0xb5e000 kPauseMenuMap_Ceres +0xb68000 kPauseMenuBG1BG2Tiles +0xb6c000 kPauseMenuSpriteTiles +0xb6e000 kBg2RoomSelectMapTilemap +0xb6e800 kEquipmentScreenTilemap +0xb6f000 kPauseScreenPalettes +0xb78000 kMotherBrain_Brain_TileData +0xb79000 kMotherBrain_Legs_TileData +0xb7a000 kMotherBrain_Related_TileData +0xb7a800 kDeadTorizo_TileData +0xb7c000 kDeadMonsters_TileData +0xb7ce00 kMotherBrain_Misc_TileData +0xb7da00 kEscapeTimerText_TileData +0xb7e300 kBotwoon_TileData +0xb7fb00 kEnemy_UnusedSpinningTurtleEye +0xb9a09d kCompressedCreTileTable +0xbbae9e kTileset4_5_WreckedShip +0xbbe6b0 kTileset6_GreenBlueBrinstar +0xbca5aa kTileset7_8_RedBrinstar +0xbcdff0 kTileset1A_KraidsRoom +0xbdc3f9 kTileset_9_A_Norfair +0xbdfe2a kTileset_1B_Crocomire +0xbeb130 kTileset_B_SandlessMaridia +0xbee78d kTileset_C_SandyMaridia +0xbf9dea kTileset_1C_DraygonsRoom +0xbfd414 kTileset_D_E_Tourian +0xc0860b kTileset_15_to_19_UtilityRooms +0xc0b004 kTileset_F_10_Ceres +0xc0e22a kTileset_11_12_CeresElevator +0xc18da9 kTileset_13_14_CeresRidleyRoom diff --git a/assets/palfx_decode.py b/assets/palfx_decode.py new file mode 100644 index 0000000..615d691 --- /dev/null +++ b/assets/palfx_decode.py @@ -0,0 +1,95 @@ +from decode_common import * + +BANK = 0x8D + +kInstructionSet = { + 0x8dc595: ('Wait', ''), + 0x8dc599: ('ColorPlus2', ''), + 0x8dc5a2: ('ColorPlus3', ''), + 0x8dc5ab: ('ColorPlus4', ''), + 0x8dc5b4: ('ColorPlus8', ''), + 0x8dc5bd: ('ColorPlus9', ''), + 0x8dc5c6: ('ColorPlus15', ''), + 0x8dc5cf: ('Delete', ''), + 0x8dc5d4: ('SetPreInstr', 'A'), + 0x8dc5dd: ('ClearPreInstr', ''), + 0x8dc61e: ('Goto', 'G'), + 0x8dc639: ('DecTimerGoto', 'G'), + 0x8dc648: ('SetTimer', 'B'), + 0x8dc655: ('SetColorIndex', 'H'), + 0x8dc65e: ('QueueMusic', 'B'), + 0x8dc66a: ('QueueSfx1', 'B'), + 0x8dc673: ('QueueSfx2', 'B'), + 0x8dc67c: ('QueueSfx3', 'B'), + 0x8df1c6: ('SetPalfxIndex', 'B'), +} + +kCommandByName = {v[0] : (k, v[1]) for k, v in kInstructionSet.items()} + +class PalfxParser(InstrParserCommon): + instruction_set = kInstructionSet + instruction_set_term = {0x8DC5CF, 0x8DC61E} + TAG = 'palfx' + + def __init__(self): + super().__init__() + + def handle_draw_command(self, ins, ea): + xs = [] + while (x := get_word(ea + 2 + len(xs) * 2)) & 0x8000 == 0: + xs.append('%.4x' % x) + s = f'{ins:2} ' if ins != None else '' + s = f' {s}! {" ".join(xs)}' + if x != 0xc595: + s += ' !' + self.print_line(ea, s) + return 2 + len(xs) * 2 + + def process_queue_entry(self, ea): + assert ea & 0x8000 + is_finish = True + while ea not in self.visited: + self.visited.add(ea) + ins = get_word(ea) + if ins & 0x8000: + if ins == 0xc595: + assert not is_finish + ea += 2 + is_finish = True + continue + ea_org = ea + ins = (BANK << 16) | ins + if ins not in self.instruction_set: + raise Exception(f'Ins {ins:X} not in iset at {ea:X}') + name, operands = self.instruction_set[ins] + ea += 2 + r = [] + for op in operands: + if op == 'B': + r.append('%d' % get_byte(ea)) + ea += 1 + elif op == 'H': + r.append('%d' % get_word(ea)) + ea += 2 + elif op == 'G': + addr = (BANK << 16) | get_word(ea) + r.append(get_ea_name(addr, short_label=True)) + self.visit(addr) + ea += 2 + elif op == 'A': + addr = (BANK << 16) | get_word(ea) + assert addr & 0x8000 + r.append(get_ea_name(addr, short_label=True)) + ea += 2 + else: + assert 0 + self.print_line(ea_org, f' {name}({", ".join(r)})') + if ins in self.instruction_set_term: + self.print_line(ea_org + 1, '') + break + else: + if not is_finish: + ea -= 2 + ins = None + ea += self.handle_draw_command(ins, ea) + is_finish = False diff --git a/assets/plm_decode.py b/assets/plm_decode.py new file mode 100644 index 0000000..94651a4 --- /dev/null +++ b/assets/plm_decode.py @@ -0,0 +1,271 @@ +from decode_common import * + +BANK = 0x84 + +kPlmInstructionSet = { + 0x8486b4: ('Sleep', ''), + 0x8486bc: ('Delete', ''), + 0x8486c1: ('PreInstr', 'A'), + 0x8486ca: ('ClearPreInstr', ''), + 0x8486d1: ('UNUSED_CallFunction', 'L'), + 0x8486eb: ('CallFunctionWithArg', 'LH'), + 0x84870b: ('CallFunction', 'L'), + 0x848724: ('Goto', 'G'), + 0x848729: ('UNUSED_sub_848729', 'B'), + 0x84873f: ('DecrementAndGotoIfNonzero', 'G'), + 0x84874e: ('SetTimer', 'B'), + 0x84875a: ('UNUSED_sub_84875A', 'H'), + 0x848764: ('LoadItemPlmGfx', '9BBBBBBBB'), + 0x8487e5: ('CopyFromRamToVram', 'HLH'), + 0x84880e: ('GotoIfBossBitSet', 'BG'), + 0x848821: ('UNUSED_sub_848821', 'B'), + 0x84882d: ('GotoIfEventSet', 'HG'), + 0x84883e: ('SetEvent', 'H'), + 0x848848: ('GotoIfChozoSet', 'G'), + 0x848865: ('SetRoomChozoBit', ''), + 0x84887c: ('GotoIfItemBitSet', 'G'), + 0x848899: ('SetItemBit', ''), + 0x8488b0: ('PickupBeamAndShowMessage', 'HB'), + 0x8488f3: ('PickupEquipmentAndShowMessage', 'HB'), + 0x84891a: ('PickupEquipmentAddGrappleShowMessage', 'H'), + 0x848941: ('PickupEquipmentAddXrayShowMessage', 'H'), + 0x848968: ('CollectHealthEnergyTank', 'H'), + 0x848986: ('CollectHealthReserveTank', 'H'), + 0x8489a9: ('CollectAmmoMissileTank', 'H'), + 0x8489d2: ('CollectAmmoSuperMissileTank', 'H'), + 0x8489fb: ('CollectAmmoPowerBombTank', 'H'), + 0x848a24: ('SetLinkReg', 'G'), + 0x848a2e: ('Call', 'G'), + 0x848a3a: ('Return', ''), + 0x848a40: ('UNUSED_sub_848A40', ''), + 0x848a59: ('UNUSED_sub_848A59', ''), + 0x848a72: ('GotoIfDoorBitSet', 'G'), + 0x848a91: ('IncrementDoorHitCounterAndJGE', 'BG'), + 0x848acd: ('IncrementArgumentAndJGE', 'BG'), + 0x848af1: ('SetBTS', 'B'), + 0x848b05: ('DrawPlmBlock', ''), + 0x848b17: ('DrawPlmBlock_', ''), + 0x848b55: ('ProcessAirScrollUpdate', ''), + 0x848b93: ('ProcessSolidScrollUpdate', ''), + 0x848bd1: ('QueueMusic', 'B'), + 0x848bdd: ('ClearMusicQueueAndQueueTrack', 'B'), + 0x848c07: ('QueueSfx1_Max6', 'B'), + 0x848c10: ('QueueSfx2_Max6', 'B'), + 0x848c19: ('QueueSfx3_Max6', 'B'), + 0x848c22: ('QueueSfx1_Max15', 'B'), + 0x848c2b: ('QueueSfx2_Max15', 'B'), + 0x848c34: ('QueueSfx3_Max15', 'B'), + 0x848c3d: ('QueueSfx1_Max3', 'B'), + 0x848c46: ('QueueSfx2_Max3', 'B'), + 0x848c4f: ('QueueSfx_Max3', 'B'), + 0x848c58: ('QueueSfx1_Max9', 'B'), + 0x848c61: ('QueueSfx2_Max9', 'B'), + 0x848c6a: ('QueueSfx3_Max9', 'B'), + 0x848c73: ('QueueSfx1_Max1', 'B'), + 0x848c7c: ('QueueSfx2_Max1', 'B'), + 0x848c85: ('QueueSfx3_Max1', 'B'), + 0x848c8f: ('ActivateMapStation', ''), + 0x848caf: ('ActivateEnergyStation', ''), + 0x848cd0: ('ActivateMissileStation', ''), + 0x848cf1: ('ActivateSaveStationAndGotoIfNo', 'H'), + 0x848d39: ('UNUSED_sub_848D39', ''), + 0x848d41: ('GotoIfSamusNear', 'BBG'), + 0x848d89: ('UNUSED_sub_848D89', ''), + 0x84ab00: ('MovePlmDownOneBlock', ''), + 0x84ab51: ('Scroll_0_1_Blue', ''), + 0x84ab59: ('MovePlmDownOneBlock_0', ''), + 0x84abd6: ('ABD6', ''), + 0x84ac9d: ('DealDamage_2', ''), + 0x84acb1: ('GiveInvincibility', ''), + 0x84ad43: ('Draw0x38FramesOfRightTreadmill', ''), + 0x84ad58: ('Draw0x38FramesOfLeftTreadmill', ''), + 0x84ae35: ('GotoIfSamusHealthFull', 'G'), + 0x84aebf: ('GotoIfMissilesFull', 'G'), + 0x84b00e: ('PlaceSamusOnSaveStation', ''), + 0x84b024: ('DisplayGameSavedMessageBox', ''), + 0x84b030: ('EnableMovementAndSetSaveStationUsed', ''), + 0x84b9b9: ('SetCrittersEscapedEvent', ''), + 0x84ba6f: ('JumpIfSamusHasNoBombs', 'G'), + 0x84bb25: ('MovePlmRight4Blocks', ''), + 0x84bbdd: ('ClearTrigger', ''), + 0x84bbe1: ('SpawnEproj', 'H'), + 0x84bbf0: ('WakeEprojAtPlmPos', 'H'), + 0x84be3f: ('SetGreyDoorPreInstr', ''), + 0x84cd93: ('SetBtsTo1', ''), + 0x84d155: ('FxBaseYPos_0x2D2', ''), + 0x84d2f9: ('GotoIfRoomArgLess', 'HG'), + 0x84d30b: ('SpawnFourMotherBrainGlass', 'HHHH'), + 0x84d357: ('SpawnTorizoStatueBreaking', 'H'), + 0x84d3c7: ('QueueSong1MusicTrack', ''), + 0x84d3d7: ('TransferWreckedShipChozoSpikesToSlopes', ''), + 0x84d3f4: ('TransferWreckedShipSlopesToChozoSpikes', ''), + 0x84d476: ('UNUSED_sub_84D476', ''), + 0x84d489: ('UNUSED_sub_84D489', ''), + 0x84d4be: ('nullsub_70', ''), + 0x84d525: ('EnableWaterPhysics', ''), + 0x84d52c: ('SpawnN00bTubeCrackEproj', ''), + 0x84d536: ('DiagonalEarthquake', ''), + 0x84d543: ('Spawn10shardsAnd6n00bs', ''), + 0x84d5e6: ('DisableSamusControls', ''), + 0x84d5ee: ('EnableSamusControls', ''), + 0x84d77a: ('ShootEyeDoorProjectileWithProjectileArg', 'H'), + 0x84d790: ('SpawnEyeDoorSweatEproj', 'H'), + 0x84d79f: ('SpawnTwoEyeDoorSmoke', ''), + 0x84d7b6: ('SpawnEyeDoorSmokeProjectile', ''), + 0x84d7c3: ('MoveUpAndMakeBlueDoorFacingRight', ''), + 0x84d7da: ('MoveUpAndMakeBlueDoorFacingLeft', ''), + 0x84db8e: ('DamageDraygonTurret', ''), + 0x84dbb8: ('DamageDraygonTurretFacingDownRight', ''), + 0x84dbf7: ('DamageDraygonTurretFacingUpRight', ''), + 0x84dc36: ('DamageDraygonTurret2', ''), + 0x84dc60: ('DamageDraygonTurretFacingDownLeft', ''), + 0x84dc9f: ('DamageDraygonTurretFacingUpLeft', ''), + 0x84e04f: ('DrawItemFrame0', ''), + 0x84e067: ('DrawItemFrame1', ''), + 0x84e29d: ('ClearChargeBeamCounter', ''), + 0x84e63b: ('E63B', ''), +} + +kPlmTerminator = { 0x8486BC, 0x848724, 0x848A3A } + +# Sometimes Sleep is used in a way assumes Sleep never wakes up, +# unless we do this we'll decode random instructions. +kPlmTerminatorAtEA = { 0x84B89A, 0x84B8DA, 0x84DB42, 0x84BB03, 0x84B7E9 } + +kCommandByName = {v[0] : (k, v[1]) for k, v in kPlmInstructionSet.items()} +#for k, v in kPlmInstructionSet.items(): +# k = k | 0x840000 +# t = ea2name[k] +# t = t.replace('PlmInstr_', '') +# print("0x%x: ('%s', %s)," % (k, t, repr(tuple(v[0])))) + +#for k, v in kPlmInstructionSet.items(): +# name, args = v +# tostr = {1 : 'B', 2 : 'H', 3 : 'L'} +# args = ''.join(tostr[a] for a in args) +# if name.startswith('Goto') or k == 0x848A24 or k == 0x848A2E: +# args = args[:-1] + 'G' +# print(" 0x%x: ('%s', '%s')," % (k, name, args)) + +def plm_header_size(ea): + return 6 if (ea >= 0x84c842 and ea < 0x84c8ba) or ea in (0x84c8ca, 0x84BAF4) else 4 + +class PlmParser(InstrParserCommon): + instruction_set = kPlmInstructionSet + instruction_set_term = {} + TAG = 'plm' + + def __init__(self): + super().__init__() + self.draw_cmds = {} + + def parse_draw_commands(self, ea): + assert ea & 0x8000 + if ea in self.draw_cmds: + return + last = None + r = [] + self.draw_cmds[ea] = r + while True: + n = get_word(ea) + assert (n & 0x7f00) == 0 + cmd = '' + if last != None: + if last & 0xff != 0: cmd = f'{cmd}{sex8(last&0xff)}x ' + if last >> 8 != 0: cmd = f'{cmd}{sex8(last>>8)}y ' + cmd += 'v ' if n & 0x8000 else 'h ' + cmd += " ".join('%.4x' % get_word(ea + 2 + i * 2) for i in range(n & 0xff)) + r.append(cmd) + ea += 2 + (n & 0xff) * 2 + last = get_word(ea) + ea += 2 + if last == 0: + break + + def print(self, file): + draw_cmd_printed = set() + output, queued = [], [] + last_insertion_pos = 0 + def inject_queued(): + if len(queued): + queued.append('') + output[last_insertion_pos:last_insertion_pos] = queued + del queued[:] + for ea, line in sorted(self.lines, key = lambda x: x[0]): + if isinstance(line, str): + if ea in self.label: + output.append(f'{get_ea_name(ea, short_label = True)}:') + output.append(line) + if line == '': + inject_queued() + last_insertion_pos = len(output) + elif line not in draw_cmd_printed: + draw_cmd_printed.add(line) + name = get_ea_name(line) + for i, v in enumerate(self.draw_cmds[line]): + t = name if i == 0 else (' ' * len(name)) + queued.append(t + ' ! ' + v) + inject_queued() + print('', file = file) + print('', file = file) + + def process_queue_entry(self, ea): + assert ea & 0x8000 + while True: + if ea in self.visited: + break + self.visited.add(ea) + ins = get_word(ea) + if ins & 0x8000: + ea_org = ea + ins = 0x840000 | ins + if ins not in kPlmInstructionSet: + print(f'// Ins {ins:X} not in iset at {ea:X}') + self.missing_isets.add(ea & 0xff0000 | ins) + return + name, operands = kPlmInstructionSet[ins] + ea += 2 + r = [] + for op in operands: + if op == 'B': + r.append('%d' % get_byte(ea)) + ea += 1 + elif op == 'H': + r.append('%d' % get_word(ea)) + ea += 2 + elif op == 'L': + r.append(get_ea_name(get_word(ea) + get_byte(ea+2) * 65536)) + ea += 3 + elif op == 'A': + addr = 0x840000 | get_word(ea) + r.append(get_ea_name(addr, short_label=True)) + ea += 2 + elif op == '9': + addr = 0x890000 | get_word(ea) + r.append(get_ea_name(addr)) + self.blobs[addr] = 256 + ea += 2 + elif op == 'G': + addr = 0x840000 | get_word(ea) + r.append(get_ea_name(addr, short_label=True)) + self.visit(addr) + ea += 2 + else: + assert 0 + self.print_line(ea_org, f' {name}({", ".join(r)})') + if ins in kPlmTerminator or ea_org in kPlmTerminatorAtEA: + self.print_line(ea_org + 1, '') + break + else: + drawp = get_word(ea + 2) | 0x840000 + self.print_line(ea, f' {ins} ! {get_ea_name(drawp)}') + self.print_line(ea, drawp) + try: + drawp_end = self.parse_draw_commands(drawp) + except: + print(f'Crash while processing draw commants at {ea:X}') + raise + ea += 4 diff --git a/assets/projectile_decode.py b/assets/projectile_decode.py new file mode 100644 index 0000000..e026936 --- /dev/null +++ b/assets/projectile_decode.py @@ -0,0 +1,59 @@ +from decode_common import * + +BANK = 0x93 + +kProjInstructionSet = { + 0x93822F: ('Delete', ''), + 0x938239: ('Goto', 'G'), +} + +kCommandByName = {v[0] : (k, v[1]) for k, v in kProjInstructionSet.items()} +kCommandByName['Draw'] = (None, 'HABBH') + +kProjTerminator = { 0x938239, 0x93822F} + +class ProjParser(InstrParserCommon): + instruction_set = kProjInstructionSet + instruction_set_term = kProjTerminator + TAG = 'proj' + + def __init__(self): + super().__init__() + self.sprite_maps = set() + + def handle_draw_command(self, ins, ea): + drawp = get_word(ea + 2) | (BANK << 16) + self.sprite_maps.add(drawp) + self.print_line(ea, f' Draw({ins}, {get_ea_name(drawp)}, {get_byte(ea + 4)}, {get_byte(ea + 5)}, {get_word(ea + 6)})') + return 8 + + def process_queue_entry(self, ea): + assert ea & 0x8000 + while True: + if ea in self.visited: + break + self.visited.add(ea) + ins = get_word(ea) + if ins & 0x8000: + ea_org = ea + ins = (BANK << 16) | ins + if ins not in self.instruction_set: + print(f'// Ins {ins:X} not in iset at {ea:X}') + return + name, operands = self.instruction_set[ins] + ea += 2 + r = [] + for op in operands: + if op == 'G': + addr = (BANK << 16) | get_word(ea) + r.append(get_ea_name(addr, short_label=True)) + self.visit(addr) + ea += 2 + else: + assert 0 + self.print_line(ea_org, f' {name}({", ".join(r)})') + if ins in self.instruction_set_term: + self.print_line(ea_org + 1, '') + break + else: + ea += self.handle_draw_command(ins, ea) diff --git a/assets/restool.py b/assets/restool.py new file mode 100644 index 0000000..3698655 --- /dev/null +++ b/assets/restool.py @@ -0,0 +1,1567 @@ +import sys +import plm_decode, projectile_decode, eproj_decode, animtiles_decode, palfx_decode, enemy_instr_decode +import consts +import text_lexer +import re +from decode_common import * +import glob +import inspect + +plm_parser = plm_decode.PlmParser() +projectile_parser = projectile_decode.ProjParser() +eproj_parser = eproj_decode.EprojParser() +animtiles_parser = animtiles_decode.AnimtilesParser() +palfx_parser = palfx_decode.PalfxParser() +enemy_instr_parser = enemy_instr_decode.EnemyInstrParser() + +kGlobalObjects = {} +def add_global(obj): + kGlobalObjects[obj.__name__] = obj + +class LinePrinter: + def __init__(self): + self.lines = [] + self.indent = 0 + def print(self, s): + self.lines.append(' ' * self.indent + s) + def add_indent(self): + self.indent += 1 + def remove_indent(self): + self.indent -= 1 + +class TUint8: + def __init__(self, hex = False, signed = False): + self.hex = hex + self.signed = signed + def parse_binary(self, ea, extra): + v = ROM.get_byte(ea) + if self.signed and v >= 0x80: v -= 0x100 + return 1, (v, self) + def print_text(self, v): + return '0x%.2x' % v if (self.hex and v > 0) else str(v) + def is_default(self, v): + return v == 0 + def write_binary(self, writer, v, extra): + writer.write_byte((v or 0) & 0xff) + +uint8 = TUint8() +uint8_hex = TUint8(hex = True) +int8 = TUint8(signed = True) + +class Skip: + def __init__(self, size = 1): + self.size = size + def parse_binary(self, ea, extra): + return self.size, None + def write_binary(self, writer, v, extra): + assert (v or 0) == 0 + writer.write_byte(0) + +class TUint16: + def __init__(self, hex = False, signed = False): + self.hex = hex + self.signed = signed + def parse_binary(self, ea, extra): + return 2, (ROM.get_word(ea), self) + def print_text(self, v): + if self.signed and not self.hex: + if v >= 0x8000: v -= 0x10000 + return '0x%.2x' % v if (self.hex and v > 0) else str(v) + def is_default(self, v): + return v == 0 + def write_binary(self, writer, v, extra): + writer.write_word(v or 0) + +uint16 = TUint16() +int16 = TUint16(signed = True) +uint16_hex = TUint16(hex = True) + +class TLongPtr: + def __init__(self, hex = False): + self.hex = hex + def parse_binary(self, ea, extra): + return 3, (ROM.get_word(ea) + ROM.get_byte(ea + 2) * 65536, self) + def print_text(self, v): + return get_ea_name(v) + def is_default(self, v): + return v == 0 + def write_binary(self, writer, v, extra): + writer.write_symbol_long(v or 0) +LongPtr = TLongPtr() + +def get_bank(self, ea, extra): + bank = self.__bank__ or extra.get('bank') + if bank == None: + raise Exception('Bank not specified %s for object at %s' % (self, get_ea_name(ea))) + if bank == 'auto': + bank = ea >> 16 + return bank + +class CodePtr: + def __init__(self, bank, unknown_prefix = 'unk', visitor = None): + self.__bank__ = bank + self.unknown_prefix = unknown_prefix + self.visitor = visitor + def parse_binary(self, ea, extra): + bank = get_bank(self, ea, extra) + v = ROM.get_word(ea) + if v != 0: + v += (bank << 16) + if self.visitor: self.visitor(v, extra) + return 2, (mark_address(v), self) + def print_text(self, v): + return get_ea_name(v, unknown_prefix = self.unknown_prefix) + def is_default(self, v): + return v == 0 + def write_binary(self, writer, v, extra): + bank = get_bank(self, writer.get_ea(), extra) + writer.write_symbol_word(v, bank) + +class Fields: + def __init__(self, tp, ea): + self.tp = tp + self.name = get_ea_name(ea) if ea else None + self.fields = {} + self.list = [] + self.args = None + + def print(self, out, compact = False): + s = self.tp.__name__ + if self.args: + s += '(%s)' % ', '.join(str(a) for a in self.args) + if self.name != None: + s += ' %s' % self.name + if compact and len(self.list) == 0: + s += ' {' + r = [] + for k, v in self.fields.items(): + r.append(' %s: %s' % (k, v[1].print_text(v[0]))) + out.print(s + ','.join(r) + ' }') + else: + out.print(s + ' {') + out.add_indent() + for k, v in self.fields.items(): + out.print('%s: %s' % (k, v[1].print_text(v[0]))) + for v, tp in self.list: + if not compact: out.print('') + tp.print_actual_text(out, v) + out.remove_indent() + out.print('}') + def set_args(self, args): + self.args = args + def add_list_entry(self, v, tp): + self.list.append((v, tp)) + +class TLocationBased: + __bank__ = None + def parse_binary(self, ea, extra): + bank = get_bank(self, ea, extra) + v = ROM.get_word(ea) + if v & 0x8000: + v += (bank << 16) + visit_location(v, self, extra) + return 2, (v, self) + def print_text(self, ea): + return get_ea_name(ea) + def write_binary(self, writer, v, extra): + if v == None or isinstance(v, int): + writer.write_word(v or 0) + else: + bank = get_bank(self, writer.get_ea(), extra) + writer.write_symbol_word(v, bank) + +class TLongLocationBased: + __bank__ = None + def parse_binary(self, ea, extra): + v = ROM.get_long(ea) + if v & 0x8000: + visit_location(v, self, extra) + return 3, (v, self) + def print_text(self, ea): + return get_ea_name(ea) + def write_binary(self, writer, v, extra): + writer.write_symbol_long(v or 0) + +class EnableIf: + def __init__(self, cond, tp): + self.cond = cond + self.tp = tp + def parse_binary(self, ea, extra): + if not (extra['enable_if'] & self.cond): + return 0, None + return self.tp.parse_binary(ea, extra) + def write_binary(self, writer, v, extra): + if v == None: return + extra['enable_if'] |= self.cond + self.tp.write_binary(writer, v, extra) + +def parse_binary_fields(rv, ea, fields, extra, remove_default = False): + assert (ea & 0x8000) != 0 + start_ea = ea + for name, tp in fields.items(): + try: + size, value = tp.parse_binary(ea, extra) + if remove_default and value != None and hasattr(value[1], 'is_default') and value[1].is_default(value[0]): + value = None + except: + print('Error parsing field %s at 0x%x of type %s' % (name, ea, tp)) + raise + ea += size + if value != None: + rv.fields[name] = value + return ea - start_ea + +class TStruct(TLocationBased): + __compact__ = False + __remove_default__ = False + __remove_name__ = False + def parse_actual_binary(self, ea, extra): + rv = Fields(self, None if self.__remove_name__ else ea) + size = parse_binary_fields(rv, ea, self.__fields__, extra, self.__remove_default__) + assert self.__size__ == None or size == self.__size__ + return size, (rv, self) + def print_actual_text(self, out, v): + v.print(out, self.__compact__) + def write_actual_binary(self, writer, fields, extra): + for name, tp in self.__fields__.items(): + tp.write_binary(writer, fields.dict.get(name), extra) + for v in fields.list: + write_global_object(writer, v, extra) + +# Array of primitive objects +class TArray(TLocationBased): + def __init__(self, size = None): + self.size = size + def parse_actual_binary(self, ea, extra): + start_ea, rv = ea, [] + size = self.size if self.size != None else extra.get(self.__name__ + '_size') + if size == None: + raise Exception('Array size not specified') + for i in range(size): + size, value = self.__type__.parse_binary(ea, extra) + ea += size + rv.append(value) + return ea - start_ea, ((get_ea_name(start_ea), rv), self) + def get_array_size(self, extra): + return + def print_actual_text(self, out, v): + assert len(v) == 2 + inner = ', '.join(a[1].print_text(a[0]) for a in v[1]) + if v[0] == None: + out.print('%s { %s }' % (self.__name__, inner)) + else: + out.print('%s %s { %s }' % (self.__name__, v[0], inner)) + def write_actual_binary(self, writer, fields, extra): + if len(fields.dict) != 0: + writer.error('Array cannot have named fields') + size = self.size if self.size != None else extra.get(self.__name__ + '_size') + if size != None and len(fields.list) != size: + writer.error('Array size mismatch') + for value in fields.list: + self.__type__.write_binary(writer, value, extra) + +def MakeArray(tp, size, name, bank = None): + class CustomArray(TArray): + __name__ = name + __type__ = tp + __bank__ = bank + return CustomArray(size) + +def print_struct_array(self, out, v): + if v[0] == None: + out.print('%s {' % self.__name__) + else: + out.print('%s %s {' % (self.__name__, v[0])) + out.add_indent() + for a in v[1]: + a[1].print_actual_text(out, a[0]) + out.remove_indent() + out.print('}') + +class StructArray(TLocationBased): + def __init__(self, tp, deref_with_bank = None, name = None, terminator = 0xffff): + self.tp = tp + self.__name__ = self.tp.__name__ + 's' if name == None else name + self.deref_with_bank = deref_with_bank + self.__bank__ = tp.__bank__ + self.terminator = terminator + def parse_actual_binary(self, ea, extra): + ea_org = ea + f = Fields(self, ea) + while True: + if self.terminator != None: + if ROM.get_word(ea) == self.terminator: + break + else: + if len(f.list) == extra[self.__name__ + '_size']: + break + if self.deref_with_bank != None: + addr = self.deref_with_bank << 16 | ROM.get_word(ea) + g_already_emitted.add(addr) + size, elem = self.tp.parse_actual_binary(addr, extra) + ea += 2 + else: + size, elem = self.tp.parse_actual_binary(ea, extra) + elem[0].name = None + ea += size + f.list.append(elem) + return ea + 2 - ea_org, (f, self) + def print_actual_text(self, out, v): + assert isinstance(v, Fields), repr(v) + v.print(out, True) + def want_terminator(self, writer, fields): + return True + def write_actual_binary(self, writer, fields, extra): + if len(fields.dict) != 0: + writer.error('Array cannot have named fields') + if self.deref_with_bank == None: + for f in fields.list: + if f.ident == self.tp.__name__: + self.tp.write_actual_binary(writer, f, extra) + if self.terminator != None and self.want_terminator(writer, fields): + writer.write_word(self.terminator) + for f in fields.list: + if f.ident != self.tp.__name__: + write_global_object(writer, f) + else: + assert self.terminator == None + for f in fields.list: + assert f.name != None + if f.ident == self.tp.__name__: + self.tp.write_binary(writer, f.name, extra) + write_global_object(writer, f) + +class Blob(TLongLocationBased): + __name__ = 'Blob' + def parse_actual_binary(self, ea, extra): + size = extra['blob_size'] + if size == None: + return 0, None + return size, ((get_ea_name(ea), ROM.get_bytes(ea, size)), self) + def write_actual_binary(self, writer, f, extra): + assert isinstance(f.value, bytes) + writer.write_bytes_with_wrap(f.value) + def print_actual_text(self, out, v): + b = v[1] + out.print('%s %s = $hex(' % (self.__name__, v[0])) + out.add_indent() + for i in range(0, len(b), 64): + out.print(b[i:i+64].hex()) + out.remove_indent() + out.print(')') +add_global(Blob()) + +class PackedBlob(Blob): + __name__ = 'PackedBlob' + def parse_actual_binary(self, ea, extra): + size = get_compressed_size(ROM, ea) + return size, ((get_ea_name(ea), ROM.get_bytes(ea, size)), self) +add_global(PackedBlob()) + +g_locations = {} +g_already_emitted = set() +g_location_file_map = { + 'Plm' : 'plm', + 'Enemy' : 'enemy', +} +g_current_file = {} +g_file_sets = {'' : g_current_file} + +def push_current_file(which_file): + global g_current_file + old_file = g_current_file + g_current_file = g_file_sets.setdefault(which_file, {}) + return old_file + +def pop_current_file(old_file): + global g_current_file + g_current_file = old_file + +def visit_location(ea, tp, extra): + if (ea & 0x8000) == 0: + raise Exception('While parsing %s, Invalid location 0x%x' % (tp, ea)) + loc = g_locations.get(ea) + if loc == None: + g_locations[ea] = tp # avoid infinite recursion + which_file = g_location_file_map.get(tp.__name__) + if which_file != None: + old_file = push_current_file(which_file) + res = tp.parse_actual_binary(ea, extra)[1] + g_current_file[ea] = res + g_locations[ea] = res + if which_file != None: + pop_current_file(old_file) + +Palette = MakeArray(uint16_hex, 16, 'Palette') +ItemDropChances = MakeArray(uint8, 6, 'ItemDropChances', 0xb4) +Vulnerability = MakeArray(uint8, 22, 'Vulnerability', 0xb4) +add_global(Palette) +add_global(ItemDropChances) +add_global(Vulnerability) + +add_global(MakeArray(uint16_hex, None, 'Palette256')) +add_global(MakeArray(uint16_hex, None, 'Tile16')) + +class Name: + def parse_binary(self, ea, extra): + v = ROM.get_word(ea) + if v == 0: return 2, (None, self) + ea = 0xb40000 | v + s = '' + for i in range(10): + s += chr(ROM.get_byte(ea+i)) + return 2, (s.strip(), self) + def print_text(self, s): + return 'null' if s == None else f'"{s}"' + def write_binary(self, writer, v, extra): + writer.write_word(0 if v == None else (consts.kEnemyNameToAddr[v] & 0xffff)) + +CodePtrNoBank = CodePtr(None) + +class Sprite(TStruct): + __name__ = 'Sprite' + __size__ = 5 + __compact__ = True + __fields__ = { + 'x': uint16, + 'y': int8, + 'chr': uint16_hex + } + +class SpriteMap(TLocationBased): + __name__ = 'SpriteMap' + tp = Sprite() + def __init__(self, bank = None): + if bank: + self.__bank__ = bank + def parse_actual_binary(self, ea, extra): + ea_org = ea + n, r = ROM.get_word(ea), [] + assert n < 256, (hex(ea), n) + ea += 2 + for i in range(n): + size, elem = self.tp.parse_actual_binary(ea, extra) + elem[0].name = None + ea += size + r.append(elem) + return ea + 2 - ea_org, ((get_ea_name(ea_org), r), self) + def print_actual_text(self, out, v): + print_struct_array(self, out, v) + def write_actual_binary(self, writer, v, extra): + writer.write_word(len(v.list)) + assert len(v.dict) == 0 + for x in v.list: + assert x.ident == 'Sprite', x.ident + self.tp.write_actual_binary(writer, x, extra) +add_global(SpriteMap()) +add_global(MakeArray(SpriteMap('auto'), None, 'SpriteMapArray')) + + +class Hitbox(TStruct): + __name__ = 'Hitbox' + __size__ = 12 + __compact__ = True + __fields__ = { + 'left': int16, + 'top': int16, + 'right': int16, + 'bottom': int16, + 'f0' : CodePtr('auto'), + 'f1': CodePtr('auto'), + } + +class Hitboxes(TLocationBased): + __name__ = 'Hitboxes' + __bank__ = 'auto' + tp = Hitbox() + def parse_actual_binary(self, ea, extra): + ea_org = ea + n, r = ROM.get_word(ea), [] + assert n < 256 + ea += 2 + for i in range(n): + size, elem = self.tp.parse_actual_binary(ea, extra) + elem[0].name = None + ea += size + r.append(elem) + return ea + 2 - ea_org, ((get_ea_name(ea_org), r), self) + def print_actual_text(self, out, v): + print_struct_array(self, out, v) + def write_actual_binary(self, writer, v, extra): + writer.write_word(len(v.list)) + assert len(v.dict) == 0 + for x in v.list: + assert x.ident == 'Hitbox' + self.tp.write_actual_binary(writer, x, extra) +add_global(Hitboxes()) + +BigSprite = MakeArray(uint16_hex, None, 'BigSprite', bank = 'auto') + +class BigSpriteMap(TLocationBased): + __name__ = 'BigSpriteMap' + __bank__ = 'auto' + def parse_actual_binary(self, ea, extra): + f = Fields(self, ea) + ea += 2 + while (ram := ROM.get_word(ea)) != 0xffff: + n = ROM.get_word(ea + 2) + (_,rv), rt = BigSprite.parse_actual_binary(ea, {'BigSprite_size' : n + 2})[1] + f.list.append(((None, rv), rt)) + ea += 2 * n + 4 + return 0, (f, self) + def print_actual_text(self, out, v): + v.print(out, True) + def write_actual_binary(self, writer, v, extra): + writer.write_word(0xfffe) + assert len(v.dict) == 0 + for x in v.list: + assert x.ident == 'BigSprite' + BigSprite.write_actual_binary(writer, x, extra) + writer.write_word(0xffff) + +add_global(BigSpriteMap()) + +class ExtSprite(TStruct): + __name__ = 'ExtSprite' + __size__ = 8 + __compact__ = True + __fields__ = { + 'x': int16, + 'y': int16, + 'spr' : SpriteMap('auto'), + 'box': Hitboxes(), + } + +class ExtSpriteBig(TStruct): + __name__ = 'ExtSpriteBig' + __size__ = 8 + __compact__ = True + __fields__ = { + 'x': int16, + 'y': int16, + 'big' : BigSpriteMap(), + 'box': Hitboxes(), + } + +class ExtSpriteMap(TLocationBased): + __name__ = 'ExtSpriteMap' + __bank__ = 'auto' + tp = ExtSprite() + tpb = ExtSpriteBig() + def parse_actual_binary(self, ea, extra): + ea_org = ea + f = Fields(self, ea) + n = ROM.get_byte(ea) + v = ROM.get_byte(ea + 1) + if v != 0: + f.fields['upper_byte'] = ROM.get_byte(ea + 1), uint8 + ea += 2 + for i in range(n): + if get_word(get_word(ea + 4) | (ea & 0xff0000)) == 0xfffe: + size, elem = self.tpb.parse_actual_binary(ea, extra) + else: + size, elem = self.tp.parse_actual_binary(ea, extra) + elem[0].name = None + ea += size + f.list.append(elem) + return ea + 2 - ea_org, (f, self) + def print_actual_text(self, out, v): + v.print(out, True) + def write_actual_binary(self, writer, v, extra): + upper = v.dict.get('upper_byte', 0) + writer.write_word(upper << 8 | len(v.list)) + for x in v.list: + assert x.ident in ('ExtSprite', 'ExtSpriteBig') + if x.ident == 'ExtSpriteBig': + self.tpb.write_actual_binary(writer, x, {}) + else: + self.tp.write_actual_binary(writer, x, {}) +add_global(ExtSpriteMap()) + +class Enemy(TStruct): + __name__ = 'Enemy' + __size__ = 0x40 + __bank__ = 0xa0 + __remove_default__ = True + __fields__ = { + 'tile_data_size' : uint16_hex, + 'palette_ptr': Palette, + 'health': uint16, + 'damage': uint16, + 'x_radius': uint16, + 'y_radius': uint16, + 'bank': uint8_hex, + 'hurt_ai_time': uint8, + 'hurt_sfx': uint16, + 'boss_fight_value': uint16, + 'ai_init': CodePtrNoBank, + 'num_parts': uint16, + 'field_16': uint16, + 'main_ai': CodePtrNoBank, + 'grapple_ai': CodePtrNoBank, + 'hurt_ai': CodePtrNoBank, + 'frozen_ai': CodePtrNoBank, + 'time_is_frozen_ai': CodePtrNoBank, + 'death_anim': uint16, + 'field_24': uint16, + 'field_26': uint16, + 'powerbomb_reaction': CodePtrNoBank, + 'field_2A': uint16, + 'field_2C': uint16, + 'field_2E': uint16, + 'touch_ai': CodePtrNoBank, + 'shot_ai': CodePtrNoBank, + 'field_34': uint16, + 'tile_data': Blob(), + 'layer': uint8, + 'item_drop_chances': ItemDropChances, + 'vulnerability': Vulnerability, + 'name': Name(), + } + def parse_actual_binary(self, ea, extra): + blob_size = (ROM.get_word(ea) & 0x7fff) or None + bank = ROM.get_byte(ea + 12) + return super().parse_actual_binary(ea, {'bank' : bank, 'blob_size' : blob_size}) + def write_actual_binary(self, writer, fields, extra): + bank = fields.dict.get('bank') or writer.error('Enemy must have a bank') + super().write_actual_binary(writer, fields, {'bank' : bank}) +add_global(Enemy()) + +class EnemyPopulation(TStruct): + __name__ = 'EnemyPopulation' + __bank__ = 0xa1 + __size__ = 16 + __compact__ = True + __fields__ = { + 'enemy': Enemy(), + 'x': uint16, + 'y': uint16, + 'init': uint16_hex, + 'props': uint16_hex, + 'eprops': uint16_hex, + 'p1': uint16_hex, + 'p2': uint16_hex, + } +class EnemyPopulations(StructArray): + def __init__(self): + super().__init__(EnemyPopulation()) + def parse_actual_binary(self, ea, extra): + size, data = super().parse_actual_binary(ea, extra) + v = ROM.get_byte(ea + size) + if v != 0: + data[0].fields['enemies_to_clear'] = v, uint8 + return size + 1, data + def write_actual_binary(self, writer, fields, extra): + for f in fields.list: + assert f.ident == self.tp.__name__ + self.tp.write_actual_binary(writer, f, extra) + writer.write_word(self.terminator) + writer.write_byte(fields.dict.get('enemies_to_clear', 0)) + +add_global(EnemyPopulation()) +add_global(EnemyPopulations()) +EnemyPopulationArrayV = EnemyPopulations() + +class Layer3Fx(TStruct): + __name__ = 'Layer3Fx' + __bank__ = 0x83 + __size__ = 16 + __remove_name__ = True + __fields__ = { + 'door': CodePtr(0x83), + 'base_y': int16, + 'target_y': int16, + 'y_vel': int16, + 'timer': uint8, + 'type': uint8, + 'default_layer_blend': uint8, + 'layer3_layer_blend': uint8, + 'fx_liquid_options': uint8, + 'palette_fx_bitset': uint8, + 'animtiles_bitset': uint8, + 'palette_blend': uint8, + } + +class Layer3FxArray(StructArray): + def parse_actual_binary(self, ea, extra): + ea_org = ea + f = Fields(self, ea) + while (head := ROM.get_word(ea)) != 0xffff: + size, elem = self.tp.parse_actual_binary(ea, extra) + ea += size + f.list.append(elem) + if head == 0: + break + return ea + 2 - ea_org, (f, self) + def want_terminator(self, writer, fields): + for f in fields.list[::-1]: + if f.ident == self.tp.__name__: + return f.dict.get('door') != None + return True +add_global(Layer3FxArray(Layer3Fx())) + +class EnemyTileset(TStruct): + __name__ = 'EnemyTileset' + __bank__ = 0xb4 + __size__ = 4 + __compact__ = True + __fields__ = { + 'enemy': Enemy(), + 'vram_dst': uint16_hex, + } +add_global(StructArray(EnemyTileset())) + +class Scrolls(TArray): + __name__ = 'Scrolls' + __type__ = uint8 + __bank__ = 0x8f + def print_text(self, ea): + return str(ea) if ea < 0x8000 else get_ea_name(ea) +add_global(Scrolls()) + +class PlmScrolls(TLocationBased): + __name__ = 'PlmScrolls' + __bank__ = 0x8f + def parse_actual_binary(self, ea, extra): + start_ea, rv = ea, [] + while ROM.get_byte(ea) != 0x80: + rv.append(uint8.parse_binary(ea + 0, extra)[1]) + rv.append(uint8.parse_binary(ea + 1, extra)[1]) + ea += 2 + return ea - start_ea, ((get_ea_name(start_ea), rv), self) + def print_actual_text(self, out, v): + inner = ', '.join(a[1].print_text(a[0]) for a in v[1]) + out.print('%s %s { %s }' % (self.__name__, v[0], inner)) + def write_actual_binary(self, writer, fields, extra): + if len(fields.dict) != 0: + writer.error('Array cannot have named fields') + if len(fields.list) % 2: + writer.error('Array size mismatch') + for value in fields.list: + uint8.write_binary(writer, value, extra) + writer.write_byte(0x80) +add_global(PlmScrolls()) + +class Door(TStruct): + __name__ = 'Door' + __size__ = 12 + __bank__ = 0x83 + __compact__ = True + __fields__ = { + 'room': CodePtr(0x8f), # lazy loaded + 'flags': uint8, + 'orientation': uint8, + 'x': uint8, + 'y': uint8, + 'screenx': uint8, + 'screeny': uint8, + 'dist': uint16, + 'code': CodePtr(0x8f), + } + @classmethod + def lazy_load(self): + self.__fields__['room'] = Room() + def parse_actual_binary(self, ea, extra): + if ROM.get_word(ea) == 0: + return 2, (Fields(self, ea), self) + return super().parse_actual_binary(ea, extra) + + def write_actual_binary(self, writer, fields, extra): + if len(fields.dict) == 0: + writer.write_word(0) + else: + super().write_actual_binary(writer, fields, extra) +add_global(Door()) + +def MakeLoadBgType(name, fields): + class LoadBgType(TStruct): + __name__ = name + __size__ = None + __fields__ = fields + __compact__ = True + __remove_name__ = True + __bank__ = 0x8f + return LoadBgType() + +class LoadBgCmd(TLocationBased): + __name__ = 'LoadBgCmd' + __bank__ = 0x8f + __commands__ = { + 2 : MakeLoadBgType('TransferToVram', {'src': LongPtr, 'dst': uint16_hex, 'size' : uint16}), + 4 : MakeLoadBgType('Decompress', {'src': PackedBlob(), 'dst': CodePtr(0x7e)}), + 6 : MakeLoadBgType('ClearFxTilemap', {}), + 8 : MakeLoadBgType('TransferToVramSetBG3', {'src': LongPtr, 'dst': uint16_hex, 'size' : uint16}), + 10: MakeLoadBgType('ClearBG2Tilemap', {}), + 12: MakeLoadBgType('ClearKraidLayer2', {}), + 14: MakeLoadBgType('DoorDepXferVram', {'door' : Door(), 'src': Blob(), 'dst': uint16_hex, 'size' : uint16}), + } + def parse_actual_binary(self, ea, extra): + rv, ea_start = Fields(self, ea), ea + while True: + cmd = ROM.get_word(ea) + if cmd == 0: + break + cmd = self.__commands__[cmd] + extra2 = extra; + if cmd.__name__ == 'DoorDepXferVram': + extra2 = {'blob_size': ROM.get_word(ea + 9)} + size, r = cmd.parse_actual_binary(ea + 2, extra2) + rv.add_list_entry(r[0], r[1]) + ea += 2 + size + return ea - ea_start, (rv, self) + def print_actual_text(self, out, v): + v.print(out, True) + def write_actual_binary(self, writer, fields, extra): + cmdmap = {a.__name__ : (i, a) for i, a in self.__commands__.items()} + for f in fields.list: + value, cmd = cmdmap[f.ident] + writer.write_word(value) + cmd.write_actual_binary(writer, f, extra) + writer.write_word(0) +add_global(LoadBgCmd()) + +class XraySpecialCase(TStruct): + __name__ = 'XraySpecialCase' + __size__ = 4 + __bank__ = 0x8F + __compact__ = True + __fields__ = { + 'x' : uint8, + 'y' : uint8, + 'data' : uint16_hex, + } +add_global(StructArray(XraySpecialCase(), terminator = 0)) + +PlmParserPtr = CodePtr(0x84, visitor = lambda x, e: plm_parser.visit(x)) + +class Plm(TStruct): + __name__ = 'Plm' + __size__ = None + __bank__ = 0x84 + __compact__ = True + __fields__ = { + 'code' : CodePtr(0x84, unknown_prefix='sub'), + 'instr' : PlmParserPtr, + 'instr2' : EnableIf(1, PlmParserPtr) + } + def parse_actual_binary(self, ea, extra): + plm_size = plm_decode.plm_header_size(ea) + return super().parse_actual_binary(ea, {'enable_if': 1 if plm_size == 6 else 0}) + def write_actual_binary(self, writer, fields, extra): + super().write_actual_binary(writer, fields, {'enable_if' : 0}) +add_global(Plm()) + +class RoomPlm(TStruct): + __name__ = 'RoomPlm' + __size__ = 6 + __bank__ = 0x8f + __compact__ = True + __fields__ = { + 'plm' : Plm(), + 'x' : uint8, + 'y' : uint8, + 'arg' : EnableIf(1, uint16_hex), + 'arg_plm' : EnableIf(2, PlmScrolls()), + } + def parse_actual_binary(self, ea, extra): + extra = {'enable_if' : 2 if ROM.get_word(ea) in (0xB703, 0xB707) else 1} + return super().parse_actual_binary(ea, extra) + def write_actual_binary(self, writer, fields, extra): + extra = {'enable_if' : 0} + super().write_actual_binary(writer, fields, extra) + assert extra['enable_if'] in (1, 2) +add_global(StructArray(RoomPlm(), terminator = 0)) + +class RoomState(TStruct): + __name__ = 'RoomState' + __size__ = 26 + __fields__ = { + 'data': PackedBlob(), + 'gfx_set': uint8, + 'music': uint8, + 'music_ctrl': uint8, + 'layer3_fx': Layer3FxArray(Layer3Fx()), + 'enemy_population': EnemyPopulationArrayV, + 'enemy_tilesets': StructArray(EnemyTileset()), + 'nudge_limit': uint16_hex, + 'scrolls': Scrolls(), + 'xray_special_case': StructArray(XraySpecialCase(), terminator = 0), + 'main_code_ptr': CodePtr(0x8f), + 'room_plm': StructArray(RoomPlm(), terminator = 0), + 'bg_data_ptr': LoadBgCmd(), + 'room_setup_code': CodePtr(0x8f), + } + +class Room(TLocationBased): + __name__ = 'Room' + __bank__ = 0x8f + __fields__ = { + 'roomnr': uint8, + 'area': uint8, + 'x': uint8, + 'y': uint8, + 'w': uint8, + 'h': uint8, + 'up_scroll': uint8, + 'down_scroll': uint8, + 'cre_bitset': uint8, + 'doorouts': CodePtr(0x8f), + } + def parse_door_defs(self, roomdef_ea, lvl_data): + ea = 0x8f0000 | ROM.get_word(roomdef_ea + 9) + num_doors = 0 + while True: + w = ROM.get_word(ea + num_doors * 2) + if not (w >= 0x88FC and w <= 0xABF0): + break + num_doors += 1 + new_ea = 0x8f0000 | ROM.get_word(roomdef_ea + 9) + assert(new_ea & 0x8000) + sl = StructArray(Door(), deref_with_bank = 0x83, name = 'DoorOuts', terminator = None) + size, res = sl.parse_actual_binary(new_ea, {'DoorOuts_size' : num_doors}) + return res + + kRoomStateSelects = { + 0xe5e6 : 'Default', + 0xe612 : 'IsEventSet', + 0xe629 : 'IsBossDead', + 0xe669 : 'PowerBombs', + 0xe652 : 'MorphBallMissiles', + 0xe5ff : 'TourianBoss01', + } + + def parse_actual_binary(self, ea, extra): + fout, ea_org = Fields(self, ea), ea + fout.fields['name'] = consts.kRoomNames[(ROM.get_byte(ea + 1), ROM.get_byte(ea))], Name() + parse_binary_fields(fout, ea, self.__fields__, extra) + extra = {'Scrolls_size': ROM.get_byte(ea + 4) * ROM.get_byte(ea + 5) } + ea += 11 + selects = [] + while True: + f = Fields(RoomState(), ea = None) + fout.add_list_entry(f, f.tp) + w = ROM.get_word(ea) + f.tp.__name__ = self.kRoomStateSelects[w] + if w == 0xe5e6: # finish + parse_binary_fields(f, ea + 2, f.tp.__fields__, extra) + selects.append(f) + # Add an DoorOuts {} block + doorouts = self.parse_door_defs(ea_org, ROM.get_long(ea + 2)) + fout.add_list_entry(doorouts[0], doorouts[1]) + del fout.fields['doorouts'] + break + elif w in (0xe612, 0xe629): + f.set_args((ROM.get_byte(ea + 2), )) + ea += 5 + elif w in (0xe669, 0xE652, 0xE5FF): + ea += 4 + else: + raise Exception('RoomDefStateSelect unknown 0x%x' % w) + parse_binary_fields(f, 0x8f0000 | ROM.get_word(ea - 2), f.tp.__fields__, extra) + selects.append(f) + + def move_in(ea): + if ea != 0 and (t := g_locations.get(ea)) and ea not in g_already_emitted: + g_already_emitted.add(ea) + fout.add_list_entry(t[0], t[1]) + + for f in selects: + move_in(f.fields['scrolls'][0]) + + # move in the room plm crap + for ea in [f.fields['room_plm'][0] for f in selects]: + if (t := g_locations.get(ea)) == None: + continue + for f, tp in t[0].list: + if tp.__name__ == 'RoomPlm' and (v := f.fields.get('arg_plm')) != None: + move_in(v[0]) + + # go through fields and create inner blocks + for movein in ('xray_special_case', 'enemy_population', 'enemy_tilesets', 'room_plm', 'bg_data_ptr', 'layer3_fx', 'data'): + for f in selects: + move_in(f.fields[movein][0]) + # go through the nondefault selects and clear the fields that match the defaults + for nd in selects[:-1]: + for k, v in list(nd.fields.items()): + if k in f.fields and v == f.fields[k]: + del nd.fields[k] + return ea - ea_org, (fout, self) + def print_actual_text(self, out, v): + v.print(out) + def write_actual_binary(self, writer, fields, extra): + extra = {'Scrolls_size': fields.dict['w'] * fields.dict['h'] } + kRoomStateSelectsRev = {a: b for b, a in self.kRoomStateSelects.items()} + state_select, default, door_outs = [], None, None + end_ea = 11 + for f in fields.list: + if (default == None) and f.ident in kRoomStateSelectsRev: + state_select.append(f) + end_ea += 5 if f.ident in ('IsEventSet', 'IsBossDead') else (2 if f.ident == 'Default' else 4) + if f.ident == 'Default': default = f + elif f.ident == 'DoorOuts': + assert door_outs == None + door_outs = f + else: + write_global_object(writer, f, extra) + assert default != None and door_outs != None + end_ea += writer.get_ea() + 26 * len(state_select) + fields.dict['doorouts'] = door_outs.name#end_ea & 0xffff + + for name, tp in self.__fields__.items(): + tp.write_binary(writer, fields.dict.get(name), extra) + + for f in state_select: + end_ea -= 26 + writer.write_word(kRoomStateSelectsRev[f.ident]) + if f.ident in ('IsEventSet', 'IsBossDead'): + writer.write_byte(f.args[0]) + if f.ident != 'Default': + assert (end_ea >> 16) == 0x8f + writer.write_word(end_ea & 0xffff) + for f in state_select[::-1]: + if f.ident != 'Default': + for k, v in default.dict.items(): + if k not in f.dict: + f.dict[k] = v + RoomState().write_actual_binary(writer, f, extra) + if door_outs: + assert len(door_outs.dict) == 0 + if door_outs.name != None: + writer.cur_addr = get_name_ea(door_outs.name) + for f in door_outs.list: + assert f.ident == 'Door' + write_global_object(writer, f, extra) + kGlobalObjects['Door'].write_binary(writer, f.name, extra) +add_global(Room()) + +class LoadStation(TStruct): + __name__ = 'LoadStation' + __bank__ = 0x80 + __size__ = 14 + __compact__ = True + __fields__ = { + 'room': Room(), + 'door': Door(), + 'door_bts' : uint16, + 'screen_x' : uint16, + 'screen_y' : uint16, + 'samus_y' : uint16, + 'samus_x' : uint16, + } +add_global(StructArray(LoadStation(), terminator = None)) + +class TileSet(TStruct): + __name__ = 'TileSet' + __bank__ = 0x8f + __size__ = 9 + __compact__ = True + __fields__ = { + 'tile_table': PackedBlob(), + 'tiles': PackedBlob(), + 'palette': PackedBlob(), + } +add_global(TileSet()) +add_global(StructArray(TileSet(), deref_with_bank = 0x8f, terminator = None)) + +class SpriteTilesTransfer(TStruct): + __name__ = 'SpriteTilesTransfer' + __bank__ = 0x8f + __size__ = 7 + __compact__ = True + __fields__ = { + 'size': uint16, + 'src': Blob(), + 'dst': uint16_hex, + } + def parse_actual_binary(self, ea, extra): + blob_size = ROM.get_word(ea) + return super().parse_actual_binary(ea, {'blob_size' : blob_size}) +add_global(StructArray(SpriteTilesTransfer(), terminator = 0)) + +class PoseEntry(TStruct): + __name__ = 'PoseEntry' + __bank__ = 0x91 + __size__ = 6 + __compact__ = True + __fields__ = { + 'new': uint16_hex, + 'cur': uint16_hex, + 'pose' : uint16_hex, + } +add_global(StructArray(PoseEntry())) +add_global(MakeArray(StructArray(PoseEntry()), 253, 'PoseTransitionTable', None)) + +class PoseParams(TStruct): + __name__ = 'PoseParams' + __bank__ = 0x91 + __size__ = 8 + __compact__ = True + __fields__ = { + 'x_dir': uint8, + 'move_type': uint8, + 'new_pose' : uint8, + 'dir' : uint8, + 'y_offs' : uint8, + 'junk1' : Skip(1), + 'y_radius' : uint8, + 'junk2' : Skip(1), + } +add_global(StructArray(PoseParams(), terminator = None, name = 'PoseParamsList')) + +class SamusTileAnimationDefs(TStruct): + __name__ = 'SamusTileAnimationDefs' + __bank__ = 0x92 + __size__ = 4 + __compact__ = True + __fields__ = { + 'top_idx': uint8, + 'top_pos': uint8, + 'bottom_idx': uint8, + 'bottom_pos': uint8, + } +add_global(StructArray(SamusTileAnimationDefs(), terminator = None, name = 'SamusTileAnimationDefsList')) +add_global(MakeArray(CodePtr(0x92), 253, 'SamusTileAnimationDefsToplevel', bank = 0x92)) +add_global(MakeArray(CodePtr(0x92), None, 'SamusTileDefsHalf', bank = 0x92)) + + +class SamusTileAnimationTileDefs(TStruct): + __name__ = 'SamusTileAnimationTileDefs' + __bank__ = 0x92 + __size__ = 7 + __compact__ = True + __fields__ = { + 'src': Blob(), + 'part1_size': uint16_hex, + 'part2_size': uint16_hex, + } + def parse_actual_binary(self, ea, extra): + blob_size = ROM.get_word(ea + 3) + ROM.get_word(ea + 5) + return super().parse_actual_binary(ea, {'blob_size' : blob_size}) + +SamusTileAnimationTileDefsList = StructArray(SamusTileAnimationTileDefs(), terminator = None, name = 'SamusTileAnimationTileDefsList') +add_global(SamusTileAnimationTileDefsList) + +class SamusSpeedTableEntry(TStruct): + __name__ = 'SamusSpeedTableEntry' + __bank__ = 0x90 + __size__ = 12 + __compact__ = True + __fields__ = { + 'accel': uint16_hex, + 'accel_sub': uint16_hex, + 'max_speed': uint16_hex, + 'max_speed_sub': uint16_hex, + 'decel': uint16_hex, + 'decel_sub': uint16_hex, + } +add_global(StructArray(SamusSpeedTableEntry(), terminator = None, name = 'SamusSpeedTableArray')) + +ProjectileParserPtr = CodePtr(0x93, visitor = lambda x, e: projectile_parser.visit(mark_address(x))) + +class ProjectileDataTable(TStruct): + __name__ = 'ProjectileDataTable' + __bank__ = 0x93 + __compact__ = True + __size__ = 0x16 + __fields__ = { + 'dmg': uint16, + 'p0' : ProjectileParserPtr, + 'p1' : ProjectileParserPtr, + 'p2' : ProjectileParserPtr, + 'p3' : ProjectileParserPtr, + 'p4' : ProjectileParserPtr, + 'p5' : ProjectileParserPtr, + 'p6' : ProjectileParserPtr, + 'p7' : ProjectileParserPtr, + 'p8' : ProjectileParserPtr, + 'p9' : ProjectileParserPtr, + } +add_global(MakeArray(ProjectileDataTable(), None, 'ProjectileDataTableArray')) +add_global(ProjectileDataTable()) + +class ProjectileDataTableOnlyOne(TStruct): + __name__ = 'ProjectileDataTableOnlyOne' + __bank__ = 0x93 + __compact__ = True + __size__ = 4 + __fields__ = { + 'dmg': uint16, + 'p0' : ProjectileParserPtr, + } +add_global(ProjectileDataTableOnlyOne()) + +EprojParserPtr = CodePtr(0x86, visitor = lambda x, e: eproj_parser.visit(mark_address(x))) + +class EprojDef(TStruct): + __name__ = 'EprojDef' + __bank__ = 0x86 + __size__ = 14 + __fields__ = { + 'init_code': CodePtr(0x86), + 'pre_instr' : CodePtr(0x86), + 'instrs' : EprojParserPtr, + 'radius' : uint16_hex, + 'props' : uint16_hex, + 'hit_instrs' : EprojParserPtr, + 'shot_instrs' : EprojParserPtr, + } +add_global(EprojDef()) + +HEX6_REGEXP = re.compile('^.*_([0-9A-Fa-f]{6})$') +HEX4_REGEXP = re.compile('^.*_([0-9A-Fa-f]{4})$') + +def get_name_ea(name, bank = None): + assert isinstance(name, str), name + if name in name2ea: + return name2ea[name] + elif (m := HEX6_REGEXP.match(name)) != None: + return int(m.group(1), 16) + elif bank != None and (m := HEX4_REGEXP.match(name)) != None: + return bank << 16 | int(m.group(1), 16) + +def write_global_object(writer, f, extra = {}): + old_addr = writer.cur_addr + if f.name == None: + writer.error('no name for %s' % f.ident) + assert f.name != None + writer.cur_addr = get_name_ea(f.name) + if writer.cur_addr == None: + writer.error('address for %s %s not found' % (f.ident, f.name)) + try: + kGlobalObjects[f.ident].write_actual_binary(writer, f, extra) + except: + print('error writing %s %s' % (f.ident, f.name), file = sys.stderr) + raise + writer.cur_addr = old_addr + +def visit_rooms(): + old_file = push_current_file('rooms') + def visit_load_stations(): + kLoadStationCounts = [19, 19, 23, 18, 20, 18, 17, 17] + for i in range(8): + ea = 0x800000 | ROM.get_word(0x80C4B5 + i * 2) + visit_location(ea, kGlobalObjects['LoadStations'], {'LoadStations_size': kLoadStationCounts[i]}) + loc = g_locations[ea][0].list + for f, tp in list(loc): + ea = f.fields['door'][0] + if ea != 0 and (t := g_locations.get(ea)) and ea not in g_already_emitted: + g_already_emitted.add(ea) + loc.append((t[0], t[1])) + visit_load_stations() + visit_location(0x8f91f8, Room(), {}) + pop_current_file(old_file) + +def visit_blobs(): + old_file = push_current_file('blobs') + visit_location(0x8FE7A7, kGlobalObjects['TileSets'], {'TileSets_size': 29}) + + kCompressedDataExtra = [ + 0xb98000,0xb9a09d,0xb9a09d,0x978DF4,0x978FCD,0x9791C4,0x97938D,0x97953A, + 0x9580D8,0x94E000,0x96FC04,0x9580D8,0x95A5E1,0x95f90e,0x95d089,0x9788cc, + 0x96ff14,0x95e4c2,0x978d12,0x95D713,0x95A82F,0x96FE69,0x96D10A,0x95A82F, + 0x96FE69,0x96D10A,0x978ADB,0x96EC76,0x98bcd6,0x99a56f,0x99d17e,0x988304, + 0x95a82f,0x96fe69,0x98b5c1,0x98b857,0x98baed,0x98bccd,0x97e7de,0x99d65b, + 0x99d932,0x98ED4F,0x999101,0x979803,0x97B957,0x97D7FC,0x97E7DE,0x9796F4, + 0x97F987,0x99DA9F,0x99DAB1,0x99E089,0x99ECC4,0x97EEFF,0xB9FA38,0xB9FE3E, + ] + for ea in kCompressedDataExtra: + visit_location(ea, kGlobalObjects['PackedBlob'], {}) + + for ea in [0xA6C4CB, 0xA98F8F, 0xA98FE5, 0xA99003, 0xA9902F, 0xA98FC7]: + visit_location(ea, kGlobalObjects['SpriteTilesTransfers'], {}) + + for ea, size in [(0xB6F000, 512), (0x8EE400, 512)]: + visit_location(ea, kGlobalObjects['Blob'], {'blob_size': size}) + + # StartDmaCopy + for ea, size in [(0x80988b, 0x0040),(0x8e8000, 0x5600),(0x8ed600, 0x0600),(0x8edc00, 0x0800), + (0x9ab200, 0x2000),(0x9ad200, 0x2e00),(0xa7a716, 0x0200), + (0xb68000, 0x4000),(0xb6c000, 0x2000),(0xb6e000, 0x0800),(0xb6e800, 0x0800),]: + visit_location(ea, kGlobalObjects['Blob'], {'blob_size': size}) + + # kPauseMenuMapTilemaps + for ea, size in [(0xB58000, 0x1000), (0xB59000, 0x1000), (0xB5A000, 0x1000), (0xB5B000, 0x1000), + (0xB5C000, 0x1000), (0xB5D000, 0x1000), (0xB5E000, 0x1000),]: + visit_location(ea, kGlobalObjects['Blob'], {'blob_size': size}) + + visit_location(0x9a8200, kGlobalObjects['Blob'], {'blob_size': 1024 * 2}) + visit_location(0x9a8a00, kGlobalObjects['Blob'], {'blob_size': 1024 * 2}) + visit_location(0x9a9200, kGlobalObjects['Blob'], {'blob_size': 1024 * 2}) + + for i in range(12): + visit_location(0x9a9a00 + i * 512, kGlobalObjects['Blob'], {'blob_size': 256 * 2}) + + pop_current_file(old_file) + +add_global(MakeArray(uint16, 253, 'SamusPoseToSpritemapIndex')) + +def visit_samus(): + old_file = push_current_file('samus') + visit_location(0x919ee2, kGlobalObjects['PoseTransitionTable'], {}) + visit_location(0x91b629, kGlobalObjects['PoseParamsList'], {'PoseParamsList_size': 253}) + kCounts = [32, 30, 32, 17, 17, 17, 17, 20, 10, 16, + 32, 32, 24, 23, 24, 23, 3, 2, 21, 7, 17, 8, 3, 8] + ea = 0x92cbee + for count in kCounts: + visit_location(ea, SamusTileAnimationTileDefsList, {'SamusTileAnimationTileDefsList_size' : count}) + ea += count * 7 + kAnimdefSizes = [96, 9, 9, 2, 2, 1, 1, 1, 1, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 2, 2, 2, 2, 2, 2, 12, 12, 12, 12, 10, 10, 10, 12, 12, 12, 12, 12, 3, 3, 9, 9, 7, 7, 3, 3, 2, 2, 3, 3, 10, 10, 12, 12, 1, 1, 2, 2, 12, 12, 1, 1, 2, 2, 10, 10, 10, 12, 3, 3, 1, 1, 9, 9, 6, 6, 1, 1, 6, 6, 10, 10, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 66, 66, 66, 66, 66, 66, 2, 2, 9, 9, 7, 7, 2, 2, 2, 2, 3, 3, 3, 3, 1, 1, 1, 1, 6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 28, 28, 47, 47, 2, 2, 3, 3, 9, 9, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 96, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 3, 3, 9, 9, 1, 1, 2, 2, 2, 2, 2, 2, 66, 66, 9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 6, 3, 3, 3, 3, 3, 3, 10, 3, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 15, 15, 5, 5, 6, 6, 5, 5, 3, 3, 3, 3, 10, 2, 2, 2, 2, 2, 2, 2, 2, 15, 32, 6, 6, 1, 1, 1, 1, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + for i in range(253): + visit_location(0x920000 | ROM.get_word(0x92D94E + i*2), kGlobalObjects['SamusTileAnimationDefsList'], {'SamusTileAnimationDefsList_size' : kAnimdefSizes[i]}) + visit_location(0x92d91e, kGlobalObjects['SamusTileDefsHalf'], {'SamusTileDefsHalf_size': 13}) + visit_location(0x92d938, kGlobalObjects['SamusTileDefsHalf'], {'SamusTileDefsHalf_size': 11}) + visit_location(0x92d94e, kGlobalObjects['SamusTileAnimationDefsToplevel'], {}) + visit_location(0x92808d, kGlobalObjects['SpriteMapArray'], {'SpriteMapArray_size' : 2096}) + visit_location(0x909F25, kGlobalObjects['SamusSpeedTableArray'], {'SamusSpeedTableArray_size' : 1}) + visit_location(0x909F31, kGlobalObjects['SamusSpeedTableArray'], {'SamusSpeedTableArray_size' : 1}) + visit_location(0x909F3D, kGlobalObjects['SamusSpeedTableArray'], {'SamusSpeedTableArray_size' : 1}) + visit_location(0x909f49, kGlobalObjects['SamusSpeedTableArray'], {'SamusSpeedTableArray_size' : 27}) + visit_location(0x90A08D, kGlobalObjects['SamusSpeedTableArray'], {'SamusSpeedTableArray_size' : 28}) + visit_location(0x90A1DD, kGlobalObjects['SamusSpeedTableArray'], {'SamusSpeedTableArray_size' : 28}) + + visit_location(0x929263, kGlobalObjects['SamusPoseToSpritemapIndex'], {}) + visit_location(0x92945D, kGlobalObjects['SamusPoseToSpritemapIndex'], {}) + + + pop_current_file(old_file) + +def visit_projectiles(): + old_file = push_current_file('proj') + visit_location(0x9383C1, MakeArray(ProjectileDataTable(), 12, 'ProjectileDataTableArray'), {}) + visit_location(0x9383D9, MakeArray(ProjectileDataTable(), 12, 'ProjectileDataTableArray'), {}) + visit_location(0x9383F1, MakeArray(CodePtr(0x93), 9, 'ProjectileDataTableArray'), {}) + visit_location(0x938403, MakeArray(CodePtr(0x93), 8, 'ProjectileDataTableArray'), {}) + visit_location(0x938413, MakeArray(CodePtr(0x93), 12, 'ProjectileDataTableArray'), {}) + visit_location(0x93842B, MakeArray(CodePtr(0x93), 3, 'ProjectileDataTableArray'), {}) + for ea in range(0x93866D, 0x938695, 4): + visit_location(ea, ProjectileDataTableOnlyOne(), {}) + visit_location(0x9386D7, ProjectileDataTableOnlyOne(), {}) + for ea in range(0x938695, 0x9386D7, 22): + visit_location(ea, ProjectileDataTable(), {}) + for ea in range(0x938641, 0x93866D, 22): + visit_location(ea, ProjectileDataTable(), {}) + visit_location(0x93a1a1, kGlobalObjects['SpriteMapArray'], {'SpriteMapArray_size' : 66}) + projectile_parser.process_queue() + for spritemap in projectile_parser.sprite_maps: + visit_location(spritemap, SpriteMap(bank = 'auto'), {}) + pop_current_file(old_file) + +PalfxParserPtr = CodePtr(0x8d, visitor = lambda x, e: palfx_parser.visit(mark_address(x))) +class Palfx(TStruct): + __name__ = 'Palfx' + __bank__ = 0x8d + __size__ = 4 + __compact__ = True + __fields__ = { + 'code': CodePtr(0x8d), + 'instrs': PalfxParserPtr, + } +add_global(Palfx()) +add_global(MakeArray(PalfxParserPtr, 16, 'PalfxArray', bank = 0x8d)) + +def visit_palettes(): + old_file = push_current_file('palettes') + + for ea in consts.kPalfxDefs: + visit_location(ea, Palfx(), {}) + + visit_location(0x8de3e0, kGlobalObjects['PalfxArray'], {}) + visit_location(0x8de400, kGlobalObjects['PalfxArray'], {}) + visit_location(0x8de420, kGlobalObjects['PalfxArray'], {}) + + palfx_parser.process_queue() + + visit_location(0x8CE1E9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x8CE3E9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x8CE5E9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x8CE7E9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x8CE9E9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x8CEBE9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x8CEDE9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x8CEFE9, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + visit_location(0x9a8000, kGlobalObjects['Palette256'], {'Palette256_size' : 256}) + pop_current_file(old_file) + +def visit_tilemaps(): + old_file = push_current_file('tilemaps') + for i in range(20): + if t := get_word(0x83ABF0 + i*2): + visit_location(t | 0x8a0000, Blob(), {'blob_size' : 1056 * 2}) + for i in range(6): + if t := get_word(0x88ADA6 + i*2): + visit_location(t | 0x8a0000, Blob(), {'blob_size' : 1024 * 2}) + pop_current_file(old_file) + +def visit_plms(): + old_file = push_current_file('plm') + pp = Plm() + for ea in consts.kPlmHeaderAddrs: + visit_location(ea, pp, {}) + + plm_parser.visit(mark_address(0x84D519)) + plm_parser.process_queue() + for k, v in plm_parser.blobs.items(): + visit_location(k, Blob(), {'blob_size': v}) + + pop_current_file(old_file) + +def visit_eproj(): + old_file = push_current_file('eproj') + for ea in consts.kEprojHeaders: + visit_location(ea, kGlobalObjects['EprojDef'], {}) + for ea in consts.kEprojInstrLists: + eproj_parser.visit(mark_address(ea)) + eproj_parser.process_queue() + for spritemap in eproj_parser.sprite_maps: + visit_location(spritemap, SpriteMap(bank = 'auto'), {}) + pop_current_file(old_file) + +class MsgBoxConfig(TStruct): + __name__ = 'MsgBoxConfig' + __bank__ = 0x85 + __size__ = 6 + __compact__ = True + __fields__ = { + 'modify': CodePtr(0x85), + 'draw': CodePtr(0x85), + 'tilemap': CodePtr(0x85), + } +add_global(StructArray(MsgBoxConfig(), terminator = None, name = 'MessageBoxConfigArray')) + +def visit_msgbox(): + old_file = push_current_file('msgbox') + visit_location(0x85869B, kGlobalObjects['MessageBoxConfigArray'], {'MessageBoxConfigArray_size' : 29}) + arr = sorted(set(0x850000 | ROM.get_word(0x85869B + i * 6 + 4) for i in range(29))) + for i in range(len(arr)): + visit_location(arr[i], kGlobalObjects['Tile16'], {'Tile16_size' : (0 if i == (len(arr) - 1) else arr[i + 1] - arr[i]) // 2 }) + pop_current_file(old_file) + +AnimtilesParserPtr = CodePtr(0x87, visitor = lambda x, e: animtiles_parser.visit(mark_address(x), e['size'])) + +class Animtiles(TStruct): + __name__ = 'Animtiles' + __bank__ = 0x87 + __size__ = 6 + __compact__ = True + __fields__ = { + 'instrs': AnimtilesParserPtr, + 'size': uint16_hex, + 'vram_addr': uint16_hex + } + def parse_actual_binary(self, ea, extra): + return super().parse_actual_binary(ea, {'size' : ROM.get_word(ea + 2)}) +add_global(Animtiles()) + + +def visit_animtiles(): + old_file = push_current_file('animtiles') + for ea in consts.kAnimtilesDefs: + visit_location(ea, Animtiles(), {}) +# ia = get_word(ea) | 0x870000 +# size = get_word(ea + 2) +# animtiles_parser.visit(mark_address(ia), size) + animtiles_parser.process_queue() + for k, v in animtiles_parser.blobs.items(): + visit_location(k, Blob(), {'blob_size': v}) + + pop_current_file(old_file) + +def visit_misc(): + visit_location(0xA0DAFF, kGlobalObjects['Enemy'], {}) + visit_location(0xA0DF7F, kGlobalObjects['Enemy'], {}) + visit_location(0xA0EF3F, kGlobalObjects['Enemy'], {}) + visit_location(0xA0EFBF, kGlobalObjects['Enemy'], {}) + + for x in consts.kEnemyPopulation: + visit_location(x, kGlobalObjects['EnemyPopulation'], {}) + +def visit_enemy(): + old_file = push_current_file('enemy') + for k, v in name2ea.items(): + if '_Ilist_' in k and k != 'kRidley_Ilist_DCBA': + if (v >> 16) != 0xb4: + enemy_instr_parser.visit(mark_address(v)) + enemy_instr_parser.process_queue() + + for ea in enemy_instr_parser.sprite_maps: + if 'ExtSprmap' in ea2name[ea]: + visit_location(ea, ExtSpriteMap(), {}) + else: + visit_location(ea, SpriteMap(bank = 'auto'), {}) + + visit_location(0xADC600, Blob(), {'blob_size' : 0x1800}) + + pop_current_file(old_file) + +for name, obj in inspect.getmembers(inspect.getmodule(inspect.currentframe()), inspect.isclass): + if hasattr(obj, 'lazy_load') and callable(getattr(obj, 'lazy_load')): + obj.lazy_load() + +def compile_code(): + try: + parser = text_lexer.ParserAndWriter(write_global_object, get_name_ea) + #parser.output = bytearray(0xff for i in range(1024*1024*3)) + #parser.output_is_set = bytearray(0 for i in range(1024*1024*3)) + parser.output = bytearray(ROM.data) + parser.output_is_set = bytearray(0 for i in range(1024*1024*3)) + for k in glob.glob('defs/*.txt'): + parser.parse_toplevel(k) + parser.apply_relocs() + open('out.bin', 'wb').write(parser.output) +# open('out_is_set.bin', 'wb').write(parser.output_is_set) + print(sum(parser.output_is_set)) + except Exception as e: + print(e.args) + raise + +def visit_all(): + visit_enemy() + visit_tilemaps() + visit_plms() + visit_rooms() + visit_blobs() + visit_samus() + visit_projectiles() + visit_palettes() + visit_eproj() + visit_msgbox() + visit_animtiles() + visit_misc() + +def print_things(what, file): + out = LinePrinter() + for k, v in sorted(what.items()): + if k not in g_already_emitted: + g_already_emitted.add(k) + v[1].print_actual_text(out, v[0]) + for l in out.lines: + print(l, file = file) + +import os +try: + os.mkdir('defs') +except FileExistsError: + pass + +if sys.argv[1] == 'decode': + visit_all() + + for k, v in g_file_sets.items(): + with open('defs/%s.txt' % (k if k != '' else 'out'), 'w') as f: + if k == 'plm': + plm_parser.print(f) + elif k == 'eproj': + eproj_parser.print(f) + elif k == 'proj': + projectile_parser.print(f) + elif k == 'animtiles': + animtiles_parser.print(f) + elif k == 'palettes': + palfx_parser.print(f) + elif k == 'enemy': + enemy_instr_parser.print(f) + print_things(v, file = f) + + +if sys.argv[1] == 'compile': + compile_code() diff --git a/assets/text_lexer.py b/assets/text_lexer.py new file mode 100644 index 0000000..1a6e841 --- /dev/null +++ b/assets/text_lexer.py @@ -0,0 +1,512 @@ +import re +import plm_decode +import projectile_decode +import eproj_decode +import animtiles_decode +import palfx_decode +import enemy_instr_decode + +NUMBER_RE = re.compile(r'(-?)(0x[0-9a-fA-F]+|\d+)') +HEX_NUMBER4_RE = re.compile(r'[0-9a-fA-F]{4}') +IDENT_RE = re.compile(r'[a-zA-Z_][a-zA-Z0-9_]*') +HEX_NUMBER_RE = re.compile(r'[0-9a-fA-F]+') + +class Lexer: + def __init__(self): + self.expectation = [] + + def set_file(self, filename): + self.token, self.token_arg = None, None + self.has_token = False + self.mode = '' + self.text = open(filename).read() + self.text_pos = 0 + self.lineno = 1 + self.start_lineno = 1 + self.start_line = 0 + self.filename = filename + + def next_char(self): + if self.text_pos >= len(self.text): + return '' + c = self.text[self.text_pos] + self.text_pos += 1 + return c + + def fill(self): + self.start_lineno = self.lineno + while True: + c = self.next_char() + if c != ' ' and c != '\t' and c != '\n': + break + if c == '\n': + self.lineno += 1 + self.start_line = self.text_pos + + if c in ('', '{', '}', ':', ',', '(', ')', '!', '@', '$', '='): + return c, True + + if self.mode == 'tile4': + if (m := HEX_NUMBER4_RE.match(self.text, self.text_pos - 1)) != None: + self.text_pos = m.end() + return 'tile4', int(m.group(0), 16) + + if self.mode == 'hex': + if (m := HEX_NUMBER_RE.match(self.text, self.text_pos - 1)) != None: + self.text_pos = m.end() + return 'hex_data', m.group(0) + else: + if c >= '0' and c <= '9' or c == '-': + m = NUMBER_RE.match(self.text, self.text_pos - 1) + self.text_pos = m.end() + return 'number', int(m.group(0), 0) + + if c >= 'a' and c <= 'z' or c >= 'A' and c <= 'Z' or c == '_': + m = IDENT_RE.match(self.text, self.text_pos - 1) + self.text_pos = m.end() + return 'ident', m.group(0) + + if c == '<' and self.text.startswith('?', self.text_pos): + self.text_pos += 1 + return 'code_start', True + + if c == '?' and self.text.startswith('>', self.text_pos): + self.text_pos += 1 + return 'code_end', True + + if c == '"': + l = 0 + while (c := self.next_char()) not in ('', '"'): + l += 1 + return 'string', self.text[self.text_pos - l - 1 : self.text_pos - 1] + self.syntax_error(f"Unexpected character '{c}'") + + def is_next_or_newline(self, symbol): + if rv := self.is_next(symbol): + return rv + return True if self.lineno != self.start_lineno else None + + def is_next(self, expected): + if not self.has_token: + self.token, self.token_arg = self.fill() + self.has_token = True + del self.expectation[:] + self.expectation.append(expected) + if self.token != expected: + return None + self.has_token = False + return self.token_arg + + def peek_next(self, expected): + if not self.has_token: + self.token, self.token_arg = self.fill() + self.has_token = True + del self.expectation[:] + return self.token == expected + + def expect(self, expected): + if rv := self.is_next(expected): + return rv + self.syntax_error() + + def syntax_error(self, msg = 'Error'): + expects = ', '.join(f"'{a}'" for a in self.expectation) + tok = self.token_arg if self.token=='ident' else self.token + self.error(f"{msg} at '{tok}'. Expecting: {expects}") + raise Exception() + + def error(self, msg): + msg = f'{self.filename}:{self.lineno}: {msg}' + raise Exception(msg) + +class Parser(Lexer): + def parse_function_args(self): + if self.is_next(')'): + return () + args = [] + while True: + if (number := self.is_next('number')) != None: + args.append(number) + elif (ident := self.is_next('ident')) != None: + args.append(ident) + else: + self.syntax_error() + if self.is_next(')'): + return args + self.expect(',') + + def parse_draw_def(self): + result = [] + x, y = 0, 0 + while True: + if (num := self.is_next('number')) != None: + ident = self.is_next('ident') + if ident == 'x': + x = num + continue + elif ident == 'y': + y = num + continue + elif (ident := self.is_next('ident')) != None: + if ident in ('h', 'v'): + self.mode = 'tile4' + r = [] + result.append((ident, x, y, r)) + while True: + if (num := self.is_next('tile4')) != None: + r.append(num) + elif self.is_next('!') != None: + self.mode = '' + x, y = 0, 0 + break + elif self.is_next_or_newline(';'): + self.mode = '' + return result + else: + self.syntax_error() + continue + self.syntax_error() + + def parse_code_common(self, tag, module, spr_bank = None): + if (ident := self.is_next('ident')) != None: + if self.is_next(':'): # label + self.add_label(ident, module) + return + if self.is_next('('): # command + args = self.parse_function_args() + self.add_call(ident, module, args) + return + elif spr_bank and (number := self.is_next('number')) != None: + self.expect('!') + ident = self.expect('ident') + self.write_word(number) + if spr_bank == 'auto': spr_bank = self.get_ea() >> 16 + self.write_word(self.get_addr_in_bank(ident, spr_bank)) + return + self.syntax_error() + + def parse_plm_code(self): + if (ident := self.is_next('ident')) != None: + if self.is_next(':'): # label + self.add_label(ident, plm_decode) + elif self.is_next('('): # command + args = self.parse_function_args() + self.add_call(ident, plm_decode, args) + elif self.is_next('!'): + self.add_draw_def(ident, self.parse_draw_def()) + else: + self.syntax_error() + elif (number := self.is_next('number')) != None: + self.expect('!') + self.add_draw_cmd(number, self.expect('ident')) + else: + self.syntax_error() + + def parse_proj_code(self): + self.parse_code_common('proj', projectile_decode, None) + + def parse_eproj_code(self): + self.parse_code_common('eproj', eproj_decode, 0x8d) + + def parse_animtiles_code(self): + self.parse_code_common('animtiles', animtiles_decode, 0x87) + + def parse_enemy_code(self): + self.parse_code_common('enemy', enemy_instr_decode, 'auto') + + def parse_palfx_code(self): + module = palfx_decode + if (ident := self.is_next('ident')) != None: + if self.is_next(':'): # label + self.add_label(ident, module) + return + if self.is_next('('): # command + args = self.parse_function_args() + self.add_call(ident, module, args) + return + else: + if (number := self.is_next('number')) != None: + self.write_word(number) + self.expect('!') + self.mode = 'tile4' + while (v := self.is_next('tile4')) != None: + assert v & 0x8000 == 0 + self.write_word(v) + self.mode = '' + if not self.is_next('!'): + self.write_word(0xc595) # Wait + return + self.syntax_error() + + def parse_toplevel(self, filename): + print('Parsing', filename) + self.set_file(filename) + kCodeParsers = { + 'plm': self.parse_plm_code, + 'proj': self.parse_proj_code, + 'eproj': self.parse_eproj_code, + 'animtiles': self.parse_animtiles_code, + 'palfx' : self.parse_palfx_code, + 'enemy' : self.parse_enemy_code, + } + while not self.is_next(''): + if self.is_next('code_start'): + parser = kCodeParsers.get(self.expect('ident')) + if parser == None: + self.syntax_error() + while not self.is_next('code_end'): + parser() + else: + ident = self.expect('ident') + name = self.expect('ident') + if self.is_next('{'): + self.parse_fields(ident, name, None) + elif self.is_next('='): + self.parse_assignment_value(ident, name) + else: + self.syntax_error() + + def parse_fields(self, fields_ident, fields_name, args): + self.begin_field(fields_ident, fields_name, args) + has_comma = True + allow_list_values = True + while not self.is_next('}'): + if not has_comma: + self.syntax_error() + if (ident := self.is_next('ident')) != None: + if self.is_next(',') or self.peek_next('}'): + if not allow_list_values: + self.error(f"Error: keyword arguments need to be first, found '{ident}'") + self.add_field_value(None if ident == 'null' else ident) + has_comma = True + continue + args = self.parse_function_args() if self.is_next('(') else None + name = self.is_next('ident') + if self.is_next('{'): + self.parse_fields(ident, name, args) + has_comma, allow_list_values = True, False + continue + if args == None and name != None and self.is_next('='): + self.parse_assignment_value(ident, name) + continue + if name == None and args == None and self.is_next(':'): + self.add_field_key_value(ident, self.parse_field_value()) + has_comma, allow_list_values = self.is_next_or_newline(',') != None, False + continue + elif (number := self.is_next('number')) != None: + if not allow_list_values: + self.error(f"Error: keyword arguments need to be first, found '{number}'") + self.add_field_value(number) + has_comma = self.is_next_or_newline(',') != None + continue + self.syntax_error() + self.end_field() + + def parse_assignment_value(self, ident, name): + self.expect('$') + if self.expect('ident') != 'hex': + self.error("expecting 'hex'") + self.expect('(') + self.mode = 'hex' + hex_data = [] + while d := self.is_next('hex_data'): + hex_data.append(d) + self.expect(')') + self.mode = '' + class HexField: + def __init__(self): + self.value = bytes.fromhex("".join(hex_data)) + self.ident = ident + self.name = name + self.write_global_object(self, HexField()) + + def parse_field_value(self): + if (number := self.is_next('number')) != None: + return number + elif (string := self.is_next('string')) != None: + return string + elif (ident := self.is_next('ident')) != None: + return None if ident == 'null' else ident + self.syntax_error() + +class WriterFields: + def __init__(self, ident, name, args): + self.ident = ident + self.name = name + self.args = args + self.list = [] + self.dict = {} + +class ParserAndWriter(Parser): + def __init__(self, write_global_object, get_name_ea): + super().__init__() + self.write_global_object = write_global_object + self.get_name_ea = get_name_ea + self.cur_addr = 0 + self.output = bytearray(0x300000) + self.output_is_set = bytearray(0x300000) + self.relocs = [] + self.label_addr = {} + self.stack = [] + + def check_int_range(self, v, mi, ma): + if not isinstance(v, int): + self.error(f'Value {v} is not an integer') + if v < mi or v > ma: + self.error(f'Value {v} out of range [{mi}, {ma}]') + + def get_addr(self, name): + result = self.get_name_ea(name) + if result == None: + self.error(f'Unknown address {name}') + return result + + def get_addr_in_bank(self, name, bank): + result = self.get_addr(name) + if bank != None and (result >> 16) != bank: + self.error(f'Address {name} is not in bank {bank:x}') + return result & 0xffff + + def add_label(self, lbl, module): + addr = self.get_name_ea(lbl, bank = module.BANK) + if addr != None: + self.cur_addr = addr + self.label_addr[lbl] = self.cur_addr + + def add_call(self, cmd, module, args): + cmdvalue, argspec = module.kCommandByName[cmd] + if len(args) != len(argspec): + self.error(f'Wrong number of arguments to {cmd}, got {len(args)}, expecting {len(argspec)}') + if cmdvalue != None: + if module.BANK != None and (cmdvalue >> 16) != module.BANK: + self.error(f'Not in bank {module.BANK:X}: {v}') + self.write_word(cmdvalue & 0xffff) + for i in range(len(args)): + a, v = argspec[i], args[i] + if a == 'B': + self.write_byte(v) + elif a in ('H', 'X', 'I'): + self.write_word(v & 0xffff) + elif a == 'L': # long address + self.write_long(self.get_addr(v)) + elif a == 'A': # address in bank same bank + self.write_word(self.get_addr_in_bank(v, module.BANK)) + elif a == '9': # address in bank 89 + self.write_word(self.get_addr_in_bank(v, 0x89)) + elif a == 'a': # address in bank a0 + self.write_word(self.get_addr_in_bank(v, 0xa0)) + elif a == '6': # address in bank a0 + self.write_word(self.get_addr_in_bank(v, 0xa6)) + elif a == 'S': # spritemap in bank 8d + self.write_word(self.get_addr_in_bank(v, 0x8d)) + elif a == 'G': # goto + self.add_reloc(v, module.BANK) + else: + raise Exception(f'Unknown command character: {a}') + + def add_reloc(self, target, bank): + assert isinstance(target, str), target + v = self.label_addr.get(target) + if v == None: + v = self.get_name_ea(target) + if v != None: + if bank != None and (v >> 16) != bank: + self.error(f"Label '{target}/{v:x}' referenced from {self.cur_addr:x} is not in bank {bank:x}") + self.write_word(v & 0xffff) + else: + self.relocs.append((self.cur_addr, target, bank)) + self.cur_addr += 2 + + def apply_relocs(self): + for addr, target, bank in self.relocs: + v = self.label_addr.get(target) + if v == None: + v = self.get_name_ea(target) + if v == None: + self.error(f"Unknown label '{target}' referenced from {addr:x}") + if (v >> 16) != bank: + self.error(f"Label '{target}' referenced from {addr:x} is not in bank {bank:x}") + self.cur_addr = addr + self.write_word(v & 0xffff) + + def add_draw_cmd(self, number, cmd): + self.write_word(number) + self.write_word(self.get_addr_in_bank(cmd, 0x84)) + + def add_draw_def(self, ident, draw_def): + backup = self.cur_addr + self.cur_addr = 0x840000 | self.get_addr_in_bank(ident, 0x84) + for i, line in enumerate(draw_def): + if i != 0: + self.write_word((line[1] & 0xff) | (line[2] & 0xff) << 8) + self.write_word((line[0] == 'v') * 0x8000 | len(line[3])) + for a in line[3]: + self.write_word(a) + self.write_word(0) + self.cur_addr = backup + + def begin_field(self, ident, name, args): + wf = WriterFields(ident, name, args) + self.stack.append(wf) + + def add_field_value(self, value): + self.stack[-1].list.append(value) + + def add_field_key_value(self, key, value): + self.stack[-1].dict[key] = value + + def end_field(self): + wf = self.stack.pop() + if len(self.stack): + self.add_field_value(wf) + else: + self.write_global_object(self, wf) + + def write_byte(self, v): + assert self.cur_addr != None + + self.check_int_range(v, 0, 255) + addr = self.cur_addr + assert addr & 0x8000 + ea = (((addr >> 16) << 15) | (addr & 0x7fff)) & 0x3fffff + if self.output_is_set[ea] and self.output[ea] != v: + self.error('Address 0x%x already set to a different value (0x%x vs 0x%x)' % (self.cur_addr, self.output[ea], v)) + self.output[ea], self.output_is_set[ea] = v, 1 + self.cur_addr += 1 + + def write_word(self, v): + self.check_int_range(v, -32768, 65535) + self.write_byte(v & 0xff) + self.write_byte((v >> 8) & 0xff) + + def write_long(self, v): + self.write_byte(v & 0xff) + self.write_byte((v >> 8) & 0xff) + self.write_byte(v >> 16) + + def write_bytes(self, v): + for b in v: + self.write_byte(b) + + def write_bytes_with_wrap(self, v): + for b in v: + if (self.cur_addr & 0xffff) == 0: + self.cur_addr += 0x8000 + self.write_byte(b) + + def write_symbol_word(self, v, bank): + if v == 0 or v == None: + self.write_word(0) + else: + self.add_reloc(v, bank) + + def write_symbol_long(self, v): + if not isinstance(v, int): + ea = self.get_name_ea(v) + if ea == None: + self.error(f'Unknown address {v}') + v = ea + self.write_long(v) + + def get_ea(self): + return self.cur_addr diff --git a/src/funcs.h b/src/funcs.h index d91f975..27f56e8 100644 --- a/src/funcs.h +++ b/src/funcs.h @@ -999,7 +999,6 @@ void PaletteFxHandler(void); void SpawnPalfxObject(uint16 j); // Bank 8F -uint16 RoomDefStateSelect_Door(uint16 k); uint16 RoomDefStateSelect_Finish(uint16 k); uint16 RoomDefStateSelect_IsBossDead(uint16 k); uint16 RoomDefStateSelect_IsEventSet(uint16 k); @@ -1663,7 +1662,6 @@ void Unused_SamusTileViewer(void); // Bank 93 uint16 Proj93Instr_Delete(uint16 k, uint16 j); uint16 Proj93Instr_Goto(uint16 k, uint16 j); -uint16 Proj93Instr_GotoIfLess(uint16 k, uint16 j); void DrawBombAndProjectileExplosions(void); void DrawPlayerExplosions2(void); void InitializeBombExplosion(uint16 k); @@ -4862,7 +4860,6 @@ void VerifySRAM(void); #define fnEprojPreInstr_TourianStatueSoul 0x86B9FD #define fnEprojPreInstr_TourianStatueStuff 0x86BA37 #define fnEprojPreInstr_BA42 0x86BA42 -#define fnEprojInstr_BB24 0x86BB24 #define fnsub_86BB30 0x86BB30 #define fnnullsub_91 0x86BB4F #define fnEprojInit_NuclearWaffleBody 0x86BB92 @@ -5500,7 +5497,7 @@ void VerifySRAM(void); #define fnCinematicSprInstr_Func218 0x8BF651 #define fnCinematicFunction_Intro_Func219 0x8BF6FE #define fnPalPreInstr_nullsub_129 0x8DC526 -#define fnPalInstr_Finish 0x8DC595 +#define fnPalInstr_Wait 0x8DC595 #define fnPalInstr_ColorPlus2 0x8DC599 #define fnPalInstr_ColorPlus3 0x8DC5A2 #define fnPalInstr_ColorPlus4 0x8DC5AB @@ -5511,9 +5508,7 @@ void VerifySRAM(void); #define fnPalInstr_SetPreInstr 0x8DC5D4 #define fnPalInstr_ClearPreInstr 0x8DC5DD #define fnPalInstr_Goto 0x8DC61E -#define fnPalInstr_GotoRel 0x8DC623 #define fnPalInstr_DecTimerGoto 0x8DC639 -#define fnPalInstr_DecTimerGotoRel 0x8DC641 #define fnPalInstr_SetTimer 0x8DC648 #define fnPalInstr_SetColorIndex 0x8DC655 #define fnPalInstr_QueueMusic 0x8DC65E @@ -5526,7 +5521,6 @@ void VerifySRAM(void); #define fnPalPreInstr_CheckEnemy0Health 0x8DE2E0 #define fnPalPreInstr_SamusInHeat 0x8DE379 #define fnPalInit_F761_Norfair1 0x8DE440 -#define fnPalInstr_SetTimerIfBossBit 0x8DEB2A #define fnPalPreInstr_SwitchIfYpos 0x8DEC59 #define fnPalPreInstr_SwitchIfYpos2 0x8DED84 #define fnPalPreInstr_DeletePalfxIfMinibossDead 0x8DEEC5 @@ -5832,7 +5826,6 @@ void VerifySRAM(void); #define fnSamus_Func20 0x91FCAF #define fnProj93Instr_Delete 0x93822F #define fnProj93Instr_Goto 0x938239 -#define fnProj93Instr_GotoIfLess 0x938240 #define fnGrappleInstr_Goto 0x94B0F4 #define fnnullsub_6 0x9BB8D4 #define fnGrappleNext_SwingClockwise 0x9BB9D9 diff --git a/src/ida_types.h b/src/ida_types.h index f1ee8e6..fb85a88 100644 --- a/src/ida_types.h +++ b/src/ida_types.h @@ -34,7 +34,7 @@ typedef struct FxDef { /* 4 */ typedef struct LoadStationList { - VoidP room_ptr; + VoidP room_ptr_; VoidP door_ptr; uint16 door_bts; uint16 screen_x_pos; @@ -107,9 +107,6 @@ typedef struct Eproj_InitXYVelRandom_Args { uint16 field_8; } Eproj_InitXYVelRandom_Args; -/* 84 */ -typedef uint16 uint16; - /* 13 */ typedef struct EnemyData { uint16 enemy_ptr; @@ -615,9 +612,8 @@ typedef struct SamusTileAnimationDefs { } SamusTileAnimationDefs; /* 43 */ -typedef struct SamusTileAnimationTileDefs { - uint16 src; - uint8 gap2; +typedef struct SamusTileAnimationTileDefs { + LongPtr src; uint16 part1_size; uint16 part2_size; }SamusTileAnimationTileDefs; @@ -625,16 +621,7 @@ typedef struct SamusTileAnimationTileDefs { /* 44 */ typedef struct ProjectileDataTable { uint16 damage; - VoidP field_2; - VoidP field_4; - VoidP field_6; - VoidP field_8; - VoidP field_A; - VoidP field_C; - VoidP field_E; - VoidP field_10; - VoidP field_12; - VoidP field_14; + uint16 instr_ptrs[10]; } ProjectileDataTable; /* 45 */ @@ -986,11 +973,11 @@ typedef enum Buttons { } Buttons; /* 96 */ -typedef struct StateHeaderTiles { +typedef struct TileSet { LongPtr tile_table_ptr; LongPtr tiles_ptr; LongPtr palette_ptr; -} StateHeaderTiles; +} TileSet; /* 97 */ typedef struct RoomDefRoomstate { @@ -1078,13 +1065,6 @@ typedef struct VramReadQueueEnt { uint16 size; } VramReadQueueEnt; -/* 107 */ -typedef struct SpriteDrawEnt { - uint16 x_and_flags; - uint8 xcoord; - uint16 char_flags; -} SpriteDrawEnt; - /* 108 */ typedef struct EnemyTileLoadData { uint16 tile_data_size; @@ -1197,15 +1177,8 @@ typedef struct FileCopyArrowStuff { uint16 ypos; } FileCopyArrowStuff; -/* 120 */ -typedef struct GameOverBabyMetroidInstruction { - VoidP field_0; - VoidP field_2; - VoidP field_4; -} GameOverBabyMetroidInstruction; - /* 122 */ -typedef struct EnemyDef_A2 { +typedef struct EnemyDef { uint16 tile_data_size; VoidP palette_ptr; uint16 health; @@ -1239,21 +1212,9 @@ typedef struct EnemyDef_A2 { VoidP item_drop_chances_ptr; VoidP vulnerability_ptr; VoidP name_ptr; -} EnemyDef_A2; - -typedef EnemyDef_A2 EnemyDef_A3; -typedef EnemyDef_A2 EnemyDef_A4; -typedef EnemyDef_A2 EnemyDef_A5; -typedef EnemyDef_A2 EnemyDef_A6; -typedef EnemyDef_A2 EnemyDef_A7; -typedef EnemyDef_A2 EnemyDef_A8; -typedef EnemyDef_A2 EnemyDef_AA; - -typedef EnemyDef_A2 EnemyDef_B2; -typedef EnemyDef_A2 EnemyDef_B3; -/* 133 */ +} EnemyDef; -typedef struct Ram3000_MsgBox { +typedef struct Ram3000_MsgBox { uint8 pad[188]; uint16 msg_box_anim_y_radius_neg[30]; uint16 msg_box_anim_y_radius[30]; @@ -1316,106 +1277,6 @@ typedef struct Mode7CgvmWriteQueue { uint8 vmain; } Mode7CgvmWriteQueue; -/* 140 */ -typedef struct RoomDefStateSelect_29E6_BossBitFlags { - VoidP code_ptr; - uint8 bb; - VoidP ssss; -} RoomDefStateSelect_29E6_BossBitFlags; - -/* 141 */ -typedef struct RoomDefStateSelect_12E6_EventBitArray { - VoidP code_ptr; - uint8 rr; - VoidP ssss; -} RoomDefStateSelect_12E6_EventBitArray; - -/* 142 */ -typedef struct RoomDefStateSelect_52E6_MorphMissile { - VoidP code_ptr; - uint16 ssss; -} RoomDefStateSelect_52E6_MorphMissile; - -/* 143 */ -typedef struct RoomDefStateSelect_69E6_PowerBombs { - VoidP code_ptr; - VoidP ssss; -} RoomDefStateSelect_69E6_PowerBombs; - -/* 144 */ -typedef struct RoomDefStateSelect_78E6_SpeedBooster { - VoidP code_ptr; - uint16 ssss; -} RoomDefStateSelect_78E6_SpeedBooster; - -/* 151 */ -typedef struct Ram7800_SpikeShootingPlant { - uint16 var_a; - uint16 var_b; -}Ram7800_SpikeShootingPlant; - -/* 152 */ -typedef struct Ram7800_MaridiaSpikeyShell { - uint16 field_0; - uint16 field_2; - uint16 field_4; -}Ram7800_MaridiaSpikeyShell; - -/* 153 */ -typedef struct Ram7800_MiniMaridiaTurtle { - uint16 var_a; - uint16 var_b; - uint16 var_c; - uint16 var_d; - uint16 var_e; - uint16 var_f; - uint16 var_g; - uint16 var_h; -}Ram7800_MiniMaridiaTurtle; - -/* 154 */ -typedef struct Ram7800_ThinHoppingBlobs { - uint16 var_a; - uint16 var_b; - uint16 var_c; - uint16 var_d; - uint16 var_e; - uint16 var_f; - uint16 var_g; - uint16 var_h; -}Ram7800_ThinHoppingBlobs; - -/* 155 */ -typedef struct Ram7800_NorfairLavajumpingEnemy { - uint16 var_a; - uint16 var_b; - uint16 var_c; - uint16 var_d; - uint16 var_e; - uint16 var_f; - uint16 var_g; - uint16 var_h; -}Ram7800_NorfairLavajumpingEnemy; - -/* 156 */ -typedef struct Ram7800_NorfairRio { - uint16 var_a; - uint16 var_b; - uint16 var_c; - uint16 var_d; - uint16 var_e; - uint16 var_f; - uint16 var_g; - uint16 var_h; -}Ram7800_NorfairRio; - -/* 157 */ -typedef struct Ram7800_FireFlea { - uint16 var_a; - uint16 var_b; - uint16 var_c; -}Ram7800_FireFlea; - /* 145 */ typedef union ExtraEnemyRam7800 { Ram7800_Kraid kraid; @@ -2694,8 +2555,8 @@ static inline VramWriteEntry *gVramWriteEntry(int a) { return (VramWriteEntry *) struct DoorDef; static inline DoorDef *get_DoorDef(uint16 a) { return (DoorDef *)RomPtr(0x830000 | a); } struct RoomDefHeader; static inline RoomDefHeader *get_RoomDefHeader(uint16 a) { return (RoomDefHeader *)RomPtr(0x8F0000 | a); } struct RoomDefRoomstate; static inline RoomDefRoomstate *get_RoomDefRoomstate(uint16 a) { return (RoomDefRoomstate *)RomPtr(0x8F0000 | a); } -struct StateHeaderTiles; static inline StateHeaderTiles *get_StateHeaderTiles(uint16 a) { return (StateHeaderTiles *)RomPtr(0x8F0000 | a); } -struct EnemyDef_A2; static inline EnemyDef_A2 *get_EnemyDef_A2(uint16 a) { return (EnemyDef_A2 *)RomPtr(0xA00000 | a); } +struct TileSet; static inline TileSet *get_TileSet(uint16 a) { return (TileSet *)RomPtr(0x8F0000 | a); } +struct EnemyDef; static inline EnemyDef *get_EnemyDef_A2(uint16 a) { return (EnemyDef *)RomPtr(0xA00000 | a); } struct EnemyTileset; static inline EnemyTileset *get_EnemyTileset(uint16 a) { return (EnemyTileset *)RomPtr(0xB40000 | a); } struct RoomPlmEntry; static inline RoomPlmEntry *get_RoomPlmEntry(uint16 a) { return (RoomPlmEntry *)RomPtr(0x8F0000 | a); } struct EprojDef; static inline EprojDef *get_EprojDef(uint16 a) { return (EprojDef *)RomPtr(0x860000 | a); } @@ -2717,7 +2578,6 @@ struct PlmHeader_Size4; static inline PlmHeader_Size4 *get_PlmHeader_Size4(uint1 struct PlmHeader_Size6; static inline PlmHeader_Size6 *get_PlmHeader_Size6(uint16 a) { return (PlmHeader_Size6 *)RomPtr(0x840000 | a); } struct RoomDefStateSelect_E6E5_Finish; static inline RoomDefStateSelect_E6E5_Finish *get_RoomDefStateSelect_E6E5_Finish(uint16 a) { return (RoomDefStateSelect_E6E5_Finish *)RomPtr(0x8F0000 | a); } struct SamusSpeedTableEntry; static inline SamusSpeedTableEntry *get_SamusSpeedTableEntry(uint16 a) { return (SamusSpeedTableEntry *)RomPtr(0x900000 | a); } -struct SpriteDrawEnt; static inline SpriteDrawEnt *get_SpriteDrawEnt(uint16 a) { return (SpriteDrawEnt *)RomPtr(0xA60000 | a); } struct SamusTileAnimationDefs; static inline SamusTileAnimationDefs *get_SamusTileAnimationDefs(uint16 a) { return (SamusTileAnimationDefs *)RomPtr(0x920000 | a); } struct PalFxDef; static inline PalFxDef *get_PalFxDef(uint16 a) { return (PalFxDef *)RomPtr(0x8D0000 | a); } struct Mode7ObjectDef; static inline Mode7ObjectDef *get_Mode7ObjectDef(uint16 a) { return (Mode7ObjectDef *)RomPtr(0x8B0000 | a); } diff --git a/src/sm_80.c b/src/sm_80.c index 856b8fa..2d9f2dd 100644 --- a/src/sm_80.c +++ b/src/sm_80.c @@ -921,36 +921,32 @@ void NmiUpdatePalettesAndOam(void) { // 0x80933A void NmiTransferSamusToVram(void) { // 0x809376 WriteReg(VMAIN, 0x80); if ((uint8)nmi_copy_samus_halves) { - const uint8 *rp = RomPtr_92(nmi_copy_samus_top_half_src); + SamusTileAnimationTileDefs *td = (SamusTileAnimationTileDefs *)RomPtr_92(nmi_copy_samus_top_half_src); WriteRegWord(VMADDL, 0x6000); WriteRegWord(DMAP1, 0x1801); - uint16 v0 = GET_WORD(rp + 0); - WriteRegWord(A1T1L, v0); - WriteRegWord(A1B1, GET_WORD(rp + 2)); - uint16 v2 = GET_WORD(rp + 3); - WriteRegWord(DAS1L, v2); + WriteRegWord(A1T1L, td->src.addr); + WriteReg(A1B1, td->src.bank); + WriteRegWord(DAS1L, td->part1_size); WriteReg(MDMAEN, 2); WriteRegWord(VMADDL, 0x6100); - WriteRegWord(A1T1L, v0 + v2); - if (GET_WORD(rp + 5)) { - WriteRegWord(DAS1L, GET_WORD(rp + 5)); + WriteRegWord(A1T1L, td->src.addr + td->part1_size); + if (td->part2_size) { + WriteRegWord(DAS1L, td->part2_size); WriteReg(MDMAEN, 2); } } if (HIBYTE(nmi_copy_samus_halves)) { - const uint8 *rp = RomPtr_92(nmi_copy_samus_bottom_half_src); + SamusTileAnimationTileDefs *td = (SamusTileAnimationTileDefs *)RomPtr_92(nmi_copy_samus_bottom_half_src); WriteRegWord(VMADDL, 0x6080); WriteRegWord(DMAP1, 0x1801); - uint16 v4 = GET_WORD(rp + 0); - WriteRegWord(A1T1L, v4); - WriteRegWord(A1B1, GET_WORD(rp + 2)); - uint16 v6 = GET_WORD(rp + 3); - WriteRegWord(DAS1L, v6); + WriteRegWord(A1T1L, td->src.addr); + WriteReg(A1B1, td->src.bank); + WriteRegWord(DAS1L, td->part1_size); WriteReg(MDMAEN, 2); WriteRegWord(VMADDL, 0x6180); - WriteRegWord(A1T1L, v4 + v6); - if (GET_WORD(rp + 5)) { - WriteRegWord(DAS1L, GET_WORD(rp + 5)); + WriteRegWord(A1T1L, td->src.addr + td->part1_size); + if (td->part2_size) { + WriteRegWord(DAS1L, td->part2_size); WriteReg(MDMAEN, 2); } } @@ -2629,17 +2625,16 @@ void DecompressToVRAM(uint32 src, uint16 dst_addr) { // 0x80B271 void LoadFromLoadStation(void) { // 0x80C437 save_station_lockout_flag = 1; - const uint16 *v0 = (const uint16 *)RomPtr_80(kLoadStationLists[area_index] + 14 * load_station_index); - room_ptr = *v0; - door_def_ptr = v0[1]; - door_bts = v0[2]; - layer1_x_pos = v0[3]; - bg1_x_offset = layer1_x_pos; - layer1_y_pos = v0[4]; - bg1_y_offset = layer1_y_pos; - samus_y_pos = layer1_y_pos + v0[5]; + const LoadStationList *L = (LoadStationList *)RomPtr_80(kLoadStationLists[area_index] + 14 * load_station_index); + + room_ptr = L->room_ptr_; + door_def_ptr = L->door_ptr; +// door_bts = v0[2]; + bg1_x_offset = layer1_x_pos = L->screen_x_pos; + bg1_y_offset = layer1_y_pos = L->screen_y_pos; + samus_y_pos = layer1_y_pos + L->samus_y_offset; samus_prev_y_pos = samus_y_pos; - samus_x_pos = v0[6] + layer1_x_pos + 128; + samus_x_pos = layer1_x_pos + 128 + L->samus_x_offset; samus_prev_x_pos = samus_x_pos; reg_BG1HOFS = 0; reg_BG1VOFS = 0; diff --git a/src/sm_82.c b/src/sm_82.c index 2b8280e..810d8dd 100644 --- a/src/sm_82.c +++ b/src/sm_82.c @@ -1,12 +1,10 @@ // Top level main game routines - #include "sm_rtl.h" #include "ida_types.h" #include "variables.h" #include "funcs.h" #include "enemy_types.h" - #define kDemoRoomData ((uint16*)RomFixedPtr(0x82876c)) #define kPauseScreenSpriteAnimationData_0 (*(PauseScreenSpriteAnimationData*)RomFixedPtr(0x82c0b2)) #define kPauseScreenSpriteAnimationData_1 (*(PauseScreenSpriteAnimationData*)RomFixedPtr(0x82c0c4)) @@ -53,7 +51,7 @@ #define g_stru_82B9BE (*(MapScrollArrowData*)RomFixedPtr(0x82b9be)) #define file_copy_arrow_stuff ((FileCopyArrowStuff*)RomFixedPtr(0x82bb0c)) #define kMapElevatorDests ((uint16*)RomFixedPtr(0x82c74d)) -#define kStateHeaderGraphicsSets ((uint16*)RomFixedPtr(0x8fe7a7)) +#define kStateHeaderTileSets ((uint16*)RomFixedPtr(0x8fe7a7)) #define kCommonSpritesPalette1 ((uint16*)RomFixedPtr(0x9afc00)) #define kMenuPalettes ((uint16*)RomFixedPtr(0x8ee400)) #define kOptionsMenuSpecialPtrs ((uint16*)RomFixedPtr(0x82f0ae)) @@ -62,9 +60,6 @@ #define g_word_82F639 ((uint16*)RomFixedPtr(0x82f639)) #define g_off_82F647 ((uint16*)RomFixedPtr(0x82f647)) - - - void CallDemoRoomDataFunc(uint32 ea) { switch (ea) { case fnDemoRoom_ChargeBeamRoomScroll21: DemoRoom_ChargeBeamRoomScroll21(); return; @@ -548,7 +543,7 @@ void LoadDemoRoomData(void) { // 0x828679 drd = get_DemoRoomData(18 * demo_scene + kDemoRoomData[demo_set]); room_ptr = drd->room_ptr_; door_def_ptr = drd->door_ptr; - door_bts = drd->door_slot; +// door_bts = drd->door_slot; layer1_x_pos = drd->screen_x_pos; bg1_x_offset = layer1_x_pos; layer1_y_pos = drd->screen_y_pos; @@ -3653,10 +3648,10 @@ void LoadRoomHeader(void) { // 0x82DE6F void LoadStateHeader(void) { // 0x82DEF2 RoomDefRoomstate *RD = get_RoomDefRoomstate(roomdefroomstate_ptr); - StateHeaderTiles *SH = get_StateHeaderTiles(kStateHeaderGraphicsSets[RD->graphics_set]); - tileset_tile_table_pointer = SH->tile_table_ptr; - tileset_tiles_pointer = SH->tiles_ptr; - tileset_compr_palette_ptr = SH->palette_ptr; + TileSet *TS = get_TileSet(kStateHeaderTileSets[RD->graphics_set]); + tileset_tile_table_pointer = TS->tile_table_ptr; + tileset_tiles_pointer = TS->tiles_ptr; + tileset_compr_palette_ptr = TS->palette_ptr; room_compr_level_data_ptr = RD->compressed_room_map_ptr; room_music_data_index = RD->music_track; room_music_track_index = RD->music_control; @@ -3693,7 +3688,7 @@ void EnsureSamusDrawnEachFrame(void) { // 0x82DFC7 } void LoadEnemyGfxToVram(void) { // 0x82DFD1 - EnemyDef_A2 *ED; + EnemyDef *ED; uint16 dst = 0x7000; uint16 v0 = room_enemy_tilesets_ptr; @@ -4205,45 +4200,30 @@ void LoadCRETilesTilesetTilesAndPalette(void) { // 0x82E783 } void LoadLevelDataAndOtherThings(void) { // 0x82E7D3 - uint16 j; - int16 v3; - uint16 k; - RoomDefRoomstate *v12; - RoomDefRoomstate *RoomDefRoomstate; int16 rdf_scroll_ptr; uint16 m; int8 v10; int8 v11; uint16 n; - int8 v14; for (int i = 25598; i >= 0; i -= 2) level_data[i >> 1] = 0x8000; - DecompressToMem(Load24(&room_compr_level_data_ptr), g_ram + 0x10000); - uint16 v1 = ram7F_start; - for (j = ram7F_start + ram7F_start + (ram7F_start >> 1); ; custom_background[v1 >> 1] = level_data[j >> 1]) { - j -= 2; - v1 -= 2; - if ((v1 & 0x8000) != 0) - break; - } - v3 = ram7F_start >> 1; - for (k = ram7F_start + (ram7F_start >> 1); ; *(uint16 *)&BTS[(uint16)v3] = level_data[k >> 1]) { - k -= 2; - v3 -= 2; - if (v3 < 0) - break; - } + DecompressToMem(Load24(&room_compr_level_data_ptr), (uint8 *)&ram7F_start); + + uint16 size = ram7F_start; + memcpy(custom_background, (uint8 *)level_data + size + (size >> 1), size); + memcpy(BTS, (uint8 *)level_data + size, size >> 1); + if (area_index == 6) { DecompressToMem(Load24(&tileset_tile_table_pointer), g_ram + 0xa000); } else { DecompressToMem(0xb9a09d, g_ram + 0xa000); DecompressToMem(Load24(&tileset_tile_table_pointer), g_ram + 0xa800); } - RoomDefRoomstate = get_RoomDefRoomstate(roomdefroomstate_ptr); - rdf_scroll_ptr = RoomDefRoomstate->rdf_scroll_ptr; + RoomDefRoomstate *RD = get_RoomDefRoomstate(roomdefroomstate_ptr); + rdf_scroll_ptr = RD->rdf_scroll_ptr; if (rdf_scroll_ptr >= 0) { - uint16 scrollval = RoomDefRoomstate->rdf_scroll_ptr; + uint16 scrollval = RD->rdf_scroll_ptr; uint8 r20 = room_height_in_scrolls - 1; uint8 v8 = 2; uint8 v9 = 0; @@ -4251,23 +4231,21 @@ void LoadLevelDataAndOtherThings(void) { // 0x82E7D3 do { if (v10 == r20) v8 = scrollval + 1; - v14 = v10; v11 = 0; do { scrolls[v9++] = v8; ++v11; } while (v11 != (uint8)room_width_in_scrolls); - v10 = v14 + 1; - } while (v14 + 1 != (uint8)room_height_in_scrolls); + v10++; + } while (v10 != (uint8)room_height_in_scrolls); } else { for (m = 0; m != 50; m += 2) { *(uint16 *)&scrolls[m] = *(uint16 *)RomPtr_8F(rdf_scroll_ptr); rdf_scroll_ptr += 2; } } - v12 = get_RoomDefRoomstate(roomdefroomstate_ptr); - if (v12->room_plm_header_ptr) { - for (n = v12->room_plm_header_ptr; get_RoomPlmEntry(n)->plm_header_ptr_; n += 6) + if (RD->room_plm_header_ptr) { + for (n = RD->room_plm_header_ptr; get_RoomPlmEntry(n)->plm_header_ptr_; n += 6) SpawnRoomPLM(n); } RunDoorSetupCode(); @@ -4291,8 +4269,7 @@ void SpawnDoorClosingPLM(void) { // 0x82E8EB uint8 CheckIfColoredDoorCapSpawned(void) { // 0x82E91C DoorDef *DD = get_DoorDef(door_def_ptr); - uint16 prod = Mult8x8(DD->y_pos_plm, room_width_in_blocks); - uint16 v2 = 2 * (prod + DD->x_pos_plm); + uint16 v2 = 2 * (Mult8x8(DD->y_pos_plm, room_width_in_blocks) + DD->x_pos_plm); uint16 v3 = 78; while (v2 != plm_block_indices[v3 >> 1]) { v3 -= 2; @@ -4344,8 +4321,7 @@ void LoadLibraryBackground(void) { if (bg_data_ptr & 0x8000) { do { uint16 v1 = *(uint16 *)RomPtr_8F(bg_data_ptr); - bg_data_ptr += 2; - bg_data_ptr = kLoadLibraryBackgroundFuncs[v1 >> 1](bg_data_ptr); + bg_data_ptr = kLoadLibraryBackgroundFuncs[v1 >> 1](bg_data_ptr + 2); } while (bg_data_ptr); } } @@ -4401,40 +4377,24 @@ uint16 LoadLibraryBackgroundFunc_8_TransferToVramAndSetBg3(uint16 j) { // 0x82E } void LoadLevelScrollAndCre(void) { // 0x82EA73 - uint16 j; - int16 v3; - uint16 k; - RoomDefRoomstate *RoomDefRoomstate; int16 rdf_scroll_ptr; uint16 m; int8 v10; int8 v11; int8 v12; - for (int i = 6398; i >= 0; i -= 2) { level_data[i >> 1] = 0x8000; level_data[(i >> 1) + 3200 * 1] = 0x8000; level_data[(i >> 1) + 3200 * 2] = 0x8000; level_data[(i >> 1) + 3200 * 3] = 0x8000; } - DecompressToMem(Load24(&room_compr_level_data_ptr), g_ram + 0x10000); - uint16 v1 = ram7F_start; - for (j = ram7F_start + ram7F_start + (ram7F_start >> 1); ; custom_background[v1 >> 1] = level_data[j >> 1]) { - j -= 2; - v1 -= 2; - if ((v1 & 0x8000) != 0) - break; - } - v3 = ram7F_start >> 1; - for (k = ram7F_start + (ram7F_start & 1) + (ram7F_start >> 1); - ; - *(uint16 *)&BTS[(uint16)v3] = level_data[k >> 1]) { - k -= 2; - v3 -= 2; - if (v3 < 0) - break; - } + DecompressToMem(Load24(&room_compr_level_data_ptr), (uint8 *)&ram7F_start); + + uint16 size = ram7F_start; + memcpy(custom_background, (uint8*)level_data + size + (size >> 1), size); + memcpy(BTS, (uint8 *)level_data + size, size >> 1); + if (area_index == 6) { DecompressToMem(Load24(&tileset_tile_table_pointer), g_ram + 0xa000); } else { @@ -4443,10 +4403,10 @@ void LoadLevelScrollAndCre(void) { // 0x82EA73 } DecompressToMem(Load24(&tileset_tile_table_pointer), g_ram + 0xa800); } - RoomDefRoomstate = get_RoomDefRoomstate(roomdefroomstate_ptr); - rdf_scroll_ptr = RoomDefRoomstate->rdf_scroll_ptr; + RoomDefRoomstate *RD = get_RoomDefRoomstate(roomdefroomstate_ptr); + rdf_scroll_ptr = RD->rdf_scroll_ptr; if (rdf_scroll_ptr >= 0) { - uint16 r18 = RoomDefRoomstate->rdf_scroll_ptr; + uint16 r18 = RD->rdf_scroll_ptr; uint8 r20 = room_height_in_scrolls - 1; uint8 v8 = 2; uint8 v9 = 0; diff --git a/src/sm_84.c b/src/sm_84.c index bc81c38..44f3f6f 100644 --- a/src/sm_84.c +++ b/src/sm_84.c @@ -94,10 +94,6 @@ void WriteRowOfLevelDataBlockAndBTS(uint16 k, uint16 arg0, uint16 arg1, uint16 a } void LoadXrayBlocks(void) { // 0x84831A - RoomDefRoomstate *RoomDefRoomstate; - uint16 j; - int16 v7; - for (int i = 78; i >= 0; i -= 2) { int v1 = i >> 1; if (plm_header_ptr[v1] >= FUNC16(PlmPreInstr_GotoLinkIfTriggered)) { @@ -112,15 +108,11 @@ void LoadXrayBlocks(void) { // 0x84831A } } } - RoomDefRoomstate = get_RoomDefRoomstate(roomdefroomstate_ptr); - if (RoomDefRoomstate->xray_special_casing_ptr) { - for (j = RoomDefRoomstate->xray_special_casing_ptr; ; j += 4) { - const uint8 *v6 = RomPtr_8F(j); - v7 = GET_WORD(v6); - if (!v7) - break; - LoadBlockToXrayTilemap(GET_WORD(v6 + 2), (uint8)v7, v6[1]); - } + RoomDefRoomstate *RS = get_RoomDefRoomstate(roomdefroomstate_ptr); + if (RS->xray_special_casing_ptr) { + const XraySpecialCasing *p = (const XraySpecialCasing *)RomPtr_8F(RS->xray_special_casing_ptr); + for (; p->x_block || p->y_block; p++) + LoadBlockToXrayTilemap(p->level_data_block, p->x_block, p->y_block); } } @@ -140,9 +132,7 @@ void ClearPLMs(void) { // 0x8483C3 void SpawnHardcodedPlm(SpawnHardcodedPlmArgs p) { // 0x8483D7 SpawnHardcodedPlmArgs *pp = &p; - int16 v2; - PlmHeader_Size4 *PlmHeader_Size4; - + uint16 v1 = 78; while (plm_header_ptr[v1 >> 1]) { v1 -= 2; @@ -151,27 +141,25 @@ void SpawnHardcodedPlm(SpawnHardcodedPlmArgs p) { // 0x8483D7 } } uint16 prod = Mult8x8(pp->field_1, room_width_in_blocks); - v2 = pp->field_0; - plm_block_indices[v1 >> 1] = 2 * (prod + v2); + plm_block_indices[v1 >> 1] = 2 * (prod + pp->field_0); uint16 v3 = pp->field_2; plm_header_ptr[v1 >> 1] = v3; int v4 = v1 >> 1; plm_room_arguments[v4] = 0; plm_variables[v4] = 0; plm_pre_instrs[v4] = 0x8469; - plm_instr_list_ptrs[v4] = get_PlmHeader_Size4(v3)->instr_list_ptr; + PlmHeader_Size4 *PH = get_PlmHeader_Size4(v3); + plm_instr_list_ptrs[v4] = PH->instr_list_ptr; plm_instruction_timer[v4] = 1; plm_instruction_draw_ptr[v4] = addr_kDefaultPlmDrawInstruction; plm_timers[v4] = 0; plm_id = v1; - PlmHeader_Size4 = get_PlmHeader_Size4(v3); - CallPlmHeaderFunc(PlmHeader_Size4->func_ptr | 0x840000, v1); + CallPlmHeaderFunc(PH->func_ptr | 0x840000, v1); } void SpawnRoomPLM(uint16 k) { // 0x84846A RoomPlmEntry *rpe; int16 x_block; - PlmHeader_Size4 *PH; uint16 v1 = 78; while (plm_header_ptr[v1 >> 1]) { @@ -189,7 +177,7 @@ void SpawnRoomPLM(uint16 k) { // 0x84846A plm_header_ptr[v4] = rpe->plm_header_ptr_; plm_variables[v4] = 0; plm_pre_instrs[v4] = FUNC16(PlmPreInstr_Empty2); - PH = get_PlmHeader_Size4(pp); + PlmHeader_Size4 *PH = get_PlmHeader_Size4(pp); plm_instr_list_ptrs[v4] = PH->instr_list_ptr; plm_instruction_timer[v4] = 1; plm_instruction_draw_ptr[v4] = addr_kDefaultPlmDrawInstruction; @@ -205,8 +193,6 @@ void PlmPreInstr_Empty2(void) { // 0x8484E6 // returns bit 0 set if carry, 0x40 if ovf uint8 SpawnPLM(uint16 a) { // 0x8484E7 - PlmHeader_Size4 *PlmHeader_Size4; - uint16 v1 = 78; while (plm_header_ptr[v1 >> 1]) { v1 -= 2; @@ -217,15 +203,15 @@ uint8 SpawnPLM(uint16 a) { // 0x8484E7 plm_block_indices[v3] = 2 * cur_block_index; plm_header_ptr[v3] = a; plm_pre_instrs[v3] = FUNC16(PlmPreInstr_Empty3); - plm_instr_list_ptrs[v3] = get_PlmHeader_Size4(a)->instr_list_ptr; + PlmHeader_Size4 *PH = get_PlmHeader_Size4(a); + plm_instr_list_ptrs[v3] = PH->instr_list_ptr; plm_instruction_timer[v3] = 1; plm_instruction_draw_ptr[v3] = addr_kDefaultPlmDrawInstruction; plm_timers[v3] = 0; plm_room_arguments[v3] = 0; plm_variables[v3] = 0; plm_id = v1; - PlmHeader_Size4 = get_PlmHeader_Size4(a); - return CallPlmHeaderFunc(PlmHeader_Size4->func_ptr | 0x840000, v1); + return CallPlmHeaderFunc(PH->func_ptr | 0x840000, v1); } CoroutineRet PlmHandler_Async(void) { // 0x8485B4 @@ -1756,13 +1742,6 @@ const uint8 *PlmInstr_JumpIfSamusHasNoBombs(const uint8 *plmp, uint16 k) { // 0 return INSTRB_RETURN_ADDR(GET_WORD(plmp)); } -void UNUSED_sub_84BAD1(uint16 j) { // 0x84BAD1 - int v1 = j >> 1; - plm_variable[v1] = 4; - plm_room_arguments[v1] = plm_room_arguments[v1] & 0x3FF | 0x8000; - WriteLevelDataBlockTypeAndBts(plm_block_indices[v1], 0xC044); -} - uint8 PlmSetup_BB30_CrateriaMainstreetEscape(uint16 j) { // 0x84BB09 if (!CheckEventHappened(0xF)) plm_header_ptr[j >> 1] = 0; @@ -2410,8 +2389,7 @@ void PlmPreInstr_WakePlmIfSamusHasBombs(uint16 k) { // 0x84D33B if ((collected_items & 0x1000) != 0) { int v1 = k >> 1; plm_instruction_timer[v1] = 1; - ++plm_instr_list_ptrs[v1]; - ++plm_instr_list_ptrs[v1]; + plm_instr_list_ptrs[v1] += 2; plm_pre_instrs[v1] = FUNC16(nullsub_351); } } diff --git a/src/sm_85.c b/src/sm_85.c index 65c78ae..c15acb0 100644 --- a/src/sm_85.c +++ b/src/sm_85.c @@ -83,8 +83,8 @@ static uint16 WriteMessageTilemap(void) { // 0x8582B8 message_box_animation_y_radius = 0; for (int i = 0; i != 112; ++i) ram3000.pause_menu_map_tilemap[i] = 0; - uint16 r0 = *(VoidP *)((uint8 *)&kMessageBoxDefs[0].message_tilemap + (6 * (message_box_index - 1))); - uint16 r9 = *(VoidP *)((uint8 *)&kMessageBoxDefs[1].message_tilemap + (6 * (message_box_index - 1))) - r0; + uint16 r0 = *(VoidP *)((uint8 *)&kMessageBoxDefs[6 * (message_box_index - 1)].message_tilemap); + uint16 r9 = *(VoidP *)((uint8 *)&kMessageBoxDefs[6 * (message_box_index - 1) + 1].message_tilemap) - r0; int n = r9 >> 1; r9 += 128; message_box_das0l_value = r9; diff --git a/src/sm_86.c b/src/sm_86.c index 4ca7b37..951475e 100644 --- a/src/sm_86.c +++ b/src/sm_86.c @@ -16,7 +16,6 @@ uint16 eproj_spawn_varE24; #define off_868A75 ((uint16*)RomFixedPtr(0x868a75)) #define word_869105 ((uint16*)RomFixedPtr(0x869105)) #define off_86A64D ((uint16*)RomFixedPtr(0x86a64d)) -#define stru_86BB50 (*(EprojDef*)RomFixedPtr(0x86bb50)) #define off_86BB1E ((uint16*)RomFixedPtr(0x86bb1e)) #define kCommonEnemySpeeds_Quadratic_Copy ((uint16*)RomFixedPtr(0xa0cbc7)) #define kCommonEnemySpeeds_Quadratic32 ((uint32*)RomFixedPtr(0xa0cbc7)) @@ -2751,11 +2750,6 @@ void EprojPreInstr_TourianStatueStuff(uint16 k) { // 0x86BA37 EprojPreInstr_BA42(k); } -const uint8 *EprojInstr_BB24(uint16 k, const uint8 *epjp) { // 0x86BB24 - eproj_instr_list_ptr[stru_86BB50.init_code_ptr >> 1] = 0; - return epjp; -} - void sub_86BB30(uint16 j) { // 0x86BB30 ExtraEnemyRam8000 *v1 = gExtraEnemyRam8000(cur_enemy_index); int v2 = j >> 1; @@ -4766,7 +4760,7 @@ uint16 RandomDropRoutine(uint16 k) { // 0x86F106 if (varE28 == 0) goto LABEL_30; uint16 v2; - v2 = *((uint16 *)RomPtr_A0(varE28) + 29); + v2 = get_EnemyDef_A2(varE28)->item_drop_chances_ptr; if (!v2) goto LABEL_30; uint8 Random; @@ -4875,7 +4869,7 @@ void RespawnEnemy(uint16 v0) { // 0x86F264 E->ai_var_E = 0; E->ai_preinstr = 0; E->instruction_timer = 1; - EnemyDef_A2 *Edef = get_EnemyDef_A2(E->enemy_ptr); + EnemyDef *Edef = get_EnemyDef_A2(E->enemy_ptr); E->x_width = Edef->x_radius; E->y_height = Edef->y_radius; E->health = Edef->health; @@ -5262,7 +5256,6 @@ static const uint8 *CallEprojInstr(uint32 ea, uint16 k, const uint8 *j) { case fnEprojInstr_Earthquake: return EprojInstr_Earthquake(k, j); case fnEprojInstr_SpawnTourianStatueUnlockingParticleTail: return EprojInstr_SpawnTourianStatueUnlockingParticleTail(k, j); case fnEprojInstr_AddToYpos: return EprojInstr_AddToYpos(k, j); - case fnEprojInstr_BB24: return EprojInstr_BB24(k, j); case fnEprojInstr_SwitchJump: return EprojInstr_SwitchJump(k, j); case fnEprojInstr_UserPalette0: return EprojInstr_UserPalette0(k, j); case fnEprojInstr_Add12ToY: return EprojInstr_Add12ToY(k, j); diff --git a/src/sm_89.c b/src/sm_89.c index 529b8b9..5e93310 100644 --- a/src/sm_89.c +++ b/src/sm_89.c @@ -14,20 +14,16 @@ void LoadFxEntry(uint16 v0) { // 0x89AB02 - FxDef *FxDef; - - current_fx_entry_offset = 16 * (v0 & 7); - current_fx_entry_ptr = room_layer3_asm_ptr + current_fx_entry_offset; - FxDef = get_FxDef(room_layer3_asm_ptr + current_fx_entry_offset); - fx_base_y_pos = FxDef->base_y_pos; - fx_target_y_pos = FxDef->target_y_pos; - fx_y_vel = FxDef->y_vel; - fx_timer = FxDef->timer; - fx_layer_blending_config_a = FxDef->default_layer_blend; - fx_layer_blending_config_b = FxDef->layer3_layer_blend; - fx_liquid_options = FxDef->fx_liquid_options_; - if (FxDef->palette_blend) { - int v2 = FxDef->palette_blend >> 1; + FxDef *FD = get_FxDef(room_layer3_asm_ptr + 16 * (v0 & 7)); + fx_base_y_pos = FD->base_y_pos; + fx_target_y_pos = FD->target_y_pos; + fx_y_vel = FD->y_vel; + fx_timer = FD->timer; + fx_layer_blending_config_a = FD->default_layer_blend; + fx_layer_blending_config_b = FD->layer3_layer_blend; + fx_liquid_options = FD->fx_liquid_options_; + if (FD->palette_blend) { + int v2 = FD->palette_blend >> 1; palette_buffer[25] = g_word_89AA02[v2]; palette_buffer[26] = g_word_89AA02[v2 + 1]; palette_buffer[27] = g_word_89AA02[v2 + 2]; @@ -64,85 +60,54 @@ static Func_V *const kFxTypeFuncPtrs[23] = { // 0x89AB82 FxTypeFunc_2C_Haze, }; void LoadFXHeader(void) { - int i; - FxDef *v6; - FxDef *v8; - uint16 j; - int8 v10; // cf - FxDef *v12; - uint16 k; - FxDef *FxDef; - - uint16 v0 = room_layer3_asm_ptr; - if (room_layer3_asm_ptr) { - for (i = 0; ; i += 16) { - uint16 door_ptr = get_FxDef(v0)->door_ptr; - if (!door_ptr) - break; - if (door_ptr == 0xFFFF) - return; - if (door_ptr == door_def_ptr) - break; - v0 += 16; - } - current_fx_entry_offset = i; - current_fx_entry_ptr = v0; - FxDef = get_FxDef(v0); - fx_base_y_pos = FxDef->base_y_pos; - fx_target_y_pos = FxDef->target_y_pos; - fx_y_vel = FxDef->y_vel; - fx_timer = FxDef->timer; - fx_layer_blending_config_a = FxDef->default_layer_blend; - fx_layer_blending_config_b = FxDef->layer3_layer_blend; - fx_liquid_options = FxDef->fx_liquid_options_; - if (FxDef->palette_blend) { - int v4 = FxDef->palette_blend >> 1; - target_palettes[25] = g_word_89AA02[v4]; - target_palettes[26] = g_word_89AA02[v4 + 1]; - target_palettes[27] = g_word_89AA02[v4 + 2]; - } else { - target_palettes[27] = 0; - } - uint16 type = get_FxDef(current_fx_entry_ptr)->type; - fx_type = type; - if (type) - fx_tilemap_ptr = kFxTypeTilemapPtrs[type >> 1]; - v6 = get_FxDef(current_fx_entry_ptr); - uint16 v7 = v6->type; - if (v6->type) { - kFxTypeFuncPtrs[v7 >> 1](); - } - v8 = get_FxDef(current_fx_entry_ptr); - if (v8->palette_fx_bitset) { - current_fx_palette_fx_bitset = v8->palette_fx_bitset; - current_region_animated_palette_fx = kAreaPalFxListPointers[area_index]; - for (j = 0; j != 16; j += 2) { - while (1) { - v10 = current_fx_palette_fx_bitset & 1; - current_fx_palette_fx_bitset >>= 1; - if (!v10) - break; - const uint8 *v11 = RomPtr_83(current_region_animated_palette_fx); - SpawnPalfxObject(*(uint16 *)&v11[j]); - j += 2; - } - } + uint16 entry_ptr = room_layer3_asm_ptr; + if (entry_ptr == 0) + return; + for(;;) { + uint16 door_ptr = get_FxDef(entry_ptr)->door_ptr; + if (!door_ptr) + break; + if (door_ptr == 0xFFFF) + return; + if (door_ptr == door_def_ptr) + break; + entry_ptr += 16; + } + FxDef *FD = get_FxDef(entry_ptr); + fx_base_y_pos = FD->base_y_pos; + fx_target_y_pos = FD->target_y_pos; + fx_y_vel = FD->y_vel; + fx_timer = FD->timer; + fx_layer_blending_config_a = FD->default_layer_blend; + fx_layer_blending_config_b = FD->layer3_layer_blend; + fx_liquid_options = FD->fx_liquid_options_; + if (FD->palette_blend) { + int v4 = FD->palette_blend >> 1; + target_palettes[25] = g_word_89AA02[v4]; + target_palettes[26] = g_word_89AA02[v4 + 1]; + target_palettes[27] = g_word_89AA02[v4 + 2]; + } else { + target_palettes[27] = 0; + } + fx_type = FD->type; + if (FD->type) { + fx_tilemap_ptr = kFxTypeTilemapPtrs[FD->type >> 1]; + kFxTypeFuncPtrs[FD->type >> 1](); + } + if (FD->palette_fx_bitset) { + int bits = FD->palette_fx_bitset; + const uint8 *v11 = RomPtr_83(kAreaPalFxListPointers[area_index]); + for (int j = 0; j != 16; j += 2, bits >>= 1) { + if (bits & 1) + SpawnPalfxObject(*(uint16 *)&v11[j]); } - v12 = get_FxDef(current_fx_entry_ptr); - if (v12->animtiles_bitset) { - current_fx_palette_fx_bitset = v12->animtiles_bitset; - current_region_animated_palette_fx = kAreaAnimtilesListPtrs[area_index]; - for (k = 0; k != 16; k += 2) { - while (1) { - v10 = current_fx_palette_fx_bitset & 1; - current_fx_palette_fx_bitset >>= 1; - if (!v10) - break; - const uint8 *v14 = RomPtr_83(current_region_animated_palette_fx); - SpawnAnimtiles(*(uint16 *)&v14[k]); - k += 2; - } - } + } + if (FD->animtiles_bitset) { + int bits = FD->animtiles_bitset; + const uint8 *v14 = RomPtr_83(kAreaAnimtilesListPtrs[area_index]); + for (int k = 0; k != 16; k += 2, bits >>= 1) { + if (bits & 1) + SpawnAnimtiles(*(uint16 *)&v14[k]); } } } diff --git a/src/sm_8d.c b/src/sm_8d.c index fe587d6..648653c 100644 --- a/src/sm_8d.c +++ b/src/sm_8d.c @@ -57,48 +57,44 @@ void PaletteFxHandler(void) { // 0x8DC527 } void PalFx_ProcessOne(uint16 k) { // 0x8DC54A - PairU16 v7; - int16 v11; - PairU16 v12; - CallPalFxPreInstr(palettefx_pre_instr[k >> 1] | 0x8D0000, k); uint16 v1 = palettefx_index; - int v2 = palettefx_index >> 1; - if (palettefx_instr_timers[v2]-- == 1) { - uint16 j = palettefx_instr_list_ptrs[v2], v6; + if (palettefx_instr_timers[v1 >> 1]-- != 1) + return; + uint16 j = palettefx_instr_list_ptrs[v1 >> 1], v6; + while (1) { + const uint16 *p = (const uint16 *)RomPtr_8D(j); + v6 = *p; + if ((*p & 0x8000) == 0) + break; + PairU16 v7 = CallPalInstr(v6 | 0x8D0000, v1, j + 2); + v1 = v7.k; + j = v7.j; + if (!v7.j) + return; + } + int v8 = v1 >> 1; + palettefx_instr_timers[v8] = v6; + uint16 color_idx = palettefx_color_indexes[v8]; + const uint8 *v10; + uint16 v11; + do { while (1) { - const uint16 *v5 = (const uint16 *)RomPtr_8D(j); - v6 = *v5; - if ((*v5 & 0x8000) == 0) + v10 = RomPtr_8D(j); + v11 = GET_WORD(v10 + 2); + if (v11 & 0x8000) break; - v7 = CallPalInstr(v6 | 0x8D0000, v1, j + 2); - v1 = v7.k; - j = v7.j; - if (!v7.j) - return; + palette_buffer[color_idx >> 1] = v11; + color_idx += 2; + j += 2; } - int v8 = v1 >> 1; - palettefx_instr_timers[v8] = v6; - uint16 v9 = palettefx_color_indexes[v8]; - const uint8 *v10; - do { - while (1) { - v10 = RomPtr_8D(j); - v11 = GET_WORD(v10 + 2); - if (v11 & 0x8000) - break; - palette_buffer[v9 >> 1] = v11; - v9 += 2; - j += 2; - } - v12 = CallPalInstr((uint16)v11 | 0x8D0000, v9, j); - v9 = v12.k; - j = v12.j; - } while (v12.j); - } + PairU16 v12 = CallPalInstr((uint16)v11 | 0x8D0000, color_idx, j); + color_idx = v12.k; + j = v12.j; + } while (j); } -PairU16 PalInstr_Finish(uint16 k, uint16 j) { // 0x8DC595 +PairU16 PalInstr_Wait(uint16 k, uint16 j) { // 0x8DC595 palettefx_instr_list_ptrs[palettefx_index >> 1] = j + 4; return MakePairU16(0, 0); } @@ -147,10 +143,6 @@ PairU16 PalInstr_Goto(uint16 k, uint16 j) { // 0x8DC61E return MakePairU16(k, v2); } -PairU16 PalInstr_GotoRel(uint16 k, uint16 j) { // 0x8DC623 - return MakePairU16(k, j + (int8)*RomPtr_8D(j)); -} - PairU16 PalInstr_DecTimerGoto(uint16 k, uint16 j) { // 0x8DC639 PairU16 v4; @@ -161,16 +153,6 @@ PairU16 PalInstr_DecTimerGoto(uint16 k, uint16 j) { // 0x8DC639 return MakePairU16(v4.k, v4.j); } -PairU16 PalInstr_DecTimerGotoRel(uint16 k, uint16 j) { // 0x8DC641 - PairU16 v4; - - int v2 = k >> 1; - if (palettefx_timers[v2]-- == 1) - return MakePairU16(k, j + 1); - v4 = PalInstr_GotoRel(k, j); - return MakePairU16(v4.k, v4.j); -} - PairU16 PalInstr_SetTimer(uint16 k, uint16 j) { // 0x8DC648 *((uint8 *)palettefx_timers + k) = *RomPtr_8D(j); return MakePairU16(k, j + 1); @@ -256,14 +238,6 @@ void PalInit_F761_Norfair1(uint16 k, uint16 j) { // 0x8DE440 palettefx_instr_list_ptrs[j >> 1] = v2; } -PairU16 PalInstr_SetTimerIfBossBit(uint16 k, uint16 j) { // 0x8DEB2A - if (!(CheckBossBitForCurArea(1) & 1)) { - palettefx_instr_timers[k >> 1] = 1; - return MakePairU16(k, 0); - } - return MakePairU16(k, j); -} - void PalPreInstr_SwitchIfYpos(uint16 k) { // 0x8DEC59 if (samus_y_pos < 0x380) { int v2 = k >> 1; @@ -316,7 +290,7 @@ void CallPalFxPreInstr(uint32 ea, uint16 k) { PairU16 CallPalInstr(uint32 ea, uint16 k, uint16 j) { switch (ea) { - case fnPalInstr_Finish: return PalInstr_Finish(k, j); + case fnPalInstr_Wait: return PalInstr_Wait(k, j); case fnPalInstr_ColorPlus2: return PalInstr_ColorPlus2(k, j); case fnPalInstr_ColorPlus3: return PalInstr_ColorPlus3(k, j); case fnPalInstr_ColorPlus4: return PalInstr_ColorPlus4(k, j); @@ -327,16 +301,13 @@ PairU16 CallPalInstr(uint32 ea, uint16 k, uint16 j) { case fnPalInstr_SetPreInstr: return PalInstr_SetPreInstr(k, j); case fnPalInstr_ClearPreInstr: return PalInstr_ClearPreInstr(k, j); case fnPalInstr_Goto: return PalInstr_Goto(k, j); - case fnPalInstr_GotoRel: return PalInstr_GotoRel(k, j); case fnPalInstr_DecTimerGoto: return PalInstr_DecTimerGoto(k, j); - case fnPalInstr_DecTimerGotoRel: return PalInstr_DecTimerGotoRel(k, j); case fnPalInstr_SetTimer: return PalInstr_SetTimer(k, j); case fnPalInstr_SetColorIndex: return PalInstr_SetColorIndex(k, j); case fnPalInstr_QueueMusic: return PalInstr_QueueMusic(k, j); case fnPalInstr_QueueSfx1: return PalInstr_QueueSfx1(k, j); case fnPalInstr_QueueSfx2: return PalInstr_QueueSfx2(k, j); case fnPalInstr_QueueSfx3: return PalInstr_QueueSfx3(k, j); - case fnPalInstr_SetTimerIfBossBit: return PalInstr_SetTimerIfBossBit(k, j); case fnPalInstr_SetPalfxIndex: return PalInstr_SetPalfxIndex(k, j); default: Unreachable(); return (PairU16) { 0, 0 }; } diff --git a/src/sm_8f.c b/src/sm_8f.c index a1f621e..259c7aa 100644 --- a/src/sm_8f.c +++ b/src/sm_8f.c @@ -695,7 +695,7 @@ uint16 CallRoomDefStateSelect(uint32 ea, uint16 k) { void HandleRoomDefStateSelect(uint16 k) { // 0x8FE5D2 uint16 v1 = k + 11; do { - event_pointer = get_RoomDefStateSelect_E6E5_Finish(v1)->code_ptr; + uint16 event_pointer = get_RoomDefStateSelect_E6E5_Finish(v1)->code_ptr; v1 = CallRoomDefStateSelect(event_pointer | 0x8F0000, v1 + 2); } while (v1); } @@ -705,14 +705,6 @@ uint16 RoomDefStateSelect_Finish(uint16 k) { // 0x8FE5E6 return 0; } -uint16 RoomDefStateSelect_Door(uint16 k) { // 0x8FE5EB - const uint8 *v1 = RomPtr_8F(k); - if (GET_WORD(v1) == door_def_ptr) - return RoomDefStateSelect_Finish(GET_WORD(v1 + 2)); - else - return k + 4; -} - uint16 RoomDefStateSelect_TourianBoss01(uint16 k) { // 0x8FE5FF if (!(CheckBossBitForCurArea(1) & 1)) return k + 2; diff --git a/src/sm_90.c b/src/sm_90.c index 896a50d..01a6731 100644 --- a/src/sm_90.c +++ b/src/sm_90.c @@ -365,6 +365,7 @@ static void Samus_HandleAnimDelay(void) { const uint8 *p = RomPtr_91(kSamusAnimationDelayData[samus_pose]); if ((p[samus_anim_frame] & 0x80) != 0) { uint8 v1 = Samus_HandleSpeedBoosterAnimDelay(p + samus_anim_frame); + printf("v1=%x\n", v1); if (kAnimDelayFuncs[v1 & 0xF](p + samus_anim_frame)) samus_anim_frame_timer = samus_anim_frame_buffer + p[samus_anim_frame]; } else { @@ -4218,14 +4219,11 @@ void Samus_ArmCannon_Draw(void) { // 0x90C663 } } const uint8 *v11 = RomPtr_90(kPlayerPoseToPtr[samus_pose]); - int16 v12 = *v11; + uint8 v12 = *v11; if ((v12 & 0x80) != 0) { - if (samus_anim_frame) - v12 = *RomPtr_90(kPlayerPoseToPtr[samus_pose] + 2) & 0x7F; - else - v12 = *v11 & 0x7F; + v12 = samus_anim_frame ? v11[2] : v11[0]; } - uint16 v13 = kDrawArmCannon_Tab2[v12] + 2 * arm_cannon_frame; + uint16 v13 = kDrawArmCannon_Tab2[v12 & 0x7F] + 2 * arm_cannon_frame; uint16 v14 = vram_write_queue_tail; gVramWriteEntry(vram_write_queue_tail)->size = 32; v14 += 2; diff --git a/src/sm_91.c b/src/sm_91.c index 65b03c9..ca32201 100644 --- a/src/sm_91.c +++ b/src/sm_91.c @@ -206,41 +206,24 @@ void Samus_Input_1B_ShinesparkEtc(void) { // 0x9181A1 } void Samus_LookupTransitionTable(void) { // 0x9181A9 - PoseEntry *pe; - int16 v2; - PoseEntry *v5; - PoseEntry *v6; - if (joypad1_lastkeys) { Pair_R18_R20 pair = TranslateCustomControllerBindingsToDefault(); - uint16 v0 = kPoseTransitionTable[samus_pose]; - pe = get_PoseEntry(v0); - v2 = pe->new_input + 1; - if (pe->new_input != 0xFFFF) { - while (1) { - uint16 v3 = v2 - 1; - if (!v3 || (pair.r18 & v3) == 0) { - uint16 cur_input = get_PoseEntry(v0)->cur_input; - if (!cur_input || (pair.r20 & cur_input) == 0) - break; + PoseEntry *pe = get_PoseEntry(kPoseTransitionTable[samus_pose]); + if (pe->new_input == 0xFFFF) + return; + do { + if ((pair.r18 & pe->new_input) == 0 && (pair.r20 & pe->cur_input) == 0) { + if (pe->new_pose != samus_pose) { + samus_new_pose = pe->new_pose; + bomb_jump_dir = 0; } - v0 += 6; - v5 = get_PoseEntry(v0); - v2 = v5->new_input + 1; - if (v5->new_input == 0xFFFF) - goto LABEL_8; - } - v6 = get_PoseEntry(v0); - if (v6->new_pose != samus_pose) { - samus_new_pose = v6->new_pose; - bomb_jump_dir = 0; + return; } - } - } else { -LABEL_8: - UNUSED_word_7E0A18 = 0; - Samus_Pose_CancelGrapple(); + pe++; + } while (pe->new_input != 0xFFFF); } + UNUSED_word_7E0A18 = 0; + Samus_Pose_CancelGrapple(); } Pair_R18_R20 TranslateCustomControllerBindingsToDefault(void) { // 0x9181F4 diff --git a/src/sm_92.c b/src/sm_92.c index 4639a2e..1b9208b 100644 --- a/src/sm_92.c +++ b/src/sm_92.c @@ -10,15 +10,11 @@ void SetSamusTilesDefsForCurAnim(void) { // 0x928000 uint16 v0 = 4 * samus_anim_frame + kSamus_AnimationDefinitionPtrs[samus_pose]; - uint16 r22 = get_SamusTileAnimationDefs(v0)->top_half_idx; - tempB24 = get_SamusTileAnimationDefs(v0 + 1)->top_half_idx; - nmi_copy_samus_top_half_src = 7 * tempB24 + kSamus_TileDefs_TopHalf[r22]; + SamusTileAnimationDefs *AD = get_SamusTileAnimationDefs(v0); + nmi_copy_samus_top_half_src = 7 * AD->top_half_pos + kSamus_TileDefs_TopHalf[AD->top_half_idx]; LOBYTE(nmi_copy_samus_halves) = 1; - uint16 v1 = kSamus_AnimationDefinitionPtrs[samus_pose] + 4 * samus_anim_frame + 2; - uint8 v2 = *RomPtr_92(v1); - if (v2 != 255) { - tempB26 = *RomPtr_92(v1 + 1); - nmi_copy_samus_bottom_half_src = 7 * tempB26 + kSamus_TileDefs_BottomHalf[v2]; + if (AD->bottom_half_idx != 255) { + nmi_copy_samus_bottom_half_src = 7 * AD->bottom_half_pos + kSamus_TileDefs_BottomHalf[AD->bottom_half_idx]; HIBYTE(nmi_copy_samus_halves) = 1; } } diff --git a/src/sm_93.c b/src/sm_93.c index 329f72e..9968c18 100644 --- a/src/sm_93.c +++ b/src/sm_93.c @@ -15,10 +15,8 @@ #define g_off_938413 ((uint16*)RomFixedPtr(0x938413)) void InitializeProjectile(uint16 k) { // 0x938000 - ProjectileDataTable *ProjectileDataTable; - int v1 = k >> 1; - int r18 = 2 * (projectile_dir[v1] & 0xF); + int r18 = (projectile_dir[v1] & 0xF); uint16 v2 = projectile_type[v1], v3; if ((v2 & 0xF00) != 0) { v3 = kProjectileData_NonBeams[HIBYTE(v2) & 0xF]; @@ -27,11 +25,11 @@ void InitializeProjectile(uint16 k) { // 0x938000 } else { v3 = kProjectileData_UnchargedBeams[projectile_type[v1] & 0xF]; } - ProjectileDataTable = get_ProjectileDataTable(v3); - if (sign16(ProjectileDataTable->damage)) + ProjectileDataTable *PD = get_ProjectileDataTable(v3); + if (sign16(PD->damage)) InvalidInterrupt_Crash(); - projectile_damage[v1] = ProjectileDataTable->damage; - uint16 v7 = GET_WORD(RomPtr_93(v3 + r18 + 2)); + projectile_damage[v1] = PD->damage; + uint16 v7 = PD->instr_ptrs[r18]; projectile_bomb_instruction_ptr[v1] = v7; const uint8 *v8 = RomPtr_93(v7); projectile_x_radius[v1] = v8[4]; @@ -94,13 +92,12 @@ void InitializeBombExplosion(uint16 k) { // 0x93814E void InitializeShinesparkEchoOrSpazerSba(uint16 k) { // 0x938163 int v1 = k >> 1; - int r18 = 2 * (projectile_dir[v1] & 0xF); - const uint8 *v3 = RomPtr_93(kShinesparkEchoSpazer_ProjectileData[LOBYTE(projectile_type[v1]) - 34]); - uint16 v4 = GET_WORD(v3); - projectile_damage[v1] = GET_WORD(v3); - if (sign16(v4)) + int r18 = projectile_dir[v1] & 0xF; + ProjectileDataTable *PD = get_ProjectileDataTable(kShinesparkEchoSpazer_ProjectileData[LOBYTE(projectile_type[v1]) - 34]); + projectile_damage[v1] = PD->damage; + if (sign16(PD->damage)) InvalidInterrupt_Crash(); - projectile_bomb_instruction_ptr[v1] = GET_WORD(v3 + 2 + r18); + projectile_bomb_instruction_ptr[v1] = PD->instr_ptrs[r18]; projectile_bomb_instruction_timers[v1] = 1; } @@ -108,7 +105,7 @@ void InitializeSbaProjectile(uint16 k) { // 0x9381A4 int v1 = k >> 1; const uint8 *v2 = RomPtr_93(g_off_938413[projectile_type[v1] & 0xF]); uint16 v3 = GET_WORD(v2); - projectile_damage[v1] = GET_WORD(v2); + projectile_damage[v1] = v3; if (sign16(v3)) InvalidInterrupt_Crash(); projectile_bomb_instruction_ptr[v1] = GET_WORD(v2 + 2); @@ -125,7 +122,6 @@ uint16 CallProj93Instr(uint32 ea, uint16 j, uint16 k) { switch (ea) { case fnProj93Instr_Delete: return Proj93Instr_Delete(j, k); case fnProj93Instr_Goto: return Proj93Instr_Goto(j, k); - case fnProj93Instr_GotoIfLess: return Proj93Instr_GotoIfLess(j, k); default: return Unreachable(); } } @@ -162,14 +158,6 @@ uint16 Proj93Instr_Goto(uint16 k, uint16 j) { // 0x938239 return *(uint16 *)RomPtr_93(j); } -uint16 Proj93Instr_GotoIfLess(uint16 k, uint16 j) { // 0x938240 - const uint8 *v2 = RomPtr_93(j); - if ((int16)(GET_WORD(v2) - projectile_variables[k >> 1]) >= 0) - return GET_WORD(v2 + 2); - else - return GET_WORD(v2 + 4); -} - void DrawPlayerExplosions2(void) { // 0x938254 uint16 v0 = 8; uint16 r18, r20; diff --git a/src/sm_94.c b/src/sm_94.c index c54598c..ad7e2c3 100644 --- a/src/sm_94.c +++ b/src/sm_94.c @@ -857,7 +857,7 @@ static uint8 BlockColl_Vert_BombBlock(CollInfo *ci) { // 0x94934C uint8 BlockColl_Horiz_Door(CollInfo *ci) { // 0x94938B door_transition_function = FUNC16(DoorTransitionFunction_HandleElevator); - door_bts = BTS[cur_block_index]; + uint8 door_bts = BTS[cur_block_index]; uint16 v0 = *(uint16 *)RomPtr_8F(door_list_pointer + 2 * (door_bts & 0x7F)); if ((get_DoorDef(v0)->room_definition_ptr & 0x8000) == 0) { if (samus_pose < kGameState_9_HitDoorBlock) @@ -872,7 +872,7 @@ uint8 BlockColl_Horiz_Door(CollInfo *ci) { // 0x94938B uint8 BlockColl_Vert_Door(CollInfo *ci) { // 0x9493CE door_transition_function = FUNC16(DoorTransitionFunction_HandleElevator); - door_bts = BTS[cur_block_index]; + uint8 door_bts = BTS[cur_block_index]; uint16 v0 = *(uint16 *)RomPtr_8F(door_list_pointer + 2 * (door_bts & 0x7F)); if ((get_DoorDef(v0)->room_definition_ptr & 0x8000) == 0) { if (samus_pose < kPose_09_MoveR_NoAim) diff --git a/src/sm_9b.c b/src/sm_9b.c index cfbee0d..7789d4e 100644 --- a/src/sm_9b.c +++ b/src/sm_9b.c @@ -176,7 +176,7 @@ void QueueTransferOfSamusDeathSequence(uint16 v0) { // 0x9BB6D8 int v2 = v0 >> 1; gVramWriteEntry(v1)->size = g_word_9BB7BF[v2]; v1 += 2; - LOBYTE(gVramWriteEntry(v1++)->size) = -101; + LOBYTE(gVramWriteEntry(v1++)->size) = 0x9B; gVramWriteEntry(v1)->size = g_word_9BB7C9[v2]; vram_write_queue_tail = v1 + 2; } diff --git a/src/sm_a0.c b/src/sm_a0.c index 0b561e5..cf717af 100644 --- a/src/sm_a0.c +++ b/src/sm_a0.c @@ -384,7 +384,7 @@ void InitializeEnemies(void) { // 0xA08A9E do { LoadEnemyGfxIndexes(v4, v5); EnemyPopulation *EP = get_EnemyPopulation(0xa1, v4); - EnemyDef_A2 *ED = get_EnemyDef_A2(EP->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(EP->enemy_ptr); EnemyData *E = gEnemyData(v5); E->x_width = ED->x_radius; E->y_height = ED->y_radius; @@ -517,7 +517,7 @@ void ProcessEnemyTilesets(void) { // 0xA08D64 EnemyTileset *ET = get_EnemyTileset(room_enemy_tilesets_ptr); EnemyTileLoadData *LD = enemy_tile_load_data; for (; ET->enemy_def != 0xffff; ET++) { - EnemyDef_A2 *ED = get_EnemyDef_A2(ET->enemy_def); + EnemyDef *ED = get_EnemyDef_A2(ET->enemy_def); memcpy(&target_palettes[(LOBYTE(ET->vram_dst) + 8) * 16], RomPtrWithBank(ED->bank, ED->palette_ptr), 32); LD->tile_data_size = ED->tile_data_size & 0x7FFF; @@ -1722,7 +1722,7 @@ const uint16 *CallEnemyInstr(uint32 ea, uint16 k, const uint16 *j) { } void EnemyMain(void) { // 0xA08FD4 - EnemyDef_A2 *ED; + EnemyDef *ED; int16 v6; int8 v8; // cf @@ -1869,7 +1869,7 @@ uint16 SpawnEnemy(uint8 db, uint16 k) { // 0xA09275 E->vram_tiles_index = 0; E->palette_index = 0; } - EnemyDef_A2 *ED = get_EnemyDef_A2(EP->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(EP->enemy_ptr); E->x_width = ED->x_radius; E->y_height = ED->y_radius; E->health = ED->health; @@ -2380,7 +2380,7 @@ void SamusLatchesOnWithGrapple(void) { // 0xA09F7D if (E->frozen_timer) { E->ai_handler_bits = 4; } else { - EnemyDef_A2 *ED = get_EnemyDef_A2(E->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(E->enemy_ptr); E->flash_timer = ED->hurt_ai_time ? ED->hurt_ai_time : 4; E->ai_handler_bits = 0; } @@ -2410,7 +2410,7 @@ void SamusLatchesOnWithGrappleNoInvinc(void) { // 0xA09FE9 void SamusLatchesOnWithGrappleParalyze(void) { // 0xA0A03E EnemyData *E = gEnemyData(cur_enemy_index); - EnemyDef_A2 *ED = get_EnemyDef_A2(E->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(E->enemy_ptr); E->flash_timer = ED->hurt_ai_time ? ED->hurt_ai_time : 4; E->ai_handler_bits = 0; E->extra_properties |= 1; @@ -2434,7 +2434,7 @@ void EnemySamusCollHandler(void) { // 0xA0A07A if (some_flag == 0 || some_flag == 8) return; } - EnemyDef_A2 *ED = get_EnemyDef_A2(E->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(E->enemy_ptr); if (ED->touch_ai == FUNC16(nullsub_170) || ED->touch_ai == FUNC16(nullsub_169)) return; if (abs16(samus_x_pos - E->x_pos) - samus_x_radius < E->x_width && @@ -2503,7 +2503,7 @@ void ProcessEnemyPowerBombInteraction(void) { // 0xA0A306 EnemyData *E = gEnemyData(i); if (E->invincibility_timer || !E->enemy_ptr || E->enemy_ptr == addr_kEnemyDef_DAFF) continue; - EnemyDef_A2 *ED = get_EnemyDef_A2(E->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(E->enemy_ptr); if ((get_Vulnerability(ED->vulnerability_ptr ? ED->vulnerability_ptr : addr_stru_B4EC1C)->power_bomb & 0x7F) == 0) continue; if (abs16(power_bomb_explosion_x_pos - E->x_pos) < rx && abs16(power_bomb_explosion_y_pos - E->y_pos) < ry) { @@ -2568,7 +2568,7 @@ void NormalEnemyTouchAiSkipDeathAnim_CurEnemy(void) { // 0xA0A497 void NormalEnemyTouchAiSkipDeathAnim(void) { // 0xA0A4A1 EnemyData *E = gEnemyData(cur_enemy_index); - EnemyDef_A2 *ED = get_EnemyDef_A2(E->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(E->enemy_ptr); if (samus_contact_damage_index == 0) { Samus_DealDamage(SuitDamageDivision(ED->damage)); samus_invincibility_timer = 96; @@ -2619,7 +2619,7 @@ void NormalEnemyPowerBombAiSkipDeathAnim_CurEnemy(void) { // 0xA0A5B7 } void NormalEnemyPowerBombAiSkipDeathAnim(void) { // 0xA0A5C1 - EnemyDef_A2 *EnemyDef_A2; + EnemyDef *EnemyDef_A2; int16 hurt_ai_time; EnemyData *v0 = gEnemyData(cur_enemy_index); @@ -2664,7 +2664,7 @@ void NormalEnemyShotAi(void) { // 0xA0A63D gEnemySpawnData(cur_enemy_index)->cause_of_death = j; uint16 death_anim = 2; if (j == 2) { - EnemyDef_A2 *ED = get_EnemyDef_A2(E->enemy_ptr); + EnemyDef *ED = get_EnemyDef_A2(E->enemy_ptr); if (!sign16(ED->death_anim - 3)) death_anim = ED->death_anim; } else { @@ -2691,7 +2691,7 @@ uint16 NormalEnemyShotAiSkipDeathAnim(void) { // 0xA0A6DE int16 v5; int16 v6; int16 v9; - EnemyDef_A2 *EnemyDef_A2; + EnemyDef *EnemyDef_A2; int16 hurt_ai_time; int16 v20; uint16 varE32; diff --git a/src/sm_a3.c b/src/sm_a3.c index 6100bc2..f01ac67 100644 --- a/src/sm_a3.c +++ b/src/sm_a3.c @@ -834,29 +834,29 @@ void Roach_Func_3(uint16 k) { // 0xA3A1B0 void Roach_Func_4(uint16 k) { // 0xA3A1F3 Enemy_Roach *E = Get_Roach(k); - SetHiLo(&E->roach_var_05, &E->roach_var_04, CosineMult8bitFull((uint8)(*(uint16 *)((uint8 *)&E->roach_parameter_1 + 1) - 32), LOBYTE(E->roach_parameter_1))); - SetHiLo(&E->roach_var_07, &E->roach_var_06, SineMult8bitFull((uint8)(*(uint16 *)((uint8 *)&E->roach_parameter_1 + 1) - 32), LOBYTE(E->roach_parameter_1))); + SetHiLo(&E->roach_var_05, &E->roach_var_04, CosineMult8bitFull((uint8)(HIBYTE(E->roach_parameter_1) - 32), LOBYTE(E->roach_parameter_1))); + SetHiLo(&E->roach_var_07, &E->roach_var_06, SineMult8bitFull((uint8)(HIBYTE(E->roach_parameter_1) - 32), LOBYTE(E->roach_parameter_1))); } void Roach_Func_5(uint16 k) { // 0xA3A23E Enemy_Roach *E = Get_Roach(k); - SetHiLo(&E->roach_var_09, &E->roach_var_08, CosineMult8bitFull((uint8)(*(uint16 *)((uint8 *)&E->roach_parameter_1 + 1) + 32), LOBYTE(E->roach_parameter_1))); - SetHiLo(&E->roach_var_0B, &E->roach_var_0A, SineMult8bitFull((uint8)(*(uint16 *)((uint8 *)&E->roach_parameter_1 + 1) + 32), LOBYTE(E->roach_parameter_1))); + SetHiLo(&E->roach_var_09, &E->roach_var_08, CosineMult8bitFull((uint8)(HIBYTE(E->roach_parameter_1) + 32), LOBYTE(E->roach_parameter_1))); + SetHiLo(&E->roach_var_0B, &E->roach_var_0A, SineMult8bitFull((uint8)(HIBYTE(E->roach_parameter_1) + 32), LOBYTE(E->roach_parameter_1))); } void Roach_Func_6(uint16 k) { // 0xA3A289 Enemy_Roach *E = Get_Roach(k); - E->roach_var_20 = 2 * ((uint8)(*(uint16 *)((uint8 *)&E->roach_parameter_1 + 1) - 48) >> 5); + E->roach_var_20 = 2 * ((uint8)(HIBYTE(E->roach_parameter_1) - 48) >> 5); } void Roach_Func_7(uint16 k) { // 0xA3A29E Enemy_Roach *E = Get_Roach(k); - E->roach_var_21 = 2 * ((uint8)(*(uint16 *)((uint8 *)&E->roach_parameter_1 + 1) - 80) >> 5); + E->roach_var_21 = 2 * ((uint8)(HIBYTE(E->roach_parameter_1) - 80) >> 5); } void Roach_Func_8(uint16 k) { // 0xA3A2B7 Enemy_Roach *E = Get_Roach(k); - E->roach_var_22 = 2 * ((uint8)(*(uint16 *)((uint8 *)&E->roach_parameter_1 + 1) - 48 + 32) >> 5); + E->roach_var_22 = 2 * ((uint8)(HIBYTE(E->roach_parameter_1) - 48 + 32) >> 5); } void CallRoachFunc(uint32 ea) { switch (ea) { diff --git a/src/sm_aa.c b/src/sm_aa.c index 3a6d75b..1230237 100644 --- a/src/sm_aa.c +++ b/src/sm_aa.c @@ -538,8 +538,7 @@ void Torizo_Func_4(uint16 k) { // 0xAAC6C6 if ((v2 & 0x8000) != 0) { QueueMusic_Delayed8(g_word_AAB096); E->base.properties &= ~kEnemyProps_Tangible; - ++E->base.current_instruction; - ++E->base.current_instruction; + E->base.current_instruction += 2; E->base.instruction_timer = 1; return; } diff --git a/src/sm_cpu_infra.c b/src/sm_cpu_infra.c index 30a25f6..6b48a43 100644 --- a/src/sm_cpu_infra.c +++ b/src/sm_cpu_infra.c @@ -469,7 +469,7 @@ bool HookedFunctionRts(int is_long) { static void VerifySnapshotsEq(Snapshot *b, Snapshot *a, Snapshot *prev) { memcpy(&b->ram[0x0], &a->ram[0x0], 0x51); // r18, r20, R22 etc memcpy(&b->ram[0x1f5b], &a->ram[0x1f5b], 0x100 - 0x5b); // stacck - memcpy(&b->ram[0xad], &a->ram[0xad], 2); // ptr_to_retaddr_parameters + memcpy(&b->ram[0xad], &a->ram[0xad], 4); // ptr_to_retaddr_parameters etc memcpy(&b->ram[0x5e7], &a->ram[0x5e7], 14); // bitmask, mult_tmp, mult_product_lo etc memcpy(&b->ram[0x5BC], &a->ram[0x5BC], 9); // door_transition_vram_update etc @@ -477,8 +477,12 @@ static void VerifySnapshotsEq(Snapshot *b, Snapshot *a, Snapshot *prev) { memcpy(&a->ram[0x611], &b->ram[0x611], 6); // coroutine_state (copy from mine to theirs) memcpy(&b->ram[0x641], &a->ram[0x641], 2); // apu_attempts_countdown memcpy(&a->ram[0x77e], &b->ram[0x77e], 5); // my counter + memcpy(&a->ram[0x78F], &b->ram[0x78F], 2); // door_bts + + memcpy(&a->ram[0x7b7], &b->ram[0x7b7], 2); // event_pointer memcpy(&a->ram[0x933], &b->ram[0x933], 10); // var933 etc memcpy(&b->ram[0xA82], &a->ram[0xA82], 2); // xray_angle + memcpy(&b->ram[0xB24], &a->ram[0xB24], 4); // xray_angle memcpy(&a->ram[0xd1e], &b->ram[0xd1e], 2); // grapple_beam_unkD1E memcpy(&a->ram[0xd82], &b->ram[0xd82], 8); // grapple_beam_tmpD82 @@ -503,6 +507,7 @@ static void VerifySnapshotsEq(Snapshot *b, Snapshot *a, Snapshot *prev) { memcpy(&a->ram[0x18A6], &b->ram[0x18A6], 2); // collision_detection_index memcpy(&a->ram[0x189A], &b->ram[0x189A], 12); // samus_target_x_pos etc + memcpy(&b->ram[0x1966], &a->ram[0x1966], 6); // current_fx_entry_offset etc memcpy(&b->ram[0x1993], &a->ram[0x1993], 2); // eproj_init_param memcpy(&b->ram[0x19b3], &a->ram[0x19b3], 2); // mode7_spawn_param memcpy(&b->ram[0x1a93], &a->ram[0x1a93], 2); // cinematic_spawn_param diff --git a/src/variables.h b/src/variables.h index b753e72..e6540e6 100644 --- a/src/variables.h +++ b/src/variables.h @@ -272,7 +272,7 @@ extern int32 *cur_coll_amt32; #define has_area_map (*(uint16*)(g_ram+0x789)) #define load_station_index (*(uint16*)(g_ram+0x78B)) #define door_def_ptr (*(uint16*)(g_ram+0x78D)) -#define door_bts (*(uint16*)(g_ram+0x78F)) +#define REMOVED_door_bts (*(uint16*)(g_ram+0x78F)) #define door_direction (*(uint16*)(g_ram+0x791)) #define elevator_door_properties_orientation (*(uint16*)(g_ram+0x793)) #define door_transition_flag_elevator_zebetites (*(uint16*)(g_ram+0x795)) @@ -292,7 +292,7 @@ extern int32 *cur_coll_amt32; #define previous_cre_bitset (*(uint16*)(g_ram+0x7B1)) #define cre_bitset (*(uint16*)(g_ram+0x7B3)) #define door_list_pointer (*(uint16*)(g_ram+0x7B5)) -#define event_pointer (*(uint16*)(g_ram+0x7B7)) +#define REMOVED_event_pointer (*(uint16*)(g_ram+0x7B7)) #define room_size_in_blocks (*(uint16*)(g_ram+0x7B9)) #define roomdefroomstate_ptr (*(uint16*)(g_ram+0x7BB)) #define room_compr_level_data_ptr (*(LongPtr*)(g_ram+0x7BD)) @@ -866,9 +866,6 @@ extern int32 *cur_coll_amt32; #define lava_acid_y_subpos (*(uint16*)(g_ram+0x1960)) #define lava_acid_y_pos (*(uint16*)(g_ram+0x1962)) #define fx_tilemap_ptr (*(uint16*)(g_ram+0x1964)) -#define current_fx_entry_ptr (*(uint16*)(g_ram+0x1966)) -#define current_fx_entry_offset (*(uint16*)(g_ram+0x1968)) -#define current_fx_palette_fx_bitset (*(uint16*)(g_ram+0x196A)) #define fx_rising_function_bank_88 (*(uint16*)(g_ram+0x196C)) #define fx_type (*(uint16*)(g_ram+0x196E)) #define fx_y_suboffset (*(uint16*)(g_ram+0x1970))