ntsc-beta: Get lib .text segment matching excluding pointers

This commit is contained in:
Ryan Dwyer
2021-03-19 22:15:48 +10:00
parent 99ec60b22d
commit 5d3682ef17
49 changed files with 13086 additions and 861 deletions
+10 -1
View File
@@ -20,6 +20,7 @@ JPN=0
ifeq ($(ROMID),ntsc-beta)
NTSC=1
VERSION=0
PIRACYCHECKS=0
endif
ifeq ($(ROMID),ntsc-1.0)
NTSC=1
@@ -115,6 +116,10 @@ $(B_DIR)/lib/ultra/os/timerintr.o: OPT_LVL := -O1
$(B_DIR)/lib/ultra/os/virtualtophysical.o: OPT_LVL := -O1
$(B_DIR)/lib/ultra/os/yieldthread.o: OPT_LVL := -O1
ifeq ($(ROMID), ntsc-beta)
$(B_DIR)/lib/ultra/io/pfsisplug.o: OPT_LVL := -O1
endif
CFLAGS = -DVERSION=$(VERSION) \
-DNTSC=$(NTSC) \
-DPAL=$(PAL) \
@@ -158,7 +163,6 @@ O_FILES := \
$(patsubst %, %.o, $(ASSET_FILES)) \
$(patsubst src/%.bin, $(B_DIR)/%.o, $(ANIM_FILES)) \
$(B_DIR)/assets/animations/list.o \
$(B_DIR)/assets/accessingpakZ.o \
$(B_DIR)/assets/bootloader/bootloader.o \
$(B_DIR)/assets/copyrightZ.o \
$(B_DIR)/assets/files/list.o \
@@ -197,6 +201,11 @@ O_FILES := \
$(B_DIR)/assets/textures/config.o \
$(B_DIR)/romheader.o
# ntsc-beta doesn't have this segment
ifneq ($(ROMID), ntsc-beta)
O_FILES := $(O_FILES) $(B_DIR)/assets/accessingpakZ.o
endif
default: rom
################################################################################
+1 -1
View File
@@ -2014,7 +2014,7 @@ aa93f4df16fceada399a749f5ad2f273 build/ntsc-beta/pd.z64
a12b5437510403bb09b3cceb45dd2a10 build/ntsc-beta/segments/firingrange.bin
daae19f7ce11d3f3e1f98d543ad856f5 build/ntsc-beta/segments/game.bin
cab47b8c30b1be608c1c5c1db08342de build/ntsc-beta/segments/data.bin
d13f25c1c59fb96346ac23301ccd9d7d build/ntsc-beta/segments/inflate.bin
843285fdc0e80a77576eeb73940d2fd3 build/ntsc-beta/segments/inflate.bin
900199658b5cfb5a3c16844abc9da56e build/ntsc-beta/segments/lib.bin
8aaec8cc806ec62d2f70eaa08282e9c0 build/ntsc-beta/segments/mpconfigs.bin
d52a0fc2e90e03b610879b50df4c0fd4 build/ntsc-beta/segments/mpstringsE.bin
+193
View File
@@ -0,0 +1,193 @@
#define GAMEFILES(section) \
build/ROMID/game/game_000000.o (section); \
build/ROMID/game/game_000090.o (section); \
build/ROMID/game/game_000130.o (section); \
build/ROMID/game/stubs/game_000840.o (section); \
build/ROMID/game/stubs/game_000850.o (section); \
build/ROMID/game/stubs/game_000860.o (section); \
build/ROMID/game/stubs/game_000870.o (section); \
build/ROMID/game/game_000880.o (section); \
build/ROMID/game/stubs/game_0008e0.o (section); \
build/ROMID/game/stubs/game_0008f0.o (section); \
build/ROMID/game/stubs/game_000900.o (section); \
build/ROMID/game/stubs/game_000910.o (section); \
build/ROMID/game/dlights.o (section); \
build/ROMID/game/game_005fd0.o (section); \
build/ROMID/game/game_006900.o (section); \
build/ROMID/game/game_006bd0.o (section); \
build/ROMID/game/nbomb.o (section); \
build/ROMID/game/stubs/game_00b180.o (section); \
build/ROMID/game/game_00b190.o (section); \
build/ROMID/game/stubs/game_00b200.o (section); \
build/ROMID/game/game_00b210.o (section); \
build/ROMID/game/game_00b320.o (section); \
build/ROMID/game/game_00b420.o (section); \
build/ROMID/game/game_00b480.o (section); \
build/ROMID/game/game_00b820.o (section); \
build/ROMID/game/game_00c240.o (section); \
build/ROMID/game/game_00c490.o (section); \
build/ROMID/game/game_0108d0.o (section); \
build/ROMID/game/objectives/setup.o (section); \
build/ROMID/game/casing/reset.o (section); \
build/ROMID/game/game_010b20.o (section); \
build/ROMID/game/game_011110.o (section); \
build/ROMID/game/inventory/init.o (section); \
build/ROMID/game/game_0125a0.o (section); \
build/ROMID/game/game_012aa0.o (section); \
build/ROMID/game/game_012d50.o (section); \
build/ROMID/game/explosions/init.o (section); \
build/ROMID/game/smoke/init.o (section); \
build/ROMID/game/sparks/init.o (section); \
build/ROMID/game/weather/init.o (section); \
build/ROMID/game/stubs/game_013540.o (section); \
build/ROMID/game/game_013550.o (section); \
build/ROMID/game/shards/init.o (section); \
build/ROMID/game/game_013b80.o (section); \
build/ROMID/game/game_013cf0.o (section); \
build/ROMID/game/game_013ee0.o (section); \
build/ROMID/game/game_0147a0.o (section); \
build/ROMID/game/game_0147d0.o (section); \
build/ROMID/game/game_014e90.o (section); \
build/ROMID/game/game_014f10.o (section); \
build/ROMID/game/game_015010.o (section); \
build/ROMID/game/game_0150a0.o (section); \
build/ROMID/game/objectives/autocomplete.o (section); \
build/ROMID/game/stubs/game_015260.o (section); \
build/ROMID/game/stubs/game_015270.o (section); \
build/ROMID/game/explosions/reset.o (section); \
build/ROMID/game/smoke/reset.o (section); \
build/ROMID/game/stubs/game_0153f0.o (section); \
build/ROMID/game/stubs/game_015400.o (section); \
build/ROMID/game/stubs/game_015410.o (section); \
build/ROMID/game/shards/reset.o (section); \
build/ROMID/game/game_015470.o (section); \
build/ROMID/game/title.o (section); \
build/ROMID/game/game_01afc0.o (section); \
build/ROMID/game/game_01b0a0.o (section); \
build/ROMID/game/activemenu/tick.o (section); \
build/ROMID/game/game_01bea0.o (section); \
build/ROMID/game/weather/tick.o (section); \
build/ROMID/game/game_01d860.o (section); \
build/ROMID/game/game_01d8c0.o (section); \
build/ROMID/game/game_01d990.o (section); \
build/ROMID/game/casing/tick.o (section); \
build/ROMID/game/shards/tick.o (section); \
build/ROMID/game/sparks/tick.o (section); \
build/ROMID/game/chr/chr.o (section); \
build/ROMID/game/game_02cde0.o (section); \
build/ROMID/game/chr/chraction.o (section); \
build/ROMID/game/chr/chrai.o (section); \
build/ROMID/game/chr/chraicommands.o (section); \
build/ROMID/game/prop.o (section); \
build/ROMID/game/propobj.o (section); \
build/ROMID/game/propobjbss.o (section); \
build/ROMID/game/game_091e10.o (section); \
build/ROMID/game/game_092610.o (section); \
build/ROMID/game/objectives/objectives.o (section); \
build/ROMID/game/game_096360.o (section); \
build/ROMID/game/game_096700.o (section); \
build/ROMID/game/atan2f.o (section); \
build/ROMID/game/game_096890.o (section); \
build/ROMID/game/game_0969d0.o (section); \
build/ROMID/game/game_096b20.o (section); \
build/ROMID/game/game_096ca0.o (section); \
build/ROMID/game/floor.o (section); \
build/ROMID/game/ceil.o (section); \
build/ROMID/game/game_097a50.o (section); \
build/ROMID/game/game_097aa0.o (section); \
build/ROMID/game/inventory/items.o (section); \
build/ROMID/game/game_097ba0.o (section); \
build/ROMID/game/game_0abe70.o (section); \
build/ROMID/game/mpstats.o (section); \
build/ROMID/game/game_0b0fd0.o (section); \
build/ROMID/game/game_0b2150.o (section); \
build/ROMID/game/game_0b28d0.o (section); \
build/ROMID/game/game_0b3350.o (section); \
build/ROMID/game/game_0b4950.o (section); \
build/ROMID/game/game_0b63b0.o (section); \
build/ROMID/game/game_0b69d0.o (section); \
build/ROMID/game/game_0c33f0.o (section); \
build/ROMID/game/bondcutscene.o (section); \
build/ROMID/game/bondwalk.o (section); \
build/ROMID/game/bondmove.o (section); \
build/ROMID/game/bondgrab.o (section); \
build/ROMID/game/bondeyespy.o (section); \
build/ROMID/game/bondbike.o (section); \
build/ROMID/game/game_0d4690.o (section); \
build/ROMID/game/healthbar.o (section); \
build/ROMID/game/sight.o (section); \
build/ROMID/game/hudmsg.o (section); \
build/ROMID/game/game_0e0770.o (section); \
build/ROMID/game/menu/items.o (section); \
build/ROMID/game/game_0f09f0.o (section); \
build/ROMID/game/activemenu/activemenu.o (section); \
build/ROMID/game/stubs/game_102230.o (section); \
build/ROMID/game/game_102240.o (section); \
build/ROMID/game/cheats.o (section); \
build/ROMID/game/game_107fb0.o (section); \
build/ROMID/game/game_10c9c0.o (section); \
build/ROMID/game/endscreen.o (section); \
build/ROMID/game/gamefile.o (section); \
build/ROMID/game/game_110680.o (section); \
build/ROMID/game/inventory/inventory.o (section); \
build/ROMID/game/bondhead.o (section); \
build/ROMID/game/padhalllv.o (section); \
build/ROMID/game/pad.o (section); \
build/ROMID/game/pak/pak.o (section); \
build/ROMID/game/debug.o (section); \
build/ROMID/game/stubs/game_11eff0.o (section); \
build/ROMID/game/data/ailists.o (section); \
build/ROMID/game/data/data_020df0.o (section); \
build/ROMID/game/game_11f000.o (section); \
build/ROMID/game/game_127910.o (section); \
build/ROMID/game/game_128f30.o (section); \
build/ROMID/game/game_129210.o (section); \
build/ROMID/game/explosions/explosions.o (section); \
build/ROMID/game/smoke/smoke.o (section); \
build/ROMID/game/sparks/sparks.o (section); \
build/ROMID/game/weather/weather.o (section); \
build/ROMID/game/sky.o (section); \
build/ROMID/game/credits.o (section); \
build/ROMID/game/game_13b670.o (section); \
build/ROMID/game/game_13c510.o (section); \
build/ROMID/game/wallhit.o (section); \
build/ROMID/game/bondview.o (section); \
build/ROMID/game/splat.o (section); \
build/ROMID/game/camdraw.o (section); \
build/ROMID/game/shards/shards.o (section); \
build/ROMID/game/options.o (section); \
build/ROMID/game/game_152fa0.o (section); \
build/ROMID/game/game_1531a0.o (section); \
build/ROMID/game/game_1577f0.o (section); \
build/ROMID/game/room.o (section); \
build/ROMID/game/roombss.o (section); \
build/ROMID/game/game_165360.o (section); \
build/ROMID/game/game_1655c0.o (section); \
build/ROMID/game/game_165670.o (section); \
build/ROMID/game/game_1657c0.o (section); \
build/ROMID/game/game_1668e0.o (section); \
build/ROMID/game/file.o (section); \
build/ROMID/game/gfxmemory.o (section); \
build/ROMID/game/core.o (section); \
build/ROMID/game/timing.o (section); \
build/ROMID/game/music.o (section); \
build/ROMID/game/lang.o (section); \
build/ROMID/game/texture.o (section); \
build/ROMID/game/game_173a00.o (section); \
build/ROMID/game/stubs/game_175f50.o (section); \
build/ROMID/game/game_175f90.o (section); \
build/ROMID/game/stubs/game_176000.o (section); \
build/ROMID/game/game_176080.o (section); \
build/ROMID/game/utils.o (section); \
build/ROMID/game/mplayer/ingame.o (section); \
build/ROMID/game/mplayer/setup.o (section); \
build/ROMID/game/mplayer/scenarios.o (section); \
build/ROMID/game/mplayer/mplayer.o (section); \
build/ROMID/game/radar.o (section); \
build/ROMID/game/game_190260.o (section); \
build/ROMID/game/game_197600.o (section); \
build/ROMID/game/game_1999b0.o (section); \
build/ROMID/game/game_19aa80.o (section); \
build/ROMID/game/training/training.o (section); \
build/ROMID/game/training/menus.o (section); \
build/ROMID/game/game_1a78b0.o (section);
+194
View File
@@ -0,0 +1,194 @@
#define GAMEFILES(section) \
build/ROMID/game/game_000000.o (section); \
build/ROMID/game/game_000090.o (section); \
build/ROMID/game/game_000130.o (section); \
build/ROMID/game/stubs/game_000840.o (section); \
build/ROMID/game/stubs/game_000850.o (section); \
build/ROMID/game/stubs/game_000860.o (section); \
build/ROMID/game/stubs/game_000870.o (section); \
build/ROMID/game/game_000880.o (section); \
build/ROMID/game/stubs/game_0008e0.o (section); \
build/ROMID/game/stubs/game_0008f0.o (section); \
build/ROMID/game/stubs/game_000900.o (section); \
build/ROMID/game/stubs/game_000910.o (section); \
build/ROMID/game/dlights.o (section); \
build/ROMID/game/game_005fd0.o (section); \
build/ROMID/game/game_006900.o (section); \
build/ROMID/game/game_006bd0.o (section); \
build/ROMID/game/nbomb.o (section); \
build/ROMID/game/stubs/game_00b180.o (section); \
build/ROMID/game/game_00b190.o (section); \
build/ROMID/game/stubs/game_00b200.o (section); \
build/ROMID/game/game_00b210.o (section); \
build/ROMID/game/game_00b320.o (section); \
build/ROMID/game/game_00b420.o (section); \
build/ROMID/game/game_00b480.o (section); \
build/ROMID/game/game_00b820.o (section); \
build/ROMID/game/game_00c240.o (section); \
build/ROMID/game/game_00c490.o (section); \
build/ROMID/game/game_0108d0.o (section); \
build/ROMID/game/objectives/setup.o (section); \
build/ROMID/game/casing/reset.o (section); \
build/ROMID/game/game_010b20.o (section); \
build/ROMID/game/game_011110.o (section); \
build/ROMID/game/inventory/init.o (section); \
build/ROMID/game/game_0125a0.o (section); \
build/ROMID/game/game_012aa0.o (section); \
build/ROMID/game/game_012d50.o (section); \
build/ROMID/game/explosions/init.o (section); \
build/ROMID/game/smoke/init.o (section); \
build/ROMID/game/sparks/init.o (section); \
build/ROMID/game/weather/init.o (section); \
build/ROMID/game/stubs/game_013540.o (section); \
build/ROMID/game/game_013550.o (section); \
build/ROMID/game/shards/init.o (section); \
build/ROMID/game/game_013b80.o (section); \
build/ROMID/game/game_013cf0.o (section); \
build/ROMID/game/game_013ee0.o (section); \
build/ROMID/game/game_0147a0.o (section); \
build/ROMID/game/game_0147d0.o (section); \
build/ROMID/game/game_014e90.o (section); \
build/ROMID/game/game_014f10.o (section); \
build/ROMID/game/game_015010.o (section); \
build/ROMID/game/game_0150a0.o (section); \
build/ROMID/game/objectives/autocomplete.o (section); \
build/ROMID/game/stubs/game_015260.o (section); \
build/ROMID/game/stubs/game_015270.o (section); \
build/ROMID/game/explosions/reset.o (section); \
build/ROMID/game/smoke/reset.o (section); \
build/ROMID/game/stubs/game_0153f0.o (section); \
build/ROMID/game/stubs/game_015400.o (section); \
build/ROMID/game/stubs/game_015410.o (section); \
build/ROMID/game/shards/reset.o (section); \
build/ROMID/game/game_015470.o (section); \
build/ROMID/game/title.o (section); \
build/ROMID/game/game_01afc0.o (section); \
build/ROMID/game/game_01b0a0.o (section); \
build/ROMID/game/activemenu/tick.o (section); \
build/ROMID/game/game_01bea0.o (section); \
build/ROMID/game/weather/tick.o (section); \
build/ROMID/game/game_01d860.o (section); \
build/ROMID/game/game_01d8c0.o (section); \
build/ROMID/game/game_01d990.o (section); \
build/ROMID/game/casing/tick.o (section); \
build/ROMID/game/shards/tick.o (section); \
build/ROMID/game/sparks/tick.o (section); \
build/ROMID/game/chr/chr.o (section); \
build/ROMID/game/game_02cde0.o (section); \
build/ROMID/game/chr/chraction.o (section); \
build/ROMID/game/chr/chrai.o (section); \
build/ROMID/game/chr/chraicommands.o (section); \
build/ROMID/game/prop.o (section); \
build/ROMID/game/propobj.o (section); \
build/ROMID/game/propobjbss.o (section); \
build/ROMID/game/game_091e10.o (section); \
build/ROMID/game/game_092610.o (section); \
build/ROMID/game/objectives/objectives.o (section); \
build/ROMID/game/game_096360.o (section); \
build/ROMID/game/game_096700.o (section); \
build/ROMID/game/atan2f.o (section); \
build/ROMID/game/game_096890.o (section); \
build/ROMID/game/game_0969d0.o (section); \
build/ROMID/game/game_096b20.o (section); \
build/ROMID/game/game_096ca0.o (section); \
build/ROMID/game/floor.o (section); \
build/ROMID/game/ceil.o (section); \
build/ROMID/game/game_097a50.o (section); \
build/ROMID/game/game_097aa0.o (section); \
build/ROMID/game/inventory/items.o (section); \
build/ROMID/game/game_097ba0.o (section); \
build/ROMID/game/game_0abe70.o (section); \
build/ROMID/game/mpstats.o (section); \
build/ROMID/game/game_0b0fd0.o (section); \
build/ROMID/game/game_0b2150.o (section); \
build/ROMID/game/game_0b28d0.o (section); \
build/ROMID/game/game_0b3350.o (section); \
build/ROMID/game/game_0b4950.o (section); \
build/ROMID/game/game_0b63b0.o (section); \
build/ROMID/game/game_0b69d0.o (section); \
build/ROMID/game/game_0c33f0.o (section); \
build/ROMID/game/bondcutscene.o (section); \
build/ROMID/game/bondwalk.o (section); \
build/ROMID/game/bondmove.o (section); \
build/ROMID/game/bondgrab.o (section); \
build/ROMID/game/bondeyespy.o (section); \
build/ROMID/game/bondbike.o (section); \
build/ROMID/game/game_0d4690.o (section); \
build/ROMID/game/healthbar.o (section); \
build/ROMID/game/sight.o (section); \
build/ROMID/game/hudmsg.o (section); \
build/ROMID/game/game_0e0770.o (section); \
build/ROMID/game/menu/items.o (section); \
build/ROMID/game/game_0f09f0.o (section); \
build/ROMID/game/activemenu/activemenu.o (section); \
build/ROMID/game/stubs/game_102230.o (section); \
build/ROMID/game/game_102240.o (section); \
build/ROMID/game/cheats.o (section); \
build/ROMID/game/game_107fb0.o (section); \
build/ROMID/game/game_10c9c0.o (section); \
build/ROMID/game/endscreen.o (section); \
build/ROMID/game/gamefile.o (section); \
build/ROMID/game/game_110680.o (section); \
build/ROMID/game/inventory/inventory.o (section); \
build/ROMID/game/bondhead.o (section); \
build/ROMID/game/padhalllv.o (section); \
build/ROMID/game/pad.o (section); \
build/ROMID/game/pak/pak.o (section); \
build/ROMID/game/debug.o (section); \
build/ROMID/game/stubs/game_11eff0.o (section); \
build/ROMID/game/data/ailists.o (section); \
build/ROMID/game/data/data_020df0.o (section); \
build/ROMID/game/game_11f000.o (section); \
build/ROMID/game/game_127910.o (section); \
build/ROMID/game/game_128f30.o (section); \
build/ROMID/game/game_129210.o (section); \
build/ROMID/game/explosions/explosions.o (section); \
build/ROMID/game/smoke/smoke.o (section); \
build/ROMID/game/sparks/sparks.o (section); \
build/ROMID/game/weather/weather.o (section); \
build/ROMID/game/sky.o (section); \
build/ROMID/game/credits.o (section); \
build/ROMID/game/game_13b670.o (section); \
build/ROMID/game/game_13c510.o (section); \
build/ROMID/game/wallhit.o (section); \
build/ROMID/game/bondview.o (section); \
build/ROMID/game/splat.o (section); \
build/ROMID/game/camdraw.o (section); \
build/ROMID/game/shards/shards.o (section); \
build/ROMID/game/options.o (section); \
build/ROMID/game/game_152fa0.o (section); \
build/ROMID/game/game_1531a0.o (section); \
build/ROMID/game/game_1577f0.o (section); \
build/ROMID/game/room.o (section); \
build/ROMID/game/roombss.o (section); \
build/ROMID/game/game_165360.o (section); \
build/ROMID/game/game_1655c0.o (section); \
build/ROMID/game/game_165670.o (section); \
build/ROMID/game/game_1657c0.o (section); \
build/ROMID/game/game_1668e0.o (section); \
build/ROMID/game/file.o (section); \
build/ROMID/game/gfxmemory.o (section); \
build/ROMID/game/core.o (section); \
build/ROMID/game/timing.o (section); \
build/ROMID/game/music.o (section); \
build/ROMID/game/lang.o (section); \
build/ROMID/game/texture.o (section); \
build/ROMID/game/game_173a00.o (section); \
build/ROMID/game/stubs/game_175f50.o (section); \
build/ROMID/game/game_175f90.o (section); \
build/ROMID/game/stubs/game_176000.o (section); \
build/ROMID/game/game_176080.o (section); \
build/ROMID/game/utils.o (section); \
build/ROMID/game/mplayer/ingame.o (section); \
build/ROMID/game/mplayer/setup.o (section); \
build/ROMID/game/mplayer/scenarios.o (section); \
build/ROMID/game/mplayer/mplayer.o (section); \
build/ROMID/game/radar.o (section); \
build/ROMID/game/game_190260.o (section); \
build/ROMID/game/game_197600.o (section); \
build/ROMID/game/game_1999b0.o (section); \
build/ROMID/game/game_19aa80.o (section); \
build/ROMID/game/training/training.o (section); \
build/ROMID/game/training/menus.o (section); \
build/ROMID/game/game_1a7560.o (section); \
build/ROMID/game/game_1a78b0.o (section);
+220
View File
@@ -0,0 +1,220 @@
#define LIBFILES(section) \
build/ROMID/lib/entry.o (section); \
build/ROMID/lib/segments.o (section); \
build/ROMID/lib/init.o (section); \
build/ROMID/lib/sched.o (section); \
build/ROMID/lib/reset.o (section); \
build/ROMID/lib/ultra/os/maptlbrdb.o (section); \
build/ROMID/lib/ultra/io/vimgr.o (section); \
build/ROMID/lib/ultra/io/pimgr.o (section); \
build/ROMID/lib/lib_034d0.o (section); \
build/ROMID/lib/ultra/os/exceptasm.o (section); \
build/ROMID/lib/ultra/os/syncputchars.o (section); \
build/ROMID/lib/ultra/os/createthread.o (section); \
build/ROMID/lib/ultra/gu/lookat.o (section); \
build/ROMID/lib/ultra/gu/lookatref.o (section); \
build/ROMID/lib/ultra/gu/normalize.o (section); \
build/ROMID/lib/ultra/gu/perspective.o (section); \
build/ROMID/lib/ultra/gu/rotate.o (section); \
build/ROMID/lib/lib_04f60nb.o (section); \
build/ROMID/lib/ultra/libc/xldtob.o (section); \
build/ROMID/lib/ultra/libc/llcvt.o (section); \
build/ROMID/lib/ultra/os/initialize.o (section); \
build/ROMID/lib/ultra/io/sptask.o (section); \
build/ROMID/lib/lib_06100.o (section); \
build/ROMID/lib/lib_06330.o (section); \
build/ROMID/lib/ultra/io/conteeplongwrite.o (section); \
build/ROMID/lib/lib_06550.o (section); \
build/ROMID/lib/lib_070d0.o (section); \
build/ROMID/lib/lib_074f0.o (section); \
build/ROMID/lib/audiomgr.o (section); \
build/ROMID/lib/lib_09660.o (section); \
build/ROMID/lib/lib_09a80.o (section); \
build/ROMID/lib/lib_0bfb0.o (section); \
build/ROMID/lib/lib_0c000.o (section); \
build/ROMID/lib/dma.o (section); \
build/ROMID/lib/main.o (section); \
build/ROMID/lib/lib_0e9d0.o (section); \
build/ROMID/lib/lib_11420.o (section); \
build/ROMID/lib/memory.o (section); \
build/ROMID/lib/lib_126b0.o (section); \
build/ROMID/lib/rng.o (section); \
build/ROMID/lib/args.o (section); \
build/ROMID/lib/str.o (section); \
build/ROMID/lib/ultra/libc/sprintf.o (section); \
build/ROMID/lib/lib_13710.o (section); \
build/ROMID/lib/lib_13750.o (section); \
build/ROMID/lib/lib_13790.o (section); \
build/ROMID/lib/lib_13820.o (section); \
build/ROMID/lib/controller.o (section); \
build/ROMID/lib/lib_15850.o (section); \
build/ROMID/lib/gvars.o (section); \
build/ROMID/lib/lib_159b0.o (section); \
build/ROMID/lib/lib_16110.o (section); \
build/ROMID/lib/lib_17ce0.o (section); \
build/ROMID/lib/lib_184d0.o (section); \
build/ROMID/lib/model.o (section); \
build/ROMID/game/game_1a7560.o (section); \
build/ROMID/lib/lib_233c0.o (section); \
build/ROMID/lib/lib_24e40.o (section); \
build/ROMID/lib/lib_2f490.o (section); \
build/ROMID/lib/lib_2f8a0.o (section); \
build/ROMID/lib/lib_2fa00.o (section); \
build/ROMID/lib/lib_2faf0.o (section); \
build/ROMID/lib/lib_2fba0.o (section); \
build/ROMID/lib/lib_2fc60.o (section); \
build/ROMID/lib/lib_30ce0.o (section); \
build/ROMID/lib/lib_317f0.o (section); \
build/ROMID/lib/lib_34030.o (section); \
build/ROMID/lib/lib_34240.o (section); \
build/ROMID/lib/lib_37650.o (section); \
build/ROMID/lib/lib_37b00.o (section); \
build/ROMID/lib/lib_38d10.o (section); \
build/ROMID/lib/lib_38d30.o (section); \
build/ROMID/lib/lib_39c80.o (section); \
build/ROMID/lib/lib_39f70.o (section); \
build/ROMID/lib/lib_39fc0.o (section); \
build/ROMID/lib/lib_39fe0.o (section); \
build/ROMID/lib/lib_3a100.o (section); \
build/ROMID/lib/lib_3c430.o (section); \
build/ROMID/lib/lib_3c4d0.o (section); \
build/ROMID/lib/lib_3ccf0.o (section); \
build/ROMID/lib/lib_3cdc0.o (section); \
build/ROMID/lib/lib_3cef0.o (section); \
build/ROMID/lib/lib_3d280.o (section); \
build/ROMID/lib/lib_3e3e0.o (section); \
build/ROMID/lib/lib_3e730.o (section); \
build/ROMID/lib/lib_3e8c0.o (section); \
build/ROMID/lib/lib_43dd0.o (section); \
build/ROMID/lib/lib_446d0.o (section); \
build/ROMID/lib/lib_44bc0.o (section); \
build/ROMID/lib/lib_44f60.o (section); \
build/ROMID/lib/lib_45ed0.o (section); \
build/ROMID/lib/lib_461c0.o (section); \
build/ROMID/lib/lib_46650.o (section); \
build/ROMID/lib/lib_47550.o (section); \
build/ROMID/lib/lib_47a90.o (section); \
build/ROMID/lib/lib_47d20.o (section); \
build/ROMID/lib/ultra/io/vitbl.o (section); \
build/ROMID/lib/ultra/os/writebackdcacheall.o (section); \
build/ROMID/lib/ultra/os/invalicache.o (section); \
build/ROMID/lib/ultra/os/getfpccsr.o (section); \
build/ROMID/lib/ultra/os/setfpccsr.o (section); \
build/ROMID/lib/ultra/os/startthread.o (section); \
build/ROMID/lib/ultra/os/createmesgqueue.o (section); \
build/ROMID/lib/ultra/os/stopthread.o (section); \
build/ROMID/lib/ultra/os/setthreadpri.o (section); \
build/ROMID/lib/ultra/os/getcount.o (section); \
build/ROMID/lib/ultra/os/seteventmesg.o (section); \
build/ROMID/lib/ultra/io/visetevent.o (section); \
build/ROMID/lib/ultra/os/setintmask.o (section); \
build/ROMID/lib/ultra/os/recvmesg.o (section); \
build/ROMID/lib/ultra/io/vigetcurrframebuf.o (section); \
build/ROMID/lib/ultra/io/vigetnextframebuf.o (section); \
build/ROMID/lib/ultra/io/dpsetstat.o (section); \
build/ROMID/lib/ultra/os/getthreadpri.o (section); \
build/ROMID/lib/ultra/os/sendmesg.o (section); \
build/ROMID/lib/ultra/os/stoptimer.o (section); \
build/ROMID/lib/ultra/os/settimer.o (section); \
build/ROMID/lib/ultra/io/sptaskyielded.o (section); \
build/ROMID/lib/ultra/io/dpctr.o (section); \
build/ROMID/lib/ultra/io/dpgetstat.o (section); \
build/ROMID/lib/ultra/io/viblack.o (section); \
build/ROMID/lib/ultra/io/visetmode.o (section); \
build/ROMID/lib/ultra/io/visetxscale.o (section); \
build/ROMID/lib/ultra/io/visetyscale.o (section); \
build/ROMID/lib/ultra/io/visetspecial.o (section); \
build/ROMID/lib/ultra/io/viswapbuf.o (section); \
build/ROMID/lib/ultra/io/sptaskyield.o (section); \
build/ROMID/lib/ultra/os/gettime.o (section); \
build/ROMID/lib/ultra/os/timerintr.o (section); \
build/ROMID/lib/ultra/os/interrupt.o (section); \
build/ROMID/lib/ultra/io/vi.o (section); \
build/ROMID/lib/ultra/io/vigetcurrcontext.o (section); \
build/ROMID/lib/ultra/io/viswapcontext.o (section); \
build/ROMID/lib/ultra/io/piacs.o (section); \
build/ROMID/lib/ultra/io/pirawdma.o (section); \
build/ROMID/lib/ultra/io/epirawdma.o (section); \
build/ROMID/lib/ultra/io/devmgr.o (section); \
build/ROMID/lib/ultra/os/thread.o (section); \
build/ROMID/lib/ultra/os/destroythread.o (section); \
build/ROMID/lib/ultra/os/atomic.o (section); \
build/ROMID/lib/ultra/os/getcause.o (section); \
build/ROMID/lib/ultra/gu/mtxutil.o (section); \
build/ROMID/lib/ultra/gu/sqrtf.o (section); \
build/ROMID/lib/ultra/libc/string.o (section); \
build/ROMID/lib/ultra/libc/ldiv.o (section); \
build/ROMID/lib/ultra/os/setsr.o (section); \
build/ROMID/lib/ultra/os/getsr.o (section); \
build/ROMID/lib/ultra/io/sirawread.o (section); \
build/ROMID/lib/ultra/io/sirawwrite.o (section); \
build/ROMID/lib/ultra/os/writebackdcache.o (section); \
build/ROMID/lib/ultra/libc/ll.o (section); \
build/ROMID/lib/ultra/libc/bzero.o (section); \
build/ROMID/lib/lib_4b170.o (section); \
build/ROMID/lib/ultra/os/virtualtophysical.o (section); \
build/ROMID/lib/ultra/io/spsetstat.o (section); \
build/ROMID/lib/ultra/io/spsetpc.o (section); \
build/ROMID/lib/ultra/io/sprawdma.o (section); \
build/ROMID/lib/ultra/io/sp.o (section); \
build/ROMID/lib/ultra/io/contramwrite.o (section); \
build/ROMID/lib/ultra/io/contramread.o (section); \
build/ROMID/lib/ultra/io/pfsgetstatus.o (section); \
build/ROMID/lib/ultra/io/conteepwrite.o (section); \
build/ROMID/lib/ultra/io/controller.o (section); \
build/ROMID/lib/lib_4c090.o (section); \
build/ROMID/lib/lib_4cc10.o (section); \
build/ROMID/lib/ultra/io/pfsselectbank.o (section); \
build/ROMID/lib/lib_4ce60.o (section); \
build/ROMID/lib/lib_4d000.o (section); \
build/ROMID/lib/lib_4d480.o (section); \
build/ROMID/lib/ultra/io/siacs.o (section); \
build/ROMID/lib/lib_4d6f0.o (section); \
build/ROMID/lib/ultra/os/getmemsize.o (section); \
build/ROMID/lib/ultra/os/maptlb.o (section); \
build/ROMID/lib/ultra/io/aisetfreq.o (section); \
build/ROMID/lib/ultra/io/aisetnextbuf.o (section); \
build/ROMID/lib/ultra/io/aigetlen.o (section); \
build/ROMID/lib/ultra/os/invaldcache.o (section); \
build/ROMID/lib/ultra/io/pidma.o (section); \
build/ROMID/lib/ultra/os/getcurrfaultthread.o (section); \
build/ROMID/lib/ultra/io/piread.o (section); \
build/ROMID/lib/ultra/libc/xprintf.o (section); \
build/ROMID/lib/ultra/io/contquery.o (section); \
build/ROMID/lib/ultra/io/pfsisplug.o (section); \
build/ROMID/lib/ultra/io/contreaddata.o (section); \
build/ROMID/lib/lib_4f5e0.o (section); \
build/ROMID/lib/ultra/gu/ortho.o (section); \
build/ROMID/lib/ultra/gu/frustum.o (section); \
build/ROMID/lib/lib_4fff0.o (section); \
build/ROMID/lib/ultra/gu/scale.o (section); \
build/ROMID/lib/ultra/io/conteepprobe.o (section); \
build/ROMID/lib/ultra/io/conteepread.o (section); \
build/ROMID/lib/ultra/io/conteeplongread.o (section); \
build/ROMID/lib/lib_50480.o (section); \
build/ROMID/lib/lib_508d0.o (section); \
build/ROMID/lib/lib_50a00.o (section); \
build/ROMID/lib/lib_50be0.o (section); \
build/ROMID/lib/lib_50d60.o (section); \
build/ROMID/lib/lib_50f20.o (section); \
build/ROMID/lib/lib_513b0.o (section); \
build/ROMID/lib/ultra/os/setcompare.o (section); \
build/ROMID/lib/ultra/io/vimodepallan1.o (section); \
build/ROMID/lib/ultra/io/vimodempallan1.o (section); \
build/ROMID/lib/ultra/io/vimodentsclan1.o (section); \
build/ROMID/lib/ultra/io/spgetstat.o (section); \
build/ROMID/lib/ultra/os/resetglobalintmask.o (section); \
build/ROMID/lib/ultra/io/epirawwrite.o (section); \
build/ROMID/lib/ultra/io/epirawread.o (section); \
build/ROMID/lib/ultra/os/setglobalintmask.o (section); \
build/ROMID/lib/ultra/os/yieldthread.o (section); \
build/ROMID/lib/ultra/io/si.o (section); \
build/ROMID/lib/ultra/os/probetlb.o (section); \
build/ROMID/lib/ultra/io/crc.o (section); \
build/ROMID/lib/ultra/io/sirawdma.o (section); \
build/ROMID/lib/ultra/io/ai.o (section); \
build/ROMID/lib/ultra/os/jammesg.o (section); \
build/ROMID/lib/ultra/io/pigetcmdq.o (section); \
build/ROMID/lib/ultra/io/pirawread.o (section); \
build/ROMID/lib/ultra/libc/xlitob.o (section); \
build/ROMID/lib/lib_52360.o (section);
+216
View File
@@ -0,0 +1,216 @@
#define LIBFILES(section) \
build/ROMID/lib/entry.o (section); \
build/ROMID/lib/segments.o (section); \
build/ROMID/lib/init.o (section); \
build/ROMID/lib/sched.o (section); \
build/ROMID/lib/reset.o (section); \
build/ROMID/lib/ultra/os/maptlbrdb.o (section); \
build/ROMID/lib/ultra/io/vimgr.o (section); \
build/ROMID/lib/ultra/io/pimgr.o (section); \
build/ROMID/lib/lib_034d0.o (section); \
build/ROMID/lib/ultra/os/exceptasm.o (section); \
build/ROMID/lib/ultra/os/createthread.o (section); \
build/ROMID/lib/ultra/gu/lookat.o (section); \
build/ROMID/lib/ultra/gu/lookatref.o (section); \
build/ROMID/lib/ultra/gu/normalize.o (section); \
build/ROMID/lib/ultra/gu/perspective.o (section); \
build/ROMID/lib/ultra/gu/rotate.o (section); \
build/ROMID/lib/ultra/libc/xldtob.o (section); \
build/ROMID/lib/ultra/io/pfsisplug.o (section); \
build/ROMID/lib/ultra/libc/llcvt.o (section); \
build/ROMID/lib/ultra/os/initialize.o (section); \
build/ROMID/lib/ultra/io/sptask.o (section); \
build/ROMID/lib/lib_06100.o (section); \
build/ROMID/lib/lib_06330.o (section); \
build/ROMID/lib/ultra/io/conteeplongwrite.o (section); \
build/ROMID/lib/lib_06550.o (section); \
build/ROMID/lib/lib_070d0.o (section); \
build/ROMID/lib/lib_074f0.o (section); \
build/ROMID/lib/audiomgr.o (section); \
build/ROMID/lib/lib_09660.o (section); \
build/ROMID/lib/lib_09a80.o (section); \
build/ROMID/lib/lib_0bfb0.o (section); \
build/ROMID/lib/lib_0c000.o (section); \
build/ROMID/lib/dma.o (section); \
build/ROMID/lib/main.o (section); \
build/ROMID/lib/lib_0e9d0.o (section); \
build/ROMID/lib/lib_11420.o (section); \
build/ROMID/lib/memory.o (section); \
build/ROMID/lib/lib_126b0.o (section); \
build/ROMID/lib/rng.o (section); \
build/ROMID/lib/args.o (section); \
build/ROMID/lib/str.o (section); \
build/ROMID/lib/ultra/libc/sprintf.o (section); \
build/ROMID/lib/lib_13710.o (section); \
build/ROMID/lib/lib_13750.o (section); \
build/ROMID/lib/lib_13790.o (section); \
build/ROMID/lib/lib_13820.o (section); \
build/ROMID/lib/controller.o (section); \
build/ROMID/lib/lib_15850.o (section); \
build/ROMID/lib/gvars.o (section); \
build/ROMID/lib/lib_159b0.o (section); \
build/ROMID/lib/lib_16110.o (section); \
build/ROMID/lib/lib_17ce0.o (section); \
build/ROMID/lib/lib_184d0.o (section); \
build/ROMID/lib/model.o (section); \
build/ROMID/lib/lib_233c0.o (section); \
build/ROMID/lib/lib_24e40.o (section); \
build/ROMID/lib/lib_2f490.o (section); \
build/ROMID/lib/lib_2f8a0.o (section); \
build/ROMID/lib/lib_2fa00.o (section); \
build/ROMID/lib/lib_2faf0.o (section); \
build/ROMID/lib/lib_2fba0.o (section); \
build/ROMID/lib/lib_2fc60.o (section); \
build/ROMID/lib/lib_30ce0.o (section); \
build/ROMID/lib/lib_317f0.o (section); \
build/ROMID/lib/lib_34030.o (section); \
build/ROMID/lib/lib_34240.o (section); \
build/ROMID/lib/lib_37650.o (section); \
build/ROMID/lib/lib_37b00.o (section); \
build/ROMID/lib/lib_38d10.o (section); \
build/ROMID/lib/lib_38d30.o (section); \
build/ROMID/lib/lib_39c80.o (section); \
build/ROMID/lib/lib_39f70.o (section); \
build/ROMID/lib/lib_39fc0.o (section); \
build/ROMID/lib/lib_39fe0.o (section); \
build/ROMID/lib/lib_3a100.o (section); \
build/ROMID/lib/lib_3c430.o (section); \
build/ROMID/lib/lib_3c4d0.o (section); \
build/ROMID/lib/lib_3ccf0.o (section); \
build/ROMID/lib/lib_3cdc0.o (section); \
build/ROMID/lib/lib_3cef0.o (section); \
build/ROMID/lib/lib_3d280.o (section); \
build/ROMID/lib/lib_3e3e0.o (section); \
build/ROMID/lib/lib_3e730.o (section); \
build/ROMID/lib/lib_3e8c0.o (section); \
build/ROMID/lib/lib_43dd0.o (section); \
build/ROMID/lib/lib_446d0.o (section); \
build/ROMID/lib/lib_44bc0.o (section); \
build/ROMID/lib/lib_44f60.o (section); \
build/ROMID/lib/lib_45ed0.o (section); \
build/ROMID/lib/lib_461c0.o (section); \
build/ROMID/lib/lib_46650.o (section); \
build/ROMID/lib/lib_47550.o (section); \
build/ROMID/lib/lib_47a90.o (section); \
build/ROMID/lib/lib_47d20.o (section); \
build/ROMID/lib/ultra/io/vitbl.o (section); \
build/ROMID/lib/ultra/os/writebackdcacheall.o (section); \
build/ROMID/lib/ultra/os/invalicache.o (section); \
build/ROMID/lib/ultra/os/getfpccsr.o (section); \
build/ROMID/lib/ultra/os/setfpccsr.o (section); \
build/ROMID/lib/ultra/os/startthread.o (section); \
build/ROMID/lib/ultra/os/createmesgqueue.o (section); \
build/ROMID/lib/ultra/os/stopthread.o (section); \
build/ROMID/lib/ultra/os/setthreadpri.o (section); \
build/ROMID/lib/ultra/os/getcount.o (section); \
build/ROMID/lib/ultra/os/seteventmesg.o (section); \
build/ROMID/lib/ultra/io/visetevent.o (section); \
build/ROMID/lib/ultra/os/setintmask.o (section); \
build/ROMID/lib/ultra/os/recvmesg.o (section); \
build/ROMID/lib/ultra/io/vigetcurrframebuf.o (section); \
build/ROMID/lib/ultra/io/vigetnextframebuf.o (section); \
build/ROMID/lib/ultra/io/dpsetstat.o (section); \
build/ROMID/lib/ultra/os/getthreadpri.o (section); \
build/ROMID/lib/ultra/os/sendmesg.o (section); \
build/ROMID/lib/ultra/os/stoptimer.o (section); \
build/ROMID/lib/ultra/os/settimer.o (section); \
build/ROMID/lib/ultra/io/sptaskyielded.o (section); \
build/ROMID/lib/ultra/io/dpctr.o (section); \
build/ROMID/lib/ultra/io/dpgetstat.o (section); \
build/ROMID/lib/ultra/io/viblack.o (section); \
build/ROMID/lib/ultra/io/visetmode.o (section); \
build/ROMID/lib/ultra/io/visetxscale.o (section); \
build/ROMID/lib/ultra/io/visetyscale.o (section); \
build/ROMID/lib/ultra/io/visetspecial.o (section); \
build/ROMID/lib/ultra/io/viswapbuf.o (section); \
build/ROMID/lib/ultra/io/sptaskyield.o (section); \
build/ROMID/lib/ultra/os/gettime.o (section); \
build/ROMID/lib/ultra/os/timerintr.o (section); \
build/ROMID/lib/ultra/os/interrupt.o (section); \
build/ROMID/lib/ultra/io/vi.o (section); \
build/ROMID/lib/ultra/io/vigetcurrcontext.o (section); \
build/ROMID/lib/ultra/io/viswapcontext.o (section); \
build/ROMID/lib/ultra/io/piacs.o (section); \
build/ROMID/lib/ultra/io/pirawdma.o (section); \
build/ROMID/lib/ultra/io/epirawdma.o (section); \
build/ROMID/lib/ultra/io/devmgr.o (section); \
build/ROMID/lib/ultra/os/thread.o (section); \
build/ROMID/lib/ultra/os/destroythread.o (section); \
build/ROMID/lib/ultra/gu/mtxutil.o (section); \
build/ROMID/lib/ultra/gu/sqrtf.o (section); \
build/ROMID/lib/ultra/libc/string.o (section); \
build/ROMID/lib/ultra/libc/ldiv.o (section); \
build/ROMID/lib/ultra/io/siacs.o (section); \
build/ROMID/lib/ultra/io/sirawdma.o (section); \
build/ROMID/lib/ultra/io/controller.o (section); \
build/ROMID/lib/ultra/os/setsr.o (section); \
build/ROMID/lib/ultra/os/getsr.o (section); \
build/ROMID/lib/ultra/io/sirawread.o (section); \
build/ROMID/lib/ultra/io/sirawwrite.o (section); \
build/ROMID/lib/ultra/os/writebackdcache.o (section); \
build/ROMID/lib/ultra/libc/ll.o (section); \
build/ROMID/lib/ultra/libc/bzero.o (section); \
build/ROMID/lib/ultra/os/getcause.o (section); \
build/ROMID/lib/lib_4b170.o (section); \
build/ROMID/lib/ultra/os/virtualtophysical.o (section); \
build/ROMID/lib/ultra/io/spsetstat.o (section); \
build/ROMID/lib/ultra/io/spsetpc.o (section); \
build/ROMID/lib/ultra/io/sprawdma.o (section); \
build/ROMID/lib/ultra/io/sp.o (section); \
build/ROMID/lib/ultra/io/contramwrite.o (section); \
build/ROMID/lib/ultra/io/contramread.o (section); \
build/ROMID/lib/ultra/io/pfsgetstatus.o (section); \
build/ROMID/lib/ultra/io/conteepwrite.o (section); \
build/ROMID/lib/lib_4c090.o (section); \
build/ROMID/lib/lib_4cc10.o (section); \
build/ROMID/lib/ultra/io/pfsselectbank.o (section); \
build/ROMID/lib/lib_4ce60.o (section); \
build/ROMID/lib/lib_4d000.o (section); \
build/ROMID/lib/lib_4d480.o (section); \
build/ROMID/lib/lib_4d6f0.o (section); \
build/ROMID/lib/ultra/os/maptlb.o (section); \
build/ROMID/lib/ultra/io/aisetfreq.o (section); \
build/ROMID/lib/ultra/io/aisetnextbuf.o (section); \
build/ROMID/lib/ultra/io/aigetlen.o (section); \
build/ROMID/lib/ultra/os/invaldcache.o (section); \
build/ROMID/lib/ultra/io/pidma.o (section); \
build/ROMID/lib/ultra/os/getcurrfaultthread.o (section); \
build/ROMID/lib/ultra/io/piread.o (section); \
build/ROMID/lib/ultra/libc/xprintf.o (section); \
build/ROMID/lib/ultra/io/contquery.o (section); \
build/ROMID/lib/ultra/io/contreaddata.o (section); \
build/ROMID/lib/lib_4f5e0.o (section); \
build/ROMID/lib/ultra/gu/ortho.o (section); \
build/ROMID/lib/ultra/gu/frustum.o (section); \
build/ROMID/lib/lib_4fff0.o (section); \
build/ROMID/lib/ultra/gu/scale.o (section); \
build/ROMID/lib/ultra/io/conteepprobe.o (section); \
build/ROMID/lib/ultra/io/conteepread.o (section); \
build/ROMID/lib/ultra/io/conteeplongread.o (section); \
build/ROMID/lib/lib_50480.o (section); \
build/ROMID/lib/lib_508d0.o (section); \
build/ROMID/lib/lib_50a00.o (section); \
build/ROMID/lib/lib_50be0.o (section); \
build/ROMID/lib/lib_50d60.o (section); \
build/ROMID/lib/lib_50f20.o (section); \
build/ROMID/lib/lib_513b0.o (section); \
build/ROMID/lib/lib_51570.o (section); \
build/ROMID/lib/ultra/io/vimodepallan1.o (section); \
build/ROMID/lib/ultra/io/vimodempallan1.o (section); \
build/ROMID/lib/ultra/io/vimodentsclan1.o (section); \
build/ROMID/lib/ultra/os/setcompare.o (section); \
build/ROMID/lib/ultra/io/spgetstat.o (section); \
build/ROMID/lib/ultra/os/resetglobalintmask.o (section); \
build/ROMID/lib/ultra/io/epirawwrite.o (section); \
build/ROMID/lib/ultra/io/epirawread.o (section); \
build/ROMID/lib/ultra/os/setglobalintmask.o (section); \
build/ROMID/lib/ultra/os/yieldthread.o (section); \
build/ROMID/lib/ultra/io/si.o (section); \
build/ROMID/lib/ultra/os/probetlb.o (section); \
build/ROMID/lib/ultra/io/crc.o (section); \
build/ROMID/lib/ultra/io/ai.o (section); \
build/ROMID/lib/ultra/os/jammesg.o (section); \
build/ROMID/lib/ultra/io/pigetcmdq.o (section); \
build/ROMID/lib/ultra/io/pirawread.o (section); \
build/ROMID/lib/ultra/libc/xlitob.o (section); \
build/ROMID/lib/lib_52360.o (section);
+7 -32
View File
@@ -1,8 +1,4 @@
/**
* The order of files differ slightly between ROM versions, so there's a bit of
* macro concatenation here to avoid having to print the list twice.
*/
#define LIBFILES1(section) \
#define LIBFILES(section) \
build/ROMID/lib/entry.o (section); \
build/ROMID/lib/segments.o (section); \
build/ROMID/lib/init.o (section); \
@@ -54,6 +50,7 @@
build/ROMID/lib/gvars.o (section); \
build/ROMID/lib/lib_159b0.o (section); \
build/ROMID/lib/lib_16110.o (section); \
build/ROMID/lib/lib_17ce0.o (section); \
build/ROMID/lib/lib_184d0.o (section); \
build/ROMID/lib/model.o (section); \
build/ROMID/lib/lib_233c0.o (section); \
@@ -150,9 +147,7 @@
build/ROMID/lib/ultra/os/getsr.o (section); \
build/ROMID/lib/ultra/io/sirawread.o (section); \
build/ROMID/lib/ultra/io/sirawwrite.o (section); \
build/ROMID/lib/ultra/os/writebackdcache.o (section);
#define LIBFILES2(section) \
build/ROMID/lib/ultra/os/writebackdcache.o (section); \
build/ROMID/lib/ultra/libc/bzero.o (section); \
build/ROMID/lib/ultra/os/getcause.o (section); \
build/ROMID/lib/lib_4b170.o (section); \
@@ -173,9 +168,8 @@
build/ROMID/lib/lib_4d480.o (section); \
build/ROMID/lib/lib_4d6f0.o (section); \
build/ROMID/lib/ultra/os/maptlb.o (section); \
build/ROMID/lib/ultra/io/aisetfreq.o (section);
#define LIBFILES3(section) \
build/ROMID/lib/ultra/io/aisetfreq.o (section); \
build/ROMID/lib/ultra/libc/ll.o (section); \
build/ROMID/lib/ultra/io/aisetnextbuf.o (section); \
build/ROMID/lib/ultra/io/aigetlen.o (section); \
build/ROMID/lib/ultra/os/invaldcache.o (section); \
@@ -200,6 +194,7 @@
build/ROMID/lib/lib_50d60.o (section); \
build/ROMID/lib/lib_50f20.o (section); \
build/ROMID/lib/lib_513b0.o (section); \
build/ROMID/lib/lib_51570.o (section); \
build/ROMID/lib/ultra/io/vimodepallan1.o (section); \
build/ROMID/lib/ultra/io/vimodempallan1.o (section); \
build/ROMID/lib/ultra/io/vimodentsclan1.o (section); \
@@ -212,14 +207,7 @@
build/ROMID/lib/ultra/os/yieldthread.o (section); \
build/ROMID/lib/ultra/io/si.o (section); \
build/ROMID/lib/ultra/os/probetlb.o (section); \
build/ROMID/lib/ultra/io/crc.o (section);
#if VERSION >= VERSION_PAL_FINAL
#define LIBFILES(section) \
LIBFILES1(section) \
LIBFILES2(section) \
build/ROMID/lib/ultra/libc/ll.o (section); \
LIBFILES3(section) \
build/ROMID/lib/ultra/io/crc.o (section); \
build/ROMID/lib/ultra/os/initialize2.o (section); \
build/ROMID/lib/ultra/io/ai.o (section); \
build/ROMID/lib/ultra/os/jammesg.o (section); \
@@ -228,16 +216,3 @@
build/ROMID/lib/ultra/libc/xlitob.o (section); \
build/ROMID/lib/lib_52360.o (section); \
build/ROMID/lib/ultra/os/unmaptlball.o (section);
#else
#define LIBFILES(section) \
LIBFILES1(section) \
build/ROMID/lib/ultra/libc/ll.o (section); \
LIBFILES2(section) \
LIBFILES3(section) \
build/ROMID/lib/ultra/io/ai.o (section); \
build/ROMID/lib/ultra/os/jammesg.o (section); \
build/ROMID/lib/ultra/io/pigetcmdq.o (section); \
build/ROMID/lib/ultra/io/pirawread.o (section); \
build/ROMID/lib/ultra/libc/xlitob.o (section); \
build/ROMID/lib/lib_52360.o (section);
#endif
+11 -3
View File
@@ -5,8 +5,16 @@
#define VERSION_PAL_FINAL 4
#define VERSION_JPN_FINAL 5
#include "gamefiles.inc"
#include "libfiles.inc"
#if VERSION == VERSION_NTSC_BETA
#include "gamefiles.ntsc-beta.inc"
#include "libfiles.ntsc-beta.inc"
#elif VERSION == VERSION_PAL_FINAL
#include "gamefiles.pal-final.inc"
#include "libfiles.pal-final.inc"
#else
#include "gamefiles.ntsc-final.inc"
#include "libfiles.ntsc-final.inc"
#endif
#define BEGIN_SEG(name) \
_##name##SegmentStart = ADDR(.name); \
@@ -225,7 +233,7 @@ SECTIONS
__rompos = 0x02000000;
__rampos = 0x70001000;
BEGIN_SEG(lib)
BEGIN_SEG(lib) SUBALIGN(16)
{
LIBFILES(.text)
LIBFILES(.rodata)
+7
View File
@@ -954,10 +954,17 @@ struct mpconfig g_MpConfigs[] = {
{ SIMTYPE_GENERAL, MPHEAD_PENNY, MPBODY_PILOTAF1, MPTEAM_1, { SIMDIFF_DISABLED, SIMDIFF_HARD, SIMDIFF_HARD, SIMDIFF_PERFECT } },
{ SIMTYPE_GENERAL, MPHEAD_VD, MPBODY_STEWARDESS, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED } },
{ SIMTYPE_GENERAL, MPHEAD_DAVEC, MPBODY_STEWARD, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED } },
#if VERSION >= VERSION_NTSC_1_0
{ SIMTYPE_GENERAL, MPHEAD_KEITH, MPBODY_STEWARD, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED } },
{ SIMTYPE_GENERAL, MPHEAD_VD, MPBODY_STEWARDESS, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_NORMAL } },
{ SIMTYPE_GENERAL, MPHEAD_STEVEM, MPBODY_STEWARD, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_NORMAL, SIMDIFF_NORMAL, SIMDIFF_NORMAL } },
{ SIMTYPE_GENERAL, MPHEAD_VD, MPBODY_STEWARDESS, MPTEAM_0, { SIMDIFF_NORMAL, SIMDIFF_NORMAL, SIMDIFF_NORMAL, SIMDIFF_NORMAL } },
#else
{ SIMTYPE_GENERAL, MPHEAD_KEITH, MPBODY_STEWARD, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_EASY } },
{ SIMTYPE_GENERAL, MPHEAD_VD, MPBODY_STEWARDESS, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_DISABLED, SIMDIFF_EASY, SIMDIFF_EASY } },
{ SIMTYPE_GENERAL, MPHEAD_STEVEM, MPBODY_STEWARD, MPTEAM_0, { SIMDIFF_DISABLED, SIMDIFF_NORMAL, SIMDIFF_EASY, SIMDIFF_EASY } },
{ SIMTYPE_GENERAL, MPHEAD_VD, MPBODY_STEWARDESS, MPTEAM_0, { SIMDIFF_NORMAL, SIMDIFF_NORMAL, SIMDIFF_EASY, SIMDIFF_EASY } },
#endif
},
},
// MPCONFIG_CHALLENGE21
+31
View File
@@ -5,6 +5,37 @@
#include "data.h"
#include "types.h"
#if VERSION == VERSION_NTSC_BETA
// These functions don't exist in ntsc-beta, but are here temporarily
void func00013900(void)
{
}
void func00013938(void)
{
}
void func00013974(u32 value)
{
}
void contShiftPfsStates(void)
{
}
void contCheckPfs(void)
{
}
void contRecordPfsState(void)
{
}
void func000152d0(s8 playernum, s32 *arg1, s32 *arg2)
{
}
#endif
void func0f1a78b0(void)
{
// empty
+100
View File
@@ -161,7 +161,11 @@ u32 func0f11668c(s8 device)
return 0xbaa;
}
#if VERSION >= VERSION_NTSC_1_0
value = var800a2380[device].unk2c8;
#else
value = 0;
#endif
rand = (random() % 496) + 16; // range 16-511
count = osGetCount();
@@ -368,10 +372,18 @@ s32 func0f116e84(s8 device, u16 company_code, u32 game_code, char *game_name, ch
s32 result;
if (func0f116b5c(device)) {
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = func0f117e00(device == SAVEDEVICE_GAMEPAK ? NULL : &var800a3180[device],
company_code, game_code, game_name, ext_name);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
if (func0f11c39c(result, device, 1, VERSION >= VERSION_NTSC_FINAL ? 825 : 822)) {
var800a2380[device].unk2b8_02 = 1;
@@ -768,9 +780,17 @@ void pakDumpEeprom(void)
{
u8 buffer[2048];
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
osEepromLongRead(&var80099e78, 0, buffer, 2048);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
pakDumpBuffer(buffer, 2048, "EEPROM DUMP");
}
@@ -1009,9 +1029,17 @@ s32 func0f117c0c(s32 arg0, s32 *arg1, s32 *arg2)
if (arg0) {
s32 result;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = func000508d0(arg0, arg1, arg2);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
return result;
}
@@ -1031,9 +1059,17 @@ s32 func0f117c80(struct var800a3180 *arg0, s32 *arg1)
if (arg0) {
s32 result;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = func0004ce60(arg0, arg1);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
return result;
}
@@ -1052,9 +1088,17 @@ s32 func0f117ce4(s32 arg0, s32 arg1, OSPfsState *note)
if (arg0) {
s32 result;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = func00050a00(arg0, arg1, note);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
return result;
}
@@ -1145,9 +1189,17 @@ s32 func0f117ec0(struct var800a3180 *arg0, u16 company_code, u32 game_code, u8 *
if (arg0) {
s32 result;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = func00006550(arg0, company_code, game_code, game_name, ext_name, numbytes);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
return result;
}
@@ -4881,9 +4933,17 @@ s32 func0f11a504(s8 arg0, s32 arg1, s32 arg2, u8 operation, u32 address, u32 len
s32 result;
len = func0f1165f8(arg0, len);
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = func0f117b4c(arg1, arg2, operation, address, len, buffer);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
return result;
}
@@ -7631,10 +7691,18 @@ void pakExecuteDebugOperations(void)
if (g_PakDebugPakInit) {
s32 device = g_PakDebugPakInit - 1;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
func0f117b04(&var80099e78, (device == SAVEDEVICE_GAMEPAK ? NULL : &var800a3180[device]), device, 0);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
g_PakDebugPakInit = false;
}
@@ -9964,9 +10032,17 @@ void pakProbeEeprom(void)
{
s32 type;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
type = osEepromProbe(&var80099e78);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
if (type == EEPROM_TYPE_16K) {
g_PakHasEeprom = true;
@@ -9985,9 +10061,17 @@ s32 pakReadEeprom(u8 address, u8 *buffer, u32 len)
{
s32 result;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = osEepromLongRead(&var80099e78, address, buffer, len);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
return result == 0 ? 0 : 0x81;
}
@@ -9996,9 +10080,17 @@ s32 pakWriteEeprom(u8 address, u8 *buffer, u32 len)
{
s32 result;
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
result = osEepromLongWrite(&var80099e78, address, buffer, len);
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
return result == 0 ? 0 : 0x82;
}
@@ -10181,7 +10273,11 @@ s32 func0f11e844(s8 device)
return 0;
}
#if VERSION >= VERSION_NTSC_1_0
func000150e8();
#else
func000150e8(123, "pak.c");
#endif
value = func00050d60(device == SAVEDEVICE_GAMEPAK ? NULL : &var800a3180[device], sp38, &sp37);
@@ -10230,7 +10326,11 @@ s32 func0f11e844(s8 device)
}
}
#if VERSION >= VERSION_NTSC_1_0
func00015144();
#else
func00015144(123, "pak.c");
#endif
if (sp24) {
return sp2c;
+7
View File
@@ -38,8 +38,15 @@ s8 contGetStickY(s8 contpadnum);
u16 contGetButtons(s8 contpadnum, u16 mask);
u16 contGetButtonsPressedThisFrame(s8 contpadnum, u16 mask);
s32 func000150c4(void);
#if VERSION >= VERSION_NTSC_1_0
void func000150e8(void);
void func00015144(void);
#else
void func000150e8(s32 line, char *file);
void func00015144(s32 line, char *file);
#endif
void func0001519c(void);
void func000152d0(s8 playernum, s32 *arg1, s32 *arg2);
void func000153c4(s8 arg0, s32 arg1);
+1 -1
View File
@@ -3,7 +3,7 @@
#include <ultra64.h>
void init(void);
s32 osGetMemSize(void);
s32 initGetMemSize(void);
void *allocateStack(s32 threadid, s32 size);
void mainproc(void *arg);
-4
View File
@@ -38,9 +38,5 @@ u32 func00017614(void);
u32 func00017a78(void);
u32 func00017c2c(void);
u32 func00017cbc(void);
u32 func00017ce0(void);
u32 func00017dc4(void);
bool func00017e30(s32 portalnum, struct coord *arg1, struct coord *arg2);
u32 func00018148(void);
#endif
+12
View File
@@ -0,0 +1,12 @@
#ifndef _IN_LIB_LIB_17CE0_H
#define _IN_LIB_LIB_17CE0_H
#include <ultra64.h>
#include "data.h"
#include "types.h"
u32 func00017ce0(void);
u32 func00017dc4(void);
bool func00017e30(s32 portalnum, struct coord *arg1, struct coord *arg2);
u32 func00018148(void);
#endif
-1
View File
@@ -5,6 +5,5 @@
#include "types.h"
s32 func000513b0(struct var800a3180 *arg0, bool arg1, u16 arg2, char *arg3, u16 arg4);
u32 func00051778(void);
#endif
+9
View File
@@ -0,0 +1,9 @@
#ifndef _IN_LIB_LIB_51570_H
#define _IN_LIB_LIB_51570_H
#include <ultra64.h>
#include "data.h"
#include "types.h"
u32 func00051778(void);
#endif
+2
View File
@@ -5121,7 +5121,9 @@ struct var800a2380 {
/*0x2be*/ u8 unk2be;
/*0x2c0*/ void *unk2c0; // pointer to something with len 0x708
/*0x2c4*/ u8 *unk2c4; // len 4096
#if VERSION >= VERSION_NTSC_1_0
/*0x2c8*/ u32 unk2c8;
#endif
};
struct gecreditsdata {
+621 -6
View File
@@ -95,6 +95,7 @@ u32 var8005eee8 = 0;
u32 var8005eeec = 0;
u32 var8005eef0 = 1;
#if VERSION >= VERSION_NTSC_1_0
void func00013900(void)
{
if (var8005eef0) {
@@ -115,22 +116,51 @@ void func00013974(u32 value)
{
var8005eeec = value;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
u32 func00013980(void)
{
return var8005eeec;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
void func0001398c(s32 value)
{
var8005eee4 = var8005eee0 = value * 11000;
}
#else
GLOBAL_ASM(
glabel func0001398c
/* 14a70: 3c018006 */ lui $at,0x8006
/* 14a74: 03e00008 */ jr $ra
/* 14a78: ac2412bc */ sw $a0,0x12bc($at)
);
#endif
void func000139c8(void)
{
#if VERSION >= VERSION_NTSC_1_0
func0001398c(10);
#else
func0001398c(30);
#endif
}
#if VERSION == VERSION_NTSC_BETA
// Same function as the one a couple above, just relocated
u32 func00013980(void)
{
#if VERSION >= VERSION_NTSC_1_0
return var8005eeec;
#else
return *(u8 *)&var8005eeec;
#endif
}
#endif
#if VERSION >= VERSION_NTSC_1_0
/**
* Remove an item from the beginning of the g_ContPfsStates array,
* shift the rest of the array back and return the removed item.
@@ -154,7 +184,9 @@ s32 contShiftPfsStates(void)
return pfsstate;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
void contRecordPfsState(u8 pfsstate)
{
if (g_ContNextPfsStateIndex + 1 >= 100) {
@@ -166,7 +198,9 @@ void contRecordPfsState(u8 pfsstate)
g_ContNextPfsStateIndex++;
}
}
#endif
#if VERSION >= VERSION_NTSC_1_0
/**
* Scan controllers for controller paks, but only under certain conditions.
* Seems to be timer based, or can be forced by passing 2 as arg0.
@@ -227,7 +261,9 @@ void contCheckPfs(s32 arg0)
}
#endif
}
#endif
#if VERSION >= VERSION_NTSC_1_0
/**
* "Temporarily" because the next time contCheckPfs runs, the true state will be
* recorded.
@@ -241,6 +277,23 @@ void contSetPfsTemporarilyPlugged(s8 index)
contRecordPfsState(bitpattern);
}
#else
GLOBAL_ASM(
glabel contSetPfsTemporarilyPlugged
/* 14aa8: 3c028006 */ lui $v0,0x8006
/* 14aac: 244212c4 */ addiu $v0,$v0,0x12c4
/* 14ab0: 00047600 */ sll $t6,$a0,0x18
/* 14ab4: 90580000 */ lbu $t8,0x0($v0)
/* 14ab8: 000e7e03 */ sra $t7,$t6,0x18
/* 14abc: 24190001 */ addiu $t9,$zero,0x1
/* 14ac0: 01f94004 */ sllv $t0,$t9,$t7
/* 14ac4: 01004827 */ nor $t1,$t0,$zero
/* 14ac8: 03095024 */ and $t2,$t8,$t1
/* 14acc: afa40000 */ sw $a0,0x0($sp)
/* 14ad0: 03e00008 */ jr $ra
/* 14ad4: a04a0000 */ sb $t2,0x0($v0)
);
#endif
void contSystemInit(void)
{
@@ -383,6 +436,26 @@ u32 contGetConnectedControllers(void)
return g_ConnectedControllers;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00014e9cnb
/* 14e9c: 3c018006 */ lui $at,0x8006
/* 14ea0: ac2412b4 */ sw $a0,0x12b4($at)
/* 14ea4: 3c01800a */ lui $at,0x800a
/* 14ea8: 03e00008 */ jr $ra
/* 14eac: ac25e5c4 */ sw $a1,-0x1a3c($at)
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00014eb0nb
/* 14eb0: 3c018006 */ lui $at,0x8006
/* 14eb4: 03e00008 */ jr $ra
/* 14eb8: ac2412b8 */ sw $a0,0x12b8($at)
);
#endif
void contConsumeSamples(struct contdata *contdata)
{
s8 i;
@@ -427,6 +500,48 @@ void contConsumeSamples(struct contdata *contdata)
}
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0001509cnb
/* 1509c: 3c0e8006 */ lui $t6,0x8006
/* 150a0: 8dce12d4 */ lw $t6,0x12d4($t6)
/* 150a4: 27bdffe8 */ addiu $sp,$sp,-24
/* 150a8: afbf0014 */ sw $ra,0x14($sp)
/* 150ac: 15c00019 */ bnez $t6,.NB00015114
/* 150b0: 3c028006 */ lui $v0,0x8006
/* 150b4: 240f0001 */ addiu $t7,$zero,0x1
/* 150b8: 3c018006 */ lui $at,0x8006
/* 150bc: 244212c0 */ addiu $v0,$v0,0x12c0
/* 150c0: ac2f12d4 */ sw $t7,0x12d4($at)
/* 150c4: 3c188006 */ lui $t8,0x8006
/* 150c8: 8f1812bc */ lw $t8,0x12bc($t8)
/* 150cc: 8c590000 */ lw $t9,0x0($v0)
/* 150d0: 0319082a */ slt $at,$t8,$t9
/* 150d4: 1020000d */ beqz $at,.NB0001510c
/* 150d8: 00000000 */ sll $zero,$zero,0x0
/* 150dc: 0c005332 */ jal 0x14cc8
/* 150e0: ac400000 */ sw $zero,0x0($v0)
/* 150e4: 3c04800a */ lui $a0,0x800a
/* 150e8: 3c058006 */ lui $a1,0x8006
/* 150ec: 24a512c4 */ addiu $a1,$a1,0x12c4
/* 150f0: 0c014228 */ jal 0x508a0
/* 150f4: 2484e5d8 */ addiu $a0,$a0,-6696
/* 150f8: 3c028006 */ lui $v0,0x8006
/* 150fc: 244212c4 */ addiu $v0,$v0,0x12c4
/* 15100: 90480000 */ lbu $t0,0x0($v0)
/* 15104: 35090010 */ ori $t1,$t0,0x10
/* 15108: a0490000 */ sb $t1,0x0($v0)
.NB0001510c:
/* 1510c: 3c018006 */ lui $at,0x8006
/* 15110: ac2012d4 */ sw $zero,0x12d4($at)
.NB00015114:
/* 15114: 8fbf0014 */ lw $ra,0x14($sp)
/* 15118: 27bd0018 */ addiu $sp,$sp,0x18
/* 1511c: 03e00008 */ jr $ra
/* 15120: 00000000 */ sll $zero,$zero,0x0
);
#endif
/**
* The use of the static variable suggests that the function is able to be
* called recursively, but its behaviour should not be run when recursing.
@@ -459,9 +574,11 @@ void contDebugJoy(void)
{
func0000db30("debugjoy", &var8005ef08);
#if VERSION >= VERSION_NTSC_1_0
if (g_Vars.paksconnected) {
contCheckPfs(1);
}
#endif
if (var8005eec4) {
g_ContData[1].nextlast = var8005eec4(g_ContData[1].samples, g_ContData[1].curlast);
@@ -475,24 +592,33 @@ void contDebugJoy(void)
}
if (func000150c4() && var8005eec0 && contGetNumSamples() <= 0) {
func000150e8();
#if VERSION >= VERSION_NTSC_FINAL
func000150e8();
func00014238();
func00015144();
contConsumeSamples(&g_ContData[0]);
#elif VERSION >= VERSION_NTSC_1_0
func000150e8();
func00015144();
contConsumeSamples(&g_ContData[0]);
func00014238();
#else
func00015144();
contConsumeSamples(&g_ContData[0]);
func000150e8(500, "joy.c");
func00014238();
func0001509cnb();
func00015144(507, "joy.c");
contConsumeSamples(&g_ContData[0]);
#endif
}
}
#if VERSION >= VERSION_NTSC_1_0
const char var700540b4[] = "JOY : g_EnableCyclicPolling=%d";
const char var700540d4[] = "JOY : g_JoyReCheckInterval=%d";
const char var700540f4[] = "JOY : g_JoyReCheckEventIn=%d";
const char var70054114[] = "JOY : g_JoyRecheckDone=%d";
#endif
const char var70054130[] = "osContStartReadData -> Failed - CONT_NO_RESPONSE_ERROR\n";
const char var70054168[] = "osContStartReadData -> Failed - CONT_OVERRUN_ERROR\n";
const char var7005419c[] = "joyTickRetrace:joy%derrno%d->%d\n";
@@ -519,6 +645,7 @@ void contReadData(void)
g_ContData[0].nextsecondlast = (g_ContData[0].nextlast + 19) % 20;
}
#if VERSION >= VERSION_NTSC_1_0
void contPoll(void)
{
OSMesg msg;
@@ -607,6 +734,256 @@ void contPoll(void)
}
}
}
#else
GLOBAL_ASM(
glabel contPoll
/* 1536c: 3c028006 */ lui $v0,0x8006
/* 15370: 244212c0 */ addiu $v0,$v0,0x12c0
/* 15374: 8c4e0000 */ lw $t6,0x0($v0)
/* 15378: 27bdffc8 */ addiu $sp,$sp,-56
/* 1537c: afbf0014 */ sw $ra,0x14($sp)
/* 15380: 3c04800a */ lui $a0,0x800a
/* 15384: 25cf0001 */ addiu $t7,$t6,0x1
/* 15388: ac4f0000 */ sw $t7,0x0($v0)
/* 1538c: 2484e620 */ addiu $a0,$a0,-6624
/* 15390: 27a50034 */ addiu $a1,$sp,0x34
/* 15394: 0c0126b0 */ jal 0x49ac0
/* 15398: 00003025 */ or $a2,$zero,$zero
/* 1539c: 14400045 */ bnez $v0,.NB000154b4
/* 153a0: 3c188006 */ lui $t8,0x8006
/* 153a4: 8f181254 */ lw $t8,0x1254($t8)
/* 153a8: 3c04800a */ lui $a0,0x800a
/* 153ac: 2484e5d8 */ addiu $a0,$a0,-6696
/* 153b0: 13000035 */ beqz $t8,.NB00015488
/* 153b4: 27a50034 */ addiu $a1,$sp,0x34
/* 153b8: 0c0126b0 */ jal 0x49ac0
/* 153bc: 24060001 */ addiu $a2,$zero,0x1
/* 153c0: 3c018006 */ lui $at,0x8006
/* 153c4: 0c0054bc */ jal 0x152f0
/* 153c8: ac201254 */ sw $zero,0x1254($at)
/* 153cc: 3c19800a */ lui $t9,0x800a
/* 153d0: 8f39e3a8 */ lw $t9,-0x1c58($t9)
/* 153d4: 3c09800a */ lui $t1,0x800a
/* 153d8: 2529e1c0 */ addiu $t1,$t1,-7744
/* 153dc: 00194080 */ sll $t0,$t9,0x2
/* 153e0: 01194023 */ subu $t0,$t0,$t9
/* 153e4: 000840c0 */ sll $t0,$t0,0x3
/* 153e8: 3c04800a */ lui $a0,0x800a
/* 153ec: 2484e1c0 */ addiu $a0,$a0,-7744
/* 153f0: 01093821 */ addu $a3,$t0,$t1
/* 153f4: 00002825 */ or $a1,$zero,$zero
/* 153f8: 24060006 */ addiu $a2,$zero,0x6
.NB000153fc:
/* 153fc: 00a60019 */ multu $a1,$a2
/* 15400: 00001012 */ mflo $v0
/* 15404: 00e25021 */ addu $t2,$a3,$v0
/* 15408: 91430004 */ lbu $v1,0x4($t2)
/* 1540c: 1460000a */ bnez $v1,.NB00015438
/* 15410: 00000000 */ sll $zero,$zero,0x0
/* 15414: 8c8b01ec */ lw $t3,0x1ec($a0)
/* 15418: 000b6080 */ sll $t4,$t3,0x2
/* 1541c: 018b6023 */ subu $t4,$t4,$t3
/* 15420: 000c60c0 */ sll $t4,$t4,0x3
/* 15424: 008c6821 */ addu $t5,$a0,$t4
/* 15428: 01a27021 */ addu $t6,$t5,$v0
/* 1542c: 91cf0004 */ lbu $t7,0x4($t6)
/* 15430: 15e0000c */ bnez $t7,.NB00015464
/* 15434: 00000000 */ sll $zero,$zero,0x0
.NB00015438:
/* 15438: 1060000e */ beqz $v1,.NB00015474
/* 1543c: 24a50001 */ addiu $a1,$a1,0x1
/* 15440: 8c9801ec */ lw $t8,0x1ec($a0)
/* 15444: 0018c880 */ sll $t9,$t8,0x2
/* 15448: 0338c823 */ subu $t9,$t9,$t8
/* 1544c: 0019c8c0 */ sll $t9,$t9,0x3
/* 15450: 00994021 */ addu $t0,$a0,$t9
/* 15454: 01024821 */ addu $t1,$t0,$v0
/* 15458: 912a0004 */ lbu $t2,0x4($t1)
/* 1545c: 55400006 */ bnezl $t2,.NB00015478
/* 15460: 00055e00 */ sll $t3,$a1,0x18
.NB00015464:
/* 15464: 0c005332 */ jal 0x14cc8
/* 15468: 00000000 */ sll $zero,$zero,0x0
/* 1546c: 10000006 */ beqz $zero,.NB00015488
/* 15470: 00000000 */ sll $zero,$zero,0x0
.NB00015474:
/* 15474: 00055e00 */ sll $t3,$a1,0x18
.NB00015478:
/* 15478: 000b2e03 */ sra $a1,$t3,0x18
/* 1547c: 28a10004 */ slti $at,$a1,0x4
/* 15480: 1420ffde */ bnez $at,.NB000153fc
/* 15484: 00000000 */ sll $zero,$zero,0x0
.NB00015488:
/* 15488: 3c04800a */ lui $a0,0x800a
/* 1548c: 2484e640 */ addiu $a0,$a0,-6592
/* 15490: 27a50034 */ addiu $a1,$sp,0x34
/* 15494: 0c01272c */ jal 0x49cb0
/* 15498: 00003025 */ or $a2,$zero,$zero
/* 1549c: 3c038006 */ lui $v1,0x8006
/* 154a0: 24631258 */ addiu $v1,$v1,0x1258
/* 154a4: 8c6d0000 */ lw $t5,0x0($v1)
/* 154a8: 25ae0001 */ addiu $t6,$t5,0x1
/* 154ac: 1000008c */ beqz $zero,.NB000156e0
/* 154b0: ac6e0000 */ sw $t6,0x0($v1)
.NB000154b4:
/* 154b4: 3c04800a */ lui $a0,0x800a
/* 154b8: 2484e660 */ addiu $a0,$a0,-6560
/* 154bc: 27a50034 */ addiu $a1,$sp,0x34
/* 154c0: 0c0126b0 */ jal 0x49ac0
/* 154c4: 00003025 */ or $a2,$zero,$zero
/* 154c8: 14400013 */ bnez $v0,.NB00015518
/* 154cc: 3c038006 */ lui $v1,0x8006
/* 154d0: 24631258 */ addiu $v1,$v1,0x1258
/* 154d4: 8c6f0000 */ lw $t7,0x0($v1)
/* 154d8: 3c04800a */ lui $a0,0x800a
/* 154dc: 25f8ffff */ addiu $t8,$t7,-1
/* 154e0: 17000006 */ bnez $t8,.NB000154fc
/* 154e4: ac780000 */ sw $t8,0x0($v1)
/* 154e8: 0c0054b4 */ jal 0x152d0
/* 154ec: 2484e5d8 */ addiu $a0,$a0,-6696
/* 154f0: 24080001 */ addiu $t0,$zero,0x1
/* 154f4: 3c018006 */ lui $at,0x8006
/* 154f8: ac281254 */ sw $t0,0x1254($at)
.NB000154fc:
/* 154fc: 3c04800a */ lui $a0,0x800a
/* 15500: 2484e680 */ addiu $a0,$a0,-6528
/* 15504: 27a50034 */ addiu $a1,$sp,0x34
/* 15508: 0c01272c */ jal 0x49cb0
/* 1550c: 00003025 */ or $a2,$zero,$zero
/* 15510: 10000074 */ beqz $zero,.NB000156e4
/* 15514: 8fbf0014 */ lw $ra,0x14($sp)
.NB00015518:
/* 15518: 3c038006 */ lui $v1,0x8006
/* 1551c: 24631258 */ addiu $v1,$v1,0x1258
/* 15520: 8c690000 */ lw $t1,0x0($v1)
/* 15524: 3c0a8006 */ lui $t2,0x8006
/* 15528: 5520006e */ bnezl $t1,.NB000156e4
/* 1552c: 8fbf0014 */ lw $ra,0x14($sp)
/* 15530: 8d4a12a4 */ lw $t2,0x12a4($t2)
/* 15534: 3c04800a */ lui $a0,0x800a
/* 15538: 2484e5d8 */ addiu $a0,$a0,-6696
/* 1553c: 11400068 */ beqz $t2,.NB000156e0
/* 15540: 27a50034 */ addiu $a1,$sp,0x34
/* 15544: 0c0126b0 */ jal 0x49ac0
/* 15548: 00003025 */ or $a2,$zero,$zero
/* 1554c: 14400064 */ bnez $v0,.NB000156e0
/* 15550: 3c018006 */ lui $at,0x8006
/* 15554: 0c0054bc */ jal 0x152f0
/* 15558: ac201254 */ sw $zero,0x1254($at)
/* 1555c: 3c0b800a */ lui $t3,0x800a
/* 15560: 8d6be3a8 */ lw $t3,-0x1c58($t3)
/* 15564: 3c0d800a */ lui $t5,0x800a
/* 15568: 25ade1c0 */ addiu $t5,$t5,-7744
/* 1556c: 000b6080 */ sll $t4,$t3,0x2
/* 15570: 018b6023 */ subu $t4,$t4,$t3
/* 15574: 000c60c0 */ sll $t4,$t4,0x3
/* 15578: 3c04800a */ lui $a0,0x800a
/* 1557c: 2484e1c0 */ addiu $a0,$a0,-7744
/* 15580: 018d3821 */ addu $a3,$t4,$t5
/* 15584: 00002825 */ or $a1,$zero,$zero
/* 15588: 24060006 */ addiu $a2,$zero,0x6
.NB0001558c:
/* 1558c: 00a60019 */ multu $a1,$a2
/* 15590: 00001012 */ mflo $v0
/* 15594: 00e27021 */ addu $t6,$a3,$v0
/* 15598: 91c30004 */ lbu $v1,0x4($t6)
/* 1559c: 1460000a */ bnez $v1,.NB000155c8
/* 155a0: 00000000 */ sll $zero,$zero,0x0
/* 155a4: 8c8f01ec */ lw $t7,0x1ec($a0)
/* 155a8: 000fc080 */ sll $t8,$t7,0x2
/* 155ac: 030fc023 */ subu $t8,$t8,$t7
/* 155b0: 0018c0c0 */ sll $t8,$t8,0x3
/* 155b4: 0098c821 */ addu $t9,$a0,$t8
/* 155b8: 03224021 */ addu $t0,$t9,$v0
/* 155bc: 91090004 */ lbu $t1,0x4($t0)
/* 155c0: 1520000c */ bnez $t1,.NB000155f4
/* 155c4: 00000000 */ sll $zero,$zero,0x0
.NB000155c8:
/* 155c8: 1060000e */ beqz $v1,.NB00015604
/* 155cc: 24a50001 */ addiu $a1,$a1,0x1
/* 155d0: 8c8a01ec */ lw $t2,0x1ec($a0)
/* 155d4: 000a5880 */ sll $t3,$t2,0x2
/* 155d8: 016a5823 */ subu $t3,$t3,$t2
/* 155dc: 000b58c0 */ sll $t3,$t3,0x3
/* 155e0: 008b6021 */ addu $t4,$a0,$t3
/* 155e4: 01826821 */ addu $t5,$t4,$v0
/* 155e8: 91ae0004 */ lbu $t6,0x4($t5)
/* 155ec: 55c00006 */ bnezl $t6,.NB00015608
/* 155f0: 00057e00 */ sll $t7,$a1,0x18
.NB000155f4:
/* 155f4: 0c005332 */ jal 0x14cc8
/* 155f8: 00000000 */ sll $zero,$zero,0x0
/* 155fc: 10000006 */ beqz $zero,.NB00015618
/* 15600: 00000000 */ sll $zero,$zero,0x0
.NB00015604:
/* 15604: 00057e00 */ sll $t7,$a1,0x18
.NB00015608:
/* 15608: 000f2e03 */ sra $a1,$t7,0x18
/* 1560c: 28a10004 */ slti $at,$a1,0x4
/* 15610: 1420ffde */ bnez $at,.NB0001558c
/* 15614: 00000000 */ sll $zero,$zero,0x0
.NB00015618:
/* 15618: 0c005449 */ jal 0x15124
/* 1561c: 00000000 */ sll $zero,$zero,0x0
/* 15620: 0c005427 */ jal 0x1509c
/* 15624: 00000000 */ sll $zero,$zero,0x0
/* 15628: 3c04800a */ lui $a0,0x800a
/* 1562c: 0c0054b4 */ jal 0x152d0
/* 15630: 2484e5d8 */ addiu $a0,$a0,-6696
/* 15634: 3c038006 */ lui $v1,0x8006
/* 15638: 8c6312dc */ lw $v1,0x12dc($v1)
/* 1563c: 24190001 */ addiu $t9,$zero,0x1
/* 15640: 3c018006 */ lui $at,0x8006
/* 15644: ac391254 */ sw $t9,0x1254($at)
/* 15648: 3c018006 */ lui $at,0x8006
/* 1564c: 24630001 */ addiu $v1,$v1,0x1
/* 15650: ac2312dc */ sw $v1,0x12dc($at)
/* 15654: 2861003c */ slti $at,$v1,0x3c
/* 15658: 14200021 */ bnez $at,.NB000156e0
/* 1565c: 3c038006 */ lui $v1,0x8006
/* 15660: 3c048006 */ lui $a0,0x8006
/* 15664: 3c058006 */ lui $a1,0x8006
/* 15668: 3c028006 */ lui $v0,0x8006
/* 1566c: 3c068006 */ lui $a2,0x8006
/* 15670: 24c6129c */ addiu $a2,$a2,0x129c
/* 15674: 2442128c */ addiu $v0,$v0,0x128c
/* 15678: 24a5127c */ addiu $a1,$a1,0x127c
/* 1567c: 2484126c */ addiu $a0,$a0,0x126c
/* 15680: 2463125c */ addiu $v1,$v1,0x125c
.NB00015684:
/* 15684: 8c680000 */ lw $t0,0x0($v1)
/* 15688: 5500000b */ bnezl $t0,.NB000156b8
/* 1568c: ac600000 */ sw $zero,0x0($v1)
/* 15690: 8c890000 */ lw $t1,0x0($a0)
/* 15694: 55200008 */ bnezl $t1,.NB000156b8
/* 15698: ac600000 */ sw $zero,0x0($v1)
/* 1569c: 8caa0000 */ lw $t2,0x0($a1)
/* 156a0: 55400005 */ bnezl $t2,.NB000156b8
/* 156a4: ac600000 */ sw $zero,0x0($v1)
/* 156a8: 8c4b0000 */ lw $t3,0x0($v0)
/* 156ac: 51600006 */ beqzl $t3,.NB000156c8
/* 156b0: 24420004 */ addiu $v0,$v0,0x4
/* 156b4: ac600000 */ sw $zero,0x0($v1)
.NB000156b8:
/* 156b8: ac800000 */ sw $zero,0x0($a0)
/* 156bc: aca00000 */ sw $zero,0x0($a1)
/* 156c0: ac400000 */ sw $zero,0x0($v0)
/* 156c4: 24420004 */ addiu $v0,$v0,0x4
.NB000156c8:
/* 156c8: 24630004 */ addiu $v1,$v1,0x4
/* 156cc: 24840004 */ addiu $a0,$a0,0x4
/* 156d0: 1446ffec */ bne $v0,$a2,.NB00015684
/* 156d4: 24a50004 */ addiu $a1,$a1,0x4
/* 156d8: 3c018006 */ lui $at,0x8006
/* 156dc: ac2012dc */ sw $zero,0x12dc($at)
.NB000156e0:
/* 156e0: 8fbf0014 */ lw $ra,0x14($sp)
.NB000156e4:
/* 156e4: 27bd0038 */ addiu $sp,$sp,0x38
/* 156e8: 03e00008 */ jr $ra
/* 156ec: 00000000 */ sll $zero,$zero,0x0
);
#endif
void func00014810(bool value)
{
@@ -799,12 +1176,67 @@ u16 contGetButtonsPressedThisFrame(s8 contpadnum, u16 mask)
return g_ContDataPtr->buttonspressed[contpadnum] & mask;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00015fa4nb
/* 15fa4: 3c038006 */ lui $v1,0x8006
/* 15fa8: 8c631250 */ lw $v1,0x1250($v1)
/* 15fac: afa40000 */ sw $a0,0x0($sp)
/* 15fb0: afa50004 */ sw $a1,0x4($sp)
/* 15fb4: 8c790200 */ lw $t9,0x200($v1)
/* 15fb8: 00047600 */ sll $t6,$a0,0x18
/* 15fbc: 000e7e03 */ sra $t7,$t6,0x18
/* 15fc0: 30b8ffff */ andi $t8,$a1,0xffff
/* 15fc4: 03002825 */ or $a1,$t8,$zero
/* 15fc8: 0721000f */ bgez $t9,.NB00016008
/* 15fcc: 01e02025 */ or $a0,$t7,$zero
/* 15fd0: 3c088006 */ lui $t0,0x8006
/* 15fd4: 9108129c */ lbu $t0,0x129c($t0)
/* 15fd8: 3c0c8006 */ lui $t4,0x8006
/* 15fdc: 258c128c */ addiu $t4,$t4,0x128c
/* 15fe0: 01e84807 */ srav $t1,$t0,$t7
/* 15fe4: 312a0001 */ andi $t2,$t1,0x1
/* 15fe8: 15400007 */ bnez $t2,.NB00016008
/* 15fec: 000f5880 */ sll $t3,$t7,0x2
/* 15ff0: 016c1821 */ addu $v1,$t3,$t4
/* 15ff4: 8c6d0000 */ lw $t5,0x0($v1)
/* 15ff8: 00001025 */ or $v0,$zero,$zero
/* 15ffc: 25ae0001 */ addiu $t6,$t5,0x1
/* 16000: 03e00008 */ jr $ra
/* 16004: ac6e0000 */ sw $t6,0x0($v1)
.NB00016008:
/* 16008: 00047880 */ sll $t7,$a0,0x2
/* 1600c: 3c18800a */ lui $t8,0x800a
/* 16010: 030fc021 */ addu $t8,$t8,$t7
/* 16014: 8f18e5c8 */ lw $t8,-0x1a38($t8)
/* 16018: 5b000004 */ blezl $t8,.NB0001602c
/* 1601c: 0004c840 */ sll $t9,$a0,0x1
/* 16020: 03e00008 */ jr $ra
/* 16024: 00001025 */ or $v0,$zero,$zero
/* 16028: 0004c840 */ sll $t9,$a0,0x1
.NB0001602c:
/* 1602c: 00794021 */ addu $t0,$v1,$t9
/* 16030: 950901f8 */ lhu $t1,0x1f8($t0)
/* 16034: 01251024 */ and $v0,$t1,$a1
/* 16038: 304affff */ andi $t2,$v0,0xffff
/* 1603c: 01401025 */ or $v0,$t2,$zero
/* 16040: 03e00008 */ jr $ra
/* 16044: 00000000 */ sll $zero,$zero,0x0
);
#endif
s32 func000150c4(void)
{
return var8005eebc ? false : true;
}
void func000150e8(void)
void func000150e8(
#if VERSION >= VERSION_NTSC_1_0
void
#else
s32 line, char *file
#endif
)
{
OSMesg msg;
@@ -816,7 +1248,13 @@ void func000150e8(void)
var8005eebc++;
}
void func00015144(void)
void func00015144(
#if VERSION >= VERSION_NTSC_1_0
void
#else
s32 line, char *file
#endif
)
{
OSMesg msg;
@@ -828,6 +1266,35 @@ void func00015144(void)
}
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00016130nb
/* 16130: 000471c0 */ sll $t6,$a0,0x7
/* 16134: 01c47021 */ addu $t6,$t6,$a0
/* 16138: 3c0f800a */ lui $t7,0x800a
/* 1613c: 25efe1c0 */ addiu $t7,$t7,-7744
/* 16140: 000e7080 */ sll $t6,$t6,0x2
/* 16144: 01cfc021 */ addu $t8,$t6,$t7
/* 16148: 3c018006 */ lui $at,0x8006
/* 1614c: 03e00008 */ jr $ra
/* 16150: ac381250 */ sw $t8,0x1250($at)
);
GLOBAL_ASM(
glabel func00016154nb
/* 16154: 3c0e8006 */ lui $t6,0x8006
/* 16158: 8dce1250 */ lw $t6,0x1250($t6)
/* 1615c: 3c0f800a */ lui $t7,0x800a
/* 16160: 25efe1c0 */ addiu $t7,$t7,-7744
/* 16164: 24010204 */ addiu $at,$zero,0x204
/* 16168: 01cf1023 */ subu $v0,$t6,$t7
/* 1616c: 0041001a */ div $zero,$v0,$at
/* 16170: 00001012 */ mflo $v0
/* 16174: 03e00008 */ jr $ra
/* 16178: 00000000 */ sll $zero,$zero,0x0
);
#endif
void func0001519c(void)
{
s32 i;
@@ -844,6 +1311,7 @@ void func0001519c(void)
}
}
#if VERSION >= VERSION_NTSC_1_0
void func000152d0(s8 playernum, s32 *arg1, s32 *arg2)
{
if (g_Vars.normmplayerisrunning) {
@@ -861,7 +1329,9 @@ void func000152d0(s8 playernum, s32 *arg1, s32 *arg2)
*arg2 = -1;
}
#endif
#if VERSION >= VERSION_NTSC_1_0
void func000153c4(s8 arg0, s32 arg1)
{
u32 stack;
@@ -894,6 +1364,151 @@ void func000153c4(s8 arg0, s32 arg1)
// empty
}
}
#else
GLOBAL_ASM(
glabel func000153c4
/* 162b0: 27bdffd8 */ addiu $sp,$sp,-40
/* 162b4: 00047600 */ sll $t6,$a0,0x18
/* 162b8: 000e7e03 */ sra $t7,$t6,0x18
/* 162bc: 24010004 */ addiu $at,$zero,0x4
/* 162c0: afbf0014 */ sw $ra,0x14($sp)
/* 162c4: afa40028 */ sw $a0,0x28($sp)
/* 162c8: 11e10073 */ beq $t7,$at,.NB00016498
/* 162cc: afa5002c */ sw $a1,0x2c($sp)
/* 162d0: 3c06800a */ lui $a2,0x800a
/* 162d4: 00cf3021 */ addu $a2,$a2,$t7
/* 162d8: 90c6eb9c */ lbu $a2,-0x1464($a2)
/* 162dc: 3c19800a */ lui $t9,0x800a
/* 162e0: 27396870 */ addiu $t9,$t9,0x6870
/* 162e4: 0006c080 */ sll $t8,$a2,0x2
/* 162e8: 0306c023 */ subu $t8,$t8,$a2
/* 162ec: 0018c080 */ sll $t8,$t8,0x2
/* 162f0: 0306c023 */ subu $t8,$t8,$a2
/* 162f4: 0018c0c0 */ sll $t8,$t8,0x3
/* 162f8: 0306c021 */ addu $t8,$t8,$a2
/* 162fc: 0018c0c0 */ sll $t8,$t8,0x3
/* 16300: 03194021 */ addu $t0,$t8,$t9
/* 16304: afa8001c */ sw $t0,0x1c($sp)
/* 16308: 8d020000 */ lw $v0,0x0($t0)
/* 1630c: 24010002 */ addiu $at,$zero,0x2
/* 16310: 10410061 */ beq $v0,$at,.NB00016498
/* 16314: 24010003 */ addiu $at,$zero,0x3
/* 16318: 50410060 */ beql $v0,$at,.NB0001649c
/* 1631c: 8fbf0014 */ lw $ra,0x14($sp)
/* 16320: 10a00006 */ beqz $a1,.NB0001633c
/* 16324: 2404041e */ addiu $a0,$zero,0x41e
/* 16328: 3c057005 */ lui $a1,0x7005
/* 1632c: 24a55958 */ addiu $a1,$a1,0x5958
/* 16330: 0c00581b */ jal 0x1606c
/* 16334: afa60024 */ sw $a2,0x24($sp)
/* 16338: 8fa60024 */ lw $a2,0x24($sp)
.NB0001633c:
/* 1633c: 24010004 */ addiu $at,$zero,0x4
/* 16340: 14c10003 */ bne $a2,$at,.NB00016350
/* 16344: 3c04800a */ lui $a0,0x800a
/* 16348: 10000009 */ beqz $zero,.NB00016370
/* 1634c: 00003825 */ or $a3,$zero,$zero
.NB00016350:
/* 16350: 00065080 */ sll $t2,$a2,0x2
/* 16354: 01465023 */ subu $t2,$t2,$a2
/* 16358: 000a5080 */ sll $t2,$t2,0x2
/* 1635c: 01465021 */ addu $t2,$t2,$a2
/* 16360: 3c0b800a */ lui $t3,0x800a
/* 16364: 256b7658 */ addiu $t3,$t3,0x7658
/* 16368: 000a50c0 */ sll $t2,$t2,0x3
/* 1636c: 014b3821 */ addu $a3,$t2,$t3
.NB00016370:
/* 16370: 2484e5d8 */ addiu $a0,$a0,-6696
/* 16374: 00e02825 */ or $a1,$a3,$zero
/* 16378: 0c01440d */ jal 0x51034
/* 1637c: afa60024 */ sw $a2,0x24($sp)
/* 16380: 14400032 */ bnez $v0,.NB0001644c
/* 16384: 8fa60024 */ lw $a2,0x24($sp)
/* 16388: 24010004 */ addiu $at,$zero,0x4
/* 1638c: 14c10003 */ bne $a2,$at,.NB0001639c
/* 16390: 00002825 */ or $a1,$zero,$zero
/* 16394: 10000009 */ beqz $zero,.NB000163bc
/* 16398: 00003825 */ or $a3,$zero,$zero
.NB0001639c:
/* 1639c: 00066080 */ sll $t4,$a2,0x2
/* 163a0: 01866023 */ subu $t4,$t4,$a2
/* 163a4: 000c6080 */ sll $t4,$t4,0x2
/* 163a8: 01866021 */ addu $t4,$t4,$a2
/* 163ac: 3c0d800a */ lui $t5,0x800a
/* 163b0: 25ad7658 */ addiu $t5,$t5,0x7658
/* 163b4: 000c60c0 */ sll $t4,$t4,0x3
/* 163b8: 018d3821 */ addu $a3,$t4,$t5
.NB000163bc:
/* 163bc: 00e02025 */ or $a0,$a3,$zero
/* 163c0: 0c014370 */ jal 0x50dc0
/* 163c4: afa60024 */ sw $a2,0x24($sp)
/* 163c8: 8fa60024 */ lw $a2,0x24($sp)
/* 163cc: 24010004 */ addiu $at,$zero,0x4
/* 163d0: 00002825 */ or $a1,$zero,$zero
/* 163d4: 14c10003 */ bne $a2,$at,.NB000163e4
/* 163d8: 00067080 */ sll $t6,$a2,0x2
/* 163dc: 10000008 */ beqz $zero,.NB00016400
/* 163e0: 00003825 */ or $a3,$zero,$zero
.NB000163e4:
/* 163e4: 01c67023 */ subu $t6,$t6,$a2
/* 163e8: 000e7080 */ sll $t6,$t6,0x2
/* 163ec: 01c67021 */ addu $t6,$t6,$a2
/* 163f0: 3c0f800a */ lui $t7,0x800a
/* 163f4: 25ef7658 */ addiu $t7,$t7,0x7658
/* 163f8: 000e70c0 */ sll $t6,$t6,0x3
/* 163fc: 01cf3821 */ addu $a3,$t6,$t7
.NB00016400:
/* 16400: 00e02025 */ or $a0,$a3,$zero
/* 16404: 0c014370 */ jal 0x50dc0
/* 16408: afa60024 */ sw $a2,0x24($sp)
/* 1640c: 8fa60024 */ lw $a2,0x24($sp)
/* 16410: 24010004 */ addiu $at,$zero,0x4
/* 16414: 00002825 */ or $a1,$zero,$zero
/* 16418: 14c10003 */ bne $a2,$at,.NB00016428
/* 1641c: 0006c080 */ sll $t8,$a2,0x2
/* 16420: 10000008 */ beqz $zero,.NB00016444
/* 16424: 00003825 */ or $a3,$zero,$zero
.NB00016428:
/* 16428: 0306c023 */ subu $t8,$t8,$a2
/* 1642c: 0018c080 */ sll $t8,$t8,0x2
/* 16430: 0306c021 */ addu $t8,$t8,$a2
/* 16434: 3c19800a */ lui $t9,0x800a
/* 16438: 27397658 */ addiu $t9,$t9,0x7658
/* 1643c: 0018c0c0 */ sll $t8,$t8,0x3
/* 16440: 03193821 */ addu $a3,$t8,$t9
.NB00016444:
/* 16444: 0c014370 */ jal 0x50dc0
/* 16448: 00e02025 */ or $a0,$a3,$zero
.NB0001644c:
/* 1644c: 8fa8002c */ lw $t0,0x2c($sp)
/* 16450: 2404042a */ addiu $a0,$zero,0x42a
/* 16454: 3c057005 */ lui $a1,0x7005
/* 16458: 51000004 */ beqzl $t0,.NB0001646c
/* 1645c: 8fa3001c */ lw $v1,0x1c($sp)
/* 16460: 0c005834 */ jal 0x160d0
/* 16464: 24a55960 */ addiu $a1,$a1,0x5960
/* 16468: 8fa3001c */ lw $v1,0x1c($sp)
.NB0001646c:
/* 1646c: 24010006 */ addiu $at,$zero,0x6
/* 16470: 8c620004 */ lw $v0,0x4($v1)
/* 16474: 10410004 */ beq $v0,$at,.NB00016488
/* 16478: 24010007 */ addiu $at,$zero,0x7
/* 1647c: 10410002 */ beq $v0,$at,.NB00016488
/* 16480: 24090005 */ addiu $t1,$zero,0x5
/* 16484: ac690004 */ sw $t1,0x4($v1)
.NB00016488:
/* 16488: 3c01bf80 */ lui $at,0xbf80
/* 1648c: 44812000 */ mtc1 $at,$f4
/* 16490: 00000000 */ sll $zero,$zero,0x0
/* 16494: e46402b4 */ swc1 $f4,0x2b4($v1)
.NB00016498:
/* 16498: 8fbf0014 */ lw $ra,0x14($sp)
.NB0001649c:
/* 1649c: 27bd0028 */ addiu $sp,$sp,0x28
/* 164a0: 03e00008 */ jr $ra
/* 164a4: 00000000 */ sll $zero,$zero,0x0
);
#endif
s32 func000155b4(s8 index)
{
+125
View File
@@ -58,6 +58,7 @@ void dmaInit(void)
osCreateMesgQueue(&g_DmaMesgQueue, &var80094e08, 0x20);
}
#if VERSION >= VERSION_NTSC_1_0
void dmaStart(void *memaddr, u32 romaddr, u32 len, bool priority)
{
u32 numiterations;
@@ -97,7 +98,126 @@ void dmaStart(void *memaddr, u32 romaddr, u32 len, bool priority)
osPiStartDma(&g_DmaIoMsgs[i], priority, 0, romaddr, memaddr, remainder, &g_DmaMesgQueue);
}
}
#else
GLOBAL_ASM(
glabel dmaStart
/* d728: 27bdffa8 */ addiu $sp,$sp,-88
/* d72c: 3c010200 */ lui $at,0x200
/* d730: afb40038 */ sw $s4,0x38($sp)
/* d734: afb30034 */ sw $s3,0x34($sp)
/* d738: afb00028 */ sw $s0,0x28($sp)
/* d73c: 00a1082b */ sltu $at,$a1,$at
/* d740: 00c08025 */ or $s0,$a2,$zero
/* d744: 00a09825 */ or $s3,$a1,$zero
/* d748: 0080a025 */ or $s4,$a0,$zero
/* d74c: afbf004c */ sw $ra,0x4c($sp)
/* d750: afbe0048 */ sw $s8,0x48($sp)
/* d754: afb70044 */ sw $s7,0x44($sp)
/* d758: afb60040 */ sw $s6,0x40($sp)
/* d75c: afb5003c */ sw $s5,0x3c($sp)
/* d760: afb20030 */ sw $s2,0x30($sp)
/* d764: afb1002c */ sw $s1,0x2c($sp)
/* d768: 14200006 */ bnez $at,.NB0000d784
/* d76c: afa70064 */ sw $a3,0x64($sp)
/* d770: 3c047005 */ lui $a0,0x7005
/* d774: 0c003074 */ jal 0xc1d0
/* d778: 248442d0 */ addiu $a0,$a0,0x42d0
/* d77c: 240e0045 */ addiu $t6,$zero,0x45
/* d780: a00e0000 */ sb $t6,0x0($zero)
.NB0000d784:
/* d784: 3c178009 */ lui $s7,0x8009
/* d788: 26f77a60 */ addiu $s7,$s7,0x7a60
/* d78c: 8eef0000 */ lw $t7,0x0($s7)
/* d790: 51e00004 */ beqzl $t7,.NB0000d7a4
/* d794: 3c010008 */ lui $at,0x8
/* d798: 0c003634 */ jal 0xd8d0
/* d79c: 00000000 */ sll $zero,$zero,0x0
/* d7a0: 3c010008 */ lui $at,0x8
.NB0000d7a4:
/* d7a4: 0201082b */ sltu $at,$s0,$at
/* d7a8: 10200005 */ beqz $at,.NB0000d7c0
/* d7ac: 02802025 */ or $a0,$s4,$zero
/* d7b0: 32183fff */ andi $t8,$s0,0x3fff
/* d7b4: 0010f382 */ srl $s8,$s0,0xe
/* d7b8: 10000003 */ beqz $zero,.NB0000d7c8
/* d7bc: afb80050 */ sw $t8,0x50($sp)
.NB0000d7c0:
/* d7c0: 0000f025 */ or $s8,$zero,$zero
/* d7c4: afb00050 */ sw $s0,0x50($sp)
.NB0000d7c8:
/* d7c8: 0c013e48 */ jal 0x4f920
/* d7cc: 02002825 */ or $a1,$s0,$zero
/* d7d0: 13c0001b */ beqz $s8,.NB0000d840
/* d7d4: 00009025 */ or $s2,$zero,$zero
/* d7d8: 3c108009 */ lui $s0,0x8009
/* d7dc: 3c118009 */ lui $s1,0x8009
/* d7e0: 3c168009 */ lui $s6,0x8009
/* d7e4: 26d67e08 */ addiu $s6,$s6,0x7e08
/* d7e8: 26317a68 */ addiu $s1,$s1,0x7a68
/* d7ec: 26107d68 */ addiu $s0,$s0,0x7d68
/* d7f0: 24150001 */ addiu $s5,$zero,0x1
.NB0000d7f4:
/* d7f4: a2150000 */ sb $s5,0x0($s0)
/* d7f8: 8ee20000 */ lw $v0,0x0($s7)
/* d7fc: 24084000 */ addiu $t0,$zero,0x4000
/* d800: afa80014 */ sw $t0,0x14($sp)
/* d804: 24590001 */ addiu $t9,$v0,0x1
/* d808: aef90000 */ sw $t9,0x0($s7)
/* d80c: 02202025 */ or $a0,$s1,$zero
/* d810: 8fa50064 */ lw $a1,0x64($sp)
/* d814: 00003025 */ or $a2,$zero,$zero
/* d818: 02603825 */ or $a3,$s3,$zero
/* d81c: afb40010 */ sw $s4,0x10($sp)
/* d820: 0c013e74 */ jal 0x4f9d0
/* d824: afb60018 */ sw $s6,0x18($sp)
/* d828: 26520001 */ addiu $s2,$s2,0x1
/* d82c: 26100001 */ addiu $s0,$s0,0x1
/* d830: 26310018 */ addiu $s1,$s1,0x18
/* d834: 26734000 */ addiu $s3,$s3,0x4000
/* d838: 165effee */ bne $s2,$s8,.NB0000d7f4
/* d83c: 26944000 */ addiu $s4,$s4,0x4000
.NB0000d840:
/* d840: 8fa30050 */ lw $v1,0x50($sp)
/* d844: 3c168009 */ lui $s6,0x8009
/* d848: 26d67e08 */ addiu $s6,$s6,0x7e08
/* d84c: 10600014 */ beqz $v1,.NB0000d8a0
/* d850: 24150001 */ addiu $s5,$zero,0x1
/* d854: 3c018009 */ lui $at,0x8009
/* d858: 00320821 */ addu $at,$at,$s2
/* d85c: a0357d68 */ sb $s5,0x7d68($at)
/* d860: 8ee20000 */ lw $v0,0x0($s7)
/* d864: 00125080 */ sll $t2,$s2,0x2
/* d868: 01525023 */ subu $t2,$t2,$s2
/* d86c: 3c0b8009 */ lui $t3,0x8009
/* d870: 256b7a68 */ addiu $t3,$t3,0x7a68
/* d874: 000a50c0 */ sll $t2,$t2,0x3
/* d878: 24490001 */ addiu $t1,$v0,0x1
/* d87c: aee90000 */ sw $t1,0x0($s7)
/* d880: 014b2021 */ addu $a0,$t2,$t3
/* d884: 8fa50064 */ lw $a1,0x64($sp)
/* d888: 00003025 */ or $a2,$zero,$zero
/* d88c: 02603825 */ or $a3,$s3,$zero
/* d890: afb40010 */ sw $s4,0x10($sp)
/* d894: afa30014 */ sw $v1,0x14($sp)
/* d898: 0c013e74 */ jal 0x4f9d0
/* d89c: afb60018 */ sw $s6,0x18($sp)
.NB0000d8a0:
/* d8a0: 8fbf004c */ lw $ra,0x4c($sp)
/* d8a4: 8fb00028 */ lw $s0,0x28($sp)
/* d8a8: 8fb1002c */ lw $s1,0x2c($sp)
/* d8ac: 8fb20030 */ lw $s2,0x30($sp)
/* d8b0: 8fb30034 */ lw $s3,0x34($sp)
/* d8b4: 8fb40038 */ lw $s4,0x38($sp)
/* d8b8: 8fb5003c */ lw $s5,0x3c($sp)
/* d8bc: 8fb60040 */ lw $s6,0x40($sp)
/* d8c0: 8fb70044 */ lw $s7,0x44($sp)
/* d8c4: 8fbe0048 */ lw $s8,0x48($sp)
/* d8c8: 03e00008 */ jr $ra
/* d8cc: 27bd0058 */ addiu $sp,$sp,0x58
);
#endif
#if VERSION >= VERSION_NTSC_1_0
u32 xorDeadbeef(u32 value)
{
return value ^ 0xdeadbeef;
@@ -139,6 +259,7 @@ void dmaCheckPiracy(void *memaddr, u32 len)
g_LoadType = LOADTYPE_NONE;
}
}
#endif
void dmaWait(void)
{
@@ -164,14 +285,18 @@ void dmaExec(void *memaddr, void *romaddr, u32 len)
{
dmaStart(memaddr, (u32) romaddr, len, false);
dmaWait();
#if VERSION >= VERSION_NTSC_1_0
dmaCheckPiracy(memaddr, len);
#endif
}
void dmaExecHighPriority(void *memaddr, void *romaddr, u32 len)
{
dmaStart(memaddr, (u32) romaddr, len, true);
dmaWait();
#if VERSION >= VERSION_NTSC_1_0
dmaCheckPiracy(memaddr, len);
#endif
}
/**
+4 -1
View File
@@ -924,6 +924,7 @@ glabel boot00001180
/* 1270: 01c94021 */ addu $t0,$t6,$t1
/* 1274: 00084300 */ sll $t0,$t0,0xc
/* 1278: 02288821 */ addu $s1,$s1,$t0
.L0000127c:
/* 127c: 3c0a8009 */ lui $t2,0x8009
/* 1280: 254a30e8 */ addiu $t2,$t2,0x30e8
/* 1284: 8d480000 */ lw $t0,0x0($t2)
@@ -1138,11 +1139,13 @@ glabel boot00001180
.L00001590:
/* 1590: 03e00008 */ jr $ra
/* 1594: 00000000 */ nop
.L00001598:
/* 1598: 3c088009 */ lui $t0,0x8009
/* 159c: 250830ec */ addiu $t0,$t0,0x30ec
/* 15a0: 8d090000 */ lw $t1,0x0($t0)
/* 15a4: 25290001 */ addiu $t1,$t1,0x1
/* 15a8: ad090000 */ sw $t1,0x0($t0)
.L000015ac:
/* 15ac: 3c148009 */ lui $s4,0x8009
/* 15b0: 8e94d454 */ lw $s4,-0x2bac($s4)
/* 15b4: 3c1c8009 */ lui $gp,0x8009
@@ -1195,7 +1198,7 @@ glabel boot00001180
/* 1660: 0800049f */ j .L0000127c
/* 1664: 00000000 */ nop
.L00001668:
/* 1668: 08000f2a */ j .L00003ca8
/* 1668: 08000f2a */ j 0x3ca8
/* 166c: 00000000 */ nop
);
#endif
+15 -2
View File
@@ -202,6 +202,11 @@ OSScClient var8008dca8;
u32 var8008dcb0;
u32 g_OsMemSize;
#if VERSION == VERSION_NTSC_BETA
u32 var8005e5ccnb = 1;
u32 var8005e5d0nb = 0x10000000;
#endif
u32 var8005ce00 = 0;
u32 var8005ce04 = 0;
u32 var8005ce08 = 0;
@@ -225,7 +230,7 @@ extern u16 *var800902e4;
extern s16 var800902e8;
#if VERSION >= VERSION_NTSC_1_0
s32 osGetMemSize(void)
s32 initGetMemSize(void)
{
return g_OsMemSize;
}
@@ -713,12 +718,20 @@ glabel allocateStack
#endif
#if VERSION == VERSION_NTSC_BETA
s32 osGetMemSize(void)
s32 initGetMemSize(void)
{
return g_OsMemSize;
}
#endif
#if VERSION == VERSION_NTSC_BETA
void func00001978(void)
{
var8005e5ccnb = 1;
var8005e5d0nb = 0x10000000;
}
#endif
void idleproc(void *data)
{
while (true);
+13
View File
@@ -0,0 +1,13 @@
#include <ultra64.h>
#include "lib/lib_16110.h"
GLOBAL_ASM(
glabel func00004f60nb
/* 4f60: 27bdfff8 */ addiu $sp,$sp,-8
/* 4f64: afa40008 */ sw $a0,0x8($sp)
/* 4f68: afa5000c */ sw $a1,0xc($sp)
/* 4f6c: afa60010 */ sw $a2,0x10($sp)
/* 4f70: afa70014 */ sw $a3,0x14($sp)
/* 4f74: 03e00008 */ jr $ra
/* 4f78: 27bd0008 */ addiu $sp,$sp,0x8
);
+159
View File
@@ -598,6 +598,7 @@ glabel func00006550
/* 6d5c: 27bd02d0 */ addiu $sp,$sp,0x2d0
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00006d60
/* 6d60: 27bdff90 */ addiu $sp,$sp,-112
@@ -755,6 +756,156 @@ glabel func00006d60
/* 6f90: 03e00008 */ jr $ra
/* 6f94: 00000000 */ nop
);
#else
GLOBAL_ASM(
glabel func00006d60
/* 6ea0: 27bdff90 */ addiu $sp,$sp,-112
/* 6ea4: afbf001c */ sw $ra,0x1c($sp)
/* 6ea8: afb00018 */ sw $s0,0x18($sp)
/* 6eac: 00a08025 */ or $s0,$a1,$zero
/* 6eb0: afa40070 */ sw $a0,0x70($sp)
/* 6eb4: 0c013a80 */ jal 0x4ea00
/* 6eb8: afa60078 */ sw $a2,0x78($sp)
/* 6ebc: 8fa40070 */ lw $a0,0x70($sp)
/* 6ec0: 0c013284 */ jal 0x4ca10
/* 6ec4: 8fa50078 */ lw $a1,0x78($sp)
/* 6ec8: 0c013a91 */ jal 0x4ea44
/* 6ecc: afa2006c */ sw $v0,0x6c($sp)
/* 6ed0: 8fa5006c */ lw $a1,0x6c($sp)
/* 6ed4: 8fae0070 */ lw $t6,0x70($sp)
/* 6ed8: 02002025 */ or $a0,$s0,$zero
/* 6edc: 50a00004 */ beqzl $a1,.NB00006ef0
/* 6ee0: ae0e0004 */ sw $t6,0x4($s0)
/* 6ee4: 1000006e */ beqz $zero,.NB000070a0
/* 6ee8: 00a01025 */ or $v0,$a1,$zero
/* 6eec: ae0e0004 */ sw $t6,0x4($s0)
.NB00006ef0:
/* 6ef0: 8faf0078 */ lw $t7,0x78($sp)
/* 6ef4: ae000000 */ sw $zero,0x0($s0)
/* 6ef8: 0c001c2d */ jal 0x70b4
/* 6efc: ae0f0008 */ sw $t7,0x8($s0)
/* 6f00: 10400003 */ beqz $v0,.NB00006f10
/* 6f04: 02002025 */ or $a0,$s0,$zero
/* 6f08: 10000066 */ beqz $zero,.NB000070a4
/* 6f0c: 8fbf001c */ lw $ra,0x1c($sp)
.NB00006f10:
/* 6f10: 0c013828 */ jal 0x4e0a0
/* 6f14: 00002825 */ or $a1,$zero,$zero
/* 6f18: 10400003 */ beqz $v0,.NB00006f28
/* 6f1c: 24060001 */ addiu $a2,$zero,0x1
/* 6f20: 10000060 */ beqz $zero,.NB000070a4
/* 6f24: 8fbf001c */ lw $ra,0x1c($sp)
.NB00006f28:
/* 6f28: 8e040004 */ lw $a0,0x4($s0)
/* 6f2c: 8e050008 */ lw $a1,0x8($s0)
/* 6f30: 0c0131f8 */ jal 0x4c7e0
/* 6f34: 27a70048 */ addiu $a3,$sp,0x48
/* 6f38: 10400003 */ beqz $v0,.NB00006f48
/* 6f3c: 27a40048 */ addiu $a0,$sp,0x48
/* 6f40: 10000058 */ beqz $zero,.NB000070a4
/* 6f44: 8fbf001c */ lw $ra,0x1c($sp)
.NB00006f48:
/* 6f48: 27a5006a */ addiu $a1,$sp,0x6a
/* 6f4c: 0c0134f1 */ jal 0x4d3c4
/* 6f50: 27a60068 */ addiu $a2,$sp,0x68
/* 6f54: 97b8006a */ lhu $t8,0x6a($sp)
/* 6f58: 97b90064 */ lhu $t9,0x64($sp)
/* 6f5c: 27a50048 */ addiu $a1,$sp,0x48
/* 6f60: afa50044 */ sw $a1,0x44($sp)
/* 6f64: 17190004 */ bne $t8,$t9,.NB00006f78
/* 6f68: 97a90068 */ lhu $t1,0x68($sp)
/* 6f6c: 97aa0066 */ lhu $t2,0x66($sp)
/* 6f70: 512a000a */ beql $t1,$t2,.NB00006f9c
/* 6f74: 97ad0060 */ lhu $t5,0x60($sp)
.NB00006f78:
/* 6f78: 0c013604 */ jal 0x4d810
/* 6f7c: 02002025 */ or $a0,$s0,$zero
/* 6f80: 50400006 */ beqzl $v0,.NB00006f9c
/* 6f84: 97ad0060 */ lhu $t5,0x60($sp)
/* 6f88: 8e0b0000 */ lw $t3,0x0($s0)
/* 6f8c: 356c0004 */ ori $t4,$t3,0x4
/* 6f90: 10000043 */ beqz $zero,.NB000070a0
/* 6f94: ae0c0000 */ sw $t4,0x0($s0)
/* 6f98: 97ad0060 */ lhu $t5,0x60($sp)
.NB00006f9c:
/* 6f9c: 27a50048 */ addiu $a1,$sp,0x48
/* 6fa0: 02002025 */ or $a0,$s0,$zero
/* 6fa4: 31ae0001 */ andi $t6,$t5,0x1
/* 6fa8: 55c00016 */ bnezl $t6,.NB00007004
/* 6fac: 8fa40044 */ lw $a0,0x44($sp)
/* 6fb0: 0c013530 */ jal 0x4d4c0
/* 6fb4: 27a60020 */ addiu $a2,$sp,0x20
/* 6fb8: 10400009 */ beqz $v0,.NB00006fe0
/* 6fbc: 00402825 */ or $a1,$v0,$zero
/* 6fc0: 2401000a */ addiu $at,$zero,0xa
/* 6fc4: 14410004 */ bne $v0,$at,.NB00006fd8
/* 6fc8: 00000000 */ sll $zero,$zero,0x0
/* 6fcc: 8e0f0000 */ lw $t7,0x0($s0)
/* 6fd0: 35f80004 */ ori $t8,$t7,0x4
/* 6fd4: ae180000 */ sw $t8,0x0($s0)
.NB00006fd8:
/* 6fd8: 10000031 */ beqz $zero,.NB000070a0
/* 6fdc: 00a01025 */ or $v0,$a1,$zero
.NB00006fe0:
/* 6fe0: 97a90038 */ lhu $t1,0x38($sp)
/* 6fe4: 27b90020 */ addiu $t9,$sp,0x20
/* 6fe8: afb90044 */ sw $t9,0x44($sp)
/* 6fec: 312a0001 */ andi $t2,$t1,0x1
/* 6ff0: 55400004 */ bnezl $t2,.NB00007004
/* 6ff4: 8fa40044 */ lw $a0,0x44($sp)
/* 6ff8: 10000029 */ beqz $zero,.NB000070a0
/* 6ffc: 2402000b */ addiu $v0,$zero,0xb
/* 7000: 8fa40044 */ lw $a0,0x44($sp)
.NB00007004:
/* 7004: 2605000c */ addiu $a1,$s0,0xc
/* 7008: 0c01303c */ jal 0x4c0f0
/* 700c: 24060020 */ addiu $a2,$zero,0x20
/* 7010: 8fab0044 */ lw $t3,0x44($sp)
/* 7014: 24190010 */ addiu $t9,$zero,0x10
/* 7018: 24090008 */ addiu $t1,$zero,0x8
/* 701c: 916c001b */ lbu $t4,0x1b($t3)
/* 7020: 8e040004 */ lw $a0,0x4($s0)
/* 7024: 8e050008 */ lw $a1,0x8($s0)
/* 7028: ae0c004c */ sw $t4,0x4c($s0)
/* 702c: 8fad0044 */ lw $t5,0x44($sp)
/* 7030: 24060007 */ addiu $a2,$zero,0x7
/* 7034: 2607002c */ addiu $a3,$s0,0x2c
/* 7038: 91ae001a */ lbu $t6,0x1a($t5)
/* 703c: ae190050 */ sw $t9,0x50($s0)
/* 7040: ae090054 */ sw $t1,0x54($s0)
/* 7044: 31c200ff */ andi $v0,$t6,0xff
/* 7048: 000218c0 */ sll $v1,$v0,0x3
/* 704c: 00027840 */ sll $t7,$v0,0x1
/* 7050: 24680008 */ addiu $t0,$v1,0x8
/* 7054: 25f80003 */ addiu $t8,$t7,0x3
/* 7058: 01035021 */ addu $t2,$t0,$v1
/* 705c: ae180060 */ sw $t8,0x60($s0)
/* 7060: ae080058 */ sw $t0,0x58($s0)
/* 7064: ae0a005c */ sw $t2,0x5c($s0)
/* 7068: 0c0131f8 */ jal 0x4c7e0
/* 706c: a20e0064 */ sb $t6,0x64($s0)
/* 7070: 10400003 */ beqz $v0,.NB00007080
/* 7074: 00402825 */ or $a1,$v0,$zero
/* 7078: 1000000a */ beqz $zero,.NB000070a4
/* 707c: 8fbf001c */ lw $ra,0x1c($sp)
.NB00007080:
/* 7080: 3c047005 */ lui $a0,0x7005
/* 7084: 0c00c47d */ jal 0x311f4
/* 7088: 24843ad0 */ addiu $a0,$a0,0x3ad0
/* 708c: 0c013a9c */ jal 0x4ea70
/* 7090: 02002025 */ or $a0,$s0,$zero
/* 7094: 8e0b0000 */ lw $t3,0x0($s0)
/* 7098: 356c0001 */ ori $t4,$t3,0x1
/* 709c: ae0c0000 */ sw $t4,0x0($s0)
.NB000070a0:
/* 70a0: 8fbf001c */ lw $ra,0x1c($sp)
.NB000070a4:
/* 70a4: 8fb00018 */ lw $s0,0x18($sp)
/* 70a8: 27bd0070 */ addiu $sp,$sp,0x70
/* 70ac: 03e00008 */ jr $ra
/* 70b0: 00000000 */ sll $zero,$zero,0x0
);
#endif
GLOBAL_ASM(
glabel func00006f98
@@ -827,6 +978,7 @@ glabel func00006f98
/* 7080: 00000000 */ nop
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00007084
/* 7084: 27bdffc8 */ addiu $sp,$sp,-56
@@ -848,3 +1000,10 @@ glabel func00007084
/* 70bc: 03e00008 */ jr $ra
/* 70c0: 27bd0038 */ addiu $sp,$sp,0x38
);
#else
GLOBAL_ASM(
glabel func00007084
/* 71a0: 03e00008 */ jr $ra
/* 71a4: 00000000 */ sll $zero,$zero,0x0
);
#endif
+333 -1
View File
@@ -22,6 +22,7 @@ u32 var8005cf80 = 0;
u32 var8005cf84 = 0;
u32 var8005cf88 = 0;
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func000070d0
/* 70d0: 27bdeb58 */ addiu $sp,$sp,-5288
@@ -38,7 +39,7 @@ glabel func000070d0
/* 70fc: afb10020 */ sw $s1,0x20($sp)
/* 7100: 0c00222c */ jal func000088b0
/* 7104: a030ae28 */ sb $s0,%lo(var8008ae28)($at)
/* 7108: 0c0005b0 */ jal osGetMemSize
/* 7108: 0c0005b0 */ jal initGetMemSize
/* 710c: 00000000 */ nop
/* 7110: 3c010040 */ lui $at,0x40
/* 7114: 34210001 */ ori $at,$at,0x1
@@ -301,3 +302,334 @@ glabel func000070d0
/* 74dc: 03e00008 */ jr $ra
/* 74e0: 27bd14a8 */ addiu $sp,$sp,0x14a8
);
#else
GLOBAL_ASM(
glabel func000070d0
/* 71b0: 27bdea98 */ addiu $sp,$sp,-5480
/* 71b4: afb00054 */ sw $s0,0x54($sp)
/* 71b8: 24100001 */ addiu $s0,$zero,0x1
/* 71bc: afbf0074 */ sw $ra,0x74($sp)
/* 71c0: 3c018009 */ lui $at,0x8009
/* 71c4: afb70070 */ sw $s7,0x70($sp)
/* 71c8: afb6006c */ sw $s6,0x6c($sp)
/* 71cc: afb50068 */ sw $s5,0x68($sp)
/* 71d0: afb40064 */ sw $s4,0x64($sp)
/* 71d4: afb30060 */ sw $s3,0x60($sp)
/* 71d8: afb2005c */ sw $s2,0x5c($sp)
/* 71dc: afb10058 */ sw $s1,0x58($sp)
/* 71e0: 0c002294 */ jal 0x8a50
/* 71e4: a030d458 */ sb $s0,-0x2ba8($at)
/* 71e8: 0c013d4c */ jal 0x4f530
/* 71ec: 00000000 */ sll $zero,$zero,0x0
/* 71f0: 3c010040 */ lui $at,0x40
/* 71f4: 34210001 */ ori $at,$at,0x1
/* 71f8: 0041082b */ sltu $at,$v0,$at
/* 71fc: 10200074 */ beqz $at,.NB000073d0
/* 7200: 3c077f1b */ lui $a3,0x7f1b
/* 7204: 3c077f1b */ lui $a3,0x7f1b
/* 7208: 3c087f00 */ lui $t0,0x7f00
/* 720c: 25080000 */ addiu $t0,$t0,0x0
/* 7210: 24e74000 */ addiu $a3,$a3,0x4000
/* 7214: 3c018009 */ lui $at,0x8009
/* 7218: 00e87023 */ subu $t6,$a3,$t0
/* 721c: a03030e0 */ sb $s0,0x30e0($at)
/* 7220: 25cf0fff */ addiu $t7,$t6,0xfff
/* 7224: 3c178006 */ lui $s7,0x8006
/* 7228: 26f7e720 */ addiu $s7,$s7,-6368
/* 722c: 00e81023 */ subu $v0,$a3,$t0
/* 7230: 3c09803f */ lui $t1,0x803f
/* 7234: 24420fff */ addiu $v0,$v0,0xfff
/* 7238: 352950c0 */ ori $t1,$t1,0x50c0
/* 723c: 00026b02 */ srl $t5,$v0,0xc
/* 7240: 25ae0005 */ addiu $t6,$t5,0x5
/* 7244: 25a60002 */ addiu $a2,$t5,0x2
/* 7248: 3c148009 */ lui $s4,0x8009
/* 724c: 3c130004 */ lui $s3,0x4
/* 7250: 2694d460 */ addiu $s4,$s4,-11168
/* 7254: 05e10003 */ bgez $t7,.NB00007264
/* 7258: 000fc303 */ sra $t8,$t7,0xc
/* 725c: 25e10fff */ addiu $at,$t7,0xfff
/* 7260: 0001c303 */ sra $t8,$at,0xc
.NB00007264:
/* 7264: 3c017f00 */ lui $at,0x7f00
/* 7268: 0018cb00 */ sll $t9,$t8,0xc
/* 726c: 03215821 */ addu $t3,$t9,$at
/* 7270: aef80000 */ sw $t8,0x0($s7)
/* 7274: 3c018009 */ lui $at,0x8009
/* 7278: ac2b30f4 */ sw $t3,0x30f4($at)
/* 727c: 3c018009 */ lui $at,0x8009
/* 7280: ac2930f8 */ sw $t1,0x30f8($at)
/* 7284: 001860c0 */ sll $t4,$t8,0x3
/* 7288: 012ca823 */ subu $s5,$t1,$t4
/* 728c: 3c018009 */ lui $at,0x8009
/* 7290: ac35d454 */ sw $s5,-0x2bac($at)
/* 7294: 000e7880 */ sll $t7,$t6,0x2
/* 7298: 00065880 */ sll $t3,$a2,0x2
/* 729c: 02afc023 */ subu $t8,$s5,$t7
/* 72a0: 2401fff0 */ addiu $at,$zero,-16
/* 72a4: 2566000f */ addiu $a2,$t3,0xf
/* 72a8: 25b60001 */ addiu $s6,$t5,0x1
/* 72ac: 03012024 */ and $a0,$t8,$at
/* 72b0: 34cc000f */ ori $t4,$a2,0xf
/* 72b4: 26733c40 */ addiu $s3,$s3,0x3c40
/* 72b8: 02c09025 */ or $s2,$s6,$zero
/* 72bc: ae840000 */ sw $a0,0x0($s4)
/* 72c0: 02602825 */ or $a1,$s3,$zero
/* 72c4: 0c003664 */ jal 0xd990
/* 72c8: 3986000f */ xori $a2,$t4,0xf
/* 72cc: 240afff0 */ addiu $t2,$zero,-16
/* 72d0: 12c0000c */ beqz $s6,.NB00007304
/* 72d4: 00008025 */ or $s0,$zero,$zero
/* 72d8: 00001825 */ or $v1,$zero,$zero
.NB000072dc:
/* 72dc: 8e8e0000 */ lw $t6,0x0($s4)
/* 72e0: 26100001 */ addiu $s0,$s0,0x1
/* 72e4: 0212082b */ sltu $at,$s0,$s2
/* 72e8: 01c31021 */ addu $v0,$t6,$v1
/* 72ec: 8c4f0000 */ lw $t7,0x0($v0)
/* 72f0: 24630004 */ addiu $v1,$v1,0x4
/* 72f4: 01f3c021 */ addu $t8,$t7,$s3
/* 72f8: 1420fff8 */ bnez $at,.NB000072dc
/* 72fc: ac580000 */ sw $t8,0x0($v0)
/* 7300: 00008025 */ or $s0,$zero,$zero
.NB00007304:
/* 7304: 26d9ffff */ addiu $t9,$s6,-1
/* 7308: 1320000e */ beqz $t9,.NB00007344
/* 730c: 00008825 */ or $s1,$zero,$zero
/* 7310: 8e820000 */ lw $v0,0x0($s4)
/* 7314: 2644ffff */ addiu $a0,$s2,-1
.NB00007318:
/* 7318: 8c4b0004 */ lw $t3,0x4($v0)
/* 731c: 8c4c0000 */ lw $t4,0x0($v0)
/* 7320: 26100001 */ addiu $s0,$s0,0x1
/* 7324: 016c1823 */ subu $v1,$t3,$t4
/* 7328: 0223082b */ sltu $at,$s1,$v1
/* 732c: 50200003 */ beqzl $at,.NB0000733c
/* 7330: 0204082b */ sltu $at,$s0,$a0
/* 7334: 00608825 */ or $s1,$v1,$zero
/* 7338: 0204082b */ sltu $at,$s0,$a0
.NB0000733c:
/* 733c: 1420fff6 */ bnez $at,.NB00007318
/* 7340: 24420004 */ addiu $v0,$v0,0x4
.NB00007344:
/* 7344: 8e8d0000 */ lw $t5,0x0($s4)
/* 7348: 26310040 */ addiu $s1,$s1,0x40
/* 734c: 022a8824 */ and $s1,$s1,$t2
/* 7350: 3c01ffef */ lui $at,0xffef
/* 7354: 01b17023 */ subu $t6,$t5,$s1
/* 7358: 01cac024 */ and $t8,$t6,$t2
/* 735c: 34216000 */ ori $at,$at,0x6000
/* 7360: 3c028009 */ lui $v0,0x8009
/* 7364: 0301a821 */ addu $s5,$t8,$at
/* 7368: 2442d45c */ addiu $v0,$v0,-11172
/* 736c: ac4e0000 */ sw $t6,0x0($v0)
/* 7370: 32b91fff */ andi $t9,$s5,0x1fff
/* 7374: ac580000 */ sw $t8,0x0($v0)
/* 7378: 02b9a823 */ subu $s5,$s5,$t9
/* 737c: 3c018009 */ lui $at,0x8009
/* 7380: ac35d450 */ sw $s5,-0x2bb0($at)
/* 7384: 3c018009 */ lui $at,0x8009
/* 7388: 0c000429 */ jal 0x10a4
/* 738c: ac3530f0 */ sw $s5,0x30f0($at)
/* 7390: 8ee30000 */ lw $v1,0x0($s7)
/* 7394: 3c048009 */ lui $a0,0x8009
/* 7398: 8c84d454 */ lw $a0,-0x2bac($a0)
/* 739c: 000358c0 */ sll $t3,$v1,0x3
/* 73a0: 000b1883 */ sra $v1,$t3,0x2
/* 73a4: 18600006 */ blez $v1,.NB000073c0
/* 73a8: 00008825 */ or $s1,$zero,$zero
/* 73ac: 00801025 */ or $v0,$a0,$zero
.NB000073b0:
/* 73b0: 26310001 */ addiu $s1,$s1,0x1
/* 73b4: 24420004 */ addiu $v0,$v0,0x4
/* 73b8: 1623fffd */ bne $s1,$v1,.NB000073b0
/* 73bc: ac40fffc */ sw $zero,-0x4($v0)
.NB000073c0:
/* 73c0: 0c00044f */ jal 0x113c
/* 73c4: 00000000 */ sll $zero,$zero,0x0
/* 73c8: 1000009b */ beqz $zero,.NB00007638
/* 73cc: 00000000 */ sll $zero,$zero,0x0
.NB000073d0:
/* 73d0: 3c087f00 */ lui $t0,0x7f00
/* 73d4: 25080000 */ addiu $t0,$t0,0x0
/* 73d8: 24e74000 */ addiu $a3,$a3,0x4000
/* 73dc: 00e86823 */ subu $t5,$a3,$t0
/* 73e0: 00e81023 */ subu $v0,$a3,$t0
/* 73e4: 25ae003f */ addiu $t6,$t5,0x3f
/* 73e8: 24420fff */ addiu $v0,$v0,0xfff
/* 73ec: 3c09803f */ lui $t1,0x803f
/* 73f0: 3c018009 */ lui $at,0x8009
/* 73f4: 35cf003f */ ori $t7,$t6,0x3f
/* 73f8: 00025b02 */ srl $t3,$v0,0xc
/* 73fc: 352950c0 */ ori $t1,$t1,0x50c0
/* 7400: a02030e0 */ sb $zero,0x30e0($at)
/* 7404: 39f8003f */ xori $t8,$t7,0x3f
/* 7408: 01381823 */ subu $v1,$t1,$t8
/* 740c: 3c01fffe */ lui $at,0xfffe
/* 7410: 256c0005 */ addiu $t4,$t3,0x5
/* 7414: 25660002 */ addiu $a2,$t3,0x2
/* 7418: 0061a824 */ and $s5,$v1,$at
/* 741c: 00067880 */ sll $t7,$a2,0x2
/* 7420: 000c6880 */ sll $t5,$t4,0x2
/* 7424: 240afff0 */ addiu $t2,$zero,-16
/* 7428: 02ad7023 */ subu $t6,$s5,$t5
/* 742c: 25e6000f */ addiu $a2,$t7,0xf
/* 7430: 3c130004 */ lui $s3,0x4
/* 7434: 3c018009 */ lui $at,0x8009
/* 7438: 25760001 */ addiu $s6,$t3,0x1
/* 743c: 26733c40 */ addiu $s3,$s3,0x3c40
/* 7440: 34d8000f */ ori $t8,$a2,0xf
/* 7444: 01cab824 */ and $s7,$t6,$t2
/* 7448: afa9154c */ sw $t1,0x154c($sp)
/* 744c: ac3530f0 */ sw $s5,0x30f0($at)
/* 7450: 02c0a025 */ or $s4,$s6,$zero
/* 7454: 02e02025 */ or $a0,$s7,$zero
/* 7458: 3b06000f */ xori $a2,$t8,0xf
/* 745c: 02602825 */ or $a1,$s3,$zero
/* 7460: 0c003664 */ jal 0xd990
/* 7464: afb5008c */ sw $s5,0x8c($sp)
/* 7468: 12c0000b */ beqz $s6,.NB00007498
/* 746c: 00008825 */ or $s1,$zero,$zero
/* 7470: 00009025 */ or $s2,$zero,$zero
.NB00007474:
/* 7474: 02f21021 */ addu $v0,$s7,$s2
/* 7478: 8c4b0000 */ lw $t3,0x0($v0)
/* 747c: 26310001 */ addiu $s1,$s1,0x1
/* 7480: 0234082b */ sltu $at,$s1,$s4
/* 7484: 01736021 */ addu $t4,$t3,$s3
/* 7488: ac4c0000 */ sw $t4,0x0($v0)
/* 748c: 1420fff9 */ bnez $at,.NB00007474
/* 7490: 26520004 */ addiu $s2,$s2,0x4
/* 7494: 00008825 */ or $s1,$zero,$zero
.NB00007498:
/* 7498: 26cdffff */ addiu $t5,$s6,-1
/* 749c: 11a00048 */ beqz $t5,.NB000075c0
/* 74a0: 8fb3008c */ lw $s3,0x8c($sp)
/* 74a4: 26f0e000 */ addiu $s0,$s7,-8192
/* 74a8: 260f0002 */ addiu $t7,$s0,0x2
/* 74ac: 268effff */ addiu $t6,$s4,-1
/* 74b0: afae0090 */ sw $t6,0x90($sp)
/* 74b4: afaf0080 */ sw $t7,0x80($sp)
/* 74b8: 00009025 */ or $s2,$zero,$zero
/* 74bc: 27b600a8 */ addiu $s6,$sp,0xa8
.NB000074c0:
/* 74c0: 02f21021 */ addu $v0,$s7,$s2
/* 74c4: 8c450000 */ lw $a1,0x0($v0)
/* 74c8: 8c580004 */ lw $t8,0x4($v0)
/* 74cc: 02002025 */ or $a0,$s0,$zero
/* 74d0: 03053023 */ subu $a2,$t8,$a1
/* 74d4: 24c6000f */ addiu $a2,$a2,0xf
/* 74d8: 34d9000f */ ori $t9,$a2,0xf
/* 74dc: 0c003664 */ jal 0xd990
/* 74e0: 3b26000f */ xori $a2,$t9,0xf
/* 74e4: 8fa40080 */ lw $a0,0x80($sp)
/* 74e8: 02602825 */ or $a1,$s3,$zero
/* 74ec: 0c001da4 */ jal 0x7690
/* 74f0: 27a60128 */ addiu $a2,$sp,0x128
/* 74f4: 1440002c */ bnez $v0,.NB000075a8
/* 74f8: 0040a025 */ or $s4,$v0,$zero
/* 74fc: 920c0000 */ lbu $t4,0x0($s0)
/* 7500: 3c057005 */ lui $a1,0x7005
/* 7504: 3c067005 */ lui $a2,0x7005
/* 7508: afac0010 */ sw $t4,0x10($sp)
/* 750c: 920d0001 */ lbu $t5,0x1($s0)
/* 7510: 24c63b48 */ addiu $a2,$a2,0x3b48
/* 7514: 24a53af0 */ addiu $a1,$a1,0x3af0
/* 7518: afad0014 */ sw $t5,0x14($sp)
/* 751c: 920e0002 */ lbu $t6,0x2($s0)
/* 7520: 02c02025 */ or $a0,$s6,$zero
/* 7524: 2407012a */ addiu $a3,$zero,0x12a
/* 7528: afae0018 */ sw $t6,0x18($sp)
/* 752c: 920f0003 */ lbu $t7,0x3($s0)
/* 7530: afaf001c */ sw $t7,0x1c($sp)
/* 7534: 92180004 */ lbu $t8,0x4($s0)
/* 7538: afb80020 */ sw $t8,0x20($sp)
/* 753c: 92190005 */ lbu $t9,0x5($s0)
/* 7540: afb90024 */ sw $t9,0x24($sp)
/* 7544: 920b0006 */ lbu $t3,0x6($s0)
/* 7548: afab0028 */ sw $t3,0x28($sp)
/* 754c: 920c0007 */ lbu $t4,0x7($s0)
/* 7550: afac002c */ sw $t4,0x2c($sp)
/* 7554: 920d0008 */ lbu $t5,0x8($s0)
/* 7558: afad0030 */ sw $t5,0x30($sp)
/* 755c: 920e0009 */ lbu $t6,0x9($s0)
/* 7560: afae0034 */ sw $t6,0x34($sp)
/* 7564: 920f000a */ lbu $t7,0xa($s0)
/* 7568: afaf0038 */ sw $t7,0x38($sp)
/* 756c: 9218000b */ lbu $t8,0xb($s0)
/* 7570: afb8003c */ sw $t8,0x3c($sp)
/* 7574: 9219000c */ lbu $t9,0xc($s0)
/* 7578: afb90040 */ sw $t9,0x40($sp)
/* 757c: 920b000d */ lbu $t3,0xd($s0)
/* 7580: afab0044 */ sw $t3,0x44($sp)
/* 7584: 920c000e */ lbu $t4,0xe($s0)
/* 7588: afac0048 */ sw $t4,0x48($sp)
/* 758c: 920d000f */ lbu $t5,0xf($s0)
/* 7590: 0c004fc1 */ jal 0x13f04
/* 7594: afad004c */ sw $t5,0x4c($sp)
/* 7598: 0c003074 */ jal 0xc1d0
/* 759c: 02c02025 */ or $a0,$s6,$zero
/* 75a0: 240e0045 */ addiu $t6,$zero,0x45
/* 75a4: a00e0000 */ sb $t6,0x0($zero)
.NB000075a8:
/* 75a8: 8faf0090 */ lw $t7,0x90($sp)
/* 75ac: 26310001 */ addiu $s1,$s1,0x1
/* 75b0: 02749821 */ addu $s3,$s3,$s4
/* 75b4: 022f082b */ sltu $at,$s1,$t7
/* 75b8: 1420ffc1 */ bnez $at,.NB000074c0
/* 75bc: 26520004 */ addiu $s2,$s2,0x4
.NB000075c0:
/* 75c0: 8fb8008c */ lw $t8,0x8c($sp)
/* 75c4: 3c01803f */ lui $at,0x803f
/* 75c8: 342150c1 */ ori $at,$at,0x50c1
/* 75cc: 0301082b */ sltu $at,$t8,$at
/* 75d0: 3c117f00 */ lui $s1,0x7f00
/* 75d4: 10200018 */ beqz $at,.NB00007638
/* 75d8: 24100002 */ addiu $s0,$zero,0x2
/* 75dc: 3c160001 */ lui $s6,0x1
/* 75e0: 36d6e000 */ ori $s6,$s6,0xe000
/* 75e4: 3c140001 */ lui $s4,0x1
/* 75e8: 3c130002 */ lui $s3,0x2
.NB000075ec:
/* 75ec: 0c013100 */ jal 0x4c400
/* 75f0: 02a02025 */ or $a0,$s5,$zero
/* 75f4: 00409025 */ or $s2,$v0,$zero
/* 75f8: 0c013100 */ jal 0x4c400
/* 75fc: 02b42021 */ addu $a0,$s5,$s4
/* 7600: 2419ffff */ addiu $t9,$zero,-1
/* 7604: afb90014 */ sw $t9,0x14($sp)
/* 7608: 02002025 */ or $a0,$s0,$zero
/* 760c: 02c02825 */ or $a1,$s6,$zero
/* 7610: 02203025 */ or $a2,$s1,$zero
/* 7614: 02403825 */ or $a3,$s2,$zero
/* 7618: 0c013d94 */ jal 0x4f650
/* 761c: afa20010 */ sw $v0,0x10($sp)
/* 7620: 8fab154c */ lw $t3,0x154c($sp)
/* 7624: 02b3a821 */ addu $s5,$s5,$s3
/* 7628: 02338821 */ addu $s1,$s1,$s3
/* 762c: 0175082b */ sltu $at,$t3,$s5
/* 7630: 1020ffee */ beqz $at,.NB000075ec
/* 7634: 26100001 */ addiu $s0,$s0,0x1
.NB00007638:
/* 7638: 3c018009 */ lui $at,0x8009
/* 763c: ac2030e4 */ sw $zero,0x30e4($at)
/* 7640: 3c018009 */ lui $at,0x8009
/* 7644: ac2030e8 */ sw $zero,0x30e8($at)
/* 7648: 3c018009 */ lui $at,0x8009
/* 764c: ac2030ec */ sw $zero,0x30ec($at)
/* 7650: 00002025 */ or $a0,$zero,$zero
/* 7654: 0c012548 */ jal 0x49520
/* 7658: 24054000 */ addiu $a1,$zero,0x4000
/* 765c: 8fbf0074 */ lw $ra,0x74($sp)
/* 7660: 8fb00054 */ lw $s0,0x54($sp)
/* 7664: 8fb10058 */ lw $s1,0x58($sp)
/* 7668: 8fb2005c */ lw $s2,0x5c($sp)
/* 766c: 8fb30060 */ lw $s3,0x60($sp)
/* 7670: 8fb40064 */ lw $s4,0x64($sp)
/* 7674: 8fb50068 */ lw $s5,0x68($sp)
/* 7678: 8fb6006c */ lw $s6,0x6c($sp)
/* 767c: 8fb70070 */ lw $s7,0x70($sp)
/* 7680: 03e00008 */ jr $ra
/* 7684: 27bd1568 */ addiu $sp,$sp,0x1568
);
#endif
+776
View File
@@ -213,6 +213,7 @@ glabel func00009ab0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00009b50
/* 9b50: 3c03800a */ lui $v1,%hi(var8009cac0)
@@ -259,6 +260,55 @@ glabel func00009b50
/* 9bf0: 03e00008 */ jr $ra
/* 9bf4: a020a4a0 */ sb $zero,%lo(g_Vars+0x4e0)($at)
);
#else
GLOBAL_ASM(
glabel func00009b50
/* 9cf0: 3c03800a */ lui $v1,0x800a
/* 9cf4: 3c058006 */ lui $a1,0x8006
/* 9cf8: 3c088006 */ lui $t0,0x8006
/* 9cfc: 2508ed28 */ addiu $t0,$t0,-4824
/* 9d00: 24a5ecd0 */ addiu $a1,$a1,-4912
/* 9d04: 24631200 */ addiu $v1,$v1,0x1200
/* 9d08: 24070030 */ addiu $a3,$zero,0x30
/* 9d0c: 240601e0 */ addiu $a2,$zero,0x1e0
/* 9d10: 24020240 */ addiu $v0,$zero,0x240
.NB00009d14:
/* 9d14: 24a5002c */ addiu $a1,$a1,0x2c
/* 9d18: 24630004 */ addiu $v1,$v1,0x4
/* 9d1c: ac64fffc */ sw $a0,-0x4($v1)
/* 9d20: a4a2ffd8 */ sh $v0,-0x28($a1)
/* 9d24: a4a2ffec */ sh $v0,-0x14($a1)
/* 9d28: a4a6fff0 */ sh $a2,-0x10($a1)
/* 9d2c: a4a7ffda */ sh $a3,-0x26($a1)
/* 9d30: a4a7ffee */ sh $a3,-0x12($a1)
/* 9d34: 14a8fff7 */ bne $a1,$t0,.NB00009d14
/* 9d38: a4a7fff2 */ sh $a3,-0xe($a1)
/* 9d3c: 3c0e8009 */ lui $t6,0x8009
/* 9d40: 91ce4e66 */ lbu $t6,0x4e66($t6)
/* 9d44: 3c02800a */ lui $v0,0x800a
/* 9d48: 24421200 */ addiu $v0,$v0,0x1200
/* 9d4c: 000e7880 */ sll $t7,$t6,0x2
/* 9d50: 004fc021 */ addu $t8,$v0,$t7
/* 9d54: 3c098006 */ lui $t1,0x8006
/* 9d58: 8d29ed30 */ lw $t1,-0x12d0($t1)
/* 9d5c: 8f190000 */ lw $t9,0x0($t8)
/* 9d60: 3c0a8009 */ lui $t2,0x8009
/* 9d64: 3c0e8006 */ lui $t6,0x8006
/* 9d68: ad390028 */ sw $t9,0x28($t1)
/* 9d6c: 914a4e67 */ lbu $t2,0x4e67($t2)
/* 9d70: 8dceed34 */ lw $t6,-0x12cc($t6)
/* 9d74: 240f0001 */ addiu $t7,$zero,0x1
/* 9d78: 000a5880 */ sll $t3,$t2,0x2
/* 9d7c: 004b6021 */ addu $t4,$v0,$t3
/* 9d80: 8d8d0000 */ lw $t5,0x0($t4)
/* 9d84: 3c018006 */ lui $at,0x8006
/* 9d88: adcd0028 */ sw $t5,0x28($t6)
/* 9d8c: ac2fed3c */ sw $t7,-0x12c4($at)
/* 9d90: 3c01800a */ lui $at,0x800a
/* 9d94: 03e00008 */ jr $ra
/* 9d98: a020eba0 */ sb $zero,-0x1460($at)
);
#endif
#if VERSION >= VERSION_PAL_FINAL
GLOBAL_ASM(
@@ -694,6 +744,7 @@ void func00009ec4(s32 arg0)
var8005ce90 = arg0;
}
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00009ed4
/* 9ed4: 3c038006 */ lui $v1,%hi(var8005ce9c)
@@ -790,6 +841,95 @@ glabel func00009ed4
/* a03c: 03e00008 */ jr $ra
/* a040: 00000000 */ nop
);
#else
GLOBAL_ASM(
glabel func00009ed4
/* a078: 3c038006 */ lui $v1,0x8006
/* a07c: 2463e61c */ addiu $v1,$v1,-6628
/* a080: 8c620000 */ lw $v0,0x0($v1)
/* a084: 27bdffe8 */ addiu $sp,$sp,-24
/* a088: afbf0014 */ sw $ra,0x14($sp)
/* a08c: 10400006 */ beqz $v0,.NB0000a0a8
/* a090: 3c088006 */ lui $t0,0x8006
/* a094: 244effff */ addiu $t6,$v0,-1
/* a098: 15c00003 */ bnez $t6,.NB0000a0a8
/* a09c: ac6e0000 */ sw $t6,0x0($v1)
/* a0a0: 3c018006 */ lui $at,0x8006
/* a0a4: ac20e618 */ sw $zero,-0x19e8($at)
.NB0000a0a8:
/* a0a8: 2508e614 */ addiu $t0,$t0,-6636
/* a0ac: 3c188006 */ lui $t8,0x8006
/* a0b0: 8f18e618 */ lw $t8,-0x19e8($t8)
/* a0b4: 8d050000 */ lw $a1,0x0($t0)
/* a0b8: 3c028009 */ lui $v0,0x8009
/* a0bc: 3c078006 */ lui $a3,0x8006
/* a0c0: 00b80019 */ multu $a1,$t8
/* a0c4: 0005c823 */ negu $t9,$a1
/* a0c8: ad190000 */ sw $t9,0x0($t0)
/* a0cc: 8c4e043c */ lw $t6,0x43c($v0)
/* a0d0: 24e7e5f4 */ addiu $a3,$a3,-6668
/* a0d4: 8ce90000 */ lw $t1,0x0($a3)
/* a0d8: 000e5403 */ sra $t2,$t6,0x10
/* a0dc: 3c068009 */ lui $a2,0x8009
/* a0e0: 24c60394 */ addiu $a2,$a2,0x394
/* a0e4: 3c028009 */ lui $v0,0x8009
/* a0e8: 00001812 */ mflo $v1
/* a0ec: 01436021 */ addu $t4,$t2,$v1
/* a0f0: 00095080 */ sll $t2,$t1,0x2
/* a0f4: 000a5823 */ negu $t3,$t2
/* a0f8: 000c6c00 */ sll $t5,$t4,0x10
/* a0fc: 00cb6021 */ addu $t4,$a2,$t3
/* a100: 01c37821 */ addu $t7,$t6,$v1
/* a104: 8d8e0000 */ lw $t6,0x0($t4)
/* a108: 31f8ffff */ andi $t8,$t7,0xffff
/* a10c: 01b8c825 */ or $t9,$t5,$t8
/* a110: add90030 */ sw $t9,0x30($t6)
/* a114: 8c4b0440 */ lw $t3,0x440($v0)
/* a118: 8cef0000 */ lw $t7,0x0($a3)
/* a11c: 000b6c03 */ sra $t5,$t3,0x10
/* a120: 01a34821 */ addu $t1,$t5,$v1
/* a124: 000f6880 */ sll $t5,$t7,0x2
/* a128: 000dc023 */ negu $t8,$t5
/* a12c: 00095400 */ sll $t2,$t1,0x10
/* a130: 00d84821 */ addu $t1,$a2,$t8
/* a134: 01636021 */ addu $t4,$t3,$v1
/* a138: 8d2b0000 */ lw $t3,0x0($t1)
/* a13c: 3199ffff */ andi $t9,$t4,0xffff
/* a140: 01597025 */ or $t6,$t2,$t9
/* a144: ad6e0044 */ sw $t6,0x44($t3)
/* a148: 8cec0000 */ lw $t4,0x0($a3)
/* a14c: 000c5080 */ sll $t2,$t4,0x2
/* a150: 000ac823 */ negu $t9,$t2
/* a154: 00d97821 */ addu $t7,$a2,$t9
/* a158: 0c012848 */ jal 0x4a120
/* a15c: 8de40000 */ lw $a0,0x0($t7)
/* a160: 3c048006 */ lui $a0,0x8006
/* a164: 0c01282c */ jal 0x4a0b0
/* a168: 9084e613 */ lbu $a0,-0x19ed($a0)
/* a16c: 3c0d8006 */ lui $t5,0x8006
/* a170: 8dade5f4 */ lw $t5,-0x1a0c($t5)
/* a174: 3c018006 */ lui $at,0x8006
/* a178: 000dc080 */ sll $t8,$t5,0x2
/* a17c: 00184823 */ negu $t1,$t8
/* a180: 00290821 */ addu $at,$at,$t1
/* a184: 0c012864 */ jal 0x4a190
/* a188: c42ce5fc */ lwc1 $f12,-0x1a04($at)
/* a18c: 3c0e8006 */ lui $t6,0x8006
/* a190: 8dcee5f4 */ lw $t6,-0x1a0c($t6)
/* a194: 3c018006 */ lui $at,0x8006
/* a198: 000e5880 */ sll $t3,$t6,0x2
/* a19c: 000b6023 */ negu $t4,$t3
/* a1a0: 002c0821 */ addu $at,$at,$t4
/* a1a4: 0c0128b0 */ jal 0x4a2c0
/* a1a8: c42ce604 */ lwc1 $f12,-0x19fc($at)
/* a1ac: 0c0128c8 */ jal 0x4a320
/* a1b0: 24040042 */ addiu $a0,$zero,0x42
/* a1b4: 8fbf0014 */ lw $ra,0x14($sp)
/* a1b8: 27bd0018 */ addiu $sp,$sp,0x18
/* a1bc: 03e00008 */ jr $ra
/* a1c0: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_PAL_FINAL
GLOBAL_ASM(
@@ -2681,6 +2821,7 @@ Gfx *func0000b2c4(Gfx *gdl)
return gdl;
}
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0000b330
/* b330: 27bdff58 */ addiu $sp,$sp,-168
@@ -3273,6 +3414,641 @@ glabel func0000b330
/* bb98: 03e00008 */ jr $ra
/* bb9c: 00000000 */ nop
);
#else
GLOBAL_ASM(
glabel func0000b330
/* b4b0: 27bdff58 */ addiu $sp,$sp,-168
/* b4b4: afbf0014 */ sw $ra,0x14($sp)
/* b4b8: 3c0eba00 */ lui $t6,0xba00
/* b4bc: 35ce1402 */ ori $t6,$t6,0x1402
/* b4c0: 24830008 */ addiu $v1,$a0,0x8
/* b4c4: 3c0f0030 */ lui $t7,0x30
/* b4c8: ac8f0004 */ sw $t7,0x4($a0)
/* b4cc: ac8e0000 */ sw $t6,0x0($a0)
/* b4d0: 3c18ed00 */ lui $t8,0xed00
/* b4d4: ac780000 */ sw $t8,0x0($v1)
/* b4d8: 24660008 */ addiu $a2,$v1,0x8
/* b4dc: afa600a8 */ sw $a2,0xa8($sp)
/* b4e0: 0c002f77 */ jal 0xbddc
/* b4e4: afa300a0 */ sw $v1,0xa0($sp)
/* b4e8: 0c002f7b */ jal 0xbdec
/* b4ec: a7a20056 */ sh $v0,0x56($sp)
/* b4f0: 44822000 */ mtc1 $v0,$f4
/* b4f4: 87af0056 */ lh $t7,0x56($sp)
/* b4f8: 3c014080 */ lui $at,0x4080
/* b4fc: 468021a0 */ cvt.s.w $f6,$f4
/* b500: 448f8000 */ mtc1 $t7,$f16
/* b504: 44810000 */ mtc1 $at,$f0
/* b508: 8fa600a8 */ lw $a2,0xa8($sp)
/* b50c: 3c0b800a */ lui $t3,0x800a
/* b510: 468084a0 */ cvt.s.w $f18,$f16
/* b514: 46003202 */ mul.s $f8,$f6,$f0
/* b518: 00c01825 */ or $v1,$a2,$zero
/* b51c: 256be6c0 */ addiu $t3,$t3,-6464
/* b520: 24010001 */ addiu $at,$zero,0x1
/* b524: 00002825 */ or $a1,$zero,$zero
/* b528: 46009102 */ mul.s $f4,$f18,$f0
/* b52c: 00002025 */ or $a0,$zero,$zero
/* b530: 24c60008 */ addiu $a2,$a2,0x8
/* b534: 4600428d */ trunc.w.s $f10,$f8
/* b538: 4600218d */ trunc.w.s $f6,$f4
/* b53c: 440d5000 */ mfc1 $t5,$f10
/* b540: 44193000 */ mfc1 $t9,$f6
/* b544: 31ae0fff */ andi $t6,$t5,0xfff
/* b548: 332d0fff */ andi $t5,$t9,0xfff
/* b54c: 8fb900a0 */ lw $t9,0xa0($sp)
/* b550: 000d7b00 */ sll $t7,$t5,0xc
/* b554: 01cfc025 */ or $t8,$t6,$t7
/* b558: 3c0e0001 */ lui $t6,0x1
/* b55c: af380004 */ sw $t8,0x4($t9)
/* b560: 35ce0001 */ ori $t6,$t6,0x1
/* b564: 3c0df700 */ lui $t5,0xf700
/* b568: ac6d0000 */ sw $t5,0x0($v1)
/* b56c: ac6e0004 */ sw $t6,0x4($v1)
/* b570: 8d6f006c */ lw $t7,0x6c($t3)
/* b574: 00001825 */ or $v1,$zero,$zero
/* b578: 11e00003 */ beqz $t7,.NB0000b588
/* b57c: 00000000 */ sll $zero,$zero,0x0
/* b580: 10000001 */ beqz $zero,.NB0000b588
/* b584: 24050001 */ addiu $a1,$zero,0x1
.NB0000b588:
/* b588: 8d780068 */ lw $t8,0x68($t3)
/* b58c: 00001025 */ or $v0,$zero,$zero
/* b590: 13000003 */ beqz $t8,.NB0000b5a0
/* b594: 00000000 */ sll $zero,$zero,0x0
/* b598: 10000001 */ beqz $zero,.NB0000b5a0
/* b59c: 24040001 */ addiu $a0,$zero,0x1
.NB0000b5a0:
/* b5a0: 8d790064 */ lw $t9,0x64($t3)
/* b5a4: 13200003 */ beqz $t9,.NB0000b5b4
/* b5a8: 00000000 */ sll $zero,$zero,0x0
/* b5ac: 10000001 */ beqz $zero,.NB0000b5b4
/* b5b0: 24030001 */ addiu $v1,$zero,0x1
.NB0000b5b4:
/* b5b4: 8d6d0070 */ lw $t5,0x70($t3)
/* b5b8: 11a00003 */ beqz $t5,.NB0000b5c8
/* b5bc: 00000000 */ sll $zero,$zero,0x0
/* b5c0: 10000001 */ beqz $zero,.NB0000b5c8
/* b5c4: 24020001 */ addiu $v0,$zero,0x1
.NB0000b5c8:
/* b5c8: 00437021 */ addu $t6,$v0,$v1
/* b5cc: 01c47821 */ addu $t7,$t6,$a0
/* b5d0: 01e5c021 */ addu $t8,$t7,$a1
/* b5d4: 13010019 */ beq $t8,$at,.NB0000b63c
/* b5d8: 00000000 */ sll $zero,$zero,0x0
/* b5dc: 8d790298 */ lw $t9,0x298($t3)
/* b5e0: 3c0e8007 */ lui $t6,0x8007
/* b5e4: 07210004 */ bgez $t9,.NB0000b5f8
/* b5e8: 00000000 */ sll $zero,$zero,0x0
/* b5ec: 8d6d029c */ lw $t5,0x29c($t3)
/* b5f0: 05a2005f */ bltzl $t5,.NB0000b770
/* b5f4: 8d6f0290 */ lw $t7,0x290($t3)
.NB0000b5f8:
/* b5f8: 8dce2e24 */ lw $t6,0x2e24($t6)
/* b5fc: 3c0f8006 */ lui $t7,0x8006
/* b600: 11c00004 */ beqz $t6,.NB0000b614
/* b604: 00000000 */ sll $zero,$zero,0x0
/* b608: 8deff2f0 */ lw $t7,-0xd10($t7)
/* b60c: 51e00009 */ beqzl $t7,.NB0000b634
/* b610: 8d78028c */ lw $t8,0x28c($t3)
.NB0000b614:
/* b614: 0fc3e4d2 */ jal 0xf0f9348
/* b618: afa600a8 */ sw $a2,0xa8($sp)
/* b61c: 3c0b800a */ lui $t3,0x800a
/* b620: 24010009 */ addiu $at,$zero,0x9
/* b624: 256be6c0 */ addiu $t3,$t3,-6464
/* b628: 14410050 */ bne $v0,$at,.NB0000b76c
/* b62c: 8fa600a8 */ lw $a2,0xa8($sp)
/* b630: 8d78028c */ lw $t8,0x28c($t3)
.NB0000b634:
/* b634: 5700004e */ bnezl $t8,.NB0000b770
/* b638: 8d6f0290 */ lw $t7,0x290($t3)
.NB0000b63c:
/* b63c: 0c002fb9 */ jal 0xbee4
/* b640: afa600a8 */ sw $a2,0xa8($sp)
/* b644: 1840001a */ blez $v0,.NB0000b6b0
/* b648: 8fa600a8 */ lw $a2,0xa8($sp)
/* b64c: afa60098 */ sw $a2,0x98($sp)
/* b650: 24c60008 */ addiu $a2,$a2,0x8
/* b654: 0c002f77 */ jal 0xbddc
/* b658: afa600a8 */ sw $a2,0xa8($sp)
/* b65c: 0c002fb9 */ jal 0xbee4
/* b660: a7a20056 */ sh $v0,0x56($sp)
/* b664: 87b80056 */ lh $t8,0x56($sp)
/* b668: 2459ffff */ addiu $t9,$v0,-1
/* b66c: 332d03ff */ andi $t5,$t9,0x3ff
/* b670: 000d7080 */ sll $t6,$t5,0x2
/* b674: 8fa40098 */ lw $a0,0x98($sp)
/* b678: 8fa600a8 */ lw $a2,0xa8($sp)
/* b67c: 3c01f600 */ lui $at,0xf600
/* b680: 2719ffff */ addiu $t9,$t8,-1
/* b684: 332d03ff */ andi $t5,$t9,0x3ff
/* b688: 01c17825 */ or $t7,$t6,$at
/* b68c: 000d7380 */ sll $t6,$t5,0xe
/* b690: 01eec025 */ or $t8,$t7,$t6
/* b694: 00c01825 */ or $v1,$a2,$zero
/* b698: ac980000 */ sw $t8,0x0($a0)
/* b69c: ac800004 */ sw $zero,0x4($a0)
/* b6a0: 3c19e700 */ lui $t9,0xe700
/* b6a4: ac790000 */ sw $t9,0x0($v1)
/* b6a8: ac600004 */ sw $zero,0x4($v1)
/* b6ac: 24c60008 */ addiu $a2,$a2,0x8
.NB0000b6b0:
/* b6b0: 0c002f9b */ jal 0xbe6c
/* b6b4: afa600a8 */ sw $a2,0xa8($sp)
/* b6b8: 0c002fb9 */ jal 0xbee4
/* b6bc: a7a20042 */ sh $v0,0x42($sp)
/* b6c0: 0c002f7b */ jal 0xbdec
/* b6c4: a7a20056 */ sh $v0,0x56($sp)
/* b6c8: 87ad0056 */ lh $t5,0x56($sp)
/* b6cc: 87af0042 */ lh $t7,0x42($sp)
/* b6d0: 8fa600a8 */ lw $a2,0xa8($sp)
/* b6d4: 01af7021 */ addu $t6,$t5,$t7
/* b6d8: 01c2082a */ slt $at,$t6,$v0
/* b6dc: 50200195 */ beqzl $at,.NB0000bd34
/* b6e0: 8fbf0014 */ lw $ra,0x14($sp)
/* b6e4: afa60090 */ sw $a2,0x90($sp)
/* b6e8: 24c60008 */ addiu $a2,$a2,0x8
/* b6ec: 0c002f77 */ jal 0xbddc
/* b6f0: afa600a8 */ sw $a2,0xa8($sp)
/* b6f4: 0c002f7b */ jal 0xbdec
/* b6f8: a7a20056 */ sh $v0,0x56($sp)
/* b6fc: 87ae0056 */ lh $t6,0x56($sp)
/* b700: 2458ffff */ addiu $t8,$v0,-1
/* b704: 331903ff */ andi $t9,$t8,0x3ff
/* b708: 00196880 */ sll $t5,$t9,0x2
/* b70c: 25d8ffff */ addiu $t8,$t6,-1
/* b710: 331903ff */ andi $t9,$t8,0x3ff
/* b714: 3c01f600 */ lui $at,0xf600
/* b718: 01a17825 */ or $t7,$t5,$at
/* b71c: 8fb80090 */ lw $t8,0x90($sp)
/* b720: 00196b80 */ sll $t5,$t9,0xe
/* b724: 01ed7025 */ or $t6,$t7,$t5
/* b728: 0c002fb9 */ jal 0xbee4
/* b72c: af0e0000 */ sw $t6,0x0($t8)
/* b730: 0c002f9b */ jal 0xbe6c
/* b734: a7a20056 */ sh $v0,0x56($sp)
/* b738: 87b90056 */ lh $t9,0x56($sp)
/* b73c: 8fa600a8 */ lw $a2,0xa8($sp)
/* b740: 8fb80090 */ lw $t8,0x90($sp)
/* b744: 00597821 */ addu $t7,$v0,$t9
/* b748: 31ed03ff */ andi $t5,$t7,0x3ff
/* b74c: 000d7080 */ sll $t6,$t5,0x2
/* b750: 00c01825 */ or $v1,$a2,$zero
/* b754: 3c19e700 */ lui $t9,0xe700
/* b758: af0e0004 */ sw $t6,0x4($t8)
/* b75c: ac600004 */ sw $zero,0x4($v1)
/* b760: ac790000 */ sw $t9,0x0($v1)
/* b764: 10000172 */ beqz $zero,.NB0000bd30
/* b768: 24c60008 */ addiu $a2,$a2,0x8
.NB0000b76c:
/* b76c: 8d6f0290 */ lw $t7,0x290($t3)
.NB0000b770:
/* b770: 00006025 */ or $t4,$zero,$zero
/* b774: 24010002 */ addiu $at,$zero,0x2
/* b778: 55e0016e */ bnezl $t7,.NB0000bd34
/* b77c: 8fbf0014 */ lw $ra,0x14($sp)
/* b780: 8d69006c */ lw $t1,0x6c($t3)
/* b784: afa00080 */ sw $zero,0x80($sp)
/* b788: 8d670068 */ lw $a3,0x68($t3)
/* b78c: 8d680064 */ lw $t0,0x64($t3)
/* b790: 11200003 */ beqz $t1,.NB0000b7a0
/* b794: 8d6a0070 */ lw $t2,0x70($t3)
/* b798: 10000002 */ beqz $zero,.NB0000b7a4
/* b79c: 24050001 */ addiu $a1,$zero,0x1
.NB0000b7a0:
/* b7a0: 00002825 */ or $a1,$zero,$zero
.NB0000b7a4:
/* b7a4: 50e00004 */ beqzl $a3,.NB0000b7b8
/* b7a8: 00002025 */ or $a0,$zero,$zero
/* b7ac: 10000002 */ beqz $zero,.NB0000b7b8
/* b7b0: 24040001 */ addiu $a0,$zero,0x1
/* b7b4: 00002025 */ or $a0,$zero,$zero
.NB0000b7b8:
/* b7b8: 51000004 */ beqzl $t0,.NB0000b7cc
/* b7bc: 00001825 */ or $v1,$zero,$zero
/* b7c0: 10000002 */ beqz $zero,.NB0000b7cc
/* b7c4: 24030001 */ addiu $v1,$zero,0x1
/* b7c8: 00001825 */ or $v1,$zero,$zero
.NB0000b7cc:
/* b7cc: 51400004 */ beqzl $t2,.NB0000b7e0
/* b7d0: 00001025 */ or $v0,$zero,$zero
/* b7d4: 10000002 */ beqz $zero,.NB0000b7e0
/* b7d8: 24020001 */ addiu $v0,$zero,0x1
/* b7dc: 00001025 */ or $v0,$zero,$zero
.NB0000b7e0:
/* b7e0: 00436821 */ addu $t5,$v0,$v1
/* b7e4: 01a47021 */ addu $t6,$t5,$a0
/* b7e8: 01c5c021 */ addu $t8,$t6,$a1
/* b7ec: 17010004 */ bne $t8,$at,.NB0000b800
/* b7f0: 24190001 */ addiu $t9,$zero,0x1
/* b7f4: 240c0001 */ addiu $t4,$zero,0x1
/* b7f8: 10000019 */ beqz $zero,.NB0000b860
/* b7fc: afb90080 */ sw $t9,0x80($sp)
.NB0000b800:
/* b800: 11200003 */ beqz $t1,.NB0000b810
/* b804: 00002825 */ or $a1,$zero,$zero
/* b808: 10000001 */ beqz $zero,.NB0000b810
/* b80c: 24050001 */ addiu $a1,$zero,0x1
.NB0000b810:
/* b810: 10e00003 */ beqz $a3,.NB0000b820
/* b814: 00002025 */ or $a0,$zero,$zero
/* b818: 10000001 */ beqz $zero,.NB0000b820
/* b81c: 24040001 */ addiu $a0,$zero,0x1
.NB0000b820:
/* b820: 11000003 */ beqz $t0,.NB0000b830
/* b824: 00001825 */ or $v1,$zero,$zero
/* b828: 10000001 */ beqz $zero,.NB0000b830
/* b82c: 24030001 */ addiu $v1,$zero,0x1
.NB0000b830:
/* b830: 11400003 */ beqz $t2,.NB0000b840
/* b834: 00001025 */ or $v0,$zero,$zero
/* b838: 10000001 */ beqz $zero,.NB0000b840
/* b83c: 24020001 */ addiu $v0,$zero,0x1
.NB0000b840:
/* b840: 00437821 */ addu $t7,$v0,$v1
/* b844: 01e46821 */ addu $t5,$t7,$a0
/* b848: 01a57021 */ addu $t6,$t5,$a1
/* b84c: 29c10003 */ slti $at,$t6,0x3
/* b850: 14200003 */ bnez $at,.NB0000b860
/* b854: 24180002 */ addiu $t8,$zero,0x2
/* b858: 240c0002 */ addiu $t4,$zero,0x2
/* b85c: afb80080 */ sw $t8,0x80($sp)
.NB0000b860:
/* b860: 3c19800a */ lui $t9,0x800a
/* b864: 8f39e724 */ lw $t9,-0x18dc($t9)
/* b868: 872f0636 */ lh $t7,0x636($t9)
/* b86c: 19e0001c */ blez $t7,.NB0000b8e0
/* b870: 00c02025 */ or $a0,$a2,$zero
/* b874: 24c60008 */ addiu $a2,$a2,0x8
/* b878: afa600a8 */ sw $a2,0xa8($sp)
/* b87c: afa4007c */ sw $a0,0x7c($sp)
/* b880: 0c002f77 */ jal 0xbddc
/* b884: afac0084 */ sw $t4,0x84($sp)
/* b888: 3c0d800a */ lui $t5,0x800a
/* b88c: 8dade724 */ lw $t5,-0x18dc($t5)
/* b890: 8fa4007c */ lw $a0,0x7c($sp)
/* b894: 8fa600a8 */ lw $a2,0xa8($sp)
/* b898: 85ae0636 */ lh $t6,0x636($t5)
/* b89c: 3c01f600 */ lui $at,0xf600
/* b8a0: 8fac0084 */ lw $t4,0x84($sp)
/* b8a4: 25d8ffff */ addiu $t8,$t6,-1
/* b8a8: 331903ff */ andi $t9,$t8,0x3ff
/* b8ac: 00197880 */ sll $t7,$t9,0x2
/* b8b0: 244effff */ addiu $t6,$v0,-1
/* b8b4: 31d803ff */ andi $t8,$t6,0x3ff
/* b8b8: 0018cb80 */ sll $t9,$t8,0xe
/* b8bc: 01e16825 */ or $t5,$t7,$at
/* b8c0: 01b97825 */ or $t7,$t5,$t9
/* b8c4: 00c01825 */ or $v1,$a2,$zero
/* b8c8: ac8f0000 */ sw $t7,0x0($a0)
/* b8cc: ac800004 */ sw $zero,0x4($a0)
/* b8d0: 3c0ee700 */ lui $t6,0xe700
/* b8d4: ac6e0000 */ sw $t6,0x0($v1)
/* b8d8: ac600004 */ sw $zero,0x4($v1)
/* b8dc: 24c60008 */ addiu $a2,$a2,0x8
.NB0000b8e0:
/* b8e0: afa600a8 */ sw $a2,0xa8($sp)
/* b8e4: 0c002f7b */ jal 0xbdec
/* b8e8: afac0084 */ sw $t4,0x84($sp)
/* b8ec: 8fac0084 */ lw $t4,0x84($sp)
/* b8f0: 3c0b800a */ lui $t3,0x800a
/* b8f4: 256be6c0 */ addiu $t3,$t3,-6464
/* b8f8: 000cc080 */ sll $t8,$t4,0x2
/* b8fc: 01782821 */ addu $a1,$t3,$t8
/* b900: 8ca30064 */ lw $v1,0x64($a1)
/* b904: 8fa600a8 */ lw $a2,0xa8($sp)
/* b908: 846d0636 */ lh $t5,0x636($v1)
/* b90c: 84790632 */ lh $t9,0x632($v1)
/* b910: 01b97821 */ addu $t7,$t5,$t9
/* b914: 01e2082a */ slt $at,$t7,$v0
/* b918: 50200023 */ beqzl $at,.NB0000b9a8
/* b91c: 00c02025 */ or $a0,$a2,$zero
/* b920: afa60074 */ sw $a2,0x74($sp)
/* b924: 24c60008 */ addiu $a2,$a2,0x8
/* b928: afa600a8 */ sw $a2,0xa8($sp)
/* b92c: 0c002f77 */ jal 0xbddc
/* b930: afa5002c */ sw $a1,0x2c($sp)
/* b934: 0c002f7b */ jal 0xbdec
/* b938: a7a20056 */ sh $v0,0x56($sp)
/* b93c: 87af0056 */ lh $t7,0x56($sp)
/* b940: 244effff */ addiu $t6,$v0,-1
/* b944: 31d803ff */ andi $t8,$t6,0x3ff
/* b948: 00186880 */ sll $t5,$t8,0x2
/* b94c: 3c01f600 */ lui $at,0xf600
/* b950: 25eeffff */ addiu $t6,$t7,-1
/* b954: 8fa70074 */ lw $a3,0x74($sp)
/* b958: 31d803ff */ andi $t8,$t6,0x3ff
/* b95c: 01a1c825 */ or $t9,$t5,$at
/* b960: 8fa5002c */ lw $a1,0x2c($sp)
/* b964: 00186b80 */ sll $t5,$t8,0xe
/* b968: 8fa600a8 */ lw $a2,0xa8($sp)
/* b96c: 032d7825 */ or $t7,$t9,$t5
/* b970: acef0000 */ sw $t7,0x0($a3)
/* b974: 8ca30064 */ lw $v1,0x64($a1)
/* b978: 00c02025 */ or $a0,$a2,$zero
/* b97c: 24c60008 */ addiu $a2,$a2,0x8
/* b980: 846e0632 */ lh $t6,0x632($v1)
/* b984: 84780636 */ lh $t8,0x636($v1)
/* b988: 01d8c821 */ addu $t9,$t6,$t8
/* b98c: 332d03ff */ andi $t5,$t9,0x3ff
/* b990: 000d7880 */ sll $t7,$t5,0x2
/* b994: acef0004 */ sw $t7,0x4($a3)
/* b998: 3c0ee700 */ lui $t6,0xe700
/* b99c: ac8e0000 */ sw $t6,0x0($a0)
/* b9a0: ac800004 */ sw $zero,0x4($a0)
/* b9a4: 00c02025 */ or $a0,$a2,$zero
.NB0000b9a8:
/* b9a8: 24c60008 */ addiu $a2,$a2,0x8
/* b9ac: afa600a8 */ sw $a2,0xa8($sp)
/* b9b0: 0c002f77 */ jal 0xbddc
/* b9b4: afa4006c */ sw $a0,0x6c($sp)
/* b9b8: 8fb80080 */ lw $t8,0x80($sp)
/* b9bc: 3c0b800a */ lui $t3,0x800a
/* b9c0: 256be6c0 */ addiu $t3,$t3,-6464
/* b9c4: 0018c880 */ sll $t9,$t8,0x2
/* b9c8: 01796021 */ addu $t4,$t3,$t9
/* b9cc: 8d8d0064 */ lw $t5,0x64($t4)
/* b9d0: 8fa4006c */ lw $a0,0x6c($sp)
/* b9d4: 3c01f600 */ lui $at,0xf600
/* b9d8: 85af0636 */ lh $t7,0x636($t5)
/* b9dc: 8fa600a8 */ lw $a2,0xa8($sp)
/* b9e0: 00002825 */ or $a1,$zero,$zero
/* b9e4: 25eeffff */ addiu $t6,$t7,-1
/* b9e8: 31d803ff */ andi $t8,$t6,0x3ff
/* b9ec: 0018c880 */ sll $t9,$t8,0x2
/* b9f0: 244fffff */ addiu $t7,$v0,-1
/* b9f4: 31ee03ff */ andi $t6,$t7,0x3ff
/* b9f8: 000ec380 */ sll $t8,$t6,0xe
/* b9fc: 03216825 */ or $t5,$t9,$at
/* ba00: 01b8c825 */ or $t9,$t5,$t8
/* ba04: ac990000 */ sw $t9,0x0($a0)
/* ba08: 8d8f0064 */ lw $t7,0x64($t4)
/* ba0c: 00c01825 */ or $v1,$a2,$zero
/* ba10: 24c60008 */ addiu $a2,$a2,0x8
/* ba14: 85ee0636 */ lh $t6,0x636($t7)
/* ba18: 3c0fe700 */ lui $t7,0xe700
/* ba1c: 25cdffff */ addiu $t5,$t6,-1
/* ba20: 31b803ff */ andi $t8,$t5,0x3ff
/* ba24: 0018c880 */ sll $t9,$t8,0x2
/* ba28: ac990004 */ sw $t9,0x4($a0)
/* ba2c: ac600004 */ sw $zero,0x4($v1)
/* ba30: ac6f0000 */ sw $t7,0x0($v1)
/* ba34: 8d69006c */ lw $t1,0x6c($t3)
/* ba38: 11200003 */ beqz $t1,.NB0000ba48
/* ba3c: 00000000 */ sll $zero,$zero,0x0
/* ba40: 10000001 */ beqz $zero,.NB0000ba48
/* ba44: 24050001 */ addiu $a1,$zero,0x1
.NB0000ba48:
/* ba48: 8d670068 */ lw $a3,0x68($t3)
/* ba4c: 00002025 */ or $a0,$zero,$zero
/* ba50: 00001825 */ or $v1,$zero,$zero
/* ba54: 10e00003 */ beqz $a3,.NB0000ba64
/* ba58: 00000000 */ sll $zero,$zero,0x0
/* ba5c: 10000001 */ beqz $zero,.NB0000ba64
/* ba60: 24040001 */ addiu $a0,$zero,0x1
.NB0000ba64:
/* ba64: 8d680064 */ lw $t0,0x64($t3)
/* ba68: 00001025 */ or $v0,$zero,$zero
/* ba6c: 11000003 */ beqz $t0,.NB0000ba7c
/* ba70: 00000000 */ sll $zero,$zero,0x0
/* ba74: 10000001 */ beqz $zero,.NB0000ba7c
/* ba78: 24030001 */ addiu $v1,$zero,0x1
.NB0000ba7c:
/* ba7c: 8d6a0070 */ lw $t2,0x70($t3)
/* ba80: 11400003 */ beqz $t2,.NB0000ba90
/* ba84: 00000000 */ sll $zero,$zero,0x0
/* ba88: 10000001 */ beqz $zero,.NB0000ba90
/* ba8c: 24020001 */ addiu $v0,$zero,0x1
.NB0000ba90:
/* ba90: 00437021 */ addu $t6,$v0,$v1
/* ba94: 01c46821 */ addu $t5,$t6,$a0
/* ba98: 01a5c021 */ addu $t8,$t5,$a1
/* ba9c: 2b010003 */ slti $at,$t8,0x3
/* baa0: 50200024 */ beqzl $at,.NB0000bb34
/* baa4: 8d78006c */ lw $t8,0x6c($t3)
/* baa8: 11200003 */ beqz $t1,.NB0000bab8
/* baac: 24010002 */ addiu $at,$zero,0x2
/* bab0: 10000002 */ beqz $zero,.NB0000babc
/* bab4: 24050001 */ addiu $a1,$zero,0x1
.NB0000bab8:
/* bab8: 00002825 */ or $a1,$zero,$zero
.NB0000babc:
/* babc: 10e00003 */ beqz $a3,.NB0000bacc
/* bac0: 00001825 */ or $v1,$zero,$zero
/* bac4: 10000001 */ beqz $zero,.NB0000bacc
/* bac8: 24030001 */ addiu $v1,$zero,0x1
.NB0000bacc:
/* bacc: 11000003 */ beqz $t0,.NB0000badc
/* bad0: 00002025 */ or $a0,$zero,$zero
/* bad4: 10000001 */ beqz $zero,.NB0000badc
/* bad8: 24040001 */ addiu $a0,$zero,0x1
.NB0000badc:
/* badc: 11400003 */ beqz $t2,.NB0000baec
/* bae0: 00001025 */ or $v0,$zero,$zero
/* bae4: 10000001 */ beqz $zero,.NB0000baec
/* bae8: 24020001 */ addiu $v0,$zero,0x1
.NB0000baec:
/* baec: 0044c821 */ addu $t9,$v0,$a0
/* baf0: 03237821 */ addu $t7,$t9,$v1
/* baf4: 01e57021 */ addu $t6,$t7,$a1
/* baf8: 55c1004e */ bnel $t6,$at,.NB0000bc34
/* bafc: 8d79006c */ lw $t9,0x6c($t3)
/* bb00: afa600a8 */ sw $a2,0xa8($sp)
/* bb04: 0fc53588 */ jal 0xf14d620
/* bb08: afac001c */ sw $t4,0x1c($sp)
/* bb0c: 3c0b800a */ lui $t3,0x800a
/* bb10: 24010001 */ addiu $at,$zero,0x1
/* bb14: 256be6c0 */ addiu $t3,$t3,-6464
/* bb18: 8fa600a8 */ lw $a2,0xa8($sp)
/* bb1c: 10410004 */ beq $v0,$at,.NB0000bb30
/* bb20: 8fac001c */ lw $t4,0x1c($sp)
/* bb24: 916d04e0 */ lbu $t5,0x4e0($t3)
/* bb28: 51a00042 */ beqzl $t5,.NB0000bc34
/* bb2c: 8d79006c */ lw $t9,0x6c($t3)
.NB0000bb30:
/* bb30: 8d78006c */ lw $t8,0x6c($t3)
.NB0000bb34:
/* bb34: 8d670068 */ lw $a3,0x68($t3)
/* bb38: 8d680064 */ lw $t0,0x64($t3)
/* bb3c: 13000003 */ beqz $t8,.NB0000bb4c
/* bb40: 8d6a0070 */ lw $t2,0x70($t3)
/* bb44: 10000002 */ beqz $zero,.NB0000bb50
/* bb48: 24050001 */ addiu $a1,$zero,0x1
.NB0000bb4c:
/* bb4c: 00002825 */ or $a1,$zero,$zero
.NB0000bb50:
/* bb50: 10e00003 */ beqz $a3,.NB0000bb60
/* bb54: 24010002 */ addiu $at,$zero,0x2
/* bb58: 10000002 */ beqz $zero,.NB0000bb64
/* bb5c: 24040001 */ addiu $a0,$zero,0x1
.NB0000bb60:
/* bb60: 00002025 */ or $a0,$zero,$zero
.NB0000bb64:
/* bb64: 11000003 */ beqz $t0,.NB0000bb74
/* bb68: 00001825 */ or $v1,$zero,$zero
/* bb6c: 10000001 */ beqz $zero,.NB0000bb74
/* bb70: 24030001 */ addiu $v1,$zero,0x1
.NB0000bb74:
/* bb74: 11400003 */ beqz $t2,.NB0000bb84
/* bb78: 00001025 */ or $v0,$zero,$zero
/* bb7c: 10000001 */ beqz $zero,.NB0000bb84
/* bb80: 24020001 */ addiu $v0,$zero,0x1
.NB0000bb84:
/* bb84: 0043c821 */ addu $t9,$v0,$v1
/* bb88: 03247821 */ addu $t7,$t9,$a0
/* bb8c: 01e57021 */ addu $t6,$t7,$a1
/* bb90: 15c10004 */ bne $t6,$at,.NB0000bba4
/* bb94: 00c02825 */ or $a1,$a2,$zero
/* bb98: 3c0c800a */ lui $t4,0x800a
/* bb9c: 258ce6c0 */ addiu $t4,$t4,-6464
/* bba0: afa00080 */ sw $zero,0x80($sp)
.NB0000bba4:
/* bba4: 24c60008 */ addiu $a2,$a2,0x8
/* bba8: afa600a8 */ sw $a2,0xa8($sp)
/* bbac: afa50064 */ sw $a1,0x64($sp)
/* bbb0: 0c002f7b */ jal 0xbdec
/* bbb4: afac001c */ sw $t4,0x1c($sp)
/* bbb8: 8fac001c */ lw $t4,0x1c($sp)
/* bbbc: 8fa50064 */ lw $a1,0x64($sp)
/* bbc0: 3c01f600 */ lui $at,0xf600
/* bbc4: 8d830064 */ lw $v1,0x64($t4)
/* bbc8: 8fa600a8 */ lw $a2,0xa8($sp)
/* bbcc: 3c0b800a */ lui $t3,0x800a
/* bbd0: 846d0634 */ lh $t5,0x634($v1)
/* bbd4: 84780630 */ lh $t8,0x630($v1)
/* bbd8: 00c02025 */ or $a0,$a2,$zero
/* bbdc: 256be6c0 */ addiu $t3,$t3,-6464
/* bbe0: 01b8c821 */ addu $t9,$t5,$t8
/* bbe4: 332f03ff */ andi $t7,$t9,0x3ff
/* bbe8: 244dffff */ addiu $t5,$v0,-1
/* bbec: 31b803ff */ andi $t8,$t5,0x3ff
/* bbf0: 0018c880 */ sll $t9,$t8,0x2
/* bbf4: 000f7380 */ sll $t6,$t7,0xe
/* bbf8: 03217825 */ or $t7,$t9,$at
/* bbfc: 01ee6825 */ or $t5,$t7,$t6
/* bc00: acad0000 */ sw $t5,0x0($a1)
/* bc04: 8d830064 */ lw $v1,0x64($t4)
/* bc08: 24c60008 */ addiu $a2,$a2,0x8
/* bc0c: 84780630 */ lh $t8,0x630($v1)
/* bc10: 84790634 */ lh $t9,0x634($v1)
/* bc14: 03197821 */ addu $t7,$t8,$t9
/* bc18: 31ee03ff */ andi $t6,$t7,0x3ff
/* bc1c: 000e6b80 */ sll $t5,$t6,0xe
/* bc20: acad0004 */ sw $t5,0x4($a1)
/* bc24: 3c18e700 */ lui $t8,0xe700
/* bc28: ac980000 */ sw $t8,0x0($a0)
/* bc2c: ac800004 */ sw $zero,0x4($a0)
/* bc30: 8d79006c */ lw $t9,0x6c($t3)
.NB0000bc34:
/* bc34: 8d670068 */ lw $a3,0x68($t3)
/* bc38: 8d680064 */ lw $t0,0x64($t3)
/* bc3c: 13200003 */ beqz $t9,.NB0000bc4c
/* bc40: 8d6a0070 */ lw $t2,0x70($t3)
/* bc44: 10000002 */ beqz $zero,.NB0000bc50
/* bc48: 24050001 */ addiu $a1,$zero,0x1
.NB0000bc4c:
/* bc4c: 00002825 */ or $a1,$zero,$zero
.NB0000bc50:
/* bc50: 10e00003 */ beqz $a3,.NB0000bc60
/* bc54: 24010003 */ addiu $at,$zero,0x3
/* bc58: 10000002 */ beqz $zero,.NB0000bc64
/* bc5c: 24040001 */ addiu $a0,$zero,0x1
.NB0000bc60:
/* bc60: 00002025 */ or $a0,$zero,$zero
.NB0000bc64:
/* bc64: 11000003 */ beqz $t0,.NB0000bc74
/* bc68: 00001825 */ or $v1,$zero,$zero
/* bc6c: 10000001 */ beqz $zero,.NB0000bc74
/* bc70: 24030001 */ addiu $v1,$zero,0x1
.NB0000bc74:
/* bc74: 11400003 */ beqz $t2,.NB0000bc84
/* bc78: 00001025 */ or $v0,$zero,$zero
/* bc7c: 10000001 */ beqz $zero,.NB0000bc84
/* bc80: 24020001 */ addiu $v0,$zero,0x1
.NB0000bc84:
/* bc84: 00437821 */ addu $t7,$v0,$v1
/* bc88: 01e47021 */ addu $t6,$t7,$a0
/* bc8c: 01c56821 */ addu $t5,$t6,$a1
/* bc90: 55a10028 */ bnel $t5,$at,.NB0000bd34
/* bc94: 8fbf0014 */ lw $ra,0x14($sp)
/* bc98: afa6005c */ sw $a2,0x5c($sp)
/* bc9c: 24c60008 */ addiu $a2,$a2,0x8
/* bca0: afa600a8 */ sw $a2,0xa8($sp)
/* bca4: 0c002f77 */ jal 0xbddc
/* bca8: afac001c */ sw $t4,0x1c($sp)
/* bcac: 0c002f7b */ jal 0xbdec
/* bcb0: a7a20056 */ sh $v0,0x56($sp)
/* bcb4: 87ad0056 */ lh $t5,0x56($sp)
/* bcb8: 2458ffff */ addiu $t8,$v0,-1
/* bcbc: 331903ff */ andi $t9,$t8,0x3ff
/* bcc0: 00197880 */ sll $t7,$t9,0x2
/* bcc4: 3c01f600 */ lui $at,0xf600
/* bcc8: 25b8ffff */ addiu $t8,$t5,-1
/* bccc: 8fa5005c */ lw $a1,0x5c($sp)
/* bcd0: 331903ff */ andi $t9,$t8,0x3ff
/* bcd4: 01e17025 */ or $t6,$t7,$at
/* bcd8: 8fac001c */ lw $t4,0x1c($sp)
/* bcdc: 00197b80 */ sll $t7,$t9,0xe
/* bce0: 8fa600a8 */ lw $a2,0xa8($sp)
/* bce4: 01cf6825 */ or $t5,$t6,$t7
/* bce8: acad0000 */ sw $t5,0x0($a1)
/* bcec: 8d830064 */ lw $v1,0x64($t4)
/* bcf0: 00c02025 */ or $a0,$a2,$zero
/* bcf4: 24c60008 */ addiu $a2,$a2,0x8
/* bcf8: 84780634 */ lh $t8,0x634($v1)
/* bcfc: 84790630 */ lh $t9,0x630($v1)
/* bd00: 03197021 */ addu $t6,$t8,$t9
/* bd04: 84790636 */ lh $t9,0x636($v1)
/* bd08: 25cf0001 */ addiu $t7,$t6,0x1
/* bd0c: 31ed03ff */ andi $t5,$t7,0x3ff
/* bd10: 332e03ff */ andi $t6,$t9,0x3ff
/* bd14: 000e7880 */ sll $t7,$t6,0x2
/* bd18: 000dc380 */ sll $t8,$t5,0xe
/* bd1c: 01f86825 */ or $t5,$t7,$t8
/* bd20: acad0004 */ sw $t5,0x4($a1)
/* bd24: 3c19e700 */ lui $t9,0xe700
/* bd28: ac990000 */ sw $t9,0x0($a0)
/* bd2c: ac800004 */ sw $zero,0x4($a0)
.NB0000bd30:
/* bd30: 8fbf0014 */ lw $ra,0x14($sp)
.NB0000bd34:
/* bd34: 27bd00a8 */ addiu $sp,$sp,0xa8
/* bd38: 00c01025 */ or $v0,$a2,$zero
/* bd3c: 03e00008 */ jr $ra
/* bd40: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000bd44nb
/* bd44: 3c018006 */ lui $at,0x8006
/* bd48: 03e00008 */ jr $ra
/* bd4c: ac24ed2c */ sw $a0,-0x12d4($at)
);
GLOBAL_ASM(
glabel func0000bd50nb
/* bd50: 3c028006 */ lui $v0,0x8006
/* bd54: 03e00008 */ jr $ra
/* bd58: 8c42ed2c */ lw $v0,-0x12d4($v0)
);
GLOBAL_ASM(
glabel func0000bd5cnb
/* bd5c: 3c018006 */ lui $at,0x8006
/* bd60: 03e00008 */ jr $ra
/* bd64: ac24ed28 */ sw $a0,-0x12d8($at)
);
GLOBAL_ASM(
glabel func0000bd68nb
/* bd68: 3c028006 */ lui $v0,0x8006
/* bd6c: 03e00008 */ jr $ra
/* bd70: 8c42ed28 */ lw $v0,-0x12d8($v0)
);
#endif
void viSetBuf(s16 x, s16 y)
{
+856 -5
View File
@@ -121,8 +121,28 @@ extern u32 _libSegmentStart;
extern u32 _libSegmentEnd;
void faultproc(void *arg0);
u32 crashRender(OSThread *thread, u32 *callstack, s32 *tracelen);
void crashPrintDescription(u32 mask, char *label, struct crashdescription *descriptions);
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c1d0nb
/* c1d0: 27bdffe8 */ addiu $sp,$sp,-24
/* c1d4: 00802825 */ or $a1,$a0,$zero
/* c1d8: afbf0014 */ sw $ra,0x14($sp)
/* c1dc: 3c048009 */ lui $a0,0x8009
/* c1e0: 24844e70 */ addiu $a0,$a0,0x4e70
/* c1e4: 0c004e86 */ jal 0x13a18
/* c1e8: 24060046 */ addiu $a2,$zero,0x46
/* c1ec: 8fbf0014 */ lw $ra,0x14($sp)
/* c1f0: 240e0001 */ addiu $t6,$zero,0x1
/* c1f4: 3c018006 */ lui $at,0x8006
/* c1f8: a02eed50 */ sb $t6,-0x12b0($at)
/* c1fc: 03e00008 */ jr $ra
/* c200: 27bd0018 */ addiu $sp,$sp,0x18
);
#endif
void faultCreateThread2(void)
{
osCreateMesgQueue(&g_FaultMesgQueue, &g_FaultMesg, 1);
@@ -134,8 +154,8 @@ void faultproc(void *arg0)
{
OSMesg msg = 0;
OSIntMask mask;
u8 stack2[4];
u8 stack1[44];
u32 callstack[10];
s32 tracelen;
static OSThread *thread;
static u32 var80094ad0;
@@ -151,9 +171,10 @@ void faultproc(void *arg0)
osSetIntMask(mask);
// Beta versions have something like this here:
//crashRender(thread, stack1, stack2);
//func00001b1c(true);
#if VERSION == VERSION_NTSC_BETA
crashRender(thread, callstack, &tracelen);
func00001b1c(true);
#endif
}
}
@@ -289,6 +310,252 @@ bool crashIsReturnAddress(u32 *instruction)
return false;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c4f0nb
/* c4f0: 90820000 */ lbu $v0,0x0($a0)
/* c4f4: 00001825 */ or $v1,$zero,$zero
/* c4f8: 24840001 */ addiu $a0,$a0,0x1
/* c4fc: 10400009 */ beqz $v0,.NB0000c524
/* c500: 00000000 */ sll $zero,$zero,0x0
/* c504: 24630001 */ addiu $v1,$v1,0x1
.NB0000c508:
/* c508: 28610100 */ slti $at,$v1,0x100
/* c50c: 10200005 */ beqz $at,.NB0000c524
/* c510: 00000000 */ sll $zero,$zero,0x0
/* c514: 90820000 */ lbu $v0,0x0($a0)
/* c518: 24840001 */ addiu $a0,$a0,0x1
/* c51c: 5440fffa */ bnezl $v0,.NB0000c508
/* c520: 24630001 */ addiu $v1,$v1,0x1
.NB0000c524:
/* c524: 03e00008 */ jr $ra
/* c528: 00601025 */ or $v0,$v1,$zero
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c52cnb
/* c52c: 27bdffe0 */ addiu $sp,$sp,-32
/* c530: afa40020 */ sw $a0,0x20($sp)
/* c534: afbf0014 */ sw $ra,0x14($sp)
/* c538: 3c048009 */ lui $a0,0x8009
/* c53c: 24847118 */ addiu $a0,$a0,0x7118
/* c540: 8fa50020 */ lw $a1,0x20($sp)
/* c544: 0c003664 */ jal 0xd990
/* c548: 24060060 */ addiu $a2,$zero,0x60
/* c54c: 3c0e8009 */ lui $t6,0x8009
/* c550: 8dce7118 */ lw $t6,0x7118($t6)
/* c554: 3c028009 */ lui $v0,0x8009
/* c558: 3c018009 */ lui $at,0x8009
/* c55c: 3c0f8009 */ lui $t7,0x8009
/* c560: 24427110 */ addiu $v0,$v0,0x7110
/* c564: 25e4711c */ addiu $a0,$t7,0x711c
/* c568: ac2e710c */ sw $t6,0x710c($at)
/* c56c: 0c00313c */ jal 0xc4f0
/* c570: ac440000 */ sw $a0,0x0($v0)
/* c574: 3c048009 */ lui $a0,0x8009
/* c578: 8c847110 */ lw $a0,0x7110($a0)
/* c57c: 3c018009 */ lui $at,0x8009
/* c580: 0044c021 */ addu $t8,$v0,$a0
/* c584: 27190001 */ addiu $t9,$t8,0x1
/* c588: 0c00313c */ jal 0xc4f0
/* c58c: ac397114 */ sw $t9,0x7114($at)
/* c590: 3c048009 */ lui $a0,0x8009
/* c594: 8c847114 */ lw $a0,0x7114($a0)
/* c598: 0c00313c */ jal 0xc4f0
/* c59c: afa20018 */ sw $v0,0x18($sp)
/* c5a0: 8fa80020 */ lw $t0,0x20($sp)
/* c5a4: 8faa0018 */ lw $t2,0x18($sp)
/* c5a8: 8fbf0014 */ lw $ra,0x14($sp)
/* c5ac: 00484821 */ addu $t1,$v0,$t0
/* c5b0: 012a1821 */ addu $v1,$t1,$t2
/* c5b4: 24630006 */ addiu $v1,$v1,0x6
/* c5b8: 306b0003 */ andi $t3,$v1,0x3
/* c5bc: 11600003 */ beqz $t3,.NB0000c5cc
/* c5c0: 00602025 */ or $a0,$v1,$zero
/* c5c4: 34640003 */ ori $a0,$v1,0x3
/* c5c8: 24840001 */ addiu $a0,$a0,0x1
.NB0000c5cc:
/* c5cc: 00801025 */ or $v0,$a0,$zero
/* c5d0: 03e00008 */ jr $ra
/* c5d4: 27bd0020 */ addiu $sp,$sp,0x20
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c5d8nb
/* c5d8: 27bdffd8 */ addiu $sp,$sp,-40
/* c5dc: afb30020 */ sw $s3,0x20($sp)
/* c5e0: afb2001c */ sw $s2,0x1c($sp)
/* c5e4: 3c0200e0 */ lui $v0,0xe0
/* c5e8: 34530004 */ ori $s3,$v0,0x4
/* c5ec: afb10018 */ sw $s1,0x18($sp)
/* c5f0: afb00014 */ sw $s0,0x14($sp)
/* c5f4: 3c128009 */ lui $s2,0x8009
/* c5f8: 00808825 */ or $s1,$a0,$zero
/* c5fc: afbf0024 */ sw $ra,0x24($sp)
/* c600: 02608025 */ or $s0,$s3,$zero
/* c604: 2652710c */ addiu $s2,$s2,0x710c
.NB0000c608:
/* c608: 0c00314b */ jal 0xc52c
/* c60c: 02002025 */ or $a0,$s0,$zero
/* c610: 8e430000 */ lw $v1,0x0($s2)
/* c614: 0223082b */ sltu $at,$s1,$v1
/* c618: 14200007 */ bnez $at,.NB0000c638
/* c61c: 00000000 */ sll $zero,$zero,0x0
/* c620: 14600003 */ bnez $v1,.NB0000c630
/* c624: 02009825 */ or $s3,$s0,$zero
/* c628: 10000006 */ beqz $zero,.NB0000c644
/* c62c: 00001025 */ or $v0,$zero,$zero
.NB0000c630:
/* c630: 1000fff5 */ beqz $zero,.NB0000c608
/* c634: 00408025 */ or $s0,$v0,$zero
.NB0000c638:
/* c638: 0c00314b */ jal 0xc52c
/* c63c: 02602025 */ or $a0,$s3,$zero
/* c640: 24020001 */ addiu $v0,$zero,0x1
.NB0000c644:
/* c644: 8fbf0024 */ lw $ra,0x24($sp)
/* c648: 8fb00014 */ lw $s0,0x14($sp)
/* c64c: 8fb10018 */ lw $s1,0x18($sp)
/* c650: 8fb2001c */ lw $s2,0x1c($sp)
/* c654: 8fb30020 */ lw $s3,0x20($sp)
/* c658: 03e00008 */ jr $ra
/* c65c: 27bd0028 */ addiu $sp,$sp,0x28
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c660nb
/* c660: 27bdffe8 */ addiu $sp,$sp,-24
/* c664: afbf0014 */ sw $ra,0x14($sp)
/* c668: 0c00314b */ jal 0xc52c
/* c66c: 3c0400e0 */ lui $a0,0xe0
/* c670: 3c028009 */ lui $v0,0x8009
/* c674: 8c42710c */ lw $v0,0x710c($v0)
/* c678: 8fbf0014 */ lw $ra,0x14($sp)
/* c67c: 3c018264 */ lui $at,0x8264
/* c680: 342175be */ ori $at,$at,0x75be
/* c684: 00417026 */ xor $t6,$v0,$at
/* c688: 2dc20001 */ sltiu $v0,$t6,0x1
/* c68c: 03e00008 */ jr $ra
/* c690: 27bd0018 */ addiu $sp,$sp,0x18
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c694nb
/* c694: 3c078009 */ lui $a3,0x8009
/* c698: 8ce77110 */ lw $a3,0x7110($a3)
/* c69c: 27bdffe8 */ addiu $sp,$sp,-24
/* c6a0: afbf0014 */ sw $ra,0x14($sp)
/* c6a4: 00002825 */ or $a1,$zero,$zero
/* c6a8: 00001025 */ or $v0,$zero,$zero
/* c6ac: 24060004 */ addiu $a2,$zero,0x4
/* c6b0: 00e01825 */ or $v1,$a3,$zero
.NB0000c6b4:
/* c6b4: 90640000 */ lbu $a0,0x0($v1)
/* c6b8: 24420001 */ addiu $v0,$v0,0x1
/* c6bc: 28810021 */ slti $at,$a0,0x21
/* c6c0: 14200004 */ bnez $at,.NB0000c6d4
/* c6c4: 28810080 */ slti $at,$a0,0x80
/* c6c8: 10200002 */ beqz $at,.NB0000c6d4
/* c6cc: 00000000 */ sll $zero,$zero,0x0
/* c6d0: 24a50001 */ addiu $a1,$a1,0x1
.NB0000c6d4:
/* c6d4: 1446fff7 */ bne $v0,$a2,.NB0000c6b4
/* c6d8: 24630001 */ addiu $v1,$v1,0x1
/* c6dc: 14a60007 */ bne $a1,$a2,.NB0000c6fc
/* c6e0: 3c047005 */ lui $a0,0x7005
/* c6e4: 3c047005 */ lui $a0,0x7005
/* c6e8: 24843fd0 */ addiu $a0,$a0,0x3fd0
/* c6ec: 0c00c47d */ jal 0x311f4
/* c6f0: 00e02825 */ or $a1,$a3,$zero
/* c6f4: 10000004 */ beqz $zero,.NB0000c708
/* c6f8: 8fbf0014 */ lw $ra,0x14($sp)
.NB0000c6fc:
/* c6fc: 0c00c47d */ jal 0x311f4
/* c700: 24843fd8 */ addiu $a0,$a0,0x3fd8
/* c704: 8fbf0014 */ lw $ra,0x14($sp)
.NB0000c708:
/* c708: 27bd0018 */ addiu $sp,$sp,0x18
/* c70c: 03e00008 */ jr $ra
/* c710: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c714nb
/* c714: 3c078009 */ lui $a3,0x8009
/* c718: 8ce77114 */ lw $a3,0x7114($a3)
/* c71c: 27bdffe8 */ addiu $sp,$sp,-24
/* c720: afbf0014 */ sw $ra,0x14($sp)
/* c724: 00002825 */ or $a1,$zero,$zero
/* c728: 00001025 */ or $v0,$zero,$zero
/* c72c: 24060004 */ addiu $a2,$zero,0x4
/* c730: 00e01825 */ or $v1,$a3,$zero
.NB0000c734:
/* c734: 90640000 */ lbu $a0,0x0($v1)
/* c738: 24420001 */ addiu $v0,$v0,0x1
/* c73c: 28810021 */ slti $at,$a0,0x21
/* c740: 14200004 */ bnez $at,.NB0000c754
/* c744: 28810080 */ slti $at,$a0,0x80
/* c748: 10200002 */ beqz $at,.NB0000c754
/* c74c: 00000000 */ sll $zero,$zero,0x0
/* c750: 24a50001 */ addiu $a1,$a1,0x1
.NB0000c754:
/* c754: 1446fff7 */ bne $v0,$a2,.NB0000c734
/* c758: 24630001 */ addiu $v1,$v1,0x1
/* c75c: 14a60007 */ bne $a1,$a2,.NB0000c77c
/* c760: 3c047005 */ lui $a0,0x7005
/* c764: 3c047005 */ lui $a0,0x7005
/* c768: 24843fdc */ addiu $a0,$a0,0x3fdc
/* c76c: 0c00c47d */ jal 0x311f4
/* c770: 00e02825 */ or $a1,$a3,$zero
/* c774: 10000004 */ beqz $zero,.NB0000c788
/* c778: 8fbf0014 */ lw $ra,0x14($sp)
.NB0000c77c:
/* c77c: 0c00c47d */ jal 0x311f4
/* c780: 24843fe4 */ addiu $a0,$a0,0x3fe4
/* c784: 8fbf0014 */ lw $ra,0x14($sp)
.NB0000c788:
/* c788: 27bd0018 */ addiu $sp,$sp,0x18
/* c78c: 03e00008 */ jr $ra
/* c790: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c794nb
/* c794: 27bdffe8 */ addiu $sp,$sp,-24
/* c798: afbf0014 */ sw $ra,0x14($sp)
/* c79c: 3c047005 */ lui $a0,0x7005
/* c7a0: 3c058009 */ lui $a1,0x8009
/* c7a4: 8ca5710c */ lw $a1,0x710c($a1)
/* c7a8: 0c00c47d */ jal 0x311f4
/* c7ac: 24843fe8 */ addiu $a0,$a0,0x3fe8
/* c7b0: 8fbf0014 */ lw $ra,0x14($sp)
/* c7b4: 27bd0018 */ addiu $sp,$sp,0x18
/* c7b8: 03e00008 */ jr $ra
/* c7bc: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000c7c0nb
/* c7c0: 3c028009 */ lui $v0,0x8009
/* c7c4: 03e00008 */ jr $ra
/* c7c8: 8c42710c */ lw $v0,0x710c($v0)
);
#endif
u32 crashGetStackEnd(u32 sp, s32 tid)
{
u32 start;
@@ -367,6 +634,7 @@ void crashPrint3Floats(s32 index, f32 value1, f32 value2, f32 value3)
crashPrint("\n");
}
#if VERSION >= VERSION_NTSC_1_0
u32 crashRender(OSThread *thread, u32 *callstack, s32 *tracelen)
{
s32 i;
@@ -489,6 +757,432 @@ u32 crashRender(OSThread *thread, u32 *callstack, s32 *tracelen)
return 0;
}
#else
GLOBAL_ASM(
glabel crashRender
/* ca5c: 27bdff08 */ addiu $sp,$sp,-248
/* ca60: afa400f8 */ sw $a0,0xf8($sp)
/* ca64: afbf003c */ sw $ra,0x3c($sp)
/* ca68: afb40038 */ sw $s4,0x38($sp)
/* ca6c: 3c047005 */ lui $a0,0x7005
/* ca70: 00c0a025 */ or $s4,$a2,$zero
/* ca74: afb30034 */ sw $s3,0x34($sp)
/* ca78: afb20030 */ sw $s2,0x30($sp)
/* ca7c: afb1002c */ sw $s1,0x2c($sp)
/* ca80: afb00028 */ sw $s0,0x28($sp)
/* ca84: afa500fc */ sw $a1,0xfc($sp)
/* ca88: 0c00c47d */ jal 0x311f4
/* ca8c: 24844050 */ addiu $a0,$a0,0x4050
/* ca90: 8fa200f8 */ lw $v0,0xf8($sp)
/* ca94: 24530020 */ addiu $s3,$v0,0x20
/* ca98: 8e6400d4 */ lw $a0,0xd4($s3)
/* ca9c: 0c0031f3 */ jal 0xc7cc
/* caa0: 8c450014 */ lw $a1,0x14($v0)
/* caa4: 8e6700e4 */ lw $a3,0xe4($s3)
/* caa8: 2401ffff */ addiu $at,$zero,-1
/* caac: 3c047005 */ lui $a0,0x7005
/* cab0: 00e1c824 */ and $t9,$a3,$at
/* cab4: 00409025 */ or $s2,$v0,$zero
/* cab8: 03203825 */ or $a3,$t9,$zero
/* cabc: 2484405c */ addiu $a0,$a0,0x405c
/* cac0: 0c00c47d */ jal 0x311f4
/* cac4: 00003025 */ or $a2,$zero,$zero
/* cac8: 8e7000d4 */ lw $s0,0xd4($s3)
/* cacc: 0212082b */ sltu $at,$s0,$s2
/* cad0: 1020000c */ beqz $at,.NB0000cb04
/* cad4: 3c117005 */ lui $s1,0x7005
/* cad8: 26314078 */ addiu $s1,$s1,0x4078
.NB0000cadc:
/* cadc: 0c00311e */ jal 0xc478
/* cae0: 8e040000 */ lw $a0,0x0($s0)
/* cae4: 10400003 */ beqz $v0,.NB0000caf4
/* cae8: 02202025 */ or $a0,$s1,$zero
/* caec: 0c00c47d */ jal 0x311f4
/* caf0: 8e050000 */ lw $a1,0x0($s0)
.NB0000caf4:
/* caf4: 26100004 */ addiu $s0,$s0,0x4
/* caf8: 0212082b */ sltu $at,$s0,$s2
/* cafc: 1420fff7 */ bnez $at,.NB0000cadc
/* cb00: 00000000 */ sll $zero,$zero,0x0
.NB0000cb04:
/* cb04: 3c047005 */ lui $a0,0x7005
/* cb08: 0c00c47d */ jal 0x311f4
/* cb0c: 24844080 */ addiu $a0,$a0,0x4080
/* cb10: 3c047005 */ lui $a0,0x7005
/* cb14: 0c00c47d */ jal 0x311f4
/* cb18: 24844084 */ addiu $a0,$a0,0x4084
/* cb1c: 00002025 */ or $a0,$zero,$zero
/* cb20: 8e650114 */ lw $a1,0x114($s3)
/* cb24: 0c003265 */ jal 0xc994
/* cb28: 8e66011c */ lw $a2,0x11c($s3)
/* cb2c: 24040002 */ addiu $a0,$zero,0x2
/* cb30: 8e650124 */ lw $a1,0x124($s3)
/* cb34: 8e66012c */ lw $a2,0x12c($s3)
/* cb38: 0c00327a */ jal 0xc9e8
/* cb3c: 8e670134 */ lw $a3,0x134($s3)
/* cb40: 24040005 */ addiu $a0,$zero,0x5
/* cb44: 8e65013c */ lw $a1,0x13c($s3)
/* cb48: 8e660144 */ lw $a2,0x144($s3)
/* cb4c: 0c00327a */ jal 0xc9e8
/* cb50: 8e67014c */ lw $a3,0x14c($s3)
/* cb54: 24040008 */ addiu $a0,$zero,0x8
/* cb58: 8e650154 */ lw $a1,0x154($s3)
/* cb5c: 8e66015c */ lw $a2,0x15c($s3)
/* cb60: 0c00327a */ jal 0xc9e8
/* cb64: 8e670164 */ lw $a3,0x164($s3)
/* cb68: 2404000b */ addiu $a0,$zero,0xb
/* cb6c: 8e65016c */ lw $a1,0x16c($s3)
/* cb70: 8e660174 */ lw $a2,0x174($s3)
/* cb74: 0c00327a */ jal 0xc9e8
/* cb78: 8e67017c */ lw $a3,0x17c($s3)
/* cb7c: 2404000e */ addiu $a0,$zero,0xe
/* cb80: 8e650184 */ lw $a1,0x184($s3)
/* cb84: 8e66018c */ lw $a2,0x18c($s3)
/* cb88: 0c00327a */ jal 0xc9e8
/* cb8c: 8e670194 */ lw $a3,0x194($s3)
/* cb90: 24040011 */ addiu $a0,$zero,0x11
/* cb94: 8e65019c */ lw $a1,0x19c($s3)
/* cb98: 8e6601a4 */ lw $a2,0x1a4($s3)
/* cb9c: 0c00327a */ jal 0xc9e8
/* cba0: 8e6701ac */ lw $a3,0x1ac($s3)
/* cba4: 24040014 */ addiu $a0,$zero,0x14
/* cba8: 8e6501b4 */ lw $a1,0x1b4($s3)
/* cbac: 8e6601bc */ lw $a2,0x1bc($s3)
/* cbb0: 0c00327a */ jal 0xc9e8
/* cbb4: 8e6701c4 */ lw $a3,0x1c4($s3)
/* cbb8: 24040017 */ addiu $a0,$zero,0x17
/* cbbc: 8e6501cc */ lw $a1,0x1cc($s3)
/* cbc0: 8e6601d4 */ lw $a2,0x1d4($s3)
/* cbc4: 0c00327a */ jal 0xc9e8
/* cbc8: 8e6701dc */ lw $a3,0x1dc($s3)
/* cbcc: 2404001a */ addiu $a0,$zero,0x1a
/* cbd0: 8e6501e4 */ lw $a1,0x1e4($s3)
/* cbd4: 8e6601ec */ lw $a2,0x1ec($s3)
/* cbd8: 0c00327a */ jal 0xc9e8
/* cbdc: 8e6701f4 */ lw $a3,0x1f4($s3)
/* cbe0: 2404001d */ addiu $a0,$zero,0x1d
/* cbe4: 8e6501fc */ lw $a1,0x1fc($s3)
/* cbe8: 8e660204 */ lw $a2,0x204($s3)
/* cbec: 0c00327a */ jal 0xc9e8
/* cbf0: 8e67020c */ lw $a3,0x20c($s3)
/* cbf4: 8e6a0008 */ lw $t2,0x8($s3)
/* cbf8: 8e6b000c */ lw $t3,0xc($s3)
/* cbfc: 8e660000 */ lw $a2,0x0($s3)
/* cc00: 8e670004 */ lw $a3,0x4($s3)
/* cc04: afaa0010 */ sw $t2,0x10($sp)
/* cc08: afab0014 */ sw $t3,0x14($sp)
/* cc0c: 8e6d0014 */ lw $t5,0x14($s3)
/* cc10: 8e6c0010 */ lw $t4,0x10($s3)
/* cc14: 3c047005 */ lui $a0,0x7005
/* cc18: 2484409c */ addiu $a0,$a0,0x409c
/* cc1c: afad001c */ sw $t5,0x1c($sp)
/* cc20: 0c00c47d */ jal 0x311f4
/* cc24: afac0018 */ sw $t4,0x18($sp)
/* cc28: 8e6e0020 */ lw $t6,0x20($s3)
/* cc2c: 8e6f0024 */ lw $t7,0x24($s3)
/* cc30: 8e660018 */ lw $a2,0x18($s3)
/* cc34: 8e67001c */ lw $a3,0x1c($s3)
/* cc38: afae0010 */ sw $t6,0x10($sp)
/* cc3c: afaf0014 */ sw $t7,0x14($sp)
/* cc40: 8e79002c */ lw $t9,0x2c($s3)
/* cc44: 8e780028 */ lw $t8,0x28($s3)
/* cc48: 3c047005 */ lui $a0,0x7005
/* cc4c: 248440c4 */ addiu $a0,$a0,0x40c4
/* cc50: afb9001c */ sw $t9,0x1c($sp)
/* cc54: 0c00c47d */ jal 0x311f4
/* cc58: afb80018 */ sw $t8,0x18($sp)
/* cc5c: 8e680038 */ lw $t0,0x38($s3)
/* cc60: 8e69003c */ lw $t1,0x3c($s3)
/* cc64: 8e660030 */ lw $a2,0x30($s3)
/* cc68: 8e670034 */ lw $a3,0x34($s3)
/* cc6c: afa80010 */ sw $t0,0x10($sp)
/* cc70: afa90014 */ sw $t1,0x14($sp)
/* cc74: 8e6b0044 */ lw $t3,0x44($s3)
/* cc78: 8e6a0040 */ lw $t2,0x40($s3)
/* cc7c: 3c047005 */ lui $a0,0x7005
/* cc80: 248440ec */ addiu $a0,$a0,0x40ec
/* cc84: afab001c */ sw $t3,0x1c($sp)
/* cc88: 0c00c47d */ jal 0x311f4
/* cc8c: afaa0018 */ sw $t2,0x18($sp)
/* cc90: 8e6c0050 */ lw $t4,0x50($s3)
/* cc94: 8e6d0054 */ lw $t5,0x54($s3)
/* cc98: 8e660048 */ lw $a2,0x48($s3)
/* cc9c: 8e67004c */ lw $a3,0x4c($s3)
/* cca0: afac0010 */ sw $t4,0x10($sp)
/* cca4: afad0014 */ sw $t5,0x14($sp)
/* cca8: 8e6f005c */ lw $t7,0x5c($s3)
/* ccac: 8e6e0058 */ lw $t6,0x58($s3)
/* ccb0: 3c047005 */ lui $a0,0x7005
/* ccb4: 24844114 */ addiu $a0,$a0,0x4114
/* ccb8: afaf001c */ sw $t7,0x1c($sp)
/* ccbc: 0c00c47d */ jal 0x311f4
/* ccc0: afae0018 */ sw $t6,0x18($sp)
/* ccc4: 8e780068 */ lw $t8,0x68($s3)
/* ccc8: 8e79006c */ lw $t9,0x6c($s3)
/* cccc: 8e660060 */ lw $a2,0x60($s3)
/* ccd0: 8e670064 */ lw $a3,0x64($s3)
/* ccd4: afb80010 */ sw $t8,0x10($sp)
/* ccd8: afb90014 */ sw $t9,0x14($sp)
/* ccdc: 8e690074 */ lw $t1,0x74($s3)
/* cce0: 8e680070 */ lw $t0,0x70($s3)
/* cce4: 3c047005 */ lui $a0,0x7005
/* cce8: 2484413c */ addiu $a0,$a0,0x413c
/* ccec: afa9001c */ sw $t1,0x1c($sp)
/* ccf0: 0c00c47d */ jal 0x311f4
/* ccf4: afa80018 */ sw $t0,0x18($sp)
/* ccf8: 8e6a0080 */ lw $t2,0x80($s3)
/* ccfc: 8e6b0084 */ lw $t3,0x84($s3)
/* cd00: 8e660078 */ lw $a2,0x78($s3)
/* cd04: 8e67007c */ lw $a3,0x7c($s3)
/* cd08: afaa0010 */ sw $t2,0x10($sp)
/* cd0c: afab0014 */ sw $t3,0x14($sp)
/* cd10: 8e6d008c */ lw $t5,0x8c($s3)
/* cd14: 8e6c0088 */ lw $t4,0x88($s3)
/* cd18: 3c047005 */ lui $a0,0x7005
/* cd1c: 24844164 */ addiu $a0,$a0,0x4164
/* cd20: afad001c */ sw $t5,0x1c($sp)
/* cd24: 0c00c47d */ jal 0x311f4
/* cd28: afac0018 */ sw $t4,0x18($sp)
/* cd2c: 8e6e0098 */ lw $t6,0x98($s3)
/* cd30: 8e6f009c */ lw $t7,0x9c($s3)
/* cd34: 8e660090 */ lw $a2,0x90($s3)
/* cd38: 8e670094 */ lw $a3,0x94($s3)
/* cd3c: afae0010 */ sw $t6,0x10($sp)
/* cd40: afaf0014 */ sw $t7,0x14($sp)
/* cd44: 8e7900a4 */ lw $t9,0xa4($s3)
/* cd48: 8e7800a0 */ lw $t8,0xa0($s3)
/* cd4c: 3c047005 */ lui $a0,0x7005
/* cd50: 2484418c */ addiu $a0,$a0,0x418c
/* cd54: afb9001c */ sw $t9,0x1c($sp)
/* cd58: 0c00c47d */ jal 0x311f4
/* cd5c: afb80018 */ sw $t8,0x18($sp)
/* cd60: 8e6800b0 */ lw $t0,0xb0($s3)
/* cd64: 8e6900b4 */ lw $t1,0xb4($s3)
/* cd68: 8e6600a8 */ lw $a2,0xa8($s3)
/* cd6c: 8e6700ac */ lw $a3,0xac($s3)
/* cd70: afa80010 */ sw $t0,0x10($sp)
/* cd74: afa90014 */ sw $t1,0x14($sp)
/* cd78: 8e6b00bc */ lw $t3,0xbc($s3)
/* cd7c: 8e6a00b8 */ lw $t2,0xb8($s3)
/* cd80: 3c047005 */ lui $a0,0x7005
/* cd84: 248441b4 */ addiu $a0,$a0,0x41b4
/* cd88: afab001c */ sw $t3,0x1c($sp)
/* cd8c: 0c00c47d */ jal 0x311f4
/* cd90: afaa0018 */ sw $t2,0x18($sp)
/* cd94: 8e6c00c8 */ lw $t4,0xc8($s3)
/* cd98: 8e6d00cc */ lw $t5,0xcc($s3)
/* cd9c: 8e6600c0 */ lw $a2,0xc0($s3)
/* cda0: 8e6700c4 */ lw $a3,0xc4($s3)
/* cda4: afac0010 */ sw $t4,0x10($sp)
/* cda8: afad0014 */ sw $t5,0x14($sp)
/* cdac: 8e6f00d4 */ lw $t7,0xd4($s3)
/* cdb0: 8e6e00d0 */ lw $t6,0xd0($s3)
/* cdb4: 3c047005 */ lui $a0,0x7005
/* cdb8: 248441dc */ addiu $a0,$a0,0x41dc
/* cdbc: afaf001c */ sw $t7,0x1c($sp)
/* cdc0: 0c00c47d */ jal 0x311f4
/* cdc4: afae0018 */ sw $t6,0x18($sp)
/* cdc8: 8e7800e0 */ lw $t8,0xe0($s3)
/* cdcc: 8e7900e4 */ lw $t9,0xe4($s3)
/* cdd0: 3c047005 */ lui $a0,0x7005
/* cdd4: 8e6600d8 */ lw $a2,0xd8($s3)
/* cdd8: 8e6700dc */ lw $a3,0xdc($s3)
/* cddc: 24844204 */ addiu $a0,$a0,0x4204
/* cde0: afb80010 */ sw $t8,0x10($sp)
/* cde4: 0c00c47d */ jal 0x311f4
/* cde8: afb90014 */ sw $t9,0x14($sp)
/* cdec: 8fa800f8 */ lw $t0,0xf8($sp)
/* cdf0: 8e69010c */ lw $t1,0x10c($s3)
/* cdf4: 8e6600fc */ lw $a2,0xfc($s3)
/* cdf8: 8e670100 */ lw $a3,0x100($s3)
/* cdfc: 8d050014 */ lw $a1,0x14($t0)
/* ce00: afa90010 */ sw $t1,0x10($sp)
/* ce04: 8e6a0104 */ lw $t2,0x104($s3)
/* ce08: 3c047005 */ lui $a0,0x7005
/* ce0c: 24844220 */ addiu $a0,$a0,0x4220
/* ce10: afaa0014 */ sw $t2,0x14($sp)
/* ce14: 8e6b00f8 */ lw $t3,0xf8($s3)
/* ce18: 0c00c47d */ jal 0x311f4
/* ce1c: afab0018 */ sw $t3,0x18($sp)
/* ce20: 8e6500fc */ lw $a1,0xfc($s3)
/* ce24: 3c047005 */ lui $a0,0x7005
/* ce28: 24844258 */ addiu $a0,$a0,0x4258
/* ce2c: 8cac0008 */ lw $t4,0x8($a1)
/* ce30: 8ca60000 */ lw $a2,0x0($a1)
/* ce34: 8ca70004 */ lw $a3,0x4($a1)
/* ce38: afac0010 */ sw $t4,0x10($sp)
/* ce3c: 8cad000c */ lw $t5,0xc($a1)
/* ce40: 00a01025 */ or $v0,$a1,$zero
/* ce44: 0c00c47d */ jal 0x311f4
/* ce48: afad0014 */ sw $t5,0x14($sp)
/* ce4c: 3c057005 */ lui $a1,0x7005
/* ce50: 3c068006 */ lui $a2,0x8006
/* ce54: 24c6ed5c */ addiu $a2,$a2,-4772
/* ce58: 24a5427c */ addiu $a1,$a1,0x427c
/* ce5c: 0c00342d */ jal 0xd0b4
/* ce60: 8e640100 */ lw $a0,0x100($s3)
/* ce64: 3c047005 */ lui $a0,0x7005
/* ce68: 0c00c47d */ jal 0x311f4
/* ce6c: 24844284 */ addiu $a0,$a0,0x4284
/* ce70: 3c057005 */ lui $a1,0x7005
/* ce74: 3c068006 */ lui $a2,0x8006
/* ce78: 24c6f020 */ addiu $a2,$a2,-4064
/* ce7c: 24a54288 */ addiu $a1,$a1,0x4288
/* ce80: 0c00342d */ jal 0xd0b4
/* ce84: 8e64010c */ lw $a0,0x10c($s3)
/* ce88: 3c047005 */ lui $a0,0x7005
/* ce8c: 0c00c47d */ jal 0x311f4
/* ce90: 24844290 */ addiu $a0,$a0,0x4290
/* ce94: 8e6400d4 */ lw $a0,0xd4($s3)
/* ce98: 8fb800f8 */ lw $t8,0xf8($sp)
/* ce9c: 00009025 */ or $s2,$zero,$zero
/* cea0: 00808825 */ or $s1,$a0,$zero
/* cea4: 0c0031f3 */ jal 0xc7cc
/* cea8: 8f050014 */ lw $a1,0x14($t8)
/* ceac: 8fb900f8 */ lw $t9,0xf8($sp)
/* ceb0: afa20060 */ sw $v0,0x60($sp)
/* ceb4: 02202025 */ or $a0,$s1,$zero
/* ceb8: 0c003212 */ jal 0xc848
/* cebc: 8f250014 */ lw $a1,0x14($t9)
/* cec0: afa20064 */ sw $v0,0x64($sp)
/* cec4: 8e7000fc */ lw $s0,0xfc($s3)
/* cec8: 3c047005 */ lui $a0,0x7005
/* cecc: ae800000 */ sw $zero,0x0($s4)
/* ced0: 0c00c47d */ jal 0x311f4
/* ced4: 24844294 */ addiu $a0,$a0,0x4294
.NB0000ced8:
/* ced8: 3c057000 */ lui $a1,0x7000
/* cedc: 24a51050 */ addiu $a1,$a1,0x1050
/* cee0: 02002025 */ or $a0,$s0,$zero
/* cee4: 02203025 */ or $a2,$s1,$zero
/* cee8: 0c0030d4 */ jal 0xc350
/* ceec: 27a7006c */ addiu $a3,$sp,0x6c
/* cef0: 3c047005 */ lui $a0,0x7005
/* cef4: 00408825 */ or $s1,$v0,$zero
/* cef8: 2484429c */ addiu $a0,$a0,0x429c
/* cefc: 0c00c47d */ jal 0x311f4
/* cf00: 02002825 */ or $a1,$s0,$zero
/* cf04: 8e890000 */ lw $t1,0x0($s4)
/* cf08: 8fa800fc */ lw $t0,0xfc($sp)
/* cf0c: 24010004 */ addiu $at,$zero,0x4
/* cf10: 00095080 */ sll $t2,$t1,0x2
/* cf14: 010a5821 */ addu $t3,$t0,$t2
/* cf18: ad700000 */ sw $s0,0x0($t3)
/* cf1c: 8e8c0000 */ lw $t4,0x0($s4)
/* cf20: 3c047005 */ lui $a0,0x7005
/* cf24: 258d0001 */ addiu $t5,$t4,0x1
/* cf28: 16410003 */ bne $s2,$at,.NB0000cf38
/* cf2c: ae8d0000 */ sw $t5,0x0($s4)
/* cf30: 0c00c47d */ jal 0x311f4
/* cf34: 248442a4 */ addiu $a0,$a0,0x42a4
.NB0000cf38:
/* cf38: 16200002 */ bnez $s1,.NB0000cf44
/* cf3c: 8fb800e8 */ lw $t8,0xe8($sp)
/* cf40: 8e7100d4 */ lw $s1,0xd4($s3)
.NB0000cf44:
/* cf44: 17000003 */ bnez $t8,.NB0000cf54
/* cf48: 8faa0064 */ lw $t2,0x64($sp)
/* cf4c: 10000003 */ beqz $zero,.NB0000cf5c
/* cf50: 8e7000e4 */ lw $s0,0xe4($s3)
.NB0000cf54:
/* cf54: 8fb900e8 */ lw $t9,0xe8($sp)
/* cf58: 8f300000 */ lw $s0,0x0($t9)
.NB0000cf5c:
/* cf5c: 022a082b */ sltu $at,$s1,$t2
/* cf60: 1420000a */ bnez $at,.NB0000cf8c
/* cf64: 8fa30060 */ lw $v1,0x60($sp)
/* cf68: 0223082b */ sltu $at,$s1,$v1
/* cf6c: 10200007 */ beqz $at,.NB0000cf8c
/* cf70: 262b0010 */ addiu $t3,$s1,0x10
/* cf74: 11630005 */ beq $t3,$v1,.NB0000cf8c
/* cf78: 2a420009 */ slti $v0,$s2,0x9
/* cf7c: 12000003 */ beqz $s0,.NB0000cf8c
/* cf80: 00000000 */ sll $zero,$zero,0x0
/* cf84: 1440ffd4 */ bnez $v0,.NB0000ced8
/* cf88: 26520001 */ addiu $s2,$s2,0x1
.NB0000cf8c:
/* cf8c: 3c0d8006 */ lui $t5,0x8006
/* cf90: 91aded50 */ lbu $t5,-0x12b0($t5)
/* cf94: 240c001f */ addiu $t4,$zero,0x1f
/* cf98: 3c018006 */ lui $at,0x8006
/* cf9c: 11a00024 */ beqz $t5,.NB0000d030
/* cfa0: a42ced58 */ sh $t4,-0x12a8($at)
/* cfa4: 3c058006 */ lui $a1,0x8006
/* cfa8: 24a5ed54 */ addiu $a1,$a1,-4780
/* cfac: 3c028009 */ lui $v0,0x8009
/* cfb0: a4a00000 */ sh $zero,0x0($a1)
/* cfb4: 24424e70 */ addiu $v0,$v0,0x4e70
/* cfb8: 00001825 */ or $v1,$zero,$zero
/* cfbc: 24040047 */ addiu $a0,$zero,0x47
.NB0000cfc0:
/* cfc0: 904e0000 */ lbu $t6,0x0($v0)
/* cfc4: 51c00005 */ beqzl $t6,.NB0000cfdc
/* cfc8: 240f0047 */ addiu $t7,$zero,0x47
/* cfcc: 24630001 */ addiu $v1,$v1,0x1
/* cfd0: 1464fffb */ bne $v1,$a0,.NB0000cfc0
/* cfd4: 24420001 */ addiu $v0,$v0,0x1
/* cfd8: 240f0047 */ addiu $t7,$zero,0x47
.NB0000cfdc:
/* cfdc: 01e3c023 */ subu $t8,$t7,$v1
/* cfe0: 07010003 */ bgez $t8,.NB0000cff0
/* cfe4: 00184043 */ sra $t0,$t8,0x1
/* cfe8: 27010001 */ addiu $at,$t8,0x1
/* cfec: 00014043 */ sra $t0,$at,0x1
.NB0000cff0:
/* cff0: a4a80000 */ sh $t0,0x0($a1)
/* cff4: 18600020 */ blez $v1,.NB0000d078
/* cff8: 00008025 */ or $s0,$zero,$zero
/* cffc: 3c028009 */ lui $v0,0x8009
/* d000: 24424e70 */ addiu $v0,$v0,0x4e70
.NB0000d004:
/* d004: 90440000 */ lbu $a0,0x0($v0)
/* d008: afa20048 */ sw $v0,0x48($sp)
/* d00c: 0c003481 */ jal 0xd204
/* d010: afa30050 */ sw $v1,0x50($sp)
/* d014: 8fa30050 */ lw $v1,0x50($sp)
/* d018: 8fa20048 */ lw $v0,0x48($sp)
/* d01c: 26100001 */ addiu $s0,$s0,0x1
/* d020: 1603fff8 */ bne $s0,$v1,.NB0000d004
/* d024: 24420001 */ addiu $v0,$v0,0x1
/* d028: 10000013 */ beqz $zero,.NB0000d078
/* d02c: 00000000 */ sll $zero,$zero,0x0
.NB0000d030:
/* d030: 3c058006 */ lui $a1,0x8006
/* d034: 24a5ed54 */ addiu $a1,$a1,-4780
/* d038: 24090020 */ addiu $t1,$zero,0x20
/* d03c: a4a90000 */ sh $t1,0x0($a1)
/* d040: 0c003481 */ jal 0xd204
/* d044: 24040043 */ addiu $a0,$zero,0x43
/* d048: 0c003481 */ jal 0xd204
/* d04c: 24040052 */ addiu $a0,$zero,0x52
/* d050: 0c003481 */ jal 0xd204
/* d054: 24040041 */ addiu $a0,$zero,0x41
/* d058: 0c003481 */ jal 0xd204
/* d05c: 24040053 */ addiu $a0,$zero,0x53
/* d060: 0c003481 */ jal 0xd204
/* d064: 24040048 */ addiu $a0,$zero,0x48
/* d068: 0c003481 */ jal 0xd204
/* d06c: 24040045 */ addiu $a0,$zero,0x45
/* d070: 0c003481 */ jal 0xd204
/* d074: 24040044 */ addiu $a0,$zero,0x44
.NB0000d078:
/* d078: 3c047005 */ lui $a0,0x7005
/* d07c: 0c00c47d */ jal 0x311f4
/* d080: 248442b0 */ addiu $a0,$a0,0x42b0
/* d084: 3c047005 */ lui $a0,0x7005
/* d088: 0c00c47d */ jal 0x311f4
/* d08c: 248442b4 */ addiu $a0,$a0,0x42b4
/* d090: 8fbf003c */ lw $ra,0x3c($sp)
/* d094: 8fb00028 */ lw $s0,0x28($sp)
/* d098: 8fb1002c */ lw $s1,0x2c($sp)
/* d09c: 8fb20030 */ lw $s2,0x30($sp)
/* d0a0: 8fb30034 */ lw $s3,0x34($sp)
/* d0a4: 8fb40038 */ lw $s4,0x38($sp)
/* d0a8: 27bd00f8 */ addiu $sp,$sp,0xf8
/* d0ac: 03e00008 */ jr $ra
/* d0b0: 00001025 */ or $v0,$zero,$zero
);
#endif
void crashPrintDescription(u32 mask, char *label, struct crashdescription *description)
{
@@ -583,6 +1277,7 @@ void crashScroll(s32 numlines)
}
}
#if VERSION >= VERSION_NTSC_1_0
void func0000cdc8(s32 x, s32 y, char c)
{
s32 i;
@@ -650,7 +1345,103 @@ void func0000cdc8(s32 x, s32 y, char c)
}
}
}
#else
GLOBAL_ASM(
glabel func0000cdc8
/* d398: 27bdffe8 */ addiu $sp,$sp,-24
/* d39c: afbf0014 */ sw $ra,0x14($sp)
/* d3a0: afa40018 */ sw $a0,0x18($sp)
/* d3a4: afa5001c */ sw $a1,0x1c($sp)
/* d3a8: 0c002f77 */ jal 0xbddc
/* d3ac: afa60020 */ sw $a2,0x20($sp)
/* d3b0: 93a30023 */ lbu $v1,0x23($sp)
/* d3b4: 8fa50018 */ lw $a1,0x18($sp)
/* d3b8: 8fa6001c */ lw $a2,0x1c($sp)
/* d3bc: 54600003 */ bnezl $v1,.NB0000d3cc
/* d3c0: 28610020 */ slti $at,$v1,0x20
/* d3c4: 24030020 */ addiu $v1,$zero,0x20
/* d3c8: 28610020 */ slti $at,$v1,0x20
.NB0000d3cc:
/* d3cc: 1420003d */ bnez $at,.NB0000d4c4
/* d3d0: 2861007f */ slti $at,$v1,0x7f
/* d3d4: 1020003b */ beqz $at,.NB0000d4c4
/* d3d8: 38490280 */ xori $t1,$v0,0x280
/* d3dc: 2d290001 */ sltiu $t1,$t1,0x1
/* d3e0: 1120000a */ beqz $t1,.NB0000d40c
/* d3e4: 00006025 */ or $t4,$zero,$zero
/* d3e8: 00c20019 */ multu $a2,$v0
/* d3ec: 3c188006 */ lui $t8,0x8006
/* d3f0: 8f18f2b4 */ lw $t8,-0xd4c($t8)
/* d3f4: 00057880 */ sll $t7,$a1,0x2
/* d3f8: 01f8c821 */ addu $t9,$t7,$t8
/* d3fc: 00007012 */ mflo $t6
/* d400: 000e7840 */ sll $t7,$t6,0x1
/* d404: 10000009 */ beqz $zero,.NB0000d42c
/* d408: 032f2021 */ addu $a0,$t9,$t7
.NB0000d40c:
/* d40c: 00c20019 */ multu $a2,$v0
/* d410: 3c0e8006 */ lui $t6,0x8006
/* d414: 8dcef2b4 */ lw $t6,-0xd4c($t6)
/* d418: 0005c040 */ sll $t8,$a1,0x1
/* d41c: 030ec821 */ addu $t9,$t8,$t6
/* d420: 00007812 */ mflo $t7
/* d424: 000fc040 */ sll $t8,$t7,0x1
/* d428: 03382021 */ addu $a0,$t9,$t8
.NB0000d42c:
/* d42c: 00037080 */ sll $t6,$v1,0x2
/* d430: 3c068006 */ lui $a2,0x8006
/* d434: 00ce3021 */ addu $a2,$a2,$t6
/* d438: 8cc6f0b8 */ lw $a2,-0xf48($a2)
/* d43c: 00026840 */ sll $t5,$v0,0x1
/* d440: 241f0007 */ addiu $ra,$zero,0x7
/* d444: 240b0004 */ addiu $t3,$zero,0x4
/* d448: 3c0a8000 */ lui $t2,0x8000
/* d44c: 24080001 */ addiu $t0,$zero,0x1
/* d450: 3407ffff */ dli $a3,0xffff
/* d454: 00002825 */ or $a1,$zero,$zero
.NB0000d458:
/* d458: 00ca1824 */ and $v1,$a2,$t2
/* d45c: 10600003 */ beqz $v1,.NB0000d46c
/* d460: 00067840 */ sll $t7,$a2,0x1
/* d464: 10000002 */ beqz $zero,.NB0000d470
/* d468: a4870000 */ sh $a3,0x0($a0)
.NB0000d46c:
/* d46c: a4880000 */ sh $t0,0x0($a0)
.NB0000d470:
/* d470: 11200006 */ beqz $t1,.NB0000d48c
/* d474: 24a50001 */ addiu $a1,$a1,0x1
/* d478: 50600004 */ beqzl $v1,.NB0000d48c
/* d47c: a4880002 */ sh $t0,0x2($a0)
/* d480: 10000002 */ beqz $zero,.NB0000d48c
/* d484: a4870002 */ sh $a3,0x2($a0)
/* d488: a4880002 */ sh $t0,0x2($a0)
.NB0000d48c:
/* d48c: 11200002 */ beqz $t1,.NB0000d498
/* d490: 24840002 */ addiu $a0,$a0,0x2
/* d494: 24840002 */ addiu $a0,$a0,0x2
.NB0000d498:
/* d498: 14abffef */ bne $a1,$t3,.NB0000d458
/* d49c: 01e03025 */ or $a2,$t7,$zero
/* d4a0: 11200004 */ beqz $t1,.NB0000d4b4
/* d4a4: 258c0001 */ addiu $t4,$t4,0x1
/* d4a8: 008d2021 */ addu $a0,$a0,$t5
/* d4ac: 10000003 */ beqz $zero,.NB0000d4bc
/* d4b0: 2484fff0 */ addiu $a0,$a0,-16
.NB0000d4b4:
/* d4b4: 008d2021 */ addu $a0,$a0,$t5
/* d4b8: 2484fff8 */ addiu $a0,$a0,-8
.NB0000d4bc:
/* d4bc: 559fffe6 */ bnel $t4,$ra,.NB0000d458
/* d4c0: 00002825 */ or $a1,$zero,$zero
.NB0000d4c4:
/* d4c4: 8fbf0014 */ lw $ra,0x14($sp)
/* d4c8: 27bd0018 */ addiu $sp,$sp,0x18
/* d4cc: 03e00008 */ jr $ra
/* d4d0: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void crashReset(void)
{
g_CrashCharBuffer = NULL;
@@ -667,6 +1458,38 @@ void crashReset(void)
}
}
}
#else
GLOBAL_ASM(
glabel crashReset
/* d4d4: 3c048006 */ lui $a0,0x8006
/* d4d8: 3c0e8009 */ lui $t6,0x8009
/* d4dc: 2484f134 */ addiu $a0,$a0,-3788
/* d4e0: 25ce7178 */ addiu $t6,$t6,0x7178
/* d4e4: 11c00012 */ beqz $t6,.NB0000d530
/* d4e8: ac8e0000 */ sw $t6,0x0($a0)
/* d4ec: 00001025 */ or $v0,$zero,$zero
/* d4f0: 24060020 */ addiu $a2,$zero,0x20
/* d4f4: 24050047 */ addiu $a1,$zero,0x47
/* d4f8: 00001825 */ or $v1,$zero,$zero
.NB0000d4fc:
/* d4fc: 0002c8c0 */ sll $t9,$v0,0x3
/* d500: 8c980000 */ lw $t8,0x0($a0)
/* d504: 0322c821 */ addu $t9,$t9,$v0
/* d508: 0019c8c0 */ sll $t9,$t9,0x3
/* d50c: 0322c823 */ subu $t9,$t9,$v0
/* d510: 03194021 */ addu $t0,$t8,$t9
/* d514: 01034821 */ addu $t1,$t0,$v1
/* d518: 24630001 */ addiu $v1,$v1,0x1
/* d51c: 1465fff7 */ bne $v1,$a1,.NB0000d4fc
/* d520: a1200000 */ sb $zero,0x0($t1)
/* d524: 24420001 */ addiu $v0,$v0,0x1
/* d528: 5446fff4 */ bnel $v0,$a2,.NB0000d4fc
/* d52c: 00001825 */ or $v1,$zero,$zero
.NB0000d530:
/* d530: 03e00008 */ jr $ra
/* d534: 00000000 */ sll $zero,$zero,0x0
);
#endif
void func0000cf54(u16 *fb)
{
@@ -688,3 +1511,31 @@ void func0000cf54(u16 *fb)
}
}
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0000d678nb
/* d678: 00000000 */ sll $zero,$zero,0x0
/* d67c: 00000000 */ sll $zero,$zero,0x0
/* d680: 03e02025 */ or $a0,$ra,$zero
/* d684: 2402ffff */ addiu $v0,$zero,-1
/* d688: 8c880000 */ lw $t0,0x0($a0)
/* d68c: 240a27bd */ addiu $t2,$zero,0x27bd
/* d690: 00084c02 */ srl $t1,$t0,0x10
/* d694: 112a000a */ beq $t1,$t2,.NB0000d6c0
/* d698: 00000000 */ sll $zero,$zero,0x0
/* d69c: 340aafbf */ dli $t2,0xafbf
/* d6a0: 512a0004 */ beql $t1,$t2,.NB0000d6b4
/* d6a4: 00085400 */ sll $t2,$t0,0x10
/* d6a8: 080035a2 */ j 0xd688
/* d6ac: 2484fffc */ addiu $a0,$a0,-4
/* d6b0: 00085400 */ sll $t2,$t0,0x10
.NB0000d6b4:
/* d6b4: 000a5403 */ sra $t2,$t2,0x10
/* d6b8: 015d5020 */ add $t2,$t2,$sp
/* d6bc: 8d420000 */ lw $v0,0x0($t2)
.NB0000d6c0:
/* d6c0: 03e00008 */ jr $ra
/* d6c4: 00000000 */ sll $zero,$zero,0x0
);
#endif
+1471 -1
View File
File diff suppressed because it is too large Load Diff
+707 -1
View File
@@ -410,6 +410,7 @@ glabel func00011884
/* 118f0: 24020001 */ addiu $v0,$zero,0x1
);
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func000118f4
/* 118f4: afa50004 */ sw $a1,0x4($sp)
@@ -419,7 +420,9 @@ glabel func000118f4
/* 11904: 03e00008 */ jr $ra
/* 11908: ac2e40e0 */ sw $t6,%lo(var800840e0)($at)
);
#endif
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func0001190c
.late_rodata
@@ -751,6 +754,339 @@ glabel var70053fec
/* 11d7c: 03e00008 */ jr $ra
/* 11d80: 27bd0048 */ addiu $sp,$sp,0x48
);
#else
GLOBAL_ASM(
glabel func0001190c
.late_rodata
glabel var70053fdc
.word func0001190c+0x324
glabel var70053fe0
.word func0001190c+0x338
glabel var70053fe4
.word func0001190c+0x34c
glabel var70053fe8
.word func0001190c+0x360
glabel var70053fec
.word func0001190c+0x370
.text
/* 11cb4: 27bdffa8 */ addiu $sp,$sp,-88
/* 11cb8: 3c0e8006 */ lui $t6,0x8006
/* 11cbc: 8dcef6c0 */ lw $t6,-0x940($t6)
/* 11cc0: afbf0034 */ sw $ra,0x34($sp)
/* 11cc4: afb60030 */ sw $s6,0x30($sp)
/* 11cc8: afb5002c */ sw $s5,0x2c($sp)
/* 11ccc: afb40028 */ sw $s4,0x28($sp)
/* 11cd0: afb30024 */ sw $s3,0x24($sp)
/* 11cd4: afb20020 */ sw $s2,0x20($sp)
/* 11cd8: afb1001c */ sw $s1,0x1c($sp)
/* 11cdc: 15c00106 */ bnez $t6,.NB000120f8
/* 11ce0: afb00018 */ sw $s0,0x18($sp)
/* 11ce4: 3c168008 */ lui $s6,0x8008
/* 11ce8: 3c10800b */ lui $s0,0x800b
/* 11cec: 3c157005 */ lui $s5,0x7005
/* 11cf0: 3c138009 */ lui $s3,0x8009
/* 11cf4: 26d66944 */ addiu $s6,$s6,0x6944
/* 11cf8: 26737e58 */ addiu $s3,$s3,0x7e58
/* 11cfc: 26b553b0 */ addiu $s5,$s5,0x53b0
/* 11d00: 2610f2e8 */ addiu $s0,$s0,-3352
/* 11d04: 00008825 */ or $s1,$zero,$zero
/* 11d08: 24140108 */ addiu $s4,$zero,0x108
/* 11d0c: 24120001 */ addiu $s2,$zero,0x1
.NB00011d10:
/* 11d10: 8e0f0004 */ lw $t7,0x4($s0)
/* 11d14: 55e00023 */ bnezl $t7,.NB00011da4
/* 11d18: 26310001 */ addiu $s1,$s1,0x1
/* 11d1c: 02340019 */ multu $s1,$s4
/* 11d20: 0000c012 */ mflo $t8
/* 11d24: 02781821 */ addu $v1,$s3,$t8
/* 11d28: 8c6400f8 */ lw $a0,0xf8($v1)
/* 11d2c: 0c00e838 */ jal 0x3a0e0
/* 11d30: afa30038 */ sw $v1,0x38($sp)
/* 11d34: 1452001a */ bne $v0,$s2,.NB00011da0
/* 11d38: 8fa30038 */ lw $v1,0x38($sp)
/* 11d3c: 8c6400f8 */ lw $a0,0xf8($v1)
/* 11d40: 8e080000 */ lw $t0,0x0($s0)
/* 11d44: 8c990060 */ lw $t9,0x60($a0)
/* 11d48: 02a84821 */ addu $t1,$s5,$t0
/* 11d4c: 912a0000 */ lbu $t2,0x0($t1)
/* 11d50: 9322000d */ lbu $v0,0xd($t9)
/* 11d54: 0142082a */ slt $at,$t2,$v0
/* 11d58: 54200009 */ bnezl $at,.NB00011d80
/* 11d5c: 8e0b000c */ lw $t3,0xc($s0)
/* 11d60: 0c00ecd0 */ jal 0x3b340
/* 11d64: 00000000 */ sll $zero,$zero,0x0
/* 11d68: ae000000 */ sw $zero,0x0($s0)
/* 11d6c: ae000004 */ sw $zero,0x4($s0)
/* 11d70: ae000008 */ sw $zero,0x8($s0)
/* 11d74: 1000000a */ beqz $zero,.NB00011da0
/* 11d78: ae00000c */ sw $zero,0xc($s0)
/* 11d7c: 8e0b000c */ lw $t3,0xc($s0)
.NB00011d80:
/* 11d80: 544b0008 */ bnel $v0,$t3,.NB00011da4
/* 11d84: 26310001 */ addiu $s1,$s1,0x1
/* 11d88: 0c00ecd0 */ jal 0x3b340
/* 11d8c: 00000000 */ sll $zero,$zero,0x0
/* 11d90: ae000000 */ sw $zero,0x0($s0)
/* 11d94: ae000004 */ sw $zero,0x4($s0)
/* 11d98: ae000008 */ sw $zero,0x8($s0)
/* 11d9c: ae00000c */ sw $zero,0xc($s0)
.NB00011da0:
/* 11da0: 26310001 */ addiu $s1,$s1,0x1
.NB00011da4:
/* 11da4: 2a210003 */ slti $at,$s1,0x3
/* 11da8: 1420ffd9 */ bnez $at,.NB00011d10
/* 11dac: 26100010 */ addiu $s0,$s0,0x10
/* 11db0: 8ec60000 */ lw $a2,0x0($s6)
/* 11db4: 3c0d800b */ lui $t5,0x800b
/* 11db8: 25adee88 */ addiu $t5,$t5,-4472
/* 11dbc: 24d1ffff */ addiu $s1,$a2,-1
/* 11dc0: 0620003f */ bltz $s1,.NB00011ec0
/* 11dc4: 001160c0 */ sll $t4,$s1,0x3
/* 11dc8: 01916023 */ subu $t4,$t4,$s1
/* 11dcc: 000c6080 */ sll $t4,$t4,0x2
/* 11dd0: 3c06800b */ lui $a2,0x800b
/* 11dd4: 24c6ee88 */ addiu $a2,$a2,-4472
/* 11dd8: 018d2821 */ addu $a1,$t4,$t5
/* 11ddc: 24140004 */ addiu $s4,$zero,0x4
/* 11de0: 24130002 */ addiu $s3,$zero,0x2
/* 11de4: 24100003 */ addiu $s0,$zero,0x3
.NB00011de8:
/* 11de8: 8cae0000 */ lw $t6,0x0($a1)
/* 11dec: 2627ffff */ addiu $a3,$s1,-1
/* 11df0: 15c00003 */ bnez $t6,.NB00011e00
/* 11df4: 00000000 */ sll $zero,$zero,0x0
/* 11df8: 1000002d */ beqz $zero,.NB00011eb0
/* 11dfc: 2627ffff */ addiu $a3,$s1,-1
.NB00011e00:
/* 11e00: 04e0002b */ bltz $a3,.NB00011eb0
/* 11e04: 00e01025 */ or $v0,$a3,$zero
/* 11e08: 000278c0 */ sll $t7,$v0,0x3
/* 11e0c: 01e27823 */ subu $t7,$t7,$v0
/* 11e10: 3c18800b */ lui $t8,0x800b
/* 11e14: 2718ee88 */ addiu $t8,$t8,-4472
/* 11e18: 000f7880 */ sll $t7,$t7,0x2
/* 11e1c: 01f82021 */ addu $a0,$t7,$t8
/* 11e20: 94a30012 */ lhu $v1,0x12($a1)
.NB00011e24:
/* 11e24: 56830004 */ bnel $s4,$v1,.NB00011e38
/* 11e28: 8c820000 */ lw $v0,0x0($a0)
/* 11e2c: 1000001c */ beqz $zero,.NB00011ea0
/* 11e30: ac800000 */ sw $zero,0x0($a0)
/* 11e34: 8c820000 */ lw $v0,0x0($a0)
.NB00011e38:
/* 11e38: 5040001a */ beqzl $v0,.NB00011ea4
/* 11e3c: 2484ffe4 */ addiu $a0,$a0,-28
/* 11e40: 8cb90000 */ lw $t9,0x0($a1)
/* 11e44: 57220017 */ bnel $t9,$v0,.NB00011ea4
/* 11e48: 2484ffe4 */ addiu $a0,$a0,-28
/* 11e4c: 5072000a */ beql $v1,$s2,.NB00011e78
/* 11e50: 94820012 */ lhu $v0,0x12($a0)
/* 11e54: 10730005 */ beq $v1,$s3,.NB00011e6c
/* 11e58: 00000000 */ sll $zero,$zero,0x0
/* 11e5c: 5070000d */ beql $v1,$s0,.NB00011e94
/* 11e60: 94880012 */ lhu $t0,0x12($a0)
/* 11e64: 1000000f */ beqz $zero,.NB00011ea4
/* 11e68: 2484ffe4 */ addiu $a0,$a0,-28
.NB00011e6c:
/* 11e6c: 1000000c */ beqz $zero,.NB00011ea0
/* 11e70: ac800000 */ sw $zero,0x0($a0)
/* 11e74: 94820012 */ lhu $v0,0x12($a0)
.NB00011e78:
/* 11e78: 10520003 */ beq $v0,$s2,.NB00011e88
/* 11e7c: 00000000 */ sll $zero,$zero,0x0
/* 11e80: 54500008 */ bnel $v0,$s0,.NB00011ea4
/* 11e84: 2484ffe4 */ addiu $a0,$a0,-28
.NB00011e88:
/* 11e88: 10000005 */ beqz $zero,.NB00011ea0
/* 11e8c: ac800000 */ sw $zero,0x0($a0)
/* 11e90: 94880012 */ lhu $t0,0x12($a0)
.NB00011e94:
/* 11e94: 56080003 */ bnel $s0,$t0,.NB00011ea4
/* 11e98: 2484ffe4 */ addiu $a0,$a0,-28
/* 11e9c: ac800000 */ sw $zero,0x0($a0)
.NB00011ea0:
/* 11ea0: 2484ffe4 */ addiu $a0,$a0,-28
.NB00011ea4:
/* 11ea4: 0086082b */ sltu $at,$a0,$a2
/* 11ea8: 5020ffde */ beqzl $at,.NB00011e24
/* 11eac: 94a30012 */ lhu $v1,0x12($a1)
.NB00011eb0:
/* 11eb0: 00e08825 */ or $s1,$a3,$zero
/* 11eb4: 04e1ffcc */ bgez $a3,.NB00011de8
/* 11eb8: 24a5ffe4 */ addiu $a1,$a1,-28
/* 11ebc: 8ec60000 */ lw $a2,0x0($s6)
.NB00011ec0:
/* 11ec0: 24100003 */ addiu $s0,$zero,0x3
/* 11ec4: 24130002 */ addiu $s3,$zero,0x2
/* 11ec8: 24140004 */ addiu $s4,$zero,0x4
/* 11ecc: 00008825 */ or $s1,$zero,$zero
/* 11ed0: 18c00020 */ blez $a2,.NB00011f54
/* 11ed4: 00001025 */ or $v0,$zero,$zero
/* 11ed8: 3c05800b */ lui $a1,0x800b
/* 11edc: 3c15800b */ lui $s5,0x800b
/* 11ee0: 26b5ee88 */ addiu $s5,$s5,-4472
/* 11ee4: 24a5ee88 */ addiu $a1,$a1,-4472
/* 11ee8: 2403001c */ addiu $v1,$zero,0x1c
.NB00011eec:
/* 11eec: 8ca90000 */ lw $t1,0x0($a1)
/* 11ef0: 26310001 */ addiu $s1,$s1,0x1
/* 11ef4: 51200015 */ beqzl $t1,.NB00011f4c
/* 11ef8: 0226082a */ slt $at,$s1,$a2
/* 11efc: 00430019 */ multu $v0,$v1
/* 11f00: 8ca10000 */ lw $at,0x0($a1)
/* 11f04: 24420001 */ addiu $v0,$v0,0x1
/* 11f08: 00005012 */ mflo $t2
/* 11f0c: 02aa5821 */ addu $t3,$s5,$t2
/* 11f10: ad610000 */ sw $at,0x0($t3)
/* 11f14: 8cad0004 */ lw $t5,0x4($a1)
/* 11f18: ad6d0004 */ sw $t5,0x4($t3)
/* 11f1c: 8ca10008 */ lw $at,0x8($a1)
/* 11f20: ad610008 */ sw $at,0x8($t3)
/* 11f24: 8cad000c */ lw $t5,0xc($a1)
/* 11f28: ad6d000c */ sw $t5,0xc($t3)
/* 11f2c: 8ca10010 */ lw $at,0x10($a1)
/* 11f30: ad610010 */ sw $at,0x10($t3)
/* 11f34: 8cad0014 */ lw $t5,0x14($a1)
/* 11f38: ad6d0014 */ sw $t5,0x14($t3)
/* 11f3c: 8ca10018 */ lw $at,0x18($a1)
/* 11f40: ad610018 */ sw $at,0x18($t3)
/* 11f44: 8ec60000 */ lw $a2,0x0($s6)
/* 11f48: 0226082a */ slt $at,$s1,$a2
.NB00011f4c:
/* 11f4c: 1420ffe7 */ bnez $at,.NB00011eec
/* 11f50: 24a5001c */ addiu $a1,$a1,0x1c
.NB00011f54:
/* 11f54: aec20000 */ sw $v0,0x0($s6)
/* 11f58: 3c038008 */ lui $v1,0x8008
/* 11f5c: 8c63695c */ lw $v1,0x695c($v1)
/* 11f60: 3c15800b */ lui $s5,0x800b
/* 11f64: 26b5ee88 */ addiu $s5,$s5,-4472
/* 11f68: 10600006 */ beqz $v1,.NB00011f84
/* 11f6c: 3c0e8008 */ lui $t6,0x8008
/* 11f70: 3c0f800a */ lui $t7,0x800a
/* 11f74: 8defe700 */ lw $t7,-0x1900($t7)
/* 11f78: 8dce6960 */ lw $t6,0x6960($t6)
/* 11f7c: 01cf082a */ slt $at,$t6,$t7
/* 11f80: 10200052 */ beqz $at,.NB000120cc
.NB00011f84:
/* 11f84: 3c018008 */ lui $at,0x8008
/* 11f88: ac236960 */ sw $v1,0x6960($at)
/* 11f8c: 8ed80000 */ lw $t8,0x0($s6)
/* 11f90: 1300004e */ beqz $t8,.NB000120cc
.NB00011f94:
/* 11f94: 3c19800b */ lui $t9,0x800b
/* 11f98: 9739eea0 */ lhu $t9,-0x1160($t9)
/* 11f9c: 3c01800b */ lui $at,0x800b
/* 11fa0: 3c02800b */ lui $v0,0x800b
/* 11fa4: 27280001 */ addiu $t0,$t9,0x1
/* 11fa8: a428eea0 */ sh $t0,-0x1160($at)
/* 11fac: 9442ee9a */ lhu $v0,-0x1166($v0)
/* 11fb0: 00002025 */ or $a0,$zero,$zero
/* 11fb4: 00002825 */ or $a1,$zero,$zero
/* 11fb8: 10520009 */ beq $v0,$s2,.NB00011fe0
/* 11fbc: 00000000 */ sll $zero,$zero,0x0
/* 11fc0: 1053000b */ beq $v0,$s3,.NB00011ff0
/* 11fc4: 00002825 */ or $a1,$zero,$zero
/* 11fc8: 1050000d */ beq $v0,$s0,.NB00012000
/* 11fcc: 00002825 */ or $a1,$zero,$zero
/* 11fd0: 1054000f */ beq $v0,$s4,.NB00012010
/* 11fd4: 00000000 */ sll $zero,$zero,0x0
/* 11fd8: 10000010 */ beqz $zero,.NB0001201c
/* 11fdc: 00000000 */ sll $zero,$zero,0x0
.NB00011fe0:
/* 11fe0: 0c0045f8 */ jal 0x117e0
/* 11fe4: 02a02025 */ or $a0,$s5,$zero
/* 11fe8: 1000000c */ beqz $zero,.NB0001201c
/* 11fec: 00402025 */ or $a0,$v0,$zero
.NB00011ff0:
/* 11ff0: 0c0046b0 */ jal 0x11ac0
/* 11ff4: 02a02025 */ or $a0,$s5,$zero
/* 11ff8: 10000008 */ beqz $zero,.NB0001201c
/* 11ffc: 00402025 */ or $a0,$v0,$zero
.NB00012000:
/* 12000: 0c0046d0 */ jal 0x11b40
/* 12004: 02a02025 */ or $a0,$s5,$zero
/* 12008: 10000004 */ beqz $zero,.NB0001201c
/* 1200c: 00402025 */ or $a0,$v0,$zero
.NB00012010:
/* 12010: 0c004711 */ jal 0x11c44
/* 12014: 00002025 */ or $a0,$zero,$zero
/* 12018: 00402025 */ or $a0,$v0,$zero
.NB0001201c:
/* 1201c: 10800024 */ beqz $a0,.NB000120b0
/* 12020: 3c05800b */ lui $a1,0x800b
/* 12024: 8ec90000 */ lw $t1,0x0($s6)
/* 12028: 24a5ee88 */ addiu $a1,$a1,-4472
/* 1202c: 3c0c800b */ lui $t4,0x800b
/* 12030: 252affff */ addiu $t2,$t1,-1
/* 12034: aeca0000 */ sw $t2,0x0($s6)
/* 12038: 19400019 */ blez $t2,.NB000120a0
/* 1203c: 01403025 */ or $a2,$t2,$zero
/* 12040: 000a58c0 */ sll $t3,$t2,0x3
/* 12044: 016a5823 */ subu $t3,$t3,$t2
/* 12048: 000b5880 */ sll $t3,$t3,0x2
/* 1204c: 2582eea4 */ addiu $v0,$t4,-4444
/* 12050: 01621821 */ addu $v1,$t3,$v0
/* 12054: 8c410000 */ lw $at,0x0($v0)
.NB00012058:
/* 12058: 2442001c */ addiu $v0,$v0,0x1c
/* 1205c: 24a5001c */ addiu $a1,$a1,0x1c
/* 12060: aca1ffe4 */ sw $at,-0x1c($a1)
/* 12064: 8c4effe8 */ lw $t6,-0x18($v0)
/* 12068: acaeffe8 */ sw $t6,-0x18($a1)
/* 1206c: 8c41ffec */ lw $at,-0x14($v0)
/* 12070: aca1ffec */ sw $at,-0x14($a1)
/* 12074: 8c4efff0 */ lw $t6,-0x10($v0)
/* 12078: acaefff0 */ sw $t6,-0x10($a1)
/* 1207c: 8c41fff4 */ lw $at,-0xc($v0)
/* 12080: aca1fff4 */ sw $at,-0xc($a1)
/* 12084: 8c4efff8 */ lw $t6,-0x8($v0)
/* 12088: acaefff8 */ sw $t6,-0x8($a1)
/* 1208c: 8c41fffc */ lw $at,-0x4($v0)
/* 12090: aca1fffc */ sw $at,-0x4($a1)
/* 12094: 0043082b */ sltu $at,$v0,$v1
/* 12098: 5420ffef */ bnezl $at,.NB00012058
/* 1209c: 8c410000 */ lw $at,0x0($v0)
.NB000120a0:
/* 120a0: 14930006 */ bne $a0,$s3,.NB000120bc
/* 120a4: 3c038008 */ lui $v1,0x8008
/* 120a8: 10000008 */ beqz $zero,.NB000120cc
/* 120ac: 8c63695c */ lw $v1,0x695c($v1)
.NB000120b0:
/* 120b0: 3c038008 */ lui $v1,0x8008
/* 120b4: 10000005 */ beqz $zero,.NB000120cc
/* 120b8: 8c63695c */ lw $v1,0x695c($v1)
.NB000120bc:
/* 120bc: 14c0ffb5 */ bnez $a2,.NB00011f94
/* 120c0: 00000000 */ sll $zero,$zero,0x0
/* 120c4: 3c038008 */ lui $v1,0x8008
/* 120c8: 8c63695c */ lw $v1,0x695c($v1)
.NB000120cc:
/* 120cc: 10600009 */ beqz $v1,.NB000120f4
/* 120d0: 3c018008 */ lui $at,0x8008
/* 120d4: 3c0f8008 */ lui $t7,0x8008
/* 120d8: 3c18800a */ lui $t8,0x800a
/* 120dc: 8f18e700 */ lw $t8,-0x1900($t8)
/* 120e0: 8def6960 */ lw $t7,0x6960($t7)
/* 120e4: 3c018008 */ lui $at,0x8008
/* 120e8: 01f8c823 */ subu $t9,$t7,$t8
/* 120ec: 10000002 */ beqz $zero,.NB000120f8
/* 120f0: ac396960 */ sw $t9,0x6960($at)
.NB000120f4:
/* 120f4: ac206960 */ sw $zero,0x6960($at)
.NB000120f8:
/* 120f8: 8fbf0034 */ lw $ra,0x34($sp)
/* 120fc: 8fb00018 */ lw $s0,0x18($sp)
/* 12100: 8fb1001c */ lw $s1,0x1c($sp)
/* 12104: 8fb20020 */ lw $s2,0x20($sp)
/* 12108: 8fb30024 */ lw $s3,0x24($sp)
/* 1210c: 8fb40028 */ lw $s4,0x28($sp)
/* 12110: 8fb5002c */ lw $s5,0x2c($sp)
/* 12114: 8fb60030 */ lw $s6,0x30($sp)
/* 12118: 03e00008 */ jr $ra
/* 1211c: 27bd0058 */ addiu $sp,$sp,0x58
);
#endif
#if VERSION >= VERSION_PAL_FINAL
GLOBAL_ASM(
@@ -1056,7 +1392,7 @@ glabel func00011d84
/* 121d0: 03e00008 */ jr $ra
/* 121d4: 27bd0038 */ addiu $sp,$sp,0x38
);
#else
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00011d84
/* 11d84: 3c0e8006 */ lui $t6,%hi(g_Silent)
@@ -1360,4 +1696,374 @@ glabel func00011d84
/* 121d0: 03e00008 */ jr $ra
/* 121d4: 27bd0038 */ addiu $sp,$sp,0x38
);
#else
GLOBAL_ASM(
glabel func00011d84
/* 12120: 3c0e8006 */ lui $t6,0x8006
/* 12124: 8dcef6c0 */ lw $t6,-0x940($t6)
/* 12128: 27bdffd8 */ addiu $sp,$sp,-40
/* 1212c: afbf0014 */ sw $ra,0x14($sp)
/* 12130: 15c000e0 */ bnez $t6,.NB000124b4
/* 12134: afa00020 */ sw $zero,0x20($sp)
/* 12138: 3c038008 */ lui $v1,0x8008
/* 1213c: 24636968 */ addiu $v1,$v1,0x6968
/* 12140: 8c620000 */ lw $v0,0x0($v1)
/* 12144: 3c0a800a */ lui $t2,0x800a
/* 12148: 254ae6c0 */ addiu $t2,$t2,-6464
/* 1214c: 18400044 */ blez $v0,.NB00012260
/* 12150: 00000000 */ sll $zero,$zero,0x0
/* 12154: 8d4f0318 */ lw $t7,0x318($t2)
/* 12158: 3c048008 */ lui $a0,0x8008
/* 1215c: 55e00014 */ bnezl $t7,.NB000121b0
/* 12160: 8d590034 */ lw $t9,0x34($t2)
/* 12164: 8d58029c */ lw $t8,0x29c($t2)
/* 12168: 07020006 */ bltzl $t8,.NB00012184
/* 1216c: 8d4c0298 */ lw $t4,0x298($t2)
/* 12170: 8d5902a0 */ lw $t9,0x2a0($t2)
/* 12174: 8f2b00d8 */ lw $t3,0xd8($t9)
/* 12178: 5160000d */ beqzl $t3,.NB000121b0
/* 1217c: 8d590034 */ lw $t9,0x34($t2)
/* 12180: 8d4c0298 */ lw $t4,0x298($t2)
.NB00012184:
/* 12184: 05800036 */ bltz $t4,.NB00012260
/* 12188: 00000000 */ sll $zero,$zero,0x0
/* 1218c: 8d4d02a0 */ lw $t5,0x2a0($t2)
/* 12190: 8dae00d8 */ lw $t6,0xd8($t5)
/* 12194: 51c00006 */ beqzl $t6,.NB000121b0
/* 12198: 8d590034 */ lw $t9,0x34($t2)
/* 1219c: 8d4f02a4 */ lw $t7,0x2a4($t2)
/* 121a0: 8df800d8 */ lw $t8,0xd8($t7)
/* 121a4: 1700002e */ bnez $t8,.NB00012260
/* 121a8: 00000000 */ sll $zero,$zero,0x0
/* 121ac: 8d590034 */ lw $t9,0x34($t2)
.NB000121b0:
/* 121b0: 24846974 */ addiu $a0,$a0,0x6974
/* 121b4: ac800000 */ sw $zero,0x0($a0)
/* 121b8: 00595823 */ subu $t3,$v0,$t9
/* 121bc: 1d600023 */ bgtz $t3,.NB0001224c
/* 121c0: ac6b0000 */ sw $t3,0x0($v1)
/* 121c4: 0fc5a26c */ jal 0xf1689b0
/* 121c8: 00000000 */ sll $zero,$zero,0x0
/* 121cc: 3c0d8009 */ lui $t5,0x8009
/* 121d0: 8dad99e4 */ lw $t5,-0x661c($t5)
/* 121d4: 3c0e800a */ lui $t6,0x800a
/* 121d8: 11a0001c */ beqz $t5,.NB0001224c
/* 121dc: 00000000 */ sll $zero,$zero,0x0
/* 121e0: 8dcee9d8 */ lw $t6,-0x1628($t6)
/* 121e4: 3c058008 */ lui $a1,0x8008
/* 121e8: 24a5696c */ addiu $a1,$a1,0x696c
/* 121ec: 11c00017 */ beqz $t6,.NB0001224c
/* 121f0: 3c0f8008 */ lui $t7,0x8008
/* 121f4: 8def6970 */ lw $t7,0x6970($t7)
/* 121f8: 8cb80000 */ lw $t8,0x0($a1)
/* 121fc: 24040003 */ addiu $a0,$zero,0x3
/* 12200: 01f8082a */ slt $at,$t7,$t8
/* 12204: 10200011 */ beqz $at,.NB0001224c
/* 12208: 00000000 */ sll $zero,$zero,0x0
/* 1220c: 0fc59fed */ jal 0xf167fb4
/* 12210: aca00000 */ sw $zero,0x0($a1)
/* 12214: 0fc59fed */ jal 0xf167fb4
/* 12218: 24040004 */ addiu $a0,$zero,0x4
/* 1221c: 0fc59fed */ jal 0xf167fb4
/* 12220: 24040001 */ addiu $a0,$zero,0x1
/* 12224: 3c04800b */ lui $a0,0x800b
/* 12228: 0fc5c638 */ jal 0xf1718e0
/* 1222c: 8c84ee80 */ lw $a0,-0x1180($a0)
/* 12230: 0fc59f54 */ jal 0xf167d50
/* 12234: afa20018 */ sw $v0,0x18($sp)
/* 12238: 24040001 */ addiu $a0,$zero,0x1
/* 1223c: 8fa50018 */ lw $a1,0x18($sp)
/* 12240: 24060000 */ addiu $a2,$zero,0x0
/* 12244: 0fc59fcc */ jal 0xf167f30
/* 12248: 3047ffff */ andi $a3,$v0,0xffff
.NB0001224c:
/* 1224c: 3c0a800a */ lui $t2,0x800a
/* 12250: 3c028009 */ lui $v0,0x8009
/* 12254: 8c4299e4 */ lw $v0,-0x661c($v0)
/* 12258: 1000001d */ beqz $zero,.NB000122d0
/* 1225c: 254ae6c0 */ addiu $t2,$t2,-6464
.NB00012260:
/* 12260: 3c028009 */ lui $v0,0x8009
/* 12264: 8c4299e4 */ lw $v0,-0x661c($v0)
/* 12268: 3c0a800a */ lui $t2,0x800a
/* 1226c: 254ae6c0 */ addiu $t2,$t2,-6464
/* 12270: 10400017 */ beqz $v0,.NB000122d0
/* 12274: 00000000 */ sll $zero,$zero,0x0
/* 12278: 8d590318 */ lw $t9,0x318($t2)
/* 1227c: 3c0b8008 */ lui $t3,0x8008
/* 12280: 3c0c8008 */ lui $t4,0x8008
/* 12284: 13200012 */ beqz $t9,.NB000122d0
/* 12288: 00000000 */ sll $zero,$zero,0x0
/* 1228c: 8d6b6970 */ lw $t3,0x6970($t3)
/* 12290: 8d8c696c */ lw $t4,0x696c($t4)
/* 12294: 24040001 */ addiu $a0,$zero,0x1
/* 12298: 3c054000 */ lui $a1,0x4000
/* 1229c: 016c082a */ slt $at,$t3,$t4
/* 122a0: 1020000b */ beqz $at,.NB000122d0
/* 122a4: 24060001 */ addiu $a2,$zero,0x1
/* 122a8: 3c018008 */ lui $at,0x8008
/* 122ac: 0fc5a008 */ jal 0xf168020
/* 122b0: ac20696c */ sw $zero,0x696c($at)
/* 122b4: 240d0078 */ addiu $t5,$zero,0x78
/* 122b8: 3c018008 */ lui $at,0x8008
/* 122bc: 3c028009 */ lui $v0,0x8009
/* 122c0: 3c0a800a */ lui $t2,0x800a
/* 122c4: 254ae6c0 */ addiu $t2,$t2,-6464
/* 122c8: 8c4299e4 */ lw $v0,-0x661c($v0)
/* 122cc: ac2d6974 */ sw $t5,0x6974($at)
.NB000122d0:
/* 122d0: 3c048008 */ lui $a0,0x8008
/* 122d4: 3c058008 */ lui $a1,0x8008
/* 122d8: 24a5696c */ addiu $a1,$a1,0x696c
/* 122dc: 1040001f */ beqz $v0,.NB0001235c
/* 122e0: 24846974 */ addiu $a0,$a0,0x6974
/* 122e4: 8d4e0318 */ lw $t6,0x318($t2)
/* 122e8: 11c0001c */ beqz $t6,.NB0001235c
/* 122ec: 00000000 */ sll $zero,$zero,0x0
/* 122f0: 8d420000 */ lw $v0,0x0($t2)
/* 122f4: 8caf0000 */ lw $t7,0x0($a1)
/* 122f8: 8c830000 */ lw $v1,0x0($a0)
/* 122fc: 01e2c021 */ addu $t8,$t7,$v0
/* 12300: 18600016 */ blez $v1,.NB0001235c
/* 12304: acb80000 */ sw $t8,0x0($a1)
/* 12308: 0062c823 */ subu $t9,$v1,$v0
/* 1230c: 1f200013 */ bgtz $t9,.NB0001235c
/* 12310: ac990000 */ sw $t9,0x0($a0)
/* 12314: 0fc59fed */ jal 0xf167fb4
/* 12318: 24040003 */ addiu $a0,$zero,0x3
/* 1231c: 0fc59fed */ jal 0xf167fb4
/* 12320: 24040004 */ addiu $a0,$zero,0x4
/* 12324: 0fc59fed */ jal 0xf167fb4
/* 12328: 24040001 */ addiu $a0,$zero,0x1
/* 1232c: 3c04800b */ lui $a0,0x800b
/* 12330: 0fc5c638 */ jal 0xf1718e0
/* 12334: 8c84ee80 */ lw $a0,-0x1180($a0)
/* 12338: 0fc59f54 */ jal 0xf167d50
/* 1233c: afa20018 */ sw $v0,0x18($sp)
/* 12340: 24040001 */ addiu $a0,$zero,0x1
/* 12344: 8fa50018 */ lw $a1,0x18($sp)
/* 12348: 24060000 */ addiu $a2,$zero,0x0
/* 1234c: 0fc59fcc */ jal 0xf167f30
/* 12350: 3047ffff */ andi $a3,$v0,0xffff
/* 12354: 3c0a800a */ lui $t2,0x800a
/* 12358: 254ae6c0 */ addiu $t2,$t2,-6464
.NB0001235c:
/* 1235c: 3c06800b */ lui $a2,0x800b
/* 12360: 3c04800b */ lui $a0,0x800b
/* 12364: 3c09800b */ lui $t1,0x800b
/* 12368: 2529f338 */ addiu $t1,$t1,-3272
/* 1236c: 2484f328 */ addiu $a0,$a0,-3288
/* 12370: 24c6f318 */ addiu $a2,$a2,-3304
/* 12374: 8d470034 */ lw $a3,0x34($t2)
/* 12378: 00004025 */ or $t0,$zero,$zero
.NB0001237c:
/* 1237c: 8cc50000 */ lw $a1,0x0($a2)
/* 12380: 54a00005 */ bnezl $a1,.NB00012398
/* 12384: 8c820000 */ lw $v0,0x0($a0)
/* 12388: 8c8c0000 */ lw $t4,0x0($a0)
/* 1238c: 5980001f */ blezl $t4,.NB0001240c
/* 12390: 24840004 */ addiu $a0,$a0,0x4
/* 12394: 8c820000 */ lw $v0,0x0($a0)
.NB00012398:
/* 12398: 3c0d800b */ lui $t5,0x800b
/* 1239c: 25adf338 */ addiu $t5,$t5,-3272
/* 123a0: 0047082a */ slt $at,$v0,$a3
/* 123a4: 14200004 */ bnez $at,.NB000123b8
/* 123a8: 010d1821 */ addu $v1,$t0,$t5
/* 123ac: 00477023 */ subu $t6,$v0,$a3
/* 123b0: 10000002 */ beqz $zero,.NB000123bc
/* 123b4: ac8e0000 */ sw $t6,0x0($a0)
.NB000123b8:
/* 123b8: ac800000 */ sw $zero,0x0($a0)
.NB000123bc:
/* 123bc: 8c620000 */ lw $v0,0x0($v1)
/* 123c0: 10400011 */ beqz $v0,.NB00012408
/* 123c4: 0047082a */ slt $at,$v0,$a3
/* 123c8: 14200003 */ bnez $at,.NB000123d8
/* 123cc: 00477823 */ subu $t7,$v0,$a3
/* 123d0: 10000002 */ beqz $zero,.NB000123dc
/* 123d4: ac6f0000 */ sw $t7,0x0($v1)
.NB000123d8:
/* 123d8: ac600000 */ sw $zero,0x0($v1)
.NB000123dc:
/* 123dc: 8c780000 */ lw $t8,0x0($v1)
/* 123e0: 53000009 */ beqzl $t8,.NB00012408
/* 123e4: acc00000 */ sw $zero,0x0($a2)
/* 123e8: 14a00004 */ bnez $a1,.NB000123fc
/* 123ec: 240b0001 */ addiu $t3,$zero,0x1
/* 123f0: 8c990000 */ lw $t9,0x0($a0)
/* 123f4: 53200005 */ beqzl $t9,.NB0001240c
/* 123f8: 24840004 */ addiu $a0,$a0,0x4
.NB000123fc:
/* 123fc: 10000002 */ beqz $zero,.NB00012408
/* 12400: afab0020 */ sw $t3,0x20($sp)
/* 12404: acc00000 */ sw $zero,0x0($a2)
.NB00012408:
/* 12408: 24840004 */ addiu $a0,$a0,0x4
.NB0001240c:
/* 1240c: 25080004 */ addiu $t0,$t0,0x4
/* 12410: 1489ffda */ bne $a0,$t1,.NB0001237c
/* 12414: 24c60004 */ addiu $a2,$a2,0x4
/* 12418: 10e00013 */ beqz $a3,.NB00012468
/* 1241c: 24040002 */ addiu $a0,$zero,0x2
/* 12420: 0fc59f87 */ jal 0xf167e1c
/* 12424: 24050001 */ addiu $a1,$zero,0x1
/* 12428: 10400008 */ beqz $v0,.NB0001244c
/* 1242c: 8fad0020 */ lw $t5,0x20($sp)
/* 12430: 8fac0020 */ lw $t4,0x20($sp)
/* 12434: 1580000c */ bnez $t4,.NB00012468
/* 12438: 00000000 */ sll $zero,$zero,0x0
/* 1243c: 0fc5a1d1 */ jal 0xf168744
/* 12440: 00000000 */ sll $zero,$zero,0x0
/* 12444: 10000008 */ beqz $zero,.NB00012468
/* 12448: 00000000 */ sll $zero,$zero,0x0
.NB0001244c:
/* 1244c: 11a00006 */ beqz $t5,.NB00012468
/* 12450: 3c0e800a */ lui $t6,0x800a
/* 12454: 8dceeb88 */ lw $t6,-0x1478($t6)
/* 12458: 15c00003 */ bnez $t6,.NB00012468
/* 1245c: 00000000 */ sll $zero,$zero,0x0
/* 12460: 0fc5a1b6 */ jal 0xf1686d8
/* 12464: 00000000 */ sll $zero,$zero,0x0
.NB00012468:
/* 12468: 3c038006 */ lui $v1,0x8006
/* 1246c: 3c0a800a */ lui $t2,0x800a
/* 12470: 254ae6c0 */ addiu $t2,$t2,-6464
/* 12474: 24630670 */ addiu $v1,$v1,0x670
/* 12478: 8c620000 */ lw $v0,0x0($v1)
/* 1247c: 8d470034 */ lw $a3,0x34($t2)
/* 12480: 0047082a */ slt $at,$v0,$a3
/* 12484: 10200008 */ beqz $at,.NB000124a8
/* 12488: 0047c023 */ subu $t8,$v0,$a3
/* 1248c: 0fc5a33b */ jal 0xf168cec
/* 12490: 00000000 */ sll $zero,$zero,0x0
/* 12494: 3c038006 */ lui $v1,0x8006
/* 12498: 24630670 */ addiu $v1,$v1,0x670
/* 1249c: 240f003c */ addiu $t7,$zero,0x3c
/* 124a0: 10000002 */ beqz $zero,.NB000124ac
/* 124a4: ac6f0000 */ sw $t7,0x0($v1)
.NB000124a8:
/* 124a8: ac780000 */ sw $t8,0x0($v1)
.NB000124ac:
/* 124ac: 0c00472d */ jal 0x11cb4
/* 124b0: 00000000 */ sll $zero,$zero,0x0
.NB000124b4:
/* 124b4: 8fbf0014 */ lw $ra,0x14($sp)
/* 124b8: 27bd0028 */ addiu $sp,$sp,0x28
/* 124bc: 03e00008 */ jr $ra
/* 124c0: 00000000 */ sll $zero,$zero,0x0
/* 124c4: 27bdffc8 */ addiu $sp,$sp,-56
/* 124c8: afb30024 */ sw $s3,0x24($sp)
/* 124cc: afb1001c */ sw $s1,0x1c($sp)
/* 124d0: afb60030 */ sw $s6,0x30($sp)
/* 124d4: afb5002c */ sw $s5,0x2c($sp)
/* 124d8: afb40028 */ sw $s4,0x28($sp)
/* 124dc: afb20020 */ sw $s2,0x20($sp)
/* 124e0: afb00018 */ sw $s0,0x18($sp)
/* 124e4: 3c11800b */ lui $s1,0x800b
/* 124e8: 3c138009 */ lui $s3,0x8009
/* 124ec: 00809025 */ or $s2,$a0,$zero
/* 124f0: afbf0034 */ sw $ra,0x34($sp)
/* 124f4: 26737e58 */ addiu $s3,$s3,0x7e58
/* 124f8: 2631f2e8 */ addiu $s1,$s1,-3352
/* 124fc: 00008025 */ or $s0,$zero,$zero
/* 12500: 24140108 */ addiu $s4,$zero,0x108
/* 12504: 24150001 */ addiu $s5,$zero,0x1
/* 12508: 24160003 */ addiu $s6,$zero,0x3
.NB0001250c:
/* 1250c: 8e2e0000 */ lw $t6,0x0($s1)
/* 12510: 564e000b */ bnel $s2,$t6,.NB00012540
/* 12514: 26100001 */ addiu $s0,$s0,0x1
/* 12518: 02140019 */ multu $s0,$s4
/* 1251c: 00007812 */ mflo $t7
/* 12520: 026fc021 */ addu $t8,$s3,$t7
/* 12524: 0c00e838 */ jal 0x3a0e0
/* 12528: 8f0400f8 */ lw $a0,0xf8($t8)
/* 1252c: 54550004 */ bnel $v0,$s5,.NB00012540
/* 12530: 26100001 */ addiu $s0,$s0,0x1
/* 12534: 10000005 */ beqz $zero,.NB0001254c
/* 12538: 24020001 */ addiu $v0,$zero,0x1
/* 1253c: 26100001 */ addiu $s0,$s0,0x1
.NB00012540:
/* 12540: 1616fff2 */ bne $s0,$s6,.NB0001250c
/* 12544: 26310010 */ addiu $s1,$s1,0x10
/* 12548: 00001025 */ or $v0,$zero,$zero
.NB0001254c:
/* 1254c: 8fbf0034 */ lw $ra,0x34($sp)
/* 12550: 8fb00018 */ lw $s0,0x18($sp)
/* 12554: 8fb1001c */ lw $s1,0x1c($sp)
/* 12558: 8fb20020 */ lw $s2,0x20($sp)
/* 1255c: 8fb30024 */ lw $s3,0x24($sp)
/* 12560: 8fb40028 */ lw $s4,0x28($sp)
/* 12564: 8fb5002c */ lw $s5,0x2c($sp)
/* 12568: 8fb60030 */ lw $s6,0x30($sp)
/* 1256c: 03e00008 */ jr $ra
/* 12570: 27bd0038 */ addiu $sp,$sp,0x38
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00012574nb
/* 12574: 308e00ff */ andi $t6,$a0,0xff
/* 12578: 27bdffe0 */ addiu $sp,$sp,-32
/* 1257c: 31cf0001 */ andi $t7,$t6,0x1
/* 12580: afbf0014 */ sw $ra,0x14($sp)
/* 12584: afa40020 */ sw $a0,0x20($sp)
/* 12588: 11e00008 */ beqz $t7,.NB000125ac
/* 1258c: 01c01825 */ or $v1,$t6,$zero
/* 12590: 24040001 */ addiu $a0,$zero,0x1
/* 12594: 0c004931 */ jal 0x124c4
/* 12598: afae001c */ sw $t6,0x1c($sp)
/* 1259c: 14400003 */ bnez $v0,.NB000125ac
/* 125a0: 8fa3001c */ lw $v1,0x1c($sp)
/* 125a4: 10000026 */ beqz $zero,.NB00012640
/* 125a8: 00001025 */ or $v0,$zero,$zero
.NB000125ac:
/* 125ac: 30780002 */ andi $t8,$v1,0x2
/* 125b0: 13000007 */ beqz $t8,.NB000125d0
/* 125b4: 24040002 */ addiu $a0,$zero,0x2
/* 125b8: 0c004931 */ jal 0x124c4
/* 125bc: afa3001c */ sw $v1,0x1c($sp)
/* 125c0: 14400003 */ bnez $v0,.NB000125d0
/* 125c4: 8fa3001c */ lw $v1,0x1c($sp)
/* 125c8: 1000001d */ beqz $zero,.NB00012640
/* 125cc: 00001025 */ or $v0,$zero,$zero
.NB000125d0:
/* 125d0: 30790004 */ andi $t9,$v1,0x4
/* 125d4: 13200007 */ beqz $t9,.NB000125f4
/* 125d8: 24040003 */ addiu $a0,$zero,0x3
/* 125dc: 0c004931 */ jal 0x124c4
/* 125e0: afa3001c */ sw $v1,0x1c($sp)
/* 125e4: 14400003 */ bnez $v0,.NB000125f4
/* 125e8: 8fa3001c */ lw $v1,0x1c($sp)
/* 125ec: 10000014 */ beqz $zero,.NB00012640
/* 125f0: 00001025 */ or $v0,$zero,$zero
.NB000125f4:
/* 125f4: 30680008 */ andi $t0,$v1,0x8
/* 125f8: 11000007 */ beqz $t0,.NB00012618
/* 125fc: 24040004 */ addiu $a0,$zero,0x4
/* 12600: 0c004931 */ jal 0x124c4
/* 12604: afa3001c */ sw $v1,0x1c($sp)
/* 12608: 14400003 */ bnez $v0,.NB00012618
/* 1260c: 8fa3001c */ lw $v1,0x1c($sp)
/* 12610: 1000000b */ beqz $zero,.NB00012640
/* 12614: 00001025 */ or $v0,$zero,$zero
.NB00012618:
/* 12618: 30690010 */ andi $t1,$v1,0x10
/* 1261c: 51200008 */ beqzl $t1,.NB00012640
/* 12620: 24020001 */ addiu $v0,$zero,0x1
/* 12624: 0c004931 */ jal 0x124c4
/* 12628: 24040005 */ addiu $a0,$zero,0x5
/* 1262c: 54400004 */ bnezl $v0,.NB00012640
/* 12630: 24020001 */ addiu $v0,$zero,0x1
/* 12634: 10000002 */ beqz $zero,.NB00012640
/* 12638: 00001025 */ or $v0,$zero,$zero
/* 1263c: 24020001 */ addiu $v0,$zero,0x1
.NB00012640:
/* 12640: 8fbf0014 */ lw $ra,0x14($sp)
/* 12644: 27bd0020 */ addiu $sp,$sp,0x20
/* 12648: 03e00008 */ jr $ra
/* 1264c: 00000000 */ sll $zero,$zero,0x0
);
#endif
+347
View File
@@ -283,6 +283,7 @@ void func00012a0c(void)
// empty
}
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00012a14
/* 12a14: 3c03800a */ lui $v1,%hi(var80099478)
@@ -317,7 +318,43 @@ glabel func00012a14
/* 12a84: 03e00008 */ jr $ra
/* 12a88: ac650010 */ sw $a1,0x10($v1)
);
#else
GLOBAL_ASM(
glabel func00012a14
/* 12fb4: 3c03800a */ lui $v1,0x800a
/* 12fb8: 2463c3f8 */ addiu $v1,$v1,-15368
/* 12fbc: 2406ffff */ addiu $a2,$zero,-1
/* 12fc0: ac6603ec */ sw $a2,0x3ec($v1)
/* 12fc4: ac6603f4 */ sw $a2,0x3f4($v1)
/* 12fc8: 240effff */ addiu $t6,$zero,-1
/* 12fcc: 3c06800a */ lui $a2,0x800a
/* 12fd0: 3c02800a */ lui $v0,0x800a
/* 12fd4: ac600000 */ sw $zero,0x0($v1)
/* 12fd8: ac600004 */ sw $zero,0x4($v1)
/* 12fdc: ac600008 */ sw $zero,0x8($v1)
/* 12fe0: ac6003f0 */ sw $zero,0x3f0($v1)
/* 12fe4: ac6e03f8 */ sw $t6,0x3f8($v1)
/* 12fe8: 2442c404 */ addiu $v0,$v0,-15356
/* 12fec: 24c6c7dc */ addiu $a2,$a2,-14372
.NB00012ff0:
/* 12ff0: 24420008 */ addiu $v0,$v0,0x8
/* 12ff4: 00c2082b */ sltu $at,$a2,$v0
/* 12ff8: ac40fff8 */ sw $zero,-0x8($v0)
/* 12ffc: 1020fffc */ beqz $at,.NB00012ff0
/* 13000: ac40fffc */ sw $zero,-0x4($v0)
/* 13004: 3c02800a */ lui $v0,0x800a
/* 13008: 3c06800a */ lui $a2,0x800a
/* 1300c: 24c6c3f4 */ addiu $a2,$a2,-15372
/* 13010: 2442c3f0 */ addiu $v0,$v0,-15376
/* 13014: ac440000 */ sw $a0,0x0($v0)
/* 13018: ac64000c */ sw $a0,0xc($v1)
/* 1301c: acc50000 */ sw $a1,0x0($a2)
/* 13020: 03e00008 */ jr $ra
/* 13024: ac650010 */ sw $a1,0x10($v1)
);
#endif
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00012a8c
/* 12a8c: 27bdffe8 */ addiu $sp,$sp,-24
@@ -330,7 +367,207 @@ glabel func00012a8c
/* 12aa8: 03e00008 */ jr $ra
/* 12aac: 00000000 */ nop
);
#else
GLOBAL_ASM(
glabel func00012a8c
/* 13028: 27bdff48 */ addiu $sp,$sp,-184
/* 1302c: afbf001c */ sw $ra,0x1c($sp)
/* 13030: 3c04800a */ lui $a0,0x800a
/* 13034: afb00018 */ sw $s0,0x18($sp)
/* 13038: 0c004b24 */ jal 0x12c90
/* 1303c: 2484c3f8 */ addiu $a0,$a0,-15368
/* 13040: 0fc466e4 */ jal 0xf119b90
/* 13044: 00000000 */ sll $zero,$zero,0x0
/* 13048: 104000b1 */ beqz $v0,.NB00013310
/* 1304c: 240400ff */ addiu $a0,$zero,0xff
/* 13050: 240500ff */ addiu $a1,$zero,0xff
/* 13054: 240600ff */ addiu $a2,$zero,0xff
/* 13058: 0c005106 */ jal 0x14418
/* 1305c: 240700ff */ addiu $a3,$zero,0xff
/* 13060: 00002025 */ or $a0,$zero,$zero
/* 13064: 00002825 */ or $a1,$zero,$zero
/* 13068: 00003025 */ or $a2,$zero,$zero
/* 1306c: 0c005115 */ jal 0x14454
/* 13070: 240700ff */ addiu $a3,$zero,0xff
/* 13074: 2404001e */ addiu $a0,$zero,0x1e
/* 13078: 0c0050df */ jal 0x1437c
/* 1307c: 24050001 */ addiu $a1,$zero,0x1
/* 13080: 3c047005 */ lui $a0,0x7005
/* 13084: 0c005175 */ jal 0x145d4
/* 13088: 24845730 */ addiu $a0,$a0,0x5730
/* 1308c: 24100002 */ addiu $s0,$zero,0x2
/* 13090: 02002825 */ or $a1,$s0,$zero
/* 13094: 0c0050df */ jal 0x1437c
/* 13098: 2404001e */ addiu $a0,$zero,0x1e
/* 1309c: 3c047005 */ lui $a0,0x7005
/* 130a0: 0c005175 */ jal 0x145d4
/* 130a4: 2484573c */ addiu $a0,$a0,0x573c
/* 130a8: 26100001 */ addiu $s0,$s0,0x1
/* 130ac: 24040004 */ addiu $a0,$zero,0x4
/* 130b0: 0c004a7c */ jal 0x129f0
/* 130b4: 00002825 */ or $a1,$zero,$zero
/* 130b8: afa200b4 */ sw $v0,0xb4($sp)
/* 130bc: 24040004 */ addiu $a0,$zero,0x4
/* 130c0: 0c004a7c */ jal 0x129f0
/* 130c4: 24050001 */ addiu $a1,$zero,0x1
/* 130c8: 3c057005 */ lui $a1,0x7005
/* 130cc: 24a5574c */ addiu $a1,$a1,0x574c
/* 130d0: 27a4002c */ addiu $a0,$sp,0x2c
/* 130d4: 8fa600b4 */ lw $a2,0xb4($sp)
/* 130d8: 0c004fc1 */ jal 0x13f04
/* 130dc: 00403825 */ or $a3,$v0,$zero
/* 130e0: 2404001f */ addiu $a0,$zero,0x1f
/* 130e4: 0c0050df */ jal 0x1437c
/* 130e8: 02002825 */ or $a1,$s0,$zero
/* 130ec: 0c005175 */ jal 0x145d4
/* 130f0: 27a4002c */ addiu $a0,$sp,0x2c
/* 130f4: 26100001 */ addiu $s0,$s0,0x1
/* 130f8: 24040004 */ addiu $a0,$zero,0x4
/* 130fc: 0c004a91 */ jal 0x12a44
/* 13100: 00002825 */ or $a1,$zero,$zero
/* 13104: afa200b4 */ sw $v0,0xb4($sp)
/* 13108: 24040004 */ addiu $a0,$zero,0x4
/* 1310c: 0c004a91 */ jal 0x12a44
/* 13110: 24050001 */ addiu $a1,$zero,0x1
/* 13114: 3c057005 */ lui $a1,0x7005
/* 13118: 24a55758 */ addiu $a1,$a1,0x5758
/* 1311c: 27a4002c */ addiu $a0,$sp,0x2c
/* 13120: 8fa600b4 */ lw $a2,0xb4($sp)
/* 13124: 0c004fc1 */ jal 0x13f04
/* 13128: 00403825 */ or $a3,$v0,$zero
/* 1312c: 2404001f */ addiu $a0,$zero,0x1f
/* 13130: 0c0050df */ jal 0x1437c
/* 13134: 02002825 */ or $a1,$s0,$zero
/* 13138: 0c005175 */ jal 0x145d4
/* 1313c: 27a4002c */ addiu $a0,$sp,0x2c
/* 13140: 26100001 */ addiu $s0,$s0,0x1
/* 13144: 24040004 */ addiu $a0,$zero,0x4
/* 13148: 0c004a7c */ jal 0x129f0
/* 1314c: 24050001 */ addiu $a1,$zero,0x1
/* 13150: afa20024 */ sw $v0,0x24($sp)
/* 13154: 24040004 */ addiu $a0,$zero,0x4
/* 13158: 0c004a91 */ jal 0x12a44
/* 1315c: 24050001 */ addiu $a1,$zero,0x1
/* 13160: afa20028 */ sw $v0,0x28($sp)
/* 13164: 24040004 */ addiu $a0,$zero,0x4
/* 13168: 0c004a7c */ jal 0x129f0
/* 1316c: 00002825 */ or $a1,$zero,$zero
/* 13170: 8fae0028 */ lw $t6,0x28($sp)
/* 13174: 8faf0024 */ lw $t7,0x24($sp)
/* 13178: 01cfc023 */ subu $t8,$t6,$t7
/* 1317c: 03021823 */ subu $v1,$t8,$v0
/* 13180: 04600008 */ bltz $v1,.NB000131a4
/* 13184: 00603825 */ or $a3,$v1,$zero
/* 13188: 3c057005 */ lui $a1,0x7005
/* 1318c: 24a55764 */ addiu $a1,$a1,0x5764
/* 13190: 27a4002c */ addiu $a0,$sp,0x2c
/* 13194: 0c004fc1 */ jal 0x13f04
/* 13198: 00603025 */ or $a2,$v1,$zero
/* 1319c: 10000007 */ beqz $zero,.NB000131bc
/* 131a0: 2404001f */ addiu $a0,$zero,0x1f
.NB000131a4:
/* 131a4: 3c057005 */ lui $a1,0x7005
/* 131a8: 24a55770 */ addiu $a1,$a1,0x5770
/* 131ac: 27a4002c */ addiu $a0,$sp,0x2c
/* 131b0: 0c004fc1 */ jal 0x13f04
/* 131b4: 00073023 */ negu $a2,$a3
/* 131b8: 2404001f */ addiu $a0,$zero,0x1f
.NB000131bc:
/* 131bc: 0c0050df */ jal 0x1437c
/* 131c0: 02002825 */ or $a1,$s0,$zero
/* 131c4: 0c005175 */ jal 0x145d4
/* 131c8: 27a4002c */ addiu $a0,$sp,0x2c
/* 131cc: 26100001 */ addiu $s0,$s0,0x1
/* 131d0: 02002825 */ or $a1,$s0,$zero
/* 131d4: 0c0050df */ jal 0x1437c
/* 131d8: 2404001e */ addiu $a0,$zero,0x1e
/* 131dc: 3c047005 */ lui $a0,0x7005
/* 131e0: 0c005175 */ jal 0x145d4
/* 131e4: 2484577c */ addiu $a0,$a0,0x577c
/* 131e8: 26100001 */ addiu $s0,$s0,0x1
/* 131ec: 24040006 */ addiu $a0,$zero,0x6
/* 131f0: 0c004a7c */ jal 0x129f0
/* 131f4: 00002825 */ or $a1,$zero,$zero
/* 131f8: afa200b4 */ sw $v0,0xb4($sp)
/* 131fc: 24040006 */ addiu $a0,$zero,0x6
/* 13200: 0c004a7c */ jal 0x129f0
/* 13204: 24050001 */ addiu $a1,$zero,0x1
/* 13208: 3c057005 */ lui $a1,0x7005
/* 1320c: 24a55790 */ addiu $a1,$a1,0x5790
/* 13210: 27a4002c */ addiu $a0,$sp,0x2c
/* 13214: 8fa600b4 */ lw $a2,0xb4($sp)
/* 13218: 0c004fc1 */ jal 0x13f04
/* 1321c: 00403825 */ or $a3,$v0,$zero
/* 13220: 2404001f */ addiu $a0,$zero,0x1f
/* 13224: 0c0050df */ jal 0x1437c
/* 13228: 02002825 */ or $a1,$s0,$zero
/* 1322c: 0c005175 */ jal 0x145d4
/* 13230: 27a4002c */ addiu $a0,$sp,0x2c
/* 13234: 26100001 */ addiu $s0,$s0,0x1
/* 13238: 24040006 */ addiu $a0,$zero,0x6
/* 1323c: 0c004a91 */ jal 0x12a44
/* 13240: 00002825 */ or $a1,$zero,$zero
/* 13244: afa200b4 */ sw $v0,0xb4($sp)
/* 13248: 24040006 */ addiu $a0,$zero,0x6
/* 1324c: 0c004a91 */ jal 0x12a44
/* 13250: 24050001 */ addiu $a1,$zero,0x1
/* 13254: 3c057005 */ lui $a1,0x7005
/* 13258: 24a5579c */ addiu $a1,$a1,0x579c
/* 1325c: 27a4002c */ addiu $a0,$sp,0x2c
/* 13260: 8fa600b4 */ lw $a2,0xb4($sp)
/* 13264: 0c004fc1 */ jal 0x13f04
/* 13268: 00403825 */ or $a3,$v0,$zero
/* 1326c: 2404001f */ addiu $a0,$zero,0x1f
/* 13270: 0c0050df */ jal 0x1437c
/* 13274: 02002825 */ or $a1,$s0,$zero
/* 13278: 0c005175 */ jal 0x145d4
/* 1327c: 27a4002c */ addiu $a0,$sp,0x2c
/* 13280: 26100001 */ addiu $s0,$s0,0x1
/* 13284: 02002825 */ or $a1,$s0,$zero
/* 13288: 0c0050df */ jal 0x1437c
/* 1328c: 2404001e */ addiu $a0,$zero,0x1e
/* 13290: 3c047005 */ lui $a0,0x7005
/* 13294: 0c005175 */ jal 0x145d4
/* 13298: 248457a8 */ addiu $a0,$a0,0x57a8
/* 1329c: 0c004d4e */ jal 0x13538
/* 132a0: 26100001 */ addiu $s0,$s0,0x1
/* 132a4: 3c057005 */ lui $a1,0x7005
/* 132a8: 24a557b0 */ addiu $a1,$a1,0x57b0
/* 132ac: 27a4002c */ addiu $a0,$sp,0x2c
/* 132b0: 0c004fc1 */ jal 0x13f04
/* 132b4: 00403025 */ or $a2,$v0,$zero
/* 132b8: 2404001f */ addiu $a0,$zero,0x1f
/* 132bc: 0c0050df */ jal 0x1437c
/* 132c0: 02002825 */ or $a1,$s0,$zero
/* 132c4: 0c005175 */ jal 0x145d4
/* 132c8: 27a4002c */ addiu $a0,$sp,0x2c
/* 132cc: 3c02800a */ lui $v0,0x800a
/* 132d0: 24428170 */ addiu $v0,$v0,-32400
/* 132d4: 8c590008 */ lw $t9,0x8($v0)
/* 132d8: 8c480004 */ lw $t0,0x4($v0)
/* 132dc: 8c4a0000 */ lw $t2,0x0($v0)
/* 132e0: 3c057005 */ lui $a1,0x7005
/* 132e4: 03284823 */ subu $t1,$t9,$t0
/* 132e8: 26100001 */ addiu $s0,$s0,0x1
/* 132ec: 24a557b8 */ addiu $a1,$a1,0x57b8
/* 132f0: 27a4002c */ addiu $a0,$sp,0x2c
/* 132f4: 0c004fc1 */ jal 0x13f04
/* 132f8: 012a3021 */ addu $a2,$t1,$t2
/* 132fc: 2404001e */ addiu $a0,$zero,0x1e
/* 13300: 0c0050df */ jal 0x1437c
/* 13304: 02002825 */ or $a1,$s0,$zero
/* 13308: 0c005175 */ jal 0x145d4
/* 1330c: 27a4002c */ addiu $a0,$sp,0x2c
.NB00013310:
/* 13310: 8fbf001c */ lw $ra,0x1c($sp)
/* 13314: 8fb00018 */ lw $s0,0x18($sp)
/* 13318: 27bd00b8 */ addiu $sp,$sp,0xb8
/* 1331c: 03e00008 */ jr $ra
/* 13320: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00012ab0
/* 12ab0: 27bdffd0 */ addiu $sp,$sp,-48
@@ -445,6 +682,116 @@ glabel func00012ab0
/* 12c34: 03e00008 */ jr $ra
/* 12c38: 27bd0030 */ addiu $sp,$sp,0x30
);
#else
GLOBAL_ASM(
glabel func00012ab0
/* 13324: 27bdffd0 */ addiu $sp,$sp,-48
/* 13328: afb2001c */ sw $s2,0x1c($sp)
/* 1332c: afb10018 */ sw $s1,0x18($sp)
/* 13330: 00809025 */ or $s2,$a0,$zero
/* 13334: afb50028 */ sw $s5,0x28($sp)
/* 13338: afb00014 */ sw $s0,0x14($sp)
/* 1333c: 3c11800a */ lui $s1,0x800a
/* 13340: afbf002c */ sw $ra,0x2c($sp)
/* 13344: afb40024 */ sw $s4,0x24($sp)
/* 13348: afb30020 */ sw $s3,0x20($sp)
/* 1334c: 2631c404 */ addiu $s1,$s1,-15356
/* 13350: 2404ffff */ addiu $a0,$zero,-1
/* 13354: 00002825 */ or $a1,$zero,$zero
/* 13358: 00008025 */ or $s0,$zero,$zero
/* 1335c: 2415ffff */ addiu $s5,$zero,-1
/* 13360: 24060010 */ addiu $a2,$zero,0x10
.NB00013364:
/* 13364: 8e230004 */ lw $v1,0x4($s1)
/* 13368: 26100001 */ addiu $s0,$s0,0x1
/* 1336c: 0072082b */ sltu $at,$v1,$s2
/* 13370: 1420000e */ bnez $at,.NB000133ac
/* 13374: 00721023 */ subu $v0,$v1,$s2
/* 13378: 8e2e0000 */ lw $t6,0x0($s1)
/* 1337c: 0044082b */ sltu $at,$v0,$a0
/* 13380: 00127882 */ srl $t7,$s2,0x2
/* 13384: 12ae000b */ beq $s5,$t6,.NB000133b4
/* 13388: 00000000 */ sll $zero,$zero,0x0
/* 1338c: 10200007 */ beqz $at,.NB000133ac
/* 13390: 2c410040 */ sltiu $at,$v0,0x40
/* 13394: 00402025 */ or $a0,$v0,$zero
/* 13398: 14200006 */ bnez $at,.NB000133b4
/* 1339c: 02202825 */ or $a1,$s1,$zero
/* 133a0: 004f082b */ sltu $at,$v0,$t7
/* 133a4: 14200003 */ bnez $at,.NB000133b4
/* 133a8: 00000000 */ sll $zero,$zero,0x0
.NB000133ac:
/* 133ac: 1606ffed */ bne $s0,$a2,.NB00013364
/* 133b0: 26310008 */ addiu $s1,$s1,0x8
.NB000133b4:
/* 133b4: 54a00027 */ bnezl $a1,.NB00013454
/* 133b8: 8ca30000 */ lw $v1,0x0($a1)
/* 133bc: 8e380004 */ lw $t8,0x4($s1)
/* 133c0: 00008025 */ or $s0,$zero,$zero
/* 133c4: 24140008 */ addiu $s4,$zero,0x8
/* 133c8: 0312082b */ sltu $at,$t8,$s2
/* 133cc: 10200006 */ beqz $at,.NB000133e8
/* 133d0: 3c13800a */ lui $s3,0x800a
/* 133d4: 8e39000c */ lw $t9,0xc($s1)
.NB000133d8:
/* 133d8: 26310008 */ addiu $s1,$s1,0x8
/* 133dc: 0332082b */ sltu $at,$t9,$s2
/* 133e0: 5420fffd */ bnezl $at,.NB000133d8
/* 133e4: 8e39000c */ lw $t9,0xc($s1)
.NB000133e8:
/* 133e8: 8e280000 */ lw $t0,0x0($s1)
/* 133ec: 2673c3f8 */ addiu $s3,$s3,-15368
/* 133f0: 56a80017 */ bnel $s5,$t0,.NB00013450
/* 133f4: 02202825 */ or $a1,$s1,$zero
/* 133f8: 3c11800a */ lui $s1,0x800a
/* 133fc: 2631c404 */ addiu $s1,$s1,-15356
.NB00013400:
/* 13400: 0c004b24 */ jal 0x12c90
/* 13404: 02602025 */ or $a0,$s3,$zero
/* 13408: 26100001 */ addiu $s0,$s0,0x1
/* 1340c: 1614fffc */ bne $s0,$s4,.NB00013400
/* 13410: 00000000 */ sll $zero,$zero,0x0
/* 13414: 8e690010 */ lw $t1,0x10($s3)
/* 13418: 0132082b */ sltu $at,$t1,$s2
/* 1341c: 50200007 */ beqzl $at,.NB0001343c
/* 13420: 8e2b0000 */ lw $t3,0x0($s1)
/* 13424: 8e2a000c */ lw $t2,0xc($s1)
.NB00013428:
/* 13428: 26310008 */ addiu $s1,$s1,0x8
/* 1342c: 0152082b */ sltu $at,$t2,$s2
/* 13430: 5420fffd */ bnezl $at,.NB00013428
/* 13434: 8e2a000c */ lw $t2,0xc($s1)
/* 13438: 8e2b0000 */ lw $t3,0x0($s1)
.NB0001343c:
/* 1343c: 56ab0004 */ bnel $s5,$t3,.NB00013450
/* 13440: 02202825 */ or $a1,$s1,$zero
/* 13444: 1000000b */ beqz $zero,.NB00013474
/* 13448: 00001025 */ or $v0,$zero,$zero
/* 1344c: 02202825 */ or $a1,$s1,$zero
.NB00013450:
/* 13450: 8ca30000 */ lw $v1,0x0($a1)
.NB00013454:
/* 13454: 8cad0004 */ lw $t5,0x4($a1)
/* 13458: 00726021 */ addu $t4,$v1,$s2
/* 1345c: 01b27023 */ subu $t6,$t5,$s2
/* 13460: acac0000 */ sw $t4,0x0($a1)
/* 13464: 15c00002 */ bnez $t6,.NB00013470
/* 13468: acae0004 */ sw $t6,0x4($a1)
/* 1346c: aca00000 */ sw $zero,0x0($a1)
.NB00013470:
/* 13470: 00601025 */ or $v0,$v1,$zero
.NB00013474:
/* 13474: 8fbf002c */ lw $ra,0x2c($sp)
/* 13478: 8fb00014 */ lw $s0,0x14($sp)
/* 1347c: 8fb10018 */ lw $s1,0x18($sp)
/* 13480: 8fb2001c */ lw $s2,0x1c($sp)
/* 13484: 8fb30020 */ lw $s3,0x20($sp)
/* 13488: 8fb40024 */ lw $s4,0x24($sp)
/* 1348c: 8fb50028 */ lw $s5,0x28($sp)
/* 13490: 03e00008 */ jr $ra
/* 13494: 27bd0030 */ addiu $sp,$sp,0x30
);
#endif
GLOBAL_ASM(
glabel func00012c3c
+765 -2
View File
@@ -5,6 +5,9 @@
#include "data.h"
#include "types.h"
#if VERSION >= VERSION_NTSC_1_0
// These are likely some of the same functions as ntsc-beta below,
// but it's not easy to tell which are which so leaving them separate for now.
void func00013790(void)
{
// empty
@@ -24,43 +27,803 @@ void func000137a8(void)
{
// empty
}
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00013fe0nb
/* 13fe0: afa40000 */ sw $a0,0x0($sp)
/* 13fe4: afa50004 */ sw $a1,0x4($sp)
/* 13fe8: 03e00008 */ jr $ra
/* 13fec: 00001025 */ or $v0,$zero,$zero
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00013ff0nb
/* 13ff0: afa40000 */ sw $a0,0x0($sp)
/* 13ff4: afa50004 */ sw $a1,0x4($sp)
/* 13ff8: 03e00008 */ jr $ra
/* 13ffc: 00001025 */ or $v0,$zero,$zero
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00014000nb
/* 14000: 03e00008 */ jr $ra
/* 14004: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00014008nb
/* 14008: 3c0e8006 */ lui $t6,0x8006
/* 1400c: 25ce1238 */ addiu $t6,$t6,0x1238
/* 14010: 8dc10000 */ lw $at,0x0($t6)
/* 14014: 27bdffe0 */ addiu $sp,$sp,-32
/* 14018: 27a50008 */ addiu $a1,$sp,0x8
/* 1401c: aca10000 */ sw $at,0x0($a1)
/* 14020: 8dd90004 */ lw $t9,0x4($t6)
/* 14024: 3c068006 */ lui $a2,0x8006
/* 14028: 3c078006 */ lui $a3,0x8006
/* 1402c: 3c088006 */ lui $t0,0x8006
/* 14030: 3c0a800a */ lui $t2,0x800a
/* 14034: 3c0b800a */ lui $t3,0x800a
/* 14038: 3c0c800a */ lui $t4,0x800a
/* 1403c: 25081210 */ addiu $t0,$t0,0x1210
/* 14040: 24e7120c */ addiu $a3,$a3,0x120c
/* 14044: 24c61208 */ addiu $a2,$a2,0x1208
/* 14048: 254ac9e0 */ addiu $t2,$t2,-13856
/* 1404c: 256bdfc0 */ addiu $t3,$t3,-8256
/* 14050: 258ce0c0 */ addiu $t4,$t4,-8000
/* 14054: acca0000 */ sw $t2,0x0($a2)
/* 14058: aceb0000 */ sw $t3,0x0($a3)
/* 1405c: ad0c0000 */ sw $t4,0x0($t0)
/* 14060: 3c018006 */ lui $at,0x8006
/* 14064: 240d0001 */ addiu $t5,$zero,0x1
/* 14068: acb90004 */ sw $t9,0x4($a1)
/* 1406c: ac2d117c */ sw $t5,0x117c($at)
/* 14070: 00001025 */ or $v0,$zero,$zero
/* 14074: 24090046 */ addiu $t1,$zero,0x46
/* 14078: 00002025 */ or $a0,$zero,$zero
.NB0001407c:
/* 1407c: 000278c0 */ sll $t7,$v0,0x3
/* 14080: 01e27821 */ addu $t7,$t7,$v0
/* 14084: 8cd80000 */ lw $t8,0x0($a2)
/* 14088: 000f7880 */ sll $t7,$t7,0x2
/* 1408c: 01e27823 */ subu $t7,$t7,$v0
/* 14090: 000f7840 */ sll $t7,$t7,0x1
/* 14094: 030f7021 */ addu $t6,$t8,$t7
/* 14098: 01c4c821 */ addu $t9,$t6,$a0
/* 1409c: 000258c0 */ sll $t3,$v0,0x3
/* 140a0: a3200000 */ sb $zero,0x0($t9)
/* 140a4: 01625821 */ addu $t3,$t3,$v0
/* 140a8: 8cca0000 */ lw $t2,0x0($a2)
/* 140ac: 000b5880 */ sll $t3,$t3,0x2
/* 140b0: 01625823 */ subu $t3,$t3,$v0
/* 140b4: 000b5840 */ sll $t3,$t3,0x1
/* 140b8: 014b6021 */ addu $t4,$t2,$t3
/* 140bc: 01846821 */ addu $t5,$t4,$a0
/* 140c0: 24840002 */ addiu $a0,$a0,0x2
/* 140c4: 1489ffed */ bne $a0,$t1,.NB0001407c
/* 140c8: a1a00001 */ sb $zero,0x1($t5)
/* 140cc: 24420001 */ addiu $v0,$v0,0x1
/* 140d0: 28410050 */ slti $at,$v0,0x50
/* 140d4: 5420ffe9 */ bnezl $at,.NB0001407c
/* 140d8: 00002025 */ or $a0,$zero,$zero
/* 140dc: 00001825 */ or $v1,$zero,$zero
/* 140e0: 24020100 */ addiu $v0,$zero,0x100
.NB000140e4:
/* 140e4: 8cf80000 */ lw $t8,0x0($a3)
/* 140e8: 8ca10000 */ lw $at,0x0($a1)
/* 140ec: 03037821 */ addu $t7,$t8,$v1
/* 140f0: ade10000 */ sw $at,0x0($t7)
/* 140f4: 8cb90004 */ lw $t9,0x4($a1)
/* 140f8: adf90004 */ sw $t9,0x4($t7)
/* 140fc: 8d0a0000 */ lw $t2,0x0($t0)
/* 14100: 8ca10000 */ lw $at,0x0($a1)
/* 14104: 01435821 */ addu $t3,$t2,$v1
/* 14108: ad610000 */ sw $at,0x0($t3)
/* 1410c: 8cad0004 */ lw $t5,0x4($a1)
/* 14110: 24630008 */ addiu $v1,$v1,0x8
/* 14114: 1462fff3 */ bne $v1,$v0,.NB000140e4
/* 14118: ad6d0004 */ sw $t5,0x4($t3)
/* 1411c: 03e00008 */ jr $ra
/* 14120: 27bd0020 */ addiu $sp,$sp,0x20
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00014124nb
/* 14124: 3c0e8006 */ lui $t6,0x8006
/* 14128: 8dce117c */ lw $t6,0x117c($t6)
/* 1412c: 27bdffe8 */ addiu $sp,$sp,-24
/* 14130: afbf0014 */ sw $ra,0x14($sp)
/* 14134: 51c00004 */ beqzl $t6,.NB00014148
/* 14138: 8fbf0014 */ lw $ra,0x14($sp)
/* 1413c: 0c0050b5 */ jal 0x142d4
/* 14140: 00000000 */ sll $zero,$zero,0x0
/* 14144: 8fbf0014 */ lw $ra,0x14($sp)
.NB00014148:
/* 14148: 27bd0018 */ addiu $sp,$sp,0x18
/* 1414c: 03e00008 */ jr $ra
/* 14150: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00014154nb
/* 14154: 3c078006 */ lui $a3,0x8006
/* 14158: 8ce7120c */ lw $a3,0x120c($a3)
/* 1415c: afa60008 */ sw $a2,0x8($sp)
/* 14160: 30ce00ff */ andi $t6,$a2,0xff
/* 14164: 3c038006 */ lui $v1,0x8006
/* 14168: 3c0b8006 */ lui $t3,0x8006
/* 1416c: 3c0a8006 */ lui $t2,0x8006
/* 14170: 01c03025 */ or $a2,$t6,$zero
/* 14174: 254a1230 */ addiu $t2,$t2,0x1230
/* 14178: 256b1210 */ addiu $t3,$t3,0x1210
/* 1417c: 8c63122c */ lw $v1,0x122c($v1)
/* 14180: 00001025 */ or $v0,$zero,$zero
/* 14184: 00004025 */ or $t0,$zero,$zero
/* 14188: 00e04825 */ or $t1,$a3,$zero
.NB0001418c:
/* 1418c: 8d2f0004 */ lw $t7,0x4($t1)
/* 14190: 25290008 */ addiu $t1,$t1,0x8
/* 14194: 546f0008 */ bnel $v1,$t7,.NB000141b8
/* 14198: 24420001 */ addiu $v0,$v0,0x1
/* 1419c: 8d790000 */ lw $t9,0x0($t3)
/* 141a0: 8d580004 */ lw $t8,0x4($t2)
/* 141a4: 03286021 */ addu $t4,$t9,$t0
/* 141a8: 8d8d0004 */ lw $t5,0x4($t4)
/* 141ac: 130d0021 */ beq $t8,$t5,.NB00014234
/* 141b0: 00000000 */ sll $zero,$zero,0x0
/* 141b4: 24420001 */ addiu $v0,$v0,0x1
.NB000141b8:
/* 141b8: 28410020 */ slti $at,$v0,0x20
/* 141bc: 1420fff3 */ bnez $at,.NB0001418c
/* 141c0: 25080008 */ addiu $t0,$t0,0x8
/* 141c4: 3c038006 */ lui $v1,0x8006
/* 141c8: 24631214 */ addiu $v1,$v1,0x1214
/* 141cc: 8c6e0000 */ lw $t6,0x0($v1)
/* 141d0: 3c0c8006 */ lui $t4,0x8006
/* 141d4: 258c1228 */ addiu $t4,$t4,0x1228
/* 141d8: 8d810000 */ lw $at,0x0($t4)
/* 141dc: 000e78c0 */ sll $t7,$t6,0x3
/* 141e0: 00efc821 */ addu $t9,$a3,$t7
/* 141e4: af210000 */ sw $at,0x0($t9)
/* 141e8: 8d8d0004 */ lw $t5,0x4($t4)
/* 141ec: af2d0004 */ sw $t5,0x4($t9)
/* 141f0: 8c6f0000 */ lw $t7,0x0($v1)
/* 141f4: 8d6e0000 */ lw $t6,0x0($t3)
/* 141f8: 8d410000 */ lw $at,0x0($t2)
/* 141fc: 000fc0c0 */ sll $t8,$t7,0x3
/* 14200: 01d8c821 */ addu $t9,$t6,$t8
/* 14204: af210000 */ sw $at,0x0($t9)
/* 14208: 8d4d0004 */ lw $t5,0x4($t2)
/* 1420c: af2d0004 */ sw $t5,0x4($t9)
/* 14210: 8c6f0000 */ lw $t7,0x0($v1)
/* 14214: 25ee0001 */ addiu $t6,$t7,0x1
/* 14218: 05c10004 */ bgez $t6,.NB0001422c
/* 1421c: 31d8001f */ andi $t8,$t6,0x1f
/* 14220: 13000002 */ beqz $t8,.NB0001422c
/* 14224: 00000000 */ sll $zero,$zero,0x0
/* 14228: 2718ffe0 */ addiu $t8,$t8,-32
.NB0001422c:
/* 1422c: ac780000 */ sw $t8,0x0($v1)
/* 14230: 03001025 */ or $v0,$t8,$zero
.NB00014234:
/* 14234: 3c078006 */ lui $a3,0x8006
/* 14238: 0004c8c0 */ sll $t9,$a0,0x3
/* 1423c: 24e71208 */ addiu $a3,$a3,0x1208
/* 14240: 0324c821 */ addu $t9,$t9,$a0
/* 14244: 8cec0000 */ lw $t4,0x0($a3)
/* 14248: 0019c880 */ sll $t9,$t9,0x2
/* 1424c: 0324c823 */ subu $t9,$t9,$a0
/* 14250: 0019c840 */ sll $t9,$t9,0x1
/* 14254: 00051840 */ sll $v1,$a1,0x1
/* 14258: 01996821 */ addu $t5,$t4,$t9
/* 1425c: 01a37821 */ addu $t7,$t5,$v1
/* 14260: 0004c0c0 */ sll $t8,$a0,0x3
/* 14264: a1e60000 */ sb $a2,0x0($t7)
/* 14268: 0304c021 */ addu $t8,$t8,$a0
/* 1426c: 8cee0000 */ lw $t6,0x0($a3)
/* 14270: 0018c080 */ sll $t8,$t8,0x2
/* 14274: 0304c023 */ subu $t8,$t8,$a0
/* 14278: 0018c040 */ sll $t8,$t8,0x1
/* 1427c: 01d86021 */ addu $t4,$t6,$t8
/* 14280: 0183c821 */ addu $t9,$t4,$v1
/* 14284: 10c00003 */ beqz $a2,.NB00014294
/* 14288: a3220001 */ sb $v0,0x1($t9)
/* 1428c: 3c018006 */ lui $at,0x8006
/* 14290: ac201178 */ sw $zero,0x1178($at)
.NB00014294:
/* 14294: 03e00008 */ jr $ra
/* 14298: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func0001429cnb
/* 1429c: 3c0e8006 */ lui $t6,0x8006
/* 142a0: 8dce117c */ lw $t6,0x117c($t6)
/* 142a4: 3c0f8006 */ lui $t7,0x8006
/* 142a8: 3c018006 */ lui $at,0x8006
/* 142ac: 11c00007 */ beqz $t6,.NB000142cc
/* 142b0: 00000000 */ sll $zero,$zero,0x0
/* 142b4: 8def1168 */ lw $t7,0x1168($t7)
/* 142b8: 3c188006 */ lui $t8,0x8006
/* 142bc: 8f18116c */ lw $t8,0x116c($t8)
/* 142c0: ac2f1170 */ sw $t7,0x1170($at)
/* 142c4: 3c018006 */ lui $at,0x8006
/* 142c8: ac381174 */ sw $t8,0x1174($at)
.NB000142cc:
/* 142cc: 03e00008 */ jr $ra
/* 142d0: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func000142d4nb
/* 142d4: 27bdffd8 */ addiu $sp,$sp,-40
/* 142d8: 3c0e8006 */ lui $t6,0x8006
/* 142dc: 8dce117c */ lw $t6,0x117c($t6)
/* 142e0: afbf0024 */ sw $ra,0x24($sp)
/* 142e4: afb30020 */ sw $s3,0x20($sp)
/* 142e8: afb2001c */ sw $s2,0x1c($sp)
/* 142ec: afb10018 */ sw $s1,0x18($sp)
/* 142f0: 11c0001b */ beqz $t6,.NB00014360
/* 142f4: afb00014 */ sw $s0,0x14($sp)
/* 142f8: 3c0f8006 */ lui $t7,0x8006
/* 142fc: 8def1178 */ lw $t7,0x1178($t7)
/* 14300: 24010001 */ addiu $at,$zero,0x1
/* 14304: 00009025 */ or $s2,$zero,$zero
/* 14308: 11e10015 */ beq $t7,$at,.NB00014360
/* 1430c: 24130023 */ addiu $s3,$zero,0x23
/* 14310: 24110050 */ addiu $s1,$zero,0x50
/* 14314: 00008025 */ or $s0,$zero,$zero
.NB00014318:
/* 14318: 02002025 */ or $a0,$s0,$zero
.NB0001431c:
/* 1431c: 02402825 */ or $a1,$s2,$zero
/* 14320: 0c005055 */ jal 0x14154
/* 14324: 00003025 */ or $a2,$zero,$zero
/* 14328: 26100001 */ addiu $s0,$s0,0x1
/* 1432c: 5611fffb */ bnel $s0,$s1,.NB0001431c
/* 14330: 02002025 */ or $a0,$s0,$zero
/* 14334: 26520001 */ addiu $s2,$s2,0x1
/* 14338: 5653fff7 */ bnel $s2,$s3,.NB00014318
/* 1433c: 00008025 */ or $s0,$zero,$zero
/* 14340: 24180001 */ addiu $t8,$zero,0x1
/* 14344: 3c018006 */ lui $at,0x8006
/* 14348: 0c0050a7 */ jal 0x1429c
/* 1434c: ac381178 */ sw $t8,0x1178($at)
/* 14350: 0c005000 */ jal 0x14000
/* 14354: 00000000 */ sll $zero,$zero,0x0
/* 14358: 3c018006 */ lui $at,0x8006
/* 1435c: ac201214 */ sw $zero,0x1214($at)
.NB00014360:
/* 14360: 8fbf0024 */ lw $ra,0x24($sp)
/* 14364: 8fb00014 */ lw $s0,0x14($sp)
/* 14368: 8fb10018 */ lw $s1,0x18($sp)
/* 1436c: 8fb2001c */ lw $s2,0x1c($sp)
/* 14370: 8fb30020 */ lw $s3,0x20($sp)
/* 14374: 03e00008 */ jr $ra
/* 14378: 27bd0028 */ addiu $sp,$sp,0x28
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void func000137b0(s32 arg0, s32 arg1)
{
// empty
}
#else
GLOBAL_ASM(
glabel func000137b0
/* 1437c: 3c0e8006 */ lui $t6,0x8006
/* 14380: 8dce117c */ lw $t6,0x117c($t6)
/* 14384: 27bdffe8 */ addiu $sp,$sp,-24
/* 14388: afbf0014 */ sw $ra,0x14($sp)
/* 1438c: 11c0001e */ beqz $t6,.NB00014408
/* 14390: 3c0f8006 */ lui $t7,0x8006
/* 14394: 3c188006 */ lui $t8,0x8006
/* 14398: 8def1168 */ lw $t7,0x1168($t7)
/* 1439c: 8f18116c */ lw $t8,0x116c($t8)
/* 143a0: 008f2021 */ addu $a0,$a0,$t7
/* 143a4: 00b82821 */ addu $a1,$a1,$t8
/* 143a8: afa5001c */ sw $a1,0x1c($sp)
/* 143ac: 0c002f7b */ jal 0xbdec
/* 143b0: afa40018 */ sw $a0,0x18($sp)
/* 143b4: 2459fff6 */ addiu $t9,$v0,-10
/* 143b8: 24010007 */ addiu $at,$zero,0x7
/* 143bc: 0321001a */ div $zero,$t9,$at
/* 143c0: 8fa5001c */ lw $a1,0x1c($sp)
/* 143c4: 00004012 */ mflo $t0
/* 143c8: 00a8082a */ slt $at,$a1,$t0
/* 143cc: 5420000a */ bnezl $at,.NB000143f8
/* 143d0: 8faa0018 */ lw $t2,0x18($sp)
/* 143d4: 0c002f7b */ jal 0xbdec
/* 143d8: 00000000 */ sll $zero,$zero,0x0
/* 143dc: 2445fff6 */ addiu $a1,$v0,-10
/* 143e0: 24010007 */ addiu $at,$zero,0x7
/* 143e4: 00a1001a */ div $zero,$a1,$at
/* 143e8: 00004812 */ mflo $t1
/* 143ec: 2525ffff */ addiu $a1,$t1,-1
/* 143f0: 00000000 */ sll $zero,$zero,0x0
/* 143f4: 8faa0018 */ lw $t2,0x18($sp)
.NB000143f8:
/* 143f8: 3c018006 */ lui $at,0x8006
/* 143fc: ac2a1170 */ sw $t2,0x1170($at)
/* 14400: 3c018006 */ lui $at,0x8006
/* 14404: ac251174 */ sw $a1,0x1174($at)
.NB00014408:
/* 14408: 8fbf0014 */ lw $ra,0x14($sp)
/* 1440c: 27bd0018 */ addiu $sp,$sp,0x18
/* 14410: 03e00008 */ jr $ra
/* 14414: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void func000137bc(s32 arg0, s32 arg1, s32 arg2, s32 arg3)
{
// empty
}
#else
GLOBAL_ASM(
glabel func000137bc
/* 14418: 3c0e8006 */ lui $t6,0x8006
/* 1441c: 8dce117c */ lw $t6,0x117c($t6)
/* 14420: 00047e00 */ sll $t7,$a0,0x18
/* 14424: 0005c400 */ sll $t8,$a1,0x10
/* 14428: 11c00008 */ beqz $t6,.NB0001444c
/* 1442c: 01f8c825 */ or $t9,$t7,$t8
/* 14430: 00064200 */ sll $t0,$a2,0x8
/* 14434: 240a00ff */ addiu $t2,$zero,0xff
/* 14438: 01475823 */ subu $t3,$t2,$a3
/* 1443c: 03284825 */ or $t1,$t9,$t0
/* 14440: 012b6025 */ or $t4,$t1,$t3
/* 14444: 3c018006 */ lui $at,0x8006
/* 14448: ac2c122c */ sw $t4,0x122c($at)
.NB0001444c:
/* 1444c: 03e00008 */ jr $ra
/* 14450: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void func000137d0(s32 arg0, s32 arg1, s32 arg2, s32 arg3)
{
// empty
}
#else
GLOBAL_ASM(
glabel func000137d0
/* 14454: 3c0e8006 */ lui $t6,0x8006
/* 14458: 8dce117c */ lw $t6,0x117c($t6)
/* 1445c: 00047e00 */ sll $t7,$a0,0x18
/* 14460: 0005c400 */ sll $t8,$a1,0x10
/* 14464: 11c00008 */ beqz $t6,.NB00014488
/* 14468: 01f8c825 */ or $t9,$t7,$t8
/* 1446c: 00064200 */ sll $t0,$a2,0x8
/* 14470: 240a00ff */ addiu $t2,$zero,0xff
/* 14474: 01475823 */ subu $t3,$t2,$a3
/* 14478: 03284825 */ or $t1,$t9,$t0
/* 1447c: 012b6025 */ or $t4,$t1,$t3
/* 14480: 3c018006 */ lui $at,0x8006
/* 14484: ac2c1234 */ sw $t4,0x1234($at)
.NB00014488:
/* 14488: 03e00008 */ jr $ra
/* 1448c: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void func000137e4(s32 arg0)
{
// empty
}
#else
GLOBAL_ASM(
glabel func000137e4
/* 14490: 27bdffd8 */ addiu $sp,$sp,-40
/* 14494: afbf0014 */ sw $ra,0x14($sp)
/* 14498: 0c002f77 */ jal 0xbddc
/* 1449c: afa40028 */ sw $a0,0x28($sp)
/* 144a0: 244efff3 */ addiu $t6,$v0,-13
/* 144a4: 05c10003 */ bgez $t6,.NB000144b4
/* 144a8: 000e7883 */ sra $t7,$t6,0x2
/* 144ac: 25c10003 */ addiu $at,$t6,0x3
/* 144b0: 00017883 */ sra $t7,$at,0x2
.NB000144b4:
/* 144b4: 0c002f7b */ jal 0xbdec
/* 144b8: afaf0024 */ sw $t7,0x24($sp)
/* 144bc: 2448fff6 */ addiu $t0,$v0,-10
/* 144c0: 24010007 */ addiu $at,$zero,0x7
/* 144c4: 0101001a */ div $zero,$t0,$at
/* 144c8: 3c198006 */ lui $t9,0x8006
/* 144cc: 8f39117c */ lw $t9,0x117c($t9)
/* 144d0: 00004012 */ mflo $t0
/* 144d4: 93a6002b */ lbu $a2,0x2b($sp)
/* 144d8: 5320002d */ beqzl $t9,.NB00014590
/* 144dc: 8fbf0014 */ lw $ra,0x14($sp)
/* 144e0: 10c00005 */ beqz $a2,.NB000144f8
/* 144e4: 00c01025 */ or $v0,$a2,$zero
/* 144e8: 28410020 */ slti $at,$v0,0x20
/* 144ec: 1420000d */ bnez $at,.NB00014524
/* 144f0: 2841007f */ slti $at,$v0,0x7f
/* 144f4: 1020000b */ beqz $at,.NB00014524
.NB000144f8:
/* 144f8: 3c038006 */ lui $v1,0x8006
/* 144fc: 3c078006 */ lui $a3,0x8006
/* 14500: 24e71174 */ addiu $a3,$a3,0x1174
/* 14504: 24631170 */ addiu $v1,$v1,0x1170
/* 14508: 8c640000 */ lw $a0,0x0($v1)
/* 1450c: 8ce50000 */ lw $a1,0x0($a3)
/* 14510: afa2001c */ sw $v0,0x1c($sp)
/* 14514: 0c005055 */ jal 0x14154
/* 14518: afa80020 */ sw $t0,0x20($sp)
/* 1451c: 8fa2001c */ lw $v0,0x1c($sp)
/* 14520: 8fa80020 */ lw $t0,0x20($sp)
.NB00014524:
/* 14524: 3c038006 */ lui $v1,0x8006
/* 14528: 24631170 */ addiu $v1,$v1,0x1170
/* 1452c: 8c690000 */ lw $t1,0x0($v1)
/* 14530: 3c078006 */ lui $a3,0x8006
/* 14534: 2401000d */ addiu $at,$zero,0xd
/* 14538: 252a0001 */ addiu $t2,$t1,0x1
/* 1453c: 24e71174 */ addiu $a3,$a3,0x1174
/* 14540: 10410007 */ beq $v0,$at,.NB00014560
/* 14544: ac6a0000 */ sw $t2,0x0($v1)
/* 14548: 2401000a */ addiu $at,$zero,0xa
/* 1454c: 10410004 */ beq $v0,$at,.NB00014560
/* 14550: 8fac0024 */ lw $t4,0x24($sp)
/* 14554: 014c082a */ slt $at,$t2,$t4
/* 14558: 5420000d */ bnezl $at,.NB00014590
/* 1455c: 8fbf0014 */ lw $ra,0x14($sp)
.NB00014560:
/* 14560: 8cee0000 */ lw $t6,0x0($a3)
/* 14564: 3c0d8006 */ lui $t5,0x8006
/* 14568: 8dad1168 */ lw $t5,0x1168($t5)
/* 1456c: 25cf0001 */ addiu $t7,$t6,0x1
/* 14570: 01e8082a */ slt $at,$t7,$t0
/* 14574: acef0000 */ sw $t7,0x0($a3)
/* 14578: 14200004 */ bnez $at,.NB0001458c
/* 1457c: ac6d0000 */ sw $t5,0x0($v1)
/* 14580: 3c198006 */ lui $t9,0x8006
/* 14584: 8f39116c */ lw $t9,0x116c($t9)
/* 14588: acf90000 */ sw $t9,0x0($a3)
.NB0001458c:
/* 1458c: 8fbf0014 */ lw $ra,0x14($sp)
.NB00014590:
/* 14590: 27bd0028 */ addiu $sp,$sp,0x28
/* 14594: 03e00008 */ jr $ra
/* 14598: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void func000137ec(s32 arg0, s32 arg1, s32 arg2)
{
// empty
}
#else
GLOBAL_ASM(
glabel func000137ec
/* 1459c: 3c0e8006 */ lui $t6,0x8006
/* 145a0: 8dce117c */ lw $t6,0x117c($t6)
/* 145a4: 27bdffe8 */ addiu $sp,$sp,-24
/* 145a8: afbf0014 */ sw $ra,0x14($sp)
/* 145ac: 11c00005 */ beqz $t6,.NB000145c4
/* 145b0: afa60020 */ sw $a2,0x20($sp)
/* 145b4: 0c0050df */ jal 0x1437c
/* 145b8: 00000000 */ sll $zero,$zero,0x0
/* 145bc: 0c005124 */ jal 0x14490
/* 145c0: 93a40023 */ lbu $a0,0x23($sp)
.NB000145c4:
/* 145c4: 8fbf0014 */ lw $ra,0x14($sp)
/* 145c8: 27bd0018 */ addiu $sp,$sp,0x18
/* 145cc: 03e00008 */ jr $ra
/* 145d0: 00000000 */ sll $zero,$zero,0x0
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void func000137fc(s32 arg0)
{
// empty
}
#else
GLOBAL_ASM(
glabel func000137fc
/* 145d4: 3c0e8006 */ lui $t6,0x8006
/* 145d8: 8dce117c */ lw $t6,0x117c($t6)
/* 145dc: 27bdffe0 */ addiu $sp,$sp,-32
/* 145e0: afb10018 */ sw $s1,0x18($sp)
/* 145e4: 00808825 */ or $s1,$a0,$zero
/* 145e8: afbf001c */ sw $ra,0x1c($sp)
/* 145ec: 11c00009 */ beqz $t6,.NB00014614
/* 145f0: afb00014 */ sw $s0,0x14($sp)
/* 145f4: 90900000 */ lbu $s0,0x0($a0)
/* 145f8: 12000006 */ beqz $s0,.NB00014614
/* 145fc: 320400ff */ andi $a0,$s0,0xff
.NB00014600:
/* 14600: 0c005124 */ jal 0x14490
/* 14604: 26310001 */ addiu $s1,$s1,0x1
/* 14608: 92300000 */ lbu $s0,0x0($s1)
/* 1460c: 5600fffc */ bnezl $s0,.NB00014600
/* 14610: 320400ff */ andi $a0,$s0,0xff
.NB00014614:
/* 14614: 8fbf001c */ lw $ra,0x1c($sp)
/* 14618: 8fb00014 */ lw $s0,0x14($sp)
/* 1461c: 8fb10018 */ lw $s1,0x18($sp)
/* 14620: 03e00008 */ jr $ra
/* 14624: 27bd0020 */ addiu $sp,$sp,0x20
);
#endif
#if VERSION >= VERSION_NTSC_1_0
void func00013804(s32 arg0, s32 arg1, s32 arg2)
{
// empty
}
#else
GLOBAL_ASM(
glabel func00013804
/* 14628: 3c0e8006 */ lui $t6,0x8006
/* 1462c: 8dce117c */ lw $t6,0x117c($t6)
/* 14630: 27bdffe0 */ addiu $sp,$sp,-32
/* 14634: afb10018 */ sw $s1,0x18($sp)
/* 14638: 00c08825 */ or $s1,$a2,$zero
/* 1463c: afbf001c */ sw $ra,0x1c($sp)
/* 14640: 11c0000b */ beqz $t6,.NB00014670
/* 14644: afb00014 */ sw $s0,0x14($sp)
/* 14648: 0c0050df */ jal 0x1437c
/* 1464c: 00000000 */ sll $zero,$zero,0x0
/* 14650: 92300000 */ lbu $s0,0x0($s1)
/* 14654: 12000006 */ beqz $s0,.NB00014670
/* 14658: 320400ff */ andi $a0,$s0,0xff
.NB0001465c:
/* 1465c: 0c005124 */ jal 0x14490
/* 14660: 26310001 */ addiu $s1,$s1,0x1
/* 14664: 92300000 */ lbu $s0,0x0($s1)
/* 14668: 5600fffc */ bnezl $s0,.NB0001465c
/* 1466c: 320400ff */ andi $a0,$s0,0xff
.NB00014670:
/* 14670: 8fbf001c */ lw $ra,0x1c($sp)
/* 14674: 8fb00014 */ lw $s0,0x14($sp)
/* 14678: 8fb10018 */ lw $s1,0x18($sp)
/* 1467c: 03e00008 */ jr $ra
/* 14680: 27bd0020 */ addiu $sp,$sp,0x20
);
#endif
s32 func00013814(s32 arg0)
#if VERSION >= VERSION_NTSC_1_0
Gfx *func00013814(Gfx *gdl)
{
return arg0;
return gdl;
}
#else
GLOBAL_ASM(
glabel func00013814
/* 14684: 27bdff78 */ addiu $sp,$sp,-136
/* 14688: 3c0e8006 */ lui $t6,0x8006
/* 1468c: 8dce117c */ lw $t6,0x117c($t6)
/* 14690: afb00018 */ sw $s0,0x18($sp)
/* 14694: 00808025 */ or $s0,$a0,$zero
/* 14698: afbf003c */ sw $ra,0x3c($sp)
/* 1469c: afbe0038 */ sw $s8,0x38($sp)
/* 146a0: afb70034 */ sw $s7,0x34($sp)
/* 146a4: afb60030 */ sw $s6,0x30($sp)
/* 146a8: afb5002c */ sw $s5,0x2c($sp)
/* 146ac: afb40028 */ sw $s4,0x28($sp)
/* 146b0: afb30024 */ sw $s3,0x24($sp)
/* 146b4: afb20020 */ sw $s2,0x20($sp)
/* 146b8: 15c00003 */ bnez $t6,.NB000146c8
/* 146bc: afb1001c */ sw $s1,0x1c($sp)
/* 146c0: 100000a5 */ beqz $zero,.NB00014958
/* 146c4: 00801025 */ or $v0,$a0,$zero
.NB000146c8:
/* 146c8: 3c0f8006 */ lui $t7,0x8006
/* 146cc: 8def1178 */ lw $t7,0x1178($t7)
/* 146d0: 02008825 */ or $s1,$s0,$zero
/* 146d4: 2406ffff */ addiu $a2,$zero,-1
/* 146d8: 15e0009e */ bnez $t7,.NB00014954
/* 146dc: 0000a025 */ or $s4,$zero,$zero
/* 146e0: 3c078006 */ lui $a3,0x8006
/* 146e4: 8ce71208 */ lw $a3,0x1208($a3)
/* 146e8: 00004025 */ or $t0,$zero,$zero
/* 146ec: 24090050 */ addiu $t1,$zero,0x50
/* 146f0: 00002825 */ or $a1,$zero,$zero
.NB000146f4:
/* 146f4: 00e82021 */ addu $a0,$a3,$t0
.NB000146f8:
/* 146f8: 90820000 */ lbu $v0,0x0($a0)
/* 146fc: 24a50001 */ addiu $a1,$a1,0x1
/* 14700: 90830001 */ lbu $v1,0x1($a0)
/* 14704: 10400006 */ beqz $v0,.NB00014720
/* 14708: 00000000 */ sll $zero,$zero,0x0
/* 1470c: 50660004 */ beql $v1,$a2,.NB00014720
/* 14710: 26310018 */ addiu $s1,$s1,0x18
/* 14714: 26310010 */ addiu $s1,$s1,0x10
/* 14718: 00603025 */ or $a2,$v1,$zero
/* 1471c: 26310018 */ addiu $s1,$s1,0x18
.NB00014720:
/* 14720: 14a9fff5 */ bne $a1,$t1,.NB000146f8
/* 14724: 24840046 */ addiu $a0,$a0,0x46
/* 14728: 25080002 */ addiu $t0,$t0,0x2
/* 1472c: 29010046 */ slti $at,$t0,0x46
/* 14730: 5420fff0 */ bnezl $at,.NB000146f4
/* 14734: 00002825 */ or $a1,$zero,$zero
/* 14738: 0fc588f2 */ jal 0xf1623c8
/* 1473c: 02002025 */ or $a0,$s0,$zero
/* 14740: 02302023 */ subu $a0,$s1,$s0
/* 14744: 1c800003 */ bgtz $a0,.NB00014754
/* 14748: 24090050 */ addiu $t1,$zero,0x50
/* 1474c: 10000082 */ beqz $zero,.NB00014958
/* 14750: 02001025 */ or $v0,$s0,$zero
.NB00014754:
/* 14754: 2443f800 */ addiu $v1,$v0,-2048
/* 14758: 1c600004 */ bgtz $v1,.NB0001476c
/* 1475c: 2413ffff */ addiu $s3,$zero,-1
/* 14760: 3c018006 */ lui $at,0x8006
/* 14764: 10000017 */ beqz $zero,.NB000147c4
/* 14768: ac201240 */ sw $zero,0x1240($at)
.NB0001476c:
/* 1476c: 0064082a */ slt $at,$v1,$a0
/* 14770: 10200011 */ beqz $at,.NB000147b8
/* 14774: 0003c200 */ sll $t8,$v1,0x8
/* 14778: 0303c023 */ subu $t8,$t8,$v1
/* 1477c: 0304001a */ div $zero,$t8,$a0
/* 14780: 14800002 */ bnez $a0,.NB0001478c
/* 14784: 00000000 */ sll $zero,$zero,0x0
/* 14788: 0007000d */ break 0x7
.NB0001478c:
/* 1478c: 2401ffff */ addiu $at,$zero,-1
/* 14790: 14810004 */ bne $a0,$at,.NB000147a4
/* 14794: 3c018000 */ lui $at,0x8000
/* 14798: 17010002 */ bne $t8,$at,.NB000147a4
/* 1479c: 00000000 */ sll $zero,$zero,0x0
/* 147a0: 0006000d */ break 0x6
.NB000147a4:
/* 147a4: 3c018006 */ lui $at,0x8006
/* 147a8: 0000c812 */ mflo $t9
/* 147ac: ac391240 */ sw $t9,0x1240($at)
/* 147b0: 10000005 */ beqz $zero,.NB000147c8
/* 147b4: 02001025 */ or $v0,$s0,$zero
.NB000147b8:
/* 147b8: 240a0100 */ addiu $t2,$zero,0x100
/* 147bc: 3c018006 */ lui $at,0x8006
/* 147c0: ac2a1240 */ sw $t2,0x1240($at)
.NB000147c4:
/* 147c4: 02001025 */ or $v0,$s0,$zero
.NB000147c8:
/* 147c8: 3c0c8006 */ lui $t4,0x8006
/* 147cc: 258c1180 */ addiu $t4,$t4,0x1180
/* 147d0: 3c0b0600 */ lui $t3,0x600
/* 147d4: 3c178006 */ lui $s7,0x8006
/* 147d8: 3c168006 */ lui $s6,0x8006
/* 147dc: 3c158006 */ lui $s5,0x8006
/* 147e0: ac4b0000 */ sw $t3,0x0($v0)
/* 147e4: ac4c0004 */ sw $t4,0x4($v0)
/* 147e8: 26100008 */ addiu $s0,$s0,0x8
/* 147ec: 26b51208 */ addiu $s5,$s5,0x1208
/* 147f0: 26d6120c */ addiu $s6,$s6,0x120c
/* 147f4: 26f71210 */ addiu $s7,$s7,0x1210
/* 147f8: 0000a025 */ or $s4,$zero,$zero
/* 147fc: 00004025 */ or $t0,$zero,$zero
/* 14800: 3c1ee400 */ lui $s8,0xe400
.NB00014804:
/* 14804: 00008825 */ or $s1,$zero,$zero
/* 14808: 001170c0 */ sll $t6,$s1,0x3
.NB0001480c:
/* 1480c: 01d17021 */ addu $t6,$t6,$s1
/* 14810: 8ead0000 */ lw $t5,0x0($s5)
/* 14814: 000e7080 */ sll $t6,$t6,0x2
/* 14818: 01d17023 */ subu $t6,$t6,$s1
/* 1481c: 000e7040 */ sll $t6,$t6,0x1
/* 14820: 01ae7821 */ addu $t7,$t5,$t6
/* 14824: 01e81021 */ addu $v0,$t7,$t0
/* 14828: 90520000 */ lbu $s2,0x0($v0)
/* 1482c: 90430001 */ lbu $v1,0x1($v0)
/* 14830: 52400042 */ beqzl $s2,.NB0001493c
/* 14834: 26310001 */ addiu $s1,$s1,0x1
/* 14838: 50730011 */ beql $v1,$s3,.NB00014880
/* 1483c: 02002025 */ or $a0,$s0,$zero
/* 14840: 8ed80000 */ lw $t8,0x0($s6)
/* 14844: 000310c0 */ sll $v0,$v1,0x3
/* 14848: 26100010 */ addiu $s0,$s0,0x10
/* 1484c: 0302c821 */ addu $t9,$t8,$v0
/* 14850: 8f210000 */ lw $at,0x0($t9)
/* 14854: 00609825 */ or $s3,$v1,$zero
/* 14858: ae01fff0 */ sw $at,-0x10($s0)
/* 1485c: 8f2b0004 */ lw $t3,0x4($t9)
/* 14860: ae0bfff4 */ sw $t3,-0xc($s0)
/* 14864: 8eec0000 */ lw $t4,0x0($s7)
/* 14868: 01826821 */ addu $t5,$t4,$v0
/* 1486c: 8da10000 */ lw $at,0x0($t5)
/* 14870: ae01fff8 */ sw $at,-0x8($s0)
/* 14874: 8daf0004 */ lw $t7,0x4($t5)
/* 14878: ae0ffffc */ sw $t7,-0x4($s0)
/* 1487c: 02002025 */ or $a0,$s0,$zero
.NB00014880:
/* 14880: 0fc588f2 */ jal 0xf1623c8
/* 14884: afa80040 */ sw $t0,0x40($sp)
/* 14888: 28410400 */ slti $at,$v0,0x400
/* 1488c: 8fa80040 */ lw $t0,0x40($sp)
/* 14890: 14200029 */ bnez $at,.NB00014938
/* 14894: 24090050 */ addiu $t1,$zero,0x50
/* 14898: 00111900 */ sll $v1,$s1,0x4
/* 1489c: 24780010 */ addiu $t8,$v1,0x10
/* 148a0: 330a0fff */ andi $t2,$t8,0xfff
/* 148a4: 001420c0 */ sll $a0,$s4,0x3
/* 148a8: 00942023 */ subu $a0,$a0,$s4
/* 148ac: 000acb00 */ sll $t9,$t2,0xc
/* 148b0: 00042080 */ sll $a0,$a0,0x2
/* 148b4: 306f0fff */ andi $t7,$v1,0xfff
/* 148b8: 000fc300 */ sll $t8,$t7,0xc
/* 148bc: 308a0fff */ andi $t2,$a0,0xfff
/* 148c0: 033e5825 */ or $t3,$t9,$s8
/* 148c4: 030ac825 */ or $t9,$t8,$t2
/* 148c8: 248c001c */ addiu $t4,$a0,0x1c
/* 148cc: 02001025 */ or $v0,$s0,$zero
/* 148d0: 2646ffe0 */ addiu $a2,$s2,-32
/* 148d4: 0006c143 */ sra $t8,$a2,0x5
/* 148d8: 318e0fff */ andi $t6,$t4,0xfff
/* 148dc: 016e6825 */ or $t5,$t3,$t6
/* 148e0: 001850c0 */ sll $t2,$t8,0x3
/* 148e4: 26100008 */ addiu $s0,$s0,0x8
/* 148e8: 02002825 */ or $a1,$s0,$zero
/* 148ec: 01585023 */ subu $t2,$t2,$t8
/* 148f0: ac4d0000 */ sw $t5,0x0($v0)
/* 148f4: ac590004 */ sw $t9,0x4($v0)
/* 148f8: 30cd001f */ andi $t5,$a2,0x1f
/* 148fc: 000a5140 */ sll $t2,$t2,0x5
/* 14900: 3c0cb400 */ lui $t4,0xb400
/* 14904: acac0000 */ sw $t4,0x0($a1)
/* 14908: 3159ffff */ andi $t9,$t2,0xffff
/* 1490c: 000d7dc0 */ sll $t7,$t5,0x17
/* 14910: 26100008 */ addiu $s0,$s0,0x8
/* 14914: 02003825 */ or $a3,$s0,$zero
/* 14918: 01f96025 */ or $t4,$t7,$t9
/* 1491c: acac0004 */ sw $t4,0x4($a1)
/* 14920: 3c0e0400 */ lui $t6,0x400
/* 14924: 35ce0400 */ ori $t6,$t6,0x400
/* 14928: 3c0bb300 */ lui $t3,0xb300
/* 1492c: aceb0000 */ sw $t3,0x0($a3)
/* 14930: acee0004 */ sw $t6,0x4($a3)
/* 14934: 26100008 */ addiu $s0,$s0,0x8
.NB00014938:
/* 14938: 26310001 */ addiu $s1,$s1,0x1
.NB0001493c:
/* 1493c: 5629ffb3 */ bnel $s1,$t1,.NB0001480c
/* 14940: 001170c0 */ sll $t6,$s1,0x3
/* 14944: 26940001 */ addiu $s4,$s4,0x1
/* 14948: 24010023 */ addiu $at,$zero,0x23
/* 1494c: 1681ffad */ bne $s4,$at,.NB00014804
/* 14950: 25080002 */ addiu $t0,$t0,0x2
.NB00014954:
/* 14954: 02001025 */ or $v0,$s0,$zero
.NB00014958:
/* 14958: 8fbf003c */ lw $ra,0x3c($sp)
/* 1495c: 8fb00018 */ lw $s0,0x18($sp)
/* 14960: 8fb1001c */ lw $s1,0x1c($sp)
/* 14964: 8fb20020 */ lw $s2,0x20($sp)
/* 14968: 8fb30024 */ lw $s3,0x24($sp)
/* 1496c: 8fb40028 */ lw $s4,0x28($sp)
/* 14970: 8fb5002c */ lw $s5,0x2c($sp)
/* 14974: 8fb60030 */ lw $s6,0x30($sp)
/* 14978: 8fb70034 */ lw $s7,0x34($sp)
/* 1497c: 8fbe0038 */ lw $s8,0x38($sp)
/* 14980: 03e00008 */ jr $ra
/* 14984: 27bd0088 */ addiu $sp,$sp,0x88
);
#endif
+109 -568
View File
@@ -9,8 +9,6 @@
#include "data.h"
#include "types.h"
u32 var8005ef20 = 0xfe000000;
const u32 var70054200[] = {0x42652ee0};
GLOBAL_ASM(
@@ -109,6 +107,52 @@ void func00016248(struct coord *coord, f32 angle, f32 *matrix)
matrix[15] = 1;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func000171d8nb
/* 171d8: 27bdffe0 */ addiu $sp,$sp,-32
/* 171dc: afbf0014 */ sw $ra,0x14($sp)
/* 171e0: afa50024 */ sw $a1,0x24($sp)
/* 171e4: afa40020 */ sw $a0,0x20($sp)
/* 171e8: c7ac0024 */ lwc1 $f12,0x24($sp)
/* 171ec: 0c006d52 */ jal 0x1b548
/* 171f0: afa60028 */ sw $a2,0x28($sp)
/* 171f4: c7ac0024 */ lwc1 $f12,0x24($sp)
/* 171f8: 0c006d55 */ jal 0x1b554
/* 171fc: e7a0001c */ swc1 $f0,0x1c($sp)
/* 17200: 8fa60028 */ lw $a2,0x28($sp)
/* 17204: 8fa20020 */ lw $v0,0x20($sp)
/* 17208: c7ae001c */ lwc1 $f14,0x1c($sp)
/* 1720c: 44801000 */ mtc1 $zero,$f2
/* 17210: 3c013f80 */ lui $at,0x3f80
/* 17214: 44816000 */ mtc1 $at,$f12
/* 17218: 46000107 */ neg.s $f4,$f0
/* 1721c: e4c00018 */ swc1 $f0,0x18($a2)
/* 17220: e4c40024 */ swc1 $f4,0x24($a2)
/* 17224: e4ce0014 */ swc1 $f14,0x14($a2)
/* 17228: e4ce0028 */ swc1 $f14,0x28($a2)
/* 1722c: e4c20004 */ swc1 $f2,0x4($a2)
/* 17230: e4c20008 */ swc1 $f2,0x8($a2)
/* 17234: e4c2000c */ swc1 $f2,0xc($a2)
/* 17238: e4c20010 */ swc1 $f2,0x10($a2)
/* 1723c: e4c2001c */ swc1 $f2,0x1c($a2)
/* 17240: e4c20020 */ swc1 $f2,0x20($a2)
/* 17244: e4c2002c */ swc1 $f2,0x2c($a2)
/* 17248: e4cc0000 */ swc1 $f12,0x0($a2)
/* 1724c: c4460000 */ lwc1 $f6,0x0($v0)
/* 17250: e4c60030 */ swc1 $f6,0x30($a2)
/* 17254: c4480004 */ lwc1 $f8,0x4($v0)
/* 17258: e4c80034 */ swc1 $f8,0x34($a2)
/* 1725c: c44a0008 */ lwc1 $f10,0x8($v0)
/* 17260: e4cc003c */ swc1 $f12,0x3c($a2)
/* 17264: e4ca0038 */ swc1 $f10,0x38($a2)
/* 17268: 8fbf0014 */ lw $ra,0x14($sp)
/* 1726c: 27bd0020 */ addiu $sp,$sp,0x20
/* 17270: 03e00008 */ jr $ra
/* 17274: 00000000 */ sll $zero,$zero,0x0
);
#endif
void func000162e8(f32 angle, Mtxf *matrix)
{
f32 cos = cosf(angle);
@@ -974,6 +1018,69 @@ glabel func00017028
/* 1706c: 00000000 */ nop
);
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00018000nb
/* 18000: 27bdffb8 */ addiu $sp,$sp,-72
/* 18004: afbe0040 */ sw $s8,0x40($sp)
/* 18008: afb40030 */ sw $s4,0x30($sp)
/* 1800c: afb3002c */ sw $s3,0x2c($sp)
/* 18010: afb20028 */ sw $s2,0x28($sp)
/* 18014: afb7003c */ sw $s7,0x3c($sp)
/* 18018: afb60038 */ sw $s6,0x38($sp)
/* 1801c: afb50034 */ sw $s5,0x34($sp)
/* 18020: 3c127005 */ lui $s2,0x7005
/* 18024: 3c137005 */ lui $s3,0x7005
/* 18028: 3c147005 */ lui $s4,0x7005
/* 1802c: 3c1e7005 */ lui $s8,0x7005
/* 18030: afbf0044 */ sw $ra,0x44($sp)
/* 18034: afb10024 */ sw $s1,0x24($sp)
/* 18038: afb00020 */ sw $s0,0x20($sp)
/* 1803c: 27de5980 */ addiu $s8,$s8,0x5980
/* 18040: 26945994 */ addiu $s4,$s4,0x5994
/* 18044: 26735990 */ addiu $s3,$s3,0x5990
/* 18048: 26525984 */ addiu $s2,$s2,0x5984
/* 1804c: 24150010 */ addiu $s5,$zero,0x10
/* 18050: 0000b025 */ or $s6,$zero,$zero
/* 18054: 0080b825 */ or $s7,$a0,$zero
.NB00018058:
/* 18058: 0c00c47d */ jal 0x311f4
/* 1805c: 03c02025 */ or $a0,$s8,$zero
/* 18060: 00008025 */ or $s0,$zero,$zero
/* 18064: 02e08825 */ or $s1,$s7,$zero
.NB00018068:
/* 18068: c6240000 */ lwc1 $f4,0x0($s1)
/* 1806c: 02402025 */ or $a0,$s2,$zero
/* 18070: 02602825 */ or $a1,$s3,$zero
/* 18074: 460021a1 */ cvt.d.s $f6,$f4
/* 18078: 02803025 */ or $a2,$s4,$zero
/* 1807c: 0c00c47d */ jal 0x311f4
/* 18080: f7a60010 */ sdc1 $f6,0x10($sp)
/* 18084: 26100004 */ addiu $s0,$s0,0x4
/* 18088: 1615fff7 */ bne $s0,$s5,.NB00018068
/* 1808c: 26310004 */ addiu $s1,$s1,0x4
/* 18090: 3c047005 */ lui $a0,0x7005
/* 18094: 0c00c47d */ jal 0x311f4
/* 18098: 24845998 */ addiu $a0,$a0,0x5998
/* 1809c: 26d60001 */ addiu $s6,$s6,0x1
/* 180a0: 24010004 */ addiu $at,$zero,0x4
/* 180a4: 16c1ffec */ bne $s6,$at,.NB00018058
/* 180a8: 26f70010 */ addiu $s7,$s7,0x10
/* 180ac: 8fbf0044 */ lw $ra,0x44($sp)
/* 180b0: 8fb00020 */ lw $s0,0x20($sp)
/* 180b4: 8fb10024 */ lw $s1,0x24($sp)
/* 180b8: 8fb20028 */ lw $s2,0x28($sp)
/* 180bc: 8fb3002c */ lw $s3,0x2c($sp)
/* 180c0: 8fb40030 */ lw $s4,0x30($sp)
/* 180c4: 8fb50034 */ lw $s5,0x34($sp)
/* 180c8: 8fb60038 */ lw $s6,0x38($sp)
/* 180cc: 8fb7003c */ lw $s7,0x3c($sp)
/* 180d0: 8fbe0040 */ lw $s8,0x40($sp)
/* 180d4: 03e00008 */ jr $ra
/* 180d8: 27bd0048 */ addiu $sp,$sp,0x48
);
#endif
GLOBAL_ASM(
glabel func00017070
/* 17070: c4840000 */ lwc1 $f4,0x0($a0)
@@ -1808,569 +1915,3 @@ glabel func00017cbc
/* 17cd8: 03e00008 */ jr $ra
/* 17cdc: 460a3001 */ sub.s $f0,$f6,$f10
);
GLOBAL_ASM(
glabel func00017ce0
/* 17ce0: 3c03800a */ lui $v1,%hi(g_BgPortals)
/* 17ce4: 8c634cc8 */ lw $v1,%lo(g_BgPortals)($v1)
/* 17ce8: 000470c0 */ sll $t6,$a0,0x3
/* 17cec: 3c013f80 */ lui $at,0x3f80
/* 17cf0: 006e7821 */ addu $t7,$v1,$t6
/* 17cf4: 95f80000 */ lhu $t8,0x0($t7)
/* 17cf8: 44815000 */ mtc1 $at,$f10
/* 17cfc: 3c014f80 */ lui $at,0x4f80
/* 17d00: 03031021 */ addu $v0,$t8,$v1
/* 17d04: c4440004 */ lwc1 $f4,0x4($v0)
/* 17d08: 2443000c */ addiu $v1,$v0,0xc
/* 17d0c: 24070001 */ addiu $a3,$zero,0x1
/* 17d10: e4a40000 */ swc1 $f4,0x0($a1)
/* 17d14: c4460008 */ lwc1 $f6,0x8($v0)
/* 17d18: e4a60004 */ swc1 $f6,0x4($a1)
/* 17d1c: c448000c */ lwc1 $f8,0xc($v0)
/* 17d20: e4a80008 */ swc1 $f8,0x8($a1)
/* 17d24: 90460000 */ lbu $a2,0x0($v0)
/* 17d28: 44868000 */ mtc1 $a2,$f16
/* 17d2c: 04c10004 */ bgez $a2,.L00017d40
/* 17d30: 468084a0 */ cvt.s.w $f18,$f16
/* 17d34: 44812000 */ mtc1 $at,$f4
/* 17d38: 00000000 */ nop
/* 17d3c: 46049480 */ add.s $f18,$f18,$f4
.L00017d40:
/* 17d40: 28c10002 */ slti $at,$a2,0x2
/* 17d44: 14200013 */ bnez $at,.L00017d94
/* 17d48: 46125003 */ div.s $f0,$f10,$f18
/* 17d4c: c4a60000 */ lwc1 $f6,0x0($a1)
.L00017d50:
/* 17d50: c4680004 */ lwc1 $f8,0x4($v1)
/* 17d54: c4a40004 */ lwc1 $f4,0x4($a1)
/* 17d58: 24e70001 */ addiu $a3,$a3,0x1
/* 17d5c: 46083400 */ add.s $f16,$f6,$f8
/* 17d60: c4a60008 */ lwc1 $f6,0x8($a1)
/* 17d64: 2463000c */ addiu $v1,$v1,12
/* 17d68: e4b00000 */ swc1 $f16,0x0($a1)
/* 17d6c: c46afffc */ lwc1 $f10,-0x4($v1)
/* 17d70: 460a2480 */ add.s $f18,$f4,$f10
/* 17d74: e4b20004 */ swc1 $f18,0x4($a1)
/* 17d78: c4680000 */ lwc1 $f8,0x0($v1)
/* 17d7c: 46083400 */ add.s $f16,$f6,$f8
/* 17d80: e4b00008 */ swc1 $f16,0x8($a1)
/* 17d84: 90590000 */ lbu $t9,0x0($v0)
/* 17d88: 00f9082a */ slt $at,$a3,$t9
/* 17d8c: 5420fff0 */ bnezl $at,.L00017d50
/* 17d90: c4a60000 */ lwc1 $f6,0x0($a1)
.L00017d94:
/* 17d94: c4a40000 */ lwc1 $f4,0x0($a1)
/* 17d98: c4b20004 */ lwc1 $f18,0x4($a1)
/* 17d9c: c4a80008 */ lwc1 $f8,0x8($a1)
/* 17da0: 46002282 */ mul.s $f10,$f4,$f0
/* 17da4: 00000000 */ nop
/* 17da8: 46009182 */ mul.s $f6,$f18,$f0
/* 17dac: 00000000 */ nop
/* 17db0: 46004402 */ mul.s $f16,$f8,$f0
/* 17db4: e4aa0000 */ swc1 $f10,0x0($a1)
/* 17db8: e4a60004 */ swc1 $f6,0x4($a1)
/* 17dbc: 03e00008 */ jr $ra
/* 17dc0: e4b00008 */ swc1 $f16,0x8($a1)
);
GLOBAL_ASM(
glabel func00017dc4
/* 17dc4: afa50004 */ sw $a1,0x4($sp)
/* 17dc8: 848f0000 */ lh $t7,0x0($a0)
/* 17dcc: 00053400 */ sll $a2,$a1,0x10
/* 17dd0: 00067403 */ sra $t6,$a2,0x10
/* 17dd4: 2407ffff */ addiu $a3,$zero,-1
/* 17dd8: 01c03025 */ or $a2,$t6,$zero
/* 17ddc: 10ef000c */ beq $a3,$t7,.L00017e10
/* 17de0: 00001025 */ or $v0,$zero,$zero
/* 17de4: 0000c040 */ sll $t8,$zero,0x1
/* 17de8: 00981821 */ addu $v1,$a0,$t8
/* 17dec: 84650000 */ lh $a1,0x0($v1)
.L00017df0:
/* 17df0: 10c5000d */ beq $a2,$a1,.L00017e28
/* 17df4: 24420001 */ addiu $v0,$v0,0x1
/* 17df8: 28410010 */ slti $at,$v0,0x10
/* 17dfc: 10200004 */ beqz $at,.L00017e10
/* 17e00: 24630002 */ addiu $v1,$v1,0x2
/* 17e04: 84650000 */ lh $a1,0x0($v1)
/* 17e08: 14e5fff9 */ bne $a3,$a1,.L00017df0
/* 17e0c: 00000000 */ nop
.L00017e10:
/* 17e10: 2841000f */ slti $at,$v0,0xf
/* 17e14: 10200004 */ beqz $at,.L00017e28
/* 17e18: 0002c840 */ sll $t9,$v0,0x1
/* 17e1c: 00991821 */ addu $v1,$a0,$t9
/* 17e20: a4660000 */ sh $a2,0x0($v1)
/* 17e24: a4670002 */ sh $a3,0x2($v1)
.L00017e28:
/* 17e28: 03e00008 */ jr $ra
/* 17e2c: 00000000 */ nop
);
GLOBAL_ASM(
glabel func00017e30
/* 17e30: 3c0e800a */ lui $t6,%hi(var800a4ccc)
/* 17e34: 8dce4ccc */ lw $t6,%lo(var800a4ccc)($t6)
/* 17e38: 00046880 */ sll $t5,$a0,0x2
/* 17e3c: 01a46821 */ addu $t5,$t5,$a0
/* 17e40: 000d6880 */ sll $t5,$t5,0x2
/* 17e44: 01ae4021 */ addu $t0,$t5,$t6
/* 17e48: c50e0000 */ lwc1 $f14,0x0($t0)
/* 17e4c: c4ac0000 */ lwc1 $f12,0x0($a1)
/* 17e50: c5100004 */ lwc1 $f16,0x4($t0)
/* 17e54: c4a40004 */ lwc1 $f4,0x4($a1)
/* 17e58: 460e6282 */ mul.s $f10,$f12,$f14
/* 17e5c: c5020008 */ lwc1 $f2,0x8($t0)
/* 17e60: 3c07800a */ lui $a3,%hi(g_BgPortals)
/* 17e64: 46102182 */ mul.s $f6,$f4,$f16
/* 17e68: c4a40008 */ lwc1 $f4,0x8($a1)
/* 17e6c: 8ce74cc8 */ lw $a3,%lo(g_BgPortals)($a3)
/* 17e70: 000478c0 */ sll $t7,$a0,0x3
/* 17e74: 27bdff90 */ addiu $sp,$sp,-112
/* 17e78: 00efc021 */ addu $t8,$a3,$t7
/* 17e7c: 97190000 */ lhu $t9,0x0($t8)
/* 17e80: 46065200 */ add.s $f8,$f10,$f6
/* 17e84: 46041282 */ mul.s $f10,$f2,$f4
/* 17e88: c4c60000 */ lwc1 $f6,0x0($a2)
/* 17e8c: 00001025 */ or $v0,$zero,$zero
/* 17e90: 03271821 */ addu $v1,$t9,$a3
/* 17e94: e7a60014 */ swc1 $f6,0x14($sp)
/* 17e98: c7a40014 */ lwc1 $f4,0x14($sp)
/* 17e9c: 46085000 */ add.s $f0,$f10,$f8
/* 17ea0: 460e2282 */ mul.s $f10,$f4,$f14
/* 17ea4: c4c80004 */ lwc1 $f8,0x4($a2)
/* 17ea8: 46104182 */ mul.s $f6,$f8,$f16
/* 17eac: c4c80008 */ lwc1 $f8,0x8($a2)
/* 17eb0: 46065100 */ add.s $f4,$f10,$f6
/* 17eb4: c506000c */ lwc1 $f6,0xc($t0)
/* 17eb8: 46081282 */ mul.s $f10,$f2,$f8
/* 17ebc: e7a60010 */ swc1 $f6,0x10($sp)
/* 17ec0: c7a80010 */ lwc1 $f8,0x10($sp)
/* 17ec4: 4608003c */ c.lt.s $f0,$f8
/* 17ec8: 46045480 */ add.s $f18,$f10,$f4
/* 17ecc: 45020008 */ bc1fl .L00017ef0
/* 17ed0: c5020010 */ lwc1 $f2,0x10($t0)
/* 17ed4: 4608903c */ c.lt.s $f18,$f8
/* 17ed8: 00000000 */ nop
/* 17edc: 4502000f */ bc1fl .L00017f1c
/* 17ee0: c7aa0014 */ lwc1 $f10,0x14($sp)
/* 17ee4: 10000096 */ b .L00018140
/* 17ee8: 00001025 */ or $v0,$zero,$zero
/* 17eec: c5020010 */ lwc1 $f2,0x10($t0)
.L00017ef0:
/* 17ef0: 4600103c */ c.lt.s $f2,$f0
/* 17ef4: 00000000 */ nop
/* 17ef8: 45020008 */ bc1fl .L00017f1c
/* 17efc: c7aa0014 */ lwc1 $f10,0x14($sp)
/* 17f00: 4612103c */ c.lt.s $f2,$f18
/* 17f04: 00000000 */ nop
/* 17f08: 45020004 */ bc1fl .L00017f1c
/* 17f0c: c7aa0014 */ lwc1 $f10,0x14($sp)
/* 17f10: 1000008b */ b .L00018140
/* 17f14: 00001025 */ or $v0,$zero,$zero
/* 17f18: c7aa0014 */ lwc1 $f10,0x14($sp)
.L00017f1c:
/* 17f1c: 3c013f00 */ lui $at,0x3f00
/* 17f20: 24670004 */ addiu $a3,$v1,0x4
/* 17f24: 460c5101 */ sub.s $f4,$f10,$f12
/* 17f28: 00e02025 */ or $a0,$a3,$zero
/* 17f2c: 24690010 */ addiu $t1,$v1,0x10
/* 17f30: 00005025 */ or $t2,$zero,$zero
/* 17f34: e7a40060 */ swc1 $f4,0x60($sp)
/* 17f38: c4a80004 */ lwc1 $f8,0x4($a1)
/* 17f3c: c4c60004 */ lwc1 $f6,0x4($a2)
/* 17f40: 240c0001 */ addiu $t4,$zero,0x1
/* 17f44: 46083281 */ sub.s $f10,$f6,$f8
/* 17f48: e7aa0064 */ swc1 $f10,0x64($sp)
/* 17f4c: c4a60008 */ lwc1 $f6,0x8($a1)
/* 17f50: c4c40008 */ lwc1 $f4,0x8($a2)
/* 17f54: 46120280 */ add.s $f10,$f0,$f18
/* 17f58: 46062201 */ sub.s $f8,$f4,$f6
/* 17f5c: 44812000 */ mtc1 $at,$f4
/* 17f60: 3c018008 */ lui $at,%hi(var8007fcb4)
/* 17f64: 46045182 */ mul.s $f6,$f10,$f4
/* 17f68: e7a80068 */ swc1 $f8,0x68($sp)
/* 17f6c: c508000c */ lwc1 $f8,0xc($t0)
/* 17f70: 46083281 */ sub.s $f10,$f6,$f8
/* 17f74: e42afcb4 */ swc1 $f10,%lo(var8007fcb4)($at)
/* 17f78: 906b0000 */ lbu $t3,0x0($v1)
/* 17f7c: 59600068 */ blezl $t3,.L00018120
/* 17f80: c506000c */ lwc1 $f6,0xc($t0)
/* 17f84: 44806000 */ mtc1 $zero,$f12
/* 17f88: 24060002 */ addiu $a2,$zero,0x2
.L00017f8c:
/* 17f8c: 254f0001 */ addiu $t7,$t2,0x1
/* 17f90: 55eb0003 */ bnel $t7,$t3,.L00017fa0
/* 17f94: c5240000 */ lwc1 $f4,0x0($t1)
/* 17f98: 00e04825 */ or $t1,$a3,$zero
/* 17f9c: c5240000 */ lwc1 $f4,0x0($t1)
.L00017fa0:
/* 17fa0: c4860000 */ lwc1 $f6,0x0($a0)
/* 17fa4: 46062201 */ sub.s $f8,$f4,$f6
/* 17fa8: e7a80048 */ swc1 $f8,0x48($sp)
/* 17fac: c4840004 */ lwc1 $f4,0x4($a0)
/* 17fb0: c52a0004 */ lwc1 $f10,0x4($t1)
/* 17fb4: 46045181 */ sub.s $f6,$f10,$f4
/* 17fb8: e7a6004c */ swc1 $f6,0x4c($sp)
/* 17fbc: c48a0008 */ lwc1 $f10,0x8($a0)
/* 17fc0: c5280008 */ lwc1 $f8,0x8($t1)
/* 17fc4: c7a6004c */ lwc1 $f6,0x4c($sp)
/* 17fc8: 460a4101 */ sub.s $f4,$f8,$f10
/* 17fcc: c7a80068 */ lwc1 $f8,0x68($sp)
/* 17fd0: e7a60000 */ swc1 $f6,0x0($sp)
/* 17fd4: e7a40050 */ swc1 $f4,0x50($sp)
/* 17fd8: 46083282 */ mul.s $f10,$f6,$f8
/* 17fdc: c7a60050 */ lwc1 $f6,0x50($sp)
/* 17fe0: c7a40064 */ lwc1 $f4,0x64($sp)
/* 17fe4: e7a80004 */ swc1 $f8,0x4($sp)
/* 17fe8: 46062202 */ mul.s $f8,$f4,$f6
/* 17fec: e7a40008 */ swc1 $f4,0x8($sp)
/* 17ff0: c7a40004 */ lwc1 $f4,0x4($sp)
/* 17ff4: 46085281 */ sub.s $f10,$f10,$f8
/* 17ff8: c7a80060 */ lwc1 $f8,0x60($sp)
/* 17ffc: e7aa0034 */ swc1 $f10,0x34($sp)
/* 18000: e7aa0004 */ swc1 $f10,0x4($sp)
/* 18004: 46083182 */ mul.s $f6,$f6,$f8
/* 18008: c7aa0048 */ lwc1 $f10,0x48($sp)
/* 1800c: 460a2102 */ mul.s $f4,$f4,$f10
/* 18010: 46043181 */ sub.s $f6,$f6,$f4
/* 18014: c7a40008 */ lwc1 $f4,0x8($sp)
/* 18018: 46045282 */ mul.s $f10,$f10,$f4
/* 1801c: c7a40000 */ lwc1 $f4,0x0($sp)
/* 18020: e7a60038 */ swc1 $f6,0x38($sp)
/* 18024: 46044202 */ mul.s $f8,$f8,$f4
/* 18028: 46085101 */ sub.s $f4,$f10,$f8
/* 1802c: c7aa0004 */ lwc1 $f10,0x4($sp)
/* 18030: 460a5202 */ mul.s $f8,$f10,$f10
/* 18034: e7a4003c */ swc1 $f4,0x3c($sp)
/* 18038: 46063282 */ mul.s $f10,$f6,$f6
/* 1803c: 460a4180 */ add.s $f6,$f8,$f10
/* 18040: 46042202 */ mul.s $f8,$f4,$f4
/* 18044: c7aa0034 */ lwc1 $f10,0x34($sp)
/* 18048: 46064080 */ add.s $f2,$f8,$f6
/* 1804c: 460c1032 */ c.eq.s $f2,$f12
/* 18050: 00000000 */ nop
/* 18054: 45020004 */ bc1fl .L00018068
/* 18058: c4840000 */ lwc1 $f4,0x0($a0)
/* 1805c: 10000038 */ b .L00018140
/* 18060: 00001025 */ or $v0,$zero,$zero
/* 18064: c4840000 */ lwc1 $f4,0x0($a0)
.L00018068:
/* 18068: c7a60038 */ lwc1 $f6,0x38($sp)
/* 1806c: 46045202 */ mul.s $f8,$f10,$f4
/* 18070: c4840004 */ lwc1 $f4,0x4($a0)
/* 18074: 46043102 */ mul.s $f4,$f6,$f4
/* 18078: 46044200 */ add.s $f8,$f8,$f4
/* 1807c: c4840008 */ lwc1 $f4,0x8($a0)
/* 18080: e7aa0008 */ swc1 $f10,0x8($sp)
/* 18084: c7aa003c */ lwc1 $f10,0x3c($sp)
/* 18088: 460a2102 */ mul.s $f4,$f4,$f10
/* 1808c: 46082100 */ add.s $f4,$f4,$f8
/* 18090: c7a80008 */ lwc1 $f8,0x8($sp)
/* 18094: e7a60008 */ swc1 $f6,0x8($sp)
/* 18098: e7a40040 */ swc1 $f4,0x40($sp)
/* 1809c: c4a60000 */ lwc1 $f6,0x0($a1)
/* 180a0: 46064202 */ mul.s $f8,$f8,$f6
/* 180a4: c7a60008 */ lwc1 $f6,0x8($sp)
/* 180a8: e7aa0008 */ swc1 $f10,0x8($sp)
/* 180ac: c4aa0004 */ lwc1 $f10,0x4($a1)
/* 180b0: 460a3182 */ mul.s $f6,$f6,$f10
/* 180b4: 46064280 */ add.s $f10,$f8,$f6
/* 180b8: c7a60008 */ lwc1 $f6,0x8($sp)
/* 180bc: c4a80008 */ lwc1 $f8,0x8($a1)
/* 180c0: 46064202 */ mul.s $f8,$f8,$f6
/* 180c4: 460a4080 */ add.s $f2,$f8,$f10
/* 180c8: 4604103c */ c.lt.s $f2,$f4
/* 180cc: 00000000 */ nop
/* 180d0: 45000007 */ bc1f .L000180f0
/* 180d4: 00000000 */ nop
/* 180d8: 14c20003 */ bne $a2,$v0,.L000180e8
/* 180dc: 00000000 */ nop
/* 180e0: 10000017 */ b .L00018140
/* 180e4: 00001025 */ or $v0,$zero,$zero
.L000180e8:
/* 180e8: 10000006 */ b .L00018104
/* 180ec: 24020001 */ addiu $v0,$zero,0x1
.L000180f0:
/* 180f0: 55820004 */ bnel $t4,$v0,.L00018104
/* 180f4: 24020002 */ addiu $v0,$zero,0x2
/* 180f8: 10000011 */ b .L00018140
/* 180fc: 00001025 */ or $v0,$zero,$zero
/* 18100: 24020002 */ addiu $v0,$zero,0x2
.L00018104:
/* 18104: 906b0000 */ lbu $t3,0x0($v1)
/* 18108: 254a0001 */ addiu $t2,$t2,0x1
/* 1810c: 2484000c */ addiu $a0,$a0,0xc
/* 18110: 014b082a */ slt $at,$t2,$t3
/* 18114: 1420ff9d */ bnez $at,.L00017f8c
/* 18118: 2529000c */ addiu $t1,$t1,0xc
/* 1811c: c506000c */ lwc1 $f6,0xc($t0)
.L00018120:
/* 18120: 24030002 */ addiu $v1,$zero,0x2
/* 18124: 4606003c */ c.lt.s $f0,$f6
/* 18128: 00000000 */ nop
/* 1812c: 45000003 */ bc1f .L0001813c
/* 18130: 00000000 */ nop
/* 18134: 10000001 */ b .L0001813c
/* 18138: 24030001 */ addiu $v1,$zero,0x1
.L0001813c:
/* 1813c: 00601025 */ or $v0,$v1,$zero
.L00018140:
/* 18140: 03e00008 */ jr $ra
/* 18144: 27bd0070 */ addiu $sp,$sp,0x70
);
GLOBAL_ASM(
glabel func00018148
/* 18148: 27bdff30 */ addiu $sp,$sp,-208
/* 1814c: afa400d0 */ sw $a0,0xd0($sp)
/* 18150: afa500d4 */ sw $a1,0xd4($sp)
/* 18154: afbf003c */ sw $ra,0x3c($sp)
/* 18158: afbe0038 */ sw $s8,0x38($sp)
/* 1815c: afb70034 */ sw $s7,0x34($sp)
/* 18160: afb60030 */ sw $s6,0x30($sp)
/* 18164: afb5002c */ sw $s5,0x2c($sp)
/* 18168: afb40028 */ sw $s4,0x28($sp)
/* 1816c: afb30024 */ sw $s3,0x24($sp)
/* 18170: afb20020 */ sw $s2,0x20($sp)
/* 18174: afb1001c */ sw $s1,0x1c($sp)
/* 18178: afb00018 */ sw $s0,0x18($sp)
/* 1817c: afa700dc */ sw $a3,0xdc($sp)
/* 18180: 27a5006c */ addiu $a1,$sp,0x6c
/* 18184: 2404ffff */ addiu $a0,$zero,-1
/* 18188: 27a8009c */ addiu $t0,$sp,0x9c
/* 1818c: 27a2005c */ addiu $v0,$sp,0x5c
/* 18190: 00c01825 */ or $v1,$a2,$zero
.L00018194:
/* 18194: 846e0000 */ lh $t6,0x0($v1)
/* 18198: 24420002 */ addiu $v0,$v0,0x2
/* 1819c: 0045082b */ sltu $at,$v0,$a1
/* 181a0: a50e0000 */ sh $t6,0x0($t0)
/* 181a4: 846f0000 */ lh $t7,0x0($v1)
/* 181a8: 25080002 */ addiu $t0,$t0,0x2
/* 181ac: a44ffffe */ sh $t7,-0x2($v0)
/* 181b0: 84780000 */ lh $t8,0x0($v1)
/* 181b4: 14980003 */ bne $a0,$t8,.L000181c4
/* 181b8: 00000000 */ nop
/* 181bc: 10000004 */ b .L000181d0
/* 181c0: 0000b825 */ or $s7,$zero,$zero
.L000181c4:
/* 181c4: 1420fff3 */ bnez $at,.L00018194
/* 181c8: 24630002 */ addiu $v1,$v1,0x2
/* 181cc: 0000b825 */ or $s7,$zero,$zero
.L000181d0:
/* 181d0: 3c198006 */ lui $t9,%hi(var8005ef20)
/* 181d4: 9339ef20 */ lbu $t9,%lo(var8005ef20)($t9)
/* 181d8: 3c018006 */ lui $at,%hi(var8005ef20)
/* 181dc: 27be007c */ addiu $s8,$sp,0x7c
/* 181e0: 27290001 */ addiu $t1,$t9,0x1
/* 181e4: a029ef20 */ sb $t1,%lo(var8005ef20)($at)
/* 181e8: 240100ff */ addiu $at,$zero,0xff
/* 181ec: 312a00ff */ andi $t2,$t1,0xff
/* 181f0: 15410010 */ bne $t2,$at,.L00018234
/* 181f4: 3c14800a */ lui $s4,%hi(g_BgPortals)
/* 181f8: 3c038008 */ lui $v1,%hi(g_NumPortalThings)
/* 181fc: 8c63fc40 */ lw $v1,%lo(g_NumPortalThings)($v1)
/* 18200: 3c0b800a */ lui $t3,%hi(g_Vars+0x520)
/* 18204: 2562a4e0 */ addiu $v0,$t3,%lo(g_Vars+0x520)
/* 18208: 18600008 */ blez $v1,.L0001822c
/* 1820c: 00036040 */ sll $t4,$v1,0x1
/* 18210: 01822821 */ addu $a1,$t4,$v0
/* 18214: 240300ff */ addiu $v1,$zero,0xff
.L00018218:
/* 18218: 24420002 */ addiu $v0,$v0,0x2
/* 1821c: 0045082b */ sltu $at,$v0,$a1
/* 18220: 1420fffd */ bnez $at,.L00018218
/* 18224: a043fffe */ sb $v1,-0x2($v0)
/* 18228: 0000b825 */ or $s7,$zero,$zero
.L0001822c:
/* 1822c: 3c018006 */ lui $at,%hi(var8005ef20)
/* 18230: a020ef20 */ sb $zero,%lo(var8005ef20)($at)
.L00018234:
/* 18234: 26944cc8 */ addiu $s4,$s4,%lo(g_BgPortals)
/* 18238: 87b5009c */ lh $s5,0x9c($sp)
.L0001823c:
/* 1823c: a7a4007c */ sh $a0,0x7c($sp)
/* 18240: 00006840 */ sll $t5,$zero,0x1
/* 18244: 12a40058 */ beq $s5,$a0,.L000183a8
/* 18248: 27ae009c */ addiu $t6,$sp,0x9c
/* 1824c: 01ae7821 */ addu $t7,$t5,$t6
/* 18250: afaf0044 */ sw $t7,0x44($sp)
/* 18254: 0015c8c0 */ sll $t9,$s5,0x3
.L00018258:
/* 18258: 0335c821 */ addu $t9,$t9,$s5
/* 1825c: 3c18800a */ lui $t8,%hi(g_Rooms)
/* 18260: 8f184928 */ lw $t8,%lo(g_Rooms)($t8)
/* 18264: 0019c880 */ sll $t9,$t9,0x2
/* 18268: 0335c823 */ subu $t9,$t9,$s5
/* 1826c: 0019c880 */ sll $t9,$t9,0x2
/* 18270: 03191021 */ addu $v0,$t8,$t9
/* 18274: 8449000e */ lh $t1,0xe($v0)
/* 18278: 80560005 */ lb $s6,0x5($v0)
/* 1827c: 3c0c800a */ lui $t4,%hi(g_RoomPortals)
/* 18280: 8d8c4ce0 */ lw $t4,%lo(g_RoomPortals)($t4)
/* 18284: 00095040 */ sll $t2,$t1,0x1
/* 18288: 1ac0003e */ blez $s6,.L00018384
/* 1828c: 014c9821 */ addu $s3,$t2,$t4
.L00018290:
/* 18290: 86720000 */ lh $s2,0x0($s3)
/* 18294: 3c0d800a */ lui $t5,%hi(g_Vars+0x520)
/* 18298: 25ada4e0 */ addiu $t5,$t5,%lo(g_Vars+0x520)
/* 1829c: 00125840 */ sll $t3,$s2,0x1
/* 182a0: 016d8821 */ addu $s1,$t3,$t5
/* 182a4: 3c028006 */ lui $v0,%hi(var8005ef20)
/* 182a8: 9042ef20 */ lbu $v0,%lo(var8005ef20)($v0)
/* 182ac: 922e0000 */ lbu $t6,0x0($s1)
/* 182b0: 02402025 */ or $a0,$s2,$zero
/* 182b4: 504e0007 */ beql $v0,$t6,.L000182d4
/* 182b8: 92230001 */ lbu $v1,0x1($s1)
/* 182bc: a2220000 */ sb $v0,0x0($s1)
/* 182c0: 8fa500d0 */ lw $a1,0xd0($sp)
/* 182c4: 0c005f8c */ jal func00017e30
/* 182c8: 8fa600d4 */ lw $a2,0xd4($sp)
/* 182cc: a2220001 */ sb $v0,0x1($s1)
/* 182d0: 92230001 */ lbu $v1,0x1($s1)
.L000182d4:
/* 182d4: 24010001 */ addiu $at,$zero,0x1
/* 182d8: 50600026 */ beqzl $v1,.L00018374
/* 182dc: 26f70001 */ addiu $s7,$s7,0x1
/* 182e0: 54610012 */ bnel $v1,$at,.L0001832c
/* 182e4: 24010002 */ addiu $at,$zero,0x2
/* 182e8: 8e8f0000 */ lw $t7,0x0($s4)
/* 182ec: 001280c0 */ sll $s0,$s2,0x3
/* 182f0: 03c02025 */ or $a0,$s8,$zero
/* 182f4: 01f01021 */ addu $v0,$t7,$s0
/* 182f8: 84580002 */ lh $t8,0x2($v0)
/* 182fc: 56b8000b */ bnel $s5,$t8,.L0001832c
/* 18300: 24010002 */ addiu $at,$zero,0x2
/* 18304: 0c005f71 */ jal func00017dc4
/* 18308: 84450004 */ lh $a1,0x4($v0)
/* 1830c: 8e990000 */ lw $t9,0x0($s4)
/* 18310: 27a4005c */ addiu $a0,$sp,0x5c
/* 18314: 03304821 */ addu $t1,$t9,$s0
/* 18318: 0c005f71 */ jal func00017dc4
/* 1831c: 85250004 */ lh $a1,0x4($t1)
/* 18320: a2200001 */ sb $zero,0x1($s1)
/* 18324: 300300ff */ andi $v1,$zero,0xff
/* 18328: 24010002 */ addiu $at,$zero,0x2
.L0001832c:
/* 1832c: 54610011 */ bnel $v1,$at,.L00018374
/* 18330: 26f70001 */ addiu $s7,$s7,0x1
/* 18334: 8e8a0000 */ lw $t2,0x0($s4)
/* 18338: 001280c0 */ sll $s0,$s2,0x3
/* 1833c: 03c02025 */ or $a0,$s8,$zero
/* 18340: 01501021 */ addu $v0,$t2,$s0
/* 18344: 844c0004 */ lh $t4,0x4($v0)
/* 18348: 56ac000a */ bnel $s5,$t4,.L00018374
/* 1834c: 26f70001 */ addiu $s7,$s7,0x1
/* 18350: 0c005f71 */ jal func00017dc4
/* 18354: 84450002 */ lh $a1,0x2($v0)
/* 18358: 8e8b0000 */ lw $t3,0x0($s4)
/* 1835c: 27a4005c */ addiu $a0,$sp,0x5c
/* 18360: 01706821 */ addu $t5,$t3,$s0
/* 18364: 0c005f71 */ jal func00017dc4
/* 18368: 85a50002 */ lh $a1,0x2($t5)
/* 1836c: a2200001 */ sb $zero,0x1($s1)
/* 18370: 26f70001 */ addiu $s7,$s7,0x1
.L00018374:
/* 18374: 16f6ffc6 */ bne $s7,$s6,.L00018290
/* 18378: 26730002 */ addiu $s3,$s3,0x2
/* 1837c: 0000b825 */ or $s7,$zero,$zero
/* 18380: 2404ffff */ addiu $a0,$zero,-1
.L00018384:
/* 18384: 8fae0044 */ lw $t6,0x44($sp)
/* 18388: 27b800bc */ addiu $t8,$sp,0xbc
/* 1838c: 25cf0002 */ addiu $t7,$t6,0x2
/* 18390: afaf0044 */ sw $t7,0x44($sp)
/* 18394: 85f50000 */ lh $s5,0x0($t7)
/* 18398: 52a40004 */ beql $s5,$a0,.L000183ac
/* 1839c: 87b9007c */ lh $t9,0x7c($sp)
/* 183a0: 55f8ffad */ bnel $t7,$t8,.L00018258
/* 183a4: 0015c8c0 */ sll $t9,$s5,0x3
.L000183a8:
/* 183a8: 87b9007c */ lh $t9,0x7c($sp)
.L000183ac:
/* 183ac: 27a8009c */ addiu $t0,$sp,0x9c
/* 183b0: 27a3007c */ addiu $v1,$sp,0x7c
/* 183b4: 5099000f */ beql $a0,$t9,.L000183f4
/* 183b8: 87ac009c */ lh $t4,0x9c($sp)
.L000183bc:
/* 183bc: 84620000 */ lh $v0,0x0($v1)
/* 183c0: 24630002 */ addiu $v1,$v1,0x2
/* 183c4: 27a9009c */ addiu $t1,$sp,0x9c
/* 183c8: 14820003 */ bne $a0,$v0,.L000183d8
/* 183cc: a5020000 */ sh $v0,0x0($t0)
/* 183d0: 10000004 */ b .L000183e4
/* 183d4: 0000b825 */ or $s7,$zero,$zero
.L000183d8:
/* 183d8: 1469fff8 */ bne $v1,$t1,.L000183bc
/* 183dc: 25080002 */ addiu $t0,$t0,0x2
/* 183e0: 0000b825 */ or $s7,$zero,$zero
.L000183e4:
/* 183e4: 87aa007c */ lh $t2,0x7c($sp)
/* 183e8: 548aff94 */ bnel $a0,$t2,.L0001823c
/* 183ec: 87b5009c */ lh $s5,0x9c($sp)
/* 183f0: 87ac009c */ lh $t4,0x9c($sp)
.L000183f4:
/* 183f4: 27ab009c */ addiu $t3,$sp,0x9c
/* 183f8: 8fad00dc */ lw $t5,0xdc($sp)
/* 183fc: 508c0010 */ beql $a0,$t4,.L00018440
/* 18400: 8fae00dc */ lw $t6,0xdc($sp)
/* 18404: 00172040 */ sll $a0,$s7,0x1
/* 18408: 008b4021 */ addu $t0,$a0,$t3
/* 1840c: 01a41821 */ addu $v1,$t5,$a0
/* 18410: 2404ffff */ addiu $a0,$zero,-1
/* 18414: 85020000 */ lh $v0,0x0($t0)
/* 18418: 26f70001 */ addiu $s7,$s7,0x1
.L0001841c:
/* 1841c: 2ae10007 */ slti $at,$s7,0x7
/* 18420: 25080002 */ addiu $t0,$t0,0x2
/* 18424: 24630002 */ addiu $v1,$v1,0x2
/* 18428: 10200004 */ beqz $at,.L0001843c
/* 1842c: a462fffe */ sh $v0,-0x2($v1)
/* 18430: 85020000 */ lh $v0,0x0($t0)
/* 18434: 5482fff9 */ bnel $a0,$v0,.L0001841c
/* 18438: 26f70001 */ addiu $s7,$s7,0x1
.L0001843c:
/* 1843c: 8fae00dc */ lw $t6,0xdc($sp)
.L00018440:
/* 18440: 8fa600e0 */ lw $a2,0xe0($sp)
/* 18444: 00177840 */ sll $t7,$s7,0x1
/* 18448: 01cfc021 */ addu $t8,$t6,$t7
/* 1844c: 10c00013 */ beqz $a2,.L0001849c
/* 18450: a7040000 */ sh $a0,0x0($t8)
/* 18454: 8fa500e4 */ lw $a1,0xe4($sp)
/* 18458: 0000b825 */ or $s7,$zero,$zero
/* 1845c: 27a2005c */ addiu $v0,$sp,0x5c
/* 18460: 18a0000b */ blez $a1,.L00018490
/* 18464: 00c01825 */ or $v1,$a2,$zero
/* 18468: 2404ffff */ addiu $a0,$zero,-1
.L0001846c:
/* 1846c: 84590000 */ lh $t9,0x0($v0)
/* 18470: 24420002 */ addiu $v0,$v0,0x2
/* 18474: a4790000 */ sh $t9,0x0($v1)
/* 18478: 8449fffe */ lh $t1,-0x2($v0)
/* 1847c: 50890005 */ beql $a0,$t1,.L00018494
/* 18480: 00175040 */ sll $t2,$s7,0x1
/* 18484: 26f70001 */ addiu $s7,$s7,0x1
/* 18488: 16e5fff8 */ bne $s7,$a1,.L0001846c
/* 1848c: 24630002 */ addiu $v1,$v1,0x2
.L00018490:
/* 18490: 00175040 */ sll $t2,$s7,0x1
.L00018494:
/* 18494: 00ca6021 */ addu $t4,$a2,$t2
/* 18498: a5840000 */ sh $a0,0x0($t4)
.L0001849c:
/* 1849c: 8fbf003c */ lw $ra,0x3c($sp)
/* 184a0: 8fb00018 */ lw $s0,0x18($sp)
/* 184a4: 8fb1001c */ lw $s1,0x1c($sp)
/* 184a8: 8fb20020 */ lw $s2,0x20($sp)
/* 184ac: 8fb30024 */ lw $s3,0x24($sp)
/* 184b0: 8fb40028 */ lw $s4,0x28($sp)
/* 184b4: 8fb5002c */ lw $s5,0x2c($sp)
/* 184b8: 8fb60030 */ lw $s6,0x30($sp)
/* 184bc: 8fb70034 */ lw $s7,0x34($sp)
/* 184c0: 8fbe0038 */ lw $s8,0x38($sp)
/* 184c4: 03e00008 */ jr $ra
/* 184c8: 27bd00d0 */ addiu $sp,$sp,0xd0
);
+608
View File
@@ -0,0 +1,608 @@
#include <ultra64.h>
#include "constants.h"
#include "game/atan2f.h"
#include "game/padhalllv.h"
#include "bss.h"
#include "lib/lib_159b0.h"
#include "lib/lib_16110.h"
#include "lib/lib_4f5e0.h"
#include "data.h"
#include "types.h"
u32 var8005ef20 = 0xfe000000;
GLOBAL_ASM(
glabel func00017ce0
/* 17ce0: 3c03800a */ lui $v1,%hi(g_BgPortals)
/* 17ce4: 8c634cc8 */ lw $v1,%lo(g_BgPortals)($v1)
/* 17ce8: 000470c0 */ sll $t6,$a0,0x3
/* 17cec: 3c013f80 */ lui $at,0x3f80
/* 17cf0: 006e7821 */ addu $t7,$v1,$t6
/* 17cf4: 95f80000 */ lhu $t8,0x0($t7)
/* 17cf8: 44815000 */ mtc1 $at,$f10
/* 17cfc: 3c014f80 */ lui $at,0x4f80
/* 17d00: 03031021 */ addu $v0,$t8,$v1
/* 17d04: c4440004 */ lwc1 $f4,0x4($v0)
/* 17d08: 2443000c */ addiu $v1,$v0,0xc
/* 17d0c: 24070001 */ addiu $a3,$zero,0x1
/* 17d10: e4a40000 */ swc1 $f4,0x0($a1)
/* 17d14: c4460008 */ lwc1 $f6,0x8($v0)
/* 17d18: e4a60004 */ swc1 $f6,0x4($a1)
/* 17d1c: c448000c */ lwc1 $f8,0xc($v0)
/* 17d20: e4a80008 */ swc1 $f8,0x8($a1)
/* 17d24: 90460000 */ lbu $a2,0x0($v0)
/* 17d28: 44868000 */ mtc1 $a2,$f16
/* 17d2c: 04c10004 */ bgez $a2,.L00017d40
/* 17d30: 468084a0 */ cvt.s.w $f18,$f16
/* 17d34: 44812000 */ mtc1 $at,$f4
/* 17d38: 00000000 */ nop
/* 17d3c: 46049480 */ add.s $f18,$f18,$f4
.L00017d40:
/* 17d40: 28c10002 */ slti $at,$a2,0x2
/* 17d44: 14200013 */ bnez $at,.L00017d94
/* 17d48: 46125003 */ div.s $f0,$f10,$f18
/* 17d4c: c4a60000 */ lwc1 $f6,0x0($a1)
.L00017d50:
/* 17d50: c4680004 */ lwc1 $f8,0x4($v1)
/* 17d54: c4a40004 */ lwc1 $f4,0x4($a1)
/* 17d58: 24e70001 */ addiu $a3,$a3,0x1
/* 17d5c: 46083400 */ add.s $f16,$f6,$f8
/* 17d60: c4a60008 */ lwc1 $f6,0x8($a1)
/* 17d64: 2463000c */ addiu $v1,$v1,12
/* 17d68: e4b00000 */ swc1 $f16,0x0($a1)
/* 17d6c: c46afffc */ lwc1 $f10,-0x4($v1)
/* 17d70: 460a2480 */ add.s $f18,$f4,$f10
/* 17d74: e4b20004 */ swc1 $f18,0x4($a1)
/* 17d78: c4680000 */ lwc1 $f8,0x0($v1)
/* 17d7c: 46083400 */ add.s $f16,$f6,$f8
/* 17d80: e4b00008 */ swc1 $f16,0x8($a1)
/* 17d84: 90590000 */ lbu $t9,0x0($v0)
/* 17d88: 00f9082a */ slt $at,$a3,$t9
/* 17d8c: 5420fff0 */ bnezl $at,.L00017d50
/* 17d90: c4a60000 */ lwc1 $f6,0x0($a1)
.L00017d94:
/* 17d94: c4a40000 */ lwc1 $f4,0x0($a1)
/* 17d98: c4b20004 */ lwc1 $f18,0x4($a1)
/* 17d9c: c4a80008 */ lwc1 $f8,0x8($a1)
/* 17da0: 46002282 */ mul.s $f10,$f4,$f0
/* 17da4: 00000000 */ nop
/* 17da8: 46009182 */ mul.s $f6,$f18,$f0
/* 17dac: 00000000 */ nop
/* 17db0: 46004402 */ mul.s $f16,$f8,$f0
/* 17db4: e4aa0000 */ swc1 $f10,0x0($a1)
/* 17db8: e4a60004 */ swc1 $f6,0x4($a1)
/* 17dbc: 03e00008 */ jr $ra
/* 17dc0: e4b00008 */ swc1 $f16,0x8($a1)
);
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00018e34nb
/* 18e34: 3c0e800b */ lui $t6,0x800b
/* 18e38: 8dce9448 */ lw $t6,-0x6bb8($t6)
/* 18e3c: 000478c0 */ sll $t7,$a0,0x3
/* 18e40: 01cfc021 */ addu $t8,$t6,$t7
/* 18e44: 93020006 */ lbu $v0,0x6($t8)
/* 18e48: 30590002 */ andi $t9,$v0,0x2
/* 18e4c: 03e00008 */ jr $ra
/* 18e50: 03201025 */ or $v0,$t9,$zero
/* 18e54: 3c0e800b */ lui $t6,0x800b
/* 18e58: 8dce9448 */ lw $t6,-0x6bb8($t6)
/* 18e5c: 000478c0 */ sll $t7,$a0,0x3
/* 18e60: 01cf1021 */ addu $v0,$t6,$t7
/* 18e64: 90580006 */ lbu $t8,0x6($v0)
/* 18e68: 37190002 */ ori $t9,$t8,0x2
/* 18e6c: 03e00008 */ jr $ra
/* 18e70: a0590006 */ sb $t9,0x6($v0)
/* 18e74: 3c0e800b */ lui $t6,0x800b
/* 18e78: 8dce9448 */ lw $t6,-0x6bb8($t6)
/* 18e7c: 000478c0 */ sll $t7,$a0,0x3
/* 18e80: 01cf1021 */ addu $v0,$t6,$t7
/* 18e84: 90580006 */ lbu $t8,0x6($v0)
/* 18e88: 331900fd */ andi $t9,$t8,0xfd
/* 18e8c: 03e00008 */ jr $ra
/* 18e90: a0590006 */ sb $t9,0x6($v0)
);
#endif
GLOBAL_ASM(
glabel func00017dc4
/* 17dc4: afa50004 */ sw $a1,0x4($sp)
/* 17dc8: 848f0000 */ lh $t7,0x0($a0)
/* 17dcc: 00053400 */ sll $a2,$a1,0x10
/* 17dd0: 00067403 */ sra $t6,$a2,0x10
/* 17dd4: 2407ffff */ addiu $a3,$zero,-1
/* 17dd8: 01c03025 */ or $a2,$t6,$zero
/* 17ddc: 10ef000c */ beq $a3,$t7,.L00017e10
/* 17de0: 00001025 */ or $v0,$zero,$zero
/* 17de4: 0000c040 */ sll $t8,$zero,0x1
/* 17de8: 00981821 */ addu $v1,$a0,$t8
/* 17dec: 84650000 */ lh $a1,0x0($v1)
.L00017df0:
/* 17df0: 10c5000d */ beq $a2,$a1,.L00017e28
/* 17df4: 24420001 */ addiu $v0,$v0,0x1
/* 17df8: 28410010 */ slti $at,$v0,0x10
/* 17dfc: 10200004 */ beqz $at,.L00017e10
/* 17e00: 24630002 */ addiu $v1,$v1,0x2
/* 17e04: 84650000 */ lh $a1,0x0($v1)
/* 17e08: 14e5fff9 */ bne $a3,$a1,.L00017df0
/* 17e0c: 00000000 */ nop
.L00017e10:
/* 17e10: 2841000f */ slti $at,$v0,0xf
/* 17e14: 10200004 */ beqz $at,.L00017e28
/* 17e18: 0002c840 */ sll $t9,$v0,0x1
/* 17e1c: 00991821 */ addu $v1,$a0,$t9
/* 17e20: a4660000 */ sh $a2,0x0($v1)
/* 17e24: a4670002 */ sh $a3,0x2($v1)
.L00017e28:
/* 17e28: 03e00008 */ jr $ra
/* 17e2c: 00000000 */ nop
);
GLOBAL_ASM(
glabel func00017e30
/* 17e30: 3c0e800a */ lui $t6,%hi(var800a4ccc)
/* 17e34: 8dce4ccc */ lw $t6,%lo(var800a4ccc)($t6)
/* 17e38: 00046880 */ sll $t5,$a0,0x2
/* 17e3c: 01a46821 */ addu $t5,$t5,$a0
/* 17e40: 000d6880 */ sll $t5,$t5,0x2
/* 17e44: 01ae4021 */ addu $t0,$t5,$t6
/* 17e48: c50e0000 */ lwc1 $f14,0x0($t0)
/* 17e4c: c4ac0000 */ lwc1 $f12,0x0($a1)
/* 17e50: c5100004 */ lwc1 $f16,0x4($t0)
/* 17e54: c4a40004 */ lwc1 $f4,0x4($a1)
/* 17e58: 460e6282 */ mul.s $f10,$f12,$f14
/* 17e5c: c5020008 */ lwc1 $f2,0x8($t0)
/* 17e60: 3c07800a */ lui $a3,%hi(g_BgPortals)
/* 17e64: 46102182 */ mul.s $f6,$f4,$f16
/* 17e68: c4a40008 */ lwc1 $f4,0x8($a1)
/* 17e6c: 8ce74cc8 */ lw $a3,%lo(g_BgPortals)($a3)
/* 17e70: 000478c0 */ sll $t7,$a0,0x3
/* 17e74: 27bdff90 */ addiu $sp,$sp,-112
/* 17e78: 00efc021 */ addu $t8,$a3,$t7
/* 17e7c: 97190000 */ lhu $t9,0x0($t8)
/* 17e80: 46065200 */ add.s $f8,$f10,$f6
/* 17e84: 46041282 */ mul.s $f10,$f2,$f4
/* 17e88: c4c60000 */ lwc1 $f6,0x0($a2)
/* 17e8c: 00001025 */ or $v0,$zero,$zero
/* 17e90: 03271821 */ addu $v1,$t9,$a3
/* 17e94: e7a60014 */ swc1 $f6,0x14($sp)
/* 17e98: c7a40014 */ lwc1 $f4,0x14($sp)
/* 17e9c: 46085000 */ add.s $f0,$f10,$f8
/* 17ea0: 460e2282 */ mul.s $f10,$f4,$f14
/* 17ea4: c4c80004 */ lwc1 $f8,0x4($a2)
/* 17ea8: 46104182 */ mul.s $f6,$f8,$f16
/* 17eac: c4c80008 */ lwc1 $f8,0x8($a2)
/* 17eb0: 46065100 */ add.s $f4,$f10,$f6
/* 17eb4: c506000c */ lwc1 $f6,0xc($t0)
/* 17eb8: 46081282 */ mul.s $f10,$f2,$f8
/* 17ebc: e7a60010 */ swc1 $f6,0x10($sp)
/* 17ec0: c7a80010 */ lwc1 $f8,0x10($sp)
/* 17ec4: 4608003c */ c.lt.s $f0,$f8
/* 17ec8: 46045480 */ add.s $f18,$f10,$f4
/* 17ecc: 45020008 */ bc1fl .L00017ef0
/* 17ed0: c5020010 */ lwc1 $f2,0x10($t0)
/* 17ed4: 4608903c */ c.lt.s $f18,$f8
/* 17ed8: 00000000 */ nop
/* 17edc: 4502000f */ bc1fl .L00017f1c
/* 17ee0: c7aa0014 */ lwc1 $f10,0x14($sp)
/* 17ee4: 10000096 */ b .L00018140
/* 17ee8: 00001025 */ or $v0,$zero,$zero
/* 17eec: c5020010 */ lwc1 $f2,0x10($t0)
.L00017ef0:
/* 17ef0: 4600103c */ c.lt.s $f2,$f0
/* 17ef4: 00000000 */ nop
/* 17ef8: 45020008 */ bc1fl .L00017f1c
/* 17efc: c7aa0014 */ lwc1 $f10,0x14($sp)
/* 17f00: 4612103c */ c.lt.s $f2,$f18
/* 17f04: 00000000 */ nop
/* 17f08: 45020004 */ bc1fl .L00017f1c
/* 17f0c: c7aa0014 */ lwc1 $f10,0x14($sp)
/* 17f10: 1000008b */ b .L00018140
/* 17f14: 00001025 */ or $v0,$zero,$zero
/* 17f18: c7aa0014 */ lwc1 $f10,0x14($sp)
.L00017f1c:
/* 17f1c: 3c013f00 */ lui $at,0x3f00
/* 17f20: 24670004 */ addiu $a3,$v1,0x4
/* 17f24: 460c5101 */ sub.s $f4,$f10,$f12
/* 17f28: 00e02025 */ or $a0,$a3,$zero
/* 17f2c: 24690010 */ addiu $t1,$v1,0x10
/* 17f30: 00005025 */ or $t2,$zero,$zero
/* 17f34: e7a40060 */ swc1 $f4,0x60($sp)
/* 17f38: c4a80004 */ lwc1 $f8,0x4($a1)
/* 17f3c: c4c60004 */ lwc1 $f6,0x4($a2)
/* 17f40: 240c0001 */ addiu $t4,$zero,0x1
/* 17f44: 46083281 */ sub.s $f10,$f6,$f8
/* 17f48: e7aa0064 */ swc1 $f10,0x64($sp)
/* 17f4c: c4a60008 */ lwc1 $f6,0x8($a1)
/* 17f50: c4c40008 */ lwc1 $f4,0x8($a2)
/* 17f54: 46120280 */ add.s $f10,$f0,$f18
/* 17f58: 46062201 */ sub.s $f8,$f4,$f6
/* 17f5c: 44812000 */ mtc1 $at,$f4
/* 17f60: 3c018008 */ lui $at,%hi(var8007fcb4)
/* 17f64: 46045182 */ mul.s $f6,$f10,$f4
/* 17f68: e7a80068 */ swc1 $f8,0x68($sp)
/* 17f6c: c508000c */ lwc1 $f8,0xc($t0)
/* 17f70: 46083281 */ sub.s $f10,$f6,$f8
/* 17f74: e42afcb4 */ swc1 $f10,%lo(var8007fcb4)($at)
/* 17f78: 906b0000 */ lbu $t3,0x0($v1)
/* 17f7c: 59600068 */ blezl $t3,.L00018120
/* 17f80: c506000c */ lwc1 $f6,0xc($t0)
/* 17f84: 44806000 */ mtc1 $zero,$f12
/* 17f88: 24060002 */ addiu $a2,$zero,0x2
.L00017f8c:
/* 17f8c: 254f0001 */ addiu $t7,$t2,0x1
/* 17f90: 55eb0003 */ bnel $t7,$t3,.L00017fa0
/* 17f94: c5240000 */ lwc1 $f4,0x0($t1)
/* 17f98: 00e04825 */ or $t1,$a3,$zero
/* 17f9c: c5240000 */ lwc1 $f4,0x0($t1)
.L00017fa0:
/* 17fa0: c4860000 */ lwc1 $f6,0x0($a0)
/* 17fa4: 46062201 */ sub.s $f8,$f4,$f6
/* 17fa8: e7a80048 */ swc1 $f8,0x48($sp)
/* 17fac: c4840004 */ lwc1 $f4,0x4($a0)
/* 17fb0: c52a0004 */ lwc1 $f10,0x4($t1)
/* 17fb4: 46045181 */ sub.s $f6,$f10,$f4
/* 17fb8: e7a6004c */ swc1 $f6,0x4c($sp)
/* 17fbc: c48a0008 */ lwc1 $f10,0x8($a0)
/* 17fc0: c5280008 */ lwc1 $f8,0x8($t1)
/* 17fc4: c7a6004c */ lwc1 $f6,0x4c($sp)
/* 17fc8: 460a4101 */ sub.s $f4,$f8,$f10
/* 17fcc: c7a80068 */ lwc1 $f8,0x68($sp)
/* 17fd0: e7a60000 */ swc1 $f6,0x0($sp)
/* 17fd4: e7a40050 */ swc1 $f4,0x50($sp)
/* 17fd8: 46083282 */ mul.s $f10,$f6,$f8
/* 17fdc: c7a60050 */ lwc1 $f6,0x50($sp)
/* 17fe0: c7a40064 */ lwc1 $f4,0x64($sp)
/* 17fe4: e7a80004 */ swc1 $f8,0x4($sp)
/* 17fe8: 46062202 */ mul.s $f8,$f4,$f6
/* 17fec: e7a40008 */ swc1 $f4,0x8($sp)
/* 17ff0: c7a40004 */ lwc1 $f4,0x4($sp)
/* 17ff4: 46085281 */ sub.s $f10,$f10,$f8
/* 17ff8: c7a80060 */ lwc1 $f8,0x60($sp)
/* 17ffc: e7aa0034 */ swc1 $f10,0x34($sp)
/* 18000: e7aa0004 */ swc1 $f10,0x4($sp)
/* 18004: 46083182 */ mul.s $f6,$f6,$f8
/* 18008: c7aa0048 */ lwc1 $f10,0x48($sp)
/* 1800c: 460a2102 */ mul.s $f4,$f4,$f10
/* 18010: 46043181 */ sub.s $f6,$f6,$f4
/* 18014: c7a40008 */ lwc1 $f4,0x8($sp)
/* 18018: 46045282 */ mul.s $f10,$f10,$f4
/* 1801c: c7a40000 */ lwc1 $f4,0x0($sp)
/* 18020: e7a60038 */ swc1 $f6,0x38($sp)
/* 18024: 46044202 */ mul.s $f8,$f8,$f4
/* 18028: 46085101 */ sub.s $f4,$f10,$f8
/* 1802c: c7aa0004 */ lwc1 $f10,0x4($sp)
/* 18030: 460a5202 */ mul.s $f8,$f10,$f10
/* 18034: e7a4003c */ swc1 $f4,0x3c($sp)
/* 18038: 46063282 */ mul.s $f10,$f6,$f6
/* 1803c: 460a4180 */ add.s $f6,$f8,$f10
/* 18040: 46042202 */ mul.s $f8,$f4,$f4
/* 18044: c7aa0034 */ lwc1 $f10,0x34($sp)
/* 18048: 46064080 */ add.s $f2,$f8,$f6
/* 1804c: 460c1032 */ c.eq.s $f2,$f12
/* 18050: 00000000 */ nop
/* 18054: 45020004 */ bc1fl .L00018068
/* 18058: c4840000 */ lwc1 $f4,0x0($a0)
/* 1805c: 10000038 */ b .L00018140
/* 18060: 00001025 */ or $v0,$zero,$zero
/* 18064: c4840000 */ lwc1 $f4,0x0($a0)
.L00018068:
/* 18068: c7a60038 */ lwc1 $f6,0x38($sp)
/* 1806c: 46045202 */ mul.s $f8,$f10,$f4
/* 18070: c4840004 */ lwc1 $f4,0x4($a0)
/* 18074: 46043102 */ mul.s $f4,$f6,$f4
/* 18078: 46044200 */ add.s $f8,$f8,$f4
/* 1807c: c4840008 */ lwc1 $f4,0x8($a0)
/* 18080: e7aa0008 */ swc1 $f10,0x8($sp)
/* 18084: c7aa003c */ lwc1 $f10,0x3c($sp)
/* 18088: 460a2102 */ mul.s $f4,$f4,$f10
/* 1808c: 46082100 */ add.s $f4,$f4,$f8
/* 18090: c7a80008 */ lwc1 $f8,0x8($sp)
/* 18094: e7a60008 */ swc1 $f6,0x8($sp)
/* 18098: e7a40040 */ swc1 $f4,0x40($sp)
/* 1809c: c4a60000 */ lwc1 $f6,0x0($a1)
/* 180a0: 46064202 */ mul.s $f8,$f8,$f6
/* 180a4: c7a60008 */ lwc1 $f6,0x8($sp)
/* 180a8: e7aa0008 */ swc1 $f10,0x8($sp)
/* 180ac: c4aa0004 */ lwc1 $f10,0x4($a1)
/* 180b0: 460a3182 */ mul.s $f6,$f6,$f10
/* 180b4: 46064280 */ add.s $f10,$f8,$f6
/* 180b8: c7a60008 */ lwc1 $f6,0x8($sp)
/* 180bc: c4a80008 */ lwc1 $f8,0x8($a1)
/* 180c0: 46064202 */ mul.s $f8,$f8,$f6
/* 180c4: 460a4080 */ add.s $f2,$f8,$f10
/* 180c8: 4604103c */ c.lt.s $f2,$f4
/* 180cc: 00000000 */ nop
/* 180d0: 45000007 */ bc1f .L000180f0
/* 180d4: 00000000 */ nop
/* 180d8: 14c20003 */ bne $a2,$v0,.L000180e8
/* 180dc: 00000000 */ nop
/* 180e0: 10000017 */ b .L00018140
/* 180e4: 00001025 */ or $v0,$zero,$zero
.L000180e8:
/* 180e8: 10000006 */ b .L00018104
/* 180ec: 24020001 */ addiu $v0,$zero,0x1
.L000180f0:
/* 180f0: 55820004 */ bnel $t4,$v0,.L00018104
/* 180f4: 24020002 */ addiu $v0,$zero,0x2
/* 180f8: 10000011 */ b .L00018140
/* 180fc: 00001025 */ or $v0,$zero,$zero
/* 18100: 24020002 */ addiu $v0,$zero,0x2
.L00018104:
/* 18104: 906b0000 */ lbu $t3,0x0($v1)
/* 18108: 254a0001 */ addiu $t2,$t2,0x1
/* 1810c: 2484000c */ addiu $a0,$a0,0xc
/* 18110: 014b082a */ slt $at,$t2,$t3
/* 18114: 1420ff9d */ bnez $at,.L00017f8c
/* 18118: 2529000c */ addiu $t1,$t1,0xc
/* 1811c: c506000c */ lwc1 $f6,0xc($t0)
.L00018120:
/* 18120: 24030002 */ addiu $v1,$zero,0x2
/* 18124: 4606003c */ c.lt.s $f0,$f6
/* 18128: 00000000 */ nop
/* 1812c: 45000003 */ bc1f .L0001813c
/* 18130: 00000000 */ nop
/* 18134: 10000001 */ b .L0001813c
/* 18138: 24030001 */ addiu $v1,$zero,0x1
.L0001813c:
/* 1813c: 00601025 */ or $v0,$v1,$zero
.L00018140:
/* 18140: 03e00008 */ jr $ra
/* 18144: 27bd0070 */ addiu $sp,$sp,0x70
);
GLOBAL_ASM(
glabel func00018148
/* 18148: 27bdff30 */ addiu $sp,$sp,-208
/* 1814c: afa400d0 */ sw $a0,0xd0($sp)
/* 18150: afa500d4 */ sw $a1,0xd4($sp)
/* 18154: afbf003c */ sw $ra,0x3c($sp)
/* 18158: afbe0038 */ sw $s8,0x38($sp)
/* 1815c: afb70034 */ sw $s7,0x34($sp)
/* 18160: afb60030 */ sw $s6,0x30($sp)
/* 18164: afb5002c */ sw $s5,0x2c($sp)
/* 18168: afb40028 */ sw $s4,0x28($sp)
/* 1816c: afb30024 */ sw $s3,0x24($sp)
/* 18170: afb20020 */ sw $s2,0x20($sp)
/* 18174: afb1001c */ sw $s1,0x1c($sp)
/* 18178: afb00018 */ sw $s0,0x18($sp)
/* 1817c: afa700dc */ sw $a3,0xdc($sp)
/* 18180: 27a5006c */ addiu $a1,$sp,0x6c
/* 18184: 2404ffff */ addiu $a0,$zero,-1
/* 18188: 27a8009c */ addiu $t0,$sp,0x9c
/* 1818c: 27a2005c */ addiu $v0,$sp,0x5c
/* 18190: 00c01825 */ or $v1,$a2,$zero
.L00018194:
/* 18194: 846e0000 */ lh $t6,0x0($v1)
/* 18198: 24420002 */ addiu $v0,$v0,0x2
/* 1819c: 0045082b */ sltu $at,$v0,$a1
/* 181a0: a50e0000 */ sh $t6,0x0($t0)
/* 181a4: 846f0000 */ lh $t7,0x0($v1)
/* 181a8: 25080002 */ addiu $t0,$t0,0x2
/* 181ac: a44ffffe */ sh $t7,-0x2($v0)
/* 181b0: 84780000 */ lh $t8,0x0($v1)
/* 181b4: 14980003 */ bne $a0,$t8,.L000181c4
/* 181b8: 00000000 */ nop
/* 181bc: 10000004 */ b .L000181d0
/* 181c0: 0000b825 */ or $s7,$zero,$zero
.L000181c4:
/* 181c4: 1420fff3 */ bnez $at,.L00018194
/* 181c8: 24630002 */ addiu $v1,$v1,0x2
/* 181cc: 0000b825 */ or $s7,$zero,$zero
.L000181d0:
/* 181d0: 3c198006 */ lui $t9,%hi(var8005ef20)
/* 181d4: 9339ef20 */ lbu $t9,%lo(var8005ef20)($t9)
/* 181d8: 3c018006 */ lui $at,%hi(var8005ef20)
/* 181dc: 27be007c */ addiu $s8,$sp,0x7c
/* 181e0: 27290001 */ addiu $t1,$t9,0x1
/* 181e4: a029ef20 */ sb $t1,%lo(var8005ef20)($at)
/* 181e8: 240100ff */ addiu $at,$zero,0xff
/* 181ec: 312a00ff */ andi $t2,$t1,0xff
/* 181f0: 15410010 */ bne $t2,$at,.L00018234
/* 181f4: 3c14800a */ lui $s4,%hi(g_BgPortals)
/* 181f8: 3c038008 */ lui $v1,%hi(g_NumPortalThings)
/* 181fc: 8c63fc40 */ lw $v1,%lo(g_NumPortalThings)($v1)
/* 18200: 3c0b800a */ lui $t3,%hi(g_Vars+0x520)
/* 18204: 2562a4e0 */ addiu $v0,$t3,%lo(g_Vars+0x520)
/* 18208: 18600008 */ blez $v1,.L0001822c
/* 1820c: 00036040 */ sll $t4,$v1,0x1
/* 18210: 01822821 */ addu $a1,$t4,$v0
/* 18214: 240300ff */ addiu $v1,$zero,0xff
.L00018218:
/* 18218: 24420002 */ addiu $v0,$v0,0x2
/* 1821c: 0045082b */ sltu $at,$v0,$a1
/* 18220: 1420fffd */ bnez $at,.L00018218
/* 18224: a043fffe */ sb $v1,-0x2($v0)
/* 18228: 0000b825 */ or $s7,$zero,$zero
.L0001822c:
/* 1822c: 3c018006 */ lui $at,%hi(var8005ef20)
/* 18230: a020ef20 */ sb $zero,%lo(var8005ef20)($at)
.L00018234:
/* 18234: 26944cc8 */ addiu $s4,$s4,%lo(g_BgPortals)
/* 18238: 87b5009c */ lh $s5,0x9c($sp)
.L0001823c:
/* 1823c: a7a4007c */ sh $a0,0x7c($sp)
/* 18240: 00006840 */ sll $t5,$zero,0x1
/* 18244: 12a40058 */ beq $s5,$a0,.L000183a8
/* 18248: 27ae009c */ addiu $t6,$sp,0x9c
/* 1824c: 01ae7821 */ addu $t7,$t5,$t6
/* 18250: afaf0044 */ sw $t7,0x44($sp)
/* 18254: 0015c8c0 */ sll $t9,$s5,0x3
.L00018258:
/* 18258: 0335c821 */ addu $t9,$t9,$s5
/* 1825c: 3c18800a */ lui $t8,%hi(g_Rooms)
/* 18260: 8f184928 */ lw $t8,%lo(g_Rooms)($t8)
/* 18264: 0019c880 */ sll $t9,$t9,0x2
/* 18268: 0335c823 */ subu $t9,$t9,$s5
/* 1826c: 0019c880 */ sll $t9,$t9,0x2
/* 18270: 03191021 */ addu $v0,$t8,$t9
/* 18274: 8449000e */ lh $t1,0xe($v0)
/* 18278: 80560005 */ lb $s6,0x5($v0)
/* 1827c: 3c0c800a */ lui $t4,%hi(g_RoomPortals)
/* 18280: 8d8c4ce0 */ lw $t4,%lo(g_RoomPortals)($t4)
/* 18284: 00095040 */ sll $t2,$t1,0x1
/* 18288: 1ac0003e */ blez $s6,.L00018384
/* 1828c: 014c9821 */ addu $s3,$t2,$t4
.L00018290:
/* 18290: 86720000 */ lh $s2,0x0($s3)
/* 18294: 3c0d800a */ lui $t5,%hi(g_Vars+0x520)
/* 18298: 25ada4e0 */ addiu $t5,$t5,%lo(g_Vars+0x520)
/* 1829c: 00125840 */ sll $t3,$s2,0x1
/* 182a0: 016d8821 */ addu $s1,$t3,$t5
/* 182a4: 3c028006 */ lui $v0,%hi(var8005ef20)
/* 182a8: 9042ef20 */ lbu $v0,%lo(var8005ef20)($v0)
/* 182ac: 922e0000 */ lbu $t6,0x0($s1)
/* 182b0: 02402025 */ or $a0,$s2,$zero
/* 182b4: 504e0007 */ beql $v0,$t6,.L000182d4
/* 182b8: 92230001 */ lbu $v1,0x1($s1)
/* 182bc: a2220000 */ sb $v0,0x0($s1)
/* 182c0: 8fa500d0 */ lw $a1,0xd0($sp)
/* 182c4: 0c005f8c */ jal func00017e30
/* 182c8: 8fa600d4 */ lw $a2,0xd4($sp)
/* 182cc: a2220001 */ sb $v0,0x1($s1)
/* 182d0: 92230001 */ lbu $v1,0x1($s1)
.L000182d4:
/* 182d4: 24010001 */ addiu $at,$zero,0x1
/* 182d8: 50600026 */ beqzl $v1,.L00018374
/* 182dc: 26f70001 */ addiu $s7,$s7,0x1
/* 182e0: 54610012 */ bnel $v1,$at,.L0001832c
/* 182e4: 24010002 */ addiu $at,$zero,0x2
/* 182e8: 8e8f0000 */ lw $t7,0x0($s4)
/* 182ec: 001280c0 */ sll $s0,$s2,0x3
/* 182f0: 03c02025 */ or $a0,$s8,$zero
/* 182f4: 01f01021 */ addu $v0,$t7,$s0
/* 182f8: 84580002 */ lh $t8,0x2($v0)
/* 182fc: 56b8000b */ bnel $s5,$t8,.L0001832c
/* 18300: 24010002 */ addiu $at,$zero,0x2
/* 18304: 0c005f71 */ jal func00017dc4
/* 18308: 84450004 */ lh $a1,0x4($v0)
/* 1830c: 8e990000 */ lw $t9,0x0($s4)
/* 18310: 27a4005c */ addiu $a0,$sp,0x5c
/* 18314: 03304821 */ addu $t1,$t9,$s0
/* 18318: 0c005f71 */ jal func00017dc4
/* 1831c: 85250004 */ lh $a1,0x4($t1)
/* 18320: a2200001 */ sb $zero,0x1($s1)
/* 18324: 300300ff */ andi $v1,$zero,0xff
/* 18328: 24010002 */ addiu $at,$zero,0x2
.L0001832c:
/* 1832c: 54610011 */ bnel $v1,$at,.L00018374
/* 18330: 26f70001 */ addiu $s7,$s7,0x1
/* 18334: 8e8a0000 */ lw $t2,0x0($s4)
/* 18338: 001280c0 */ sll $s0,$s2,0x3
/* 1833c: 03c02025 */ or $a0,$s8,$zero
/* 18340: 01501021 */ addu $v0,$t2,$s0
/* 18344: 844c0004 */ lh $t4,0x4($v0)
/* 18348: 56ac000a */ bnel $s5,$t4,.L00018374
/* 1834c: 26f70001 */ addiu $s7,$s7,0x1
/* 18350: 0c005f71 */ jal func00017dc4
/* 18354: 84450002 */ lh $a1,0x2($v0)
/* 18358: 8e8b0000 */ lw $t3,0x0($s4)
/* 1835c: 27a4005c */ addiu $a0,$sp,0x5c
/* 18360: 01706821 */ addu $t5,$t3,$s0
/* 18364: 0c005f71 */ jal func00017dc4
/* 18368: 85a50002 */ lh $a1,0x2($t5)
/* 1836c: a2200001 */ sb $zero,0x1($s1)
/* 18370: 26f70001 */ addiu $s7,$s7,0x1
.L00018374:
/* 18374: 16f6ffc6 */ bne $s7,$s6,.L00018290
/* 18378: 26730002 */ addiu $s3,$s3,0x2
/* 1837c: 0000b825 */ or $s7,$zero,$zero
/* 18380: 2404ffff */ addiu $a0,$zero,-1
.L00018384:
/* 18384: 8fae0044 */ lw $t6,0x44($sp)
/* 18388: 27b800bc */ addiu $t8,$sp,0xbc
/* 1838c: 25cf0002 */ addiu $t7,$t6,0x2
/* 18390: afaf0044 */ sw $t7,0x44($sp)
/* 18394: 85f50000 */ lh $s5,0x0($t7)
/* 18398: 52a40004 */ beql $s5,$a0,.L000183ac
/* 1839c: 87b9007c */ lh $t9,0x7c($sp)
/* 183a0: 55f8ffad */ bnel $t7,$t8,.L00018258
/* 183a4: 0015c8c0 */ sll $t9,$s5,0x3
.L000183a8:
/* 183a8: 87b9007c */ lh $t9,0x7c($sp)
.L000183ac:
/* 183ac: 27a8009c */ addiu $t0,$sp,0x9c
/* 183b0: 27a3007c */ addiu $v1,$sp,0x7c
/* 183b4: 5099000f */ beql $a0,$t9,.L000183f4
/* 183b8: 87ac009c */ lh $t4,0x9c($sp)
.L000183bc:
/* 183bc: 84620000 */ lh $v0,0x0($v1)
/* 183c0: 24630002 */ addiu $v1,$v1,0x2
/* 183c4: 27a9009c */ addiu $t1,$sp,0x9c
/* 183c8: 14820003 */ bne $a0,$v0,.L000183d8
/* 183cc: a5020000 */ sh $v0,0x0($t0)
/* 183d0: 10000004 */ b .L000183e4
/* 183d4: 0000b825 */ or $s7,$zero,$zero
.L000183d8:
/* 183d8: 1469fff8 */ bne $v1,$t1,.L000183bc
/* 183dc: 25080002 */ addiu $t0,$t0,0x2
/* 183e0: 0000b825 */ or $s7,$zero,$zero
.L000183e4:
/* 183e4: 87aa007c */ lh $t2,0x7c($sp)
/* 183e8: 548aff94 */ bnel $a0,$t2,.L0001823c
/* 183ec: 87b5009c */ lh $s5,0x9c($sp)
/* 183f0: 87ac009c */ lh $t4,0x9c($sp)
.L000183f4:
/* 183f4: 27ab009c */ addiu $t3,$sp,0x9c
/* 183f8: 8fad00dc */ lw $t5,0xdc($sp)
/* 183fc: 508c0010 */ beql $a0,$t4,.L00018440
/* 18400: 8fae00dc */ lw $t6,0xdc($sp)
/* 18404: 00172040 */ sll $a0,$s7,0x1
/* 18408: 008b4021 */ addu $t0,$a0,$t3
/* 1840c: 01a41821 */ addu $v1,$t5,$a0
/* 18410: 2404ffff */ addiu $a0,$zero,-1
/* 18414: 85020000 */ lh $v0,0x0($t0)
/* 18418: 26f70001 */ addiu $s7,$s7,0x1
.L0001841c:
/* 1841c: 2ae10007 */ slti $at,$s7,0x7
/* 18420: 25080002 */ addiu $t0,$t0,0x2
/* 18424: 24630002 */ addiu $v1,$v1,0x2
/* 18428: 10200004 */ beqz $at,.L0001843c
/* 1842c: a462fffe */ sh $v0,-0x2($v1)
/* 18430: 85020000 */ lh $v0,0x0($t0)
/* 18434: 5482fff9 */ bnel $a0,$v0,.L0001841c
/* 18438: 26f70001 */ addiu $s7,$s7,0x1
.L0001843c:
/* 1843c: 8fae00dc */ lw $t6,0xdc($sp)
.L00018440:
/* 18440: 8fa600e0 */ lw $a2,0xe0($sp)
/* 18444: 00177840 */ sll $t7,$s7,0x1
/* 18448: 01cfc021 */ addu $t8,$t6,$t7
/* 1844c: 10c00013 */ beqz $a2,.L0001849c
/* 18450: a7040000 */ sh $a0,0x0($t8)
/* 18454: 8fa500e4 */ lw $a1,0xe4($sp)
/* 18458: 0000b825 */ or $s7,$zero,$zero
/* 1845c: 27a2005c */ addiu $v0,$sp,0x5c
/* 18460: 18a0000b */ blez $a1,.L00018490
/* 18464: 00c01825 */ or $v1,$a2,$zero
/* 18468: 2404ffff */ addiu $a0,$zero,-1
.L0001846c:
/* 1846c: 84590000 */ lh $t9,0x0($v0)
/* 18470: 24420002 */ addiu $v0,$v0,0x2
/* 18474: a4790000 */ sh $t9,0x0($v1)
/* 18478: 8449fffe */ lh $t1,-0x2($v0)
/* 1847c: 50890005 */ beql $a0,$t1,.L00018494
/* 18480: 00175040 */ sll $t2,$s7,0x1
/* 18484: 26f70001 */ addiu $s7,$s7,0x1
/* 18488: 16e5fff8 */ bne $s7,$a1,.L0001846c
/* 1848c: 24630002 */ addiu $v1,$v1,0x2
.L00018490:
/* 18490: 00175040 */ sll $t2,$s7,0x1
.L00018494:
/* 18494: 00ca6021 */ addu $t4,$a2,$t2
/* 18498: a5840000 */ sh $a0,0x0($t4)
.L0001849c:
/* 1849c: 8fbf003c */ lw $ra,0x3c($sp)
/* 184a0: 8fb00018 */ lw $s0,0x18($sp)
/* 184a4: 8fb1001c */ lw $s1,0x1c($sp)
/* 184a8: 8fb20020 */ lw $s2,0x20($sp)
/* 184ac: 8fb30024 */ lw $s3,0x24($sp)
/* 184b0: 8fb40028 */ lw $s4,0x28($sp)
/* 184b4: 8fb5002c */ lw $s5,0x2c($sp)
/* 184b8: 8fb60030 */ lw $s6,0x30($sp)
/* 184bc: 8fb70034 */ lw $s7,0x34($sp)
/* 184c0: 8fbe0038 */ lw $s8,0x38($sp)
/* 184c4: 03e00008 */ jr $ra
/* 184c8: 27bd00d0 */ addiu $sp,$sp,0xd0
);
+51
View File
@@ -1802,6 +1802,57 @@ glabel func00019d1c
/* 19dd8: 27bd0020 */ addiu $sp,$sp,0x20
);
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel modelGetNodeData
/* 1aeac: 27bdfff0 */ addiu $sp,$sp,-16
/* 1aeb0: afa80000 */ sw $t0,0x0($sp)
/* 1aeb4: afa90004 */ sw $t1,0x4($sp)
/* 1aeb8: afab0008 */ sw $t3,0x8($sp)
/* 1aebc: afbf000c */ sw $ra,0xc($sp)
/* 1aec0: 8cac0004 */ lw $t4,0x4($a1)
/* 1aec4: 3c0a8006 */ lui $t2,0x8006
/* 1aec8: 254a1360 */ addiu $t2,$t2,0x1360
/* 1aecc: 94a90000 */ lhu $t1,0x0($a1)
/* 1aed0: 312900ff */ andi $t1,$t1,0xff
/* 1aed4: 00004025 */ or $t0,$zero,$zero
/* 1aed8: 2921001a */ slti $at,$t1,0x1a
/* 1aedc: 10200007 */ beqz $at,.NB0001aefc
/* 1aee0: 8c8b0010 */ lw $t3,0x10($a0)
/* 1aee4: 01495020 */ add $t2,$t2,$t1
/* 1aee8: 914a0000 */ lbu $t2,0x0($t2)
/* 1aeec: 240100ff */ addiu $at,$zero,0xff
/* 1aef0: 11410002 */ beq $t2,$at,.NB0001aefc
/* 1aef4: 018a5020 */ add $t2,$t4,$t2
/* 1aef8: 95480000 */ lhu $t0,0x0($t2)
.NB0001aefc:
/* 1aefc: 90890000 */ lbu $t1,0x0($a0)
/* 1af00: 1120000c */ beqz $t1,.NB0001af34
/* 1af04: 00000000 */ sll $zero,$zero,0x0
.NB0001af08:
/* 1af08: 8ca90008 */ lw $t1,0x8($a1)
/* 1af0c: 11200009 */ beqz $t1,.NB0001af34
/* 1af10: 01202825 */ or $a1,$t1,$zero
/* 1af14: 94a90000 */ lhu $t1,0x0($a1)
/* 1af18: 312900ff */ andi $t1,$t1,0xff
/* 1af1c: 24010017 */ addiu $at,$zero,0x17
/* 1af20: 1521fff9 */ bne $t1,$at,.NB0001af08
/* 1af24: 00000000 */ sll $zero,$zero,0x0
/* 1af28: 0c006bab */ jal modelGetNodeData
/* 1af2c: 00000000 */ sll $zero,$zero,0x0
/* 1af30: 8c4b0004 */ lw $t3,0x4($v0)
.NB0001af34:
/* 1af34: 00084080 */ sll $t0,$t0,0x2
/* 1af38: 01681020 */ add $v0,$t3,$t0
/* 1af3c: 8fa80000 */ lw $t0,0x0($sp)
/* 1af40: 8fa90004 */ lw $t1,0x4($sp)
/* 1af44: 8fab0008 */ lw $t3,0x8($sp)
/* 1af48: 8fbf000c */ lw $ra,0xc($sp)
/* 1af4c: 03e00008 */ jr $ra
/* 1af50: 27bd0010 */ addiu $sp,$sp,0x10
);
#endif
GLOBAL_ASM(
glabel func00019ddc
/* 19ddc: afbf07ac */ sw $ra,0x7ac($sp)
+1010
View File
File diff suppressed because it is too large Load Diff
+1882 -2
View File
File diff suppressed because it is too large Load Diff
+175
View File
@@ -39,6 +39,7 @@ u32 var8009c3f4;
u32 var8009c3f8;
u32 var8009c3fc;
#if VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel func00037b00
/* 37b00: 27bdffe0 */ addiu $sp,$sp,-32
@@ -207,6 +208,180 @@ glabel func00037b00
/* 37d80: 03e00008 */ jr $ra
/* 37d84: 00000000 */ nop
);
#else
GLOBAL_ASM(
glabel func00037b00
/* 38ec0: 27bdffe0 */ addiu $sp,$sp,-32
/* 38ec4: afbf001c */ sw $ra,0x1c($sp)
/* 38ec8: afa40020 */ sw $a0,0x20($sp)
/* 38ecc: 3c04800a */ lui $a0,0x800a
/* 38ed0: 24840a90 */ addiu $a0,$a0,0xa90
/* 38ed4: 0c013014 */ jal 0x4c050
/* 38ed8: 24050064 */ addiu $a1,$zero,0x64
/* 38edc: 3c047005 */ lui $a0,0x7005
/* 38ee0: 248461b0 */ addiu $a0,$a0,0x61b0
/* 38ee4: 0c00c47d */ jal 0x311f4
/* 38ee8: 34058480 */ dli $a1,0x8480
/* 38eec: 240e0001 */ addiu $t6,$zero,0x1
/* 38ef0: afae0010 */ sw $t6,0x10($sp)
/* 38ef4: 00002025 */ or $a0,$zero,$zero
/* 38ef8: 00002825 */ or $a1,$zero,$zero
/* 38efc: 8fa60020 */ lw $a2,0x20($sp)
/* 38f00: 0c00c499 */ jal 0x31264
/* 38f04: 34078480 */ dli $a3,0x8480
/* 38f08: 3c01800a */ lui $at,0x800a
/* 38f0c: ac220af4 */ sw $v0,0xaf4($at)
/* 38f10: 240f2200 */ addiu $t7,$zero,0x2200
/* 38f14: afaf0010 */ sw $t7,0x10($sp)
/* 38f18: 00002025 */ or $a0,$zero,$zero
/* 38f1c: 00002825 */ or $a1,$zero,$zero
/* 38f20: 8fa60020 */ lw $a2,0x20($sp)
/* 38f24: 0c00c499 */ jal 0x31264
/* 38f28: 24070001 */ addiu $a3,$zero,0x1
/* 38f2c: 3c018006 */ lui $at,0x8006
/* 38f30: ac221c08 */ sw $v0,0x1c08($at)
/* 38f34: 24182200 */ addiu $t8,$zero,0x2200
/* 38f38: afb80010 */ sw $t8,0x10($sp)
/* 38f3c: 00002025 */ or $a0,$zero,$zero
/* 38f40: 00002825 */ or $a1,$zero,$zero
/* 38f44: 8fa60020 */ lw $a2,0x20($sp)
/* 38f48: 0c00c499 */ jal 0x31264
/* 38f4c: 24070001 */ addiu $a3,$zero,0x1
/* 38f50: 3c018006 */ lui $at,0x8006
/* 38f54: ac221c0c */ sw $v0,0x1c0c($at)
/* 38f58: 24190001 */ addiu $t9,$zero,0x1
/* 38f5c: afb90010 */ sw $t9,0x10($sp)
/* 38f60: 00002025 */ or $a0,$zero,$zero
/* 38f64: 00002825 */ or $a1,$zero,$zero
/* 38f68: 8fa60020 */ lw $a2,0x20($sp)
/* 38f6c: 0c00c499 */ jal 0x31264
/* 38f70: 24070400 */ addiu $a3,$zero,0x400
/* 38f74: 3c01800a */ lui $at,0x800a
/* 38f78: ac220dd8 */ sw $v0,0xdd8($at)
/* 38f7c: 24080001 */ addiu $t0,$zero,0x1
/* 38f80: afa80010 */ sw $t0,0x10($sp)
/* 38f84: 00002025 */ or $a0,$zero,$zero
/* 38f88: 00002825 */ or $a1,$zero,$zero
/* 38f8c: 8fa60020 */ lw $a2,0x20($sp)
/* 38f90: 0c00c499 */ jal 0x31264
/* 38f94: 24070400 */ addiu $a3,$zero,0x400
/* 38f98: 3c01800a */ lui $at,0x800a
/* 38f9c: ac220ddc */ sw $v0,0xddc($at)
/* 38fa0: 24090001 */ addiu $t1,$zero,0x1
/* 38fa4: afa90010 */ sw $t1,0x10($sp)
/* 38fa8: 00002025 */ or $a0,$zero,$zero
/* 38fac: 00002825 */ or $a1,$zero,$zero
/* 38fb0: 8fa60020 */ lw $a2,0x20($sp)
/* 38fb4: 0c00c499 */ jal 0x31264
/* 38fb8: 3407a410 */ dli $a3,0xa410
/* 38fbc: 3c01800a */ lui $at,0x800a
/* 38fc0: ac220d40 */ sw $v0,0xd40($at)
/* 38fc4: 240a0001 */ addiu $t2,$zero,0x1
/* 38fc8: afaa0010 */ sw $t2,0x10($sp)
/* 38fcc: 00002025 */ or $a0,$zero,$zero
/* 38fd0: 00002825 */ or $a1,$zero,$zero
/* 38fd4: 8fa60020 */ lw $a2,0x20($sp)
/* 38fd8: 0c00c499 */ jal 0x31264
/* 38fdc: 34078000 */ dli $a3,0x8000
/* 38fe0: 3c01800a */ lui $at,0x800a
/* 38fe4: ac220d44 */ sw $v0,0xd44($at)
/* 38fe8: 0c0115f5 */ jal 0x457d4
/* 38fec: 00000000 */ sll $zero,$zero,0x0
/* 38ff0: 240b0050 */ addiu $t3,$zero,0x50
/* 38ff4: afab0010 */ sw $t3,0x10($sp)
/* 38ff8: 00002025 */ or $a0,$zero,$zero
/* 38ffc: 00002825 */ or $a1,$zero,$zero
/* 39000: 8fa60020 */ lw $a2,0x20($sp)
/* 39004: 0c00c499 */ jal 0x31264
/* 39008: 24070001 */ addiu $a3,$zero,0x1
/* 3900c: 3c01800a */ lui $at,0x800a
/* 39010: ac220a98 */ sw $v0,0xa98($at)
/* 39014: 240c0440 */ addiu $t4,$zero,0x440
/* 39018: afac0010 */ sw $t4,0x10($sp)
/* 3901c: 00002025 */ or $a0,$zero,$zero
/* 39020: 00002825 */ or $a1,$zero,$zero
/* 39024: 8fa60020 */ lw $a2,0x20($sp)
/* 39028: 0c00c499 */ jal 0x31264
/* 3902c: 24070001 */ addiu $a3,$zero,0x1
/* 39030: 3c0d800a */ lui $t5,0x800a
/* 39034: 25ad0a90 */ addiu $t5,$t5,0xa90
/* 39038: ada20044 */ sw $v0,0x44($t5)
/* 3903c: 3c01800a */ lui $at,0x800a
/* 39040: ac200ae0 */ sw $zero,0xae0($at)
/* 39044: 240e7fff */ addiu $t6,$zero,0x7fff
/* 39048: 3c01800a */ lui $at,0x800a
/* 3904c: ac2e0ae4 */ sw $t6,0xae4($at)
/* 39050: 3c01800a */ lui $at,0x800a
/* 39054: 240f0040 */ addiu $t7,$zero,0x40
/* 39058: 24180040 */ addiu $t8,$zero,0x40
/* 3905c: a4380aec */ sh $t8,0xaec($at)
/* 39060: a42f0aee */ sh $t7,0xaee($at)
/* 39064: 24197fff */ addiu $t9,$zero,0x7fff
/* 39068: 3c01800a */ lui $at,0x800a
/* 3906c: a4390a9e */ sh $t9,0xa9e($at)
/* 39070: 24080040 */ addiu $t0,$zero,0x40
/* 39074: 3c01800a */ lui $at,0x800a
/* 39078: a4280a9c */ sh $t0,0xa9c($at)
/* 3907c: 3c09800a */ lui $t1,0x800a
/* 39080: 85290a9c */ lh $t1,0xa9c($t1)
/* 39084: 3c0c8006 */ lui $t4,0x8006
/* 39088: 3c0d800a */ lui $t5,0x800a
/* 3908c: 312a007f */ andi $t2,$t1,0x7f
/* 39090: 000a5840 */ sll $t3,$t2,0x1
/* 39094: 018b6021 */ addu $t4,$t4,$t3
/* 39098: 858c1a80 */ lh $t4,0x1a80($t4)
/* 3909c: 85ad0a9e */ lh $t5,0xa9e($t5)
/* 390a0: 3c01800a */ lui $at,0x800a
/* 390a4: 018d0019 */ multu $t4,$t5
/* 390a8: 00007012 */ mflo $t6
/* 390ac: 000e7bc3 */ sra $t7,$t6,0xf
/* 390b0: a42f0aa0 */ sh $t7,0xaa0($at)
/* 390b4: 3c18800a */ lui $t8,0x800a
/* 390b8: 87180a9c */ lh $t8,0xa9c($t8)
/* 390bc: 3c0a8006 */ lui $t2,0x8006
/* 390c0: 3c0b800a */ lui $t3,0x800a
/* 390c4: 3319007f */ andi $t9,$t8,0x7f
/* 390c8: 00194023 */ negu $t0,$t9
/* 390cc: 00084840 */ sll $t1,$t0,0x1
/* 390d0: 01495021 */ addu $t2,$t2,$t1
/* 390d4: 854a1b7e */ lh $t2,0x1b7e($t2)
/* 390d8: 856b0a9e */ lh $t3,0xa9e($t3)
/* 390dc: 3c01800a */ lui $at,0x800a
/* 390e0: 014b0019 */ multu $t2,$t3
/* 390e4: 00006012 */ mflo $t4
/* 390e8: 000c6bc3 */ sra $t5,$t4,0xf
/* 390ec: a42d0aa2 */ sh $t5,0xaa2($at)
/* 390f0: 240e0001 */ addiu $t6,$zero,0x1
/* 390f4: 3c01800a */ lui $at,0x800a
/* 390f8: a42e0ab4 */ sh $t6,0xab4($at)
/* 390fc: 240f7ffc */ addiu $t7,$zero,0x7ffc
/* 39100: 3c01800a */ lui $at,0x800a
/* 39104: a42f0aa4 */ sh $t7,0xaa4($at)
/* 39108: 3c18800a */ lui $t8,0x800a
/* 3910c: 87180a9c */ lh $t8,0xa9c($t8)
/* 39110: 33190080 */ andi $t9,$t8,0x80
/* 39114: 13200005 */ beqz $t9,.NB0003912c
/* 39118: 00000000 */ sll $zero,$zero,0x0
/* 3911c: 24080001 */ addiu $t0,$zero,0x1
/* 39120: 3c01800a */ lui $at,0x800a
/* 39124: 10000003 */ beqz $zero,.NB00039134
/* 39128: a4280aa6 */ sh $t0,0xaa6($at)
.NB0003912c:
/* 3912c: 3c01800a */ lui $at,0x800a
/* 39130: a4200aa6 */ sh $zero,0xaa6($at)
.NB00039134:
/* 39134: 3c047004 */ lui $a0,0x7004
/* 39138: 0c00e7d8 */ jal 0x39f60
/* 3913c: 24849f78 */ addiu $a0,$a0,-24712
/* 39140: 10000001 */ beqz $zero,.NB00039148
/* 39144: 00000000 */ sll $zero,$zero,0x0
.NB00039148:
/* 39148: 8fbf001c */ lw $ra,0x1c($sp)
/* 3914c: 27bd0020 */ addiu $sp,$sp,0x20
/* 39150: 03e00008 */ jr $ra
/* 39154: 00000000 */ sll $zero,$zero,0x0
);
#endif
GLOBAL_ASM(
glabel func00037d88
-219
View File
@@ -133,223 +133,4 @@ glabel func000513b0
/* 51564: 8fb50030 */ lw $s5,0x30($sp)
/* 51568: 03e00008 */ jr $ra
/* 5156c: 27bd0040 */ addiu $sp,$sp,0x40
/* 51570: 27bdff90 */ addiu $sp,$sp,-112
/* 51574: afbf001c */ sw $ra,0x1c($sp)
/* 51578: afb00018 */ sw $s0,0x18($sp)
/* 5157c: 00a08025 */ or $s0,$a1,$zero
/* 51580: afa40070 */ sw $a0,0x70($sp)
/* 51584: 0c012a18 */ jal __osSiGetAccess
/* 51588: afa60078 */ sw $a2,0x78($sp)
/* 5158c: 8fa40070 */ lw $a0,0x70($sp)
/* 51590: 0c012ea4 */ jal __osPfsGetStatus
/* 51594: 8fa50078 */ lw $a1,0x78($sp)
/* 51598: 0c012a29 */ jal __osSiRelAccess
/* 5159c: afa2006c */ sw $v0,0x6c($sp)
/* 515a0: 8fa3006c */ lw $v1,0x6c($sp)
/* 515a4: 8fae0070 */ lw $t6,0x70($sp)
/* 515a8: 02002025 */ or $a0,$s0,$zero
/* 515ac: 50600004 */ beqzl $v1,.L000515c0
/* 515b0: ae0e0004 */ sw $t6,0x4($s0)
/* 515b4: 1000006b */ b .L00051764
/* 515b8: 00601025 */ or $v0,$v1,$zero
/* 515bc: ae0e0004 */ sw $t6,0x4($s0)
.L000515c0:
/* 515c0: 8faf0078 */ lw $t7,0x78($sp)
/* 515c4: ae000000 */ sw $zero,0x0($s0)
/* 515c8: 0c0145de */ jal func00051778
/* 515cc: ae0f0008 */ sw $t7,0x8($s0)
/* 515d0: 10400003 */ beqz $v0,.L000515e0
/* 515d4: 02002025 */ or $a0,$s0,$zero
/* 515d8: 10000063 */ b .L00051768
/* 515dc: 8fbf001c */ lw $ra,0x1c($sp)
.L000515e0:
/* 515e0: 0c013378 */ jal __osPfsSelectBank
/* 515e4: 00002825 */ or $a1,$zero,$zero
/* 515e8: 10400003 */ beqz $v0,.L000515f8
/* 515ec: 24060001 */ addiu $a2,$zero,0x1
/* 515f0: 1000005d */ b .L00051768
/* 515f4: 8fbf001c */ lw $ra,0x1c($sp)
.L000515f8:
/* 515f8: 8e040004 */ lw $a0,0x4($s0)
/* 515fc: 8e050008 */ lw $a1,0x8($s0)
/* 51600: 0c012e18 */ jal __osContRamRead
/* 51604: 27a70048 */ addiu $a3,$sp,0x48
/* 51608: 10400003 */ beqz $v0,.L00051618
/* 5160c: 27a40048 */ addiu $a0,$sp,0x48
/* 51610: 10000055 */ b .L00051768
/* 51614: 8fbf001c */ lw $ra,0x1c($sp)
.L00051618:
/* 51618: 27a5006a */ addiu $a1,$sp,0x6a
/* 5161c: 0c013041 */ jal func0004c104
/* 51620: 27a60068 */ addiu $a2,$sp,0x68
/* 51624: 97b8006a */ lhu $t8,0x6a($sp)
/* 51628: 97b90064 */ lhu $t9,0x64($sp)
/* 5162c: 27a50048 */ addiu $a1,$sp,0x48
/* 51630: afa50044 */ sw $a1,0x44($sp)
/* 51634: 17190004 */ bne $t8,$t9,.L00051648
/* 51638: 97a90068 */ lhu $t1,0x68($sp)
/* 5163c: 97aa0066 */ lhu $t2,0x66($sp)
/* 51640: 512a000a */ beql $t1,$t2,.L0005166c
/* 51644: 97ad0060 */ lhu $t5,0x60($sp)
.L00051648:
/* 51648: 0c013154 */ jal func0004c550
/* 5164c: 02002025 */ or $a0,$s0,$zero
/* 51650: 50400006 */ beqzl $v0,.L0005166c
/* 51654: 97ad0060 */ lhu $t5,0x60($sp)
/* 51658: 8e0b0000 */ lw $t3,0x0($s0)
/* 5165c: 356c0004 */ ori $t4,$t3,0x4
/* 51660: 10000040 */ b .L00051764
/* 51664: ae0c0000 */ sw $t4,0x0($s0)
/* 51668: 97ad0060 */ lhu $t5,0x60($sp)
.L0005166c:
/* 5166c: 27a50048 */ addiu $a1,$sp,0x48
/* 51670: 02002025 */ or $a0,$s0,$zero
/* 51674: 31ae0001 */ andi $t6,$t5,0x1
/* 51678: 55c00016 */ bnezl $t6,.L000516d4
/* 5167c: 8fa40044 */ lw $a0,0x44($sp)
/* 51680: 0c013080 */ jal func0004c200
/* 51684: 27a60020 */ addiu $a2,$sp,0x20
/* 51688: 10400009 */ beqz $v0,.L000516b0
/* 5168c: 00401825 */ or $v1,$v0,$zero
/* 51690: 2401000a */ addiu $at,$zero,0xa
/* 51694: 14410004 */ bne $v0,$at,.L000516a8
/* 51698: 00000000 */ nop
/* 5169c: 8e0f0000 */ lw $t7,0x0($s0)
/* 516a0: 35f80004 */ ori $t8,$t7,0x4
/* 516a4: ae180000 */ sw $t8,0x0($s0)
.L000516a8:
/* 516a8: 1000002e */ b .L00051764
/* 516ac: 00601025 */ or $v0,$v1,$zero
.L000516b0:
/* 516b0: 97a90038 */ lhu $t1,0x38($sp)
/* 516b4: 27b90020 */ addiu $t9,$sp,0x20
/* 516b8: afb90044 */ sw $t9,0x44($sp)
/* 516bc: 312a0001 */ andi $t2,$t1,0x1
/* 516c0: 55400004 */ bnezl $t2,.L000516d4
/* 516c4: 8fa40044 */ lw $a0,0x44($sp)
/* 516c8: 10000026 */ b .L00051764
/* 516cc: 2402000b */ addiu $v0,$zero,0xb
/* 516d0: 8fa40044 */ lw $a0,0x44($sp)
.L000516d4:
/* 516d4: 2605000c */ addiu $a1,$s0,0xc
/* 516d8: 0c012c5c */ jal bcopy
/* 516dc: 24060020 */ addiu $a2,$zero,0x20
/* 516e0: 8fab0044 */ lw $t3,0x44($sp)
/* 516e4: 24190010 */ addiu $t9,$zero,0x10
/* 516e8: 24090008 */ addiu $t1,$zero,0x8
/* 516ec: 916c001b */ lbu $t4,0x1b($t3)
/* 516f0: 8e040004 */ lw $a0,0x4($s0)
/* 516f4: 8e050008 */ lw $a1,0x8($s0)
/* 516f8: ae0c004c */ sw $t4,0x4c($s0)
/* 516fc: 8fad0044 */ lw $t5,0x44($sp)
/* 51700: 24060007 */ addiu $a2,$zero,0x7
/* 51704: 2607002c */ addiu $a3,$s0,0x2c
/* 51708: 91ae001a */ lbu $t6,0x1a($t5)
/* 5170c: ae190050 */ sw $t9,0x50($s0)
/* 51710: ae090054 */ sw $t1,0x54($s0)
/* 51714: 31c200ff */ andi $v0,$t6,0xff
/* 51718: 000218c0 */ sll $v1,$v0,0x3
/* 5171c: 00027840 */ sll $t7,$v0,0x1
/* 51720: 24680008 */ addiu $t0,$v1,0x8
/* 51724: 25f80003 */ addiu $t8,$t7,0x3
/* 51728: 01035021 */ addu $t2,$t0,$v1
/* 5172c: ae180060 */ sw $t8,0x60($s0)
/* 51730: ae080058 */ sw $t0,0x58($s0)
/* 51734: ae0a005c */ sw $t2,0x5c($s0)
/* 51738: 0c012e18 */ jal __osContRamRead
/* 5173c: a20e0064 */ sb $t6,0x64($s0)
/* 51740: 10400003 */ beqz $v0,.L00051750
/* 51744: 00000000 */ nop
/* 51748: 10000007 */ b .L00051768
/* 5174c: 8fbf001c */ lw $ra,0x1c($sp)
.L00051750:
/* 51750: 0c0135bc */ jal func0004d6f0
/* 51754: 02002025 */ or $a0,$s0,$zero
/* 51758: 8e0b0000 */ lw $t3,0x0($s0)
/* 5175c: 356c0001 */ ori $t4,$t3,0x1
/* 51760: ae0c0000 */ sw $t4,0x0($s0)
.L00051764:
/* 51764: 8fbf001c */ lw $ra,0x1c($sp)
.L00051768:
/* 51768: 8fb00018 */ lw $s0,0x18($sp)
/* 5176c: 27bd0070 */ addiu $sp,$sp,0x70
/* 51770: 03e00008 */ jr $ra
/* 51774: 00000000 */ nop
);
GLOBAL_ASM(
glabel func00051778
/* 51778: 27bdff68 */ addiu $sp,$sp,-152
/* 5177c: afbf0024 */ sw $ra,0x24($sp)
/* 51780: afb00020 */ sw $s0,0x20($sp)
/* 51784: 00808025 */ or $s0,$a0,$zero
/* 51788: 0c013378 */ jal __osPfsSelectBank
/* 5178c: 00002825 */ or $a1,$zero,$zero
/* 51790: 10400003 */ beqz $v0,.L000517a0
/* 51794: 00003025 */ or $a2,$zero,$zero
/* 51798: 10000034 */ b .L0005186c
/* 5179c: 8fbf0024 */ lw $ra,0x24($sp)
.L000517a0:
/* 517a0: 8e040004 */ lw $a0,0x4($s0)
/* 517a4: 8e050008 */ lw $a1,0x8($s0)
/* 517a8: 0c012e18 */ jal __osContRamRead
/* 517ac: 27a70030 */ addiu $a3,$sp,0x30
/* 517b0: 10400003 */ beqz $v0,.L000517c0
/* 517b4: 27a30070 */ addiu $v1,$sp,0x70
/* 517b8: 1000002c */ b .L0005186c
/* 517bc: 8fbf0024 */ lw $ra,0x24($sp)
.L000517c0:
/* 517c0: 00001025 */ or $v0,$zero,$zero
/* 517c4: 24040020 */ addiu $a0,$zero,0x20
.L000517c8:
/* 517c8: 244e0001 */ addiu $t6,$v0,0x1
/* 517cc: 244f0002 */ addiu $t7,$v0,0x2
/* 517d0: 24580003 */ addiu $t8,$v0,0x3
/* 517d4: a0620000 */ sb $v0,0x0($v1)
/* 517d8: 24420004 */ addiu $v0,$v0,0x4
/* 517dc: a0780003 */ sb $t8,0x3($v1)
/* 517e0: a06f0002 */ sb $t7,0x2($v1)
/* 517e4: a06e0001 */ sb $t6,0x1($v1)
/* 517e8: 1444fff7 */ bne $v0,$a0,.L000517c8
/* 517ec: 24630004 */ addiu $v1,$v1,0x4
/* 517f0: 8e040004 */ lw $a0,0x4($s0)
/* 517f4: 8e050008 */ lw $a1,0x8($s0)
/* 517f8: afa00010 */ sw $zero,0x10($sp)
/* 517fc: 00003025 */ or $a2,$zero,$zero
/* 51800: 0c012d84 */ jal __osContRamWrite
/* 51804: 27a70070 */ addiu $a3,$sp,0x70
/* 51808: 10400003 */ beqz $v0,.L00051818
/* 5180c: 00003025 */ or $a2,$zero,$zero
/* 51810: 10000016 */ b .L0005186c
/* 51814: 8fbf0024 */ lw $ra,0x24($sp)
.L00051818:
/* 51818: 8e040004 */ lw $a0,0x4($s0)
/* 5181c: 8e050008 */ lw $a1,0x8($s0)
/* 51820: 0c012e18 */ jal __osContRamRead
/* 51824: 27a70050 */ addiu $a3,$sp,0x50
/* 51828: 10400003 */ beqz $v0,.L00051838
/* 5182c: 27a40070 */ addiu $a0,$sp,0x70
/* 51830: 1000000e */ b .L0005186c
/* 51834: 8fbf0024 */ lw $ra,0x24($sp)
.L00051838:
/* 51838: 27a50050 */ addiu $a1,$sp,0x50
/* 5183c: 0c013824 */ jal func0004e090
/* 51840: 24060020 */ addiu $a2,$zero,0x20
/* 51844: 10400003 */ beqz $v0,.L00051854
/* 51848: 00003025 */ or $a2,$zero,$zero
/* 5184c: 10000006 */ b .L00051868
/* 51850: 2402000b */ addiu $v0,$zero,0xb
.L00051854:
/* 51854: 8e040004 */ lw $a0,0x4($s0)
/* 51858: 8e050008 */ lw $a1,0x8($s0)
/* 5185c: afa00010 */ sw $zero,0x10($sp)
/* 51860: 0c012d84 */ jal __osContRamWrite
/* 51864: 27a70030 */ addiu $a3,$sp,0x30
.L00051868:
/* 51868: 8fbf0024 */ lw $ra,0x24($sp)
.L0005186c:
/* 5186c: 8fb00020 */ lw $s0,0x20($sp)
/* 51870: 27bd0098 */ addiu $sp,$sp,0x98
/* 51874: 03e00008 */ jr $ra
/* 51878: 00000000 */ nop
);
+233
View File
@@ -0,0 +1,233 @@
#include <ultra64.h>
#include "constants.h"
#include "bss.h"
#include "lib/lib_4b170.h"
#include "lib/lib_4c090.h"
#include "lib/lib_4d6f0.h"
#include "lib/lib_513b0.h"
#include "lib/lib_52360.h"
#include "data.h"
#include "types.h"
GLOBAL_ASM(
glabel func000051570
/* 51570: 27bdff90 */ addiu $sp,$sp,-112
/* 51574: afbf001c */ sw $ra,0x1c($sp)
/* 51578: afb00018 */ sw $s0,0x18($sp)
/* 5157c: 00a08025 */ or $s0,$a1,$zero
/* 51580: afa40070 */ sw $a0,0x70($sp)
/* 51584: 0c012a18 */ jal __osSiGetAccess
/* 51588: afa60078 */ sw $a2,0x78($sp)
/* 5158c: 8fa40070 */ lw $a0,0x70($sp)
/* 51590: 0c012ea4 */ jal __osPfsGetStatus
/* 51594: 8fa50078 */ lw $a1,0x78($sp)
/* 51598: 0c012a29 */ jal __osSiRelAccess
/* 5159c: afa2006c */ sw $v0,0x6c($sp)
/* 515a0: 8fa3006c */ lw $v1,0x6c($sp)
/* 515a4: 8fae0070 */ lw $t6,0x70($sp)
/* 515a8: 02002025 */ or $a0,$s0,$zero
/* 515ac: 50600004 */ beqzl $v1,.L000515c0
/* 515b0: ae0e0004 */ sw $t6,0x4($s0)
/* 515b4: 1000006b */ b .L00051764
/* 515b8: 00601025 */ or $v0,$v1,$zero
/* 515bc: ae0e0004 */ sw $t6,0x4($s0)
.L000515c0:
/* 515c0: 8faf0078 */ lw $t7,0x78($sp)
/* 515c4: ae000000 */ sw $zero,0x0($s0)
/* 515c8: 0c0145de */ jal func00051778
/* 515cc: ae0f0008 */ sw $t7,0x8($s0)
/* 515d0: 10400003 */ beqz $v0,.L000515e0
/* 515d4: 02002025 */ or $a0,$s0,$zero
/* 515d8: 10000063 */ b .L00051768
/* 515dc: 8fbf001c */ lw $ra,0x1c($sp)
.L000515e0:
/* 515e0: 0c013378 */ jal __osPfsSelectBank
/* 515e4: 00002825 */ or $a1,$zero,$zero
/* 515e8: 10400003 */ beqz $v0,.L000515f8
/* 515ec: 24060001 */ addiu $a2,$zero,0x1
/* 515f0: 1000005d */ b .L00051768
/* 515f4: 8fbf001c */ lw $ra,0x1c($sp)
.L000515f8:
/* 515f8: 8e040004 */ lw $a0,0x4($s0)
/* 515fc: 8e050008 */ lw $a1,0x8($s0)
/* 51600: 0c012e18 */ jal __osContRamRead
/* 51604: 27a70048 */ addiu $a3,$sp,0x48
/* 51608: 10400003 */ beqz $v0,.L00051618
/* 5160c: 27a40048 */ addiu $a0,$sp,0x48
/* 51610: 10000055 */ b .L00051768
/* 51614: 8fbf001c */ lw $ra,0x1c($sp)
.L00051618:
/* 51618: 27a5006a */ addiu $a1,$sp,0x6a
/* 5161c: 0c013041 */ jal func0004c104
/* 51620: 27a60068 */ addiu $a2,$sp,0x68
/* 51624: 97b8006a */ lhu $t8,0x6a($sp)
/* 51628: 97b90064 */ lhu $t9,0x64($sp)
/* 5162c: 27a50048 */ addiu $a1,$sp,0x48
/* 51630: afa50044 */ sw $a1,0x44($sp)
/* 51634: 17190004 */ bne $t8,$t9,.L00051648
/* 51638: 97a90068 */ lhu $t1,0x68($sp)
/* 5163c: 97aa0066 */ lhu $t2,0x66($sp)
/* 51640: 512a000a */ beql $t1,$t2,.L0005166c
/* 51644: 97ad0060 */ lhu $t5,0x60($sp)
.L00051648:
/* 51648: 0c013154 */ jal func0004c550
/* 5164c: 02002025 */ or $a0,$s0,$zero
/* 51650: 50400006 */ beqzl $v0,.L0005166c
/* 51654: 97ad0060 */ lhu $t5,0x60($sp)
/* 51658: 8e0b0000 */ lw $t3,0x0($s0)
/* 5165c: 356c0004 */ ori $t4,$t3,0x4
/* 51660: 10000040 */ b .L00051764
/* 51664: ae0c0000 */ sw $t4,0x0($s0)
/* 51668: 97ad0060 */ lhu $t5,0x60($sp)
.L0005166c:
/* 5166c: 27a50048 */ addiu $a1,$sp,0x48
/* 51670: 02002025 */ or $a0,$s0,$zero
/* 51674: 31ae0001 */ andi $t6,$t5,0x1
/* 51678: 55c00016 */ bnezl $t6,.L000516d4
/* 5167c: 8fa40044 */ lw $a0,0x44($sp)
/* 51680: 0c013080 */ jal func0004c200
/* 51684: 27a60020 */ addiu $a2,$sp,0x20
/* 51688: 10400009 */ beqz $v0,.L000516b0
/* 5168c: 00401825 */ or $v1,$v0,$zero
/* 51690: 2401000a */ addiu $at,$zero,0xa
/* 51694: 14410004 */ bne $v0,$at,.L000516a8
/* 51698: 00000000 */ nop
/* 5169c: 8e0f0000 */ lw $t7,0x0($s0)
/* 516a0: 35f80004 */ ori $t8,$t7,0x4
/* 516a4: ae180000 */ sw $t8,0x0($s0)
.L000516a8:
/* 516a8: 1000002e */ b .L00051764
/* 516ac: 00601025 */ or $v0,$v1,$zero
.L000516b0:
/* 516b0: 97a90038 */ lhu $t1,0x38($sp)
/* 516b4: 27b90020 */ addiu $t9,$sp,0x20
/* 516b8: afb90044 */ sw $t9,0x44($sp)
/* 516bc: 312a0001 */ andi $t2,$t1,0x1
/* 516c0: 55400004 */ bnezl $t2,.L000516d4
/* 516c4: 8fa40044 */ lw $a0,0x44($sp)
/* 516c8: 10000026 */ b .L00051764
/* 516cc: 2402000b */ addiu $v0,$zero,0xb
/* 516d0: 8fa40044 */ lw $a0,0x44($sp)
.L000516d4:
/* 516d4: 2605000c */ addiu $a1,$s0,0xc
/* 516d8: 0c012c5c */ jal bcopy
/* 516dc: 24060020 */ addiu $a2,$zero,0x20
/* 516e0: 8fab0044 */ lw $t3,0x44($sp)
/* 516e4: 24190010 */ addiu $t9,$zero,0x10
/* 516e8: 24090008 */ addiu $t1,$zero,0x8
/* 516ec: 916c001b */ lbu $t4,0x1b($t3)
/* 516f0: 8e040004 */ lw $a0,0x4($s0)
/* 516f4: 8e050008 */ lw $a1,0x8($s0)
/* 516f8: ae0c004c */ sw $t4,0x4c($s0)
/* 516fc: 8fad0044 */ lw $t5,0x44($sp)
/* 51700: 24060007 */ addiu $a2,$zero,0x7
/* 51704: 2607002c */ addiu $a3,$s0,0x2c
/* 51708: 91ae001a */ lbu $t6,0x1a($t5)
/* 5170c: ae190050 */ sw $t9,0x50($s0)
/* 51710: ae090054 */ sw $t1,0x54($s0)
/* 51714: 31c200ff */ andi $v0,$t6,0xff
/* 51718: 000218c0 */ sll $v1,$v0,0x3
/* 5171c: 00027840 */ sll $t7,$v0,0x1
/* 51720: 24680008 */ addiu $t0,$v1,0x8
/* 51724: 25f80003 */ addiu $t8,$t7,0x3
/* 51728: 01035021 */ addu $t2,$t0,$v1
/* 5172c: ae180060 */ sw $t8,0x60($s0)
/* 51730: ae080058 */ sw $t0,0x58($s0)
/* 51734: ae0a005c */ sw $t2,0x5c($s0)
/* 51738: 0c012e18 */ jal __osContRamRead
/* 5173c: a20e0064 */ sb $t6,0x64($s0)
/* 51740: 10400003 */ beqz $v0,.L00051750
/* 51744: 00000000 */ nop
/* 51748: 10000007 */ b .L00051768
/* 5174c: 8fbf001c */ lw $ra,0x1c($sp)
.L00051750:
/* 51750: 0c0135bc */ jal func0004d6f0
/* 51754: 02002025 */ or $a0,$s0,$zero
/* 51758: 8e0b0000 */ lw $t3,0x0($s0)
/* 5175c: 356c0001 */ ori $t4,$t3,0x1
/* 51760: ae0c0000 */ sw $t4,0x0($s0)
.L00051764:
/* 51764: 8fbf001c */ lw $ra,0x1c($sp)
.L00051768:
/* 51768: 8fb00018 */ lw $s0,0x18($sp)
/* 5176c: 27bd0070 */ addiu $sp,$sp,0x70
/* 51770: 03e00008 */ jr $ra
/* 51774: 00000000 */ nop
);
GLOBAL_ASM(
glabel func00051778
/* 51778: 27bdff68 */ addiu $sp,$sp,-152
/* 5177c: afbf0024 */ sw $ra,0x24($sp)
/* 51780: afb00020 */ sw $s0,0x20($sp)
/* 51784: 00808025 */ or $s0,$a0,$zero
/* 51788: 0c013378 */ jal __osPfsSelectBank
/* 5178c: 00002825 */ or $a1,$zero,$zero
/* 51790: 10400003 */ beqz $v0,.L000517a0
/* 51794: 00003025 */ or $a2,$zero,$zero
/* 51798: 10000034 */ b .L0005186c
/* 5179c: 8fbf0024 */ lw $ra,0x24($sp)
.L000517a0:
/* 517a0: 8e040004 */ lw $a0,0x4($s0)
/* 517a4: 8e050008 */ lw $a1,0x8($s0)
/* 517a8: 0c012e18 */ jal __osContRamRead
/* 517ac: 27a70030 */ addiu $a3,$sp,0x30
/* 517b0: 10400003 */ beqz $v0,.L000517c0
/* 517b4: 27a30070 */ addiu $v1,$sp,0x70
/* 517b8: 1000002c */ b .L0005186c
/* 517bc: 8fbf0024 */ lw $ra,0x24($sp)
.L000517c0:
/* 517c0: 00001025 */ or $v0,$zero,$zero
/* 517c4: 24040020 */ addiu $a0,$zero,0x20
.L000517c8:
/* 517c8: 244e0001 */ addiu $t6,$v0,0x1
/* 517cc: 244f0002 */ addiu $t7,$v0,0x2
/* 517d0: 24580003 */ addiu $t8,$v0,0x3
/* 517d4: a0620000 */ sb $v0,0x0($v1)
/* 517d8: 24420004 */ addiu $v0,$v0,0x4
/* 517dc: a0780003 */ sb $t8,0x3($v1)
/* 517e0: a06f0002 */ sb $t7,0x2($v1)
/* 517e4: a06e0001 */ sb $t6,0x1($v1)
/* 517e8: 1444fff7 */ bne $v0,$a0,.L000517c8
/* 517ec: 24630004 */ addiu $v1,$v1,0x4
/* 517f0: 8e040004 */ lw $a0,0x4($s0)
/* 517f4: 8e050008 */ lw $a1,0x8($s0)
/* 517f8: afa00010 */ sw $zero,0x10($sp)
/* 517fc: 00003025 */ or $a2,$zero,$zero
/* 51800: 0c012d84 */ jal __osContRamWrite
/* 51804: 27a70070 */ addiu $a3,$sp,0x70
/* 51808: 10400003 */ beqz $v0,.L00051818
/* 5180c: 00003025 */ or $a2,$zero,$zero
/* 51810: 10000016 */ b .L0005186c
/* 51814: 8fbf0024 */ lw $ra,0x24($sp)
.L00051818:
/* 51818: 8e040004 */ lw $a0,0x4($s0)
/* 5181c: 8e050008 */ lw $a1,0x8($s0)
/* 51820: 0c012e18 */ jal __osContRamRead
/* 51824: 27a70050 */ addiu $a3,$sp,0x50
/* 51828: 10400003 */ beqz $v0,.L00051838
/* 5182c: 27a40070 */ addiu $a0,$sp,0x70
/* 51830: 1000000e */ b .L0005186c
/* 51834: 8fbf0024 */ lw $ra,0x24($sp)
.L00051838:
/* 51838: 27a50050 */ addiu $a1,$sp,0x50
/* 5183c: 0c013824 */ jal func0004e090
/* 51840: 24060020 */ addiu $a2,$zero,0x20
/* 51844: 10400003 */ beqz $v0,.L00051854
/* 51848: 00003025 */ or $a2,$zero,$zero
/* 5184c: 10000006 */ b .L00051868
/* 51850: 2402000b */ addiu $v0,$zero,0xb
.L00051854:
/* 51854: 8e040004 */ lw $a0,0x4($s0)
/* 51858: 8e050008 */ lw $a1,0x8($s0)
/* 5185c: afa00010 */ sw $zero,0x10($sp)
/* 51860: 0c012d84 */ jal __osContRamWrite
/* 51864: 27a70030 */ addiu $a3,$sp,0x30
.L00051868:
/* 51868: 8fbf0024 */ lw $ra,0x24($sp)
.L0005186c:
/* 5186c: 8fb00020 */ lw $s0,0x20($sp)
/* 51870: 27bd0098 */ addiu $sp,$sp,0x98
/* 51874: 03e00008 */ jr $ra
/* 51878: 00000000 */ nop
);
+1 -1
View File
@@ -63,4 +63,4 @@ glabel func00052360
/* 52424: 8fb10020 */ lw $s1,0x20($sp)
/* 52428: 03e00008 */ jr $ra
/* 5242c: 27bd0058 */ addiu $sp,$sp,0x58
);
);
+1389 -4
View File
File diff suppressed because it is too large Load Diff
+129 -2
View File
@@ -67,9 +67,9 @@ void memInit(u32 heapstart, u32 heaplen)
g_OnboardMemoryPools[MEMPOOL_STAGE].rightpos = heapstart + heaplen;
// If 8MB, reserve the entire expansion pak for additional mempool 4
extraend = 0x80000000 + osGetMemSize();
extraend = 0x80000000 + initGetMemSize();
if (osGetMemSize() > 4 * 1024 * 1024) {
if (initGetMemSize() > 4 * 1024 * 1024) {
g_ExpansionMemoryPools[MEMPOOL_STAGE].start = 0x80400000;
g_ExpansionMemoryPools[MEMPOOL_STAGE].rightpos = extraend;
}
@@ -171,6 +171,7 @@ glabel memAllocFromBank
// return allocation;
//}
#if VERSION >= VERSION_NTSC_1_0
void *malloc(u32 len, u8 pool)
{
void *allocation = (void *)memAllocFromBank(g_OnboardMemoryPools, len, pool);
@@ -187,6 +188,86 @@ void *malloc(u32 len, u8 pool)
return allocation;
}
#else
GLOBAL_ASM(
glabel malloc
/* 12838: 27bdff78 */ addiu $sp,$sp,-136
/* 1283c: afa40088 */ sw $a0,0x88($sp)
/* 12840: afbf001c */ sw $ra,0x1c($sp)
/* 12844: afa5008c */ sw $a1,0x8c($sp)
/* 12848: 3c04800a */ lui $a0,0x800a
/* 1284c: 2484c280 */ addiu $a0,$a0,-15744
/* 12850: 93a6008f */ lbu $a2,0x8f($sp)
/* 12854: 0c0049f1 */ jal 0x127c4
/* 12858: 8fa50088 */ lw $a1,0x88($sp)
/* 1285c: 10400003 */ beqz $v0,.NB0001286c
/* 12860: 3c04800a */ lui $a0,0x800a
/* 12864: 10000036 */ beqz $zero,.NB00012940
/* 12868: 8fbf001c */ lw $ra,0x1c($sp)
.NB0001286c:
/* 1286c: 2484c338 */ addiu $a0,$a0,-15560
/* 12870: 8fa50088 */ lw $a1,0x88($sp)
/* 12874: 0c0049f1 */ jal 0x127c4
/* 12878: 93a6008f */ lbu $a2,0x8f($sp)
/* 1287c: 10400003 */ beqz $v0,.NB0001288c
/* 12880: afa20084 */ sw $v0,0x84($sp)
/* 12884: 1000002e */ beqz $zero,.NB00012940
/* 12888: 8fbf001c */ lw $ra,0x1c($sp)
.NB0001288c:
/* 1288c: 93a2008f */ lbu $v0,0x8f($sp)
/* 12890: 24010008 */ addiu $at,$zero,0x8
/* 12894: 10410028 */ beq $v0,$at,.NB00012938
/* 12898: 24010007 */ addiu $at,$zero,0x7
/* 1289c: 10410026 */ beq $v0,$at,.NB00012938
/* 128a0: 8fae0088 */ lw $t6,0x88($sp)
/* 128a4: 11c00024 */ beqz $t6,.NB00012938
/* 128a8: 24010004 */ addiu $at,$zero,0x4
/* 128ac: 14410011 */ bne $v0,$at,.NB000128f4
/* 128b0: 24040006 */ addiu $a0,$zero,0x6
/* 128b4: 24040004 */ addiu $a0,$zero,0x4
/* 128b8: 0c004a7c */ jal 0x129f0
/* 128bc: 00002825 */ or $a1,$zero,$zero
/* 128c0: afa20028 */ sw $v0,0x28($sp)
/* 128c4: 24040004 */ addiu $a0,$zero,0x4
/* 128c8: 0c004a91 */ jal 0x12a44
/* 128cc: 00002825 */ or $a1,$zero,$zero
/* 128d0: 3c057005 */ lui $a1,0x7005
/* 128d4: 24a556f0 */ addiu $a1,$a1,0x56f0
/* 128d8: 27a40034 */ addiu $a0,$sp,0x34
/* 128dc: 8fa60088 */ lw $a2,0x88($sp)
/* 128e0: 8fa70028 */ lw $a3,0x28($sp)
/* 128e4: 0c004fc1 */ jal 0x13f04
/* 128e8: afa20010 */ sw $v0,0x10($sp)
/* 128ec: 1000000e */ beqz $zero,.NB00012928
/* 128f0: 00000000 */ sll $zero,$zero,0x0
.NB000128f4:
/* 128f4: 0c004a7c */ jal 0x129f0
/* 128f8: 00002825 */ or $a1,$zero,$zero
/* 128fc: afa20028 */ sw $v0,0x28($sp)
/* 12900: 24040006 */ addiu $a0,$zero,0x6
/* 12904: 0c004a91 */ jal 0x12a44
/* 12908: 00002825 */ or $a1,$zero,$zero
/* 1290c: 3c057005 */ lui $a1,0x7005
/* 12910: 24a55710 */ addiu $a1,$a1,0x5710
/* 12914: 27a40034 */ addiu $a0,$sp,0x34
/* 12918: 8fa60088 */ lw $a2,0x88($sp)
/* 1291c: 8fa70028 */ lw $a3,0x28($sp)
/* 12920: 0c004fc1 */ jal 0x13f04
/* 12924: afa20010 */ sw $v0,0x10($sp)
.NB00012928:
/* 12928: 0c003074 */ jal 0xc1d0
/* 1292c: 27a40034 */ addiu $a0,$sp,0x34
/* 12930: 240f0045 */ addiu $t7,$zero,0x45
/* 12934: a00f0000 */ sb $t7,0x0($zero)
.NB00012938:
/* 12938: 8fa20084 */ lw $v0,0x84($sp)
/* 1293c: 8fbf001c */ lw $ra,0x1c($sp)
.NB00012940:
/* 12940: 27bd0088 */ addiu $sp,$sp,0x88
/* 12944: 03e00008 */ jr $ra
/* 12948: 00000000 */ sll $zero,$zero,0x0
);
#endif
/**
* Reallocate the given allocation in the given pool.
@@ -242,6 +323,52 @@ u32 memGetFree(u8 poolnum, u32 bank)
return pool->rightpos - pool->leftpos;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00012a44nb
/* 12a44: afa40000 */ sw $a0,0x0($sp)
/* 12a48: 308e00ff */ andi $t6,$a0,0xff
/* 12a4c: 14a00008 */ bnez $a1,.NB00012a70
/* 12a50: 01c02025 */ or $a0,$t6,$zero
/* 12a54: 000e7880 */ sll $t7,$t6,0x2
/* 12a58: 01ee7821 */ addu $t7,$t7,$t6
/* 12a5c: 3c18800a */ lui $t8,0x800a
/* 12a60: 2718c280 */ addiu $t8,$t8,-15744
/* 12a64: 000f7880 */ sll $t7,$t7,0x2
/* 12a68: 10000007 */ beqz $zero,.NB00012a88
/* 12a6c: 01f81821 */ addu $v1,$t7,$t8
.NB00012a70:
/* 12a70: 0004c880 */ sll $t9,$a0,0x2
/* 12a74: 0324c821 */ addu $t9,$t9,$a0
/* 12a78: 3c08800a */ lui $t0,0x800a
/* 12a7c: 2508c338 */ addiu $t0,$t0,-15560
/* 12a80: 0019c880 */ sll $t9,$t9,0x2
/* 12a84: 03281821 */ addu $v1,$t9,$t0
.NB00012a88:
/* 12a88: 8c690008 */ lw $t1,0x8($v1)
/* 12a8c: 8c6a0000 */ lw $t2,0x0($v1)
/* 12a90: 03e00008 */ jr $ra
/* 12a94: 012a1023 */ subu $v0,$t1,$t2
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00012a98nb
/* 12a98: 27bdffe8 */ addiu $sp,$sp,-24
/* 12a9c: 00802825 */ or $a1,$a0,$zero
/* 12aa0: afbf0014 */ sw $ra,0x14($sp)
/* 12aa4: 30ae000f */ andi $t6,$a1,0xf
/* 12aa8: 01c02825 */ or $a1,$t6,$zero
/* 12aac: 0c004a0e */ jal 0x12838
/* 12ab0: 00042102 */ srl $a0,$a0,0x4
/* 12ab4: 8fbf0014 */ lw $ra,0x14($sp)
/* 12ab8: 27bd0018 */ addiu $sp,$sp,0x18
/* 12abc: 03e00008 */ jr $ra
/* 12ac0: 00000000 */ sll $zero,$zero,0x0
);
#endif
/**
* Reset the pool's left side to its start address, effectively freeing the left
* side of the pool.
+12
View File
@@ -429,6 +429,8 @@ glabel func0001a9e8
/* 1aa18: 27bd0018 */ addiu $sp,$sp,0x18
);
#if VERSION >= VERSION_NTSC_1_0
// ntsc-beta has this function in another file
void *modelGetNodeData(struct model *model, struct modelnode *node)
{
u32 index = 0;
@@ -473,6 +475,7 @@ void *modelGetNodeData(struct model *model, struct modelnode *node)
return &datas[index];
}
#endif
void modelNodeGetPosition(struct model *model, struct modelnode *node, struct coord *pos)
{
@@ -4914,6 +4917,15 @@ void modelSetAnimFlipFunction(struct model *model, void *callback)
}
}
#if VERSION == VERSION_NTSC_BETA
void modelSetAnimUnk6c(struct model *model, s32 value)
{
if (model->anim) {
model->anim->unk6c = value;
}
}
#endif
void modelSetAnimSpeed(struct model *model, f32 speed, f32 startframe)
{
struct anim *anim = model->anim;
-3
View File
@@ -289,8 +289,6 @@ void func00002078(OSSched *sc)
func00001b98(sc->frameCount);
}
//#if VERSION >= VERSION_NTSC_1_0
#if VERSION >= 0
void __scHandleRetrace(OSSched *sc)
{
s32 state;
@@ -343,7 +341,6 @@ void __scHandleRetrace(OSSched *sc)
}
#endif
}
#endif
void __scHandleRSP(OSSched *sc)
{
+94
View File
@@ -1,8 +1,71 @@
#include "constants.h"
long long __f_to_ll(float f)
{
return f;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00005abcnb
/* 5abc: 46006109 */ trunc.l.s $f4,$f12
/* 5ac0: 44222000 */ dmfc1 $v0,$f4
/* 5ac4: 00000000 */ sll $zero,$zero,0x0
/* 5ac8: 0002183c */ dsll32 $v1,$v0,0x0
/* 5acc: 0003183f */ dsra32 $v1,$v1,0x0
/* 5ad0: 03e00008 */ jr $ra
/* 5ad4: 0002103f */ dsra32 $v0,$v0,0x0
);
#endif
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00005b74nb
/* 5b74: 444ef800 */ cfc1 $t6,$31
/* 5b78: 24020001 */ addiu $v0,$zero,0x1
/* 5b7c: 44c2f800 */ ctc1 $v0,$31
/* 5b80: 00000000 */ sll $zero,$zero,0x0
/* 5b84: 46006125 */ cvt.l.s $f4,$f12
/* 5b88: 4442f800 */ cfc1 $v0,$31
/* 5b8c: 00000000 */ sll $zero,$zero,0x0
/* 5b90: 30410004 */ andi $at,$v0,0x4
/* 5b94: 30420078 */ andi $v0,$v0,0x78
/* 5b98: 10400014 */ beqz $v0,.NB00005bec
/* 5b9c: 3c015f00 */ lui $at,0x5f00
/* 5ba0: 44812000 */ mtc1 $at,$f4
/* 5ba4: 24020001 */ addiu $v0,$zero,0x1
/* 5ba8: 46046101 */ sub.s $f4,$f12,$f4
/* 5bac: 44c2f800 */ ctc1 $v0,$31
/* 5bb0: 00000000 */ sll $zero,$zero,0x0
/* 5bb4: 46002125 */ cvt.l.s $f4,$f4
/* 5bb8: 4442f800 */ cfc1 $v0,$31
/* 5bbc: 00000000 */ sll $zero,$zero,0x0
/* 5bc0: 30410004 */ andi $at,$v0,0x4
/* 5bc4: 30420078 */ andi $v0,$v0,0x78
/* 5bc8: 14400006 */ bnez $v0,.NB00005be4
/* 5bcc: 00000000 */ sll $zero,$zero,0x0
/* 5bd0: 3c0f8000 */ lui $t7,0x8000
/* 5bd4: 000f783c */ dsll32 $t7,$t7,0x0
/* 5bd8: 44222000 */ dmfc1 $v0,$f4
/* 5bdc: 10000007 */ beqz $zero,.NB00005bfc
/* 5be0: 004f1025 */ or $v0,$v0,$t7
.NB00005be4:
/* 5be4: 10000005 */ beqz $zero,.NB00005bfc
/* 5be8: 2402ffff */ addiu $v0,$zero,-1
.NB00005bec:
/* 5bec: 44222000 */ dmfc1 $v0,$f4
/* 5bf0: 00000000 */ sll $zero,$zero,0x0
/* 5bf4: 0440fffb */ bltz $v0,.NB00005be4
/* 5bf8: 00000000 */ sll $zero,$zero,0x0
.NB00005bfc:
/* 5bfc: 44cef800 */ ctc1 $t6,$31
/* 5c00: 0002183c */ dsll32 $v1,$v0,0x0
/* 5c04: 0003183f */ dsra32 $v1,$v1,0x0
/* 5c08: 03e00008 */ jr $ra
/* 5c0c: 0002103f */ dsra32 $v0,$v0,0x0
);
#endif
GLOBAL_ASM(
glabel __f_to_ull
/* 5a7c: 444ef800 */ cfc1 $t6,$31
@@ -61,7 +124,38 @@ double __ll_to_d(long long s)
return s;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00005c28nb
/* 5c28: afa40000 */ sw $a0,0x0($sp)
/* 5c2c: afa50004 */ sw $a1,0x4($sp)
/* 5c30: dfae0000 */ ld $t6,0x0($sp)
/* 5c34: 44ae2000 */ dmtc1 $t6,$f4
/* 5c38: 03e00008 */ jr $ra
/* 5c3c: 46a02020 */ cvt.s.l $f0,$f4
);
#endif
float __ull_to_f(unsigned long long u)
{
return u;
}
#if VERSION == VERSION_NTSC_BETA
GLOBAL_ASM(
glabel func00005c70nb
/* 5c70: afa40000 */ sw $a0,0x0($sp)
/* 5c74: afa50004 */ sw $a1,0x4($sp)
/* 5c78: dfae0000 */ ld $t6,0x0($sp)
/* 5c7c: 44ae2000 */ dmtc1 $t6,$f4
/* 5c80: 05c10005 */ bgez $t6,.NB00005c98
/* 5c84: 46a02020 */ cvt.s.l $f0,$f4
/* 5c88: 3c014f80 */ lui $at,0x4f80
/* 5c8c: 44813000 */ mtc1 $at,$f6
/* 5c90: 00000000 */ sll $zero,$zero,0x0
/* 5c94: 46060000 */ add.s $f0,$f0,$f6
.NB00005c98:
/* 5c98: 03e00008 */ jr $ra
/* 5c9c: 00000000 */ sll $zero,$zero,0x0
);
#endif
+30
View File
@@ -0,0 +1,30 @@
#include <libultra_internal.h>
#include "data.h"
GLOBAL_ASM(
glabel __osAtomicDec
/* 4b730: 27bdffe0 */ addiu $sp,$sp,-32
/* 4b734: afbf0014 */ sw $ra,0x14($sp)
/* 4b738: 0c012a60 */ jal 0x4a980
/* 4b73c: afa40020 */ sw $a0,0x20($sp)
/* 4b740: 8fae0020 */ lw $t6,0x20($sp)
/* 4b744: afa2001c */ sw $v0,0x1c($sp)
/* 4b748: 8dcf0000 */ lw $t7,0x0($t6)
/* 4b74c: 11e00006 */ beqz $t7,.NB0004b768
/* 4b750: 00000000 */ sll $zero,$zero,0x0
/* 4b754: 25f8ffff */ addiu $t8,$t7,-1
/* 4b758: add80000 */ sw $t8,0x0($t6)
/* 4b75c: 24190001 */ addiu $t9,$zero,0x1
/* 4b760: 10000002 */ beqz $zero,.NB0004b76c
/* 4b764: afb90018 */ sw $t9,0x18($sp)
.NB0004b768:
/* 4b768: afa00018 */ sw $zero,0x18($sp)
.NB0004b76c:
/* 4b76c: 0c012a7c */ jal 0x4a9f0
/* 4b770: 8fa4001c */ lw $a0,0x1c($sp)
/* 4b774: 8fbf0014 */ lw $ra,0x14($sp)
/* 4b778: 8fa20018 */ lw $v0,0x18($sp)
/* 4b77c: 27bd0020 */ addiu $sp,$sp,0x20
/* 4b780: 03e00008 */ jr $ra
/* 4b784: 00000000 */ sll $zero,$zero,0x0
);
+79
View File
@@ -0,0 +1,79 @@
#include <libultra_internal.h>
#include "data.h"
GLOBAL_ASM(
glabel osGetMemSize
/* 4f530: 27bdfff0 */ addiu $sp,$sp,-16
/* 4f534: 3c0e0040 */ lui $t6,0x40
/* 4f538: afae0008 */ sw $t6,0x8($sp)
.NB0004f53c:
/* 4f53c: 8faf0008 */ lw $t7,0x8($sp)
/* 4f540: 3c01a000 */ lui $at,0xa000
/* 4f544: 3c19a000 */ lui $t9,0xa000
/* 4f548: 01e1c021 */ addu $t8,$t7,$at
/* 4f54c: afb8000c */ sw $t8,0xc($sp)
/* 4f550: 032fc821 */ addu $t9,$t9,$t7
/* 4f554: 8f390000 */ lw $t9,0x0($t9)
/* 4f558: 3c08a010 */ lui $t0,0xa010
/* 4f55c: 010f4021 */ addu $t0,$t0,$t7
/* 4f560: afb90004 */ sw $t9,0x4($sp)
/* 4f564: 8d08fffc */ lw $t0,-0x4($t0)
/* 4f568: 3c09a000 */ lui $t1,0xa000
/* 4f56c: 012f4821 */ addu $t1,$t1,$t7
/* 4f570: afa80000 */ sw $t0,0x0($sp)
/* 4f574: 8d290000 */ lw $t1,0x0($t1)
/* 4f578: 2401ffff */ addiu $at,$zero,-1
/* 4f57c: 3c0c0010 */ lui $t4,0x10
/* 4f580: 01215026 */ xor $t2,$t1,$at
/* 4f584: 3c01a000 */ lui $at,0xa000
/* 4f588: 002f0821 */ addu $at,$at,$t7
/* 4f58c: ac2a0000 */ sw $t2,0x0($at)
/* 4f590: 8fab000c */ lw $t3,0xc($sp)
/* 4f594: 2401ffff */ addiu $at,$zero,-1
/* 4f598: 018b6021 */ addu $t4,$t4,$t3
/* 4f59c: 8d8cfffc */ lw $t4,-0x4($t4)
/* 4f5a0: 01816826 */ xor $t5,$t4,$at
/* 4f5a4: 3c010010 */ lui $at,0x10
/* 4f5a8: 002b0821 */ addu $at,$at,$t3
/* 4f5ac: ac2dfffc */ sw $t5,-0x4($at)
/* 4f5b0: 8fae000c */ lw $t6,0xc($sp)
/* 4f5b4: 8fb90004 */ lw $t9,0x4($sp)
/* 4f5b8: 2401ffff */ addiu $at,$zero,-1
/* 4f5bc: 8dd80000 */ lw $t8,0x0($t6)
/* 4f5c0: 03214026 */ xor $t0,$t9,$at
/* 4f5c4: 17080009 */ bne $t8,$t0,.NB0004f5ec
/* 4f5c8: 00000000 */ sll $zero,$zero,0x0
/* 4f5cc: 3c090010 */ lui $t1,0x10
/* 4f5d0: 8faa0000 */ lw $t2,0x0($sp)
/* 4f5d4: 012e4821 */ addu $t1,$t1,$t6
/* 4f5d8: 8d29fffc */ lw $t1,-0x4($t1)
/* 4f5dc: 2401ffff */ addiu $at,$zero,-1
/* 4f5e0: 01417826 */ xor $t7,$t2,$at
/* 4f5e4: 112f0003 */ beq $t1,$t7,.NB0004f5f4
/* 4f5e8: 00000000 */ sll $zero,$zero,0x0
.NB0004f5ec:
/* 4f5ec: 10000013 */ beqz $zero,.NB0004f63c
/* 4f5f0: 8fa20008 */ lw $v0,0x8($sp)
.NB0004f5f4:
/* 4f5f4: 8fac0004 */ lw $t4,0x4($sp)
/* 4f5f8: 8fad000c */ lw $t5,0xc($sp)
/* 4f5fc: 3c010010 */ lui $at,0x10
/* 4f600: adac0000 */ sw $t4,0x0($t5)
/* 4f604: 8fb9000c */ lw $t9,0xc($sp)
/* 4f608: 8fab0000 */ lw $t3,0x0($sp)
/* 4f60c: 00390821 */ addu $at,$at,$t9
/* 4f610: ac2bfffc */ sw $t3,-0x4($at)
/* 4f614: 8fb80008 */ lw $t8,0x8($sp)
/* 4f618: 3c010010 */ lui $at,0x10
/* 4f61c: 03014021 */ addu $t0,$t8,$at
/* 4f620: afa80008 */ sw $t0,0x8($sp)
/* 4f624: 8fae0008 */ lw $t6,0x8($sp)
/* 4f628: 3c010080 */ lui $at,0x80
/* 4f62c: 01c1082b */ sltu $at,$t6,$at
/* 4f630: 1420ffc2 */ bnez $at,.NB0004f53c
/* 4f634: 00000000 */ sll $zero,$zero,0x0
/* 4f638: 8fa20008 */ lw $v0,0x8($sp)
.NB0004f63c:
/* 4f63c: 03e00008 */ jr $ra
/* 4f640: 27bd0010 */ addiu $sp,$sp,0x10
);;
+71
View File
@@ -0,0 +1,71 @@
#include <libultra_internal.h>
#include "data.h"
GLOBAL_ASM(
glabel __osSyncPutChars
/* 4100: 27bdffc8 */ addiu $sp,$sp,-56
/* 4104: 93a30034 */ lbu $v1,0x34($sp)
/* 4108: 0004c080 */ sll $t8,$a0,0x2
/* 410c: 30aa0003 */ andi $t2,$a1,0x3
/* 4110: 3079ff03 */ andi $t9,$v1,0xff03
/* 4114: 03194025 */ or $t0,$t8,$t9
/* 4118: 310bfffc */ andi $t3,$t0,0xfffc
/* 411c: 014b6025 */ or $t4,$t2,$t3
/* 4120: afbf001c */ sw $ra,0x1c($sp)
/* 4124: afb00018 */ sw $s0,0x18($sp)
/* 4128: a3ac0034 */ sb $t4,0x34($sp)
/* 412c: 18a00009 */ blez $a1,.NB00004154
/* 4130: 00001025 */ or $v0,$zero,$zero
/* 4134: 27a30034 */ addiu $v1,$sp,0x34
/* 4138: 00c02025 */ or $a0,$a2,$zero
.NB0000413c:
/* 413c: 908d0000 */ lbu $t5,0x0($a0)
/* 4140: 24420001 */ addiu $v0,$v0,0x1
/* 4144: 24630001 */ addiu $v1,$v1,0x1
/* 4148: 24840001 */ addiu $a0,$a0,0x1
/* 414c: 1445fffb */ bne $v0,$a1,.NB0000413c
/* 4150: a06d0000 */ sb $t5,0x0($v1)
.NB00004154:
/* 4154: 3c108006 */ lui $s0,0x8006
/* 4158: 2610e6e4 */ addiu $s0,$s0,-6428
/* 415c: 0c012dcc */ jal 0x4b730
/* 4160: 02002025 */ or $a0,$s0,$zero
/* 4164: 14400005 */ bnez $v0,.NB0000417c
/* 4168: 00000000 */ sll $zero,$zero,0x0
.NB0000416c:
/* 416c: 0c012dcc */ jal 0x4b730
/* 4170: 02002025 */ or $a0,$s0,$zero
/* 4174: 1040fffd */ beqz $v0,.NB0000416c
/* 4178: 00000000 */ sll $zero,$zero,0x0
.NB0000417c:
/* 417c: 0c012a60 */ jal 0x4a980
/* 4180: 00000000 */ sll $zero,$zero,0x0
/* 4184: afa2002c */ sw $v0,0x2c($sp)
/* 4188: 27ae0034 */ addiu $t6,$sp,0x34
/* 418c: 8dcf0000 */ lw $t7,0x0($t6)
/* 4190: 3c18c000 */ lui $t8,0xc000
/* 4194: 0c012de4 */ jal 0x4b790
/* 4198: af0f0000 */ sw $t7,0x0($t8)
/* 419c: 30592000 */ andi $t9,$v0,0x2000
/* 41a0: 57200007 */ bnezl $t9,.NB000041c0
/* 41a4: 3c09c000 */ lui $t1,0xc000
.NB000041a8:
/* 41a8: 0c012de4 */ jal 0x4b790
/* 41ac: 00000000 */ sll $zero,$zero,0x0
/* 41b0: 30482000 */ andi $t0,$v0,0x2000
/* 41b4: 1100fffc */ beqz $t0,.NB000041a8
/* 41b8: 00000000 */ sll $zero,$zero,0x0
/* 41bc: 3c09c000 */ lui $t1,0xc000
.NB000041c0:
/* 41c0: ad20000c */ sw $zero,0xc($t1)
/* 41c4: 8e0a0000 */ lw $t2,0x0($s0)
/* 41c8: 8fa4002c */ lw $a0,0x2c($sp)
/* 41cc: 254b0001 */ addiu $t3,$t2,0x1
/* 41d0: 0c012a7c */ jal 0x4a9f0
/* 41d4: ae0b0000 */ sw $t3,0x0($s0)
/* 41d8: 8fbf001c */ lw $ra,0x1c($sp)
/* 41dc: 8fb00018 */ lw $s0,0x18($sp)
/* 41e0: 27bd0038 */ addiu $sp,$sp,0x38
/* 41e4: 03e00008 */ jr $ra
/* 41e8: 00000000 */ sll $zero,$zero,0x0
);