Match common_textures.inc.c, memory & actor decomp (#188)
* More actor decomp * memory.c decomp plus bss import into actor code * Match actors and segment D match * Match common_textures.inc.c * Add tool bin2c.py
This commit is contained in:
parent
49845b1fe9
commit
e4a176d8f5
220
Makefile
220
Makefile
|
|
@ -167,8 +167,8 @@ endif
|
|||
MIO0TOOL = $(TOOLS_DIR)/mio0
|
||||
N64CKSUM = $(TOOLS_DIR)/n64cksum
|
||||
N64GRAPHICS = $(TOOLS_DIR)/n64graphics
|
||||
BIN2C = $(PYTHON) $(TOOLS_DIR)/bin2c.py
|
||||
EXTRACT_DATA_FOR_MIO := $(TOOLS_DIR)/extract_data_for_mio
|
||||
REMOVE_BYTES := $(PYTHON) $(TOOLS_DIR)/remove_bytes.py
|
||||
EMULATOR = mupen64plus
|
||||
EMU_FLAGS = --noosd
|
||||
LOADER = loader64
|
||||
|
|
@ -244,6 +244,211 @@ $(BUILD_DIR)/src/startup_logo.inc.o: src/startup_logo.inc.c
|
|||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
$(PYTHON) tools/set_o32abi_bit.py $@
|
||||
|
||||
# common textures
|
||||
$(BUILD_DIR)/src/common_textures.inc.o: src/common_textures.inc.c
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_00000_tlut.rgba16.inc.c -g textures/132B50_00000_tlut.rgba16.png -f rgba16 -s u8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_00200.rgba16.inc.c -g textures/132B50_00200.rgba16.png -f rgba16 -s u8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_01EE8.rgba16.inc.c -g textures/132B50_01EE8.rgba16.png -f rgba16 -s u8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_03348.rgba16.inc.c -g textures/132B50_03348.rgba16.png -f rgba16 -s u8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_03B48.rgba16.inc.c -g textures/132B50_03B48.rgba16.png -f rgba16 -s u8
|
||||
|
||||
$(BIN2C) textures/132B50_04C68_tlut.rgba16.bin $(BUILD_DIR)/textures/132B50_04C68_tlut.rgba16
|
||||
$(BIN2C) textures/132B50_04E38_tlut.rgba16.bin $(BUILD_DIR)/textures/132B50_04E38_tlut.rgba16
|
||||
$(BIN2C) textures/132B50_04E68_tlut.rgba16.bin $(BUILD_DIR)/textures/132B50_04E68_tlut.rgba16
|
||||
$(BIN2C) textures/132B50_05068_tlut.rgba16.bin $(BUILD_DIR)/textures/132B50_05068_tlut.rgba16
|
||||
|
||||
|
||||
#$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_04C68_tlut.rgba16.inc.c -g textures/132B50_04C68_tlut.rgba16.png -f rgba16 -s u8
|
||||
#$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_04E68_tlut.rgba16.inc.c -g textures/132B50_04E68_tlut.rgba16.png -f rgba16 -s u8
|
||||
#$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_05068_tlut.rgba16.inc.c -g textures/132B50_05068_tlut.rgba16.png -f rgba16 -s u8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_06A58.i4.inc.c -g textures/132B50_06A58.i4.png -f i4 -s u8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_06AD8.ia8.inc.c -g textures/132B50_06AD8.ia8.png -f ia8 -s u8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_06EF8.rgba16.ci4.inc.c -g textures/132B50_06EF8.rgba16.ci4.png -f ci4 -s u8 -c rgba16 -w 128 -h 32 -p textures/132B50_06ED8_tlut_gen.rgba16.bin
|
||||
$(BIN2C) textures/132B50_06ED8_tlut.rgba16.bin $(BUILD_DIR)/textures/132B50_06ED8_tlut.rgba16
|
||||
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_08150.ia8.inc.c -g textures/132B50_08150.ia8.png -f ia8 -s u8 -w 100 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_08470.ia8.inc.c -g textures/132B50_08470.ia8.png -f ia8 -s u8 -w 100 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_08790.ia8.inc.c -g textures/132B50_08790.ia8.png -f ia8 -s u8 -w 100 -h 8
|
||||
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_09958.i4.inc.c -g textures/132B50_09958.i4.png -s u8 -w 64 -h 96 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0A558.i4.inc.c -g textures/132B50_0A558.i4.png -s u8 -w 64 -h 16 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0A958.rgba16.inc.c -g textures/132B50_0A958.rgba16.png -s u8 -w 32 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0AB58.rgba16.inc.c -g textures/132B50_0AB58.rgba16.png -s u8 -w 32 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0AD58.rgba16.inc.c -g textures/132B50_0AD58.rgba16.png -s u8 -w 32 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0B158.rgba16.inc.c -g textures/132B50_0B158.rgba16.png -s u8 -w 32 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0B558.rgba16.inc.c -g textures/132B50_0B558.rgba16.png -s u8 -w 32 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0B958.rgba16.inc.c -g textures/132B50_0B958.rgba16.png -s u8 -w 32 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0BD58.rgba16.inc.c -g textures/132B50_0BD58.rgba16.png -s u8 -w 32 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0C158.rgba16.inc.c -g textures/132B50_0C158.rgba16.png -s u8 -w 32 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0C558.rgba16.inc.c -g textures/132B50_0C558.rgba16.png -s u8 -w 104 -h 16
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0D258.i4.inc.c -g textures/132B50_0D258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0E258.i4.inc.c -g textures/132B50_0E258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_0F258.i4.inc.c -g textures/132B50_0F258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_10258.i4.inc.c -g textures/132B50_10258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_11258.i4.inc.c -g textures/132B50_11258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_12258.i4.inc.c -g textures/132B50_12258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_13258.i4.inc.c -g textures/132B50_13258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_14258.i4.inc.c -g textures/132B50_14258.i4.png -s u8 -w 128 -h 64 -f i4
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_15258.i4.inc.c -g textures/132B50_15258.i4.png -s u8 -w 64 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_15A58.i4.inc.c -g textures/132B50_15A58.i4.png -s u8 -w 64 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_16258.i4.inc.c -g textures/132B50_16258.i4.png -s u8 -w 64 -h 64 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_16A58.i4.inc.c -g textures/132B50_16A58.i4.png -s u8 -w 64 -h 64 -f i4
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_17258_tlut.rgba16.inc.c -g textures/132B50_17258_tlut.rgba16.png -s u8 -w 38 -h 6
|
||||
|
||||
$(BIN2C) textures/132B50_17458_combined_data.bin $(BUILD_DIR)/textures/132B50_17458_combined_data
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_17458.rgba16.ci8.inc.c -g textures/132B50_17458.rgba16.ci8.png -s u8 -w 64 -h 32 -c rgba16 -p textures/132B50_17258_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_17C58.rgba16.ci8.inc.c -g textures/132B50_17C58.rgba16.ci8.png -s u8 -w 64 -h 32 -c rgba16 -p textures/132B50_17258_tlut.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_18458.rgba16.ci8.inc.c -g textures/132B50_18458.rgba16.ci8.png -s u8 -w 64 -h 32 -c rgba16 -p textures/132B50_17258_tlut.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_18C58.rgba16.ci8.inc.c -g textures/132B50_18C58.rgba16.ci8.png -s u8 -w 64 -h 32 -c rgba16 -p textures/132B50_17258_tlut.bin
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19458_tlut.rgba16.inc.c -g textures/132B50_19458_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19658.rgba16.ci8.inc.c -g textures/132B50_19658.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19758.rgba16.ci8.inc.c -g textures/132B50_19758.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19858.rgba16.ci8.inc.c -g textures/132B50_19858.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19958.rgba16.ci8.inc.c -g textures/132B50_19958.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19A58.rgba16.ci8.inc.c -g textures/132B50_19A58.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19B58.rgba16.ci8.inc.c -g textures/132B50_19B58.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19C58.rgba16.ci8.inc.c -g textures/132B50_19C58.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_19D58.rgba16.ci8.inc.c -g textures/132B50_19D58.rgba16.ci8.png -s u8 -w 16 -h 16 -c rgba16 -p textures/132B50_19458_tlut.rgba16.png
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A058.rgba16.ci8.inc.c -g textures/132B50_1A058.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A098.rgba16.ci8.inc.c -g textures/132B50_1A098.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A0D8.rgba16.ci8.inc.c -g textures/132B50_1A0D8.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A118.rgba16.ci8.inc.c -g textures/132B50_1A118.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A158.rgba16.ci8.inc.c -g textures/132B50_1A158.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A198.rgba16.ci8.inc.c -g textures/132B50_1A198.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A1D8.rgba16.ci8.inc.c -g textures/132B50_1A1D8.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A218.rgba16.ci8.inc.c -g textures/132B50_1A218.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A258.rgba16.ci8.inc.c -g textures/132B50_1A258.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A298.rgba16.ci8.inc.c -g textures/132B50_1A298.rgba16.ci8.png -s u8 -w 8 -h 8 -c rgba16 -p textures/132B50_19E58_tlut.rgba16.png
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A2D8.ia4.inc.c -g textures/132B50_1A2D8.ia4.png -s u8 -f ia4
|
||||
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A4D8_tlut.rgba16.inc.c -g textures/132B50_1A4D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A6D8_tlut.rgba16.inc.c -g textures/132B50_1A6D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1A8D8_tlut.rgba16.inc.c -g textures/132B50_1A8D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1AAD8_tlut.rgba16.inc.c -g textures/132B50_1AAD8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1ACD8_tlut.rgba16.inc.c -g textures/132B50_1ACD8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1AED8_tlut.rgba16.inc.c -g textures/132B50_1AED8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1B0D8_tlut.rgba16.inc.c -g textures/132B50_1B0D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1B2D8_tlut.rgba16.inc.c -g textures/132B50_1B2D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1B4D8_tlut.rgba16.inc.c -g textures/132B50_1B4D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1B6D8.rgba16.ci8.inc.c -g textures/132B50_1B6D8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1A4D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1BAD8.rgba16.ci8.inc.c -g textures/132B50_1BAD8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1A6D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1BED8.rgba16.ci8.inc.c -g textures/132B50_1BED8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1A8D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1C2D8.rgba16.ci8.inc.c -g textures/132B50_1C2D8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1AAD8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1C6D8.rgba16.ci8.inc.c -g textures/132B50_1C6D8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1ACD8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1CAD8.rgba16.ci8.inc.c -g textures/132B50_1CAD8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1AED8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1CED8.rgba16.ci8.inc.c -g textures/132B50_1CED8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1B0D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1D2D8.rgba16.ci8.inc.c -g textures/132B50_1D2D8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1B2D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1D6D8.rgba16.ci8.inc.c -g textures/132B50_1D6D8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1B4D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1DAD8.rgba16.ci8.inc.c -g textures/132B50_1DAD8.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_1B4D8_tlut_gen.rgba16.bin
|
||||
$(BIN2C) textures/132B50_1DAD8.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_1DAD8.rgba16.ci8
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1DED8_tlut.rgba16.inc.c -g textures/132B50_1DED8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1E0D8_tlut.rgba16.inc.c -g textures/132B50_1E0D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1E2D8_tlut.rgba16.inc.c -g textures/132B50_1E2D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1E4D8_tlut.rgba16.inc.c -g textures/132B50_1E4D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1E6D8_tlut.rgba16.inc.c -g textures/132B50_1E6D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1E8D8_tlut.rgba16.inc.c -g textures/132B50_1E8D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1EAD8_tlut.rgba16.inc.c -g textures/132B50_1EAD8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1ECD8_tlut.rgba16.inc.c -g textures/132B50_1ECD8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1EED8_tlut.rgba16.inc.c -g textures/132B50_1EED8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1F0D8_tlut.rgba16.inc.c -g textures/132B50_1F0D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1F2D8_tlut.rgba16.inc.c -g textures/132B50_1F2D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1F4D8_tlut.rgba16.inc.c -g textures/132B50_1F4D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1F6D8_tlut.rgba16.inc.c -g textures/132B50_1F6D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1F8D8_tlut.rgba16.inc.c -g textures/132B50_1F8D8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1FAD8_tlut.rgba16.inc.c -g textures/132B50_1FAD8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1FCD8_tlut.rgba16.inc.c -g textures/132B50_1FCD8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_1FED8.rgba16.ci8.inc.c -g textures/132B50_1FED8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1DED8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_203D8.rgba16.ci8.inc.c -g textures/132B50_203D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1E0D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_208D8.rgba16.ci8.inc.c -g textures/132B50_208D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1E2D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_20DD8.rgba16.ci8.inc.c -g textures/132B50_20DD8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1E4D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_212D8.rgba16.ci8.inc.c -g textures/132B50_212D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1E6D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_217D8.rgba16.ci8.inc.c -g textures/132B50_217D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1E8D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_21CD8.rgba16.ci8.inc.c -g textures/132B50_21CD8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1EAD8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_221D8.rgba16.ci8.inc.c -g textures/132B50_221D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1ECD8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_226D8.rgba16.ci8.inc.c -g textures/132B50_226D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1EED8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_22BD8.rgba16.ci8.inc.c -g textures/132B50_22BD8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1F0D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_230D8.rgba16.ci8.inc.c -g textures/132B50_230D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1F2D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_235D8.rgba16.ci8.inc.c -g textures/132B50_235D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1F4D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_23AD8.rgba16.ci8.inc.c -g textures/132B50_23AD8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1F6D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_23FD8.rgba16.ci8.inc.c -g textures/132B50_23FD8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1F8D8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_244D8.rgba16.ci8.inc.c -g textures/132B50_244D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1FAD8_tlut_gen.rgba16.bin
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_249D8.rgba16.ci8.inc.c -g textures/132B50_249D8.rgba16.ci8.png -s u8 -w 40 -h 32 -f ci8 -c rgba16 -p textures/132B50_1FCD8_tlut_gen.rgba16.bin
|
||||
|
||||
$(BIN2C) textures/132B50_24ED8_tlut.rgba16.bin $(BUILD_DIR)/textures/132B50_24ED8_tlut.rgba16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_25ED8_tlut.rgba16.inc.c -g textures/132B50_25ED8_tlut.rgba16.png -s u8 -w 16 -h 16
|
||||
|
||||
$(BIN2C) textures/132B50_260D8.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_260D8.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_26558.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_26558.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_269D8.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_269D8.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_26E58.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_26E58.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_272D8.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_272D8.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_27758.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_27758.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_27BD8.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_27BD8.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_28058.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_28058.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_284D8.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_284D8.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_28958.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_28958.rgba16.ci8
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_28DD8.rgba16.inc.c -g textures/132B50_28DD8.rgba16.png -s u8 -w 32 -h 16
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_291D8.rgba16.inc.c -g textures/132B50_291D8.rgba16.png -s u8 -w 16 -h 16
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_293D8.i4.inc.c -g textures/132B50_293D8.i4.png -s u8 -w 16 -h 16 -f i4
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_29458.i8.inc.c -g textures/132B50_29458.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_29858.rgba16.ci8.inc.c -g textures/132B50_29858.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/132B50_2A858_pal.rgba16.bin
|
||||
$(BIN2C) textures/132B50_29C58.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_29C58.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_2A058.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_2A058.rgba16.ci8
|
||||
$(BIN2C) textures/132B50_2A458.rgba16.ci8.bin $(BUILD_DIR)/textures/132B50_2A458.rgba16.ci8
|
||||
|
||||
|
||||
#$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_29C58.rgba16.ci8.inc.c -g textures/132B50_29C58.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/a.rgba16.png
|
||||
#$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2A058.rgba16.ci8.inc.c -g textures/132B50_2A058.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/b.rgba16.bin
|
||||
#$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2A458.rgba16.ci8.inc.c -g textures/132B50_2A458.rgba16.ci8.png -s u8 -w 32 -h 32 -f ci8 -c rgba16 -p textures/c.rgba16.bin
|
||||
|
||||
$(BIN2C) textures/132B50_2A858_tlut.rgba16.bin $(BUILD_DIR)/textures/132B50_2A858_tlut.rgba16
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2AA58.rgba16.inc.c -g textures/132B50_2AA58.rgba16.png -s u8 -w 16 -h 16
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2AC58.i8.inc.c -g textures/132B50_2AC58.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2B058.i8.inc.c -g textures/132B50_2B058.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2B458.i8.inc.c -g textures/132B50_2B458.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2B858.i8.inc.c -g textures/132B50_2B858.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2BC58.i8.inc.c -g textures/132B50_2BC58.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2C058.i8.inc.c -g textures/132B50_2C058.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2C458.i8.inc.c -g textures/132B50_2C458.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2C858.i8.inc.c -g textures/132B50_2C858.i8.png -s u8 -w 32 -h 32 -f i8
|
||||
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CC58.rgba16.inc.c -g textures/132B50_2CC58.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CCD8.rgba16.inc.c -g textures/132B50_2CCD8.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CD58.rgba16.inc.c -g textures/132B50_2CD58.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CDD8.rgba16.inc.c -g textures/132B50_2CDD8.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CE58.rgba16.inc.c -g textures/132B50_2CE58.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CED8.rgba16.inc.c -g textures/132B50_2CED8.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CF58.rgba16.inc.c -g textures/132B50_2CF58.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2CFD8.rgba16.inc.c -g textures/132B50_2CFD8.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2D058.rgba16.inc.c -g textures/132B50_2D058.rgba16.png -s u8 -w 8 -h 8
|
||||
$(N64GRAPHICS) -i $(BUILD_DIR)/textures/132B50_2D0D8.rgba16.inc.c -g textures/132B50_2D0D8.rgba16.png -s u8 -w 8 -h 8
|
||||
|
||||
|
||||
@$(CC_CHECK) -MMD -MP -MT $@ -MF $(BUILD_DIR)/$*.d $<
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
$(PYTHON) tools/set_o32abi_bit.py $@
|
||||
|
||||
$(BUILD_DIR)/%.o: %.c
|
||||
@$(CC_CHECK) -MMD -MP -MT $@ -MF $(BUILD_DIR)/$*.d $<
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
|
@ -450,7 +655,7 @@ $(BUILD_DIR)/src/trophy_model.inc.mio0.o: $(BUILD_DIR)/src/trophy_model.inc.o
|
|||
printf ".include \"macros.inc\"\n\n.data\n\n.balign 4\n\nglabel trophy_model\n\n.incbin \"build/us/src/trophy_model.inc.mio0\"\n\n.balign 16\nglabel data_821D10_end\n" > build/us/src/trophy_model.inc.mio0.s
|
||||
$(AS) $(ASFLAGS) -o $(BUILD_DIR)/src/trophy_model.inc.mio0.o $(BUILD_DIR)/src/trophy_model.inc.mio0.s
|
||||
|
||||
# startup_logo.c
|
||||
# startup_logo.inc.c
|
||||
|
||||
$(BUILD_DIR)/src/startup_logo.inc.mio0.o: src/startup_logo.inc.c
|
||||
$(LD) -t -e 0 -Ttext=06000000 -Map $(BUILD_DIR)/src/startup_logo.inc.elf.map -o $(BUILD_DIR)/src/startup_logo.inc.elf $(BUILD_DIR)/src/startup_logo.inc.o --no-check-sections
|
||||
|
|
@ -459,7 +664,16 @@ $(BUILD_DIR)/src/startup_logo.inc.mio0.o: src/startup_logo.inc.c
|
|||
printf ".include \"macros.inc\"\n\n.data\n\n\n\n.balign 4\n\n\nglabel startup_logo\n\n.incbin \"build/us/src/startup_logo.inc.mio0\"\n\n.balign 16\n\nglabel data_825800_end\n" > build/us/src/startup_logo.inc.mio0.s
|
||||
$(AS) $(ASFLAGS) -o $(BUILD_DIR)/src/startup_logo.inc.mio0.o $(BUILD_DIR)/src/startup_logo.inc.mio0.s
|
||||
|
||||
$(BUILD_DIR)/$(TARGET).elf: $(O_FILES) $(COURSE_MIO0_OBJ_FILES) $(BUILD_DIR)/$(LD_SCRIPT) $(BUILD_DIR)/src/startup_logo.inc.mio0.o $(BUILD_DIR)/src/trophy_model.inc.mio0.o $(LD_COURSE_VERTEX_DEPENDENCIES) undefined_syms.txt
|
||||
# common_textures.inc.c
|
||||
$(BUILD_DIR)/src/common_textures.inc.mio0.o: $(BUILD_DIR)/src/common_textures.inc.o
|
||||
$(LD) -t -e 0 -Ttext=0D000000 --unresolved-symbols=ignore-all -Map $(BUILD_DIR)/src/common_textures.inc.elf.map -o $(BUILD_DIR)/src/common_textures.inc.elf $(BUILD_DIR)/src/common_textures.inc.o --no-check-sections
|
||||
$(V)$(EXTRACT_DATA_FOR_MIO) $(BUILD_DIR)/src/common_textures.inc.elf $(BUILD_DIR)/src/common_textures.inc.bin
|
||||
$(MIO0TOOL) -c $(BUILD_DIR)/src/common_textures.inc.bin $(BUILD_DIR)/src/common_textures.inc.mio0
|
||||
printf ".include \"macros.inc\"\n\n.section .data\n\n.balign 4\n\n.incbin \"src/common_textures.inc.mio0\"\n\n" > build/us/src/common_textures.inc.mio0.s
|
||||
$(AS) $(ASFLAGS) -o $(BUILD_DIR)/src/common_textures.inc.mio0.o $(BUILD_DIR)/src/common_textures.inc.mio0.s
|
||||
|
||||
|
||||
$(BUILD_DIR)/$(TARGET).elf: $(O_FILES) $(COURSE_MIO0_OBJ_FILES) $(BUILD_DIR)/$(LD_SCRIPT) $(BUILD_DIR)/src/startup_logo.inc.mio0.o $(BUILD_DIR)/src/trophy_model.inc.mio0.o $(BUILD_DIR)/src/common_textures.inc.mio0.o $(LD_COURSE_VERTEX_DEPENDENCIES) undefined_syms.txt
|
||||
$(LD) $(LDFLAGS) -o $@
|
||||
|
||||
$(BUILD_DIR)/$(TARGET).z64: $(BUILD_DIR)/$(TARGET).elf
|
||||
|
|
|
|||
|
|
@ -39,7 +39,6 @@ OTHER_DATA_MIO0_NAMES := \
|
|||
OTHER_DATA_MIO0_FILES := $(addprefix $(BUILD_DIR)/bin/,$(addsuffix .mio0,$(OTHER_DATA_MIO0_NAMES)))
|
||||
|
||||
TEXTURE_DATA_MIO0_NAMES := \
|
||||
common_textures \
|
||||
texture_68EB50 \
|
||||
texture_68EDA0 \
|
||||
texture_68EFF0 \
|
||||
|
|
@ -164,4 +163,4 @@ $(MUSIC_DIR)/seq_21.m64
|
|||
# SEGMENTED ADDRESSES
|
||||
|
||||
$(BUILD_DIR)/src/startup_logo.inc.elf: SEGMENT_ADDRESS := 0x06000000
|
||||
$(BUILD_DIR)/src/trophy_model.inc.elf: SEGMENT_ADDRESS := 0x0B000000
|
||||
$(BUILD_DIR)/src/trophy_model.inc.elf: SEGMENT_ADDRESS := 0x0B000000
|
||||
|
|
|
|||
|
|
@ -1,21 +0,0 @@
|
|||
.include "macros.inc"
|
||||
|
||||
.section .bss
|
||||
|
||||
glabel D_802BA050
|
||||
.skip 4
|
||||
|
||||
glabel D_802BA054
|
||||
.skip 4
|
||||
|
||||
glabel D_802BA058
|
||||
.skip 4
|
||||
|
||||
glabel D_802BA05C
|
||||
.skip 4
|
||||
|
||||
glabel D_802BA060
|
||||
.skip 512
|
||||
|
||||
glabel D_802BA260
|
||||
.skip 16
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
glabel func_80297230
|
||||
/* 100840 80297230 3C0E800E */ lui $t6, %hi(camera1) # $t6, 0x800e
|
||||
/* 100844 80297234 8DCEDB40 */ lw $t6, %lo(camera1)($t6)
|
||||
/* 100848 80297238 240100B8 */ li $at, 184
|
||||
/* 10084C 8029723C 008E1023 */ subu $v0, $a0, $t6
|
||||
/* 100850 80297240 0041001A */ div $zero, $v0, $at
|
||||
/* 100854 80297244 00007812 */ mflo $t7
|
||||
/* 100858 80297248 24010001 */ li $at, 1
|
||||
/* 10085C 8029724C 51E0000A */ beql $t7, $zero, .L80297278
|
||||
/* 100860 80297250 84B80002 */ lh $t8, 2($a1)
|
||||
/* 100864 80297254 11E1000B */ beq $t7, $at, .L80297284
|
||||
/* 100868 80297258 24010002 */ li $at, 2
|
||||
/* 10086C 8029725C 11E1000D */ beq $t7, $at, .L80297294
|
||||
/* 100870 80297260 24010003 */ li $at, 3
|
||||
/* 100874 80297264 51E10010 */ beql $t7, $at, .L802972A8
|
||||
/* 100878 80297268 84AC0002 */ lh $t4, 2($a1)
|
||||
/* 10087C 8029726C 03E00008 */ jr $ra
|
||||
/* 100880 80297270 00000000 */ nop
|
||||
/* 100884 80297274 84B80002 */ lh $t8, 2($a1)
|
||||
.L80297278:
|
||||
/* 100888 80297278 3319FFFE */ andi $t9, $t8, 0xfffe
|
||||
/* 10088C 8029727C 03E00008 */ jr $ra
|
||||
/* 100890 80297280 A4B90002 */ sh $t9, 2($a1)
|
||||
.L80297284:
|
||||
/* 100894 80297284 84A80002 */ lh $t0, 2($a1)
|
||||
/* 100898 80297288 3109FFFD */ andi $t1, $t0, 0xfffd
|
||||
/* 10089C 8029728C 03E00008 */ jr $ra
|
||||
/* 1008A0 80297290 A4A90002 */ sh $t1, 2($a1)
|
||||
.L80297294:
|
||||
/* 1008A4 80297294 84AA0002 */ lh $t2, 2($a1)
|
||||
/* 1008A8 80297298 314BFFFB */ andi $t3, $t2, 0xfffb
|
||||
/* 1008AC 8029729C 03E00008 */ jr $ra
|
||||
/* 1008B0 802972A0 A4AB0002 */ sh $t3, 2($a1)
|
||||
/* 1008B4 802972A4 84AC0002 */ lh $t4, 2($a1)
|
||||
.L802972A8:
|
||||
/* 1008B8 802972A8 318DFFF7 */ andi $t5, $t4, 0xfff7
|
||||
/* 1008BC 802972AC A4AD0002 */ sh $t5, 2($a1)
|
||||
/* 1008C0 802972B0 03E00008 */ jr $ra
|
||||
/* 1008C4 802972B4 00000000 */ nop
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
glabel func_802972B8
|
||||
/* 1008C8 802972B8 3C0E800E */ lui $t6, %hi(camera1) # $t6, 0x800e
|
||||
/* 1008CC 802972BC 8DCEDB40 */ lw $t6, %lo(camera1)($t6)
|
||||
/* 1008D0 802972C0 240100B8 */ li $at, 184
|
||||
/* 1008D4 802972C4 008E1023 */ subu $v0, $a0, $t6
|
||||
/* 1008D8 802972C8 0041001A */ div $zero, $v0, $at
|
||||
/* 1008DC 802972CC 00007812 */ mflo $t7
|
||||
/* 1008E0 802972D0 24010001 */ li $at, 1
|
||||
/* 1008E4 802972D4 51E0000A */ beql $t7, $zero, .L80297300
|
||||
/* 1008E8 802972D8 84B80002 */ lh $t8, 2($a1)
|
||||
/* 1008EC 802972DC 11E1000B */ beq $t7, $at, .L8029730C
|
||||
/* 1008F0 802972E0 24010002 */ li $at, 2
|
||||
/* 1008F4 802972E4 11E1000D */ beq $t7, $at, .L8029731C
|
||||
/* 1008F8 802972E8 24010003 */ li $at, 3
|
||||
/* 1008FC 802972EC 51E10010 */ beql $t7, $at, .L80297330
|
||||
/* 100900 802972F0 84AC0002 */ lh $t4, 2($a1)
|
||||
/* 100904 802972F4 03E00008 */ jr $ra
|
||||
/* 100908 802972F8 00000000 */ nop
|
||||
|
||||
/* 10090C 802972FC 84B80002 */ lh $t8, 2($a1)
|
||||
.L80297300:
|
||||
/* 100910 80297300 37190001 */ ori $t9, $t8, 1
|
||||
/* 100914 80297304 03E00008 */ jr $ra
|
||||
/* 100918 80297308 A4B90002 */ sh $t9, 2($a1)
|
||||
|
||||
.L8029730C:
|
||||
/* 10091C 8029730C 84A80002 */ lh $t0, 2($a1)
|
||||
/* 100920 80297310 35090002 */ ori $t1, $t0, 2
|
||||
/* 100924 80297314 03E00008 */ jr $ra
|
||||
/* 100928 80297318 A4A90002 */ sh $t1, 2($a1)
|
||||
|
||||
.L8029731C:
|
||||
/* 10092C 8029731C 84AA0002 */ lh $t2, 2($a1)
|
||||
/* 100930 80297320 354B0004 */ ori $t3, $t2, 4
|
||||
/* 100934 80297324 03E00008 */ jr $ra
|
||||
/* 100938 80297328 A4AB0002 */ sh $t3, 2($a1)
|
||||
|
||||
/* 10093C 8029732C 84AC0002 */ lh $t4, 2($a1)
|
||||
.L80297330:
|
||||
/* 100940 80297330 358D0008 */ ori $t5, $t4, 8
|
||||
/* 100944 80297334 A4AD0002 */ sh $t5, 2($a1)
|
||||
/* 100948 80297338 03E00008 */ jr $ra
|
||||
/* 10094C 8029733C 00000000 */ nop
|
||||
|
|
@ -1,244 +0,0 @@
|
|||
glabel func_80297340
|
||||
/* 100950 80297340 3C058016 */ lui $a1, %hi(D_8015F8D0) # $a1, 0x8016
|
||||
/* 100954 80297344 24A5F8D0 */ addiu $a1, %lo(D_8015F8D0) # addiu $a1, $a1, -0x730
|
||||
/* 100958 80297348 C4A40008 */ lwc1 $f4, 8($a1)
|
||||
/* 10095C 8029734C 3C18800E */ lui $t8, %hi(D_800DC50C) # $t8, 0x800e
|
||||
/* 100960 80297350 8F18C50C */ lw $t8, %lo(D_800DC50C)($t8)
|
||||
/* 100964 80297354 4600218D */ trunc.w.s $f6, $f4
|
||||
/* 100968 80297358 27BDFF88 */ addiu $sp, $sp, -0x78
|
||||
/* 10096C 8029735C 24010009 */ li $at, 9
|
||||
/* 100970 80297360 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 100974 80297364 440F3000 */ mfc1 $t7, $f6
|
||||
/* 100978 80297368 AFA40078 */ sw $a0, 0x78($sp)
|
||||
/* 10097C 8029736C 13010069 */ beq $t8, $at, .L80297514
|
||||
/* 100980 80297370 A7AF0036 */ sh $t7, 0x36($sp)
|
||||
/* 100984 80297374 0C0AD548 */ jal mtxf_translate
|
||||
/* 100988 80297378 27A40038 */ addiu $a0, $sp, 0x38
|
||||
/* 10098C 8029737C 27A40038 */ addiu $a0, $sp, 0x38
|
||||
/* 100990 80297380 0C0AD3FE */ jal func_802B4FF8
|
||||
/* 100994 80297384 00002825 */ move $a1, $zero
|
||||
/* 100998 80297388 10400062 */ beqz $v0, .L80297514
|
||||
/* 10099C 8029738C 87B90036 */ lh $t9, 0x36($sp)
|
||||
/* 1009A0 80297390 44994000 */ mtc1 $t9, $f8
|
||||
/* 1009A4 80297394 8FA80078 */ lw $t0, 0x78($sp)
|
||||
/* 1009A8 80297398 3C09800E */ lui $t1, %hi(D_800DC5BC) # $t1, 0x800e
|
||||
/* 1009AC 8029739C 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 1009B0 802973A0 C5100008 */ lwc1 $f16, 8($t0)
|
||||
/* 1009B4 802973A4 3C08800E */ lui $t0, %hi(D_800DC5BC) # $t0, 0x800e
|
||||
/* 1009B8 802973A8 4610503C */ c.lt.s $f10, $f16
|
||||
/* 1009BC 802973AC 00000000 */ nop
|
||||
/* 1009C0 802973B0 4500002D */ bc1f .L80297468
|
||||
/* 1009C4 802973B4 00000000 */ nop
|
||||
/* 1009C8 802973B8 9529C5BC */ lhu $t1, %lo(D_800DC5BC)($t1)
|
||||
/* 1009CC 802973BC 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 1009D0 802973C0 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 1009D4 802973C4 11200020 */ beqz $t1, .L80297448
|
||||
/* 1009D8 802973C8 3C0A0D00 */ lui $t2, 0xd00
|
||||
/* 1009DC 802973CC 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 1009E0 802973D0 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 1009E4 802973D4 8C620000 */ lw $v0, ($v1)
|
||||
/* 1009E8 802973D8 3C0BF800 */ lui $t3, 0xf800
|
||||
/* 1009EC 802973DC 3C0F8016 */ lui $t7, %hi(D_801625F4) # $t7, 0x8016
|
||||
/* 1009F0 802973E0 244A0008 */ addiu $t2, $v0, 8
|
||||
/* 1009F4 802973E4 AC6A0000 */ sw $t2, ($v1)
|
||||
/* 1009F8 802973E8 AC4B0000 */ sw $t3, ($v0)
|
||||
/* 1009FC 802973EC 8DEF25F4 */ lw $t7, %lo(D_801625F4)($t7)
|
||||
/* 100A00 802973F0 3C0C8016 */ lui $t4, %hi(D_801625EC) # $t4, 0x8016
|
||||
/* 100A04 802973F4 3C098016 */ lui $t1, %hi(D_801625F0) # $t1, 0x8016
|
||||
/* 100A08 802973F8 8D2925F0 */ lw $t1, %lo(D_801625F0)($t1)
|
||||
/* 100A0C 802973FC 8D8D25EC */ lw $t5, %lo(D_801625EC)($t4)
|
||||
/* 100A10 80297400 31F800FF */ andi $t8, $t7, 0xff
|
||||
/* 100A14 80297404 0018CC00 */ sll $t9, $t8, 0x10
|
||||
/* 100A18 80297408 312A00FF */ andi $t2, $t1, 0xff
|
||||
/* 100A1C 8029740C 000D7600 */ sll $t6, $t5, 0x18
|
||||
/* 100A20 80297410 01D94025 */ or $t0, $t6, $t9
|
||||
/* 100A24 80297414 000A5A00 */ sll $t3, $t2, 8
|
||||
/* 100A28 80297418 010B6025 */ or $t4, $t0, $t3
|
||||
/* 100A2C 8029741C 358D00FF */ ori $t5, $t4, 0xff
|
||||
/* 100A30 80297420 AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 100A34 80297424 8C620000 */ lw $v0, ($v1)
|
||||
/* 100A38 80297428 3C0E0D00 */ lui $t6, %hi(D_0D001C20) # $t6, 0xd00
|
||||
/* 100A3C 8029742C 25CE1C20 */ addiu $t6, %lo(D_0D001C20) # addiu $t6, $t6, 0x1c20
|
||||
/* 100A40 80297430 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 100A44 80297434 AC6F0000 */ sw $t7, ($v1)
|
||||
/* 100A48 80297438 3C180600 */ lui $t8, 0x600
|
||||
/* 100A4C 8029743C AC580000 */ sw $t8, ($v0)
|
||||
/* 100A50 80297440 10000034 */ b .L80297514
|
||||
/* 100A54 80297444 AC4E0004 */ sw $t6, 4($v0)
|
||||
.L80297448:
|
||||
/* 100A58 80297448 8C620000 */ lw $v0, ($v1)
|
||||
/* 100A5C 8029744C 3C090600 */ lui $t1, 0x600
|
||||
/* 100A60 80297450 254A1B90 */ addiu $t2, $t2, 0x1b90
|
||||
/* 100A64 80297454 24590008 */ addiu $t9, $v0, 8
|
||||
/* 100A68 80297458 AC790000 */ sw $t9, ($v1)
|
||||
/* 100A6C 8029745C AC4A0004 */ sw $t2, 4($v0)
|
||||
/* 100A70 80297460 1000002C */ b .L80297514
|
||||
/* 100A74 80297464 AC490000 */ sw $t1, ($v0)
|
||||
.L80297468:
|
||||
/* 100A78 80297468 9508C5BC */ lhu $t0, %lo(D_800DC5BC)($t0)
|
||||
/* 100A7C 8029746C 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 100A80 80297470 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 100A84 80297474 11000020 */ beqz $t0, .L802974F8
|
||||
/* 100A88 80297478 3C0B0D00 */ lui $t3, 0xd00
|
||||
/* 100A8C 8029747C 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 100A90 80297480 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 100A94 80297484 8C620000 */ lw $v0, ($v1)
|
||||
/* 100A98 80297488 3C0CF800 */ lui $t4, 0xf800
|
||||
/* 100A9C 8029748C 3C0E8016 */ lui $t6, %hi(D_801625F4) # $t6, 0x8016
|
||||
/* 100AA0 80297490 244B0008 */ addiu $t3, $v0, 8
|
||||
/* 100AA4 80297494 AC6B0000 */ sw $t3, ($v1)
|
||||
/* 100AA8 80297498 AC4C0000 */ sw $t4, ($v0)
|
||||
/* 100AAC 8029749C 8DCE25F4 */ lw $t6, %lo(D_801625F4)($t6)
|
||||
/* 100AB0 802974A0 3C0D8016 */ lui $t5, %hi(D_801625EC) # $t5, 0x8016
|
||||
/* 100AB4 802974A4 3C088016 */ lui $t0, %hi(D_801625F0) # $t0, 0x8016
|
||||
/* 100AB8 802974A8 8D0825F0 */ lw $t0, %lo(D_801625F0)($t0)
|
||||
/* 100ABC 802974AC 8DAF25EC */ lw $t7, %lo(D_801625EC)($t5)
|
||||
/* 100AC0 802974B0 31D900FF */ andi $t9, $t6, 0xff
|
||||
/* 100AC4 802974B4 00194C00 */ sll $t1, $t9, 0x10
|
||||
/* 100AC8 802974B8 310B00FF */ andi $t3, $t0, 0xff
|
||||
/* 100ACC 802974BC 000FC600 */ sll $t8, $t7, 0x18
|
||||
/* 100AD0 802974C0 03095025 */ or $t2, $t8, $t1
|
||||
/* 100AD4 802974C4 000B6200 */ sll $t4, $t3, 8
|
||||
/* 100AD8 802974C8 014C6825 */ or $t5, $t2, $t4
|
||||
/* 100ADC 802974CC 35AF00FF */ ori $t7, $t5, 0xff
|
||||
/* 100AE0 802974D0 AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 100AE4 802974D4 8C620000 */ lw $v0, ($v1)
|
||||
/* 100AE8 802974D8 3C180D00 */ lui $t8, %hi(D_0D001C88) # $t8, 0xd00
|
||||
/* 100AEC 802974DC 27181C88 */ addiu $t8, %lo(D_0D001C88) # addiu $t8, $t8, 0x1c88
|
||||
/* 100AF0 802974E0 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 100AF4 802974E4 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 100AF8 802974E8 3C190600 */ lui $t9, 0x600
|
||||
/* 100AFC 802974EC AC590000 */ sw $t9, ($v0)
|
||||
/* 100B00 802974F0 10000008 */ b .L80297514
|
||||
/* 100B04 802974F4 AC580004 */ sw $t8, 4($v0)
|
||||
.L802974F8:
|
||||
/* 100B08 802974F8 8C620000 */ lw $v0, ($v1)
|
||||
/* 100B0C 802974FC 3C080600 */ lui $t0, 0x600
|
||||
/* 100B10 80297500 256B1BD8 */ addiu $t3, $t3, 0x1bd8
|
||||
/* 100B14 80297504 24490008 */ addiu $t1, $v0, 8
|
||||
/* 100B18 80297508 AC690000 */ sw $t1, ($v1)
|
||||
/* 100B1C 8029750C AC4B0004 */ sw $t3, 4($v0)
|
||||
/* 100B20 80297510 AC480000 */ sw $t0, ($v0)
|
||||
.L80297514:
|
||||
/* 100B24 80297514 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 100B28 80297518 27BD0078 */ addiu $sp, $sp, 0x78
|
||||
/* 100B2C 8029751C 03E00008 */ jr $ra
|
||||
/* 100B30 80297520 00000000 */ nop
|
||||
|
||||
/* 100B34 80297524 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 100B38 80297528 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 100B3C 8029752C 8C620000 */ lw $v0, ($v1)
|
||||
/* 100B40 80297530 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff
|
||||
/* 100B44 80297534 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff
|
||||
/* 100B48 80297538 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 100B4C 8029753C AC6E0000 */ sw $t6, ($v1)
|
||||
/* 100B50 80297540 0081C024 */ and $t8, $a0, $at
|
||||
/* 100B54 80297544 3C0FFD10 */ lui $t7, 0xfd10
|
||||
/* 100B58 80297548 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 100B5C 8029754C AC580004 */ sw $t8, 4($v0)
|
||||
/* 100B60 80297550 8C620000 */ lw $v0, ($v1)
|
||||
/* 100B64 80297554 3C0E0708 */ lui $t6, (0x07080200 >> 16) # lui $t6, 0x708
|
||||
/* 100B68 80297558 3C08F510 */ lui $t0, 0xf510
|
||||
/* 100B6C 8029755C 24590008 */ addiu $t9, $v0, 8
|
||||
/* 100B70 80297560 AC790000 */ sw $t9, ($v1)
|
||||
/* 100B74 80297564 35CE0200 */ ori $t6, (0x07080200 & 0xFFFF) # ori $t6, $t6, 0x200
|
||||
/* 100B78 80297568 00A60019 */ multu $a1, $a2
|
||||
/* 100B7C 8029756C AC4E0004 */ sw $t6, 4($v0)
|
||||
/* 100B80 80297570 AC480000 */ sw $t0, ($v0)
|
||||
/* 100B84 80297574 8C620000 */ lw $v0, ($v1)
|
||||
/* 100B88 80297578 3C18E600 */ lui $t8, 0xe600
|
||||
/* 100B8C 8029757C 3C0EF300 */ lui $t6, 0xf300
|
||||
/* 100B90 80297580 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 100B94 80297584 AC6F0000 */ sw $t7, ($v1)
|
||||
/* 100B98 80297588 AC400004 */ sw $zero, 4($v0)
|
||||
/* 100B9C 8029758C AC580000 */ sw $t8, ($v0)
|
||||
/* 100BA0 80297590 8C670000 */ lw $a3, ($v1)
|
||||
/* 100BA4 80297594 00006012 */ mflo $t4
|
||||
/* 100BA8 80297598 258CFFFF */ addiu $t4, $t4, -1
|
||||
/* 100BAC 8029759C 24F90008 */ addiu $t9, $a3, 8
|
||||
/* 100BB0 802975A0 AC790000 */ sw $t9, ($v1)
|
||||
/* 100BB4 802975A4 298107FF */ slti $at, $t4, 0x7ff
|
||||
/* 100BB8 802975A8 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 100BBC 802975AC 10200003 */ beqz $at, .L802975BC
|
||||
/* 100BC0 802975B0 ACEE0000 */ sw $t6, ($a3)
|
||||
/* 100BC4 802975B4 10000002 */ b .L802975C0
|
||||
/* 100BC8 802975B8 01802025 */ move $a0, $t4
|
||||
.L802975BC:
|
||||
/* 100BCC 802975BC 240407FF */ li $a0, 2047
|
||||
.L802975C0:
|
||||
/* 100BD0 802975C0 00054840 */ sll $t1, $a1, 1
|
||||
/* 100BD4 802975C4 05210003 */ bgez $t1, .L802975D4
|
||||
/* 100BD8 802975C8 000910C3 */ sra $v0, $t1, 3
|
||||
/* 100BDC 802975CC 25210007 */ addiu $at, $t1, 7
|
||||
/* 100BE0 802975D0 000110C3 */ sra $v0, $at, 3
|
||||
.L802975D4:
|
||||
/* 100BE4 802975D4 1C400003 */ bgtz $v0, .L802975E4
|
||||
/* 100BE8 802975D8 00405025 */ move $t2, $v0
|
||||
/* 100BEC 802975DC 10000001 */ b .L802975E4
|
||||
/* 100BF0 802975E0 240A0001 */ li $t2, 1
|
||||
.L802975E4:
|
||||
/* 100BF4 802975E4 1C400003 */ bgtz $v0, .L802975F4
|
||||
/* 100BF8 802975E8 254F07FF */ addiu $t7, $t2, 0x7ff
|
||||
/* 100BFC 802975EC 10000002 */ b .L802975F8
|
||||
/* 100C00 802975F0 240B0001 */ li $t3, 1
|
||||
.L802975F4:
|
||||
/* 100C04 802975F4 00405825 */ move $t3, $v0
|
||||
.L802975F8:
|
||||
/* 100C08 802975F8 01EB001A */ div $zero, $t7, $t3
|
||||
/* 100C0C 802975FC 15600002 */ bnez $t3, .L80297608
|
||||
/* 100C10 80297600 00000000 */ nop
|
||||
/* 100C14 80297604 0007000D */ break 7
|
||||
.L80297608:
|
||||
/* 100C18 80297608 2401FFFF */ li $at, -1
|
||||
/* 100C1C 8029760C 15610004 */ bne $t3, $at, .L80297620
|
||||
/* 100C20 80297610 3C018000 */ lui $at, 0x8000
|
||||
/* 100C24 80297614 15E10002 */ bne $t7, $at, .L80297620
|
||||
/* 100C28 80297618 00000000 */ nop
|
||||
/* 100C2C 8029761C 0006000D */ break 6
|
||||
.L80297620:
|
||||
/* 100C30 80297620 0000C012 */ mflo $t8
|
||||
/* 100C34 80297624 33190FFF */ andi $t9, $t8, 0xfff
|
||||
/* 100C38 80297628 3C010700 */ lui $at, 0x700
|
||||
/* 100C3C 8029762C 308F0FFF */ andi $t7, $a0, 0xfff
|
||||
/* 100C40 80297630 000FC300 */ sll $t8, $t7, 0xc
|
||||
/* 100C44 80297634 03217025 */ or $t6, $t9, $at
|
||||
/* 100C48 80297638 01D8C825 */ or $t9, $t6, $t8
|
||||
/* 100C4C 8029763C ACF90004 */ sw $t9, 4($a3)
|
||||
/* 100C50 80297640 8C620000 */ lw $v0, ($v1)
|
||||
/* 100C54 80297644 3C0EE700 */ lui $t6, 0xe700
|
||||
/* 100C58 80297648 25390007 */ addiu $t9, $t1, 7
|
||||
/* 100C5C 8029764C 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 100C60 80297650 AC6F0000 */ sw $t7, ($v1)
|
||||
/* 100C64 80297654 AC400004 */ sw $zero, 4($v0)
|
||||
/* 100C68 80297658 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 100C6C 8029765C 00406025 */ move $t4, $v0
|
||||
/* 100C70 80297660 8C620000 */ lw $v0, ($v1)
|
||||
/* 100C74 80297664 001978C3 */ sra $t7, $t9, 3
|
||||
/* 100C78 80297668 31EE01FF */ andi $t6, $t7, 0x1ff
|
||||
/* 100C7C 8029766C 24580008 */ addiu $t8, $v0, 8
|
||||
/* 100C80 80297670 AC780000 */ sw $t8, ($v1)
|
||||
/* 100C84 80297674 000EC240 */ sll $t8, $t6, 9
|
||||
/* 100C88 80297678 3C0F0008 */ lui $t7, (0x00080200 >> 16) # lui $t7, 8
|
||||
/* 100C8C 8029767C 35EF0200 */ ori $t7, (0x00080200 & 0xFFFF) # ori $t7, $t7, 0x200
|
||||
/* 100C90 80297680 0308C825 */ or $t9, $t8, $t0
|
||||
/* 100C94 80297684 AC590000 */ sw $t9, ($v0)
|
||||
/* 100C98 80297688 AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 100C9C 8029768C 00406825 */ move $t5, $v0
|
||||
/* 100CA0 80297690 8C620000 */ lw $v0, ($v1)
|
||||
/* 100CA4 80297694 24AFFFFF */ addiu $t7, $a1, -1
|
||||
/* 100CA8 80297698 3C18F200 */ lui $t8, 0xf200
|
||||
/* 100CAC 8029769C 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 100CB0 802976A0 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 100CB4 802976A4 AFA20004 */ sw $v0, 4($sp)
|
||||
/* 100CB8 802976A8 000F7080 */ sll $t6, $t7, 2
|
||||
/* 100CBC 802976AC AC580000 */ sw $t8, ($v0)
|
||||
/* 100CC0 802976B0 31D80FFF */ andi $t8, $t6, 0xfff
|
||||
/* 100CC4 802976B4 00187B00 */ sll $t7, $t8, 0xc
|
||||
/* 100CC8 802976B8 24CEFFFF */ addiu $t6, $a2, -1
|
||||
/* 100CCC 802976BC 000EC080 */ sll $t8, $t6, 2
|
||||
/* 100CD0 802976C0 330E0FFF */ andi $t6, $t8, 0xfff
|
||||
/* 100CD4 802976C4 01EEC025 */ or $t8, $t7, $t6
|
||||
/* 100CD8 802976C8 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* 100CDC 802976CC AC580004 */ sw $t8, 4($v0)
|
||||
/* 100CE0 802976D0 03E00008 */ jr $ra
|
||||
/* 100CE4 802976D4 0040C825 */ move $t9, $v0
|
||||
|
|
@ -0,0 +1,118 @@
|
|||
glabel func_80297524
|
||||
/* 100B34 80297524 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 100B38 80297528 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 100B3C 8029752C 8C620000 */ lw $v0, ($v1)
|
||||
/* 100B40 80297530 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff
|
||||
/* 100B44 80297534 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff
|
||||
/* 100B48 80297538 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 100B4C 8029753C AC6E0000 */ sw $t6, ($v1)
|
||||
/* 100B50 80297540 0081C024 */ and $t8, $a0, $at
|
||||
/* 100B54 80297544 3C0FFD10 */ lui $t7, 0xfd10
|
||||
/* 100B58 80297548 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 100B5C 8029754C AC580004 */ sw $t8, 4($v0)
|
||||
/* 100B60 80297550 8C620000 */ lw $v0, ($v1)
|
||||
/* 100B64 80297554 3C0E0708 */ lui $t6, (0x07080200 >> 16) # lui $t6, 0x708
|
||||
/* 100B68 80297558 3C08F510 */ lui $t0, 0xf510
|
||||
/* 100B6C 8029755C 24590008 */ addiu $t9, $v0, 8
|
||||
/* 100B70 80297560 AC790000 */ sw $t9, ($v1)
|
||||
/* 100B74 80297564 35CE0200 */ ori $t6, (0x07080200 & 0xFFFF) # ori $t6, $t6, 0x200
|
||||
/* 100B78 80297568 00A60019 */ multu $a1, $a2
|
||||
/* 100B7C 8029756C AC4E0004 */ sw $t6, 4($v0)
|
||||
/* 100B80 80297570 AC480000 */ sw $t0, ($v0)
|
||||
/* 100B84 80297574 8C620000 */ lw $v0, ($v1)
|
||||
/* 100B88 80297578 3C18E600 */ lui $t8, 0xe600
|
||||
/* 100B8C 8029757C 3C0EF300 */ lui $t6, 0xf300
|
||||
/* 100B90 80297580 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 100B94 80297584 AC6F0000 */ sw $t7, ($v1)
|
||||
/* 100B98 80297588 AC400004 */ sw $zero, 4($v0)
|
||||
/* 100B9C 8029758C AC580000 */ sw $t8, ($v0)
|
||||
/* 100BA0 80297590 8C670000 */ lw $a3, ($v1)
|
||||
/* 100BA4 80297594 00006012 */ mflo $t4
|
||||
/* 100BA8 80297598 258CFFFF */ addiu $t4, $t4, -1
|
||||
/* 100BAC 8029759C 24F90008 */ addiu $t9, $a3, 8
|
||||
/* 100BB0 802975A0 AC790000 */ sw $t9, ($v1)
|
||||
/* 100BB4 802975A4 298107FF */ slti $at, $t4, 0x7ff
|
||||
/* 100BB8 802975A8 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 100BBC 802975AC 10200003 */ beqz $at, .L802975BC
|
||||
/* 100BC0 802975B0 ACEE0000 */ sw $t6, ($a3)
|
||||
/* 100BC4 802975B4 10000002 */ b .L802975C0
|
||||
/* 100BC8 802975B8 01802025 */ move $a0, $t4
|
||||
.L802975BC:
|
||||
/* 100BCC 802975BC 240407FF */ li $a0, 2047
|
||||
.L802975C0:
|
||||
/* 100BD0 802975C0 00054840 */ sll $t1, $a1, 1
|
||||
/* 100BD4 802975C4 05210003 */ bgez $t1, .L802975D4
|
||||
/* 100BD8 802975C8 000910C3 */ sra $v0, $t1, 3
|
||||
/* 100BDC 802975CC 25210007 */ addiu $at, $t1, 7
|
||||
/* 100BE0 802975D0 000110C3 */ sra $v0, $at, 3
|
||||
.L802975D4:
|
||||
/* 100BE4 802975D4 1C400003 */ bgtz $v0, .L802975E4
|
||||
/* 100BE8 802975D8 00405025 */ move $t2, $v0
|
||||
/* 100BEC 802975DC 10000001 */ b .L802975E4
|
||||
/* 100BF0 802975E0 240A0001 */ li $t2, 1
|
||||
.L802975E4:
|
||||
/* 100BF4 802975E4 1C400003 */ bgtz $v0, .L802975F4
|
||||
/* 100BF8 802975E8 254F07FF */ addiu $t7, $t2, 0x7ff
|
||||
/* 100BFC 802975EC 10000002 */ b .L802975F8
|
||||
/* 100C00 802975F0 240B0001 */ li $t3, 1
|
||||
.L802975F4:
|
||||
/* 100C04 802975F4 00405825 */ move $t3, $v0
|
||||
.L802975F8:
|
||||
/* 100C08 802975F8 01EB001A */ div $zero, $t7, $t3
|
||||
/* 100C0C 802975FC 15600002 */ bnez $t3, .L80297608
|
||||
/* 100C10 80297600 00000000 */ nop
|
||||
/* 100C14 80297604 0007000D */ break 7
|
||||
.L80297608:
|
||||
/* 100C18 80297608 2401FFFF */ li $at, -1
|
||||
/* 100C1C 8029760C 15610004 */ bne $t3, $at, .L80297620
|
||||
/* 100C20 80297610 3C018000 */ lui $at, 0x8000
|
||||
/* 100C24 80297614 15E10002 */ bne $t7, $at, .L80297620
|
||||
/* 100C28 80297618 00000000 */ nop
|
||||
/* 100C2C 8029761C 0006000D */ break 6
|
||||
.L80297620:
|
||||
/* 100C30 80297620 0000C012 */ mflo $t8
|
||||
/* 100C34 80297624 33190FFF */ andi $t9, $t8, 0xfff
|
||||
/* 100C38 80297628 3C010700 */ lui $at, 0x700
|
||||
/* 100C3C 8029762C 308F0FFF */ andi $t7, $a0, 0xfff
|
||||
/* 100C40 80297630 000FC300 */ sll $t8, $t7, 0xc
|
||||
/* 100C44 80297634 03217025 */ or $t6, $t9, $at
|
||||
/* 100C48 80297638 01D8C825 */ or $t9, $t6, $t8
|
||||
/* 100C4C 8029763C ACF90004 */ sw $t9, 4($a3)
|
||||
/* 100C50 80297640 8C620000 */ lw $v0, ($v1)
|
||||
/* 100C54 80297644 3C0EE700 */ lui $t6, 0xe700
|
||||
/* 100C58 80297648 25390007 */ addiu $t9, $t1, 7
|
||||
/* 100C5C 8029764C 244F0008 */ addiu $t7, $v0, 8
|
||||
/* 100C60 80297650 AC6F0000 */ sw $t7, ($v1)
|
||||
/* 100C64 80297654 AC400004 */ sw $zero, 4($v0)
|
||||
/* 100C68 80297658 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 100C6C 8029765C 00406025 */ move $t4, $v0
|
||||
/* 100C70 80297660 8C620000 */ lw $v0, ($v1)
|
||||
/* 100C74 80297664 001978C3 */ sra $t7, $t9, 3
|
||||
/* 100C78 80297668 31EE01FF */ andi $t6, $t7, 0x1ff
|
||||
/* 100C7C 8029766C 24580008 */ addiu $t8, $v0, 8
|
||||
/* 100C80 80297670 AC780000 */ sw $t8, ($v1)
|
||||
/* 100C84 80297674 000EC240 */ sll $t8, $t6, 9
|
||||
/* 100C88 80297678 3C0F0008 */ lui $t7, (0x00080200 >> 16) # lui $t7, 8
|
||||
/* 100C8C 8029767C 35EF0200 */ ori $t7, (0x00080200 & 0xFFFF) # ori $t7, $t7, 0x200
|
||||
/* 100C90 80297680 0308C825 */ or $t9, $t8, $t0
|
||||
/* 100C94 80297684 AC590000 */ sw $t9, ($v0)
|
||||
/* 100C98 80297688 AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 100C9C 8029768C 00406825 */ move $t5, $v0
|
||||
/* 100CA0 80297690 8C620000 */ lw $v0, ($v1)
|
||||
/* 100CA4 80297694 24AFFFFF */ addiu $t7, $a1, -1
|
||||
/* 100CA8 80297698 3C18F200 */ lui $t8, 0xf200
|
||||
/* 100CAC 8029769C 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 100CB0 802976A0 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 100CB4 802976A4 AFA20004 */ sw $v0, 4($sp)
|
||||
/* 100CB8 802976A8 000F7080 */ sll $t6, $t7, 2
|
||||
/* 100CBC 802976AC AC580000 */ sw $t8, ($v0)
|
||||
/* 100CC0 802976B0 31D80FFF */ andi $t8, $t6, 0xfff
|
||||
/* 100CC4 802976B4 00187B00 */ sll $t7, $t8, 0xc
|
||||
/* 100CC8 802976B8 24CEFFFF */ addiu $t6, $a2, -1
|
||||
/* 100CCC 802976BC 000EC080 */ sll $t8, $t6, 2
|
||||
/* 100CD0 802976C0 330E0FFF */ andi $t6, $t8, 0xfff
|
||||
/* 100CD4 802976C4 01EEC025 */ or $t8, $t7, $t6
|
||||
/* 100CD8 802976C8 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
/* 100CDC 802976CC AC580004 */ sw $t8, 4($v0)
|
||||
/* 100CE0 802976D0 03E00008 */ jr $ra
|
||||
/* 100CE4 802976D4 0040C825 */ move $t9, $v0
|
||||
|
|
@ -1,250 +0,0 @@
|
|||
glabel func_80298328
|
||||
/* 101938 80298328 3C0E800E */ lui $t6, %hi(camera1) # $t6, 0x800e
|
||||
/* 10193C 8029832C 8DCEDB40 */ lw $t6, %lo(camera1)($t6)
|
||||
/* 101940 80298330 240100B8 */ li $at, 184
|
||||
/* 101944 80298334 27BDFFC0 */ addiu $sp, $sp, -0x40
|
||||
/* 101948 80298338 008E4023 */ subu $t0, $a0, $t6
|
||||
/* 10194C 8029833C 0101001A */ div $zero, $t0, $at
|
||||
/* 101950 80298340 AFBF0024 */ sw $ra, 0x24($sp)
|
||||
/* 101954 80298344 AFB00020 */ sw $s0, 0x20($sp)
|
||||
/* 101958 80298348 AFA50044 */ sw $a1, 0x44($sp)
|
||||
/* 10195C 8029834C 84C20002 */ lh $v0, 2($a2)
|
||||
/* 101960 80298350 00007812 */ mflo $t7
|
||||
/* 101964 80298354 000F1C00 */ sll $v1, $t7, 0x10
|
||||
/* 101968 80298358 30590800 */ andi $t9, $v0, 0x800
|
||||
/* 10196C 8029835C 00C08025 */ move $s0, $a2
|
||||
/* 101970 80298360 172000CF */ bnez $t9, .L802986A0
|
||||
/* 101974 80298364 0003C403 */ sra $t8, $v1, 0x10
|
||||
/* 101978 80298368 000F6880 */ sll $t5, $t7, 2
|
||||
/* 10197C 8029836C 3C018015 */ lui $at, %hi(D_80150130)
|
||||
/* 101980 80298370 002D0821 */ addu $at, $at, $t5
|
||||
/* 101984 80298374 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
|
||||
/* 101988 80298378 3C01802C */ lui $at, %hi(D_802B9624) # $at, 0x802c
|
||||
/* 10198C 8029837C 24C50018 */ addiu $a1, $a2, 0x18
|
||||
/* 101990 80298380 C4269624 */ lwc1 $f6, %lo(D_802B9624)($at)
|
||||
/* 101994 80298384 94860026 */ lhu $a2, 0x26($a0)
|
||||
/* 101998 80298388 A7B80036 */ sh $t8, 0x36($sp)
|
||||
/* 10199C 8029838C 24070000 */ li $a3, 0
|
||||
/* 1019A0 80298390 E7A40010 */ swc1 $f4, 0x10($sp)
|
||||
/* 1019A4 80298394 0C0AE034 */ jal func_802B80D0
|
||||
/* 1019A8 80298398 E7A60014 */ swc1 $f6, 0x14($sp)
|
||||
/* 1019AC 8029839C 44804000 */ mtc1 $zero, $f8
|
||||
/* 1019B0 802983A0 87A30036 */ lh $v1, 0x36($sp)
|
||||
/* 1019B4 802983A4 8FA40044 */ lw $a0, 0x44($sp)
|
||||
/* 1019B8 802983A8 4608003C */ c.lt.s $f0, $f8
|
||||
/* 1019BC 802983AC 46000086 */ mov.s $f2, $f0
|
||||
/* 1019C0 802983B0 45020017 */ bc1fl .L80298410
|
||||
/* 1019C4 802983B4 C60A0018 */ lwc1 $f10, 0x18($s0)
|
||||
/* 1019C8 802983B8 1060000C */ beqz $v1, .L802983EC
|
||||
/* 1019CC 802983BC 240EFFFF */ li $t6, -1
|
||||
/* 1019D0 802983C0 24020001 */ li $v0, 1
|
||||
/* 1019D4 802983C4 1062000B */ beq $v1, $v0, .L802983F4
|
||||
/* 1019D8 802983C8 240FFFFF */ li $t7, -1
|
||||
/* 1019DC 802983CC 24010002 */ li $at, 2
|
||||
/* 1019E0 802983D0 1061000A */ beq $v1, $at, .L802983FC
|
||||
/* 1019E4 802983D4 2418FFFF */ li $t8, -1
|
||||
/* 1019E8 802983D8 24010003 */ li $at, 3
|
||||
/* 1019EC 802983DC 10610009 */ beq $v1, $at, .L80298404
|
||||
/* 1019F0 802983E0 2419FFFF */ li $t9, -1
|
||||
/* 1019F4 802983E4 100000AF */ b .L802986A4
|
||||
/* 1019F8 802983E8 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
.L802983EC:
|
||||
/* 1019FC 802983EC 100000AC */ b .L802986A0
|
||||
/* 101A00 802983F0 A60E0004 */ sh $t6, 4($s0)
|
||||
.L802983F4:
|
||||
/* 101A04 802983F4 100000AA */ b .L802986A0
|
||||
/* 101A08 802983F8 A60F0006 */ sh $t7, 6($s0)
|
||||
.L802983FC:
|
||||
/* 101A0C 802983FC 100000A8 */ b .L802986A0
|
||||
/* 101A10 80298400 A6180008 */ sh $t8, 8($s0)
|
||||
.L80298404:
|
||||
/* 101A14 80298404 100000A6 */ b .L802986A0
|
||||
/* 101A18 80298408 A619000A */ sh $t9, 0xa($s0)
|
||||
/* 101A1C 8029840C C60A0018 */ lwc1 $f10, 0x18($s0)
|
||||
.L80298410:
|
||||
/* 101A20 80298410 00002825 */ move $a1, $zero
|
||||
/* 101A24 80298414 E48A0030 */ swc1 $f10, 0x30($a0)
|
||||
/* 101A28 80298418 C610001C */ lwc1 $f16, 0x1c($s0)
|
||||
/* 101A2C 8029841C E4900034 */ swc1 $f16, 0x34($a0)
|
||||
/* 101A30 80298420 C6120020 */ lwc1 $f18, 0x20($s0)
|
||||
/* 101A34 80298424 E4920038 */ swc1 $f18, 0x38($a0)
|
||||
/* 101A38 80298428 E7A2002C */ swc1 $f2, 0x2c($sp)
|
||||
/* 101A3C 8029842C 0C0AD3FE */ jal func_802B4FF8
|
||||
/* 101A40 80298430 A7A30036 */ sh $v1, 0x36($sp)
|
||||
/* 101A44 80298434 87A30036 */ lh $v1, 0x36($sp)
|
||||
/* 101A48 80298438 10400099 */ beqz $v0, .L802986A0
|
||||
/* 101A4C 8029843C C7A2002C */ lwc1 $f2, 0x2c($sp)
|
||||
/* 101A50 80298440 3C01802C */ lui $at, %hi(D_802B9628) # $at, 0x802c
|
||||
/* 101A54 80298444 C4249628 */ lwc1 $f4, %lo(D_802B9628)($at)
|
||||
/* 101A58 80298448 3C19802C */ lui $t9, %hi(D_802BA058) # $t9, 0x802c
|
||||
/* 101A5C 8029844C 4602203C */ c.lt.s $f4, $f2
|
||||
/* 101A60 80298450 00000000 */ nop
|
||||
/* 101A64 80298454 45000017 */ bc1f .L802984B4
|
||||
/* 101A68 80298458 00000000 */ nop
|
||||
/* 101A6C 8029845C 1060000C */ beqz $v1, .L80298490
|
||||
/* 101A70 80298460 00006025 */ move $t4, $zero
|
||||
/* 101A74 80298464 24020001 */ li $v0, 1
|
||||
/* 101A78 80298468 1062000B */ beq $v1, $v0, .L80298498
|
||||
/* 101A7C 8029846C 00006025 */ move $t4, $zero
|
||||
/* 101A80 80298470 24010002 */ li $at, 2
|
||||
/* 101A84 80298474 1061000A */ beq $v1, $at, .L802984A0
|
||||
/* 101A88 80298478 00006025 */ move $t4, $zero
|
||||
/* 101A8C 8029847C 24010003 */ li $at, 3
|
||||
/* 101A90 80298480 5061000A */ beql $v1, $at, .L802984AC
|
||||
/* 101A94 80298484 A600000A */ sh $zero, 0xa($s0)
|
||||
/* 101A98 80298488 1000002D */ b .L80298540
|
||||
/* 101A9C 8029848C 00006025 */ move $t4, $zero
|
||||
.L80298490:
|
||||
/* 101AA0 80298490 1000002B */ b .L80298540
|
||||
/* 101AA4 80298494 A6000004 */ sh $zero, 4($s0)
|
||||
.L80298498:
|
||||
/* 101AA8 80298498 10000029 */ b .L80298540
|
||||
/* 101AAC 8029849C A6000006 */ sh $zero, 6($s0)
|
||||
.L802984A0:
|
||||
/* 101AB0 802984A0 10000027 */ b .L80298540
|
||||
/* 101AB4 802984A4 A6000008 */ sh $zero, 8($s0)
|
||||
/* 101AB8 802984A8 A600000A */ sh $zero, 0xa($s0)
|
||||
.L802984AC:
|
||||
/* 101ABC 802984AC 10000024 */ b .L80298540
|
||||
/* 101AC0 802984B0 00006025 */ move $t4, $zero
|
||||
.L802984B4:
|
||||
/* 101AC4 802984B4 1060000A */ beqz $v1, .L802984E0
|
||||
/* 101AC8 802984B8 24020001 */ li $v0, 1
|
||||
/* 101ACC 802984BC 24020001 */ li $v0, 1
|
||||
/* 101AD0 802984C0 10620009 */ beq $v1, $v0, .L802984E8
|
||||
/* 101AD4 802984C4 24010002 */ li $at, 2
|
||||
/* 101AD8 802984C8 10610009 */ beq $v1, $at, .L802984F0
|
||||
/* 101ADC 802984CC 24010003 */ li $at, 3
|
||||
/* 101AE0 802984D0 5061000A */ beql $v1, $at, .L802984FC
|
||||
/* 101AE4 802984D4 A602000A */ sh $v0, 0xa($s0)
|
||||
/* 101AE8 802984D8 10000008 */ b .L802984FC
|
||||
/* 101AEC 802984DC 00000000 */ nop
|
||||
.L802984E0:
|
||||
/* 101AF0 802984E0 10000006 */ b .L802984FC
|
||||
/* 101AF4 802984E4 A6020004 */ sh $v0, 4($s0)
|
||||
.L802984E8:
|
||||
/* 101AF8 802984E8 10000004 */ b .L802984FC
|
||||
/* 101AFC 802984EC A6020006 */ sh $v0, 6($s0)
|
||||
.L802984F0:
|
||||
/* 101B00 802984F0 10000002 */ b .L802984FC
|
||||
/* 101B04 802984F4 A6020008 */ sh $v0, 8($s0)
|
||||
/* 101B08 802984F8 A602000A */ sh $v0, 0xa($s0)
|
||||
.L802984FC:
|
||||
/* 101B0C 802984FC 10600009 */ beqz $v1, .L80298524
|
||||
/* 101B10 80298500 00000000 */ nop
|
||||
/* 101B14 80298504 10620009 */ beq $v1, $v0, .L8029852C
|
||||
/* 101B18 80298508 24010002 */ li $at, 2
|
||||
/* 101B1C 8029850C 10610009 */ beq $v1, $at, .L80298534
|
||||
/* 101B20 80298510 24010003 */ li $at, 3
|
||||
/* 101B24 80298514 5061000A */ beql $v1, $at, .L80298540
|
||||
/* 101B28 80298518 860C002A */ lh $t4, 0x2a($s0)
|
||||
/* 101B2C 8029851C 10000008 */ b .L80298540
|
||||
/* 101B30 80298520 87AC0034 */ lh $t4, 0x34($sp)
|
||||
.L80298524:
|
||||
/* 101B34 80298524 10000006 */ b .L80298540
|
||||
/* 101B38 80298528 860C0024 */ lh $t4, 0x24($s0)
|
||||
.L8029852C:
|
||||
/* 101B3C 8029852C 10000004 */ b .L80298540
|
||||
/* 101B40 80298530 860C0026 */ lh $t4, 0x26($s0)
|
||||
.L80298534:
|
||||
/* 101B44 80298534 10000002 */ b .L80298540
|
||||
/* 101B48 80298538 860C0028 */ lh $t4, 0x28($s0)
|
||||
/* 101B4C 8029853C 860C002A */ lh $t4, 0x2a($s0)
|
||||
.L80298540:
|
||||
/* 101B50 80298540 24010006 */ li $at, 6
|
||||
/* 101B54 80298544 0181001A */ div $zero, $t4, $at
|
||||
/* 101B58 80298548 00006812 */ mflo $t5
|
||||
/* 101B5C 8029854C 000D7400 */ sll $t6, $t5, 0x10
|
||||
/* 101B60 80298550 000E6403 */ sra $t4, $t6, 0x10
|
||||
/* 101B64 80298554 29810009 */ slti $at, $t4, 9
|
||||
/* 101B68 80298558 14200002 */ bnez $at, .L80298564
|
||||
/* 101B6C 8029855C 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
|
||||
/* 101B70 80298560 240C0008 */ li $t4, 8
|
||||
.L80298564:
|
||||
/* 101B74 80298564 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
|
||||
/* 101B78 80298568 8C620000 */ lw $v0, ($v1)
|
||||
/* 101B7C 8029856C 8F39A058 */ lw $t9, %lo(D_802BA058)($t9)
|
||||
/* 101B80 80298570 000CC2C0 */ sll $t8, $t4, 0xb
|
||||
/* 101B84 80298574 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff
|
||||
/* 101B88 80298578 244D0008 */ addiu $t5, $v0, 8
|
||||
/* 101B8C 8029857C AC6D0000 */ sw $t5, ($v1)
|
||||
/* 101B90 80298580 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff
|
||||
/* 101B94 80298584 03195821 */ addu $t3, $t8, $t9
|
||||
/* 101B98 80298588 01617824 */ and $t7, $t3, $at
|
||||
/* 101B9C 8029858C 3C0EFD50 */ lui $t6, 0xfd50
|
||||
/* 101BA0 80298590 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 101BA4 80298594 AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 101BA8 80298598 8C620000 */ lw $v0, ($v1)
|
||||
/* 101BAC 8029859C 3C0D0708 */ lui $t5, (0x07080100 >> 16) # lui $t5, 0x708
|
||||
/* 101BB0 802985A0 35AD0100 */ ori $t5, (0x07080100 & 0xFFFF) # ori $t5, $t5, 0x100
|
||||
/* 101BB4 802985A4 24580008 */ addiu $t8, $v0, 8
|
||||
/* 101BB8 802985A8 AC780000 */ sw $t8, ($v1)
|
||||
/* 101BBC 802985AC 3C19F550 */ lui $t9, 0xf550
|
||||
/* 101BC0 802985B0 AC590000 */ sw $t9, ($v0)
|
||||
/* 101BC4 802985B4 AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 101BC8 802985B8 8C620000 */ lw $v0, ($v1)
|
||||
/* 101BCC 802985BC 3C0FE600 */ lui $t7, 0xe600
|
||||
/* 101BD0 802985C0 3C0D073F */ lui $t5, (0x073FF200 >> 16) # lui $t5, 0x73f
|
||||
/* 101BD4 802985C4 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 101BD8 802985C8 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 101BDC 802985CC AC400004 */ sw $zero, 4($v0)
|
||||
/* 101BE0 802985D0 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 101BE4 802985D4 8C620000 */ lw $v0, ($v1)
|
||||
/* 101BE8 802985D8 35ADF200 */ ori $t5, (0x073FF200 & 0xFFFF) # ori $t5, $t5, 0xf200
|
||||
/* 101BEC 802985DC 3C19F300 */ lui $t9, 0xf300
|
||||
/* 101BF0 802985E0 24580008 */ addiu $t8, $v0, 8
|
||||
/* 101BF4 802985E4 AC780000 */ sw $t8, ($v1)
|
||||
/* 101BF8 802985E8 AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 101BFC 802985EC AC590000 */ sw $t9, ($v0)
|
||||
/* 101C00 802985F0 8C620000 */ lw $v0, ($v1)
|
||||
/* 101C04 802985F4 3C0FE700 */ lui $t7, 0xe700
|
||||
/* 101C08 802985F8 3C19F548 */ lui $t9, (0xF5480800 >> 16) # lui $t9, 0xf548
|
||||
/* 101C0C 802985FC 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 101C10 80298600 AC6E0000 */ sw $t6, ($v1)
|
||||
/* 101C14 80298604 AC400004 */ sw $zero, 4($v0)
|
||||
/* 101C18 80298608 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 101C1C 8029860C 8C620000 */ lw $v0, ($v1)
|
||||
/* 101C20 80298610 3C0D0008 */ lui $t5, (0x00080100 >> 16) # lui $t5, 8
|
||||
/* 101C24 80298614 35AD0100 */ ori $t5, (0x00080100 & 0xFFFF) # ori $t5, $t5, 0x100
|
||||
/* 101C28 80298618 24580008 */ addiu $t8, $v0, 8
|
||||
/* 101C2C 8029861C AC780000 */ sw $t8, ($v1)
|
||||
/* 101C30 80298620 37390800 */ ori $t9, (0xF5480800 & 0xFFFF) # ori $t9, $t9, 0x800
|
||||
/* 101C34 80298624 AC590000 */ sw $t9, ($v0)
|
||||
/* 101C38 80298628 AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 101C3C 8029862C 8C620000 */ lw $v0, ($v1)
|
||||
/* 101C40 80298630 3C180007 */ lui $t8, (0x0007C0FC >> 16) # lui $t8, 7
|
||||
/* 101C44 80298634 3718C0FC */ ori $t8, (0x0007C0FC & 0xFFFF) # ori $t8, $t8, 0xc0fc
|
||||
/* 101C48 80298638 244E0008 */ addiu $t6, $v0, 8
|
||||
/* 101C4C 8029863C AC6E0000 */ sw $t6, ($v1)
|
||||
/* 101C50 80298640 3C0FF200 */ lui $t7, 0xf200
|
||||
/* 101C54 80298644 3C19800E */ lui $t9, %hi(gCurrentCourseId) # $t9, 0x800e
|
||||
/* 101C58 80298648 AC4F0000 */ sw $t7, ($v0)
|
||||
/* 101C5C 8029864C AC580004 */ sw $t8, 4($v0)
|
||||
/* 101C60 80298650 8739C5A0 */ lh $t9, %lo(gCurrentCourseId)($t9)
|
||||
/* 101C64 80298654 3C0E0600 */ lui $t6, 0x600
|
||||
/* 101C68 80298658 3C0D0601 */ lui $t5, 0x601
|
||||
/* 101C6C 8029865C 5720000A */ bnel $t9, $zero, .L80298688
|
||||
/* 101C70 80298660 8C620000 */ lw $v0, ($v1)
|
||||
/* 101C74 80298664 8C620000 */ lw $v0, ($v1)
|
||||
/* 101C78 80298668 3C0F0600 */ lui $t7, %hi(D_06006990) # $t7, 0x600
|
||||
/* 101C7C 8029866C 25EF6990 */ addiu $t7, %lo(D_06006990) # addiu $t7, $t7, 0x6990
|
||||
/* 101C80 80298670 244D0008 */ addiu $t5, $v0, 8
|
||||
/* 101C84 80298674 AC6D0000 */ sw $t5, ($v1)
|
||||
/* 101C88 80298678 AC4F0004 */ sw $t7, 4($v0)
|
||||
/* 101C8C 8029867C 10000008 */ b .L802986A0
|
||||
/* 101C90 80298680 AC4E0000 */ sw $t6, ($v0)
|
||||
/* 101C94 80298684 8C620000 */ lw $v0, ($v1)
|
||||
.L80298688:
|
||||
/* 101C98 80298688 3C190600 */ lui $t9, 0x600
|
||||
/* 101C9C 8029868C 25ADD850 */ addiu $t5, $t5, -0x27b0
|
||||
/* 101CA0 80298690 24580008 */ addiu $t8, $v0, 8
|
||||
/* 101CA4 80298694 AC780000 */ sw $t8, ($v1)
|
||||
/* 101CA8 80298698 AC4D0004 */ sw $t5, 4($v0)
|
||||
/* 101CAC 8029869C AC590000 */ sw $t9, ($v0)
|
||||
.L802986A0:
|
||||
/* 101CB0 802986A0 8FBF0024 */ lw $ra, 0x24($sp)
|
||||
.L802986A4:
|
||||
/* 101CB4 802986A4 8FB00020 */ lw $s0, 0x20($sp)
|
||||
/* 101CB8 802986A8 27BD0040 */ addiu $sp, $sp, 0x40
|
||||
/* 101CBC 802986AC 03E00008 */ jr $ra
|
||||
/* 101CC0 802986B0 00000000 */ nop
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
glabel update_obj_yoshi_valley_egg
|
||||
/* 10120C 80297BFC 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 101210 80297C00 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 101214 80297C04 848E0010 */ lh $t6, 0x10($a0)
|
||||
/* 101218 80297C08 00802825 */ move $a1, $a0
|
||||
/* 10121C 80297C0C 25CF005B */ addiu $t7, $t6, 0x5b
|
||||
/* 101220 80297C10 A48F0010 */ sh $t7, 0x10($a0)
|
||||
/* 101224 80297C14 AFA50018 */ sw $a1, 0x18($sp)
|
||||
/* 101228 80297C18 0C0AE006 */ jal sins
|
||||
/* 10122C 80297C1C 31E4FFFF */ andi $a0, $t7, 0xffff
|
||||
/* 101230 80297C20 8FA50018 */ lw $a1, 0x18($sp)
|
||||
/* 101234 80297C24 C4A40008 */ lwc1 $f4, 8($a1)
|
||||
/* 101238 80297C28 C4A80024 */ lwc1 $f8, 0x24($a1)
|
||||
/* 10123C 80297C2C 94A40010 */ lhu $a0, 0x10($a1)
|
||||
/* 101240 80297C30 46040182 */ mul.s $f6, $f0, $f4
|
||||
/* 101244 80297C34 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 101248 80297C38 0C0AE00E */ jal coss
|
||||
/* 10124C 80297C3C E4AA0018 */ swc1 $f10, 0x18($a1)
|
||||
/* 101250 80297C40 8FA50018 */ lw $a1, 0x18($sp)
|
||||
/* 101254 80297C44 3C01C040 */ li $at, 0xC0400000 # -3.000000
|
||||
/* 101258 80297C48 C4B00008 */ lwc1 $f16, 8($a1)
|
||||
/* 10125C 80297C4C C4A4002C */ lwc1 $f4, 0x2c($a1)
|
||||
/* 101260 80297C50 84B80002 */ lh $t8, 2($a1)
|
||||
/* 101264 80297C54 46100482 */ mul.s $f18, $f0, $f16
|
||||
/* 101268 80297C58 33190400 */ andi $t9, $t8, 0x400
|
||||
/* 10126C 80297C5C 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 101270 80297C60 13200021 */ beqz $t9, .L80297CE8
|
||||
/* 101274 80297C64 E4A60020 */ swc1 $f6, 0x20($a1)
|
||||
/* 101278 80297C68 44811000 */ mtc1 $at, $f2
|
||||
/* 10127C 80297C6C C4A80028 */ lwc1 $f8, 0x28($a1)
|
||||
/* 101280 80297C70 3C01802C */ lui $at, %hi(D_802B9610)
|
||||
/* 101284 80297C74 D4309610 */ ldc1 $f16, %lo(D_802B9610)($at)
|
||||
/* 101288 80297C78 460042A1 */ cvt.d.s $f10, $f8
|
||||
/* 10128C 80297C7C 46305481 */ sub.d $f18, $f10, $f16
|
||||
/* 101290 80297C80 46209120 */ cvt.s.d $f4, $f18
|
||||
/* 101294 80297C84 E4A40028 */ swc1 $f4, 0x28($a1)
|
||||
/* 101298 80297C88 C4A00028 */ lwc1 $f0, 0x28($a1)
|
||||
/* 10129C 80297C8C 4602003C */ c.lt.s $f0, $f2
|
||||
/* 1012A0 80297C90 00000000 */ nop
|
||||
/* 1012A4 80297C94 45020004 */ bc1fl .L80297CA8
|
||||
/* 1012A8 80297C98 C4A6001C */ lwc1 $f6, 0x1c($a1)
|
||||
/* 1012AC 80297C9C E4A20028 */ swc1 $f2, 0x28($a1)
|
||||
/* 1012B0 80297CA0 C4A00028 */ lwc1 $f0, 0x28($a1)
|
||||
/* 1012B4 80297CA4 C4A6001C */ lwc1 $f6, 0x1c($a1)
|
||||
.L80297CA8:
|
||||
/* 1012B8 80297CA8 44801000 */ mtc1 $zero, $f2
|
||||
/* 1012BC 80297CAC 46003200 */ add.s $f8, $f6, $f0
|
||||
/* 1012C0 80297CB0 E4A8001C */ swc1 $f8, 0x1c($a1)
|
||||
/* 1012C4 80297CB4 C4AA001C */ lwc1 $f10, 0x1c($a1)
|
||||
/* 1012C8 80297CB8 4602503C */ c.lt.s $f10, $f2
|
||||
/* 1012CC 80297CBC 00000000 */ nop
|
||||
/* 1012D0 80297CC0 45020007 */ bc1fl .L80297CE0
|
||||
/* 1012D4 80297CC4 84AA0012 */ lh $t2, 0x12($a1)
|
||||
/* 1012D8 80297CC8 84A80002 */ lh $t0, 2($a1)
|
||||
/* 1012DC 80297CCC E4A2001C */ swc1 $f2, 0x1c($a1)
|
||||
/* 1012E0 80297CD0 E4A20028 */ swc1 $f2, 0x28($a1)
|
||||
/* 1012E4 80297CD4 3109FBFF */ andi $t1, $t0, 0xfbff
|
||||
/* 1012E8 80297CD8 A4A90002 */ sh $t1, 2($a1)
|
||||
/* 1012EC 80297CDC 84AA0012 */ lh $t2, 0x12($a1)
|
||||
.L80297CE0:
|
||||
/* 1012F0 80297CE0 254BFB06 */ addiu $t3, $t2, -0x4fa
|
||||
/* 1012F4 80297CE4 A4AB0012 */ sh $t3, 0x12($a1)
|
||||
.L80297CE8:
|
||||
/* 1012F8 80297CE8 84AC0012 */ lh $t4, 0x12($a1)
|
||||
/* 1012FC 80297CEC 258DFDDE */ addiu $t5, $t4, -0x222
|
||||
/* 101300 80297CF0 A4AD0012 */ sh $t5, 0x12($a1)
|
||||
/* 101304 80297CF4 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 101308 80297CF8 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
/* 10130C 80297CFC 03E00008 */ jr $ra
|
||||
/* 101310 80297D00 00000000 */ nop
|
||||
|
|
@ -38,6 +38,3 @@ glabel func_802A87A8
|
|||
/* 111E48 802A8838 27BD0028 */ addiu $sp, $sp, 0x28
|
||||
/* 111E4C 802A883C 03E00008 */ jr $ra
|
||||
/* 111E50 802A8840 00000000 */ nop
|
||||
|
||||
/* 111E54 802A8844 03E00008 */ jr $ra
|
||||
/* 111E58 802A8848 00000000 */ nop
|
||||
|
|
|
|||
80
assets.json
80
assets.json
|
|
@ -12122,15 +12122,22 @@
|
|||
"bin/texture_8209C0.rgba16.tkmk00": {"meta":{"size":"0x100"}, "offsets": {"us":["0x8209C0", "0x0"]}},
|
||||
"bin/texture_820AC0.rgba16.tkmk00": {"meta":{"size":"0x500"}, "offsets": {"us":["0x820AC0", "0x0"]}},
|
||||
"bin/texture_820FC0.rgba16.tkmk00": {"meta":{"size":"0xD50"}, "offsets": {"us":["0x820FC0", "0x0"]}},
|
||||
"textures/132B50_00000_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets":{"us":["0x132B50","0x0"]}},
|
||||
"textures/132B50_00200.rgba16.png": {"meta":{"dims":[32,64]}, "offsets":{"us":["0x132B50","0x200"]}},
|
||||
"textures/132B50_01EE8.rgba16.png": {"meta":{"dims":[32,64]}, "offsets": {"us":["0x132B50", "0x01EE8"]}},
|
||||
"textures/132B50_03348.rgba16.png": {"meta":{"dims":[32,32]}, "offsets": {"us":["0x132B50", "0x03348"]}},
|
||||
"textures/132B50_03B48.rgba16.png": {"meta":{"dims":[64,32]}, "offsets": {"us":["0x132B50", "0x03B48"]}},
|
||||
"textures/132B50_04C68_tlut.rgba16.bin": {"meta":{"size":"0x1D0"}, "offsets": {"us":["0x132B50", "0x04C68"]}},
|
||||
"textures/132B50_04E38_tlut.rgba16.bin": {"meta":{"size":"0x30"}, "offsets": {"us":["0x132B50", "0x04E38"]}},
|
||||
"textures/132B50_04E68_tlut.rgba16.bin": {"meta":{"size":"0x200"}, "offsets": {"us":["0x132B50", "0x04E68"]}},
|
||||
"textures/132B50_05068_tlut.rgba16.bin": {"meta":{"size":"0x1D0"}, "offsets": {"us":["0x132B50", "0x05068"]}},
|
||||
"textures/132B50_06A58.i4.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x06A58"]}},
|
||||
"textures/132B50_06AD8.ia8.png": {"meta":{"dims":[32,32]}, "offsets": {"us":["0x132B50", "0x06AD8"]}},
|
||||
"textures/132B50_06ED8_tlut.rgba16.bin": {"meta":{"size":"0x20"}, "offsets": {"us":["0x132B50", "0x06ED8"]}},
|
||||
"textures/132B50_06EF8.rgba16.ci4.png": {"meta":{"dims":[128,32], "pal":"0x06ED8"}, "offsets": {"us":["0x132B50", "0x06EF8"]}},
|
||||
"textures/132B50_08150.ia8.png": {"meta":{"dims":[100,8]}, "offsets": {"us":["0x132B50", "0x08150"]}},
|
||||
"textures/132B50_08470.ia8.png": {"meta":{"dims":[100,8]}, "offsets": {"us":["0x132B50", "0x08470"]}},
|
||||
"textures/132B50_08790.ia8.png": {"meta":{"dims":[100,8]}, "offsets": {"us":["0x132B50", "0x08790"]}},
|
||||
"textures/132B50_08790.ia8.png": {"meta":{"dims":[100,10]}, "offsets": {"us":["0x132B50", "0x08790"]}},
|
||||
"textures/132B50_09958.i4.png": {"meta":{"dims":[64,96]}, "offsets": {"us":["0x132B50", "0x09958"]}},
|
||||
"textures/132B50_0A558.i4.png": {"meta":{"dims":[64,32]}, "offsets": {"us":["0x132B50", "0x0A558"]}},
|
||||
"textures/132B50_0A958.rgba16.png": {"meta":{"dims":[32,8]}, "offsets": {"us":["0x132B50", "0x0A958"]}},
|
||||
|
|
@ -12154,10 +12161,13 @@
|
|||
"textures/132B50_15A58.i4.png": {"meta":{"dims":[64,64]}, "offsets": {"us":["0x132B50", "0x15A58"]}},
|
||||
"textures/132B50_16258.i4.png": {"meta":{"dims":[64,64]}, "offsets": {"us":["0x132B50", "0x16258"]}},
|
||||
"textures/132B50_16A58.i4.png": {"meta":{"dims":[64,64]}, "offsets": {"us":["0x132B50", "0x16A58"]}},
|
||||
"textures/132B50_17258_tlut.rgba16.png": {"meta":{"dims":[38,6]}, "offsets": {"us":["0x132B50", "0x17258"]}},
|
||||
"textures/132B50_17458_combined_data.bin": {"meta":{"size":"0x2E80"}, "offsets": {"us":["0x132B50", "0x17458"]}},
|
||||
"textures/132B50_17458.rgba16.ci8.png": {"meta":{"dims":[64,32], "pal":"0x17258"}, "offsets": {"us":["0x132B50", "0x17458"]}},
|
||||
"textures/132B50_17C58.rgba16.ci8.png": {"meta":{"dims":[64,32], "pal":"0x17258"}, "offsets": {"us":["0x132B50", "0x17C58"]}},
|
||||
"textures/132B50_18458.rgba16.ci8.png": {"meta":{"dims":[64,32], "pal":"0x17258"}, "offsets": {"us":["0x132B50", "0x18458"]}},
|
||||
"textures/132B50_18C58.rgba16.ci8.png": {"meta":{"dims":[64,32], "pal":"0x17258"}, "offsets": {"us":["0x132B50", "0x18C58"]}},
|
||||
"textures/132B50_19458_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x19458"]}},
|
||||
"textures/132B50_19658.rgba16.ci8.png": {"meta":{"dims":[16,16], "pal":"0x19458"}, "offsets": {"us":["0x132B50", "0x19658"]}},
|
||||
"textures/132B50_19758.rgba16.ci8.png": {"meta":{"dims":[16,16], "pal":"0x19458"}, "offsets": {"us":["0x132B50", "0x19758"]}},
|
||||
"textures/132B50_19858.rgba16.ci8.png": {"meta":{"dims":[16,16], "pal":"0x19458"}, "offsets": {"us":["0x132B50", "0x19858"]}},
|
||||
|
|
@ -12166,6 +12176,7 @@
|
|||
"textures/132B50_19B58.rgba16.ci8.png": {"meta":{"dims":[16,16], "pal":"0x19458"}, "offsets": {"us":["0x132B50", "0x19B58"]}},
|
||||
"textures/132B50_19C58.rgba16.ci8.png": {"meta":{"dims":[16,16], "pal":"0x19458"}, "offsets": {"us":["0x132B50", "0x19C58"]}},
|
||||
"textures/132B50_19D58.rgba16.ci8.png": {"meta":{"dims":[16,16], "pal":"0x19458"}, "offsets": {"us":["0x132B50", "0x19D58"]}},
|
||||
"textures/132B50_19E58_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x19E58"]}},
|
||||
"textures/132B50_1A058.rgba16.ci8.png": {"meta":{"dims":[8,8], "pal":"0x19E58"}, "offsets": {"us":["0x132B50", "0x1A058"]}},
|
||||
"textures/132B50_1A098.rgba16.ci8.png": {"meta":{"dims":[8,8], "pal":"0x19E58"}, "offsets": {"us":["0x132B50", "0x1A098"]}},
|
||||
"textures/132B50_1A0D8.rgba16.ci8.png": {"meta":{"dims":[8,8], "pal":"0x19E58"}, "offsets": {"us":["0x132B50", "0x1A0D8"]}},
|
||||
|
|
@ -12177,6 +12188,17 @@
|
|||
"textures/132B50_1A258.rgba16.ci8.png": {"meta":{"dims":[8,8], "pal":"0x19E58"}, "offsets": {"us":["0x132B50", "0x1A258"]}},
|
||||
"textures/132B50_1A298.rgba16.ci8.png": {"meta":{"dims":[8,8], "pal":"0x19E58"}, "offsets": {"us":["0x132B50", "0x1A298"]}},
|
||||
"textures/132B50_1A2D8.ia4.png": {"meta":{"dims":[32,32]}, "offsets": {"us":["0x132B50", "0x1A2D8"]}},
|
||||
|
||||
"textures/132B50_1A4D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1A4D8"]}},
|
||||
"textures/132B50_1A6D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1A6D8"]}},
|
||||
"textures/132B50_1A8D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1A8D8"]}},
|
||||
"textures/132B50_1AAD8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1AAD8"]}},
|
||||
"textures/132B50_1ACD8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1ACD8"]}},
|
||||
"textures/132B50_1AED8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1AED8"]}},
|
||||
"textures/132B50_1B0D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1B0D8"]}},
|
||||
"textures/132B50_1B2D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1B2D8"]}},
|
||||
"textures/132B50_1B4D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1B4D8"]}},
|
||||
|
||||
"textures/132B50_1B6D8.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x1A4D8"}, "offsets": {"us":["0x132B50", "0x1B6D8"]}},
|
||||
"textures/132B50_1BAD8.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x1A6D8"}, "offsets": {"us":["0x132B50", "0x1BAD8"]}},
|
||||
"textures/132B50_1BED8.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x1A8D8"}, "offsets": {"us":["0x132B50", "0x1BED8"]}},
|
||||
|
|
@ -12187,6 +12209,25 @@
|
|||
"textures/132B50_1D2D8.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x1B2D8"}, "offsets": {"us":["0x132B50", "0x1D2D8"]}},
|
||||
"textures/132B50_1D6D8.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x1B4D8"}, "offsets": {"us":["0x132B50", "0x1D6D8"]}},
|
||||
"textures/132B50_1DAD8.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x1B4D8"}, "offsets": {"us":["0x132B50", "0x1DAD8"]}},
|
||||
"textures/132B50_1DAD8.rgba16.ci8.bin": {"meta":{"size":"0x400"}, "offsets": {"us":["0x132B50", "0x1DAD8"]}},
|
||||
|
||||
"textures/132B50_1DED8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1DED8"]}},
|
||||
"textures/132B50_1E0D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1E0D8"]}},
|
||||
"textures/132B50_1E2D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1E2D8"]}},
|
||||
"textures/132B50_1E4D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1E4D8"]}},
|
||||
"textures/132B50_1E6D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1E6D8"]}},
|
||||
"textures/132B50_1E8D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1E8D8"]}},
|
||||
"textures/132B50_1EAD8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1EAD8"]}},
|
||||
"textures/132B50_1ECD8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1ECD8"]}},
|
||||
"textures/132B50_1EED8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1EED8"]}},
|
||||
"textures/132B50_1F0D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1F0D8"]}},
|
||||
"textures/132B50_1F2D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1F2D8"]}},
|
||||
"textures/132B50_1F4D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1F4D8"]}},
|
||||
"textures/132B50_1F6D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1F6D8"]}},
|
||||
"textures/132B50_1F8D8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1F8D8"]}},
|
||||
"textures/132B50_1FAD8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1FAD8"]}},
|
||||
"textures/132B50_1FCD8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x1FCD8"]}},
|
||||
|
||||
"textures/132B50_1FED8.rgba16.ci8.png": {"meta":{"dims":[40,32], "pal":"0x1DED8"}, "offsets": {"us":["0x132B50", "0x1FED8"]}},
|
||||
"textures/132B50_203D8.rgba16.ci8.png": {"meta":{"dims":[40,32], "pal":"0x1E0D8"}, "offsets": {"us":["0x132B50", "0x203D8"]}},
|
||||
"textures/132B50_208D8.rgba16.ci8.png": {"meta":{"dims":[40,32], "pal":"0x1E2D8"}, "offsets": {"us":["0x132B50", "0x208D8"]}},
|
||||
|
|
@ -12203,24 +12244,33 @@
|
|||
"textures/132B50_23FD8.rgba16.ci8.png": {"meta":{"dims":[40,32], "pal":"0x1F8D8"}, "offsets": {"us":["0x132B50", "0x23FD8"]}},
|
||||
"textures/132B50_244D8.rgba16.ci8.png": {"meta":{"dims":[40,32], "pal":"0x1FAD8"}, "offsets": {"us":["0x132B50", "0x244D8"]}},
|
||||
"textures/132B50_249D8.rgba16.ci8.png": {"meta":{"dims":[40,32], "pal":"0x1FCD8"}, "offsets": {"us":["0x132B50", "0x249D8"]}},
|
||||
"textures/132B50_260D8.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x260D8"]}},
|
||||
"textures/132B50_26558.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x26558"]}},
|
||||
"textures/132B50_269D8.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x269D8"]}},
|
||||
"textures/132B50_26E58.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x26E58"]}},
|
||||
"textures/132B50_272D8.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x272D8"]}},
|
||||
"textures/132B50_27758.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x27758"]}},
|
||||
"textures/132B50_27BD8.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x27BD8"]}},
|
||||
"textures/132B50_28058.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x28058"]}},
|
||||
"textures/132B50_284D8.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x284D8"]}},
|
||||
"textures/132B50_28958.rgba16.ci8.png": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x28958"]}},
|
||||
"textures/132B50_24ED8_tlut.rgba16.bin": {"meta":{"size":"0x1000"}, "offsets": {"us":["0x132B50", "0x24ED8"]}},
|
||||
"textures/132B50_25ED8_tlut.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x25ED8"]}},
|
||||
|
||||
"textures/132B50_260D8.rgba16.ci8.bin": {"meta":{"size":"0x480"}, "offsets": {"us":["0x132B50", "0x260D8"]}},
|
||||
"textures/132B50_26558.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x26558"]}},
|
||||
"textures/132B50_269D8.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x269D8"]}},
|
||||
"textures/132B50_26E58.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x26E58"]}},
|
||||
"textures/132B50_272D8.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x272D8"]}},
|
||||
"textures/132B50_27758.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x27758"]}},
|
||||
"textures/132B50_27BD8.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x27BD8"]}},
|
||||
"textures/132B50_28058.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x28058"]}},
|
||||
"textures/132B50_284D8.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x284D8"]}},
|
||||
"textures/132B50_28958.rgba16.ci8.bin": {"meta":{"dims":[24,48], "pal":"0x25ED8"}, "offsets": {"us":["0x132B50", "0x28958"]}},
|
||||
"textures/132B50_28DD8.rgba16.png": {"meta":{"dims":[32,16]}, "offsets": {"us":["0x132B50", "0x28DD8"]}},
|
||||
"textures/132B50_291D8.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x291D8"]}},
|
||||
"textures/132B50_293D8.i8.png": {"meta":{"dims":[8,16]}, "offsets": {"us":["0x132B50", "0x293D8"]}},
|
||||
|
||||
"textures/132B50_293D8.i4.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x293D8"]}},
|
||||
"textures/132B50_29458.i8.png": {"meta":{"dims":[32,32]}, "offsets": {"us":["0x132B50", "0x29458"]}},
|
||||
|
||||
|
||||
"textures/132B50_29858.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x2A858"}, "offsets": {"us":["0x132B50", "0x29858"]}},
|
||||
"textures/132B50_29C58.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x2A858"}, "offsets": {"us":["0x132B50", "0x29C58"]}},
|
||||
"textures/132B50_2A058.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x2A858"}, "offsets": {"us":["0x132B50", "0x2A058"]}},
|
||||
"textures/132B50_2A458.rgba16.ci8.png": {"meta":{"dims":[32,32], "pal":"0x2A858"}, "offsets": {"us":["0x132B50", "0x2A458"]}},
|
||||
"textures/132B50_29C58.rgba16.ci8.bin": {"meta":{"size":"0x400"}, "offsets": {"us":["0x132B50", "0x29C58"]}},
|
||||
"textures/132B50_2A058.rgba16.ci8.bin": {"meta":{"size":"0x400"}, "offsets": {"us":["0x132B50", "0x2A058"]}},
|
||||
"textures/132B50_2A458.rgba16.ci8.bin": {"meta":{"size":"0x400"}, "offsets": {"us":["0x132B50", "0x2A458"]}},
|
||||
|
||||
"textures/132B50_2A858_tlut.rgba16.bin": {"meta":{"size":"0x200"}, "offsets": {"us":["0x132B50", "0x2A858"]}},
|
||||
|
||||
"textures/132B50_2AA58.rgba16.png": {"meta":{"dims":[16,16]}, "offsets": {"us":["0x132B50", "0x2AA58"]}},
|
||||
"textures/132B50_2AC58.i8.png": {"meta":{"dims":[32,32]}, "offsets": {"us":["0x132B50", "0x2AC58"]}},
|
||||
"textures/132B50_2B058.i8.png": {"meta":{"dims":[32,32]}, "offsets": {"us":["0x132B50", "0x2B058"]}},
|
||||
|
|
|
|||
|
|
@ -1,9 +0,0 @@
|
|||
# Mario Kart 64 (U) disassembly and split file
|
||||
# generated by n64split v0.4a - N64 ROM splitter
|
||||
|
||||
.include "macros.inc"
|
||||
|
||||
.data
|
||||
|
||||
.align 2, 0x00
|
||||
.incbin "bin/common_textures.mio0"
|
||||
|
|
@ -14,35 +14,35 @@
|
|||
|
||||
#glabel D_802B8CE8
|
||||
#.word 0xbc000002, 0x80000040
|
||||
glabel D_802B8CF0
|
||||
.word 0xb7000000, 0x00002000
|
||||
glabel D_802B8CF8
|
||||
.word 0xb6000000, 0x00002000
|
||||
glabel D_802B8D00
|
||||
.word 0xbe000000, 0x00000140
|
||||
glabel D_802B8D08
|
||||
.word 0xfc121824, 0xff33ffff
|
||||
glabel D_802B8D10
|
||||
.word 0xfc127e24, 0xfffff3f9
|
||||
glabel D_802B8D18
|
||||
.word 0xfcffffff, 0xfffe793c
|
||||
glabel D_802B8D20
|
||||
.word 0xfc127e24, 0xfffff3f9
|
||||
glabel D_802B8D28
|
||||
.word 0xfcffffff, 0xfffcf279
|
||||
#glabel D_802B8CF0
|
||||
#.word 0xb7000000, 0x00002000
|
||||
#glabel D_802B8CF8
|
||||
#.word 0xb6000000, 0x00002000
|
||||
#glabel D_802B8D00
|
||||
#.word 0xbe000000, 0x00000140
|
||||
#glabel D_802B8D08
|
||||
#.word 0xfc121824, 0xff33ffff
|
||||
#glabel D_802B8D10
|
||||
#.word 0xfc127e24, 0xfffff3f9
|
||||
#glabel D_802B8D18
|
||||
#.word 0xfcffffff, 0xfffe793c
|
||||
#glabel D_802B8D20
|
||||
#.word 0xfc127e24, 0xfffff3f9
|
||||
#glabel D_802B8D28
|
||||
#.word 0xfcffffff, 0xfffcf279
|
||||
|
||||
glabel D_802B8D30
|
||||
.word 0xb900031d, 0x00552078
|
||||
glabel D_802B8D38
|
||||
.word 0xb900031d, 0x00553078
|
||||
glabel D_802B8D40
|
||||
.word 0xb900031d, 0x005049d8
|
||||
glabel D_802B8D48
|
||||
.word 0xb900031d, 0x00442d58
|
||||
glabel D_802B8D50
|
||||
.word 0xb900031d, 0x00404dd8
|
||||
glabel D_802B8D58
|
||||
.word 0xe8000000, 0x00000000
|
||||
#glabel D_802B8D30
|
||||
#.word 0xb900031d, 0x00552078
|
||||
#glabel D_802B8D38
|
||||
#.word 0xb900031d, 0x00553078
|
||||
#glabel D_802B8D40
|
||||
#.word 0xb900031d, 0x005049d8
|
||||
#glabel D_802B8D48
|
||||
#.word 0xb900031d, 0x00442d58
|
||||
#glabel D_802B8D50
|
||||
#.word 0xb900031d, 0x00404dd8
|
||||
#glabel D_802B8D58
|
||||
#.word 0xe8000000, 0x00000000
|
||||
glabel D_802B8D60
|
||||
.word 0xe8000000, 0x00000000
|
||||
glabel D_802B8D68
|
||||
|
|
|
|||
|
|
@ -59,34 +59,38 @@ glabel D_80284E94
|
|||
.word 0x00000000
|
||||
|
||||
glabel D_80284ED0
|
||||
.word 0x01020304, 0x05060700, 0x00000000, 0x00000000
|
||||
.word 0xBA001402, 0x00000000, 0xBA001701, 0x00800000
|
||||
.word 0xBA001001, 0x00000000, 0xBA000E02, 0x00000000
|
||||
.word 0xBA001102, 0x00000000, 0xBA001301, 0x00080000
|
||||
.word 0xBA000C02, 0x00002000, 0xBA000903, 0x00000C00
|
||||
.word 0xBA000801, 0x00000000, 0xB9000002, 0x00000000
|
||||
.word 0xBA000602, 0x000000C0, 0xBA000602, 0x00000000
|
||||
.word 0xB900031D, 0x0F0A4000, 0xFCFFFFFF, 0xFFFE793C
|
||||
.word 0xB6000000, 0x001F3000, 0xB7000000, 0x00000204
|
||||
.word 0xBB000000, 0x00000000, 0xB8000000, 0x00000000
|
||||
.word 0xFC121824, 0xFF33FFFF, 0xB900031D, 0x00552078
|
||||
.word 0xBB000001, 0xFFFFFFFF, 0x06000000, 0x070067E8
|
||||
.word 0x06000000, 0x0700AEF8, 0x06000000, 0x07001438
|
||||
.word 0x06000000, 0x0700A970, 0x06000000, 0x07000CE0
|
||||
.word 0x06000000, 0x07000E88, 0x06000000, 0x0700A618
|
||||
.word 0x06000000, 0x0700AC30, 0x06000000, 0x07003728
|
||||
.word 0x06000000, 0x070036B8, 0x06000000, 0x07003628
|
||||
.word 0x06000000, 0x07003540, 0x06000000, 0x07003DC0
|
||||
.word 0x06000000, 0x07003E50, 0x06000000, 0x07003F18
|
||||
.word 0x06000000, 0x070050B0, 0x06000000, 0x07005138
|
||||
.word 0x06000000, 0x070055D0, 0x06000000, 0x07005B50
|
||||
.word 0x06000000, 0x07005C00, 0x06000000, 0x07005D18
|
||||
.word 0x06000000, 0x07005DC8, 0x06000000, 0x07005EF8
|
||||
.word 0x06000000, 0x07005740, 0x06000000, 0x070057F0
|
||||
.word 0x06000000, 0x070058E8, 0x06000000, 0x07001788
|
||||
.word 0x06000000, 0x07001AA0, 0x06000000, 0x07001A30
|
||||
.word 0x06000000, 0x070023F8, 0x06000000, 0x07002478
|
||||
.word 0x06000000, 0x07003790, 0xFC127E24, 0xFFFFF3F9
|
||||
.word 0xB900031D, 0x00553078, 0x06000000, 0x070006D0
|
||||
.word 0x06000000, 0x070004D0, 0x06000000, 0x07000840
|
||||
.word 0xB8000000
|
||||
.word 0x01020304, 0x05060700,
|
||||
|
||||
#.word 0x00000000 # padding
|
||||
|
||||
# start of DLs see 128480.bin
|
||||
#.word 0xBA001402, 0x00000000, 0xBA001701, 0x00800000
|
||||
#.word 0xBA001001, 0x00000000, 0xBA000E02, 0x00000000
|
||||
#.word 0xBA001102, 0x00000000, 0xBA001301, 0x00080000
|
||||
#.word 0xBA000C02, 0x00002000, 0xBA000903, 0x00000C00
|
||||
#.word 0xBA000801, 0x00000000, 0xB9000002, 0x00000000
|
||||
#.word 0xBA000602, 0x000000C0, 0xBA000602, 0x00000000
|
||||
#.word 0xB900031D, 0x0F0A4000, 0xFCFFFFFF, 0xFFFE793C
|
||||
#.word 0xB6000000, 0x001F3000, 0xB7000000, 0x00000204
|
||||
#.word 0xBB000000, 0x00000000, 0xB8000000, 0x00000000
|
||||
#.word 0xFC121824, 0xFF33FFFF, 0xB900031D, 0x00552078
|
||||
#.word 0xBB000001, 0xFFFFFFFF, 0x06000000, 0x070067E8
|
||||
#.word 0x06000000, 0x0700AEF8, 0x06000000, 0x07001438
|
||||
#.word 0x06000000, 0x0700A970, 0x06000000, 0x07000CE0
|
||||
#.word 0x06000000, 0x07000E88, 0x06000000, 0x0700A618
|
||||
#.word 0x06000000, 0x0700AC30, 0x06000000, 0x07003728
|
||||
#.word 0x06000000, 0x070036B8, 0x06000000, 0x07003628
|
||||
#.word 0x06000000, 0x07003540, 0x06000000, 0x07003DC0
|
||||
#.word 0x06000000, 0x07003E50, 0x06000000, 0x07003F18
|
||||
#.word 0x06000000, 0x070050B0, 0x06000000, 0x07005138
|
||||
#.word 0x06000000, 0x070055D0, 0x06000000, 0x07005B50
|
||||
#.word 0x06000000, 0x07005C00, 0x06000000, 0x07005D18
|
||||
#.word 0x06000000, 0x07005DC8, 0x06000000, 0x07005EF8
|
||||
#.word 0x06000000, 0x07005740, 0x06000000, 0x070057F0
|
||||
#.word 0x06000000, 0x070058E8, 0x06000000, 0x07001788
|
||||
#.word 0x06000000, 0x07001AA0, 0x06000000, 0x07001A30
|
||||
#.word 0x06000000, 0x070023F8, 0x06000000, 0x07002478
|
||||
#.word 0x06000000, 0x07003790, 0xFC127E24, 0xFFFFF3F9
|
||||
#.word 0xB900031D, 0x00553078, 0x06000000, 0x070006D0
|
||||
#.word 0x06000000, 0x070004D0, 0x06000000, 0x07000840
|
||||
#.word 0xB8000000
|
||||
|
|
|
|||
|
|
@ -190,10 +190,15 @@ def main():
|
|||
print("extracting", asset)
|
||||
if "size" in meta:
|
||||
# TODO: hack for extracting raw binary from MIO0 block
|
||||
if magic == b"MIO0":
|
||||
# hack to build common_textures. Requires more altering to use .bin in general in a mio0 file.
|
||||
if assets[0][0].endswith(".bin") and rom_offset == int("0x132B50", 16):
|
||||
size = int(meta["size"], 0)
|
||||
elif magic == b"MIO0":
|
||||
|
||||
size = len(image)
|
||||
else:
|
||||
size = int(meta["size"], 0)
|
||||
|
||||
elif "dims" in meta:
|
||||
w, h = meta["dims"]
|
||||
pixels = w * h
|
||||
|
|
|
|||
|
|
@ -2172,30 +2172,27 @@ typedef union {
|
|||
_g->words.w1 = __gsSP1Quadrangle_w2f(v0, v1, v2, v3, flag); \
|
||||
}
|
||||
|
||||
// unmodified gsSP1Quadrangle
|
||||
#ifdef NON_MATCHING_GBI
|
||||
// Unmodified gsSP1Quadrangle
|
||||
#define gsSP1Quadrangle(v0, v1, v2, v3, flag) \
|
||||
{{ \
|
||||
(_SHIFTL(G_TRI2, 24, 8)| \
|
||||
__gsSP1Quadrangle_w1f(v0, v1, v2, v3, flag)), \
|
||||
__gsSP1Quadrangle_w2f(v0, v1, v2, v3, flag) \
|
||||
}}
|
||||
#else
|
||||
/**
|
||||
* Modified to match startup_logo.inc.c
|
||||
* Likely due to a development version of gbi.h
|
||||
*/
|
||||
#define __mk_gsSP1Triangle_w1(v0, v1, v2, v3) \
|
||||
(_SHIFTL((v3)*2,24,8)|_SHIFTL((v0)*2,16,8)|_SHIFTL((v1)*2,8,8)|_SHIFTL((v2)*2,0,8))
|
||||
(_SHIFTL((v3)*2,24,8)|_SHIFTL((v0)*2,16,8)|\
|
||||
_SHIFTL((v1)*2,8,8)|_SHIFTL((v2)*2,0,8))
|
||||
|
||||
#define gsSP1Quadrangle(v0, v1, v2, v3) \
|
||||
#define mk_gsSP1Quadrangle(v0, v1, v2, v3) \
|
||||
{{ \
|
||||
_SHIFTL(G_QUAD, 24, 8), \
|
||||
__mk_gsSP1Triangle_w1(v0, v1, v2, v3) \
|
||||
}}
|
||||
|
||||
#endif /* NON_MATCHING */
|
||||
|
||||
#endif /* F3DEX_GBI_2 */
|
||||
|
||||
#if (defined(F3DLP_GBI)||defined(F3DEX_GBI))
|
||||
|
|
|
|||
5
mk64.ld
5
mk64.ld
|
|
@ -320,7 +320,7 @@ SECTIONS
|
|||
|
||||
BEGIN_NOLOAD(code_8028DF00) {
|
||||
BUILD_DIR/src/code_8028DF00.o(.bss);
|
||||
BUILD_DIR/asm/bss_8028DF00.o(.bss);
|
||||
BUILD_DIR/src/code_80296A50.o(.bss);
|
||||
BUILD_DIR/src/memory.o(.bss);
|
||||
BUILD_DIR/src/framebuffers.o(.bss*);
|
||||
BUILD_DIR/src/audio/synthesis.o(.bss*);
|
||||
|
|
@ -346,6 +346,7 @@ SECTIONS
|
|||
BUILD_DIR/src/code_80281FA0.o(.text);
|
||||
BUILD_DIR/src/code_80280650.o(.data);
|
||||
BUILD_DIR/data/data_credits_128480.o(.data);
|
||||
BUILD_DIR/src/dl_unk_80284EE0.inc.o(.data);
|
||||
BUILD_DIR/src/credits_01.inc.o(.data);
|
||||
BUILD_DIR/data/data_credits_128480_1.o(.data);
|
||||
}
|
||||
|
|
@ -377,7 +378,7 @@ SECTIONS
|
|||
/* common textures, decompressed and set as segment 0x0D */
|
||||
BEGIN_SEG(common_textures, 0x0D000000)
|
||||
{
|
||||
BUILD_DIR/data/common_textures.mio0.o(.data);
|
||||
BUILD_DIR/src/common_textures.inc.mio0.o(.data);
|
||||
. = ALIGN(0x10);
|
||||
}
|
||||
END_SEG(common_textures)
|
||||
|
|
|
|||
|
|
@ -12,4 +12,4 @@ u32 func_802B5224();
|
|||
|
||||
/* This is where I'd put my static data, if I had any */
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
#include "types.h"
|
||||
#include "variables.h"
|
||||
#include <defines.h>
|
||||
#include <config.h>
|
||||
|
||||
#include "code_80281780.h"
|
||||
|
||||
|
|
@ -10,6 +11,18 @@ extern Camera cameras[];
|
|||
|
||||
extern s32 gPrevLoadedAddress;
|
||||
|
||||
/*
|
||||
extern Gfx D_070067E8[];
|
||||
extern Gfx D_0700AEF8[];
|
||||
extern Gfx D_0700A970[];
|
||||
extern Gfx D_0700AC30[];
|
||||
extern Gfx D_07000CE0[];
|
||||
extern Gfx D_07000E88[];
|
||||
extern Gfx D_0700A618[];
|
||||
extern Gfx D_070023F8[];
|
||||
extern Gfx D_07002478[];
|
||||
*/
|
||||
|
||||
// unk4 is buttonDown?
|
||||
void func_80281780(void) {
|
||||
if (gEnableDebugMode != 0) {
|
||||
|
|
@ -86,8 +99,8 @@ void load_ending_sequence_royalraceway(void) {
|
|||
func_802A74BC();
|
||||
camera->unk30 = 60.0f;
|
||||
D_80150130[0] = 60.0f;
|
||||
D_800DC5EC->screenWidth = 320;
|
||||
D_800DC5EC->screenHeight = 240;
|
||||
D_800DC5EC->screenWidth = SCREEN_WIDTH;
|
||||
D_800DC5EC->screenHeight = SCREEN_HEIGHT;
|
||||
D_800DC5EC->screenStartX = 160;
|
||||
D_800DC5EC->screenStartY = 120;
|
||||
gScreenModeSelection = SCREEN_MODE_1P;
|
||||
|
|
@ -115,6 +128,8 @@ void load_ending_sequence_royalraceway(void) {
|
|||
D_800DC5BC = (u16)0;
|
||||
D_800DC5C8 = (u16)0;
|
||||
D_8015F580 = (s32) gPrevLoadedAddress;
|
||||
// @bug these segmented addresses need to be symbols for mobility
|
||||
// This syntax is required to match
|
||||
func_802AF5AC(0x70067E8, -1);
|
||||
func_802AF5AC(0x700AEF8, -1);
|
||||
func_802AF5AC(0x700A970, 8);
|
||||
|
|
|
|||
|
|
@ -51,20 +51,20 @@ void func_80282048(void) {
|
|||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
? func_80282008(f32 *); // extern
|
||||
// ? func_80282008(f32 *); // extern
|
||||
f32 sins(u16); // extern
|
||||
f32 coss(s32); // extern
|
||||
f32 coss(u16); // extern
|
||||
|
||||
void func_80282050(Vec3f arg0, UNUSED f32 arg1, u16 arg2) {
|
||||
f32 sp2C;
|
||||
f32 sp28;
|
||||
UNUSED void func_80282050(Vec3f arg0, UNUSED f32 arg1, u16 arg2) {
|
||||
Vec3f sp20;
|
||||
Vec3f sp30;
|
||||
// f32 sp28 = sins(arg2);
|
||||
|
||||
func_80282008(&sp2C);
|
||||
sp28 = sins(arg2);
|
||||
arg0[0] = (coss(arg2 & 0xFFFF) * sp2C) + (sp34 * sp28);
|
||||
arg0[1] = sp30;
|
||||
sp28 = coss(arg2 & 0xFFFF);
|
||||
arg0[2] = (sp34 * sp28) - (sins(arg2 & 0xFFFF) * sp2C);
|
||||
func_80282008(arg0, sp30);
|
||||
arg0[0] = (coss(arg2 & 0xFFFF) * sp20[2]) + (sp30[1] * sins(arg2));
|
||||
arg0[1] = sp30[0];
|
||||
// sp28 = coss(arg2 & 0xFFFF);
|
||||
arg0[2] = (sp30[1] * coss(arg2 & 0xFFFF)) - (sins(arg2 & 0xFFFF) * sp20[2]);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_80281FA0/func_80282050.s")
|
||||
|
|
@ -73,10 +73,10 @@ GLOBAL_ASM("asm/non_matchings/code_80281FA0/func_80282050.s")
|
|||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
? func_80282008(f32 *); // extern
|
||||
f32 sins(s32); // extern
|
||||
f32 sins(u16); // extern
|
||||
f32 coss(u16); // extern
|
||||
|
||||
void func_802820F8(void *arg0, u16 arg2) {
|
||||
UNUSED void func_802820F8(void *arg0, u16 arg2) {
|
||||
f32 sp2C;
|
||||
f32 sp28;
|
||||
|
||||
|
|
@ -91,12 +91,13 @@ void func_802820F8(void *arg0, u16 arg2) {
|
|||
GLOBAL_ASM("asm/non_matchings/code_80281FA0/func_802820F8.s")
|
||||
#endif
|
||||
|
||||
s32 func_802821A0(f32* arg0, f32 arg1, f32 arg2) {
|
||||
// Called just before fish shoots trophy at awards cutscene.
|
||||
s32 func_802821A0(f32 *arg0, f32 arg1, f32 arg2) {
|
||||
if (arg2 > 1.0f) {
|
||||
arg2 = 1.0f;
|
||||
}
|
||||
|
||||
*arg0 = *arg0 + ((arg1 - *arg0) * arg2);
|
||||
*arg0 = *arg0 + ((arg1 - *arg0) * arg2);
|
||||
|
||||
if (arg1 == *arg0) {
|
||||
return 0;
|
||||
|
|
@ -227,7 +228,7 @@ GLOBAL_ASM("asm/non_matchings/code_80281FA0/func_80282454.s")
|
|||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
f32 sins(u16); // extern
|
||||
f32 coss(s32); // extern
|
||||
f32 coss(u16); // extern
|
||||
|
||||
void func_80282504(void *arg0, void *arg1, f32 arg2, s32 arg3, u16 arg4) {
|
||||
f32 sp24;
|
||||
|
|
@ -801,7 +802,7 @@ GLOBAL_ASM("asm/non_matchings/code_80281FA0/func_80283430.s")
|
|||
s32 func_8028336C(? *, ? *); // extern
|
||||
? func_80283428(); // extern
|
||||
? func_80284AE8(? *); // extern
|
||||
f32 sins(f32, s32); // extern
|
||||
f32 sins(u16); // extern
|
||||
f32 coss(u16); // extern
|
||||
extern s32 D_802876D8;
|
||||
extern ? D_802876E0;
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@ s32 func_802B4FF8(Mat4, s32);
|
|||
void func_802B5F74(Mat4, Vec3f, Vec3s);
|
||||
void func_802B5F00(Mat4, f32);
|
||||
|
||||
void mtxf_translate(Mat4, Vec3f); /* extern */
|
||||
void func_802B52BC(Vec3s, s16, s16, s16);
|
||||
void load_giant_egg(Vec3f, f32, f32, f32);
|
||||
s16 func_8029EC88(Vec3f, Vec3s, Vec3f, s16);
|
||||
extern struct Actor *D_802BA05C;
|
||||
|
||||
extern Player gPlayers[];
|
||||
extern Player *gPlayerOne;
|
||||
|
|
@ -37,6 +37,20 @@ extern f32 D_80150130[];
|
|||
extern u16 D_801637B8[];
|
||||
extern Lights1 D_800DC610[];
|
||||
|
||||
extern f32 gCourseDirection;
|
||||
|
||||
extern uintptr_t gSegmentTable[];
|
||||
|
||||
extern s8 D_0D004E38[];
|
||||
|
||||
s32 D_802BA050;
|
||||
s32 D_802BA054;
|
||||
s32 D_802BA058;
|
||||
struct Actor *D_802BA05C;
|
||||
s8 D_802BA060[512]; // tlut 256
|
||||
u16 D_802BA260;
|
||||
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
? func_8000EE58(u16, void *, u16, s32); /* extern */
|
||||
|
|
@ -423,70 +437,77 @@ void func_802972B8(Camera *arg0, struct Actor *arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
s32 func_802B4FF8(? *, ?); /* extern */
|
||||
? mtxf_translate(? *, ? *); /* extern */
|
||||
extern ? D_0D001C20;
|
||||
extern ? D_0D001C88;
|
||||
extern s8 D_0D001C20[];
|
||||
extern s8 D_0D001C88[];
|
||||
extern s8 D_0D001B90[];
|
||||
extern s8 D_0D001BD8[];
|
||||
extern s32 D_800DC50C;
|
||||
extern ? D_8015F8D0;
|
||||
extern Vec3f D_8015F8D0;
|
||||
extern s32 D_801625EC;
|
||||
extern s32 D_801625F0;
|
||||
extern s32 D_801625F4;
|
||||
|
||||
static u16 D_800DC5BC; /* type too large by 2; unable to generate initializer */
|
||||
extern u16 D_800DC5BC;
|
||||
|
||||
void func_80297340(Camera *arg0) {
|
||||
? sp38;
|
||||
s16 sp36;
|
||||
void *temp_v0;
|
||||
void *temp_v0_2;
|
||||
void *temp_v0_3;
|
||||
void *temp_v0_4;
|
||||
void *temp_v0_5;
|
||||
void *temp_v0_6;
|
||||
Mat4 sp38;
|
||||
s16 temp = D_8015F8D0[2];
|
||||
|
||||
sp36 = D_8015F8D0.unk8;
|
||||
if ((D_800DC50C != CREDITS_SEQUENCE) && (mtxf_translate(&sp38, &D_8015F8D0), (func_802B4FF8(&sp38, 0) != 0))) {
|
||||
if (sp36 < arg0->unk_08) {
|
||||
if (D_800DC5BC != 0) {
|
||||
temp_v0 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0 + 8;
|
||||
temp_v0->unk0 = 0xF8000000;
|
||||
temp_v0->unk_04 = (D_801625EC << 0x18) | ((D_801625F4 & 0xFF) << 0x10) | ((D_801625F0 & 0xFF) << 8) | 0xFF;
|
||||
temp_v0_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_2 + 8;
|
||||
temp_v0_2->unk0 = 0x6000000;
|
||||
temp_v0_2->unk_04 = &D_0D001C20;
|
||||
return;
|
||||
}
|
||||
temp_v0_3 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_3 + 8;
|
||||
temp_v0_3->unk_04 = 0xD001B90;
|
||||
temp_v0_3->unk0 = 0x6000000;
|
||||
return;
|
||||
}
|
||||
if (D_800DC50C == CREDITS_SEQUENCE) { return; }
|
||||
|
||||
mtxf_translate(sp38, D_8015F8D0);
|
||||
|
||||
if (func_802B4FF8(sp38, 0) == 0) { return; }
|
||||
|
||||
if (temp < arg0->pos[2]) {
|
||||
if (D_800DC5BC != 0) {
|
||||
temp_v0_4 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_4 + 8;
|
||||
temp_v0_4->unk0 = 0xF8000000;
|
||||
temp_v0_4->unk_04 = (D_801625EC << 0x18) | ((D_801625F4 & 0xFF) << 0x10) | ((D_801625F0 & 0xFF) << 8) | 0xFF;
|
||||
temp_v0_5 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_5 + 8;
|
||||
temp_v0_5->unk0 = 0x6000000;
|
||||
temp_v0_5->unk_04 = &D_0D001C88;
|
||||
return;
|
||||
|
||||
gDPSetFogColor(gDisplayListHead++, D_801625EC, D_801625F4, D_801625F0, 0xFF);
|
||||
gSPDisplayList(gDisplayListHead++, &D_0D001C20);
|
||||
} else {
|
||||
gSPDisplayList(gDisplayListHead++, &D_0D001B90);
|
||||
}
|
||||
temp_v0_6 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_6 + 8;
|
||||
temp_v0_6->unk_04 = 0xD001BD8;
|
||||
temp_v0_6->unk0 = 0x6000000;
|
||||
/* Duplicate return node #9. Try simplifying control flow for better match */
|
||||
} else if (D_800DC5BC != 0) {
|
||||
|
||||
gDPSetFogColor(gDisplayListHead++, D_801625EC, D_801625F4, D_801625F0, 0xFF);
|
||||
gSPDisplayList(gDisplayListHead++, &D_0D001C88);
|
||||
} else {
|
||||
gSPDisplayList(gDisplayListHead++, &D_0D001BD8);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// Possibly gDPLoadTextureBlock
|
||||
UNUSED void func_80297524(intptr_t addr, s32 a, s32 b) {
|
||||
gDPSetTextureImage(gDisplayListHead++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, addr);
|
||||
gDPSetTile(gDisplayListHead++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0x0000, G_TX_LOADTILE, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOLOD);
|
||||
gDPLoadSync(gDisplayListHead++);
|
||||
/*
|
||||
if (temp_t4 < 0x7FF) {
|
||||
phi_a0 = temp_t4;
|
||||
} else {
|
||||
phi_a0 = 0x7FF;
|
||||
}
|
||||
temp_t1 = arg1 * 2;
|
||||
temp_v0_4 = temp_t1 / 8;
|
||||
phi_t2 = temp_v0_4;
|
||||
if (temp_v0_4 <= 0) {
|
||||
phi_t2 = 1;
|
||||
}
|
||||
if (temp_v0_4 <= 0) {
|
||||
phi_t3 = 1;
|
||||
} else {
|
||||
phi_t3 = temp_v0_4;
|
||||
}
|
||||
*/
|
||||
|
||||
gDPLoadBlock(gDisplayListHead++, G_TX_LOADTILE, 0, 0, 0, 0);
|
||||
gDPPipeSync(gDisplayListHead++);
|
||||
gDPSetTile(gDisplayListHead++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0x0000, G_TX_RENDERTILE, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOLOD);
|
||||
gDPSetTileSize(gDisplayListHead++, G_TX_RENDERTILE, 0, 0, 0, 0);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/func_80297340.s")
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/func_80297524.s")
|
||||
#endif
|
||||
|
||||
void func_802976D8(Vec3s arg0) {
|
||||
|
|
@ -540,9 +561,11 @@ void func_802977E4(Player *arg0) {
|
|||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_0D004E38;
|
||||
extern s16 D_802BA060;
|
||||
extern ? gSegmentTable;
|
||||
//extern ? D_0D004E38;
|
||||
//extern s16 D_802BA060;
|
||||
//extern ? gSegmentTable;
|
||||
extern s8 D_0D004E38[];
|
||||
|
||||
|
||||
void func_80297818(void) {
|
||||
s16 *temp_v0;
|
||||
|
|
@ -555,11 +578,13 @@ void func_80297818(void) {
|
|||
s16 *phi_v1;
|
||||
s16 *phi_v0;
|
||||
s32 phi_a1;
|
||||
|
||||
phi_v1 = *(&gSegmentTable + ((&D_0D004E38 >> 0x18) * 4)) + (&D_0D004E38 & 0xFFFFFF) + 0x80000000;
|
||||
s32 i;
|
||||
phi_v1 = &gSegmentTable[D_0D004738[0] + D_0D004C68[0x1D0] & 0xFFFFFF] + 0x80000000;
|
||||
//phi_v1 = *(&gSegmentTable + ((&D_0D004E38 >> 0x18) * 4)) + (&D_0D004E38 & 0xFFFFFF) + 0x80000000;
|
||||
phi_v0 = &D_802BA060;
|
||||
phi_a1 = 0;
|
||||
do {
|
||||
for (i = 0; i < 100; i++) {
|
||||
//do {
|
||||
temp_a0 = *phi_v1;
|
||||
temp_a1 = phi_a1 + 4;
|
||||
temp_v1 = phi_v1 + 8;
|
||||
|
|
@ -574,7 +599,7 @@ void func_80297818(void) {
|
|||
phi_v1 = temp_v1;
|
||||
phi_v0 = temp_v0;
|
||||
phi_a1 = temp_a1;
|
||||
} while (temp_a1 != 0x100);
|
||||
} //while (temp_a1 != 0x100);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/func_80297818.s")
|
||||
|
|
@ -609,67 +634,47 @@ void func_802979F8(struct Actor *arg0, f32 arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit 685418adfeb3794409e47b45ac5cab60b17d23fd
|
||||
s32 func_802B4FF8(f32 (*)[4], ?); /* extern */
|
||||
f32 func_802B80D0(f32 *, u16, ?, f32, f32); /* extern */
|
||||
extern ? D_06013C00;
|
||||
extern ? D_06013CA0;
|
||||
extern ? D_06013D20;
|
||||
extern ? D_06013DA0;
|
||||
extern ? D_06013E20;
|
||||
extern ? D_80150130;
|
||||
static f32 D_802B95F8 = 4000000.0f;
|
||||
extern s8 D_06013C00[];
|
||||
extern s8 D_06013CA0[];
|
||||
extern s8 D_06013D20[];
|
||||
extern s8 D_06013DA0[];
|
||||
extern s8 D_06013E20[];
|
||||
extern f32 D_802B95F8;
|
||||
|
||||
void func_80297A50(Camera *camera, f32 (*arg1)[4], struct Actor *arg2) {
|
||||
Gfx *temp_v0;
|
||||
Gfx *temp_v0_2;
|
||||
Gfx *temp_v0_3;
|
||||
Gfx *temp_v0_4;
|
||||
Gfx *temp_v0_5;
|
||||
#ifdef MISSING_RODATA // jpt_802B95FC
|
||||
|
||||
void func_80297A50(Camera *camera, Mat4 arg1, struct Actor *arg2) {
|
||||
u16 temp_t0;
|
||||
f32 temp = func_802B80D0(camera->pos, arg2->unk18, camera->rotX[1], 0, D_80150130[camera - camera1], D_802B95F8);
|
||||
|
||||
if (!(func_802B80D0(arg2->pos, (u16) camera->rotX2, 0, *(&D_80150130 + (((s32) (camera - camera1) / 184) * 4)), D_802B95F8) < 0.0f) && (arg1->unk30 = (f32) arg2->pos[0], arg1->unk34 = (f32) arg2->pos[1], arg1->unk38 = (f32) arg2->pos[2], (func_802B4FF8(arg1, 0) != 0))) {
|
||||
temp_t0 = (u16) arg2->state;
|
||||
if (temp < 0.0f) { return; }
|
||||
|
||||
arg1[3][0] = arg2->unk18[0];
|
||||
arg1[3][1] = arg2->unk18[1];
|
||||
arg1[3][2] = arg2->unk18[2];
|
||||
|
||||
if (func_802B4FF8(arg1, 0) != 0) { return; }
|
||||
temp_t0 = arg2->unk6;
|
||||
switch (temp_t0) {
|
||||
case 0:
|
||||
temp_v0 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0 + 8;
|
||||
temp_v0->words.w0 = 0x06000000;
|
||||
temp_v0->words.w1 = (u32) &D_06013C00;
|
||||
return;
|
||||
case 1:
|
||||
temp_v0_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_2 + 8;
|
||||
temp_v0_2->words.w0 = 0x06000000;
|
||||
temp_v0_2->words.w1 = (u32) &D_06013CA0;
|
||||
return;
|
||||
case 2:
|
||||
temp_v0_3 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_3 + 8;
|
||||
temp_v0_3->words.w0 = 0x06000000;
|
||||
temp_v0_3->words.w1 = (u32) &D_06013D20;
|
||||
return;
|
||||
case 3:
|
||||
temp_v0_4 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_4 + 8;
|
||||
temp_v0_4->words.w0 = 0x06000000;
|
||||
temp_v0_4->words.w1 = (u32) &D_06013DA0;
|
||||
return;
|
||||
case 4:
|
||||
temp_v0_5 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_5 + 8;
|
||||
temp_v0_5->words.w0 = 0x06000000;
|
||||
temp_v0_5->words.w1 = (u32) &D_06013E20;
|
||||
break;
|
||||
case 0:
|
||||
gSPDisplayList(gDisplayListHead++, D_06013C00);
|
||||
break;
|
||||
case 1:
|
||||
gSPDisplayList(gDisplayListHead++, D_06013CA0);
|
||||
break;
|
||||
case 2:
|
||||
gSPDisplayList(gDisplayListHead++, D_06013D20);
|
||||
break;
|
||||
case 3:
|
||||
gSPDisplayList(gDisplayListHead++, D_06013DA0);
|
||||
break;
|
||||
case 4:
|
||||
gSPDisplayList(gDisplayListHead++, D_06013E20);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
default:
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/func_80297A50.s")
|
||||
#endif
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/func_80297A50.s")
|
||||
|
||||
extern f64 D_802B9610;
|
||||
|
||||
|
|
@ -707,7 +712,7 @@ void update_obj_trees_cacti_shrubs(struct Actor *arg0) {
|
|||
? func_800C9060(f32, f32, s32, ?, struct KiwanoFruit *, Player **); /* extern */
|
||||
s32 func_802ABD10(u16); /* extern */
|
||||
extern s32 D_80162DF8;
|
||||
extern ? D_80164438;
|
||||
extern u16 D_80164438;
|
||||
extern s32 D_80164490;
|
||||
static f32 D_802B9618 = 2.3f;
|
||||
static f32 D_802B961C = 0.7f;
|
||||
|
|
@ -733,6 +738,103 @@ void update_obj_kiwano_fruit(struct KiwanoFruit *fruit) {
|
|||
s32 temp_v0_2;
|
||||
struct KiwanoFruit *temp_a2;
|
||||
void *temp_v0;
|
||||
|
||||
/* old unfinished wip decomp
|
||||
u32 temp_t7 = arg0->unk4;
|
||||
Player *temp_v1 = &gPlayers[temp_t7];
|
||||
void *phi_a2;
|
||||
s16 phi_a0;
|
||||
void *phi_a2_2;
|
||||
void *phi_a2_3;
|
||||
|
||||
temp_a2 = arg0;
|
||||
phi_a2 = temp_a2;
|
||||
phi_a2_2 = temp_a2;
|
||||
phi_a2_3 = temp_a2;
|
||||
if (((temp_v1->unk_000 & 0x1000) != 0) || (temp_v1->unk_110.unk34 == 0)) {
|
||||
arg0->unk6 = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
switch(arg0->unk6) {
|
||||
case 0:
|
||||
//sp24 = temp_v1;
|
||||
//phi_a2 = arg0;
|
||||
if ((func_802ABD10(temp_v1->unk_110.unk3A, arg0) & 0xFF) == 8) {
|
||||
arg0->unk6 = 1;
|
||||
arg0->unk24[0] = 80.0f;
|
||||
break;
|
||||
case 1:
|
||||
temp_v0 = D_80164490 + D_80164438[(u16)(temp_v1 - gPlayerOne)];
|
||||
temp_f2 = temp_v1->pos - temp_v0->unk0;
|
||||
arg0 = phi_a2;
|
||||
sp20 = temp_f2;
|
||||
//sp24 = temp_t7 + &gPlayers;
|
||||
temp_f16 = (temp_t7 + &gPlayers)->unk18 - temp_v0->unk2;
|
||||
sp1C = temp_f16;
|
||||
temp_f14 = (temp_t7 + &gPlayers)->unk1C - temp_v0->unk4;
|
||||
sp18 = temp_f14;
|
||||
temp_a2_2 = arg0;
|
||||
temp_f18 = temp_a2_2->unk24;
|
||||
temp_f12 = temp_f18 / sqrtf((temp_f2 * temp_f2) + (temp_f16 * temp_f16) + (temp_f14 * temp_f14));
|
||||
temp_f2_2 = temp_f2 * temp_f12;
|
||||
temp_f16_2 = temp_f16 * temp_f12;
|
||||
temp_a2_2->unk18 = (temp_t7 + &gPlayers)->unk14 + temp_f2_2;
|
||||
temp_f14_2 = temp_f14 * temp_f12;
|
||||
temp_a2_2->unk1C = (temp_t7 + &gPlayers)->unk18 + temp_f16_2;
|
||||
temp_a2_2->unk24 = temp_f18 - 2.0f;
|
||||
temp_a2_2->unk20 = (temp_t7 + &gPlayers)->unk1C + temp_f14_2;
|
||||
phi_a2_3 = temp_a2_2;
|
||||
if (temp_a2_2->unk24 <= 0.0f) {
|
||||
temp_a2_2->unk6 = 2;
|
||||
temp_a2_2->unk8 = 30.0f;
|
||||
temp_a2_2->unk24 = 0.0f;
|
||||
temp_a2_2->unk28 = D_802B9618;
|
||||
temp_a2_2->unk2C = 0.0f;
|
||||
temp_v0_2 = (temp_t7 + &gPlayers)->unkBC;
|
||||
if ((temp_v0_2 & 0x200) != 0) {
|
||||
arg0 = temp_a2_2;
|
||||
func_800C9060((u8)(temp_t7 - gPlayerOne), 0x1900A052);
|
||||
phi_a2_3 = arg0;
|
||||
} else {
|
||||
temp_f12_2 = D_802B961C;
|
||||
(temp_t7 + &gPlayers)->unkBC = temp_v0_2 | 0x8000;
|
||||
(temp_t7 + &gPlayers)->unk14 = (temp_t7 + &gPlayers)->unk14 - (temp_f2_2 * 4.0f);
|
||||
(temp_t7 + &gPlayers)->unk1C = (temp_t7 + &gPlayers)->unk1C - (temp_f14_2 * 4.0f);
|
||||
(temp_t7 + &gPlayers)->unk34 = (temp_t7 + &gPlayers)->unk34 - (temp_f2_2 * temp_f12_2);
|
||||
(temp_t7 + &gPlayers)->unk3C = (temp_t7 + &gPlayers)->unk3C - (temp_f14_2 * temp_f12_2);
|
||||
arg0 = temp_a2_2;
|
||||
func_800C9060((u8)(temp_t7 - gPlayerOne), 0x19007018);
|
||||
phi_a2_3 = arg0;
|
||||
if (gModeSelection != GRAND_PRIX) {
|
||||
D_80162DF8 = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
arg0->unk24[1] -= D_802B9620;
|
||||
arg0->unk18[0] += arg0->unk24[0];
|
||||
arg0->unk18[1] += arg0->unk24[1];
|
||||
arg0->unk18[2] += arg0->unk24[2];
|
||||
arg0->unk8 = arg0->unk8 - 1.0f;
|
||||
if (arg0->unk8 < 0.0f) {
|
||||
arg0->unk6 = 0;
|
||||
}
|
||||
goto block_17;
|
||||
break;
|
||||
}
|
||||
phi_a0 = phi_a2_3->unk6;
|
||||
phi_a2_2 = phi_a2_3;
|
||||
|
||||
if (phi_a0 != 0) {
|
||||
phi_a2_2->unk12 = phi_a2_2->unk12 + 1;
|
||||
if (phi_a2_2->unk12 == 8) {
|
||||
phi_a2_2->unk12 = 0;
|
||||
phi_a2_2->unk10 = phi_a2_2->unk10 + 1;
|
||||
if (phi_a2_2->unk10 == 3) {
|
||||
phi_a2_2->unk10 = 0;
|
||||
*/
|
||||
s16 phi_a0;
|
||||
struct KiwanoFruit *phi_a2;
|
||||
struct KiwanoFruit *phi_a2_2;
|
||||
|
|
@ -828,6 +930,7 @@ block_17:
|
|||
}
|
||||
goto block_17;
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/update_obj_kiwano_fruit.s")
|
||||
|
|
@ -904,163 +1007,115 @@ void update_obj_piranha_plant(struct PiranhaPlant *arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit 685418adfeb3794409e47b45ac5cab60b17d23fd
|
||||
s32 func_802B4FF8(f32 (*)[4], ?); /* extern */
|
||||
f32 func_802B80D0(f32 *, u16, ?, f32, f32); /* extern */
|
||||
extern ? D_06006990;
|
||||
extern ? D_80150130;
|
||||
extern s8 D_06006990[];
|
||||
extern s8 D_0600D850[];
|
||||
extern f32 D_802B9624;
|
||||
extern f32 D_802B9628;
|
||||
extern s32 D_802BA058;
|
||||
static f32 D_802B9624 = 1000000.0f;
|
||||
static f32 D_802B9628 = 90000.0f;
|
||||
s16 gCurrentCourseId; /* unable to generate initializer */
|
||||
|
||||
void func_80298328(Camera *camera, Mat4 arg1, struct PiranhaPlant *actor) {
|
||||
s16 sp36;
|
||||
f32 sp2C;
|
||||
Gfx *temp_v0;
|
||||
Gfx *temp_v0_2;
|
||||
Gfx *temp_v0_3;
|
||||
Gfx *temp_v0_4;
|
||||
Gfx *temp_v0_5;
|
||||
Gfx *temp_v0_6;
|
||||
Gfx *temp_v0_7;
|
||||
Gfx *temp_v0_8;
|
||||
Gfx *temp_v0_9;
|
||||
f32 temp_f0;
|
||||
f32 temp_f2;
|
||||
s32 temp_lo;
|
||||
s32 temp_lo_2;
|
||||
// Mario Raceway Load piranha plant textures?
|
||||
void func_80298328(Camera *arg0, Mat4 arg1, struct PiranhaPlant *arg2) {
|
||||
s32 pad;
|
||||
s32 addr;
|
||||
s16 temp_lo = arg0 - camera1;
|
||||
s16 phi_t4;
|
||||
s16 phi_t4_2;
|
||||
s16 temp = arg2->flags;
|
||||
f32 temp_f0;
|
||||
|
||||
temp_lo = (s32) (camera - camera1) / 184;
|
||||
if ((actor->flags & 0x800) == 0) {
|
||||
sp36 = (s16) temp_lo;
|
||||
temp_f0 = func_802B80D0(actor->pos, (u16) camera->rotX2, 0, *(&D_80150130 + (temp_lo * 4)), D_802B9624);
|
||||
temp_f2 = temp_f0;
|
||||
if (temp & 0x800) { return; }
|
||||
|
||||
temp_f0 = func_802B80D0(arg0->pos, arg2->pos, arg0->rotX[1], 0, D_80150130[arg0 - camera1], D_802B9624);
|
||||
|
||||
if (temp_f0 < 0.0f) {
|
||||
switch (sp36) { /* switch 2; irregular */
|
||||
case 0: /* switch 2 */
|
||||
actor->visibilityStates[0] = -1;
|
||||
return;
|
||||
case 1: /* switch 2 */
|
||||
actor->visibilityStates[1] = -1;
|
||||
return;
|
||||
case 2: /* switch 2 */
|
||||
actor->visibilityStates[2] = -1;
|
||||
return;
|
||||
case 3: /* switch 2 */
|
||||
actor->visibilityStates[3] = -1;
|
||||
return;
|
||||
|
||||
switch(temp_lo) {
|
||||
case 0:
|
||||
arg2->visibilityStates[0] = -1;
|
||||
break;
|
||||
case 1:
|
||||
arg2->visibilityStates[1] = -1;
|
||||
break;
|
||||
case 2:
|
||||
arg2->visibilityStates[2] = -1;
|
||||
break;
|
||||
case 3:
|
||||
arg2->visibilityStates[3] = -1;
|
||||
break;
|
||||
|
||||
}
|
||||
return;
|
||||
}
|
||||
arg1[3][0] = arg2->pos[0];
|
||||
arg1[3][1] = arg2->pos[1];
|
||||
arg1[3][2] = arg2->pos[2];
|
||||
if (func_802B4FF8(arg1, 0) == 0) { return; }
|
||||
|
||||
if (D_802B9628 < temp_f0) {
|
||||
|
||||
switch(temp_lo) {
|
||||
case 0:
|
||||
arg2->visibilityStates[0] = 0;
|
||||
break;
|
||||
case 1:
|
||||
arg2->visibilityStates[1] = 0;
|
||||
break;
|
||||
case 2:
|
||||
arg2->visibilityStates[2] = 0;
|
||||
break;
|
||||
case 3:
|
||||
arg2->visibilityStates[3] = 0;
|
||||
break;
|
||||
}
|
||||
phi_t4 = 0;
|
||||
|
||||
} else {
|
||||
arg1->unk30 = (f32) actor->pos[0];
|
||||
arg1->unk34 = (f32) actor->pos[1];
|
||||
arg1->unk38 = (f32) actor->pos[2];
|
||||
sp2C = temp_f2;
|
||||
sp36 = sp36;
|
||||
if (func_802B4FF8(arg1, 0) != 0) {
|
||||
if (D_802B9628 < temp_f2) {
|
||||
phi_t4 = 0;
|
||||
switch (sp36) { /* switch 1; irregular */
|
||||
case 0: /* switch 1 */
|
||||
actor->visibilityStates[0] = 0;
|
||||
break;
|
||||
case 1: /* switch 1 */
|
||||
actor->visibilityStates[1] = 0;
|
||||
break;
|
||||
case 2: /* switch 1 */
|
||||
actor->visibilityStates[2] = 0;
|
||||
break;
|
||||
case 3: /* switch 1 */
|
||||
actor->visibilityStates[3] = 0;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (sp36) { /* irregular */
|
||||
case 0:
|
||||
actor->visibilityStates[0] = 1;
|
||||
break;
|
||||
case 1:
|
||||
actor->visibilityStates[1] = 1;
|
||||
break;
|
||||
case 2:
|
||||
actor->visibilityStates[2] = 1;
|
||||
break;
|
||||
case 3:
|
||||
actor->visibilityStates[3] = 1;
|
||||
break;
|
||||
}
|
||||
if (sp36 != 0) {
|
||||
if (sp36 != 1) {
|
||||
if (sp36 != 2) {
|
||||
if (sp36 != 3) {
|
||||
phi_t4 = sp34;
|
||||
} else {
|
||||
phi_t4 = actor->timers[3];
|
||||
}
|
||||
} else {
|
||||
phi_t4 = actor->timers[2];
|
||||
}
|
||||
} else {
|
||||
phi_t4 = actor->timers[1];
|
||||
}
|
||||
} else {
|
||||
phi_t4 = actor->timers[0];
|
||||
}
|
||||
}
|
||||
temp_lo_2 = phi_t4 / 6;
|
||||
phi_t4_2 = (s16) temp_lo_2;
|
||||
if ((s16) temp_lo_2 >= 9) {
|
||||
phi_t4_2 = 8;
|
||||
}
|
||||
temp_v0 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0 + 8;
|
||||
temp_v0->words.w0 = 0xFD500000;
|
||||
temp_v0->words.w1 = ((phi_t4_2 << 0xB) + D_802BA058) & 0x1FFFFFFF;
|
||||
temp_v0_2 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_2 + 8;
|
||||
temp_v0_2->words.w0 = 0xF5500000;
|
||||
temp_v0_2->words.w1 = 0x07080100;
|
||||
temp_v0_3 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_3 + 8;
|
||||
temp_v0_3->words.w1 = 0;
|
||||
temp_v0_3->words.w0 = 0xE6000000;
|
||||
temp_v0_4 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_4 + 8;
|
||||
temp_v0_4->words.w1 = 0x073FF200;
|
||||
temp_v0_4->words.w0 = 0xF3000000;
|
||||
temp_v0_5 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_5 + 8;
|
||||
temp_v0_5->words.w1 = 0;
|
||||
temp_v0_5->words.w0 = 0xE7000000;
|
||||
temp_v0_6 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_6 + 8;
|
||||
temp_v0_6->words.w0 = 0xF5480800;
|
||||
temp_v0_6->words.w1 = 0x00080100;
|
||||
temp_v0_7 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_7 + 8;
|
||||
temp_v0_7->words.w0 = 0xF2000000;
|
||||
temp_v0_7->words.w1 = 0x0007C0FC;
|
||||
if (gCurrentCourseId == 0) {
|
||||
temp_v0_8 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_8 + 8;
|
||||
temp_v0_8->words.w1 = (u32) &D_06006990;
|
||||
temp_v0_8->words.w0 = 0x06000000;
|
||||
return;
|
||||
}
|
||||
temp_v0_9 = gDisplayListHead;
|
||||
gDisplayListHead = temp_v0_9 + 8;
|
||||
temp_v0_9->words.w1 = 0x0600D850;
|
||||
temp_v0_9->words.w0 = 0x06000000;
|
||||
|
||||
switch(temp_lo) {
|
||||
case 0:
|
||||
arg2->visibilityStates[0] = 1;
|
||||
break;
|
||||
case 1:
|
||||
arg2->visibilityStates[1] = 1;
|
||||
break;
|
||||
case 2:
|
||||
arg2->visibilityStates[2] = 1;
|
||||
break;
|
||||
case 3:
|
||||
arg2->visibilityStates[3] = 1;
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
switch(temp_lo) {
|
||||
case 0:
|
||||
phi_t4 = arg2->timers[0];
|
||||
break;
|
||||
case 1:
|
||||
phi_t4 = arg2->timers[1];
|
||||
break;
|
||||
case 2:
|
||||
phi_t4 = arg2->timers[2];
|
||||
break;
|
||||
case 3:
|
||||
phi_t4 = arg2->timers[3];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
phi_t4 /= 6;
|
||||
|
||||
if (phi_t4 > 8) {
|
||||
phi_t4 = 8;
|
||||
}
|
||||
addr = D_802BA058 + (phi_t4 << 0xB);
|
||||
gDPLoadTextureBlock(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(addr), G_IM_FMT_CI, G_IM_SIZ_8b, 32, 64, 0,
|
||||
G_TX_MIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
|
||||
|
||||
if (gCurrentCourseId == COURSE_MARIO_RACEWAY) {
|
||||
gSPDisplayList(gDisplayListHead++, &D_06006990);
|
||||
} else {
|
||||
gSPDisplayList(gDisplayListHead++, &D_0600D850);
|
||||
}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/func_80298328.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by m2c commit 685418adfeb3794409e47b45ac5cab60b17d23fd
|
||||
|
|
@ -2349,25 +2404,22 @@ GLOBAL_ASM("asm/non_matchings/code_actors/func_8029A3AC.s")
|
|||
#endif
|
||||
|
||||
void func_8029A3AC(Camera*, Mat4, struct Actor*); // extern
|
||||
extern s8 D_0D004E38[];
|
||||
|
||||
void func_8029A690(Camera *arg0, Mat4 arg1, struct Actor *arg2) {
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, &D_0D004E38);
|
||||
func_8029A3AC(arg0, arg1, arg2);
|
||||
}
|
||||
|
||||
extern s8 D_802BA060[];
|
||||
|
||||
|
||||
void func_8029A75C(Camera *arg0, Mat4 arg1, struct Actor *arg2) {
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, &D_802BA060);
|
||||
func_8029A3AC(arg0, arg1, arg2);
|
||||
}
|
||||
|
||||
extern s8 D_0D005038[];
|
||||
extern s8 D_0D004E68[];
|
||||
|
||||
// Middle of a tlut access
|
||||
void func_8029A828(Camera *arg0, Mat4 arg1, struct Actor *arg2) {
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, &D_0D005038);
|
||||
gDPLoadTLUT_pal256(gDisplayListHead++, &D_0D004E68[0x1D0]);
|
||||
|
||||
|
||||
func_8029A3AC(arg0, arg1, arg2);
|
||||
|
|
@ -3427,43 +3479,41 @@ GLOBAL_ASM("asm/non_matchings/code_actors/func_8029CA90.s")
|
|||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
s32 func_8029EC88(f32 *, ? *, ? *, ?); // extern
|
||||
? func_802B52BC(? *, ?, ?, ?); // extern
|
||||
? load_giant_egg(? *, ?, ?, ?); // extern
|
||||
extern ? D_8015F9B8;
|
||||
extern f32 gCourseDirection;
|
||||
extern ? gSegmentTable;
|
||||
//s32 func_8029EC88(f32 *, ? *, ? *, ?); // extern
|
||||
|
||||
//extern ? gSegmentTable;
|
||||
|
||||
void place_piranha_plants(u32 arg0) {
|
||||
f32 sp68;
|
||||
f32 sp64;
|
||||
f32 sp60;
|
||||
? sp54;
|
||||
? sp4C;
|
||||
f32 *temp_a0;
|
||||
Vec3f sp60;
|
||||
//f32 sp68;
|
||||
//f32 sp64;
|
||||
Vec3f sp54;
|
||||
Vec3s sp4C;
|
||||
Vec3f temp_a0;
|
||||
s16 *temp_s0;
|
||||
s16 *temp_s0_2;
|
||||
s16 temp_s1;
|
||||
s16 temp_s1_2;
|
||||
void *temp_v1;
|
||||
struct piranha_plant *temp_v1;
|
||||
s16 phi_s1;
|
||||
s16 *phi_s0;
|
||||
Vec3s *phi_s0;
|
||||
|
||||
temp_s0 = *(&gSegmentTable + ((arg0 >> 0x18) * 4)) + (arg0 & 0xFFFFFF) + 0x80000000;
|
||||
load_giant_egg(&sp54, 0, 0, 0);
|
||||
func_802B52BC(&sp4C, 0, 0, 0);
|
||||
temp_s1 = *temp_s0;
|
||||
phi_s1 = temp_s1;
|
||||
if (temp_s1 != -0x8000) {
|
||||
phi_s0 = temp_s0;
|
||||
do {
|
||||
temp_a0 = &sp60;
|
||||
sp60 = phi_s1 * gCourseDirection;
|
||||
sp64 = phi_s0->unk2;
|
||||
sp68 = phi_s0->unk_04;
|
||||
temp_s0 = VIRTUAL_TO_PHYSICAL2(gSegmentTable[arg0 >> 18] + SEGMENT_OFFSET(arg0));
|
||||
load_giant_egg(sp54, 0, 0, 0);
|
||||
func_802B52BC(sp4C, 0, 0, 0);
|
||||
//temp_s1 = *temp_s0;
|
||||
//phi_s1 = temp_s1;
|
||||
//if (temp_s1 != -0x8000) {
|
||||
//phi_s0 = temp_s0;
|
||||
|
||||
while (temp_s1_2 != -0x8000) {
|
||||
// temp_a0 = &sp60;
|
||||
sp60[0] = phi_s1 * gCourseDirection;
|
||||
sp60[1] = phi_s0->unk2;
|
||||
sp60[2] = phi_s0->unk4;
|
||||
temp_s0_2 = phi_s0 + 8;
|
||||
temp_v1 = &D_8015F9B8 + (func_8029EC88(temp_a0, &sp4C, &sp54, 0xA) * 0x70);
|
||||
temp_v1->unk_04 = 0;
|
||||
temp_v1 = (struct piranha_plant *) &D_8015F9B8[func_8029EC88(temp_a0, sp4C, sp54, 0xA)];
|
||||
temp_v1->unk4 = 0;
|
||||
temp_v1->unk6 = 0;
|
||||
temp_v1->unk_08 = 0;
|
||||
temp_v1->unkA = 0;
|
||||
|
|
@ -3471,11 +3521,12 @@ void place_piranha_plants(u32 arg0) {
|
|||
temp_v1->unk26 = 0;
|
||||
temp_v1->unk28 = 0;
|
||||
temp_v1->unk2A = 0;
|
||||
temp_s1_2 = *temp_s0_2;
|
||||
phi_s1 = temp_s1_2;
|
||||
phi_s0 = temp_s0_2;
|
||||
} while (temp_s1_2 != -0x8000);
|
||||
}
|
||||
//temp_s1_2 = *temp_s0_2;
|
||||
//phi_s1 = temp_s1_2;
|
||||
//phi_s0 = temp_s0_2;
|
||||
phi_s0++;
|
||||
}
|
||||
//}
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/code_actors/place_piranha_plants.s")
|
||||
|
|
@ -4035,6 +4086,7 @@ static ? D_802B8850; /* unable to generate initia
|
|||
static ? D_802B885C; /* unable to generate initializer */
|
||||
static u16 gCurrentCourseId; /* type too large by 2; unable to generate initializer */
|
||||
|
||||
// Place course actors
|
||||
void func_8029DB44(void) {
|
||||
f32 sp40;
|
||||
? sp34;
|
||||
|
|
@ -4264,7 +4316,7 @@ void func_8029E158(void) {
|
|||
u16 temp_t6;
|
||||
|
||||
set_segment_base_addr(3, gPrevLoadedAddress);
|
||||
D_802BA050 = func_802A84F4(&D_0F04CBE0, 0x257, 0x400);
|
||||
D_802BA050 = func_802A84F4(&D_0F04CBE0, 0x257, 0x400); // shell
|
||||
func_802A84F4(&D_0F04CE30, 0x242, 0x400);
|
||||
func_802A84F4(&D_0F04D080, 0x259, 0x400);
|
||||
func_802A84F4(&D_0F04D2D8, 0x256, 0x400);
|
||||
|
|
@ -5767,6 +5819,7 @@ extern f32 D_802B99D0;
|
|||
extern f32 D_802B99D4;
|
||||
void func_802ADDC8(UnkActorInner*, f32, f32, f32, f32);
|
||||
void func_802B4E30(struct Actor*);
|
||||
|
||||
void update_obj_fake_item_box(struct FakeItemBox *fake_item_box) {
|
||||
u32 temp_v1 = fake_item_box->playerId;
|
||||
Player *temp_v0_4 = &gPlayers[temp_v1];
|
||||
|
|
@ -5806,7 +5859,7 @@ void update_obj_fake_item_box(struct FakeItemBox *fake_item_box) {
|
|||
temp_v1_3->buttonDepressed &= 0xDFFF;
|
||||
func_802A1064(fake_item_box);
|
||||
temp_v0_4->unk_00C &= 0xFFFBFFFF;
|
||||
func_800C9060(((temp_v0_4 - gPlayerOne)) & 0xFF, 0x19008012);
|
||||
func_800C9060((u8)(temp_v0_4 - gPlayerOne), 0x19008012);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
@ -6767,7 +6820,6 @@ void func_8029A23C(Camera *, Mat4, struct Actor*); /* extern */
|
|||
void func_8029A75C(Camera *, Mat4, struct Actor*); /* extern */
|
||||
void func_8029A828(Camera *, Mat4, struct Actor*); /* extern */
|
||||
void func_8029A8F4(Camera *, Mat4, struct BananaActor*); /* extern */
|
||||
void func_80298328(Camera *, Mat4, struct Actor*);
|
||||
void func_8029AC18(Camera *, Mat4, struct Actor*); /* extern */
|
||||
//void func_8029AE1C(Camera *, struct Actor*, Mat4, u16); /* extern */
|
||||
void func_8029B06C(Camera *, struct Actor*); /* extern */
|
||||
|
|
@ -6793,8 +6845,8 @@ void func_802A3008(struct UnkStruct_800DC5EC *arg0) {
|
|||
|
||||
struct Actor *phi_s0;
|
||||
Vec3f sp4C = {0.0f, 5.0f, 10.0f};
|
||||
f32 sp48 = sins((temp_s1->rotX[1] - 0x8000)); // unk26;
|
||||
f32 temp_f0 = coss((temp_s1->rotX[1] - 0x8000));
|
||||
f32 sp48 = sins(temp_s1->rotX[1] - 0x8000); // unk26;
|
||||
f32 temp_f0 = coss(temp_s1->rotX[1] - 0x8000);
|
||||
|
||||
|
||||
D_801502C0[0][0] = temp_f0;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,104 @@
|
|||
#include <types.h>
|
||||
#include <PR/gbi.h>
|
||||
|
||||
extern Gfx D_070067E8[];
|
||||
extern Gfx D_0700AEF8[];
|
||||
extern Gfx D_0700A970[];
|
||||
extern Gfx D_0700AC30[];
|
||||
extern Gfx D_07000CE0[];
|
||||
extern Gfx D_07000E88[];
|
||||
extern Gfx D_0700A618[];
|
||||
extern Gfx D_070023F8[];
|
||||
extern Gfx D_07002478[];
|
||||
extern Gfx D_07001438[];
|
||||
extern Gfx D_07003728[];
|
||||
extern Gfx D_070036B8[];
|
||||
extern Gfx D_07003628[];
|
||||
extern Gfx D_07003540[];
|
||||
extern Gfx D_07003DC0[];
|
||||
extern Gfx D_07003E50[];
|
||||
extern Gfx D_07003F18[];
|
||||
extern Gfx D_070050B0[];
|
||||
extern Gfx D_07005138[];
|
||||
extern Gfx D_070055D0[];
|
||||
extern Gfx D_07005B50[];
|
||||
extern Gfx D_07005C00[];
|
||||
extern Gfx D_07005D18[];
|
||||
extern Gfx D_07005DC8[];
|
||||
extern Gfx D_07005EF8[];
|
||||
extern Gfx D_07005740[];
|
||||
extern Gfx D_070057F0[];
|
||||
extern Gfx D_070058E8[];
|
||||
extern Gfx D_07001788[];
|
||||
extern Gfx D_07001AA0[];
|
||||
extern Gfx D_07001A30[];
|
||||
extern Gfx D_07003790[];
|
||||
extern Gfx D_070006D0[];
|
||||
extern Gfx D_070004D0[];
|
||||
extern Gfx D_07000840[];
|
||||
|
||||
// Unknown displaylists
|
||||
Gfx D_80284EE0[] = {
|
||||
gsDPSetCycleType(G_CYC_1CYCLE),
|
||||
gsDPPipelineMode(G_PM_1PRIMITIVE),
|
||||
gsDPSetTextureLOD(G_TL_TILE),
|
||||
gsDPSetTextureLUT(G_TT_NONE),
|
||||
gsDPSetTextureDetail(G_TD_CLAMP),
|
||||
gsDPSetTexturePersp(G_TP_PERSP),
|
||||
gsDPSetTextureFilter(G_TF_BILERP),
|
||||
gsDPSetTextureConvert(G_TC_FILT),
|
||||
gsDPSetCombineKey(G_CK_NONE),
|
||||
gsDPSetAlphaCompare(G_AC_NONE),
|
||||
gsDPSetColorDither(G_CD_DISABLE),
|
||||
gsDPSetColorDither(G_CD_MAGICSQ),
|
||||
gsDPSetRenderMode(G_RM_OPA_SURF, G_RM_OPA_SURF2),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPClearGeometryMode(G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR | G_LOD),
|
||||
gsSPSetGeometryMode(G_SHADE | G_SHADING_SMOOTH),
|
||||
gsSPTexture(0, 0, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
Gfx D_80284F70[] = {
|
||||
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
|
||||
gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
|
||||
gsSPDisplayList(D_070067E8),
|
||||
gsSPDisplayList(D_0700AEF8),
|
||||
gsSPDisplayList(D_07001438),
|
||||
gsSPDisplayList(D_0700A970),
|
||||
gsSPDisplayList(D_07000CE0),
|
||||
gsSPDisplayList(D_07000E88),
|
||||
gsSPDisplayList(D_0700A618),
|
||||
gsSPDisplayList(D_0700AC30),
|
||||
gsSPDisplayList(D_07003728),
|
||||
gsSPDisplayList(D_070036B8),
|
||||
gsSPDisplayList(D_07003628),
|
||||
gsSPDisplayList(D_07003540),
|
||||
gsSPDisplayList(D_07003DC0),
|
||||
gsSPDisplayList(D_07003E50),
|
||||
gsSPDisplayList(D_07003F18),
|
||||
gsSPDisplayList(D_070050B0),
|
||||
gsSPDisplayList(D_07005138),
|
||||
gsSPDisplayList(D_070055D0),
|
||||
gsSPDisplayList(D_07005B50),
|
||||
gsSPDisplayList(D_07005C00),
|
||||
gsSPDisplayList(D_07005D18),
|
||||
gsSPDisplayList(D_07005DC8),
|
||||
gsSPDisplayList(D_07005EF8),
|
||||
gsSPDisplayList(D_07005740),
|
||||
gsSPDisplayList(D_070057F0),
|
||||
gsSPDisplayList(D_070058E8),
|
||||
gsSPDisplayList(D_07001788),
|
||||
gsSPDisplayList(D_07001AA0),
|
||||
gsSPDisplayList(D_07001A30),
|
||||
gsSPDisplayList(D_070023F8),
|
||||
gsSPDisplayList(D_07002478),
|
||||
gsSPDisplayList(D_07003790),
|
||||
gsDPSetCombineMode(G_CC_MODULATEIDECALA, G_CC_MODULATEIDECALA),
|
||||
gsDPSetRenderMode(G_RM_AA_ZB_TEX_EDGE, G_RM_AA_ZB_TEX_EDGE2),
|
||||
gsSPDisplayList(D_070006D0),
|
||||
gsSPDisplayList(D_070004D0),
|
||||
gsSPDisplayList(D_07000840),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
|
@ -217,7 +217,7 @@ extern u8 _common_texturesSegmentRomStart[];
|
|||
extern u8 _common_texturesSegmentRomEnd[];
|
||||
extern u8 _data_802BA370SegmentRomStart[];
|
||||
extern u32 gHeapEndPtr;
|
||||
extern u32 *D_801978D0;
|
||||
extern u32 *D_801978D0; // Segment? Keeps track of segmented addresses?
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
355
src/memory.c
355
src/memory.c
|
|
@ -63,7 +63,6 @@ struct UnkStruct_802B8CD4 D_802B8CD4[] = {
|
|||
0
|
||||
};
|
||||
s32 D_802B8CE4 = 0; // pad
|
||||
s32 D_802B8CE8[] = {0xBC000002, 0x80000040};
|
||||
|
||||
s32 func_802A7B70(s32 segment) {
|
||||
s32 old;
|
||||
|
|
@ -488,289 +487,143 @@ void func_802A87A8(s32 arg0, u32 arg1) {
|
|||
set_segment_base_addr(4, endptr);
|
||||
}
|
||||
|
||||
UNUSED void func_802A8844(void) {
|
||||
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A87A8.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8CE8;
|
||||
UNUSED void func_802A8844(void) {
|
||||
|
||||
}
|
||||
|
||||
void func_802A884C(Gfx *arg0, u8 arg1, s8 arg2) {
|
||||
s32 pad;
|
||||
s32 a = (arg2 * 0x18) + 0x9000008;
|
||||
s32 b = (arg2 * 0x18) + 0x9000000;
|
||||
Gfx macro[] = {gsSPNumLights(NUMLIGHTS_1)};
|
||||
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
|
||||
D_802BA270++;
|
||||
arg0[D_802BA270].words.w0 = 0x3860010;
|
||||
|
||||
arg0[D_802BA270].words.w1 = a;
|
||||
|
||||
D_802BA270++;
|
||||
arg0[D_802BA270].words.w0 = 0x3880010;
|
||||
arg0[D_802BA270].words.w1 = b;
|
||||
D_802BA270++;
|
||||
}
|
||||
|
||||
void func_802A8940(Gfx *arg0, u8 *arg1, u8 arg2) {
|
||||
|
||||
u32 temp_v0 = arg1[D_802BA274++];
|
||||
u32 temp_t7 = ((arg1[D_802BA274++]) << 8 | temp_v0) * 8;
|
||||
arg0[D_802BA270].words.w0 = 0x6000000;
|
||||
arg0[D_802BA270].words.w1 = 0x7000000 + temp_t7;
|
||||
D_802BA270++;
|
||||
}
|
||||
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A884C(s32 arg0, ? arg1, s8 arg2) {
|
||||
s32 temp_t2;
|
||||
s32 temp_t2_2;
|
||||
s32 temp_t3;
|
||||
s32 temp_t4;
|
||||
s32 temp_v0;
|
||||
|
||||
sp->unk0 = D_802B8CE8.unk0;
|
||||
sp->unk4 = D_802B8CE8.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
temp_t2 = D_802BA270 + 1;
|
||||
temp_t3 = temp_t2 * 8;
|
||||
D_802BA270 = temp_t2;
|
||||
*(arg0 + temp_t3) = 0x3860010;
|
||||
temp_v0 = arg2 * 0x18;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = temp_v0 + 0x9000008;
|
||||
temp_t2_2 = D_802BA270 + 1;
|
||||
temp_t4 = temp_t2_2 * 8;
|
||||
D_802BA270 = temp_t2_2;
|
||||
*(arg0 + temp_t4) = 0x3880010;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = temp_v0 + 0x9000000;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
// end display list
|
||||
void func_802A89C0(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
arg0[D_802BA270].words.w0 = G_ENDDL << 24;
|
||||
arg0[D_802BA270].words.w1 = 0;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A884C.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern s32 D_802BA270;
|
||||
extern s32 D_802BA274;
|
||||
|
||||
void func_802A8940(s32 arg0, s32 arg1, ? arg2) {
|
||||
s32 temp_t7;
|
||||
s32 temp_v1;
|
||||
u8 temp_v0;
|
||||
|
||||
temp_v1 = D_802BA274;
|
||||
temp_t7 = temp_v1 + 1;
|
||||
temp_v0 = *(temp_v1 + arg1);
|
||||
D_802BA274 = temp_t7;
|
||||
D_802BA274 = temp_t7 + 1;
|
||||
*(arg0 + (D_802BA270 * 8)) = 0x6000000;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = (((*(temp_t7 + arg1) << 8) | temp_v0) * 8) + 0x7000000;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8A04(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsSPSetGeometryMode(G_CULL_BACK)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8940.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A89C0(s32 arg0, ? arg1, ? arg2) {
|
||||
*(arg0 + (D_802BA270 * 8)) = 0xB8000000;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = 0;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8A70(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsSPClearGeometryMode(G_CULL_BACK)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A89C0.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8CF0;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8A04(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8CF0.unk0;
|
||||
sp->unk4 = D_802B8CF0.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8ADC(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsSPCullDisplayList(0, 160)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8A04.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8CF8;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8A70(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8CF8.unk0;
|
||||
sp->unk4 = D_802B8CF8.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8B48(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetCombineMode(G_CC_MODULATERGBA, G_CC_MODULATERGBA)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8A70.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D00;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8ADC(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D00.unk0;
|
||||
sp->unk4 = D_802B8D00.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8BB4(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetCombineMode(G_CC_MODULATERGBDECALA, G_CC_MODULATERGBDECALA)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8ADC.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D08;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8B48(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D08.unk0;
|
||||
sp->unk4 = D_802B8D08.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8C20(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8B48.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D10;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8BB4(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D10.unk0;
|
||||
sp->unk4 = D_802B8D10.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8C8C(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetCombineMode(G_CC_MODULATERGBDECALA, G_CC_MODULATERGBDECALA)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8BB4.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D18;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8C20(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D18.unk0;
|
||||
sp->unk4 = D_802B8D18.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8CF8(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8C20.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D20;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8C8C(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D20.unk0;
|
||||
sp->unk4 = D_802B8D20.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8D64(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8C8C.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D28;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8CF8(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D28.unk0;
|
||||
sp->unk4 = D_802B8D28.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8DD0(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetRenderMode(G_RM_AA_ZB_TEX_EDGE, G_RM_AA_ZB_TEX_EDGE2)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8CF8.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D30;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8D64(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D30.unk0;
|
||||
sp->unk4 = D_802B8D30.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8E3C(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetRenderMode(G_RM_AA_ZB_XLU_SURF, G_RM_AA_ZB_XLU_SURF2)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8D64.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D38;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8DD0(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D38.unk0;
|
||||
sp->unk4 = D_802B8D38.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8EA8(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetRenderMode(G_RM_AA_ZB_OPA_DECAL, G_RM_AA_ZB_OPA_DECAL)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8DD0.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D40;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8E3C(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D40.unk0;
|
||||
sp->unk4 = D_802B8D40.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
void func_802A8F14(Gfx *arg0, u8 arg1, u8 arg2) {
|
||||
Gfx macro[] = {gsDPSetRenderMode(G_RM_AA_ZB_XLU_DECAL, G_RM_AA_ZB_XLU_DECAL)};
|
||||
arg0[D_802BA270].words.w0 = macro->words.w0;
|
||||
arg0[D_802BA270].words.w1 = macro->words.w1;
|
||||
D_802BA270++;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8E3C.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D48;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8EA8(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D48.unk0;
|
||||
sp->unk4 = D_802B8D48.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8EA8.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
extern ? D_802B8D50;
|
||||
extern s32 D_802BA270;
|
||||
|
||||
void func_802A8F14(s32 arg0, ? arg1, ? arg2) {
|
||||
sp->unk0 = D_802B8D50.unk0;
|
||||
sp->unk4 = D_802B8D50.unk4;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4;
|
||||
D_802BA270 = D_802BA270 + 1;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8F14.s")
|
||||
#endif
|
||||
Gfx D_802B8D58[] = {gsDPTileSync()};
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,53 @@
|
|||
#!/usr/bin/env python3
|
||||
import sys, os, binascii, struct
|
||||
|
||||
if (sys.argv[1] == "-h" or sys.argv[1] == "--help" or sys.argv[1] == "help" or sys.argv[1] == "h"):
|
||||
print("Usage: ./bin2c.py input.bin output_name")
|
||||
print(" Output extension is .inc.c")
|
||||
sys.exit(0)
|
||||
|
||||
f = open(sys.argv[1],"rb")
|
||||
fi = open(str(sys.argv[2])+".inc.c", "w")
|
||||
|
||||
lineCount = int((os.path.getsize(sys.argv[1]) - 16))
|
||||
|
||||
off = "0"
|
||||
base = off
|
||||
|
||||
fB = f.read()
|
||||
fB = fB[int(off,16):]
|
||||
off = 0
|
||||
|
||||
while True:
|
||||
if off >= lineCount+16:
|
||||
break
|
||||
buf = str(binascii.hexlify(fB[off:off+0x10]))
|
||||
buf = buf[2:-1]
|
||||
|
||||
fi.write("0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x},0x{:02x}".format(
|
||||
int(buf[0:2],16),
|
||||
int(buf[2:4],16),
|
||||
int(buf[4:6],16),
|
||||
int(buf[6:8],16),
|
||||
int(buf[8:10],16),
|
||||
int(buf[10:12],16),
|
||||
int(buf[12:14],16),
|
||||
int(buf[14:16],16),
|
||||
int(buf[16:18],16),
|
||||
int(buf[18:20],16),
|
||||
int(buf[20:22],16),
|
||||
int(buf[22:24],16),
|
||||
int(buf[24:26],16),
|
||||
int(buf[26:28],16),
|
||||
int(buf[28:30],16),
|
||||
int(buf[30:32],16),
|
||||
)
|
||||
)
|
||||
|
||||
# Remove final comma
|
||||
if (off <= lineCount - 16):
|
||||
fi.write(",")
|
||||
elif (off >= lineCount -16):
|
||||
fi.write("\n")
|
||||
|
||||
off += 0x10
|
||||
|
|
@ -61,6 +61,18 @@ D_000FFF00 = 0x000FFF00;
|
|||
D_00284EE0 = 0x00284EE0;
|
||||
D_00284F70 = 0x00284F70;
|
||||
|
||||
D_03004000 = 0x03004000;
|
||||
D_03004800 = 0x03004800;
|
||||
D_03005000 = 0x03005000;
|
||||
D_03005800 = 0x03005800;
|
||||
D_03006000 = 0x03006000;
|
||||
D_03006800 = 0x03006800;
|
||||
D_03007000 = 0x03007000;
|
||||
D_03007800 = 0x03007800;
|
||||
D_03008000 = 0x03008000;
|
||||
D_03008800 = 0x03008800;
|
||||
|
||||
|
||||
D_05FF8DB8 = 0x05FF8DB8;
|
||||
D_06000028 = 0x06000028;
|
||||
D_06000038 = 0x06000038;
|
||||
|
|
@ -174,6 +186,7 @@ D_0600D578 = 0x0600D578;
|
|||
D_0600D628 = 0x0600D628;
|
||||
D_0600D780 = 0x0600D780;
|
||||
D_0600D828 = 0x0600D828;
|
||||
D_0600D850 = 0x0600D850;
|
||||
D_0600D8E8 = 0x0600D8E8;
|
||||
D_0600D9C8 = 0x0600D9C8;
|
||||
D_0600D9F0 = 0x0600D9F0;
|
||||
|
|
@ -318,6 +331,8 @@ D_0D0017E0 = 0x0D0017E0;
|
|||
D_0D0017F8 = 0x0D0017F8;
|
||||
D_0D001810 = 0x0D001810;
|
||||
D_0D001828 = 0x0D001828;
|
||||
D_0D001B90 = 0x0D001B90;
|
||||
D_0D001BD8 = 0x0D001BD8;
|
||||
D_0D001C20 = 0x0D001C20;
|
||||
D_0D001C88 = 0x0D001C88;
|
||||
D_0D002EE8 = 0x0D002EE8;
|
||||
|
|
@ -334,7 +349,7 @@ D_0D004B48 = 0x0D004B48;
|
|||
D_0D004BD8 = 0x0D004BD8;
|
||||
D_0D004C68 = 0x0D004C68;
|
||||
D_0D004E38 = 0x0D004E38;
|
||||
D_0D005038 = 0x0D005038;
|
||||
D_0D004E68 = 0x0D004E68;
|
||||
D_0D005338 = 0x0D005338;
|
||||
D_0D005368 = 0x0D005368;
|
||||
D_0D005470 = 0x0D005470;
|
||||
|
|
@ -697,6 +712,43 @@ D_E6FFFFFC = 0xE6FFFFFC;
|
|||
D_FA00000C = 0xFA00000C;
|
||||
D_FA000010 = 0xFA000010;
|
||||
D_FA000018 = 0xFA000018;
|
||||
|
||||
D_070067E8 = 0x070067E8;
|
||||
D_0700AEF8 = 0x0700AEF8;
|
||||
D_0700A970 = 0x0700A970;
|
||||
D_0700AC30 = 0x0700AC30;
|
||||
D_07000CE0 = 0x07000CE0;
|
||||
D_07000E88 = 0x07000E88;
|
||||
D_0700A618 = 0x0700A618;
|
||||
D_070023F8 = 0x070023F8;
|
||||
D_07002478 = 0x07002478;
|
||||
D_07001438 = 0x07001438;
|
||||
D_07003728 = 0x07003728;
|
||||
D_070036B8 = 0x070036B8;
|
||||
D_07003628 = 0x07003628;
|
||||
D_07003540 = 0x07003540;
|
||||
D_07003DC0 = 0x07003DC0;
|
||||
D_07003E50 = 0x07003E50;
|
||||
D_07003F18 = 0x07003F18;
|
||||
D_070050B0 = 0x070050B0;
|
||||
D_07005138 = 0x07005138;
|
||||
D_070055D0 = 0x070055D0;
|
||||
D_07005B50 = 0x07005B50;
|
||||
D_07005C00 = 0x07005C00;
|
||||
D_07005D18 = 0x07005D18;
|
||||
D_07005DC8 = 0x07005DC8;
|
||||
D_07005EF8 = 0x07005EF8;
|
||||
D_07005740 = 0x07005740;
|
||||
D_070057F0 = 0x070057F0;
|
||||
D_070058E8 = 0x070058E8;
|
||||
D_07001788 = 0x07001788;
|
||||
D_07001AA0 = 0x07001AA0;
|
||||
D_07001A30 = 0x07001A30;
|
||||
D_07003790 = 0x07003790;
|
||||
D_070006D0 = 0x070006D0;
|
||||
D_070004D0 = 0x070004D0;
|
||||
D_07000840 = 0x07000840;
|
||||
|
||||
D_mario_raceway_06000000 = 0x06000000;
|
||||
D_mario_raceway_060001D0 = 0x060001D0;
|
||||
D_mario_raceway_060000E8 = 0x060000E8;
|
||||
|
|
|
|||
Loading…
Reference in New Issue